MAST
Multidisciplinary-design Adaptation and Sensitivity Toolkit (MAST)
MAST::Multilayer2DSectionElementPropertyCard Class Reference

Detailed Description

#include <multilayer_2d_section_element_property_card.h>

Inheritance diagram for MAST::Multilayer2DSectionElementPropertyCard:
Collaboration diagram for MAST::Multilayer2DSectionElementPropertyCard:

Public Member Functions

 Multilayer2DSectionElementPropertyCard ()
 
virtual ~Multilayer2DSectionElementPropertyCard ()
 virtual destructor More...
 
virtual std::unique_ptr< MAST::FieldFunction< RealMatrixX > > damping_matrix (const MAST::ElementBase &e)
 
virtual bool depends_on (const MAST::FunctionBase &f) const
 returns true if the property card depends on the function f More...
 
virtual unsigned int dim () const
 dimension of the element for which this property is defined More...
 
const std::vector< MAST::Solid2DSectionElementPropertyCard * > & get_layers () const
 returns the layers of this section More...
 
virtual bool if_isotropic () const
 return true if the property is isotropic More...
 
virtual std::unique_ptr< MAST::FieldFunction< RealMatrixX > > inertia_matrix (const MAST::ElementBase &e)
 
virtual std::unique_ptr< MAST::FieldFunction< RealMatrixX > > prestress_A_matrix (MAST::ElementBase &e)
 
virtual std::unique_ptr< MAST::FieldFunction< RealMatrixX > > prestress_B_matrix (MAST::ElementBase &e)
 
void set_layers (const Real base, std::vector< MAST::Solid2DSectionElementPropertyCard *> &layers)
 sets the layers of this section. More...
 
virtual std::unique_ptr< MAST::FieldFunction< RealMatrixX > > stiffness_A_matrix (const MAST::ElementBase &e)
 
virtual std::unique_ptr< MAST::FieldFunction< RealMatrixX > > stiffness_B_matrix (const MAST::ElementBase &e)
 
virtual std::unique_ptr< MAST::FieldFunction< RealMatrixX > > stiffness_D_matrix (const MAST::ElementBase &e)
 
virtual std::unique_ptr< MAST::FieldFunction< RealMatrixX > > thermal_expansion_A_matrix (const MAST::ElementBase &e)
 
virtual std::unique_ptr< MAST::FieldFunction< RealMatrixX > > thermal_expansion_B_matrix (const MAST::ElementBase &e)
 
virtual std::unique_ptr< MAST::FieldFunction< RealMatrixX > > transverse_shear_stiffness_matrix (const MAST::ElementBase &e)
 
- Public Member Functions inherited from MAST::ElementPropertyCard2D
 ElementPropertyCard2D ()
 
virtual ~ElementPropertyCard2D ()
 virtual destructor More...
 
MAST::BendingOperatorType bending_model (const MAST::GeomElem &elem) const
 returns the bending model to be used for the 2D element. More...
 
virtual int extra_quadrature_order (const MAST::GeomElem &elem) const
 returns the extra quadrature order (on top of the system) that this element should use. More...
 
bool plane_stress () const
 returns the flag for plane stress. More...
 
void set_bending_model (MAST::BendingOperatorType b)
 returns the bending model to be used for the 2D element More...
 
void set_plane_stress (bool val)
 sets the flag for plane stress. More...
 
- Public Member Functions inherited from MAST::ElementPropertyCardBase
 ElementPropertyCardBase ()
 
virtual ~ElementPropertyCardBase ()
 virtual destructor More...
 
virtual std::unique_ptr< MAST::FieldFunction< RealMatrixX > > damping_matrix (const MAST::ElementBase &e) const =0
 
virtual const MAST::MaterialPropertyCardBaseget_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_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
 
void set_diagonal_mass_matrix (bool m)
 sets the mass matrix to be diagonal or consistent More...
 
virtual const MAST::MaterialPropertyCardBaseset_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 RealVectorXy_vector ()
 vector in the x-y plane of the element. More...
 
virtual const RealVectorXy_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...
 
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

std::vector< MAST::FieldFunction< Real > * > _layer_offsets
 
std::vector< MAST::Solid2DSectionElementPropertyCard * > _layers
 vector of thickness function for each layer More...
 
- Protected Attributes inherited from MAST::ElementPropertyCard2D
MAST::BendingOperatorType _bending_model
 material property card. More...
 
bool _if_plane_stress
 if the analysis is plne stress, otherwise it is plane strain. More...
 
- Protected Attributes inherited from MAST::ElementPropertyCardBase
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...
 

Constructor & Destructor Documentation

◆ Multilayer2DSectionElementPropertyCard()

MAST::Multilayer2DSectionElementPropertyCard::Multilayer2DSectionElementPropertyCard ( )
inline

