chrono::ChSolverBiCGSTAB Class Reference
  Description
BiCGSTAB iterative solver.
Solves for Ax = b sparse linear problems using a bi-conjugate gradient stabilized algorithm.
See ChIterativeSolverLS for supported solver settings and paramters. 
#include <ChIterativeSolverLS.h>
Inheritance diagram for chrono::ChSolverBiCGSTAB:

Collaboration diagram for chrono::ChSolverBiCGSTAB:

Public Member Functions | |
| virtual Type | GetType () const override | 
| Return type of the solver.  | |
| virtual int | GetIterations () const override | 
| Return the number of iterations performed during the last solve.  | |
| virtual double | GetError () const override | 
| Return the tolerance error reached during the last solve.  | |
  Public Member Functions inherited from chrono::ChIterativeSolverLS | |
| virtual bool | Setup (ChSystemDescriptor &sysd) override | 
| Perform the solver setup operations.  More... | |
| virtual double | Solve (ChSystemDescriptor &sysd) override | 
| Performs the solution of the problem.  More... | |
  Public Member Functions inherited from chrono::ChIterativeSolver | |
| virtual void | SetMaxIterations (int max_iterations) | 
| Set the maximum number of iterations.  | |
| void | SetTolerance (double tolerance) | 
| Set the tolerance threshold used by the stopping criteria.  | |
| void | EnableDiagonalPreconditioner (bool val) | 
| Enable/disable use of a simple diagonal preconditioner (default: true).  More... | |
| void | EnableWarmStart (bool val) | 
| Enable/disable warm starting by providing an initial guess (default: false).  More... | |
| int | GetMaxIterations () const | 
| Get the current maximum number of iterations.  | |
| double | GetTolerance () const | 
| Get the current tolerance value.  | |
  Public Member Functions inherited from chrono::ChSolver | |
| virtual ChDirectSolverLS * | AsDirect () | 
| Downcast to ChDirectSolver.  | |
| void | SetVerbose (bool mv) | 
| Set verbose output from solver.  | |
| void | EnableWrite (bool val, const std::string &frame, const std::string &out_dir=".") | 
| Enable/disable debug output of matrix, RHS, and solution vector.  | |
| virtual void | ArchiveOut (ChArchiveOut &archive_out) | 
| Method to allow serialization of transient data to archives.  | |
| virtual void | ArchiveIn (ChArchiveIn &archive_in) | 
| Method to allow de-serialization of transient data from archives.  | |
Additional Inherited Members | |
  Public Types inherited from chrono::ChSolver | |
| enum | Type {  Type::PSOR, Type::PSSOR, Type::PJACOBI, Type::PMINRES, Type::BARZILAIBORWEIN, Type::APGD, Type::ADMM, Type::SPARSE_LU, Type::SPARSE_QR, Type::PARDISO_MKL, Type::MUMPS, Type::GMRES, Type::MINRES, Type::BICGSTAB, CUSTOM }  | 
| Available types of solvers.  More... | |
  Protected Member Functions inherited from chrono::ChIterativeSolverLS | |
| virtual bool | IsIterative () const override | 
| Return true if iterative solver.  | |
| virtual bool | IsDirect () const override | 
| Return true if direct solver.  | |
| virtual ChIterativeSolver * | AsIterative () override | 
| Downcast to ChIterativeSolver.  | |
| virtual bool | SolveRequiresMatrix () const override final | 
| Indicate whether or not the Solve() phase requires an up-to-date problem matrix.  | |
  Protected Member Functions inherited from chrono::ChIterativeSolver | |
| ChIterativeSolver (int max_iterations, double tolerance, bool use_precond, bool warm_start) | |
| void | WriteMatrices (ChSystemDescriptor &sysd, bool one_indexed=true) | 
| double | CheckSolution (ChSystemDescriptor &sysd, const ChVectorDynamic<> &x) | 
  Protected Attributes inherited from chrono::ChIterativeSolverLS | |
| ChMatrixSPMV * | m_spmv | 
| matrix-like wrapper for SPMV operations  | |
| ChVectorDynamic< double > | m_sol | 
| solution vector  | |
| ChVectorDynamic< double > | m_rhs | 
| right-hand side vector  | |
| ChVectorDynamic< double > | m_invdiag | 
| inverse diagonal entries (for preconditioning)  | |
| ChVectorDynamic< double > | m_initguess | 
| initial guess (for warm start)  | |
  Protected Attributes inherited from chrono::ChIterativeSolver | |
| bool | m_use_precond | 
| use diagonal preconditioning?  | |
| bool | m_warm_start | 
| use initial guesss?  | |
| int | m_max_iterations | 
| maximum number of iterations  | |
| double | m_tolerance | 
| tolerance threshold in stopping criteria  | |
  Protected Attributes inherited from chrono::ChSolver | |
| bool | verbose | 
| bool | write_matrix | 
| std::string | output_dir | 
| std::string | frame_id | 
The documentation for this class was generated from the following files:
- /builds/uwsbel/chrono/src/chrono/solver/ChIterativeSolverLS.h
 - /builds/uwsbel/chrono/src/chrono/solver/ChIterativeSolverLS.cpp
 
 Public Member Functions inherited from