#include <SparseSystem.h>

Public Member Functions | |
| virtual void | add_row (const SparseVector &new_row, double new_r) |
| virtual int | add_row_givens (const SparseVector &new_row, double new_r) |
| void | append_new_rows (int num) |
| void | apply_givens (int row, int col, double *c_givens=NULL, double *s_givens=NULL) |
| const SparseSystem & | operator= (const SparseSystem &mat) |
| const Eigen::VectorXd & | rhs () const |
| void | set_rhs (const Eigen::VectorXd &rhs) |
| virtual Eigen::VectorXd | solve () const |
| SparseSystem (int num_rows, int num_cols) | |
| SparseSystem (const SparseSystem &mat) | |
| SparseSystem (const SparseSystem &mat, int num_rows, int num_cols, int first_row=0, int first_col=0) | |
| SparseSystem (int num_rows, int num_cols, SparseVector_p *rows, const Eigen::VectorXd &rhs) | |
| virtual | ~SparseSystem () |
Private Attributes | |
| Eigen::VectorXd | _rhs |
Definition at line 36 of file SparseSystem.h.
| isam::SparseSystem::SparseSystem | ( | int | num_rows, |
| int | num_cols | ||
| ) |
Definition at line 43 of file SparseSystem.cpp.
| isam::SparseSystem::SparseSystem | ( | const SparseSystem & | mat | ) |
Definition at line 46 of file SparseSystem.cpp.
| isam::SparseSystem::SparseSystem | ( | const SparseSystem & | mat, |
| int | num_rows, | ||
| int | num_cols, | ||
| int | first_row = 0, |
||
| int | first_col = 0 |
||
| ) |
Definition at line 49 of file SparseSystem.cpp.
| isam::SparseSystem::SparseSystem | ( | int | num_rows, |
| int | num_cols, | ||
| SparseVector_p * | rows, | ||
| const Eigen::VectorXd & | rhs | ||
| ) |
| isam::SparseSystem::~SparseSystem | ( | ) | [virtual] |
Definition at line 58 of file SparseSystem.cpp.
| void isam::SparseSystem::add_row | ( | const SparseVector & | new_row, |
| double | new_r | ||
| ) | [virtual] |
Insert a new row
| new_row | The new sparse measurement row to add. |
| new_r | New right hand side entry. |
Definition at line 86 of file SparseSystem.cpp.
| int isam::SparseSystem::add_row_givens | ( | const SparseVector & | new_row, |
| double | new_r | ||
| ) | [virtual] |
Insert a new measurement row and triangulate using Givens rotations
| new_row | The new sparse measurement row to add. |
| new_r | New right hand side entry. |
Definition at line 95 of file SparseSystem.cpp.
| void isam::SparseSystem::append_new_rows | ( | int | num | ) | [virtual] |
Append new rows to matrix.
| num | Number of rows to add. |
Reimplemented from isam::SparseMatrix.
Definition at line 81 of file SparseSystem.cpp.
| void isam::SparseSystem::apply_givens | ( | int | row, |
| int | col, | ||
| double * | c_givens = NULL, |
||
| double * | s_givens = NULL |
||
| ) | [virtual] |
Note: While rows are passed in, the rhs is required to already contain the new entry - necessary because we cannot change the signature of the function.
Reimplemented from isam::SparseMatrix.
Definition at line 71 of file SparseSystem.cpp.
| const SparseSystem & isam::SparseSystem::operator= | ( | const SparseSystem & | mat | ) |
Definition at line 61 of file SparseSystem.cpp.
| const Eigen::VectorXd& isam::SparseSystem::rhs | ( | ) | const [inline] |
Definition at line 46 of file SparseSystem.h.
| void isam::SparseSystem::set_rhs | ( | const Eigen::VectorXd & | rhs | ) | [inline] |
Definition at line 47 of file SparseSystem.h.
| VectorXd isam::SparseSystem::solve | ( | ) | const [virtual] |
Solve equation system by backsubstitution.
Definition at line 119 of file SparseSystem.cpp.
Eigen::VectorXd isam::SparseSystem::_rhs [private] |
Definition at line 37 of file SparseSystem.h.