chrono::ChLoadBodyBodyTorque Class Reference
Description
Load representing a torque applied between two bodies.
The magnitude of the applied torque can be optionally modulated by a function of time. The default modulation is the constant function with value 1.
#include <ChLoadsBody.h>
Inheritance diagram for chrono::ChLoadBodyBodyTorque:

Collaboration diagram for chrono::ChLoadBodyBodyTorque:

Public Member Functions | |
| ChLoadBodyBodyTorque (std::shared_ptr< ChBody > bodyA, std::shared_ptr< ChBody > bodyB, const ChVector<> torque, bool local_torque) | |
| virtual ChLoadBodyBodyTorque * | Clone () const override |
| "Virtual" copy constructor (covariant return type). | |
| void | SetModulationFunction (std::shared_ptr< ChFunction > modulation) |
| Set modulation function. More... | |
Public Member Functions inherited from chrono::ChLoadBodyBody | |
| ChLoadBodyBody (std::shared_ptr< ChBody > bodyA, std::shared_ptr< ChBody > bodyB, const ChFrame<> &abs_application) | |
| ChVector | GetForce () const |
| For diagnosis purposes, this can return the actual last computed value of the applied force, expressed in coordinate system of loc_application_B, assumed applied to body B. | |
| ChVector | GetTorque () const |
| For diagnosis purposes, this can return the actual last computed value of the applied torque, expressed in coordinate system of loc_application_B, assumed applied to body B. | |
| void | SetApplicationFrameA (const ChFrame<> &mpA) |
| Set the application frame of bushing on bodyA. | |
| ChFrame | GetApplicationFrameA () const |
| void | SetApplicationFrameB (const ChFrame<> &mpB) |
| Set the application frame of bushing on bodyB. | |
| ChFrame | GetApplicationFrameB () const |
| ChFrameMoving | GetAbsoluteFrameA () const |
| Get absolute coordinate of frame A (last computed) | |
| ChFrameMoving | GetAbsoluteFrameB () const |
| Get absolute coordinate of frame B (last computed) | |
| std::shared_ptr< ChBody > | GetBodyA () const |
| std::shared_ptr< ChBody > | GetBodyB () const |
Public Member Functions inherited from chrono::ChLoadCustomMultiple | |
| ChLoadCustomMultiple (std::vector< std::shared_ptr< ChLoadable >> &mloadables) | |
| ChLoadCustomMultiple (std::shared_ptr< ChLoadable > mloadableA, std::shared_ptr< ChLoadable > mloadableB) | |
| ChLoadCustomMultiple (std::shared_ptr< ChLoadable > mloadableA, std::shared_ptr< ChLoadable > mloadableB, std::shared_ptr< ChLoadable > mloadableC) | |
| virtual int | LoadGet_ndof_x () override |
| Gets the number of DOFs affected by this load (position part) | |
| virtual int | LoadGet_ndof_w () override |
| Gets the number of DOFs affected by this load (speed part) | |
| virtual void | LoadGetStateBlock_x (ChState &mD) override |
| Gets all the current DOFs packed in a single vector (position part) | |
| virtual void | LoadGetStateBlock_w (ChStateDelta &mD) override |
| Gets all the current DOFs packed in a single vector (speed part) | |
| virtual void | LoadStateIncrement (const ChState &x, const ChStateDelta &dw, ChState &x_new) override |
| Increment a packed state (ex. More... | |
| virtual int | LoadGet_field_ncoords () override |
| Number of coordinates in the interpolated field, ex=3 for a tetrahedron finite element or a cable, = 1 for a thermal problem, etc. | |
| virtual void | ComputeJacobian (ChState *state_x, ChStateDelta *state_w, ChMatrixRef mK, ChMatrixRef mR, ChMatrixRef mM) override |
| Compute jacobians (default fallback). More... | |
| virtual void | LoadIntLoadResidual_F (ChVectorDynamic<> &R, double c) override |
| 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 void | LoadIntLoadResidual_Mv (ChVectorDynamic<> &R, const ChVectorDynamic<> &w, double c) override |
| Default fallback: compute jacobians via ComputeJacobian(), then use M=-dQ/da to do R += c*M*w. More... | |
| virtual void | CreateJacobianMatrices () override |
| Create the jacobian loads if needed, and also set the ChVariables referenced by the sparse KRM block. | |
| virtual ChVectorDynamic & | GetQ () |
| Access the generalized load vector Q. | |
Public Member Functions inherited from chrono::ChLoadBase | |
| ChLoadJacobians * | GetJacobians () |
| Access the jacobians (if any, i.e. if this is a stiff load) | |
| 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) | |
| 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... | |
Public Member Functions inherited from chrono::ChObj | |
| ChObj (const ChObj &other) | |
| int | GetIdentifier () const |
| Gets the numerical identifier of the object. | |
| void | SetIdentifier (int id) |
| Sets the numerical identifier of the object. | |
| double | GetChTime () const |
| Gets the simulation time of this object. | |
| void | SetChTime (double m_time) |
| Sets the simulation time of this object. | |
| const char * | GetName () const |
| Gets the name of the object as C Ascii null-terminated string -for reading only! | |
| void | SetName (const char myname[]) |
| Sets the name of this object, as ascii string. | |
| std::string | GetNameString () const |
| Gets the name of the object as C Ascii null-terminated string. | |
| void | SetNameString (const std::string &myname) |
| Sets the name of this object, as std::string. | |
| void | MFlagsSetAllOFF (int &mflag) |
| void | MFlagsSetAllON (int &mflag) |
| void | MFlagSetON (int &mflag, int mask) |
| void | MFlagSetOFF (int &mflag, int mask) |
| int | MFlagGet (int &mflag, int mask) |
| virtual void | ArchiveOUT (ChArchiveOut &marchive) |
| Method to allow serialization of transient data to archives. | |
| virtual void | ArchiveIN (ChArchiveIn &marchive) |
| Method to allow de-serialization of transient data from archives. | |
| virtual std::string & | ArchiveContainerName () |
Additional Inherited Members | |
Public Attributes inherited from chrono::ChLoadCustomMultiple | |
| std::vector< std::shared_ptr< ChLoadable > > | loadables |
| ChVectorDynamic | load_Q |
Protected Member Functions inherited from chrono::ChLoadBodyBody | |
| virtual void | ComputeQ (ChState *state_x, ChStateDelta *state_w) override |
| Compute Q, the generalized load. More... | |
Protected Attributes inherited from chrono::ChLoadBodyBody | |
| ChFrame | loc_application_A |
| application point on body A (local) | |
| ChFrame | loc_application_B |
| application point on body B (local) | |
| ChVector | locB_force |
| store computed values here | |
| ChVector | locB_torque |
| store computed values here | |
| ChFrameMoving | frame_Aw |
| for results | |
| ChFrameMoving | frame_Bw |
| for results | |
Protected Attributes inherited from chrono::ChLoadBase | |
| ChLoadJacobians * | jacobians |
Protected Attributes inherited from chrono::ChObj | |
| double | ChTime |
| the time of simulation for the object | |
Constructor & Destructor Documentation
◆ ChLoadBodyBodyTorque()
| chrono::ChLoadBodyBodyTorque::ChLoadBodyBodyTorque | ( | std::shared_ptr< ChBody > | bodyA, |
| std::shared_ptr< ChBody > | bodyB, | ||
| const ChVector<> | torque, | ||
| bool | local_torque | ||
| ) |
- Parameters
-
bodyA first body bodyB second body torque applied torque local_torque torque is in bodyB local coords
Member Function Documentation
◆ SetModulationFunction()
|
inline |
Set modulation function.
This is a function of time which (optionally) modulates the specified applied torque. By default the modulation is a constant function, always returning a value of 1.
The documentation for this class was generated from the following files:
- /builds/uwsbel/chrono/src/chrono/physics/ChLoadsBody.h
- /builds/uwsbel/chrono/src/chrono/physics/ChLoadsBody.cpp
Public Member Functions inherited from