![]() |
ImFusion C++ SDK 4.4.0
|
#include <ImFusion/Base/LinearSystemSolvers.h>
Bi-conjugate gradient solver with stabilization (Eigen implementation). More...
Bi-conjugate gradient solver with stabilization (Eigen implementation).
Public Member Functions | |
| BiCGStabEigenSolver (bool useDouble, int maxIterations, float minTolerance=1e-8f) | |
| void | solve (Eigen::SparseMatrix< float > &A, Eigen::VectorXf &b, Eigen::VectorXf &x, Eigen::VectorXf &x0) override |
| Public Member Functions inherited from ImFusion::IterativeLinearSystemSolver | |
| IterativeLinearSystemSolver (int maxIterations, float minTolerance) | |
| Public Member Functions inherited from ImFusion::LinearSystemSolver | |
| void | solve (Eigen::SparseMatrix< float > &A, Eigen::SparseVector< float > &b, Eigen::VectorXf &x, Eigen::VectorXf &x0) |
| void | setVerbose (bool flag) |
Protected Attributes | |
| bool | m_useDouble |
| Protected Attributes inherited from ImFusion::IterativeLinearSystemSolver | |
| int | m_maxIterations |
| float | m_minTolerance |
| Protected Attributes inherited from ImFusion::LinearSystemSolver | |
| bool | m_verbose |
Additional Inherited Members | |
| Public Types inherited from ImFusion::LinearSystemSolver | |
| enum | Solver { LLT_FLOAT = 0 , LLT_EIGEN = 1 , CG_EIGEN = 2 , BICGSTAB_FLOAT = 3 , BICGSTAB_EIGEN = 4 , BICGSTAB_EIGEN_FLOAT = 5 , BICGSTAB_VIENNA = 6 , BICGSTAB_VIENNA_GPU = 7 } |
|
overridevirtual |
Implements ImFusion::LinearSystemSolver.