Dakota  Version 6.15 Explore and Predict with Confidence
SVDSolver Class Reference

The SVDSolver class is used to solve linear systems with the singular value decomposition. More...

Inheritance diagram for SVDSolver:

## Public Member Functions

SVDSolver ()
Constructor.

~SVDSolver ()
Destructor.

bool is_factorized () const override
Query to determine if the matrix of the solver has been factored.

void factorize (const MatrixXd &A) override
Perform the matrix factorization for the linear solver matrix. More...

void solve (const MatrixXd &A, const MatrixXd &b, MatrixXd &x) override
Find a solution to Ax = b. More...

void solve (const MatrixXd &b, MatrixXd &x) override
Find a solution to Ax = b when A is already factorized. More...

Public Member Functions inherited from LinearSolverBase
LinearSolverBase ()
Constructor.

~LinearSolverBase ()
Destructor.

## Private Attributes

std::shared_ptr< Eigen::BDCSVD
< MatrixXd > >
SVD_Ptr

## Additional Inherited Members

Public Types inherited from LinearSolverBase
enum  SOLVER_TYPE {
CHOLESKY, EQ_CONS_LEAST_SQ_REGRESSION, LASSO_REGRESSION, LEAST_ANGLE_REGRESSION,
LU, ORTHOG_MATCH_PURSUIT, QR_LEAST_SQ_REGRESSION, SVD_LEAST_SQ_REGRESSION
}
How best to Doxygenate class enums? RWH.

Static Public Member Functions inherited from LinearSolverBase
static SOLVER_TYPE solver_type (const std::string &solver_name)
Convert solver name to enum type. More...

## Detailed Description

The SVDSolver class is used to solve linear systems with the singular value decomposition.

## Member Function Documentation

 void factorize ( const MatrixXd & A)
overridevirtual

Perform the matrix factorization for the linear solver matrix.

Parameters
 [in] A The incoming matrix to factorize.

Reimplemented from LinearSolverBase.

Referenced by SVDSolver::solve().

 void solve ( const MatrixXd & A, const MatrixXd & b, MatrixXd & x )
overridevirtual

Find a solution to Ax = b.

Parameters
 [in] A The linear system left-hand-side matrix. [in] b The linear system right-hand-side (multi-)vector. [in] x The linear system solution (multi-)vector.

Reimplemented from LinearSolverBase.

References SVDSolver::factorize().

 void solve ( const MatrixXd & b, MatrixXd & x )
overridevirtual

Find a solution to Ax = b when A is already factorized.

Parameters
 [in] b The linear system right-hand-side (multi-)vector. [in] x The linear system solution (multi-)vector.

Reimplemented from LinearSolverBase.

The documentation for this class was generated from the following files:
• UtilLinearSolvers.hpp
• UtilLinearSolvers.cpp