Go to the documentation of this file.
16 #ifndef SURGSIM_PHYSICS_SOLVEMLCP_H
17 #define SURGSIM_PHYSICS_SOLVEMLCP_H
36 explicit SolveMlcp(
bool doCopyState =
false);
73 std::shared_ptr<PhysicsManagerState>
doUpdate(
const double& dt,
const std::shared_ptr<PhysicsManagerState>& state)
85 #endif // SURGSIM_PHYSICS_SOLVEMLCP_H
SolveMlcp(bool doCopyState=false)
Constructor.
Definition: SolveMlcp.cpp:28
Definition: CompoundShapeToGraphics.cpp:30
SurgSim::Math::MlcpGaussSeidelSolver m_gaussSeidelSolver
The Gauss-Seidel Mlcp solver.
Definition: SolveMlcp.h:79
A solver for mixed LCP problems using the Gauss-Seidel iterative method.
Definition: MlcpGaussSeidelSolver.h:54
double getPrecision() const
Get the precision of the MLCP solver.
Definition: SolveMlcp.cpp:90
std::shared_ptr< PhysicsManagerState > doUpdate(const double &dt, const std::shared_ptr< PhysicsManagerState > &state) override
Override doUpdate from superclass.
Definition: SolveMlcp.cpp:35
size_t getMaxIterations() const
Get the maximum number of iterations for the MLCP solver.
Definition: SolveMlcp.cpp:80
void setContactTolerance(double epsilon)
Set the contact tolerance for the MLCP solver.
Definition: SolveMlcp.cpp:95
void setPrecision(double epsilon)
Set the precision of the MLCP solver.
Definition: SolveMlcp.cpp:85
SURGSIM_CLASSNAME(SurgSim::Physics::SolveMlcp)
void setMaxIterations(size_t maxIterations)
Set the maximum number of iterations for the MLCP solver.
Definition: SolveMlcp.cpp:75
double getContactTolerance() const
Get the contact tolerance for the MLCP solver.
Definition: SolveMlcp.cpp:100
virtual ~SolveMlcp()
Destructor.
Definition: SolveMlcp.cpp:32
Encapsulates a calculation over a selection of objects, needs to be subclassed to be used.
Definition: Computation.h:33
Solve the system Mixed Linear Complementarity Problem (Mlcp)
Definition: SolveMlcp.h:32