For BaseMatrix. More...
Classes | |
class | MechanicalState |
Component storing all state vectors of a simulated body (position, velocity, etc), using the datatype specified in the templace. More... | |
class | BaseAnimationLoop |
Component responsible for main animation algorithms, managing how and when mechanical computation happens in one animation step. More... | |
class | BaseConstraint |
Component computing constraints within a simulated body. More... | |
class | BaseConstraintCorrection |
Component computing constraint forces within a simulated body using the compliance method. More... | |
class | BaseConstraintSet |
class | BaseController |
BaseController Class. Interface of user interaction on SOFA Components. Empty class to provide an interface for the Factory. More... | |
class | BaseForceField |
Component computing forces within simulated bodies. More... | |
class | BaseInteractionConstraint |
BaseInteractionConstraint is a constraint linking several bodies (MechanicalState) together. More... | |
class | BaseInteractionForceField |
BaseInteractionForceField is a force field linking several bodies (MechanicalState) together. More... | |
class | BaseInteractionProjectiveConstraintSet |
BaseInteractionProjectiveConstraintSet is a constraint linking several bodies (MechanicalState) together. More... | |
class | BaseLinearSolver |
Abstract base class (as type identifier) for linear system solvers without any API. More... | |
class | StiffnessMatrixAccumulator |
class | ListStiffnessMatrixAccumulator |
class | DampingMatrixAccumulator |
class | ListDampingMatrixAccumulator |
class | StiffnessMatrix |
class | DampingMatrix |
class | MassMatrixAccumulator |
class | ListMassMatrixAccumulator |
class | MassMatrix |
class | BaseMass |
Component responsible for mass-related computations (gravity, acceleration). More... | |
class | BaseMatrixLinearSystem |
class | BaseMechanicalState |
Component storing all state vectors of a simulated body (position, velocity, etc). More... | |
class | BaseOrderingMethod |
Abstract base class for ordering methods in sparse linear solvers. More... | |
struct | ZeroDirichletCondition |
class | BaseProjectiveConstraintSet |
Component computing projective constraints within a simulated body. More... | |
class | BaseRotationFinder |
class | BaseVectorOperations |
struct | BlockType |
class | BlocMatrixWriter |
class | Constraint |
Component computing constraints within a simulated body. More... | |
class | ConstraintCorrection |
class | ConstraintResolution |
Object computing a constraint resolution within a Gauss-Seidel algorithm. More... | |
class | ConstraintSolver |
Component responsible for the expression and solution of system of equations related to constraints. The main method is solveConstraint(const ConstraintParams *, MultiVecId , MultiVecId ); The default implementation successively calls: prepareStates, buildSystem, solveSystem, applyCorrection. The parameters are defined in class ConstraintParams. More... | |
class | CRSMultiMatrixAccessor |
class | DefaultMultiMatrixAccessor |
class | ForceField |
Component computing forces within a simulated body. More... | |
class | LinearSolver |
Abstract interface for linear system solvers. More... | |
class | LinearSolverAccessor |
class | Mass |
Component responsible for mass-related computations (gravity, acceleration). More... | |
class | MatrixAccessorCompat |
class | AddToMatrixCompatMatrix |
class | ApplyConstraintCompat |
class | MechanicalMatrix |
class | MixedInteractionConstraint |
Component computing constraints between a pair of simulated body. More... | |
class | MixedInteractionForceField |
Component computing forces between a pair of simulated body. More... | |
class | MultiMatrix |
class | MultiMatrixAccessor |
class | TMultiVec |
class | OdeSolver |
Component responsible for timestep integration, i.e. advancing the state from time t to t+dt. More... | |
class | PairInteractionConstraint |
Component computing constraints between a pair of simulated body. More... | |
class | PairInteractionForceField |
Component computing forces between a pair of simulated body. More... | |
class | PairInteractionProjectiveConstraintSet |
Component computing constraints between a pair of simulated body. More... | |
class | PairStateAccessor |
class | ProjectiveConstraintSet |
Component computing constraints within a simulated body. More... | |
class | RotationFinder |
class | SingleMatrixAccessor |
class | SingleStateAccessor |
class | StateAccessor |
Typedefs | |
typedef TMultiVec< V_COORD > | MultiVecCoord |
typedef TMultiVec< V_DERIV > | MultiVecDeriv |
typedef TMultiVec< V_MATDERIV > | MultiVecMatrixDeriv |
Enumerations | |
enum class | BlocData { SCALAR , MAT33 } |
enum class | BlocPrecision { FLOAT , DOUBLE } |
Functions | |
template<class T > | |
BlocPrecision | getBlockPrecision () |
template<class TReal > | |
std::enable_if_t< std::is_floating_point_v< TReal >, BlockType > | getScalarBlocType () |
template<class TReal > | |
std::enable_if_t< std::is_floating_point_v< TReal >, BlockType > | getMat33BlocType () |
template<int blocRsize, int blocCsize, class elementType > | |
linearalgebra::BaseMatrix * | createBlocSparseMatrixT (int nbRowBloc, int nbColBloc, bool _debug) |
template<int blocRsize, int blocCsize> | |
linearalgebra::BaseMatrix * | createBlocSparseMatrixTReal (int elementSize, int nbRowBloc, int nbColBloc, bool _debug) |
template<int blocRsize> | |
linearalgebra::BaseMatrix * | createBlocSparseMatrixTRow (int blocCsize, int elementSize, int nbRowBloc, int nbColBloc, bool _debug) |
linearalgebra::BaseMatrix * | createBlocSparseMatrix (int blocRsize, int blocCsize, int elementSize, int nbRowBloc, int nbColBloc, bool _debug=false) |
template<int JblocRsize, int JblocCsize, int MblocCsize, class JelementType , class MelementType > | |
bool | opAddMulJTM_TBloc (linearalgebra::BaseMatrix *out, linearalgebra::BaseMatrix *J, linearalgebra::BaseMatrix *stiffMatrix2, int offsetRow, int offsetCol, bool _debug) |
template<int JblocRsize, int JblocCsize, int MblocCsize, class JelementType > | |
bool | opAddMulJTM_T4 (linearalgebra::BaseMatrix *out, linearalgebra::BaseMatrix *J, linearalgebra::BaseMatrix *stiffMatrix2, int offsetRow, int offsetCol, int MelementSize, bool _debug) |
template<int JblocRsize, int JblocCsize, int MblocCsize> | |
bool | opAddMulJTM_T3 (linearalgebra::BaseMatrix *out, linearalgebra::BaseMatrix *J, linearalgebra::BaseMatrix *stiffMatrix2, int offsetRow, int offsetCol, int JelementSize, int MelementSize, bool _debug) |
template<int JblocRsize, int JblocCsize> | |
bool | opAddMulJTM_T2 (linearalgebra::BaseMatrix *out, linearalgebra::BaseMatrix *J, linearalgebra::BaseMatrix *stiffMatrix2, int offsetRow, int offsetCol, int _MblocCsize, int JelementSize, int MelementSize, bool _debug) |
template<int JblocRsize> | |
bool | opAddMulJTM_T1 (linearalgebra::BaseMatrix *out, linearalgebra::BaseMatrix *J, linearalgebra::BaseMatrix *stiffMatrix2, int offsetRow, int offsetCol, int _JblocCsize, int _MblocCsize, int JelementSize, int MelementSize, bool _debug) |
bool | opAddMulJTM (linearalgebra::BaseMatrix *out, linearalgebra::BaseMatrix *J, linearalgebra::BaseMatrix *stiffMatrix2, int offsetRow, int offsetCol, int _JblocRsize, int _JblocCsize, int _MblocCsize, int JelementSize, int MelementSize, bool _debug=false) |
template<int MblocRsize, int MblocCsize, int JblocCsize, class JelementType , class MelementType > | |
bool | opAddMulMJ_TBloc (linearalgebra::BaseMatrix *out, linearalgebra::BaseMatrix *stiffMatrix2, linearalgebra::BaseMatrix *J, int offsetRow, int offsetCol, bool _debug) |
template<int MblocRsize, int MblocCsize, int JblocCsize, class JelementType > | |
bool | opAddMulMJ_T4 (linearalgebra::BaseMatrix *out, linearalgebra::BaseMatrix *stiffMatrix2, linearalgebra::BaseMatrix *J, int offsetRow, int offsetCol, int MelementSize, bool _debug) |
template<int MblocRsize, int MblocCsize, int JblocCsize> | |
bool | opAddMulMJ_T3 (linearalgebra::BaseMatrix *out, linearalgebra::BaseMatrix *stiffMatrix2, linearalgebra::BaseMatrix *J, int offsetRow, int offsetCol, int JelementSize, int MelementSize, bool _debug) |
template<int MblocRsize, int MblocCsize> | |
bool | opAddMulMJ_T2 (linearalgebra::BaseMatrix *out, linearalgebra::BaseMatrix *stiffMatrix2, linearalgebra::BaseMatrix *J, int offsetRow, int offsetCol, int _JblocCsize, int JelementSize, int MelementSize, bool _debug) |
template<int MblocRsize> | |
bool | opAddMulMJ_T1 (linearalgebra::BaseMatrix *out, linearalgebra::BaseMatrix *stiffMatrix2, linearalgebra::BaseMatrix *J, int offsetRow, int offsetCol, int _MblocCsize, int _JblocCsize, int JelementSize, int MelementSize, bool _debug) |
bool | opAddMulMJ (linearalgebra::BaseMatrix *out, linearalgebra::BaseMatrix *stiffMatrix2, linearalgebra::BaseMatrix *J, int offsetRow, int offsetCol, int _MblocRsize, int _MblocCsize, int _JblocCsize, int JelementSize, int MelementSize, bool _debug=false) |
std::ostream & | operator<< (std::ostream &out, const MechanicalMatrix &m) |
For BaseMatrix.
This line registers the DefaultMultiMatrixAccessor to the messaging system allowing to use msg_info() instead of msg_info("DefaultMultiMatrixAccessor")
typedef TMultiVec<V_COORD> sofa::core::behavior::MultiVecCoord |
typedef TMultiVec<V_DERIV> sofa::core::behavior::MultiVecDeriv |
typedef TMultiVec<V_MATDERIV> sofa::core::behavior::MultiVecMatrixDeriv |
|
strong |
|
strong |
|
inline |
|
inline |
|
inline |
|
inline |
BlocPrecision sofa::core::behavior::getBlockPrecision | ( | ) |
std::enable_if_t<std::is_floating_point_v<TReal>, BlockType> sofa::core::behavior::getMat33BlocType | ( | ) |
std::enable_if_t<std::is_floating_point_v<TReal>, BlockType> sofa::core::behavior::getScalarBlocType | ( | ) |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
SOFA_CORE_API std::ostream & sofa::core::behavior::operator<< | ( | std::ostream & | out, |
const MechanicalMatrix & | m | ||
) |
template class SOFA_CORE_API sofa::core::behavior::Constraint< Rigid2Types > |
template class SOFA_CORE_API sofa::core::behavior::Constraint< Rigid3Types > |
template class SOFA_CORE_API sofa::core::behavior::Constraint< Vec1Types > |
template class SOFA_CORE_API sofa::core::behavior::Constraint< Vec2Types > |
template class SOFA_CORE_API sofa::core::behavior::Constraint< Vec3Types > |
template class SOFA_CORE_API sofa::core::behavior::Constraint< Vec6Types > |
template class SOFA_CORE_API sofa::core::behavior::ConstraintCorrection< Rigid3Types > |
template class SOFA_CORE_API sofa::core::behavior::ConstraintCorrection< Vec1Types > |
template class SOFA_CORE_API sofa::core::behavior::ConstraintCorrection< Vec2Types > |
template class SOFA_CORE_API sofa::core::behavior::ConstraintCorrection< Vec3Types > |
template class SOFA_CORE_API sofa::core::behavior::ForceField< Rigid2Types > |
template class SOFA_CORE_API sofa::core::behavior::ForceField< Rigid3Types > |
template class SOFA_CORE_API sofa::core::behavior::ForceField< Vec1Types > |
template class SOFA_CORE_API sofa::core::behavior::ForceField< Vec2Types > |
template class SOFA_CORE_API sofa::core::behavior::ForceField< Vec3Types > |
template class SOFA_CORE_API sofa::core::behavior::ForceField< Vec6Types > |
template class SOFA_CORE_API sofa::core::behavior::Mass< Rigid2Types > |
template class SOFA_CORE_API sofa::core::behavior::Mass< Rigid3Types > |
template class SOFA_CORE_API sofa::core::behavior::Mass< Vec1Types > |
template class SOFA_CORE_API sofa::core::behavior::Mass< Vec2Types > |
template class SOFA_CORE_API sofa::core::behavior::Mass< Vec3Types > |
template class SOFA_CORE_API sofa::core::behavior::Mass< Vec6Types > |
template class SOFA_CORE_API sofa::core::behavior::MechanicalState< Rigid2Types > |
template class SOFA_CORE_API sofa::core::behavior::MechanicalState< Rigid3Types > |
template class SOFA_CORE_API sofa::core::behavior::MechanicalState< Vec1Types > |
template class SOFA_CORE_API sofa::core::behavior::MechanicalState< Vec2Types > |
template class SOFA_CORE_API sofa::core::behavior::MechanicalState< Vec3Types > |
template class SOFA_CORE_API sofa::core::behavior::MechanicalState< Vec6Types > |
template class SOFA_CORE_API sofa::core::behavior::MixedInteractionConstraint< Rigid2Types, Rigid2Types > |
template class SOFA_CORE_API sofa::core::behavior::MixedInteractionConstraint< Rigid2Types, Vec2Types > |
template class SOFA_CORE_API sofa::core::behavior::MixedInteractionConstraint< Rigid3Types, Rigid3Types > |
template class SOFA_CORE_API sofa::core::behavior::MixedInteractionConstraint< Rigid3Types, Vec3Types > |
template class SOFA_CORE_API sofa::core::behavior::MixedInteractionConstraint< Vec1Types, Vec1Types > |
template class SOFA_CORE_API sofa::core::behavior::MixedInteractionConstraint< Vec2Types, Rigid2Types > |
template class SOFA_CORE_API sofa::core::behavior::MixedInteractionConstraint< Vec2Types, Vec2Types > |
template class SOFA_CORE_API sofa::core::behavior::MixedInteractionConstraint< Vec3Types, Rigid3Types > |
template class SOFA_CORE_API sofa::core::behavior::MixedInteractionConstraint< Vec3Types, Vec3Types > |
template class SOFA_CORE_API sofa::core::behavior::MixedInteractionForceField< Rigid2Types, Rigid2Types > |
template class SOFA_CORE_API sofa::core::behavior::MixedInteractionForceField< Rigid2Types, Vec2Types > |
template class SOFA_CORE_API sofa::core::behavior::MixedInteractionForceField< Rigid3Types, Rigid3Types > |
template class SOFA_CORE_API sofa::core::behavior::MixedInteractionForceField< Rigid3Types, Vec1Types > |
template class SOFA_CORE_API sofa::core::behavior::MixedInteractionForceField< Rigid3Types, Vec3Types > |
template class SOFA_CORE_API sofa::core::behavior::MixedInteractionForceField< Vec1Types, Rigid3Types > |
template class SOFA_CORE_API sofa::core::behavior::MixedInteractionForceField< Vec1Types, Vec1Types > |
template class SOFA_CORE_API sofa::core::behavior::MixedInteractionForceField< Vec1Types, Vec3Types > |
template class SOFA_CORE_API sofa::core::behavior::MixedInteractionForceField< Vec2Types, Rigid2Types > |
template class SOFA_CORE_API sofa::core::behavior::MixedInteractionForceField< Vec2Types, Vec2Types > |
template class SOFA_CORE_API sofa::core::behavior::MixedInteractionForceField< Vec3Types, Rigid3Types > |
template class SOFA_CORE_API sofa::core::behavior::MixedInteractionForceField< Vec3Types, Vec3Types > |
template class SOFA_CORE_API sofa::core::behavior::PairInteractionConstraint< Rigid2Types > |
template class SOFA_CORE_API sofa::core::behavior::PairInteractionConstraint< Rigid3Types > |
template class SOFA_CORE_API sofa::core::behavior::PairInteractionConstraint< Vec1Types > |
template class SOFA_CORE_API sofa::core::behavior::PairInteractionConstraint< Vec2Types > |
template class SOFA_CORE_API sofa::core::behavior::PairInteractionConstraint< Vec3Types > |
template class SOFA_CORE_API sofa::core::behavior::PairInteractionForceField< Rigid2Types > |
template class SOFA_CORE_API sofa::core::behavior::PairInteractionForceField< Rigid3Types > |
template class SOFA_CORE_API sofa::core::behavior::PairInteractionForceField< Vec1Types > |
template class SOFA_CORE_API sofa::core::behavior::PairInteractionForceField< Vec2Types > |
template class SOFA_CORE_API sofa::core::behavior::PairInteractionForceField< Vec3Types > |
template class SOFA_CORE_API sofa::core::behavior::PairInteractionForceField< Vec6Types > |
template class SOFA_CORE_API sofa::core::behavior::PairInteractionProjectiveConstraintSet< Rigid2Types > |
template class SOFA_CORE_API sofa::core::behavior::PairInteractionProjectiveConstraintSet< Rigid3Types > |
template class SOFA_CORE_API sofa::core::behavior::PairInteractionProjectiveConstraintSet< Vec1Types > |
template class SOFA_CORE_API sofa::core::behavior::PairInteractionProjectiveConstraintSet< Vec2Types > |
template class SOFA_CORE_API sofa::core::behavior::PairInteractionProjectiveConstraintSet< Vec3Types > |
template class SOFA_CORE_API sofa::core::behavior::ProjectiveConstraintSet< Rigid2Types > |
template class SOFA_CORE_API sofa::core::behavior::ProjectiveConstraintSet< Rigid3Types > |
template class SOFA_CORE_API sofa::core::behavior::ProjectiveConstraintSet< Vec1Types > |
template class SOFA_CORE_API sofa::core::behavior::ProjectiveConstraintSet< Vec2Types > |
template class SOFA_CORE_API sofa::core::behavior::ProjectiveConstraintSet< Vec3Types > |
template class SOFA_CORE_API sofa::core::behavior::ProjectiveConstraintSet< Vec6Types > |