|
suanPan
🧮 An Open Source, Parallel and Heterogeneous Finite Element Analysis Framework
|
#include <Element.h>
Public Member Functions | |
| Element (unsigned, unsigned, unsigned, uvec &&, std::vector< Node::DOF > &&) | |
| Element (unsigned, unsigned, unsigned, uvec &&, uvec &&, bool, MaterialType, std::vector< Node::DOF > &&) | |
| Element (unsigned, unsigned, unsigned, uvec &&, uvec &&, bool, SectionType, std::vector< Node::DOF > &&) | |
| Element (unsigned, unsigned, uvec &&, std::vector< Node::DOF > &&) | |
| Element (unsigned, unsigned, unsigned, unsigned, std::vector< Node::DOF > &&) | |
| int | initialize_base (const shared_ptr< DomainBase > &) final |
| void | set_initialized (bool) const override |
| void | set_symmetric (bool) const override |
| bool | is_initialized () const override |
| bool | is_symmetric () const override |
| bool | is_nlgeom () const override |
| Type | type () const override |
| void | update_dof_encoding () override |
| bool | if_update_mass () const override |
| bool | if_update_viscous () const override |
| bool | if_update_nonviscous () const override |
| bool | if_update_stiffness () const override |
| bool | if_update_geometry () const override |
| bool | allow_modify_mass () const override |
| bool | allow_modify_viscous () const override |
| bool | allow_modify_nonviscous () const override |
| const uvec & | get_dof_encoding () const override |
| const uvec & | get_node_encoding () const override |
| const std::vector< Node::DOF > & | get_dof_identifier () const override |
| const std::vector< MappingDOF > & | get_dof_mapping () const override |
| bool | validate_dof (const std::vector< Node::DOF > &) const override |
| uvec | index_of (const std::vector< Node::DOF > &) const override |
| const uvec & | get_material_tag () const override |
| const uvec & | get_section_tag () const override |
| unsigned | get_dof_number () const override |
| unsigned | get_node_number () const override |
| unsigned | get_total_number () const override |
| void | clear_node_ptr () override |
| const std::vector< std::weak_ptr< Node > > & | get_node_ptr () const override |
| mat | get_coordinate () const override |
| mat | get_coordinate (unsigned) const override |
| generate a matrix that contains coordinates of connected nodes | |
| vec | get_incre_displacement () const override |
| vec | get_incre_velocity () const override |
| vec | get_incre_acceleration () const override |
| vec | get_trial_displacement () const override |
| vec | get_trial_velocity () const override |
| vec | get_trial_acceleration () const override |
| vec | get_current_displacement () const override |
| vec | get_current_velocity () const override |
| vec | get_current_acceleration () const override |
| const vec & | get_trial_resistance () const override |
| const vec & | get_current_resistance () const override |
| const vec & | get_trial_damping_force () const override |
| const vec & | get_current_damping_force () const override |
| const cx_mat & | get_trial_nonviscous_force () const override |
| const cx_mat & | get_current_nonviscous_force () const override |
| const vec & | get_trial_inertial_force () override |
| const vec & | get_current_inertial_force () override |
| const vec & | get_trial_body_force () const override |
| const vec & | get_current_body_force () const override |
| const vec & | get_trial_traction () const override |
| const vec & | get_current_traction () const override |
| const mat & | get_trial_mass () const override |
| const mat & | get_trial_viscous () const override |
| const mat & | get_trial_nonviscous () const override |
| const mat & | get_trial_stiffness () const override |
| const mat & | get_trial_geometry () const override |
| const mat & | get_trial_secant () const override |
| const mat & | get_current_mass () const override |
| const mat & | get_current_viscous () const override |
| const mat & | get_current_nonviscous () const override |
| const mat & | get_current_stiffness () const override |
| const mat & | get_current_geometry () const override |
| const mat & | get_current_secant () const override |
| const mat & | get_initial_mass () const override |
| const mat & | get_initial_viscous () const override |
| const mat & | get_initial_nonviscous () const override |
| const mat & | get_initial_stiffness () const override |
| const mat & | get_initial_geometry () const override |
| const mat & | get_initial_secant () const override |
| const mat & | get_mass_container () const override |
| const mat & | get_stiffness_container () const override |
| int | clear_status () override=0 |
| int | commit_status () override=0 |
| int | reset_status () override=0 |
| const vec & | update_body_force (const vec &) override |
| const vec & | update_traction (const vec &) override |
| std::vector< vec > | record (OutputType) const override |
| double | get_strain_energy () const override |
| double | get_complementary_energy () const override |
| double | get_kinetic_energy () const override |
| double | get_viscous_energy () const override |
| double | get_nonviscous_energy () const override |
| const vec & | get_momentum () const override |
| double | get_characteristic_length () const override |
| double | get (Parameter) const override |
| mat | compute_shape_function (const mat &, unsigned) const override |
Public Member Functions inherited from ElementBase | |
| ElementBase (const unsigned T) | |
| virtual int | initialize (const shared_ptr< DomainBase > &)=0 |
| virtual int | update_status ()=0 |
Public Member Functions inherited from UniqueTag | |
| UniqueTag (const UniqueTag &)=delete | |
| UniqueTag (UniqueTag &&)=delete | |
| UniqueTag & | operator= (const UniqueTag &)=delete |
| UniqueTag & | operator= (UniqueTag &&)=delete |
| ~UniqueTag () override=default | |
| Tag (unsigned=0) | |
| Tag (const Tag &)=default | |
| Tag (Tag &&) noexcept=default | |
Public Member Functions inherited from Tag | |
| Tag (unsigned=0) | |
| Tag (const Tag &)=default | |
| Tag (Tag &&) noexcept=default | |
| Tag & | operator= (const Tag &)=delete |
| Tag & | operator= (Tag &&)=delete |
| virtual | ~Tag ()=default |
| void | set_tag (unsigned) const |
| unsigned | get_tag () const |
| void | enable () |
| void | disable () |
| void | guard () |
| void | unguard () |
| bool | is_active () const |
| bool | is_guarded () const |
| virtual void | print () |
Public Member Functions inherited from Distributed | |
| Distributed (const int obj_tag) | |
Protected Member Functions | |
| vec | get_node_incre_resistance () const override |
| vec | get_node_trial_resistance () const override |
| vec | get_node_current_resistance () const override |
| std::vector< shared_ptr< Material > > | get_material (const shared_ptr< DomainBase > &) const override |
| std::vector< shared_ptr< Section > > | get_section (const shared_ptr< DomainBase > &) const override |
| ElementBase (const unsigned T) | |
| virtual int | initialize (const shared_ptr< DomainBase > &)=0 |
| virtual int | update_status ()=0 |
Protected Member Functions inherited from UniqueTag | |
| UniqueTag (const UniqueTag &)=delete | |
| UniqueTag (UniqueTag &&)=delete | |
| UniqueTag & | operator= (const UniqueTag &)=delete |
| UniqueTag & | operator= (UniqueTag &&)=delete |
| ~UniqueTag () override=default | |
| Tag (unsigned=0) | |
| Tag (const Tag &)=default | |
| Tag (Tag &&) noexcept=default | |
Protected Member Functions inherited from Tag | |
| Tag (unsigned=0) | |
| Tag (const Tag &)=default | |
| Tag (Tag &&) noexcept=default | |
| Tag & | operator= (const Tag &)=delete |
| Tag & | operator= (Tag &&)=delete |
| virtual | ~Tag ()=default |
| void | set_tag (unsigned) const |
| unsigned | get_tag () const |
| void | enable () |
| void | disable () |
| void | guard () |
| void | unguard () |
| bool | is_active () const |
| bool | is_guarded () const |
| virtual void | print () |
Protected Member Functions inherited from Distributed | |
| Distributed (const int obj_tag) | |
Friends | |
| void | ConstantMass (DataElement *) |
| void | ConstantDamping (DataElement *) |
| void | ConstantStiffness (DataElement *) |
| void | ConstantGeometry (DataElement *) |
Additional Inherited Members | |
Public Types inherited from ElementBase | |
| enum class | Type : std::uint8_t { FEM , DEM } |
| enum class | Parameter : std::uint8_t { ELASTIC , POISSON , RADIUS , MASS , INERTIA , DAMPING } |
Static Public Member Functions inherited from Distributed | |
| template<typename T > | |
| static auto | gather (T &&) |
Public Attributes inherited from Distributed | |
| const bool | is_local |
Protected Types inherited from ElementBase | |
| enum class | Type : std::uint8_t { FEM , DEM } |
| enum class | Parameter : std::uint8_t { ELASTIC , POISSON , RADIUS , MASS , INERTIA , DAMPING } |
Static Protected Member Functions inherited from Distributed | |
| template<typename T > | |
| static auto | gather (T &&) |
| Element::Element | ( | unsigned | T, |
| unsigned | NN, | ||
| unsigned | ND, | ||
| uvec && | NT, | ||
| std::vector< Node::DOF > && | DI | ||
| ) |
| Element::Element | ( | unsigned | T, |
| unsigned | NN, | ||
| unsigned | ND, | ||
| uvec && | NT, | ||
| uvec && | MT, | ||
| bool | F, | ||
| MaterialType | MTP, | ||
| std::vector< Node::DOF > && | DI | ||
| ) |
| Element::Element | ( | unsigned | T, |
| unsigned | NN, | ||
| unsigned | ND, | ||
| uvec && | NT, | ||
| uvec && | ST, | ||
| bool | F, | ||
| SectionType | STP, | ||
| std::vector< Node::DOF > && | DI | ||
| ) |
| Element::Element | ( | unsigned | T, |
| unsigned | ND, | ||
| unsigned | ET, | ||
| unsigned | NT, | ||
| std::vector< Node::DOF > && | DI | ||
| ) |
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
|
overridepure virtual |
Implements ElementBase.
Implemented in ElementExample, B21, B21E, B21H, B31, B31OS, EB21, EB31OS, F21, F21H, F31, MVLEM, NMB21, NMB21E, NMB31, C3D20, C3D4, C3D8, C3D8I, CIN3D8, DC3D4, DC3D8, ElementTemplate, CAX3, CAX4, CAX8, CSMQ, CSMQ4, CSMQ8, CSMT3, CSMT6, Allman, GCMQ, GQ12, SGCMQ, CINP4, PS, QE2, DCP3, DCP4, CP3, CP4, CP4I, CP5, CP6, CP7, CP8, PCPE4DC, PCPE4UC, PCPE8DC, PCPE8UC, Particle, PatchCube, PatchQuad, DKT3, DKT4, Mindlin, DKTS3, S4, SGCMS, Contact2D, Contact3D, Damper01, Damper02, Embedded< DIM >, Joint, MassBase, SingleSection2D, SingleSection3D, Spring01, Spring02, Tie, TranslationConnector, T2D2, T2D2S, T3D2, and T3D2S.
|
overridepure virtual |
Implements ElementBase.
Implemented in ElementExample, B21, B21E, B21H, B31, B31OS, EB21, EB31OS, F21, F21H, F31, MVLEM, NMB21, NMB21E, NMB31, C3D20, C3D4, C3D8, C3D8I, CIN3D8, DC3D4, DC3D8, ElementTemplate, CAX3, CAX4, CAX8, CSMQ, CSMQ4, CSMQ8, CSMT3, CSMT6, Allman, GCMQ, GQ12, SGCMQ, CINP4, PS, QE2, DCP3, DCP4, CP3, CP4, CP4I, CP5, CP6, CP7, CP8, PCPE4DC, PCPE4UC, PCPE8DC, PCPE8UC, Particle, PatchCube, PatchQuad, DKT3, DKT4, Mindlin, DKTS3, S4, SGCMS, Contact2D, Contact3D, Damper01, Damper02, Embedded< DIM >, Joint, MassBase, SingleSection2D, SingleSection3D, Spring01, Spring02, Tie, TranslationConnector, T2D2, T2D2S, T3D2, and T3D2S.
|
overridevirtual |
Implements ElementBase.
Reimplemented in SphericalParticle< DIM >, SphericalParticle< 2u >, and SphericalParticle< 3u >.
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
generate a matrix that contains coordinates of connected nodes
| num_dim | number of dimension required |
Implements ElementBase.
|
overridevirtual |
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
|
overridevirtual |
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
|
overridevirtual |
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
|
overrideprotectedvirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
|
overrideprotectedvirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
|
overrideprotectedvirtual |
Implements ElementBase.
|
overridevirtual |
|
overridevirtual |
Implements ElementBase.
|
overrideprotectedvirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
|
overrideprotectedvirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
|
overridevirtual |
|
overridevirtual |
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
|
overridevirtual |
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
Implements ElementBase.
|
finalvirtual |
|
overridevirtual |
|
overridevirtual |
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
|
overridepure virtual |
Implements ElementBase.
Implemented in ElementExample, B21, B21E, B21H, B31, B31OS, EB21, EB31OS, F21, F21H, F31, MVLEM, NMB21, NMB21E, NMB31, C3D20, C3D4, C3D8, C3D8I, CIN3D8, DC3D4, DC3D8, ElementTemplate, CAX3, CAX4, CAX8, CSMQ, CSMQ4, CSMQ8, CSMT3, CSMT6, Allman, GCMQ, GQ12, SGCMQ, CINP4, PS, QE2, DCP3, DCP4, CP3, CP4, CP4I, CP5, CP6, CP7, CP8, PCPE4DC, PCPE4UC, PCPE8DC, PCPE8UC, Particle, PatchCube, PatchQuad, DKT3, DKT4, Mindlin, DKTS3, S4, SGCMS, Contact2D, Contact3D, Damper01, Damper02, Embedded< DIM >, Joint, MassBase, SingleSection2D, SingleSection3D, Spring01, Spring02, Tie, TranslationConnector, T2D2, T2D2S, T3D2, and T3D2S.
|
overridevirtual |
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
Reimplemented in Particle.
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
|
overridevirtual |
Implements ElementBase.
|
friend |
|
friend |
|
friend |
|
friend |
|
protected |