aboutsummaryrefslogtreecommitdiffhomepage
path: root/unsupported
diff options
context:
space:
mode:
authorGravatar Gael Guennebaud <g.gael@free.fr>2011-07-26 14:43:20 +0200
committerGravatar Gael Guennebaud <g.gael@free.fr>2011-07-26 14:43:20 +0200
commit3a2cabc2753adab3f5977e8f50c75da85a56eada (patch)
tree175d12a36b29fb643962a30985b2b70604030de0 /unsupported
parent51f706b91616689a6edbd278be5dd9ea9d726dbe (diff)
compilation fix with conjugate_gradient_solve_retval_with_guess
Diffstat (limited to 'unsupported')
-rw-r--r--unsupported/Eigen/src/IterativeSolvers/ConjugateGradient.h6
-rw-r--r--unsupported/test/cg.cpp4
2 files changed, 7 insertions, 3 deletions
diff --git a/unsupported/Eigen/src/IterativeSolvers/ConjugateGradient.h b/unsupported/Eigen/src/IterativeSolvers/ConjugateGradient.h
index c8b276dcf..f1bed1116 100644
--- a/unsupported/Eigen/src/IterativeSolvers/ConjugateGradient.h
+++ b/unsupported/Eigen/src/IterativeSolvers/ConjugateGradient.h
@@ -330,13 +330,13 @@ struct solve_retval<ConjugateGradient<_MatrixType,_UpLo,_Preconditioner>, Rhs>
template<typename CG, typename Rhs, typename Guess>
class conjugate_gradient_solve_retval_with_guess
- : solve_retval_base<CG, Rhs>
+ : public solve_retval_base<CG, Rhs>
{
typedef Eigen::internal::solve_retval_base<CG,Rhs> Base;
using Base::dec;
using Base::rhs;
-
- conjugate_gradient_solve_retval_with_guess(const CG& cg, const Rhs& rhs, const Guess guess)
+ public:
+ conjugate_gradient_solve_retval_with_guess(const CG& cg, const Rhs& rhs, const Guess& guess)
: Base(cg, rhs), m_guess(guess)
{}
diff --git a/unsupported/test/cg.cpp b/unsupported/test/cg.cpp
index bc421985e..a9ac81960 100644
--- a/unsupported/test/cg.cpp
+++ b/unsupported/test/cg.cpp
@@ -53,6 +53,10 @@ template<typename Scalar,typename Index> void cg(int size)
x = ConjugateGradient<SparseMatrixType, Lower>().compute(m3).solve(b);
VERIFY(ref_x.isApprox(x,test_precision<Scalar>()) && "ConjugateGradient: solve, full storage, lower");
+ x.setRandom();
+ x = ConjugateGradient<SparseMatrixType, Lower>().compute(m3).solveWithGuess(b,x);
+ VERIFY(ref_x.isApprox(x,test_precision<Scalar>()) && "ConjugateGradient: solveWithGuess, full storage, lower");
+
x = ConjugateGradient<SparseMatrixType, Upper>().compute(m3).solve(b);
VERIFY(ref_x.isApprox(x,test_precision<Scalar>()) && "ConjugateGradient: solve, full storage, upper, single dense rhs");