|
| | WLS (int size=0) |
| | Default constructor or construct with the number of dimensions for the Dynamic case. More...
|
| |
| void | clear () |
| | Clear all the measurements and apply a constant regularisation term. More...
|
| |
| void | add_prior (Precision val) |
| |
| template<class B2 > |
| void | add_prior (const Vector< Size, Precision, B2 > &v) |
| |
| template<class B2 > |
| void | add_prior (const Matrix< Size, Size, Precision, B2 > &m) |
| |
| template<class B2 > |
| void | add_mJ (Precision m, const Vector< Size, Precision, B2 > &J, Precision weight=1) |
| |
| template<int N, class B1 , class B2 , class B3 > |
| void | add_mJ (const Vector< N, Precision, B1 > &m, const Matrix< Size, N, Precision, B2 > &J, const Matrix< N, N, Precision, B3 > &invcov) |
| |
| template<int N, class B1 , class B2 , class B3 > |
| void | add_mJ_rows (const Vector< N, Precision, B1 > &m, const Matrix< N, Size, Precision, B2 > &J, const Matrix< N, N, Precision, B3 > &invcov) |
| |
| template<int N, int S1, class B1 , class B2 , class B3 > |
| void | add_sparse_mJ_rows (const Vector< N, Precision, B1 > &m, const Matrix< N, S1, Precision, B2 > &J1, const int index1, const Matrix< N, N, Precision, B3 > &invcov) |
| |
| template<int N, int S1, int S2, class B1 , class B2 , class B3 , class B4 > |
| void | add_sparse_mJ_rows (const Vector< N, Precision, B1 > &m, const Matrix< N, S1, Precision, B2 > &J1, const int index1, const Matrix< N, S2, Precision, B3 > &J2, const int index2, const Matrix< N, N, Precision, B4 > &invcov) |
| |
| void | compute () |
| |
| void | operator+= (const WLS &meas) |
| |
| Matrix< Size, Size, Precision > & | get_C_inv () |
| | Returns the inverse covariance matrix. More...
|
| |
| const Matrix< Size, Size, Precision > & | get_C_inv () const |
| | Returns the inverse covariance matrix. More...
|
| |
| Vector< Size, Precision > & | get_mu () |
| | Returns the update. With no prior, this is the result of . More...
|
| |
| const Vector< Size, Precision > & | get_mu () const |
| | Returns the update. With no prior, this is the result of . More...
|
| |
| Vector< Size, Precision > & | get_vector () |
| | Returns the vector . More...
|
| |
| const Vector< Size, Precision > & | get_vector () const |
| | Returns the vector . More...
|
| |
| Decomposition< Size, Precision > & | get_decomposition () |
| | Return the decomposition object used to compute . More...
|
| |
| const Decomposition< Size, Precision > & | get_decomposition () const |
| | Return the decomposition object used to compute . More...
|
| |
template<int Size = Dynamic, class Precision = DefaultPrecision, template< int DecompSize, class DecompPrecision > class Decomposition = Cholesky>
class TooN::WLS< Size, Precision, Decomposition >
Performs Gauss-Newton weighted least squares computation.
- Parameters
-
| Size | The number of dimensions in the system |
| Precision | The numerical precision used (double, float etc) |
| Decomposition | The class used to invert the inverse Covariance matrix (must have one integer size and one typename precision template arguments) this is Cholesky by default, but could also be SQSVD |
Definition at line 48 of file wls.h.
template<int Size = Dynamic, class Precision = DefaultPrecision, template< int DecompSize, class DecompPrecision > class Decomposition = Cholesky>
template<int N, int S1, class B1 , class B2 , class B3 >
| void TooN::WLS< Size, Precision, Decomposition >::add_sparse_mJ_rows |
( |
const Vector< N, Precision, B1 > & |
m, |
|
|
const Matrix< N, S1, Precision, B2 > & |
J1, |
|
|
const int |
index1, |
|
|
const Matrix< N, N, Precision, B3 > & |
invcov |
|
) |
| |
|
inline |
Add multiple measurements at once with a sparse Jacobian (much, much more efficiently)
- Parameters
-
| m | The measurements to add |
| J1 | The first block of the Jacobian matrix |
| index1 | starting index for the first block |
| invcov | The inverse covariance of the measurement values |
Definition at line 144 of file wls.h.
template<int Size = Dynamic, class Precision = DefaultPrecision, template< int DecompSize, class DecompPrecision > class Decomposition = Cholesky>
template<int N, int S1, int S2, class B1 , class B2 , class B3 , class B4 >
| void TooN::WLS< Size, Precision, Decomposition >::add_sparse_mJ_rows |
( |
const Vector< N, Precision, B1 > & |
m, |
|
|
const Matrix< N, S1, Precision, B2 > & |
J1, |
|
|
const int |
index1, |
|
|
const Matrix< N, S2, Precision, B3 > & |
J2, |
|
|
const int |
index2, |
|
|
const Matrix< N, N, Precision, B4 > & |
invcov |
|
) |
| |
|
inline |
Add multiple measurements at once with a sparse Jacobian (much, much more efficiently)
- Parameters
-
| m | The measurements to add |
| J1 | The first block of the Jacobian matrix |
| index1 | starting index for the first block |
| J2 | The second block of the Jacobian matrix |
| index2 | starting index for the second block |
| invcov | The inverse covariance of the measurement values |
Definition at line 161 of file wls.h.