MAST
|
#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 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 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 |
virtual std::unique_ptr< MAST::FieldFunction< RealMatrixX > > | damping_matrix (const MAST::ElementBase &e) const =0 |
virtual std::unique_ptr< MAST::FieldFunction< RealMatrixX > > | inertia_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 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 std::unique_ptr< MAST::FieldFunction< RealMatrixX > > | thermal_conductance_matrix (const MAST::ElementBase &e) const =0 |
virtual std::unique_ptr< MAST::FieldFunction< RealMatrixX > > | thermal_capacitance_matrix (const MAST::ElementBase &e) const =0 |
virtual const MAST::FieldFunction< Real > & | section (const MAST::ElementBase &e) const =0 |
virtual bool | if_isotropic () const =0 |
return true if the property is isotropic More... | |
virtual const MAST::MaterialPropertyCardBase & | get_material () const |
return the material property. More... | |
virtual unsigned int | dim () const =0 |
dimension of the element for which this property is defined More... | |
void | set_strain (MAST::StrainType strain) |
sets the type of strain to be used, which is LINEAR_STRAIN by default More... | |
const MAST::StrainType | strain_type () const |
returns the type of strain to be used for this element More... | |
void | set_diagonal_mass_matrix (bool m) |
sets the mass matrix to be diagonal or consistent More... | |
bool | if_diagonal_mass_matrix () const |
returns the type of strain to be used for this element More... | |
virtual bool | if_prestressed () const |
Public Member Functions inherited from MAST::FunctionSetBase | |
FunctionSetBase () | |
virtual | ~FunctionSetBase () |
destructor deletes the function pointers More... | |
bool | contains (const std::string &nm) const |
checks if the card contains the specified property value More... | |
void | add (MAST::FunctionBase &f) |
adds the function to this card and returns a reference to it. 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... | |
virtual bool | depends_on (const MAST::FunctionBase &f) const |
returns true if the property card depends on the function f More... | |
Protected Attributes | |
MAST::StrainType | _strain_type |
type of nonlinear strain to be used for analysis More... | |
bool | _diagonal_mass |
flag to use a diagonal mass matrix. More... | |
Protected Attributes inherited from MAST::FunctionSetBase | |
std::map< std::string, MAST::FunctionBase * > | _properties |
map of the functions in this card More... | |
Definition at line 45 of file element_property_card_base.h.
|
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 |
Implemented in MAST::OrthotropicElementPropertyCard3D, MAST::IsotropicElementPropertyCard3D, MAST::Solid2DSectionElementPropertyCard, and MAST::Solid1DSectionElementPropertyCard.
|
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.
|
inline |
returns the type of strain to be used for this element
Definition at line 165 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 174 of file element_property_card_base.h.
|
pure virtual |
Implemented in MAST::OrthotropicElementPropertyCard3D, MAST::IsotropicElementPropertyCard3D, MAST::Solid2DSectionElementPropertyCard, and MAST::Solid1DSectionElementPropertyCard.
|
pure virtual |
Implemented in MAST::OrthotropicElementPropertyCard3D, MAST::IsotropicElementPropertyCard3D, MAST::Solid2DSectionElementPropertyCard, and MAST::Solid1DSectionElementPropertyCard.
|
pure virtual |
Implemented in MAST::OrthotropicElementPropertyCard3D, MAST::IsotropicElementPropertyCard3D, MAST::Solid2DSectionElementPropertyCard, and MAST::Solid1DSectionElementPropertyCard.
|
pure virtual |
Implemented in MAST::IsotropicElementPropertyCard3D, MAST::Solid2DSectionElementPropertyCard, and MAST::Solid1DSectionElementPropertyCard.
|
inline |
sets the mass matrix to be diagonal or consistent
Definition at line 157 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 141 of file element_property_card_base.h.
|
pure virtual |
Implemented in MAST::OrthotropicElementPropertyCard3D, MAST::IsotropicElementPropertyCard3D, MAST::Solid2DSectionElementPropertyCard, and MAST::Solid1DSectionElementPropertyCard.
|
pure virtual |
Implemented in MAST::OrthotropicElementPropertyCard3D, MAST::IsotropicElementPropertyCard3D, MAST::Solid2DSectionElementPropertyCard, and MAST::Solid1DSectionElementPropertyCard.
|
pure virtual |
Implemented in MAST::OrthotropicElementPropertyCard3D, MAST::IsotropicElementPropertyCard3D, MAST::Solid2DSectionElementPropertyCard, and MAST::Solid1DSectionElementPropertyCard.
|
inline |
returns the type of strain to be used for this element
Definition at line 149 of file element_property_card_base.h.
|
pure virtual |
Implemented in MAST::OrthotropicElementPropertyCard3D, MAST::IsotropicElementPropertyCard3D, MAST::Solid2DSectionElementPropertyCard, and MAST::Solid1DSectionElementPropertyCard.
|
pure virtual |
Implemented in MAST::OrthotropicElementPropertyCard3D, MAST::IsotropicElementPropertyCard3D, MAST::Solid2DSectionElementPropertyCard, and MAST::Solid1DSectionElementPropertyCard.
|
pure virtual |
Implemented in MAST::OrthotropicElementPropertyCard3D, MAST::IsotropicElementPropertyCard3D, MAST::Solid2DSectionElementPropertyCard, and MAST::Solid1DSectionElementPropertyCard.
|
pure virtual |
Implemented in MAST::OrthotropicElementPropertyCard3D, MAST::IsotropicElementPropertyCard3D, MAST::Solid2DSectionElementPropertyCard, and MAST::Solid1DSectionElementPropertyCard.
|
pure virtual |
Implemented in MAST::OrthotropicElementPropertyCard3D, MAST::IsotropicElementPropertyCard3D, MAST::Solid2DSectionElementPropertyCard, and MAST::Solid1DSectionElementPropertyCard.
|
protected |
flag to use a diagonal mass matrix.
By default, this is false
Definition at line 189 of file element_property_card_base.h.
|
protected |
type of nonlinear strain to be used for analysis
Definition at line 184 of file element_property_card_base.h.