chrono::ChLoaderXYZnode Class Reference

Description

FORCE AT XYZ NODE Loader for a constant force applied at a XYZ node.

Note that an equivalent shortcut is to set directly the node's own force member data as mynode->SetForce(), but this other approach is more object-oriented (es. you can apply multiple forces at a single node, etc)

#include <ChLoadsXYZnode.h>

Inheritance diagram for chrono::ChLoaderXYZnode:
Collaboration diagram for chrono::ChLoaderXYZnode:

Public Member Functions

 ChLoaderXYZnode (std::shared_ptr< ChLoadableUVW > mloadable)
 
virtual void ComputeF (const double U, const double V, const double W, ChVectorDynamic<> &F, ChVectorDynamic<> *state_x, ChVectorDynamic<> *state_w)
 Children classes must provide this function that evaluates F = F(u,v,w) This will be evaluated during ComputeQ() to perform integration over the domain. More...
 
void SetForce (const ChVector<> &mf)
 Set force (ex. More...
 
ChVector GetForce () const
 
- Public Member Functions inherited from chrono::ChLoaderUVWatomic
 ChLoaderUVWatomic (std::shared_ptr< ChLoadableUVW > mloadable, const double mU, const double mV, const double mW)
 
virtual void ComputeQ (ChVectorDynamic<> *state_x, ChVectorDynamic<> *state_w) override
 Computes Q = N'*F. More...
 
void SetApplication (double mu, double mv, double mw)
 Set the position, in the volume, where the atomic load is applied.
 
- Public Member Functions inherited from chrono::ChLoaderUVW
 ChLoaderUVW (std::shared_ptr< ChLoadableUVW > mloadable)
 
void SetLoadable (std::shared_ptr< ChLoadableUVW > mloadable)
 
virtual std::shared_ptr
< ChLoadable
GetLoadable () override
 
std::shared_ptr< ChLoadableUVWGetLoadableUVW ()
 
- Public Member Functions inherited from chrono::ChLoader
virtual bool IsStiff ()
 

Additional Inherited Members

- Public Types inherited from chrono::ChLoaderUVW
typedef ChLoadableUVW type_loadable
 
- Public Attributes inherited from chrono::ChLoaderUVWatomic
double Pu
 
double Pv
 
double Pw
 
- Public Attributes inherited from chrono::ChLoaderUVW
std::shared_ptr< ChLoadableUVWloadable
 
- Public Attributes inherited from chrono::ChLoader
ChVectorDynamic Q
 

Member Function Documentation

virtual void chrono::ChLoaderXYZnode::ComputeF ( const double  U,
const double  V,
const double  W,
ChVectorDynamic<> &  F,
ChVectorDynamic<> *  state_x,
ChVectorDynamic<> *  state_w 
)
virtual

Children classes must provide this function that evaluates F = F(u,v,w) This will be evaluated during ComputeQ() to perform integration over the domain.

Parameters
Uparametric coordinate -not used
Vparametric coordinate -not used
Wparametric coordinate -not used
FResult F vector here, size must be = n.field coords.of loadable
state_xif != 0, update state (pos. part) to this, then evaluate F
state_wif != 0, update state (speed part) to this, then evaluate F

Implements chrono::ChLoaderUVW.

void chrono::ChLoaderXYZnode::SetForce ( const ChVector<> &  mf)

Set force (ex.

in [N] units), assumed to be constant in space and time, assumed applyed at the node.