chrono::fea::ChLoadBeamWrenchDistributed Class Reference
Description
Distributed constant wrench (ready to use load) Load for a wrench (force+torque) at a specific position of a beam.
The ChLoaderBeamWrench is a 'container' for ChLoadBeamWrench. An atomic load on the beam is a wrench, i.e. force+load applied at a certain abscissa U, that is a six-dimensional load. It is not a distributed load, so inherit it from ChLoaderUatomic:
#include <ChLoadsBeam.h>
Inheritance diagram for chrono::fea::ChLoadBeamWrenchDistributed:

Collaboration diagram for chrono::fea::ChLoadBeamWrenchDistributed:

Public Member Functions | |
ChLoadBeamWrenchDistributed (std::shared_ptr< ChLoadableU > mloadable) | |
![]() | |
ChLoad (std::shared_ptr< typename ChLoaderBeamWrenchDistributed::type_loadable > mloadable) | |
virtual int | LoadGet_ndof_x () |
Gets the number of DOFs affected by this load (position part) | |
virtual int | LoadGet_ndof_w () |
Gets the number of DOFs affected by this load (speed part) | |
virtual void | LoadGetStateBlock_x (ChState &mD) |
Gets all the current DOFs packed in a single vector (position part) | |
virtual void | LoadGetStateBlock_w (ChStateDelta &mD) |
Gets all the current DOFs packed in a single vector (speed part) | |
virtual void | LoadStateIncrement (const ChState &x, const ChStateDelta &dw, ChState &x_new) |
Increment a packed state (ex. More... | |
virtual int | LoadGet_field_ncoords () |
Number of coordinates in the interpolated field, ex=3 for a tetrahedron finite element or a cable, = 1 for a thermal problem, etc. More... | |
virtual void | ComputeQ (ChState *state_x, ChStateDelta *state_w) |
Compute Q, the generalized load. More... | |
virtual void | ComputeJacobian (ChState *state_x, ChStateDelta *state_w, ChMatrix<> &mK, ChMatrix<> &mR, ChMatrix<> &mM) |
Compute jacobians (default fallback). More... | |
virtual void | LoadIntLoadResidual_F (ChVectorDynamic<> &R, const double c) |
Adds the internal loads Q (pasted at global nodes offsets) into a global vector R, multiplied by a scaling factor c, as R += forces * c. | |
virtual bool | IsStiff () |
Default: load is stiff if the loader is stiff. Override if needed. | |
virtual void | CreateJacobianMatrices () |
Create the jacobian loads if needed, and also set the ChVariables referenced by the sparse KRM block. More... | |
![]() | |
ChLoadJacobians * | GetJacobians () |
Access the jacobians (if any, i.e. if this is a stiff load) | |
virtual void | Update () |
Update: this is called at least at each time step. More... | |
virtual void | InjectKRMmatrices (ChSystemDescriptor &mdescriptor) |
Tell to a system descriptor that there are item(s) of type ChKblock in this object (for further passing it to a solver) Basically does nothing, but inherited classes must specialize this. More... | |
virtual void | KRMmatricesLoad (double Kfactor, double Rfactor, double Mfactor) |
Adds the current stiffness K and damping R and mass M matrices in encapsulated ChKblock item(s), if any. More... | |
Additional Inherited Members | |
![]() | |
ChLoaderBeamWrenchDistributed | loader |
![]() | |
ChLoadJacobians * | jacobians |