chrono::fea::ChContactNodeXYZsphere Class Reference


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::ChContactNodeXYZsphere:
Collaboration diagram for chrono::fea::ChContactNodeXYZsphere:

Public Member Functions

 ChContactNodeXYZsphere (ChNodeFEAxyz *anode=0, ChContactSurface *acontainer=0)
collision::ChCollisionModelGetCollisionModel ()
- Public Member Functions inherited from chrono::fea::ChContactNodeXYZ
 ChContactNodeXYZ (ChNodeFEAxyz *anode=0, ChContactSurface *acontainer=0)
ChNodeFEAxyzGetNode ()
 Access the FEA node to whom this is is a proxy.
void SetNode (ChNodeFEAxyz *mn)
 Set the FEA node to whom this is a proxy.
ChContactSurfaceGetContactSurface () const
 Get the contact surface container.
void GetContactSurface (ChContactSurface *mc)
 Set the contact surface container.
virtual ChVariablesGetVariables1 () override
 Access variables.
virtual bool IsContactActive () override
 Tell if the object must be considered in collision detection.
virtual int ContactableGet_ndof_x () override
 Get the number of DOFs affected by this object (position part)
virtual int ContactableGet_ndof_w () override
 Get the number of DOFs affected by this object (speed part)
virtual void ContactableGetStateBlock_x (ChState &x) override
 Get all the DOFs packed in a single vector (position part)
virtual void ContactableGetStateBlock_w (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 ChVector GetContactPoint (const ChVector<> &loc_point, const ChState &state_x) override
 Express the local point in absolute frame, for the given state position.
virtual ChVector GetContactPointSpeed (const ChVector<> &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 ChVector GetContactPointSpeed (const ChVector<> &abs_point) override
 Get the absolute speed of point abs_point if attached to the surface. More...
virtual ChCoordsys GetCsysForCollisionModel () override
 Return the coordinate system for the associated collision model. More...
virtual void ContactForceLoadResidual_F (const ChVector<> &F, const ChVector<> &abs_point, ChVectorDynamic<> &R) override
 Apply the force, expressed in absolute reference, applied in pos, to the coordinates of the variables. More...
virtual void ContactForceLoadQ (const ChVector<> &F, const ChVector<> &point, const ChState &state_x, ChVectorDynamic<> &Q, int offset) override
 Apply the given force at the given point and load the generalized force array. More...
virtual void ComputeJacobianForContactPart (const ChVector<> &abs_point, ChMatrix33<> &contact_plane, type_constraint_tuple &jacobian_tuple_N, type_constraint_tuple &jacobian_tuple_U, 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 std::shared_ptr< ChMaterialSurface > & GetMaterialSurfaceBase () override
 Return the pointer to the surface material.
virtual ChPhysicsItemGetPhysicsItem () override
 This is only for backward compatibility.