SOFA API  c76874b7
Open source framework for multi-physics simuation
sofa::component::constraintset::bilateralconstraintresolution::BilateralConstraintResolutionNDof Class Reference

#include <BilateralConstraintResolution.h>

Inheritance diagram for sofa::component::constraintset::bilateralconstraintresolution::BilateralConstraintResolutionNDof:

Protected Attributes

Eigen::MatrixXd wBlock
 
Eigen::LDLT< Eigen::MatrixXd > wBlockInv
 

Public Member Functions

 BilateralConstraintResolutionNDof (unsigned blockSize)
 
void init (int line, double **w, double *) override
 The resolution object can do precomputation with the compliance matrix, and give an initial guess. More...
 
void resolution (int line, double **, double *displacement, double *force, double *) override
 Resolution of the constraint for one Gauss-Seidel iteration. More...
 
- Public Member Functions inherited from sofa::core::behavior::ConstraintResolution
 ConstraintResolution (unsigned int nbLines, double tolerance=0.0)
 
virtual ~ConstraintResolution ()
 
virtual void initForce (int, double *)
 The resolution object can provide an initial guess. More...
 
virtual void store (int, double *, bool)
 Called after Gauss-Seidel last iteration, in order to store last computed forces for the inital guess. More...
 
void setNbLines (unsigned int nbLines)
 
unsigned int getNbLines () const
 
void setTolerance (double tolerance)
 
double getTolerance () const
 

Attribute details

Eigen::MatrixXd sofa::component::constraintset::bilateralconstraintresolution::BilateralConstraintResolutionNDof::wBlock
protected
Eigen::LDLT< Eigen::MatrixXd > sofa::component::constraintset::bilateralconstraintresolution::BilateralConstraintResolutionNDof::wBlockInv
protected

Constructor details

sofa::component::constraintset::bilateralconstraintresolution::BilateralConstraintResolutionNDof::BilateralConstraintResolutionNDof ( unsigned  blockSize)
inline

Function details

void sofa::component::constraintset::bilateralconstraintresolution::BilateralConstraintResolutionNDof::init ( int  ,
double **  ,
double  
)
inlineoverridevirtual

The resolution object can do precomputation with the compliance matrix, and give an initial guess.

Reimplemented from sofa::core::behavior::ConstraintResolution.

void sofa::component::constraintset::bilateralconstraintresolution::BilateralConstraintResolutionNDof::resolution ( int  line,
double **  w,
double d,
double force,
double dFree 
)
inlineoverridevirtual

Resolution of the constraint for one Gauss-Seidel iteration.

Reimplemented from sofa::core::behavior::ConstraintResolution.