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

Detailed Description

#include <multilayer_1d_section_element_property_card.h>

Inheritance diagram for MAST::Multilayer1DSectionElementPropertyCard:
Collaboration diagram for MAST::Multilayer1DSectionElementPropertyCard:

Public Member Functions

 Multilayer1DSectionElementPropertyCard ()
 
virtual ~Multilayer1DSectionElementPropertyCard ()
 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...
 
const std::vector< MAST::Solid1DSectionElementPropertyCard * > & 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::Solid1DSectionElementPropertyCard *> &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::ElementPropertyCard1D
 ElementPropertyCard1D ()
 
virtual ~ElementPropertyCard1D ()
 virtual destructor More...
 
virtual const MAST::FieldFunction< Real > & A () const =0
 
virtual MAST::FieldFunction< Real > & A ()=0
 
virtual const MAST::FieldFunction< Real > & Ay () const =0
 
virtual MAST::FieldFunction< Real > & Ay ()=0
 
virtual const MAST::FieldFunction< Real > & Az () const =0
 
virtual MAST::FieldFunction< Real > & Az ()=0
 
virtual MAST::BendingOperatorType bending_model (const MAST::GeomElem &elem) const
 returns the bending model to be used for the 2D element. More...
 
virtual unsigned int dim () const
 dimension of the element for which this property is defined 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...
 
virtual const MAST::FieldFunction< RealMatrixX > & I () const =0
 
virtual MAST::FieldFunction< RealMatrixX > & I ()=0
 
virtual const MAST::FieldFunction< Real > & Ip () const =0
 
virtual MAST::FieldFunction< Real > & Ip ()=0
 
virtual const MAST::FieldFunction< Real > & J () const =0
 
virtual MAST::FieldFunction< Real > & J ()=0
 
void set_bending_model (MAST::BendingOperatorType b)
 returns the bending model to be used for the 2D element More...
 
RealVectorXy_vector ()
 returns value of the property val. More...
 
const RealVectorXy_vector () const
 constant reference to vector in the x-y plane of the element. 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
 
- 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::Solid1DSectionElementPropertyCard * > _layers
 vector of thickness function for each layer More...
 
- Protected Attributes inherited from MAST::ElementPropertyCard1D
MAST::BendingOperatorType _bending_model
 material property card. More...
 
RealVectorX _local_y
 vector in the x-y plane. 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

◆ Multilayer1DSectionElementPropertyCard()

MAST::Multilayer1DSectionElementPropertyCard::Multilayer1DSectionElementPropertyCard ( )
inline

◆ ~Multilayer1DSectionElementPropertyCard()

MAST::Multilayer1DSectionElementPropertyCard::~Multilayer1DSectionElementPropertyCard ( )
virtual

virtual destructor

Definition at line 163 of file multilayer_1d_section_element_property_card.cpp.

Member Function Documentation

◆ damping_matrix()

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

◆ depends_on()

bool MAST::Multilayer1DSectionElementPropertyCard::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 226 of file multilayer_1d_section_element_property_card.cpp.

◆ get_layers()

const std::vector< MAST::Solid1DSectionElementPropertyCard * > & MAST::Multilayer1DSectionElementPropertyCard::get_layers ( ) const

returns the layers of this section

Definition at line 207 of file multilayer_1d_section_element_property_card.cpp.

◆ if_isotropic()

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

return true if the property is isotropic

Implements MAST::ElementPropertyCardBase.

Definition at line 217 of file multilayer_1d_section_element_property_card.cpp.

◆ inertia_matrix()

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

◆ prestress_A_matrix()

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

◆ prestress_B_matrix()

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

◆ set_layers()

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

sets the layers of this section.

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

Definition at line 174 of file multilayer_1d_section_element_property_card.cpp.

◆ stiffness_A_matrix()

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

◆ stiffness_B_matrix()

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

◆ stiffness_D_matrix()

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

◆ thermal_expansion_A_matrix()

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

◆ thermal_expansion_B_matrix()

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

◆ transverse_shear_stiffness_matrix()

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

Member Data Documentation

◆ _layer_offsets

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

◆ _layers

std::vector<MAST::Solid1DSectionElementPropertyCard*> MAST::Multilayer1DSectionElementPropertyCard::_layers
protected

vector of thickness function for each layer

Definition at line 117 of file multilayer_1d_section_element_property_card.h.


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