|
suanPan
🧮 An Open Source, Parallel and Heterogeneous Finite Element Analysis Framework
|
The Node class holds the number of DoFs, coordinate, displacement, velocity and acceleration. More...
#include <Node.h>
Public Types | |
| enum class | DOF : std::uint8_t { NONE , U1 , U2 , U3 , UR1 , UR2 , UR3 , FU1 , FU2 , FU3 , FUR1 , FUR2 , FUR3 , RADIAL , AXIAL , RS , RW , DAMAGE , PRESSURE , TEMPERATURE , WARP } |
Public Member Functions | |
| Node (unsigned, vec &&) | |
| void | initialize (const shared_ptr< DomainBase > &) |
| This method should be called after elements are set. Elements will set the minimum number of DoFs for all related nodes. | |
| void | deinitialize () |
| void | ensure_dof (unsigned, const std::vector< DOF > &) |
| bool | validate_dof (const std::vector< DOF > &) const |
| std::vector< uword > | get_dof (const std::vector< DOF > &) const |
| void | set_original_dof (unsigned &) |
| const uvec & | get_original_dof () const |
| void | set_reordered_dof (const uvec &) |
| const uvec & | get_reordered_dof () const |
| const vec & | get_coordinate () const |
| const vec & | get_current_resistance () const |
| const vec & | get_current_damping_force () const |
| const vec & | get_current_nonviscous_force () const |
| const vec & | get_current_inertial_force () const |
| const vec & | get_current_displacement () const |
| const vec & | get_current_velocity () const |
| const vec & | get_current_acceleration () const |
| const vec & | get_incre_resistance () const |
| const vec & | get_incre_damping_force () const |
| const vec & | get_incre_nonviscous_force () const |
| const vec & | get_incre_inertial_force () const |
| const vec & | get_incre_displacement () const |
| const vec & | get_incre_velocity () const |
| const vec & | get_incre_acceleration () const |
| const vec & | get_trial_resistance () const |
| const vec & | get_trial_damping_force () const |
| const vec & | get_trial_nonviscous_force () const |
| const vec & | get_trial_inertial_force () const |
| const vec & | get_trial_displacement () const |
| const vec & | get_trial_velocity () const |
| const vec & | get_trial_acceleration () const |
| vec | get_current_resistance (unsigned) const |
| vec | get_current_damping_force (unsigned) const |
| vec | get_current_nonviscous_force (unsigned) const |
| vec | get_current_inertial_force (unsigned) const |
| vec | get_current_displacement (unsigned) const |
| vec | get_current_velocity (unsigned) const |
| vec | get_current_acceleration (unsigned) const |
| vec | get_incre_resistance (unsigned) const |
| vec | get_incre_damping_force (unsigned) const |
| vec | get_incre_nonviscous_force (unsigned) const |
| vec | get_incre_inertial_force (unsigned) const |
| vec | get_incre_displacement (unsigned) const |
| vec | get_incre_velocity (unsigned) const |
| vec | get_incre_acceleration (unsigned) const |
| vec | get_trial_resistance (unsigned) const |
| vec | get_trial_damping_force (unsigned) const |
| vec | get_trial_nonviscous_force (unsigned) const |
| vec | get_trial_inertial_force (unsigned) const |
| vec | get_trial_displacement (unsigned) const |
| vec | get_trial_velocity (unsigned) const |
| vec | get_trial_acceleration (unsigned) const |
| vec | initial_position (unsigned) const |
| vec | current_position (unsigned) const |
| vec | trial_position (unsigned) const |
| const vec & | update_current_resistance (vec &&) |
| const vec & | update_current_damping_force (vec &&) |
| const vec & | update_current_nonviscous_force (vec &&) |
| const vec & | update_current_inertial_force (vec &&) |
| const vec & | update_current_displacement (vec &&) |
| const vec & | update_current_velocity (vec &&) |
| const vec & | update_current_acceleration (vec &&) |
| const vec & | update_incre_resistance (vec &&) |
| const vec & | update_incre_damping_force (vec &&) |
| const vec & | update_incre_nonviscous_force (vec &&) |
| const vec & | update_incre_inertial_force (vec &&) |
| const vec & | update_incre_displacement (vec &&) |
| const vec & | update_incre_velocity (vec &&) |
| const vec & | update_incre_acceleration (vec &&) |
| const vec & | update_trial_resistance (vec &&) |
| const vec & | update_trial_damping_force (vec &&) |
| const vec & | update_trial_nonviscous_force (vec &&) |
| const vec & | update_trial_inertial_force (vec &&) |
| const vec & | update_trial_displacement (vec &&) |
| const vec & | update_trial_velocity (vec &&) |
| const vec & | update_trial_acceleration (vec &&) |
| void | update_current_status (const vec &) |
| void | update_current_status (const vec &, const vec &) |
| void | update_current_status (const vec &, const vec &, const vec &) |
| void | update_incre_status (const vec &) |
| void | update_incre_status (const vec &, const vec &) |
| void | update_incre_status (const vec &, const vec &, const vec &) |
| void | update_trial_status (const vec &) |
| void | update_trial_status (const vec &, const vec &) |
| void | update_trial_status (const vec &, const vec &, const vec &) |
| void | commit_status () |
| void | reset_status () |
| void | clear_status () |
| std::vector< vec > | record (OutputType) const |
| void | print () override |
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 |
The Node class holds the number of DoFs, coordinate, displacement, velocity and acceleration.
The current/committed, incremental and trial status of displacement, velocity and acceleration are stored. These variables will be the communication bridge(s) between Domain, Workshop and Element objects. That is, Element objects do not directly get information from the Workshop. Instead, Workshop passes information to Node objects through the Domain, Element objects acquire new status from associated Node objects only. In this manner, the relationship between those modules remains simple.
|
strong |
| Node::Node | ( | unsigned | T, |
| vec && | C | ||
| ) |
| void Node::clear_status | ( | ) |
| void Node::commit_status | ( | ) |
| vec Node::current_position | ( | unsigned | dim | ) | const |
| void Node::deinitialize | ( | ) |
| void Node::ensure_dof | ( | unsigned | num_in, |
| const std::vector< DOF > & | dof_in | ||
| ) |
| const vec & Node::get_coordinate | ( | ) | const |
| const vec & Node::get_current_acceleration | ( | ) | const |
| vec Node::get_current_acceleration | ( | unsigned | dim | ) | const |
| const vec & Node::get_current_damping_force | ( | ) | const |
| vec Node::get_current_damping_force | ( | unsigned | dim | ) | const |
| const vec & Node::get_current_displacement | ( | ) | const |
| vec Node::get_current_displacement | ( | unsigned | dim | ) | const |
| const vec & Node::get_current_inertial_force | ( | ) | const |
| vec Node::get_current_inertial_force | ( | unsigned | dim | ) | const |
| const vec & Node::get_current_nonviscous_force | ( | ) | const |
| vec Node::get_current_nonviscous_force | ( | unsigned | dim | ) | const |
| const vec & Node::get_current_resistance | ( | ) | const |
| vec Node::get_current_resistance | ( | unsigned | dim | ) | const |
| const vec & Node::get_current_velocity | ( | ) | const |
| vec Node::get_current_velocity | ( | unsigned | dim | ) | const |
| std::vector< uword > Node::get_dof | ( | const std::vector< DOF > & | seed | ) | const |
| const vec & Node::get_incre_acceleration | ( | ) | const |
| vec Node::get_incre_acceleration | ( | unsigned | dim | ) | const |
| const vec & Node::get_incre_damping_force | ( | ) | const |
| vec Node::get_incre_damping_force | ( | unsigned | dim | ) | const |
| const vec & Node::get_incre_displacement | ( | ) | const |
| vec Node::get_incre_displacement | ( | unsigned | dim | ) | const |
| const vec & Node::get_incre_inertial_force | ( | ) | const |
| vec Node::get_incre_inertial_force | ( | unsigned | dim | ) | const |
| const vec & Node::get_incre_nonviscous_force | ( | ) | const |
| vec Node::get_incre_nonviscous_force | ( | unsigned | dim | ) | const |
| const vec & Node::get_incre_resistance | ( | ) | const |
| vec Node::get_incre_resistance | ( | unsigned | dim | ) | const |
| const vec & Node::get_incre_velocity | ( | ) | const |
| vec Node::get_incre_velocity | ( | unsigned | dim | ) | const |
| const uvec & Node::get_original_dof | ( | ) | const |
| const uvec & Node::get_reordered_dof | ( | ) | const |
| const vec & Node::get_trial_acceleration | ( | ) | const |
| vec Node::get_trial_acceleration | ( | unsigned | dim | ) | const |
| const vec & Node::get_trial_damping_force | ( | ) | const |
| vec Node::get_trial_damping_force | ( | unsigned | dim | ) | const |
| const vec & Node::get_trial_displacement | ( | ) | const |
| vec Node::get_trial_displacement | ( | unsigned | dim | ) | const |
| const vec & Node::get_trial_inertial_force | ( | ) | const |
| vec Node::get_trial_inertial_force | ( | unsigned | dim | ) | const |
| const vec & Node::get_trial_nonviscous_force | ( | ) | const |
| vec Node::get_trial_nonviscous_force | ( | unsigned | dim | ) | const |
| const vec & Node::get_trial_resistance | ( | ) | const |
| vec Node::get_trial_resistance | ( | unsigned | dim | ) | const |
| const vec & Node::get_trial_velocity | ( | ) | const |
| vec Node::get_trial_velocity | ( | unsigned | dim | ) | const |
| vec Node::initial_position | ( | unsigned | dim | ) | const |
| void Node::initialize | ( | const shared_ptr< DomainBase > & | D | ) |
This method should be called after elements are set. Elements will set the minimum number of DoFs for all related nodes.
|
overridevirtual |
| std::vector< vec > Node::record | ( | OutputType | L | ) | const |
| void Node::reset_status | ( | ) |
| void Node::set_original_dof | ( | unsigned & | F | ) |
| void Node::set_reordered_dof | ( | const uvec & | R | ) |
| vec Node::trial_position | ( | unsigned | dim | ) | const |
| const vec & Node::update_current_acceleration | ( | vec && | in | ) |
| const vec & Node::update_current_damping_force | ( | vec && | in | ) |
| const vec & Node::update_current_displacement | ( | vec && | in | ) |
| const vec & Node::update_current_inertial_force | ( | vec && | in | ) |
| const vec & Node::update_current_nonviscous_force | ( | vec && | in | ) |
| const vec & Node::update_current_resistance | ( | vec && | in | ) |
| void Node::update_current_status | ( | const vec & | D | ) |
| void Node::update_current_status | ( | const vec & | D, |
| const vec & | V | ||
| ) |
| void Node::update_current_status | ( | const vec & | D, |
| const vec & | V, | ||
| const vec & | A | ||
| ) |
| const vec & Node::update_current_velocity | ( | vec && | in | ) |
| const vec & Node::update_incre_acceleration | ( | vec && | in | ) |
| const vec & Node::update_incre_damping_force | ( | vec && | in | ) |
| const vec & Node::update_incre_displacement | ( | vec && | in | ) |
| const vec & Node::update_incre_inertial_force | ( | vec && | in | ) |
| const vec & Node::update_incre_nonviscous_force | ( | vec && | in | ) |
| const vec & Node::update_incre_resistance | ( | vec && | in | ) |
| void Node::update_incre_status | ( | const vec & | D | ) |
| void Node::update_incre_status | ( | const vec & | D, |
| const vec & | V | ||
| ) |
| void Node::update_incre_status | ( | const vec & | D, |
| const vec & | V, | ||
| const vec & | A | ||
| ) |
| const vec & Node::update_incre_velocity | ( | vec && | in | ) |
| const vec & Node::update_trial_acceleration | ( | vec && | in | ) |
| const vec & Node::update_trial_damping_force | ( | vec && | in | ) |
| const vec & Node::update_trial_displacement | ( | vec && | in | ) |
| const vec & Node::update_trial_inertial_force | ( | vec && | in | ) |
| const vec & Node::update_trial_nonviscous_force | ( | vec && | in | ) |
| const vec & Node::update_trial_resistance | ( | vec && | in | ) |
| void Node::update_trial_status | ( | const vec & | D | ) |
| void Node::update_trial_status | ( | const vec & | D, |
| const vec & | V | ||
| ) |
| void Node::update_trial_status | ( | const vec & | D, |
| const vec & | V, | ||
| const vec & | A | ||
| ) |
| const vec & Node::update_trial_velocity | ( | vec && | in | ) |
| bool Node::validate_dof | ( | const std::vector< DOF > & | in | ) | const |