◆ ~Multilayer2DSectionElementPropertyCard()

MAST::Multilayer2DSectionElementPropertyCard::~Multilayer2DSectionElementPropertyCard ( )
virtual

virtual destructor

Definition at line 167 of file multilayer_2d_section_element_property_card.cpp.

Member Function Documentation

◆ damping_matrix()

std::unique_ptr< MAST::FieldFunction< RealMatrixX > > MAST::Multilayer2DSectionElementPropertyCard::damping_matrix ( const MAST::ElementBase e)
virtual

◆ depends_on()

bool MAST::Multilayer2DSectionElementPropertyCard::depends_on ( const MAST::FunctionBase f) const
virtual

returns true if the property card depends on the function f

Reimplemented from MAST::FunctionSetBase.

Definition at line 234 of file multilayer_2d_section_element_property_card.cpp.

◆ dim()

unsigned int MAST::Multilayer2DSectionElementPropertyCard::dim ( ) const
virtual

dimension of the element for which this property is defined

Implements MAST::ElementPropertyCardBase.

Definition at line 176 of file multilayer_2d_section_element_property_card.cpp.

◆ get_layers()

const std::vector< MAST::Solid2DSectionElementPropertyCard * > & MAST::Multilayer2DSectionElementPropertyCard::get_layers ( ) const

returns the layers of this section

Definition at line 216 of file multilayer_2d_section_element_property_card.cpp.

◆ if_isotropic()

bool MAST::Multilayer2DSectionElementPropertyCard::if_isotropic ( ) const
virtual

return true if the property is isotropic

Implements MAST::ElementPropertyCardBase.

Definition at line 225 of file multilayer_2d_section_element_property_card.cpp.

◆ inertia_matrix()

std::unique_ptr< MAST::FieldFunction< RealMatrixX > > MAST::Multilayer2DSectionElementPropertyCard::inertia_matrix ( const MAST::ElementBase e)
virtual

◆ prestress_A_matrix()

std::unique_ptr< MAST::FieldFunction< RealMatrixX > > MAST::Multilayer2DSectionElementPropertyCard::prestress_A_matrix ( MAST::ElementBase e)
virtual

◆ prestress_B_matrix()

std::unique_ptr< MAST::FieldFunction< RealMatrixX > > MAST::Multilayer2DSectionElementPropertyCard::prestress_B_matrix ( MAST::ElementBase e)
virtual

◆ set_layers()

void MAST::Multilayer2DSectionElementPropertyCard::set_layers ( const Real  base,
std::vector< MAST::Solid2DSectionElementPropertyCard *> &  layers 
)

sets the layers of this section.

base is used reference for calculation of offset. base = -1 implies section lower thickness, base = 0 implies section mid-point base = +1 implies section upper thickness.

Definition at line 185 of file multilayer_2d_section_element_property_card.cpp.

◆ stiffness_A_matrix()

std::unique_ptr< MAST::FieldFunction< RealMatrixX > > MAST::Multilayer2DSectionElementPropertyCard::stiffness_A_matrix ( const MAST::ElementBase e)
virtual

◆ stiffness_B_matrix()

std::unique_ptr< MAST::FieldFunction< RealMatrixX > > MAST::Multilayer2DSectionElementPropertyCard::stiffness_B_matrix ( const MAST::ElementBase e)
virtual

◆ stiffness_D_matrix()

std::unique_ptr< MAST::FieldFunction< RealMatrixX > > MAST::Multilayer2DSectionElementPropertyCard::stiffness_D_matrix ( const MAST::ElementBase e)
virtual

◆ thermal_expansion_A_matrix()

std::unique_ptr< MAST::FieldFunction< RealMatrixX > > MAST::Multilayer2DSectionElementPropertyCard::thermal_expansion_A_matrix ( const MAST::ElementBase e)
virtual

◆ thermal_expansion_B_matrix()

std::unique_ptr< MAST::FieldFunction< RealMatrixX > > MAST::Multilayer2DSectionElementPropertyCard::thermal_expansion_B_matrix ( const MAST::ElementBase e)
virtual

◆ transverse_shear_stiffness_matrix()

std::unique_ptr< MAST::FieldFunction< RealMatrixX > > MAST::Multilayer2DSectionElementPropertyCard::transverse_shear_stiffness_matrix ( const MAST::ElementBase e)
virtual

Member Data Documentation

◆ _layer_offsets

std::vector<MAST::FieldFunction<Real>*> MAST::Multilayer2DSectionElementPropertyCard::_layer_offsets
protected

◆ _layers

std::vector<MAST::Solid2DSectionElementPropertyCard*> MAST::Multilayer2DSectionElementPropertyCard::_layers
protected

vector of thickness function for each layer

Definition at line 121 of file multilayer_2d_section_element_property_card.h.


The documentation for this class was generated from the following files: