Opm::LinearLeastSquares< Scalar > Class Template Reference

Linear least squares calculations and properties. More...

#include <linearleastsquares.hpp>

Public Member Functions

 LinearLeastSquares (const Matrix &A, const Vector &b)
 Constructor. More...
 
void solve ()
 Solve linear least squares system. More...
 
const Vector & x () const
 Read-only vector of calculated coefficient vector. More...
 
Scalar evaluate (const Vector &x) const
 Evaluate regression model at input x vector. More...
 
Scalar residualSumOfSquares () const
 Measure of the discrepancy between data and regression model. More...
 
Scalar explainedSumOfSquares () const
 Value for how well regression model represents the model. More...
 
Scalar totalSumOfSquares () const
 Sum of all squared differences. More...
 
Scalar RSquared () const
 Coefficient of determination. More...
 

Detailed Description

template<class Scalar>
class Opm::LinearLeastSquares< Scalar >

Linear least squares calculations and properties.

Warning
Do not use with large matrices since matrix inversion is LU decomposition

Constructor & Destructor Documentation

◆ LinearLeastSquares()

template<class Scalar >
Opm::LinearLeastSquares< Scalar >::LinearLeastSquares ( const Matrix &  A,
const Vector &  b 
)
inline

Constructor.

Parameters
ACoefficient matrix
bRight-hand side (data) vector

Member Function Documentation

◆ evaluate()

template<class Scalar >
Scalar Opm::LinearLeastSquares< Scalar >::evaluate ( const Vector &  x) const
inline

Evaluate regression model at input x vector.

Parameters
xInput vector
Returns
Regression model value

References Opm::LinearLeastSquares< Scalar >::x().

◆ explainedSumOfSquares()

template<class Scalar >
Scalar Opm::LinearLeastSquares< Scalar >::explainedSumOfSquares ( ) const
inline

Value for how well regression model represents the model.

Returns
Model sum of squares

Referenced by Opm::LinearLeastSquares< Scalar >::RSquared().

◆ residualSumOfSquares()

template<class Scalar >
Scalar Opm::LinearLeastSquares< Scalar >::residualSumOfSquares ( ) const
inline

Measure of the discrepancy between data and regression model.

Returns
Sum of the square of residual

◆ RSquared()

template<class Scalar >
Scalar Opm::LinearLeastSquares< Scalar >::RSquared ( ) const
inline

Coefficient of determination.

Typical value for how well a regression model fits the data

Returns
R^2 value

References Opm::LinearLeastSquares< Scalar >::explainedSumOfSquares(), and Opm::LinearLeastSquares< Scalar >::totalSumOfSquares().

◆ solve()

template<class Scalar >
void Opm::LinearLeastSquares< Scalar >::solve ( )
inline

Solve linear least squares system.

Done by solving the normal equations: (A^T*A)*x = A^T*b

Referenced by Opm::TpsaModel< TypeTag >::stress().

◆ totalSumOfSquares()

template<class Scalar >
Scalar Opm::LinearLeastSquares< Scalar >::totalSumOfSquares ( ) const
inline

Sum of all squared differences.

Total sum of squares = explained sum of squares + residual sum of squares

Returns
Total sum of squares

Referenced by Opm::LinearLeastSquares< Scalar >::RSquared().

◆ x()

template<class Scalar >
const Vector & Opm::LinearLeastSquares< Scalar >::x ( ) const
inline

Read-only vector of calculated coefficient vector.

Returns
Coeff. vector

Referenced by Opm::LinearLeastSquares< Scalar >::evaluate(), and Opm::TpsaModel< TypeTag >::stress().


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