23 #include <vnl/algo/vnl_algo_export.h> 25 # include <vcl_msvc_warnings.h> 90 void zero_out_absolute(
double tol = 1e-8);
93 void zero_out_relative(
double tol = 1e-8);
95 unsigned int rank ()
const {
return rank_; }
99 singval_t determinant_magnitude ()
const;
100 singval_t norm()
const;
109 T
U(
int i,
int j)
const {
return U_(i,j); }
130 T
V(
int i,
int j)
const {
return V_(i,j); }
149 void solve (T
const *rhs, T *lhs)
const;
162 vnl_matrix<T> nullspace(
int required_nullspace_dimension)
const;
165 vnl_matrix<T> left_nullspace(
int required_nullspace_dimension)
const;
176 bool valid()
const {
return valid_; }
unsigned int rank() const
An ordinary mathematical matrix.
vnl_svd< T > & operator=(vnl_svd< T > const &)
Templated zero/one/precision.
singval_t well_condition() const
vnl_diag_matrix< singval_t > const & Winverse() const
vnl_matrix< T > & U()
Return the matrix U.
vnl_diag_matrix< singval_t > Winverse_
singval_t sigma_min() const
vnl_matrix< T > inverse() const
std::ostream & operator<<(std::ostream &s, vnl_decnum const &r)
decimal output.
vnl_diag_matrix< singval_t > W_
singval_t & W(int i, int j)
vnl_diag_matrix< singval_t > & Winverse()
vnl_matrix< T > const & V() const
Return the matrix V.
T V(int i, int j) const
Return the matrix V's (i,j)th entry (to avoid svd.V()(i,j); ).
An ordinary mathematical matrix.
Mathematical vector class, templated by type of element.
vnl_matrix< T > const & U() const
Return the matrix U.
vnl_matrix< T > & V()
Return the matrix V.
vnl_svd(vnl_svd< T > const &)
Contains class for diagonal matrices.
singval_t sigma_max() const
Holds the singular value decomposition of a vnl_matrix.
vnl_numeric_traits< T >::abs_t singval_t
The singular values of a matrix of complex<T> are of type T, not complex<T>.
vnl_matrix< T > vnl_svd_inverse(vnl_matrix< T > const &m)
vnl_diag_matrix< singval_t > & W()
Get at DiagMatrix (q.v.) of singular values, sorted from largest to smallest.
vnl_diag_matrix< singval_t > const & W() const
Get at DiagMatrix (q.v.) of singular values, sorted from largest to smallest.
T U(int i, int j) const
Return the matrix U's (i,j)th entry (to avoid svd.U()(i,j); ).
int singularities() const