|
MBDyn-1.7.3
|
#include <friction.h>


Public Member Functions | |
| DiscreteCoulombFriction (const BasicScalarFunction *const ff, const doublereal s2, const doublereal vr) | |
| void | SetValue (DataManager *pDM, VectorHandler &X, VectorHandler &XP, SimulationEntity::Hints *ph=0, const unsigned int solution_startdof=0) |
| unsigned int | iGetNumDof (void) const |
| virtual std::ostream & | DescribeDof (std::ostream &out, const char *prefix="", bool bInitial=false) const |
| virtual void | DescribeDof (std::vector< std::string > &desc, bool bInitial=false, int i=-1) const |
| virtual std::ostream & | DescribeEq (std::ostream &out, const char *prefix="", bool bInitial=false) const |
| virtual void | DescribeEq (std::vector< std::string > &desc, bool bInitial=false, int i=-1) const |
| DofOrder::Order | GetDofType (unsigned int i) const |
| DofOrder::Order | GetEqType (unsigned int i) const |
| doublereal | fc (void) const |
| void | AfterConvergence (const doublereal F, const doublereal v, const VectorHandler &X, const VectorHandler &XP, const unsigned int solution_startdof) |
| void | AssRes (SubVectorHandler &WorkVec, const unsigned int startdof, const unsigned int solution_startdof, const doublereal F, const doublereal v, const VectorHandler &X, const VectorHandler &XP) throw (Elem::ChangedEquationStructure) |
| void | AssJac (FullSubMatrixHandler &WorkMat, ExpandableRowVector &dfc, const unsigned int startdof, const unsigned int solution_startdof, const doublereal dCoef, const doublereal F, const doublereal v, const VectorHandler &X, const VectorHandler &XP, const ExpandableRowVector &dF, const ExpandableRowVector &dv) const |
Public Member Functions inherited from SimulationEntity | |
| SimulationEntity (void) | |
| virtual | ~SimulationEntity (void) |
| virtual bool | bIsValidIndex (unsigned int i) const |
| virtual Hint * | ParseHint (DataManager *pDM, const char *s) const |
| virtual void | BeforePredict (VectorHandler &, VectorHandler &, VectorHandler &, VectorHandler &) const |
| virtual void | AfterPredict (VectorHandler &X, VectorHandler &XP) |
| virtual void | Update (const VectorHandler &XCurr, const VectorHandler &XPrimeCurr) |
| virtual void | DerivativesUpdate (const VectorHandler &XCurr, const VectorHandler &XPrimeCurr) |
| virtual void | Update (const VectorHandler &XCurr, InverseDynamics::Order iOrder) |
| virtual void | AfterConvergence (const VectorHandler &X, const VectorHandler &XP) |
| virtual void | AfterConvergence (const VectorHandler &X, const VectorHandler &XP, const VectorHandler &XPP) |
| virtual unsigned int | iGetNumPrivData (void) const |
| virtual unsigned int | iGetPrivDataIdx (const char *s) const |
| virtual doublereal | dGetPrivData (unsigned int i) const |
| virtual std::ostream & | OutputAppend (std::ostream &out) const |
| virtual void | ReadInitialState (MBDynParser &HP) |
Private Types | |
| enum | tr_type { null, from_sticked_to_sliding, from_sticking_to_sliding, from_sliding_to_sticked, from_sliding_to_sticking } |
| enum | status_type { sticked, sticking, sliding } |
Additional Inherited Members | |
Public Types inherited from SimulationEntity | |
| typedef std::vector< Hint * > | Hints |
A Coulomb model based on Morandini's ideas
Definition at line 207 of file friction.h.
|
private |
| Enumerator | |
|---|---|
| sticked | |
| sticking | |
| sliding | |
Definition at line 215 of file friction.h.
|
private |
| Enumerator | |
|---|---|
| null | |
| from_sticked_to_sliding | |
| from_sticking_to_sliding | |
| from_sliding_to_sticked | |
| from_sliding_to_sticking | |
Definition at line 209 of file friction.h.
| DiscreteCoulombFriction::DiscreteCoulombFriction | ( | const BasicScalarFunction *const | ff, |
| const doublereal | s2, | ||
| const doublereal | vr | ||
| ) |
Definition at line 267 of file friction.cc.
References NO_OP.
|
virtual |
Reimplemented from BasicFriction.
Definition at line 346 of file friction.cc.
References converged_v, current_velocity, f, first_iter, first_switch, null, previous_switch_v, sliding, status, sticked, sticking, and transition_type.
|
virtual |
Compute self jacobian and friction coefficient derivatives
Implements BasicFriction.
Definition at line 501 of file friction.cc.
References ExpandableRowVector::Add(), DifferentiableScalarFunction::ComputeDiff(), current_friction_force, fss, FullSubMatrixHandler::IncCoef(), ExpandableRowVector::Link(), ExpandableRowVector::ReDim(), ExpandableRowVector::Set(), sigma2, sign(), sliding, status, sticked, sticking, and ExpandableRowVector::Sub().

|
virtual | ||||||||||||||||||||||||||||||||||||||||
Compute self residual and friction coefficient
Implements BasicFriction.
Definition at line 374 of file friction.cc.
References grad::fabs(), MBDYN_EXCEPT_ARGS, and sign().

|
virtual |
Implements SimulationEntity.
Definition at line 303 of file friction.cc.
|
virtual |
|
virtual |
Implements SimulationEntity.
Definition at line 318 of file friction.cc.
|
virtual |
|
virtual |
Return last computed friction coefficient
Implements BasicFriction.
Definition at line 342 of file friction.cc.
References current_friction_force.
|
virtual |
Implements SimulationEntity.
Definition at line 332 of file friction.cc.
References DofOrder::ALGEBRAIC, ASSERTMSGBREAK, and iGetNumDof().

|
virtual |
Reimplemented from SimulationEntity.
Definition at line 337 of file friction.cc.
References ASSERTMSGBREAK, DofOrder::DIFFERENTIAL, and iGetNumDof().

|
virtual |
Implements SimulationEntity.
Definition at line 298 of file friction.cc.
Referenced by GetDofType(), and GetEqType().
|
virtual |
Set Initial Values
Reimplemented from BasicFriction.
Definition at line 289 of file friction.cc.
References f, and VectorHandler::PutCoef().

|
private |
Definition at line 219 of file friction.h.
|
private |
Definition at line 222 of file friction.h.
Referenced by AfterConvergence().
|
private |
Definition at line 231 of file friction.h.
|
private |
Definition at line 226 of file friction.h.
Referenced by AfterConvergence().
|
private |
Definition at line 234 of file friction.h.
Referenced by AfterConvergence(), and SetValue().
|
private |
Definition at line 223 of file friction.h.
Referenced by AfterConvergence().
|
private |
Definition at line 224 of file friction.h.
Referenced by AfterConvergence().
|
private |
Definition at line 233 of file friction.h.
Referenced by AssJac().
|
private |
Definition at line 225 of file friction.h.
Referenced by AfterConvergence().
|
private |
Definition at line 228 of file friction.h.
|
private |
Definition at line 227 of file friction.h.
|
private |
Definition at line 229 of file friction.h.
Referenced by AssJac().
|
private |
Definition at line 220 of file friction.h.
Referenced by AfterConvergence(), and AssJac().
|
private |
Definition at line 221 of file friction.h.
Referenced by AfterConvergence().
|
private |
Definition at line 230 of file friction.h.