40enum class DOF :
unsigned short;
43 virtual void update_strain_energy() = 0;
44 virtual void update_kinetic_energy() = 0;
45 virtual void update_viscous_energy() = 0;
46 virtual void update_nonviscous_energy() = 0;
47 virtual void update_complementary_energy() = 0;
48 virtual void update_momentum() = 0;
69 [[nodiscard]]
virtual std::vector<shared_ptr<Material>>
get_material(
const shared_ptr<DomainBase>&)
const = 0;
70 [[nodiscard]]
virtual std::vector<shared_ptr<Section>>
get_section(
const shared_ptr<DomainBase>&)
const = 0;
84 virtual int initialize(
const shared_ptr<DomainBase>&) = 0;
117 [[nodiscard]]
virtual const std::vector<weak_ptr<Node>>&
get_node_ptr()
const = 0;
OutputType
Definition: OutputType.h:23
The DomainBase class is a template.
Definition: DomainBase.h:104
A ElementBase class.
Definition: ElementBase.h:42
virtual void update_dof_encoding()=0
virtual vec get_current_velocity() const =0
virtual const mat & get_current_mass() const =0
virtual bool is_initialized() const =0
virtual const mat & get_current_viscous() const =0
virtual const cx_mat & get_current_nonviscous_force() const =0
virtual const uvec & get_node_encoding() const =0
virtual double get_characteristic_length() const =0
virtual const vec & get_trial_traction() const =0
virtual const mat & get_initial_mass() const =0
virtual bool if_update_geometry() const =0
virtual vec get_node_trial_resistance() const =0
virtual unsigned get_total_number() const =0
virtual int initialize(const shared_ptr< DomainBase > &)=0
virtual mat compute_shape_function(const mat &, unsigned) const =0
virtual const mat & get_mass_container() const =0
virtual vec get_incre_displacement() const =0
virtual int reset_status()=0
virtual bool allow_modify_viscous() const =0
virtual double get_viscous_energy() const =0
virtual double get_kinetic_energy() const =0
ElementBase & operator=(const ElementBase &)=delete
virtual const mat & get_trial_viscous() const =0
virtual std::vector< shared_ptr< Section > > get_section(const shared_ptr< DomainBase > &) const =0
virtual const mat & get_initial_stiffness() const =0
virtual const uvec & get_dof_encoding() const =0
virtual void clear_node_ptr()=0
virtual bool if_update_nonviscous() const =0
ElementBase(const ElementBase &)=delete
virtual double get_momentum_component(DOF) const =0
virtual bool allow_modify_mass() const =0
virtual vec get_trial_acceleration() const =0
virtual const mat & get_current_nonviscous() const =0
virtual double get_nonviscous_energy() const =0
virtual vec get_trial_displacement() const =0
virtual bool if_update_mass() const =0
virtual const vec & get_trial_inertial_force()=0
virtual const uvec & get_material_tag() const =0
virtual const vec & get_current_damping_force() const =0
virtual const mat & get_trial_stiffness() const =0
virtual const mat & get_trial_nonviscous() const =0
virtual vec get_incre_velocity() const =0
virtual void set_initialized(bool) const =0
virtual double get_complementary_energy() const =0
virtual const uvec & get_section_tag() const =0
virtual const mat & get_current_secant() const =0
~ElementBase() override=default
virtual bool if_update_stiffness() const =0
virtual const vec & get_current_inertial_force()=0
virtual int update_status()=0
virtual const vec & get_current_body_force() const =0
virtual const mat & get_initial_nonviscous() const =0
virtual const std::vector< weak_ptr< Node > > & get_node_ptr() const =0
virtual vec get_current_displacement() const =0
virtual const mat & get_trial_geometry() const =0
ElementBase(const unsigned T)
Definition: ElementBase.h:73
virtual int initialize_base(const shared_ptr< DomainBase > &)=0
virtual void set_symmetric(bool) const =0
virtual const mat & get_initial_viscous() const =0
virtual const std::vector< MappingDOF > & get_dof_mapping() const =0
ElementBase & operator=(ElementBase &&)=delete
virtual const mat & get_current_geometry() const =0
virtual const mat & get_trial_secant() const =0
virtual bool is_nlgeom() const =0
virtual const vec & get_trial_resistance() const =0
virtual unsigned get_node_number() const =0
virtual const mat & get_current_stiffness() const =0
virtual const mat & get_initial_geometry() const =0
virtual const vec & get_momentum() const =0
virtual unsigned get_dof_number() const =0
ElementBase(ElementBase &&)=delete
virtual bool if_update_viscous() const =0
friend mat get_coordinate(const ElementBase *, unsigned)
Definition: Element.cpp:643
virtual int commit_status()=0
virtual vec get_node_current_resistance() const =0
virtual const vec & update_traction(const vec &)=0
virtual int clear_status()=0
virtual const vec & get_current_traction() const =0
virtual const vec & get_trial_damping_force() const =0
virtual vec get_node_incre_resistance() const =0
virtual vec get_trial_velocity() const =0
virtual const vec & get_current_resistance() const =0
virtual vec get_current_acceleration() const =0
virtual bool allow_modify_nonviscous() const =0
virtual const mat & get_initial_secant() const =0
virtual const mat & get_stiffness_container() const =0
virtual std::vector< shared_ptr< Material > > get_material(const shared_ptr< DomainBase > &) const =0
virtual std::vector< vec > record(OutputType)=0
virtual const cx_mat & get_trial_nonviscous_force() const =0
virtual const vec & get_trial_body_force() const =0
virtual vec get_incre_acceleration() const =0
virtual double get_strain_energy() const =0
virtual bool is_symmetric() const =0
virtual mat get_coordinate(unsigned) const =0
virtual const vec & update_body_force(const vec &)=0
virtual const mat & get_trial_mass() const =0
A Material abstract base class.
Definition: Material.h:111
The Node class holds the number of DoFs, coordinate, displacement, velocity and acceleration.
Definition: Node.h:80
A Section class.
Definition: Section.h:77
A base Tag class.
Definition: Tag.h:38
The vtkBase class.
Definition: vtkBase.h:44