template<class Ta, class Tb>
class chrono::ChContactNSC< Ta, Tb >
Class for non-smooth contact between two generic ChContactable objects.
Ta and Tb are of ChContactable sub classes.
|
| | ChContactNSC (ChContactContainer *contact_container, Ta *obj_A, Tb *obj_B, const ChCollisionInfo &cinfo, const ChContactMaterialCompositeNSC &mat, double min_speed) |
| |
| virtual void | Reset (Ta *obj_A, Tb *obj_B, const ChCollisionInfo &cinfo, const ChContactMaterialCompositeNSC &mat, double min_speed) |
| | Reinitialize this contact for reuse.
|
| |
| virtual ChVector3d | GetContactForce () const override |
| | Get the contact force, if computed, in contact coordinate system.
|
| |
|
virtual double | GetFriction () |
| | Get the contact friction coefficient.
|
| |
|
virtual void | SetFriction (double mf) |
| | Set the contact friction coefficient.
|
| |
|
ChConstraint * | GetConstraintNx () |
| | Access the constraints.
|
| |
|
ChConstraint * | GetConstraintTu () |
| |
|
ChConstraint * | GetConstraintTv () |
| |
| virtual void | ContIntStateGatherReactions (const unsigned int off_L, ChVectorDynamic<> &L) override |
| |
| virtual void | ContIntStateScatterReactions (const unsigned int off_L, const ChVectorDynamic<> &L) override |
| |
| virtual void | ContIntLoadResidual_CqL (const unsigned int off_L, ChVectorDynamic<> &R, const ChVectorDynamic<> &L, const double c) override |
| |
| virtual void | ContIntLoadConstraint_C (const unsigned int off_L, ChVectorDynamic<> &Qc, const double c, bool do_clamp, double recovery_clamp) override |
| |
| virtual void | ContIntToDescriptor (const unsigned int off_L, const ChVectorDynamic<> &L, const ChVectorDynamic<> &Qc) override |
| |
| virtual void | ContIntFromDescriptor (const unsigned int off_L, ChVectorDynamic<> &L) override |
| |
| virtual void | InjectConstraints (ChSystemDescriptor &descriptor) override |
| |
| virtual void | ConstraintsBiReset () override |
| |
| virtual void | ConstraintsBiLoad_C (double factor=1., double recovery_clamp=0.1, bool do_clamp=false) override |
| |
| virtual void | ConstraintsFetch_react (double factor) override |
| |
|
| ChContactTuple (ChContactContainer *contact_container, Ta *obj_A, Tb *obj_B) |
| |
| void | Reset_cinfo (Ta *obj_A, Tb *obj_B, const ChCollisionInfo &cinfo) |
| | Reinitialize geometric information for this contact for reuse.
|
| |
|
Ta * | GetObjA () |
| | Get the colliding object A, with point P1.
|
| |
|
Tb * | GetObjB () |
| | Get the colliding object B, with point P2.
|
| |
| ChCoordsys | GetContactCoords () const |
| | Get the contact coordinate system, expressed in absolute frame.
|
| |
| const ChMatrix33 & | GetContactPlane () const |
| | Returns the pointer to a contained 3x3 matrix representing the UV and normal directions of the contact.
|
| |
|
const ChVector3d & | GetContactP1 () const |
| | Get the contact point 1, in absolute coordinates.
|
| |
|
const ChVector3d & | GetContactP2 () const |
| | Get the contact point 2, in absolute coordinates.
|
| |
|
const ChVector3d & | GetContactNormal () const |
| | Get the contact normal, in absolute coordinates.
|
| |
|
double | GetContactDistance () const |
| | Get the contact distance.
|
| |
|
double | GetEffectiveCurvatureRadius () const |
| | Get the effective radius of curvature.
|
| |
| virtual ChVector3d | GetContactTorque () const |
| | Get the contact torque, if computed, in contact coordinate system.
|
| |
| virtual void | ContIntLoadResidual_F (ChVectorDynamic<> &R, const double c) |
| |
| virtual void | ContInjectKRMmatrices (ChSystemDescriptor &mdescriptor) |
| |
| virtual void | ContKRMmatricesLoad (double Kfactor, double Rfactor) |
| |
|
|
float * | reactions_cache |
| | N,U,V reactions which might be stored in a persistent contact manifold.
|
| |
| ChConstraintTwoTuplesContactN< typecarr_a, typecarr_b > | Nx |
| | The three scalar constraints, to be fed into the system solver.
|
| |
|
ChConstraintTwoTuplesFrictionT< typecarr_a, typecarr_b > | Tu |
| |
|
ChConstraintTwoTuplesFrictionT< typecarr_a, typecarr_b > | Tv |
| |
|
ChVector3d | react_force |
| |
|
double | compliance |
| |
|
double | complianceT |
| |
|
double | restitution |
| |
|
double | dampingf |
| |
|
double | min_rebounce_speed |
| |
|
ChContactContainer * | container |
| | associated contact container
|
| |
|
Ta * | objA |
| | first ChContactable object in the pair
|
| |
|
Tb * | objB |
| | second ChContactable object in the pair
|
| |
|
ChVector3d | p1 |
| | max penetration point on geo1, after refining, in abs space
|
| |
|
ChVector3d | p2 |
| | max penetration point on geo2, after refining, in abs space
|
| |
|
ChVector3d | normal |
| | normal, on surface of master reference (geo1)
|
| |
|
ChMatrix33 | contact_plane |
| | the plane of contact (X is normal direction)
|
| |
|
double | norm_dist |
| | penetration distance (negative if going inside) after refining
|
| |
|
double | eff_radius |
| | effective radius of curvature at contact
|
| |