chrono::fea::ChNodeFEAfieldXYZ Class Reference
Description
Class for a node of a generic 3D finite element node with x,y,z position.
This is the typical node that can be used for tetrahedrons, etc. Note: this type of multiphysics node do not carry any ChVariable with it, because attaching ChVariables is up to some ChField. See also ChDomain.
#include <ChNodeFEAfieldXYZ.h>
Inheritance diagram for chrono::fea::ChNodeFEAfieldXYZ:

Collaboration diagram for chrono::fea::ChNodeFEAfieldXYZ:

Public Member Functions | |
| ChNodeFEAfieldXYZ (ChVector3d reference_pos=VNULL) | |
| ChNodeFEAfieldXYZ (const ChNodeFEAfieldXYZ &other) | |
| void | SetReferencePos (const ChVector3d ref_pos) |
| ChVector3d | GetReferencePos () |
| virtual void | Relax () override |
| Set the rest position as the actual position. | |
| virtual void | ForceToRest () override |
| Reset to no speed and acceleration. | |
| virtual void | SetFixed (bool fixed) override |
| Fix/release this node. More... | |
| virtual bool | IsFixed () const override |
| Return true if the node is fixed (i.e., its state variables are not changed by the solver). | |
| virtual unsigned int | GetNumCoordsPosLevel () const override |
| Get the number of degrees of freedom. | |
Public Member Functions inherited from chrono::fea::ChNodeFEAbase | |
| virtual void | SetIndex (unsigned int mindex) |
| Sets the global index of the node. | |
| virtual unsigned int | GetIndex () |
| Gets the global index of the node. | |
| virtual void | SetupInitial (ChSystem *system) |
| Initial setup. | |
Public Member Functions inherited from chrono::ChNodeBase | |
| ChNodeBase (const ChNodeBase &other) | |
| ChNodeBase & | operator= (const ChNodeBase &other) |
| virtual unsigned int | GetNumCoordsVelLevel () const |
| Get the number of degrees of freedom, derivative. More... | |
| virtual unsigned int | GetNumCoordsPosLevelActive () const |
| Get the actual number of active degrees of freedom. More... | |
| virtual unsigned int | GetNumCoordsVelLevelActive () const |
| Get the actual number of active degrees of freedom, derivative. More... | |
| virtual bool | IsAllCoordsActive () const |
| Return true if all node DOFs are active (no node variable is fixed). | |
| unsigned int | NodeGetOffsetPosLevel () |
| Get offset in the state vector (position part). | |
| unsigned int | NodeGetOffsetVelLevel () |
| Get offset in the state vector (speed part). | |
| void | NodeSetOffsetPosLevel (const unsigned int moff) |
| Set offset in the state vector (position part). | |
| void | NodeSetOffsetVelLevel (const unsigned int moff) |
| Set offset in the state vector (speed part). | |
| virtual void | NodeIntStateGather (const unsigned int off_x, ChState &x, const unsigned int off_v, ChStateDelta &v, double &T) |
| virtual void | NodeIntStateScatter (const unsigned int off_x, const ChState &x, const unsigned int off_v, const ChStateDelta &v, const double T) |
| virtual void | NodeIntStateGatherAcceleration (const unsigned int off_a, ChStateDelta &a) |
| virtual void | NodeIntStateScatterAcceleration (const unsigned int off_a, const ChStateDelta &a) |
| virtual void | NodeIntStateIncrement (const unsigned int off_x, ChState &x_new, const ChState &x, const unsigned int off_v, const ChStateDelta &Dv) |
| virtual void | NodeIntStateGetIncrement (const unsigned int off_x, const ChState &x_new, const ChState &x, const unsigned int off_v, ChStateDelta &Dv) |
| virtual void | NodeIntLoadResidual_F (const unsigned int off, ChVectorDynamic<> &R, const double c) |
| virtual void | NodeIntLoadResidual_Mv (const unsigned int off, ChVectorDynamic<> &R, const ChVectorDynamic<> &w, const double c) |
| virtual void | NodeIntLoadLumpedMass_Md (const unsigned int off, ChVectorDynamic<> &Md, double &error, const double c) |
| virtual void | NodeIntToDescriptor (const unsigned int off_v, const ChStateDelta &v, const ChVectorDynamic<> &R) |
| virtual void | NodeIntFromDescriptor (const unsigned int off_v, ChStateDelta &v) |
| virtual void | InjectVariables (ChSystemDescriptor &descriptor) |
| Register with the given system descriptor any ChVariable objects associated with this item. | |
| virtual void | VariablesFbReset () |
| Set the 'fb' part (the known term) of the encapsulated ChVariables to zero. | |
| virtual void | VariablesFbLoadForces (double factor=1) |
| Add the current forces (applied to node) into the encapsulated ChVariables. More... | |
| virtual void | VariablesQbLoadSpeed () |
| Initialize the 'qb' part of the ChVariables with the current value of speeds. | |
| virtual void | VariablesFbIncrementMq () |
| Add M*q (masses multiplied current 'qb') to Fb, ex. More... | |
| virtual void | VariablesQbSetSpeed (double step=0) |
| Fetch the item speed (ex. More... | |
| virtual void | VariablesQbIncrementPosition (double step) |
| Increment node positions by the 'qb' part of the ChVariables, multiplied by a 'step' factor. More... | |
| virtual void | ArchiveOut (ChArchiveOut &archive_out) |
| Method to allow serialization of transient data to archives. | |
| virtual void | ArchiveIn (ChArchiveIn &archive_in) |
| Method to allow de-serialization of transient data from archives. | |
Public Member Functions inherited from chrono::ChVector3< double > | |
| ChVector3 (double x, double y, double z) | |
| ChVector3 (double a) | |
| ChVector3 (const ChVector3< double > &other) | |
| ChVector3 (const ChVector3< RealB > &other) | |
| Copy constructor with type change. | |
| ChVector3 (const Eigen::MatrixBase< Derived > &vec, typename std::enable_if<(Derived::MaxRowsAtCompileTime==1||Derived::MaxColsAtCompileTime==1), Derived >::type *=0) | |
| Construct a 3d vector from an Eigen vector expression. | |
| double & | x () |
| Access to components. | |
| const double & | x () const |
| double & | y () |
| const double & | y () const |
| double & | z () |
| const double & | z () const |
| double * | data () |
| Access to underlying array storage. | |
| const double * | data () const |
| Eigen::Map< Eigen::Matrix< double, 3, 1 > > | eigen () |
| View this 3d vector as an Eigen vector. | |
| Eigen::Map< const Eigen::Matrix< double, 3, 1 > > | eigen () const |
| ChVector3 & | operator= (const Eigen::MatrixBase< Derived > &vec) |
| Assign an Eigen vector expression to this 3d vector. | |
| ChVector3< double > & | operator= (const ChVector3< double > &other) |
| Assignment operator (copy from another vector). | |
| ChVector3< double > & | operator= (const ChVector3< RealB > &other) |
| Assignment operator (copy from another vector) with type change. | |
| void | Set (double x, double y, double z) |
| Set the three values of the vector at once. | |
| void | Set (const ChVector3< double > &v) |
| Set the vector as a copy of another vector. | |
| void | Set (double s) |
| Set all the vector components ts to the same scalar. | |
| void | SetNull () |
| Set the vector to the null vector. More... | |
| bool | IsNull () const |
| Return true if this vector is the null vector. | |
| bool | Equals (const ChVector3< double > &other) const |
| Return true if this vector is equal to another vector. | |
| bool | Equals (const ChVector3< double > &other, double tol) const |
| Return true if this vector is equal to another vector, within a tolerance 'tol'. | |
| double | Length () const |
| Compute the euclidean norm of the vector, that is its length or magnitude. | |
| double | Length2 () const |
| Compute the squared euclidean norm of the vector. | |
| double | LengthInf () const |
| Compute the infinity norm of the vector, that is the maximum absolute value of one of its elements. | |
| double & | operator[] (unsigned index) |
| Subscript operator. | |
| const double & | operator[] (unsigned index) const |
| ChVector3< double > | operator+ () const |
| Operators for sign change. | |
| ChVector3< double > | operator+ (const ChVector3< double > &other) const |
| Operator for vector sum. | |
| ChVector3< double > | operator- () const |
| ChVector3< double > | operator- (const ChVector3< double > &other) const |
| Operator for vector difference. | |
| ChVector3< double > & | operator+= (const ChVector3< double > &other) |
| ChVector3< double > & | operator-= (const ChVector3< double > &other) |
| ChVector3< double > | operator* (const ChVector3< double > &other) const |
| Operator for element-wise multiplication. More... | |
| ChVector3< double > | operator* (double s) const |
| Operator for scaling the vector by a scalar value, as V*s. | |
| ChVector3< double > & | operator*= (const ChVector3< double > &other) |
| ChVector3< double > & | operator*= (double s) |
| ChVector3< double > | operator/ (const ChVector3< double > &other) const |
| Operator for element-wise division. More... | |
| ChVector3< double > | operator/ (double v) const |
| Operator for scaling the vector by inverse of a scalar value, as v/s. | |
| ChVector3< double > & | operator/= (const ChVector3< double > &other) |
| ChVector3< double > & | operator/= (double v) |
| double | operator^ (const ChVector3< double > &other) const |
| Operator for dot product: A^B means the scalar dot-product A*B Note: pay attention to operator low precedence (see C++ precedence rules!) | |
| ChVector3< double > | operator% (const ChVector3< double > &other) const |
| Operator for cross product: AB means the vector cross-product AxB Note: pay attention to operator low precedence (see C++ precedence rules!) | |
| ChVector3< double > & | operator%= (const ChVector3< double > &other) |
| bool | operator<= (const ChVector3< double > &other) const |
| Component-wise comparison operators. | |
| bool | operator>= (const ChVector3< double > &other) const |
| bool | operator< (const ChVector3< double > &other) const |
| bool | operator> (const ChVector3< double > &other) const |
| bool | operator== (const ChVector3< double > &other) const |
| bool | operator!= (const ChVector3< double > &other) const |
| void | Add (const ChVector3< double > &A, const ChVector3< double > &B) |
| Set this vector to the sum of A and B: this = A + B. | |
| void | Sub (const ChVector3< double > &A, const ChVector3< double > &B) |
| Set this vector to the difference of A and B: this = A - B. | |
| void | Mul (const ChVector3< double > &A, double s) |
| Set this vector to the product of a vector A and scalar s: this = A * s. | |
| void | Scale (double s) |
| Scale this vector by a scalar: this *= s. | |
| void | Abs () |
| Set this vector to its component-wise absolute values. | |
| void | Cross (const ChVector3< double > &A, const ChVector3< double > &B) |
| Set this vector to the cross product of A and B: this = A x B. | |
| ChVector3< double > | Cross (const ChVector3< double > other) const |
| Return the cross product with another vector: result = this x other. | |
| double | Dot (const ChVector3< double > &B) const |
| Return the dot product with another vector: result = this ^ B. | |
| bool | Normalize () |
| Normalize this vector in place, so that its euclidean length is 1. More... | |
| ChVector3< double > | GetNormalized () const |
| Return a normalized copy of this vector, with euclidean length = 1. More... | |
| void | SetLength (double s) |
| Impose a new length to the vector, keeping the direction unchanged. | |
| void | GetDirectionAxesAsX (ChVector3< double > &Vx, ChVector3< double > &Vy, ChVector3< double > &Vz, ChVector3< double > y_sugg=ChVector3< double >(0, 1, 0)) const |
| Output three orthonormal vectors considering this vector along X axis. More... | |
| void | GetDirectionAxesAsY (ChVector3< double > &Vx, ChVector3< double > &Vy, ChVector3< double > &Vz, ChVector3< double > z_sugg=ChVector3< double >(0, 0, 1)) const |
| Output three orthonormal vectors considering this vector along Y axis. More... | |
| void | GetDirectionAxesAsZ (ChVector3< double > &Vx, ChVector3< double > &Vy, ChVector3< double > &Vz, ChVector3< double > x_sugg=ChVector3< double >(1, 0, 0)) const |
| Output three orthonormal vectors considering this vector along Z axis. More... | |
| int | GetMaxComponent () const |
| Return the index of the largest component in absolute value. | |
| ChVector3< double > | GetOrthogonalVector () const |
| Return a unit vector orthogonal to this vector. | |
| void | ArchiveOut (ChArchiveOut &archive_out) |
| Method to allow serialization of transient m_data to archives. | |
| void | ArchiveIn (ChArchiveIn &archive_in) |
| Method to allow de-serialization of transient m_data from archives. | |
Additional Inherited Members | |
Public Attributes inherited from chrono::fea::ChNodeFEAbase | |
| double | m_TotalMass |
| Nodal mass obtained from element mass matrix. | |
Protected Attributes inherited from chrono::fea::ChNodeFEAbase | |
| unsigned int | g_index |
| global node index | |
Protected Attributes inherited from chrono::ChNodeBase | |
| unsigned int | offset_x |
| offset in vector of state (position part) | |
| unsigned int | offset_w |
| offset in vector of state (speed part) | |
Member Function Documentation
◆ SetFixed()
|
inlineoverridevirtual |
Fix/release this node.
If fixed, its state variables are not changed by the solver.
Implements chrono::fea::ChNodeFEAbase.
The documentation for this class was generated from the following file:
- /builds/uwsbel/chrono/src/chrono/fea/ChNodeFEAfieldXYZ.h
Public Member Functions inherited from