GNU Octave  4.0.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Public Types | Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
SVD Class Reference

#include "dbleSVD.h"

Collaboration diagram for SVD:
Collaboration graph
[legend]

Public Types

enum  driver { GESVD, GESDD }
 
enum  type { std, economy, sigma_only }
 

Public Member Functions

 SVD (void)
 
 SVD (const Matrix &a, type svd_type=SVD::std, driver svd_driver=SVD::GESVD)
 
 SVD (const Matrix &a, octave_idx_type &info, type svd_type=SVD::std, driver svd_driver=SVD::GESVD)
 
 SVD (const SVD &a)
 
 ~SVD (void)
 
Matrix left_singular_matrix (void) const
 
SVDoperator= (const SVD &a)
 
Matrix right_singular_matrix (void) const
 
DiagMatrix singular_values (void) const
 

Private Member Functions

octave_idx_type init (const Matrix &a, type svd_type=std, driver svd_driver=GESVD)
 

Private Attributes

Matrix left_sm
 
Matrix right_sm
 
DiagMatrix sigma
 
SVD::type type_computed
 

Friends

std::ostream & operator<< (std::ostream &os, const SVD &a)
 

Detailed Description

Definition at line 31 of file dbleSVD.h.

Member Enumeration Documentation

Enumerator
GESVD 
GESDD 

Definition at line 44 of file dbleSVD.h.

enum SVD::type
Enumerator
std 
economy 
sigma_only 

Definition at line 37 of file dbleSVD.h.

Constructor & Destructor Documentation

SVD::SVD ( void  )
inline

Definition at line 50 of file dbleSVD.h.

SVD::SVD ( const Matrix a,
type  svd_type = SVD::std,
driver  svd_driver = SVD::GESVD 
)
inline

Definition at line 52 of file dbleSVD.h.

SVD::SVD ( const Matrix a,
octave_idx_type info,
type  svd_type = SVD::std,
driver  svd_driver = SVD::GESVD 
)
inline

Definition at line 59 of file dbleSVD.h.

SVD::SVD ( const SVD a)
inline

Definition at line 66 of file dbleSVD.h.

SVD::~SVD ( void  )
inline

Definition at line 84 of file dbleSVD.h.

Member Function Documentation

octave_idx_type SVD::init ( const Matrix a,
SVD::type  svd_type = std,
SVD::driver  svd_driver = GESVD 
)
private
Matrix SVD::left_singular_matrix ( void  ) const

Definition at line 58 of file dbleSVD.cc.

References left_sm, sigma_only, and type_computed.

Referenced by Fsvd(), operator<<(), and Matrix::pseudo_inverse().

SVD& SVD::operator= ( const SVD a)
inline

Definition at line 71 of file dbleSVD.h.

References left_sm, right_sm, sigma, and type_computed.

Matrix SVD::right_singular_matrix ( void  ) const

Definition at line 71 of file dbleSVD.cc.

References right_sm, sigma_only, and type_computed.

Referenced by Fsvd(), null(), operator<<(), and Matrix::pseudo_inverse().

DiagMatrix SVD::singular_values ( void  ) const
inline

Definition at line 86 of file dbleSVD.h.

Referenced by Fsvd(), null(), operator<<(), and Matrix::pseudo_inverse().

Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  os,
const SVD a 
)
friend

Definition at line 204 of file dbleSVD.cc.

Member Data Documentation

Matrix SVD::left_sm
private

Definition at line 99 of file dbleSVD.h.

Referenced by init(), left_singular_matrix(), and operator=().

Matrix SVD::right_sm
private

Definition at line 100 of file dbleSVD.h.

Referenced by init(), operator=(), and right_singular_matrix().

DiagMatrix SVD::sigma
private

Definition at line 98 of file dbleSVD.h.

Referenced by init(), and operator=().

SVD::type SVD::type_computed
private

Definition at line 96 of file dbleSVD.h.

Referenced by init(), left_singular_matrix(), operator=(), and right_singular_matrix().


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