ShewchukPCGLinearSolver

Context: Sofa.Component.LinearSolver.Iterative

Linear system solver using the conjugate gradient iterative algorithm

Data:
  • name : object name

  • printLog : if true, emits extra messages at runtime.

  • tags : list of the subsets the objet belongs to

  • bbox : this object bounding box

  • componentState : The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).

  • listening : if true, handle the events, otherwise ignore the events

  • 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

  • iterations : maximum number of iterations of the Conjugate Gradient solution

  • tolerance : desired precision of the Conjugate Gradient Solution (ratio of current residual norm over initial residual norm)

  • use_precond : Use preconditioner

  • update_step : Number of steps before the next refresh of precondtioners

  • build_precond : Build the preconditioners, if false build the preconditioner only at the initial step

  • graph : Graph of residuals at each iteration

Links:
  • context : Graph Node containing this object (or BaseContext::getDefault() if no graph is used

  • slaves : Sub-objects used internally by this object

  • master : nullptr for regular objects, or master object for which this object is one sub-objects

  • linearSystem : The linear system to solve

  • preconditioner : Link towards the linear solver used to precondition the conjugate gradient