Go to the documentation of this file.
11 #ifndef EIGEN_BICGSTAB_H
12 #define EIGEN_BICGSTAB_H
28 template<
typename MatrixType,
typename Rhs,
typename Dest,
typename Preconditioner>
30 const Preconditioner& precond,
Index& iters,
39 Index maxIters = iters;
67 while ( r.squaredNorm() > tol2 &&
i<maxIters )
72 if (
abs(rho) < eps2*r0_sqnorm)
78 rho = r0_sqnorm = r.squaredNorm();
87 v.noalias() =
mat *
y;
93 t.noalias() =
mat *
z;
104 tol_error =
sqrt(r.squaredNorm()/rhs_sqnorm);
111 template<
typename _MatrixType,
112 typename _Preconditioner = DiagonalPreconditioner<typename _MatrixType::Scalar> >
117 template<
typename _MatrixType,
typename _Preconditioner>
157 template<
typename _MatrixType,
typename _Preconditioner>
187 template<
typename MatrixDerived>
193 template<
typename Rhs,
typename Dest>
212 #endif // EIGEN_BICGSTAB_H
MatrixType::Scalar Scalar
Namespace containing all symbols from the Eigen library.
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
_Preconditioner Preconditioner
bool bicgstab(const MatrixType &mat, const Rhs &rhs, Dest &x, const Preconditioner &precond, Index &iters, typename Dest::RealScalar &tol_error)
BiCGSTAB(const EigenBase< MatrixDerived > &A)
double beta(double a, double b)
Index maxIterations() const
MatrixType::RealScalar RealScalar
Map< Matrix< T, Dynamic, Dynamic, ColMajor >, 0, OuterStride<> > matrix(T *data, int rows, int cols, int stride)
Base class for linear iterative solvers.
NumTraits< Scalar >::Real RealScalar
A bi conjugate gradient stabilized solver for sparse square problems.
_Preconditioner Preconditioner
const ActualMatrixType & matrix() const
Array< int, Dynamic, 1 > v
IterativeSolverBase< BiCGSTAB > Base
void _solve_vector_with_guess_impl(const Rhs &b, Dest &x) const
Preconditioner m_preconditioner
Jet< T, N > sqrt(const Jet< T, N > &f)
EIGEN_DEFAULT_DENSE_INDEX_TYPE Index
The Index type as used for the API.
gtsam
Author(s):
autogenerated on Sun Dec 22 2024 04:11:12