rwlogo
SourcePro C++ 12.0

SourcePro® C++ API Reference Guide



   SourcePro C++
Documentation Home

RWLeastSqSVDCalc Class Reference
[Parameter Calculation]

Implements the calculation of linear regression parameters using singular value decomposition. More...

#include <rw/analytics/lsqsvd.h>

Inheritance diagram for RWLeastSqSVDCalc:
RWRegressionCalc< double, double >

List of all members.

Public Member Functions

 RWLeastSqSVDCalc (double tol=0.0)
virtual void calc (const RWGenMat< double > &, const RWMathVec< double > &)
virtual RWRegressionCalc
< double, double > * 
clone () const
virtual RWMathVec< double > parameters () const
virtual bool fail () const
virtual RWCString name () const
void setTolerance (double tol)
double getTolerance () const

Detailed Description

Class RWLeastSqSVDCalc implements the calculation of linear regression parameters using singular value decomposition, as described in Section 5.5.1.3, "RWLeastSqSVDCalc" in the Business Analysis Module User's Guide.

Synopsis

 #include <rw/analytics/lsqsvd.h>

 RWLeastSqSVDCalc calc;

Examples

 #include <rw/analytics/lsqsvd.h>
 #include <rw/rstream.h>  // Handles proper inclusion of iostream

 int main() {
  RWGenMat<double> predictorMatrix =
                        "5x2 [1.2 2.1 8 7 3 3.2 6.4 4.6 2 2.3]";
  RWMathVec<double> observationVector = "[2.5 3.7 1.4 2.3 5.6]";
  RWLeastSqSVDCalc svd;

  svd.calc(predictorMatrix, observationVector);

  if ( !svd.fail() )
   cout << "Model parameters: " << svd.parameters() << endl;
  else
   cout << "Parameter calculation failed." << endl;
  return 0;
 }

Constructor & Destructor Documentation

RWLeastSqSVDCalc::RWLeastSqSVDCalc ( double  tol = 0.0  ) 

Constructs an RWLeastSqSVDCalc object with the specified tolerance parameter tol. Singular values whose value is less than tol are discarded.


Member Function Documentation

virtual void RWLeastSqSVDCalc::calc ( const RWGenMat< double > &  ,
const RWMathVec< double > &   
) [virtual]

Calculates the parameters for the regression model. Invoking this method does not affect the state of any existing base calculation.

Implements RWRegressionCalc< double, double >.

virtual RWRegressionCalc<double,double>* RWLeastSqSVDCalc::clone (  )  const [inline, virtual]

Allocates and creates a clone, or exact copy, of the current instance, and returns a pointer to the copy. Caller is responsible for deleting the returned object.

Implements RWRegressionCalc< double, double >.

virtual bool RWLeastSqSVDCalc::fail (  )  const [inline, virtual]

Returns true if the calculation failed.

Implements RWRegressionCalc< double, double >.

double RWLeastSqSVDCalc::getTolerance (  )  const [inline]

Gets the tolerance parameter for the SVD decomposition.

virtual RWCString RWLeastSqSVDCalc::name (  )  const [inline, virtual]

Returns the name of the calculation method.

Implements RWRegressionCalc< double, double >.

virtual RWMathVec<double> RWLeastSqSVDCalc::parameters (  )  const [virtual]

Returns the parameters from the last calculation performed. If the calculation failed, and this method is called, an exception of type RWInternalErr is thrown.

Implements RWRegressionCalc< double, double >.

void RWLeastSqSVDCalc::setTolerance ( double  tol  )  [inline]

Sets the tolerance parameter for the SVD decomposition. Singular values whose value is less than tol are discarded.

 All Classes Functions Variables Typedefs Enumerations Enumerator Friends

© Copyright Rogue Wave Software, Inc. All Rights Reserved.
Rogue Wave and SourcePro are registered trademarks of Rogue Wave Software, Inc. in the United States and other countries. All other trademarks are the property of their respective owners.
Contact Rogue Wave about documentation or support issues.