#include <ConstraintParams.h>
Class gathering parameters use by constraint components methods, and transmitted by visitors read the velocity and position and where the
Protected Attributes | |
ConstMultiVecCoordId | m_x |
Ids of position vector. More... | |
ConstMultiVecDerivId | m_v |
Ids of velocity vector. More... | |
MultiMatrixDerivId | m_j |
Ids of the constraint jacobian matrix. More... | |
MultiVecDerivId | m_dx |
Ids of constraint correction vector. More... | |
MultiVecDerivId | m_lambda |
Ids of constraint lambda vector. More... | |
ConstraintOrder | m_constOrder |
Description of the order of the constraint. More... | |
double | m_smoothFactor |
Smooth contribution factor (for smooth constraints resolution) More... | |
Public Member Functions | |
SOFA_ATTRIBUTE_DISABLED__CONSTORDER () static const expr auto POS | |
SOFA_ATTRIBUTE_DISABLED__CONSTORDER () static const expr auto VEL | |
SOFA_ATTRIBUTE_DISABLED__CONSTORDER () static const expr auto ACC | |
SOFA_ATTRIBUTE_DISABLED__CONSTORDER () static const expr auto POS_AND_VEL | |
std::string_view | getName () const |
ConstraintParams (const sofa::core::ExecParams &p= *sofa::core::execparams::defaultInstance()) | |
Constructor, initializing all VecIds to default values, implicit and energy flags to false. More... | |
ConstraintParams & | setExecParams (const core::ExecParams *params) |
Flags and parameters getters | |
ConstraintOrder | constOrder () const |
ConstraintParams & | setOrder (ConstraintOrder o) |
double | smoothFactor () const |
Smooth contribution factor (for smooth constraints resolution) More... | |
Access to vectors from a given state container (i.e. State or MechanicalState) | |
template<class S > | |
const Data< typename S::VecCoord > * | readX (const S *state) const |
Read access to the free (unconstrained) position vector. More... | |
template<class S > | |
const Data< typename S::VecDeriv > * | readV (const S *state) const |
Read access to the free (unconstrained) velocity vector. More... | |
template<class S > | |
const Data< typename S::MatrixDeriv > * | readJ (const S *state) const |
Read access to the constraint jacobian matrix. More... | |
template<class S > | |
const Data< typename S::VecDeriv > * | readLambda (S *state) const |
Read access to the constraint force vector. More... | |
template<class S > | |
const Data< typename S::VecDeriv > * | readDx (S *state) const |
Read access to the constraint corrective motion vector. More... | |
Setup methods | |
Called by the OdeSolver from which the mechanical computations originate. They all return a reference to this MechanicalParam instance, to ease chaining multiple setup calls. | |
ConstraintParams & | setSmoothFactor (double v) |
Set smooth contribution factor (for smooth constraints resolution) More... | |
const ConstMultiVecCoordId & | x () const |
Returns ids of the position vectors. More... | |
ConstMultiVecCoordId & | x () |
Returns ids of the position vectors. More... | |
const ConstMultiVecDerivId & | v () const |
Returns ids of the velocity vectors. More... | |
ConstMultiVecDerivId & | v () |
Returns ids of the velocity vectors. More... | |
const MultiMatrixDerivId & | j () const |
Returns ids of the constraint jacobian matrices. More... | |
MultiMatrixDerivId & | j () |
Returns ids of the constraint jacobian matrices. More... | |
const MultiVecDerivId & | dx () const |
Returns ids of the constraint correction vectors. More... | |
MultiVecDerivId & | dx () |
Returns ids of the constraint correction vectors. More... | |
const MultiVecDerivId & | lambda () const |
Returns ids of the constraint lambda vectors. More... | |
MultiVecDerivId & | lambda () |
Returns ids of the constraint lambda vectors. More... | |
ConstraintParams & | setX (ConstVecCoordId v) |
Set the IDs where to read the free position vector. More... | |
ConstraintParams & | setX (ConstMultiVecCoordId v) |
template<class StateSet > | |
ConstraintParams & | setX (const StateSet &g, ConstVecCoordId v) |
ConstraintParams & | setV (ConstVecDerivId v) |
Set the IDs where to read the free velocity vector. More... | |
ConstraintParams & | setV (ConstMultiVecDerivId v) |
template<class StateSet > | |
ConstraintParams & | setV (const StateSet &g, ConstVecDerivId v) |
ConstraintParams & | setJ (MatrixDerivId j) |
Set the IDs where to read the constraint jacobian matrix. More... | |
ConstraintParams & | setJ (MultiMatrixDerivId j) |
template<class StateSet > | |
ConstraintParams & | setJ (const StateSet &g, MatrixDerivId j) |
ConstraintParams & | setDx (VecDerivId dx) |
Set the IDs where to write corrective displacement vector. More... | |
ConstraintParams & | setDx (MultiVecDerivId dx) |
template<class StateSet > | |
ConstraintParams & | setDx (const StateSet &g, MultiVecDerivId dx) |
ConstraintParams & | setLambda (VecDerivId lambda) |
Set the IDs where to write the constraint force vector. More... | |
ConstraintParams & | setLambda (MultiVecDerivId lambda) |
template<class StateSet > | |
ConstraintParams & | setLambda (const StateSet &g, MultiVecDerivId lambda) |
Public Member Functions inherited from sofa::core::ExecParams | |
bool | checkValidStorage () const |
ExecMode | execMode () const |
Mode of execution requested. More... | |
int | threadID () const |
Index of current thread (0 corresponding to the only thread in sequential mode, or first thread in parallel mode) More... | |
int | nbThreads () const |
Number of threads currently known to Sofa. More... | |
ExecParams () | |
void | update () |
Make sure this instance is up-to-date relative to the current thread. More... | |
ExecParams & | setExecMode (ExecMode v) |
Request a specific mode of execution. More... | |
ExecParams & | setThreadID (int v) |
Specify the index of the current thread. More... | |
Static Public Member Functions | |
static const ConstraintParams * | defaultInstance () |
Get the default MechanicalParams, to be used to provide a default values for method parameters. More... | |
Static Public Member Functions inherited from sofa::core::ExecParams | |
static ExecParams * | defaultInstance () |
Get the default ExecParams, to be used to provide a default values for method parameters. More... | |
|
protected |
Description of the order of the constraint.
|
protected |
Ids of constraint correction vector.
|
protected |
Ids of the constraint jacobian matrix.
|
protected |
Ids of constraint lambda vector.
|
protected |
Smooth contribution factor (for smooth constraints resolution)
|
protected |
Ids of velocity vector.
|
protected |
Ids of position vector.
sofa::core::ConstraintParams::ConstraintParams | ( | const sofa::core::ExecParams & | p = *sofa::core::execparams::defaultInstance() | ) |
Constructor, initializing all VecIds to default values, implicit and energy flags to false.
|
inline |
|
static |
Get the default MechanicalParams, to be used to provide a default values for method parameters.
Get the default ConstraintParams, to be used to provide a default values for method parameters.
|
inline |
Returns ids of the constraint correction vectors.
|
inline |
Returns ids of the constraint correction vectors.
|
inline |
|
inline |
Returns ids of the constraint jacobian matrices.
|
inline |
Returns ids of the constraint jacobian matrices.
|
inline |
Returns ids of the constraint lambda vectors.
|
inline |
Returns ids of the constraint lambda vectors.
|
inline |
Read access to the constraint corrective motion vector.
|
inline |
Read access to the constraint jacobian matrix.
|
inline |
Read access to the constraint force vector.
|
inline |
Read access to the free (unconstrained) velocity vector.
|
inline |
Read access to the free (unconstrained) position vector.
|
inline |
|
inline |
|
inline |
Set the IDs where to write corrective displacement vector.
ConstraintParams & sofa::core::ConstraintParams::setExecParams | ( | const core::ExecParams * | params | ) |
|
inline |
|
inline |
Set the IDs where to read the constraint jacobian matrix.
|
inline |
|
inline |
|
inline |
|
inline |
Set the IDs where to write the constraint force vector.
|
inline |
|
inline |
Set smooth contribution factor (for smooth constraints resolution)
|
inline |
|
inline |
|
inline |
Set the IDs where to read the free velocity vector.
|
inline |
|
inline |
|
inline |
Set the IDs where to read the free position vector.
|
inline |
Smooth contribution factor (for smooth constraints resolution)
sofa::core::ConstraintParams::SOFA_ATTRIBUTE_DISABLED__CONSTORDER | ( | ) | const |
sofa::core::ConstraintParams::SOFA_ATTRIBUTE_DISABLED__CONSTORDER | ( | ) | const |
sofa::core::ConstraintParams::SOFA_ATTRIBUTE_DISABLED__CONSTORDER | ( | ) | const |
sofa::core::ConstraintParams::SOFA_ATTRIBUTE_DISABLED__CONSTORDER | ( | ) | const |
|
inline |
Returns ids of the velocity vectors.
|
inline |
Returns ids of the velocity vectors.
|
inline |
Returns ids of the position vectors.
|
inline |
Returns ids of the position vectors.