Definition at line 45 of file element_property_card_base.h.
#include <element_property_card_base.h>
Public Member Functions | |
ElementPropertyCardBase () | |
virtual | ~ElementPropertyCardBase () |
virtual destructor More... | |
virtual MAST::BendingOperatorType | bending_model (const MAST::GeomElem &elem) const =0 |
returns the bending model to be used for the element. More... | |
virtual std::unique_ptr< MAST::FieldFunction< RealMatrixX > > | damping_matrix (const MAST::ElementBase &e) const =0 |
virtual unsigned int | dim () const =0 |
dimension of the element for which this property is defined More... | |
virtual int | extra_quadrature_order (const MAST::GeomElem &elem) const =0 |
returns the extra quadrature order (on top of the system) that this element should use. More... | |
virtual const MAST::MaterialPropertyCardBase & | get_material () const |
return the material property. More... | |
virtual bool | get_warping_only () const |
bool | if_diagonal_mass_matrix () const |
returns the type of strain to be used for this element More... | |
virtual bool | if_isotropic () const =0 |
return true if the property is isotropic More... | |
virtual bool | if_prestressed () const |
virtual std::unique_ptr< MAST::FieldFunction< RealMatrixX > > | inertia_matrix (const MAST::ElementBase &e) const =0 |
virtual void | init () |
Only used by 1D sections. More... | |
virtual std::unique_ptr< MAST::FieldFunction< RealMatrixX > > | prestress_A_matrix (MAST::ElementBase &e) const =0 |
virtual std::unique_ptr< MAST::FieldFunction< RealMatrixX > > | prestress_B_matrix (MAST::ElementBase &e) const =0 |
virtual const MAST::FieldFunction< Real > * | section (const MAST::ElementBase &e) const =0 |
virtual void | set_bending_model (MAST::BendingOperatorType b) |
sets the bending model to be used for the 1D element Added by DJN to increase section polymorphism More... | |
void | set_diagonal_mass_matrix (bool m) |
sets the mass matrix to be diagonal or consistent More... | |
virtual const MAST::MaterialPropertyCardBase & | set_material (MAST::MaterialPropertyCardBase &mat) const |
return the material property. More... | |
void | set_strain (MAST::StrainType strain) |
sets the type of strain to be used, which is LINEAR_STRAIN by default More... | |
virtual std::unique_ptr< MAST::FieldFunction< RealMatrixX > > | stiffness_A_matrix (const MAST::ElementBase &e) const =0 |
virtual std::unique_ptr< MAST::FieldFunction< RealMatrixX > > | stiffness_B_matrix (const MAST::ElementBase &e) const =0 |
virtual std::unique_ptr< MAST::FieldFunction< RealMatrixX > > | stiffness_D_matrix (const MAST::ElementBase &e) const =0 |
const MAST::StrainType | strain_type () const |
returns the type of strain to be used for this element More... | |
virtual std::unique_ptr< MAST::FieldFunction< RealMatrixX > > | thermal_capacitance_matrix (const MAST::ElementBase &e) const =0 |
virtual std::unique_ptr< MAST::FieldFunction< RealMatrixX > > | thermal_conductance_matrix (const MAST::ElementBase &e) const =0 |
virtual std::unique_ptr< MAST::FieldFunction< RealMatrixX > > | thermal_expansion_A_matrix (const MAST::ElementBase &e) const =0 |
virtual std::unique_ptr< MAST::FieldFunction< RealMatrixX > > | thermal_expansion_B_matrix (const MAST::ElementBase &e) const =0 |
virtual std::unique_ptr< MAST::FieldFunction< RealMatrixX > > | transverse_shear_stiffness_matrix (const MAST::ElementBase &e) const =0 |
virtual RealVectorX & | y_vector () |
vector in the x-y plane of the element. More... | |
virtual const RealVectorX & | y_vector () const |
constant reference to vector in the x-y plane of the element. More... | |
Public Member Functions inherited from MAST::FunctionSetBase | |
FunctionSetBase () | |
virtual | ~FunctionSetBase () |
destructor deletes the function pointers More... | |
void | add (MAST::FunctionBase &f) |
adds the function to this card and returns a reference to it. More... | |
bool | contains (const std::string &nm) const |
checks if the card contains the specified property value More... | |
virtual bool | depends_on (const MAST::FunctionBase &f) const |
returns true if the property card depends on the function f More... | |
template<typename ValType > | |
const ValType & | get (const std::string &nm) const |
returns a constant reference to the specified function More... | |
template<typename ValType > | |
ValType & | get (const std::string &nm) |
returns a writable reference to the specified function More... | |
Protected Attributes | |
bool | _diagonal_mass |
flag to use a diagonal mass matrix. More... | |
MAST::StrainType | _strain_type |
type of nonlinear strain to be used for analysis More... | |
bool | _warping_only = false |
Protected Attributes inherited from MAST::FunctionSetBase | |
std::map< std::string, MAST::FunctionBase * > | _properties |
map of the functions in this card More... | |
|
inline |
Definition at line 49 of file element_property_card_base.h.
|
inlinevirtual |
virtual destructor
Definition at line 58 of file element_property_card_base.h.
|
pure virtual |
returns the bending model to be used for the element.
Should be reimplemented in the derived classes
Implemented in MAST::OrthotropicElementPropertyCard3D, MAST::IsotropicElementPropertyCard3D, MAST::ElementPropertyCard1D, and MAST::ElementPropertyCard2D.
|
pure virtual |
|
pure virtual |
dimension of the element for which this property is defined
Implemented in MAST::OrthotropicElementPropertyCard3D, MAST::Multilayer2DSectionElementPropertyCard, MAST::IsotropicElementPropertyCard3D, MAST::ElementPropertyCard1D, and MAST::Solid2DSectionElementPropertyCard.
|
pure virtual |
returns the extra quadrature order (on top of the system) that this element should use.
By default this is zero, and can be changed by the derived classes
Implemented in MAST::OrthotropicElementPropertyCard3D, MAST::IsotropicElementPropertyCard3D, MAST::ElementPropertyCard1D, and MAST::ElementPropertyCard2D.
|
inlinevirtual |
return the material property.
This needs to be reimplemented for individual card type, and should be used only for isotropic cards.
Reimplemented in MAST::Solid1DSectionElementPropertyCard, MAST::OrthotropicElementPropertyCard3D, MAST::IsotropicElementPropertyCard3D, and MAST::Solid2DSectionElementPropertyCard.
Definition at line 126 of file element_property_card_base.h.
|
inlinevirtual |
Reimplemented in MAST::Solid2DSectionElementPropertyCard.
Definition at line 231 of file element_property_card_base.h.
|
inline |
returns the type of strain to be used for this element
Definition at line 217 of file element_property_card_base.h.
|
pure virtual |
return true if the property is isotropic
Implemented in MAST::Solid1DSectionElementPropertyCard, MAST::Multilayer2DSectionElementPropertyCard, MAST::Multilayer1DSectionElementPropertyCard, MAST::OrthotropicElementPropertyCard3D, MAST::IsotropicElementPropertyCard3D, and MAST::Solid2DSectionElementPropertyCard.
|
inlinevirtual |
Definition at line 226 of file element_property_card_base.h.
|
pure virtual |
|
inlinevirtual |
Only used by 1D sections.
Added for polymorphism enhancement.
Added by DJN.
Reimplemented in MAST::Solid1DSectionElementPropertyCard.
Definition at line 169 of file element_property_card_base.h.
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
inlinevirtual |
sets the bending model to be used for the 1D element Added by DJN to increase section polymorphism
Reimplemented in MAST::ElementPropertyCard1D, and MAST::ElementPropertyCard2D.
Definition at line 201 of file element_property_card_base.h.
|
inline |
sets the mass matrix to be diagonal or consistent
Definition at line 209 of file element_property_card_base.h.
|
inlinevirtual |
return the material property.
This needs to be reimplemented for individual card type, and should be used only for isotropic cards.
Added by DJN. Reference cplusplus.com/forum/beginner/10639
Definition at line 138 of file element_property_card_base.h.
|
inline |
sets the type of strain to be used, which is LINEAR_STRAIN by default
Definition at line 184 of file element_property_card_base.h.
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
inline |
returns the type of strain to be used for this element
Definition at line 192 of file element_property_card_base.h.
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
inlinevirtual |
vector in the x-y plane of the element.
This should not be the same as the element x-axis. Only used by 1D sections. Added for polymorphism enhancement. Added by DJN.
Reimplemented in MAST::ElementPropertyCard1D.
Definition at line 149 of file element_property_card_base.h.
|
inlinevirtual |
constant reference to vector in the x-y plane of the element.
This should not be the same as the element x-axis. Only used by 1D sections. Added for polymorphism enhancement. Added by DJN.
Reimplemented in MAST::ElementPropertyCard1D.
Definition at line 160 of file element_property_card_base.h.
|
protected |
flag to use a diagonal mass matrix.
By default, this is false
Definition at line 246 of file element_property_card_base.h.
|
protected |
type of nonlinear strain to be used for analysis
Definition at line 241 of file element_property_card_base.h.
|
protected |
Definition at line 248 of file element_property_card_base.h.