chrono::fea::ChContactNodeXYZROTsphere Class Reference

Description

Proxy to FEA nodes for collisions, with spheres associated to nodes, for point-cloud type of collisions.

#include <ChContactSurfaceNodeCloud.h>

Inheritance diagram for chrono::fea::ChContactNodeXYZROTsphere:
Collaboration diagram for chrono::fea::ChContactNodeXYZROTsphere:

Public Member Functions

 ChContactNodeXYZROTsphere (ChNodeFEAxyzrot *node=nullptr, ChContactSurface *contact_surface=nullptr)
 
- Public Member Functions inherited from chrono::fea::ChContactNodeXYZROT
 ChContactNodeXYZROT (ChNodeFEAxyzrot *node=nullptr, ChContactSurface *contact_surface=nullptr)
 
ChNodeFEAxyzrotGetNode ()
 Access the FEA node to whom this is is a proxy.
 
void SetNode (ChNodeFEAxyzrot *node)
 Set the FEA node to whom this is a proxy.
 
ChContactSurfaceGetContactSurface () const
 Get the contact surface container.
 
void SetContactSurface (ChContactSurface *contact_surface)
 Set the contact surface container.
 
virtual ChContactable::eChContactableType GetContactableType () const override
 This must return the proper eChContactableType enum, for allowing a faster collision dispatcher in ChContactContainer classes (this enum will be used instead of slow dynamic_cast<> to infer the type of ChContactable, if possible)
 
virtual ChVariablesGetVariables1 () override
 Access variables.
 
virtual bool IsContactActive () override
 Tell if the object must be considered in collision detection.
 
virtual int GetContactableNumCoordsPosLevel () override
 Get the number of DOFs affected by this object (position part).
 
virtual int GetContactableNumCoordsVelLevel () override
 Get the number of DOFs affected by this object (speed part).
 
virtual void ContactableGetStateBlockPosLevel (ChState &x) override
 Get all the DOFs packed in a single vector (position part).
 
virtual void ContactableGetStateBlockVelLevel (ChStateDelta &w) override
 Get all the DOFs packed in a single vector (speed part).
 
virtual void ContactableIncrementState (const ChState &x, const ChStateDelta &dw, ChState &x_new) override
 Increment the provided state of this object by the given state-delta increment. More...
 
virtual ChVector3d GetContactPoint (const ChVector3d &loc_point, const ChState &state_x) override
 Express the local point in absolute frame, for the given state position.
 
virtual ChVector3d GetContactPointSpeed (const ChVector3d &loc_point, const ChState &state_x, const ChStateDelta &state_w) override
 Get the absolute speed of a local point attached to the contactable. More...
 
virtual ChVector3d GetContactPointSpeed (const ChVector3d &abs_point) override
 Get the absolute speed of point abs_point if attached to the surface.
 
virtual ChFrame GetCollisionModelFrame () override
 Return the frame of the associated collision model relative to the contactable object.
 
virtual void ContactForceLoadResidual_F (const ChVector3d &F, const ChVector3d &T, const ChVector3d &abs_point, ChVectorDynamic<> &R) override
 Apply the force & torque, expressed in absolute reference, to the coordinates of the variables.
 
virtual void ContactComputeQ (const ChVector3d &F, const ChVector3d &T, const ChVector3d &point, const ChState &state_x, ChVectorDynamic<> &Q, int offset) override
 Compute a contiguous vector of generalized forces Q from a given force & torque at the given point. More...
 
virtual void ComputeJacobianForContactPart (const ChVector3d &abs_point, ChMatrix33<> &contact_plane, ChVariableTupleCarrier_1vars< 6 >::type_constraint_tuple &jacobian_tuple_N, ChVariableTupleCarrier_1vars< 6 >::type_constraint_tuple &jacobian_tuple_U, ChVariableTupleCarrier_1vars< 6 >::type_constraint_tuple &jacobian_tuple_V, bool second) override
 Compute the jacobian(s) part(s) for this contactable item. More...
 
virtual double GetContactableMass () override
 This can be useful in some SMC code:
 
virtual ChPhysicsItemGetPhysicsItem () override
 This is only for backward compatibility.
 

The documentation for this class was generated from the following files:
  • /builds/uwsbel/chrono/src/chrono/fea/ChContactSurfaceNodeCloud.h
  • /builds/uwsbel/chrono/src/chrono/fea/ChContactSurfaceNodeCloud.cpp