Public Member Functions | Private Attributes | List of all members
gtsam::System Class Reference

#include <iterative.h>

Public Member Functions

const MatrixA () const
 
const Vectorb () const
 
Vector gradient (const Vector &x) const
 
void multiplyInPlace (const Vector &x, Vector &e) const
 
Vector operator* (const Vector &x) const
 
Vector operator^ (const Vector &e) const
 
void print (const std::string &s="System") const
 
 System (const Matrix &A, const Vector &b)
 
void transposeMultiplyAdd (double alpha, const Vector &e, Vector &x) const
 

Private Attributes

const MatrixA_
 
const Vectorb_
 

Detailed Description

Helper class encapsulating the combined system |Ax-b_|^2 Needed to run Conjugate Gradients on matrices

Definition at line 44 of file iterative.h.

Constructor & Destructor Documentation

◆ System()

gtsam::System::System ( const Matrix A,
const Vector b 
)
inline

Definition at line 52 of file iterative.h.

Member Function Documentation

◆ A()

const Matrix& gtsam::System::A ( ) const
inline

Access A matrix

Definition at line 57 of file iterative.h.

◆ b()

const Vector& gtsam::System::b ( ) const
inline

Access b vector

Definition at line 60 of file iterative.h.

◆ gradient()

Vector gtsam::System::gradient ( const Vector x) const
inline

gradient of objective function 0.5*|Ax-b_|^2 at x = A_'*(Ax-b_)

Definition at line 73 of file iterative.h.

◆ multiplyInPlace()

void gtsam::System::multiplyInPlace ( const Vector x,
Vector e 
) const
inline

Apply operator A in place

Definition at line 83 of file iterative.h.

◆ operator*()

Vector gtsam::System::operator* ( const Vector x) const
inline

Apply operator A

Definition at line 78 of file iterative.h.

◆ operator^()

Vector gtsam::System::operator^ ( const Vector e) const
inline

Apply operator A'*e

Definition at line 63 of file iterative.h.

◆ print()

void gtsam::System::print ( const std::string &  s = "System") const

Print with optional string

Definition at line 32 of file iterative.cpp.

◆ transposeMultiplyAdd()

void gtsam::System::transposeMultiplyAdd ( double  alpha,
const Vector e,
Vector x 
) const
inline

x += alpha* A'*e

Definition at line 88 of file iterative.h.

Member Data Documentation

◆ A_

const Matrix& gtsam::System::A_
private

Definition at line 47 of file iterative.h.

◆ b_

const Vector& gtsam::System::b_
private

Definition at line 48 of file iterative.h.


The documentation for this class was generated from the following files:


gtsam
Author(s):
autogenerated on Tue Jul 4 2023 02:47:12