PIPS-NLP
Public Member Functions | Public Attributes | Protected Attributes | List of all members
DeSymIndefSolver Class Reference

#include <DeSymIndefSolver.h>

Inheritance diagram for DeSymIndefSolver:
DoubleLinearSolver PetscIterativeSolver_Schur

Public Member Functions

 DeSymIndefSolver (DenseSymMatrix *storage)
 
 DeSymIndefSolver (SparseSymMatrix *storage)
 
virtual void diagonalChanged (int idiag, int extent)
 
virtual int matrixChanged ()
 
virtual void solve (OoqpVector &vec)
 
virtual void solve (GenMatrix &vec)
 
virtual ~DeSymIndefSolver ()
 
- Public Member Functions inherited from DoubleLinearSolver
 DoubleLinearSolver ()
 
virtual void solveTrans (OoqpVector &x)
 
virtual void Lsolve (OoqpVector &x)
 
virtual void Dsolve (OoqpVector &x)
 
virtual void Ltsolve (OoqpVector &x)
 
virtual ~DoubleLinearSolver ()
 

Public Attributes

DenseStorageHandle mStorage
 
- Public Attributes inherited from DoubleLinearSolver
int negEigVal
 
int KryIter
 

Protected Attributes

double * work
 
int lwork
 
int * ipiv
 
SparseSymMatrixsparseMat
 

Detailed Description

A linear solver for dense, symmetric indefinite systems

Constructor & Destructor Documentation

DeSymIndefSolver::DeSymIndefSolver ( DenseSymMatrix storage)
DeSymIndefSolver::DeSymIndefSolver ( SparseSymMatrix storage)
DeSymIndefSolver::~DeSymIndefSolver ( )
virtual

Member Function Documentation

void DeSymIndefSolver::diagonalChanged ( int  idiag,
int  extent 
)
virtual

called if the diagonal elements of the matrix have changed. Triggers a refactorization of the matrix, if necessary.

Parameters
idiagindex of the first diagonal element that changed
extentthe number of diagonal element that changed.

Implements DoubleLinearSolver.

Reimplemented in PetscIterativeSolver_Schur.

int DeSymIndefSolver::matrixChanged ( )
virtual

called if some elements of the matrix have changed. Triggers a refactorization of the matrix, if necessary.

Implements DoubleLinearSolver.

Reimplemented in PetscIterativeSolver_Schur.

void DeSymIndefSolver::solve ( OoqpVector x)
virtual

solves a linear system.

Parameters
xon entry the right hand side of the system to be solved. On exit, the solution.

Implements DoubleLinearSolver.

Reimplemented in PetscIterativeSolver_Schur.

void DeSymIndefSolver::solve ( GenMatrix vec)
virtual

Reimplemented from DoubleLinearSolver.

Member Data Documentation

int* DeSymIndefSolver::ipiv
protected
int DeSymIndefSolver::lwork
protected
DenseStorageHandle DeSymIndefSolver::mStorage
SparseSymMatrix* DeSymIndefSolver::sparseMat
protected
double* DeSymIndefSolver::work
protected

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