SourcePro® API Reference Guide

 
Loading...
Searching...
No Matches
RWSVDDivConqCalc< TypeT > Class Template Reference

Computes a singular value decomposition of a matrix using divide-and-conquer. More...

#include <rw/lapack/svddccalc.h>

Static Public Member Functions

static bool computeSVD (const RWGenMat< TypeT > &A, RWGenMat< TypeT > &U, RWGenMat< TypeT > &VT, RWMathVec< norm_type > &sigma, norm_type tolerance=0, int numLeftVectors=-1, int numRightVectors=-1)
 

Private Types

typedef rw_numeric_traits< TypeT >::norm_type norm_type
 

Detailed Description

template<class TypeT>
class RWSVDDivConqCalc< TypeT >

Computes a singular value decomposition of a matrix A using divide-and-conquer. Based on the LAPACK routine xgesdd. This class may be used as the SVDCalc template parameter for the classes RWSVDecomp, RWSVServer and RWLeastSqSV.

Synopsis
#include <rw/lapack/svddccalc.h>

Member Typedef Documentation

◆ norm_type

template<class TypeT >
typedef rw_numeric_traits<TypeT>::norm_type RWSVDDivConqCalc< TypeT >::norm_type
private

Typedef for the usual return type of numerical norm-like functions. For more information, see rw_numeric_traits<T>::norm_type.

Member Function Documentation

◆ computeSVD()

template<class TypeT >
static bool RWSVDDivConqCalc< TypeT >::computeSVD ( const RWGenMat< TypeT > & A,
RWGenMat< TypeT > & U,
RWGenMat< TypeT > & VT,
RWMathVec< norm_type > & sigma,
norm_type tolerance = 0,
int numLeftVectors = -1,
int numRightVectors = -1 )
static

where norm_type is a typedef for rw_numeric_traits<T>::norm_type. The return value is true if the decomposition was successfully computed.

Parameters
AThe input matrix for which the singular value decomposition is being computed.
UThe output matrix of left singular victors (the columns of U are the left singular vectors).
VTThe output matrix of right singular victors (the rows of VT are the right singular victors).
sigmaThe output vector of singular values in descending order.
toleranceThe input singular values with magnitude less than tolerance will be set to zero.
numLeftVectorsThe input number of left vectors to compute. If the number is less than zero, the default number of vectors will be computed (it is up to the developer to determine what the default is).
numRightVectorsThe input number of right vectors to compute. If the number is less than zero, the default number of vectors will be computed (it is up to the developer to determine what the default is).

Copyright © 2024 Rogue Wave Software, Inc., a Perforce company. All Rights Reserved.