33#ifndef DART_CONSTRAINT_PGSLCPSOLVER_HPP_
34#define DART_CONSTRAINT_PGSLCPSOLVER_HPP_
38#include "dart/config.hpp"
63 bool isSymmetric(std::size_t _n,
double* _A, std::size_t _begin, std::size_t _end);
66 void print(std::size_t _n,
double* _A,
double* _x,
double* _lo,
double* _hi,
67 double* _b,
double* w,
int* _findex);
82bool solvePGS(
int n,
int nskip,
int ,
double* A,
83 double* x,
double * b,
84 double * lo,
double * hi,
int * findex,
const CollisionOption & option
Collision option of DART.
Definition FCLCollisionDetector.cpp:154
ConstrainedGroup is a group of skeletons that interact each other with constraints.
Definition ConstrainedGroup.hpp:58
LCPSolver.
Definition LCPSolver.hpp:43
PGSLCPSolver.
Definition PGSLCPSolver.hpp:46
void solve(ConstrainedGroup *_group) override
Solve constriant impulses for a constrained group.
Definition PGSLCPSolver.cpp:61
void print(std::size_t _n, double *_A, double *_x, double *_lo, double *_hi, double *_b, double *w, int *_findex)
Print debug information.
Definition PGSLCPSolver.cpp:254
virtual ~PGSLCPSolver()
Constructor.
Definition PGSLCPSolver.cpp:56
bool isSymmetric(std::size_t _n, double *_A)
Return true if the matrix is symmetric.
Definition PGSLCPSolver.cpp:193
bool solvePGS(int n, int nskip, int, double *A, double *x, double *b, double *lo, double *hi, int *findex, PGSOption *option)
Definition PGSLCPSolver.cpp:344
Definition BulletCollisionDetector.cpp:63
Definition PGSLCPSolver.hpp:72
int itermax
Definition PGSLCPSolver.hpp:73
void setDefault()
Definition PGSLCPSolver.cpp:513
double eps_div
Definition PGSLCPSolver.hpp:77
double sor_w
Definition PGSLCPSolver.hpp:74
double eps_res
Definition PGSLCPSolver.hpp:76
double eps_ea
Definition PGSLCPSolver.hpp:75