11#ifndef EIGEN_BICGSTAB_H
12#define EIGEN_BICGSTAB_H
28template<
typename MatrixType,
typename Rhs,
typename Dest,
typename Preconditioner>
36 typedef typename Dest::Scalar
Scalar;
83 p = r + beta * (
p -
w *
v);
87 v.noalias() =
mat *
y;
93 t.noalias() =
mat * z;
111template<
typename _MatrixType,
112 typename _Preconditioner = DiagonalPreconditioner<typename _MatrixType::Scalar> >
117template<
typename _MatrixType,
typename _Preconditioner>
157template<
typename _MatrixType,
typename _Preconditioner>
168 typedef typename MatrixType::Scalar
Scalar;
187 template<
typename MatrixDerived>
193 template<
typename Rhs,
typename Dest>
Array< int, Dynamic, 1 > v
Definition Array_initializer_list_vector_cxx11.cpp:1
int n
Definition BiCGSTAB_simple.cpp:1
int i
Definition BiCGSTAB_step_by_step.cpp:9
RowVector3d w
Definition Matrix_resize_int.cpp:3
MatrixXf mat
Definition Tutorial_AdvancedInitialization_CommaTemporary.cpp:1
float * p
Definition Tutorial_Map_using.cpp:9
Scalar * b
Definition benchVecAdd.cpp:17
SCALAR Scalar
Definition bench_gemm.cpp:46
NumTraits< Scalar >::Real RealScalar
Definition bench_gemm.cpp:47
MatrixXf MatrixType
Definition benchmark-blocking-sizes.cpp:52
A bi conjugate gradient stabilized solver for sparse square problems.
Definition BiCGSTAB.h:159
MatrixType::RealScalar RealScalar
Definition BiCGSTAB.h:169
_MatrixType MatrixType
Definition BiCGSTAB.h:167
BiCGSTAB(const EigenBase< MatrixDerived > &A)
Definition BiCGSTAB.h:188
~BiCGSTAB()
Definition BiCGSTAB.h:190
MatrixType::Scalar Scalar
Definition BiCGSTAB.h:168
void _solve_vector_with_guess_impl(const Rhs &b, Dest &x) const
Definition BiCGSTAB.h:194
BiCGSTAB()
Definition BiCGSTAB.h:175
_Preconditioner Preconditioner
Definition BiCGSTAB.h:170
Base class for linear iterative solvers.
Definition IterativeSolverBase.h:144
Index maxIterations() const
Definition IterativeSolverBase.h:281
ComputationInfo m_info
Definition IterativeSolverBase.h:438
RealScalar m_error
Definition IterativeSolverBase.h:436
Preconditioner m_preconditioner
Definition IterativeSolverBase.h:431
Index m_iterations
Definition IterativeSolverBase.h:437
bool m_isInitialized
Definition SparseSolverBase.h:119
BiCGSTAB< _MatrixType, _Preconditioner > & derived()
Definition SparseSolverBase.h:79
RealScalar m_tolerance
Definition IterativeSolverBase.h:434
const ActualMatrixType & matrix() const
Definition IterativeSolverBase.h:419
The matrix class, also used for vectors and row-vectors.
Definition Matrix.h:180
#define abs(x)
Definition datatypes.h:17
set noclip points set clip one set noclip two set bar set border lt lw set xdata set ydata set zdata set x2data set y2data set boxwidth set dummy x
Definition gnuplot_common_settings.hh:12
@ NumericalIssue
Definition Constants.h:444
@ Success
Definition Constants.h:442
@ NoConvergence
Definition Constants.h:446
RealScalar s
Definition level1_cplx_impl.h:126
RealScalar alpha
Definition level1_cplx_impl.h:147
DenseIndex ret
Definition level1_cplx_impl.h:44
const Scalar & y
Definition MathFunctions.h:821
bool bicgstab(const MatrixType &mat, const Rhs &rhs, Dest &x, const Preconditioner &precond, Index &iters, typename Dest::RealScalar &tol_error)
Definition BiCGSTAB.h:29
@ Rhs
Definition TensorContractionMapper.h:18
Namespace containing all symbols from the Eigen library.
Definition bench_norm.cpp:85
EIGEN_DEFAULT_DENSE_INDEX_TYPE Index
The Index type as used for the API.
Definition Meta.h:74
Definition BandTriangularSolver.h:13
Definition EigenBase.h:30
Holds information about the various numeric (i.e. scalar) types allowed by Eigen.
Definition NumTraits.h:233
_Preconditioner Preconditioner
Definition BiCGSTAB.h:121
_MatrixType MatrixType
Definition BiCGSTAB.h:120
Definition ForwardDeclarations.h:17