24 #ifndef DBLDEF_COMPLEX_SPARSE_MATRIX
25 #define DBLDEF_COMPLEX_SPARSE_MATRIX
57 virtual void addNonZeroValues(
const int row,
const int col,
const std::complex<double>& val );
108 void copyRhsVector(
const int numCompsCopied,
const int*
const compsCopied, std::complex<double>* vecOut )
const;
Definition: ComplexSparseMatrix.h:31
long long int * m_rowIndex
Definition: ComplexSparseMatrix.h:143
void convertToCRSFormat()
Definition: ComplexSparseMatrix.cpp:176
virtual void initializeMatrixAndRhsVectors(const int nrows, const int ncols, const int nrhs)
Definition: ComplexSparseMatrix.cpp:393
std::complex< double > * m_values
Definition: ComplexSparseMatrix.h:149
int m_numNonZeros
Definition: ComplexSparseMatrix.h:130
int getNumColumns() const
Definition: ComplexSparseMatrix.cpp:463
std::map< int, std::complex< double > > * m_matrixTripletFormat
Definition: ComplexSparseMatrix.h:140
int m_numRows
Definition: ComplexSparseMatrix.h:124
void deleteTripletMatrix()
Definition: ComplexSparseMatrix.cpp:642
virtual ~ComplexSparseMatrix()
Definition: ComplexSparseMatrix.cpp:72
virtual void addNonZeroValues(const int row, const int col, const std::complex< double > &val)
Definition: ComplexSparseMatrix.cpp:249
virtual void addNonZeroValuesWithoutSearchingLocation(const int loc, const std::complex< double > &val)
Definition: ComplexSparseMatrix.cpp:336
int m_numRightHandSideVectors
Definition: ComplexSparseMatrix.h:133
void addRightHandSideVector(const int row, const std::complex< double > &val, const int irhs=0)
Definition: ComplexSparseMatrix.cpp:361
virtual void releaseMemory()
Definition: ComplexSparseMatrix.cpp:478
virtual void setStructureAndAddValueByTripletFormat(const int row, const int col, const std::complex< double > &val)
Definition: ComplexSparseMatrix.cpp:155
int getNumRows() const
Definition: ComplexSparseMatrix.cpp:458
bool m_hasConvertedToCRSFormat
Definition: ComplexSparseMatrix.h:136
std::complex< double > * m_rightHandSideVector
Definition: ComplexSparseMatrix.h:152
void debugWriteMatrix() const
Definition: ComplexSparseMatrix.cpp:598
virtual int checkAndGetLocationNonZeroValue(const int row, const int col)
Definition: ComplexSparseMatrix.cpp:289
ComplexSparseMatrix()
Definition: ComplexSparseMatrix.cpp:34
virtual void setStructureByTripletFormat(const int row, const int col)
Definition: ComplexSparseMatrix.cpp:138
virtual void setNumRowsAndColumns(const int nrows, const int ncols)
Definition: ComplexSparseMatrix.cpp:105
void zeroClearRightHandSideVector()
Definition: ComplexSparseMatrix.cpp:383
void debugWriteRightHandSide() const
Definition: ComplexSparseMatrix.cpp:615
void debugWriteNonZeroRightHandSide() const
Definition: ComplexSparseMatrix.cpp:626
void zeroClearNonZeroValues()
Definition: ComplexSparseMatrix.cpp:344
void copyRhsVector(std::complex< double > *vecOut) const
Definition: ComplexSparseMatrix.cpp:571
int getNumRightHandSideVectors() const
Definition: ComplexSparseMatrix.cpp:468
bool hasConvertedToCRSFormat() const
Definition: ComplexSparseMatrix.cpp:473
int m_numColumns
Definition: ComplexSparseMatrix.h:127
void reallocateMemoryForRightHandSideVectors(const int nrhs)
Definition: ComplexSparseMatrix.cpp:514
long long int * m_columns
Definition: ComplexSparseMatrix.h:146
ComplexSparseMatrix & operator=(const ComplexSparseMatrix &rhs)
Definition: ComplexSparseMatrix.cpp:661