27 class GaussianFactorGraph;
31 struct PreconditionerParameters;
39 typedef std::shared_ptr<PCGSolverParameters> shared_ptr;
44 void print(std::ostream &os)
const override;
48 return *preconditioner_;
52 void print(
const std::string &s)
const;
54 std::shared_ptr<PreconditionerParameters> preconditioner_;
56 void setPreconditionerParams(
const std::shared_ptr<PreconditionerParameters> preconditioner);
65 typedef std::shared_ptr<PCGSolver> shared_ptr;
70 std::shared_ptr<Preconditioner> preconditioner_;
78 using IterativeSolver::optimize;
81 const KeyInfo &keyInfo,
const std::map<Key, Vector> &lambda,
94 const std::map<Key, Vector> &lambda);
99 const std::map<Key, Vector> &lambda_;
101 void residual(
const Vector &x, Vector &r)
const;
102 void multiply(
const Vector &x, Vector& y)
const;
103 void leftPrecondition(
const Vector &x, Vector &y)
const;
104 void rightPrecondition(
const Vector &x, Vector &y)
const;
105 void scal(
const double alpha, Vector &x)
const;
106 double dot(
const Vector &x,
const Vector &y)
const;
107 void axpy(
const double alpha,
const Vector &x, Vector &y)
const;
109 void getb(Vector &b)
const;
117 const std::map<Key, size_t> & dimensions);
Definition: IterativeSolver.h:85
Definition: PCGSolver.h:36
double dot(const V1 &a, const V2 &b)
Definition: Vector.h:195
Definition: Preconditioner.h:24
Definition: Ordering.h:37
Definition: VectorValues.h:74
Implementation of Conjugate Gradient solver for a linear system.
Definition: PCGSolver.h:62
Definition: ConjugateGradientSolver.h:29
GTSAM_EXPORT Point3 optimize(const NonlinearFactorGraph &graph, const Values &values, Key landmarkKey)
VectorValues buildVectorValues(const Vector &v, const Ordering &ordering, const std::map< Key, size_t > &dimensions)
Create VectorValues from a Vector.
GTSAM_EXPORT void print(const Matrix &A, const std::string &s, std::ostream &stream)
Definition: IterativeSolver.h:125
Definition: Preconditioner.h:64
Definition: chartTesting.h:28
Definition: IterativeSolver.h:43
Definition: PCGSolver.h:89
GTSAM_EXPORT void axpy(double alpha, const Errors &x, Errors &y)
BLAS level 2 style AXPY, y := alpha*x + y
Definition: GaussianFactorGraph.h:73