7 #ifndef __IPGENTMATRIX_HPP__ 8 #define __IPGENTMATRIX_HPP__ 17 class GenTMatrixSpace;
66 Index Nonzeros()
const;
69 const Index* Irows()
const;
72 const Index* Jcols()
const;
95 virtual void MultVectorImpl(
103 virtual void TransMultVectorImpl(
110 virtual bool HasValidNumbersImpl()
const;
112 virtual void ComputeRowAMaxImpl(
117 virtual void ComputeColAMaxImpl(
126 const std::string& name,
128 const std::string& prefix
131 PrintImplOffset(jnlst, level, category, name, indent, prefix, 0);
135 void PrintImplOffset(
139 const std::string& name,
141 const std::string& prefix,
145 friend class ParGenMatrix;
226 return MakeNewGenTMatrix();
252 const Index nonZeros_;
261 Number* AllocateInternalStorage()
const;
266 void FreeInternalStorage(
GenTMatrix * MakeNewGenTMatrix() const
Method for creating a new matrix of this specific type.
This is the matrix space for a GenTMatrix with fixed sparsity structure.
Index Nonzeros() const
Number of non-zeros in the sparse matrix.
const Index * Irows() const
Row index of each non-zero element (counting starts at 1)
const Index * Irows() const
Array with Row indices (counting starts at 1)
EJournalLevel
Print Level Enum.
const Index * Jcols() const
Array with Column indices (counting starts at 1)
ipindex Index
Type of all indices of vectors, matrices etc.
This file contains a base class for all exceptions and a set of macros to help with exceptions...
bool initialized_
Flag for Initialization.
MatrixSpace base class, corresponding to the Matrix base class.
ipnumber Number
Type of all numbers.
const GenTMatrixSpace * owner_space_
Copy of the owner space as a GenTMatrixSpace instead of a MatrixSpace.
Class for general matrices stored in triplet format.
const Index * Jcols() const
Column index of each non-zero element (counting starts at 1)
virtual Matrix * MakeNew() const
Pure virtual method for creating a new Matrix of the corresponding type.
Class responsible for all message output.
Index Nonzeros() const
Number of nonzero entries.
~GenTMatrixSpace()
Destructor.
const Number * Values() const
Array with nonzero values (const version).
Number * values_
Values of nonzeros.
Number * Values()
Array with the nonzero values of this matrix (non-const version).
virtual void PrintImpl(const Journalist &jnlst, EJournalLevel level, EJournalCategory category, const std::string &name, Index indent, const std::string &prefix) const
Print detailed information about the matrix.
EJournalCategory
Category Selection Enum.