FEMTIC
Public Member Functions | Private Member Functions | List of all members
RougheningSquareMatrix Class Reference

#include <RougheningSquareMatrix.h>

Inheritance diagram for RougheningSquareMatrix:
Inheritance graph
[legend]
Collaboration diagram for RougheningSquareMatrix:
Collaboration graph
[legend]

Public Member Functions

 RougheningSquareMatrix ()
 
 RougheningSquareMatrix (const int nEq, const int nRhs=1)
 
virtual ~RougheningSquareMatrix ()
 
virtual void setStructureByTripletFormat (const int row, const int col)
 
virtual void setStructureAndAddValueByTripletFormat (const int row, const int col, const double val)
 
virtual void addNonZeroValues (const int row, const int col, const double val)
 
void makeRTRMatrix (DoubleSparseSquareSymmetricMatrix &RTRMatrix, const double smallValueOnDiagonals=0.0) const
 
double calcModelRoughness (const double *modelVec) const
 
double calcModelRoughnessForDifferenceFilter (const double *modelVec) const
 
void calcVectorOfModelRoughness (const double *modelVec, double *roughnessVec) const
 
void postmultiplyDiagonalMatrix (const double *diagMatrix)
 
void calcSingularValues () const
 
void calcEigenValues () const
 
void outputRougheningMatrix () const
 
- Public Member Functions inherited from DoubleSparseSquareUnsymmetricMatrix
 DoubleSparseSquareUnsymmetricMatrix ()
 
 DoubleSparseSquareUnsymmetricMatrix (const int nEq, const int nRhs=1)
 
virtual ~DoubleSparseSquareUnsymmetricMatrix ()
 
virtual void initializeMatrixSolver (const std::string &oocHeaderName, const int imode)
 
void makeTansposedMatrix (DoubleSparseSquareUnsymmetricMatrix &tansposedMatrix) const
 
- Public Member Functions inherited from DoubleSparseSquareMatrix
 DoubleSparseSquareMatrix ()
 
 DoubleSparseSquareMatrix (const int nEq, const int nRhs=1)
 
virtual ~DoubleSparseSquareMatrix ()
 
virtual void setNumRowsAndColumns (const int nrows, const int ncols)
 
void setDegreeOfEquation (const int nEq)
 
void initializeMatrixAndRhsVectors (const int nEq, const int nRhs)
 
void analysisPhaseMatrixSolver ()
 
void factorizationPhaseMatrixSolver ()
 
void solvePhaseMatrixSolver (double *solution, const long long iRhsStart, const int nRhs)
 
void solvePhaseMatrixSolver (double *solution)
 
void solvePhaseMatrixSolver (const int nrhs, double *rhs, double *solution)
 
void releaseMemoryMatrixSolver ()
 
void writeMemoryRequiredByMatrixSolver ()
 
virtual void releaseMemory ()
 
int getDegreeOfEquation () const
 
- Public Member Functions inherited from DoubleSparseMatrix
 DoubleSparseMatrix ()
 
 DoubleSparseMatrix (const int nrows, const int ncols, const int nrhs=1)
 
virtual ~DoubleSparseMatrix ()
 
void convertToCRSFormat ()
 
void zeroClearNonZeroValues ()
 
void addRightHandSideVector (const int row, const double val, const int irhs=0)
 
void zeroClearRightHandSideVector ()
 
virtual void initializeMatrixAndRhsVectors (const int nrows, const int ncols, const int nrhs)
 
int getNumRows () const
 
int getNumColumns () const
 
int getNumRightHandSideVectors () const
 
bool hasConvertedToCRSFormat () const
 
void reallocateMemoryForRightHandSideVectors (const int nrhs)
 
void copyRhsVector (double *vecOut) const
 
void debugWriteMatrix () const
 
void debugWriteRightHandSide () const
 
int getRowIndexCRS (const int iRow) const
 
int getColumnsCRS (const int iNonZero) const
 
double getValueCRS (const int iNonZero) const
 
double getRightHandSideVector (const int row, const int irhs=0) const
 
void calcMatrixVectorProduct (const double *invVec, double *outVec) const
 
void calcMatrixVectorProductUsingTransposedMatrix (const double *invVec, double *outVec) const
 

Private Member Functions

 RougheningSquareMatrix (const RougheningSquareMatrix &matrix)
 
RougheningSquareMatrixoperator= (const RougheningSquareMatrix &rhs)
 

Additional Inherited Members

- Protected Member Functions inherited from DoubleSparseMatrix
void deleteTripletMatrix ()
 
- Protected Attributes inherited from DoubleSparseSquareMatrix
PARDISOSolverDouble m_pardisoSolver
 
- Protected Attributes inherited from DoubleSparseMatrix
int m_numRows
 
int m_numColumns
 
int m_numNonZeros
 
int m_numRightHandSideVectors
 
bool m_hasConvertedToCRSFormat
 
std::map< int, double > * m_matrixTripletFormat
 
long long int * m_rowIndex
 
long long int * m_columns
 
double * m_values
 
double * m_rightHandSideVector
 

Constructor & Destructor Documentation

◆ RougheningSquareMatrix() [1/3]

RougheningSquareMatrix::RougheningSquareMatrix ( )
explicit

◆ RougheningSquareMatrix() [2/3]

RougheningSquareMatrix::RougheningSquareMatrix ( const int  nEq,
const int  nRhs = 1 
)
explicit

◆ ~RougheningSquareMatrix()

RougheningSquareMatrix::~RougheningSquareMatrix ( )
virtual

◆ RougheningSquareMatrix() [3/3]

RougheningSquareMatrix::RougheningSquareMatrix ( const RougheningSquareMatrix matrix)
private

Member Function Documentation

◆ addNonZeroValues()

void RougheningSquareMatrix::addNonZeroValues ( const int  row,
const int  col,
const double  val 
)
virtual

Reimplemented from DoubleSparseMatrix.

◆ calcEigenValues()

void RougheningSquareMatrix::calcEigenValues ( ) const

◆ calcModelRoughness()

double RougheningSquareMatrix::calcModelRoughness ( const double *  modelVec) const

◆ calcModelRoughnessForDifferenceFilter()

double RougheningSquareMatrix::calcModelRoughnessForDifferenceFilter ( const double *  modelVec) const

◆ calcSingularValues()

void RougheningSquareMatrix::calcSingularValues ( ) const

◆ calcVectorOfModelRoughness()

void RougheningSquareMatrix::calcVectorOfModelRoughness ( const double *  modelVec,
double *  roughnessVec 
) const

◆ makeRTRMatrix()

void RougheningSquareMatrix::makeRTRMatrix ( DoubleSparseSquareSymmetricMatrix RTRMatrix,
const double  smallValueOnDiagonals = 0.0 
) const

◆ operator=()

RougheningSquareMatrix & RougheningSquareMatrix::operator= ( const RougheningSquareMatrix rhs)
private

◆ outputRougheningMatrix()

void RougheningSquareMatrix::outputRougheningMatrix ( ) const

◆ postmultiplyDiagonalMatrix()

void RougheningSquareMatrix::postmultiplyDiagonalMatrix ( const double *  diagMatrix)

◆ setStructureAndAddValueByTripletFormat()

void RougheningSquareMatrix::setStructureAndAddValueByTripletFormat ( const int  row,
const int  col,
const double  val 
)
virtual

Reimplemented from DoubleSparseMatrix.

◆ setStructureByTripletFormat()

void RougheningSquareMatrix::setStructureByTripletFormat ( const int  row,
const int  col 
)
virtual

Reimplemented from DoubleSparseMatrix.


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