PCGLinearSolver
Linear system solver using the Shewchuk conjugate gradient iterative algorithm.
GraphScattered
Templates:
- GraphScattered
Target: Sofa.Component.LinearSolver.Iterative
namespace: sofa::component::linearsolver::iterative
parents:
- MatrixLinearSolver
Data
| Name | Description | Default value |
|---|---|---|
| name | object name | unnamed |
| printLog | if true, emits extra messages at runtime. | 0 |
| tags | list of the subsets the object belongs to | |
| bbox | this object bounding box | |
| componentState | The state of the component among (Dirty, Valid, Undefined, Loading, Invalid). | Undefined |
| listening | if true, handle the events, otherwise ignore the events | 0 |
| parallelInverseProduct | Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions | 0 |
| iterations | Maximum number of iterations after which the iterative descent of the Conjugate Gradient must stop | 25 |
| tolerance | Desired accuracy of the Conjugate Gradient solution evaluating: |r|²/|b|² (ratio of current residual norm over initial residual norm) | 1e-05 |
| use_precond | Use a preconditioner | 1 |
| update_step | Number of steps before the next refresh of preconditioners | 1 |
| build_precond | Build the preconditioners, if false build the preconditioner only at the initial step | 1 |
| graph | Graph of residuals at each iteration |
Links
| Name | Description | Destination type name |
|---|---|---|
| context | Graph Node containing this object (or BaseContext::getDefault() if no graph is used) | BaseContext |
| slaves | Sub-objects used internally by this object | BaseObject |
| master | nullptr for regular objects, or master object for which this object is one sub-objects | BaseObject |
| linearSystem | The linear system to solve | TypedMatrixLinearSystem<GraphScattered> |
| preconditioner | Link towards the linear solver used to precondition the conjugate gradient | LinearSolver |