MULTIBODY SIMULATION SOFTWARE - API documentation

chrono::ChLcpIterativeSymmSOR Class Reference

#include <CHlcpIterativeSymmSOR.h>

Inheritance diagram for chrono::ChLcpIterativeSymmSOR:

Inheritance graph
[legend]
Collaboration diagram for chrono::ChLcpIterativeSymmSOR:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 ChLcpIterativeSymmSOR (int mmax_iters=50, bool mwarm_start=false, double mtolerance=0.0, double momega=1.0)
virtual double Solve (ChLcpSystemDescriptor &sysd, bool add_Mq_to_f=false)


Detailed Description

An iterative LCP solver based on symmetric projective fixed point method, with overrelaxation and immediate variable update as in SSOR methods. This solver must be used for mixed-linear complementarity problems (MLCP) in this form:

| M -Cq'|*|q|- | f|= |0| , c>=0, l>=0, l*c=0; | Cq 0 | |l| |-b| |c|

as arising in the solution of QP with inequalities or in multibody problems. Note that this solver supports also the case of boxed constraints on 'l', such as lmin<l<lmax


Constructor & Destructor Documentation

chrono::ChLcpIterativeSymmSOR::ChLcpIterativeSymmSOR ( int  mmax_iters = 50,
bool  mwarm_start = false,
double  mtolerance = 0.0,
double  momega = 1.0 
)

Parameters:
mmax_iters  max.number of iterations
mwarm_start  uses warm start?
mtolerance  tolerance for termination criterion
momega  overrelaxation criterion


Member Function Documentation

double chrono::ChLcpIterativeSymmSOR::Solve ( ChLcpSystemDescriptor sysd,
bool  add_Mq_to_f = false 
) [virtual]

Performs the solution of the LCP.

Returns:
the maximum constraint violation after termination.
Parameters:
sysd  system description with constraints and variables
add_Mq_to_f  if true, takes the initial 'q' and adds [M]*q to 'f' vector

Implements chrono::ChLcpSolver.


CHRONO::ENGINE
C++ library for multibody simulation, (C) Alessandro Tasora
This API documentation has been generated on 17 Jul 2009 by Doxygen