|
Solve the system Mixed Linear Complementarity Problem (Mlcp) More...
#include <SurgSim/Physics/SolveMlcp.h>
Public Member Functions | |
| SolveMlcp (bool doCopyState=false) | |
| Constructor. More... | |
| virtual | ~SolveMlcp () |
| Destructor. More... | |
| void | setMaxIterations (int maxIterations) |
| void | setSolverPrecision (double epsilon) |
| void | setContactTolerance (double epsilon) |
Public Member Functions inherited from SurgSim::Physics::Computation | |
| Computation (bool doCopyState) | |
| Constructor. More... | |
| virtual | ~Computation () |
| Destructor. More... | |
| std::shared_ptr< PhysicsManagerState > | update (double dt, const std::shared_ptr< PhysicsManagerState > &state) |
| Public Interface execute this objects computations, dt is the time from the last update call in seconds. More... | |
| void | setDoCopyState (bool val) |
| Sets up whether the computation will copy the state of PhysicsManagerState before executing. More... | |
| bool | isCopyingState () |
| Query if this object is copying the PhysicsManagerState. More... | |
Protected Member Functions | |
| virtual std::shared_ptr< PhysicsManagerState > | doUpdate (const double &dt, const std::shared_ptr< PhysicsManagerState > &state) override |
| Override doUpdate from superclass. More... | |
Private Attributes | |
| SurgSim::Math::MlcpGaussSeidelSolver | m_gaussSeidelSolver |
| The Gauss-Seidel Mlcp solver. More... | |
Solve the system Mixed Linear Complementarity Problem (Mlcp)
|
explicit |
Constructor.
| doCopyState | Specify if the ouput state is a copy or not of the input state in Computation::Update() |
|
virtual |
Destructor.
|
overrideprotectedvirtual |
Override doUpdate from superclass.
| dt | The time step |
| state | The Physics manager state |
Implements SurgSim::Physics::Computation.
| void SurgSim::Physics::SolveMlcp::setContactTolerance | ( | double | epsilon | ) |
| void SurgSim::Physics::SolveMlcp::setMaxIterations | ( | int | maxIterations | ) |
| void SurgSim::Physics::SolveMlcp::setSolverPrecision | ( | double | epsilon | ) |
|
private |
The Gauss-Seidel Mlcp solver.
1.8.11