24 #ifndef DBLDEF_ROUGHENING_MATRIX
25 #define DBLDEF_ROUGHENING_MATRIX
38 explicit RougheningMatrix(
const int nrows,
const int ncols,
const int nRhs = 1 );
50 virtual void addNonZeroValues(
const int row,
const int col,
const double val );
Definition: DoubleSparseMatrix.h:29
Definition: DoubleSparseSquareSymmetricMatrix.h:31
Definition: RougheningMatrix.h:30
virtual void setStructureByTripletFormat(const int row, const int col)
Definition: RougheningMatrix.cpp:52
RougheningMatrix & operator=(const RougheningMatrix &rhs)
Definition: RougheningMatrix.cpp:149
virtual void setStructureAndAddValueByTripletFormat(const int row, const int col, const double val)
Definition: RougheningMatrix.cpp:57
RougheningMatrix()
Definition: RougheningMatrix.cpp:37
void postmultiplyDiagonalMatrix(const double *diagMatrix)
Definition: RougheningMatrix.cpp:130
void outputRougheningMatrix(const std::string &fileName) const
Definition: RougheningMatrix.cpp:155
void makeRTRMatrix(DoubleSparseSquareSymmetricMatrix &RTRMatrix, const double smallValueOnDiagonals=0.0) const
Definition: RougheningMatrix.cpp:68
virtual void addNonZeroValues(const int row, const int col, const double val)
Definition: RougheningMatrix.cpp:63
void calcVectorOfModelRoughness(const double *modelVec, double *roughnessVec) const
Definition: RougheningMatrix.cpp:117
double calcModelRoughness(const double *modelVec) const
Definition: RougheningMatrix.cpp:94
virtual ~RougheningMatrix()
Definition: RougheningMatrix.cpp:47