Tpetra Matrix/Vector Services Version of the Day
Public Member Functions
Tpetra::MatrixMarket::Banner Class Reference

Parse a Matrix Market banner line. More...

#include <MatrixMarket_Banner.hpp>

List of all members.

Public Member Functions

 Banner (const std::string &line, const bool tolerant=false)
const std::string & objectType () const
 The object type (currently just "matrix")
const std::string & matrixType () const
 Storage type of the matrix.
const std::string & dataType () const
 Data type of matrix entries.
const std::string & symmType () const
 Symmetric storage type.

Detailed Description

Parse a Matrix Market banner line.

Author:
Mark Hoemmen The first line of a Matrix Market - format file, the "banner line," contains information for interpreting the rest of the file. This class parses the first line, canonicalizes the information therein, and stores it for later use.

Definition at line 60 of file MatrixMarket_Banner.hpp.


Constructor & Destructor Documentation

Tpetra::MatrixMarket::Banner::Banner ( const std::string &  line,
const bool  tolerant = false 
)

Constructor

Parameters:
line[in] The banner line to parse
tolerant[in] Whether to parse tolerantly. If false, we adhere strictly to the Matrix Market standard. If true, we allow all kinds of divergence therefrom (including an entirely empty banner line, for which we fill in some sensible defaults).

Definition at line 152 of file MatrixMarket_Banner.cpp.


Member Function Documentation

const std::string& Tpetra::MatrixMarket::Banner::objectType ( ) const [inline]

The object type (currently just "matrix")

Definition at line 73 of file MatrixMarket_Banner.hpp.

const std::string& Tpetra::MatrixMarket::Banner::matrixType ( ) const [inline]

Storage type of the matrix.

"coordinate" means a sparse matrix, stored as (i,j,Aij) triples with one-based indices i and j. "array" means a dense matrix, stored in column-major order with one entry per line.

Definition at line 80 of file MatrixMarket_Banner.hpp.

const std::string& Tpetra::MatrixMarket::Banner::dataType ( ) const [inline]

Data type of matrix entries.

Data type of the matrix entries: "real", "complex", "integer", or "pattern".

Definition at line 86 of file MatrixMarket_Banner.hpp.

const std::string& Tpetra::MatrixMarket::Banner::symmType ( ) const [inline]

Symmetric storage type.

Describes whether and how symmetry is exploited when storing the matrix. "general" means nonsymmetric: all the matrix entries are stored. "symmetric", "skew-symmetric", and "hermitian" have their usual mathematical meaning, and also mean that only the upper or lower triangle (including the diagonal) of the matrix is stored. There's no way to tell from the banner whether the upper or lower triangle is stored; you have to examine the matrix entries.

Note:
An error condition is possible for sparse matrices (matrixType() == "coordinate"): If only the upper or lower triangle is supposed to be there, and entries from both the upper and lower triangle are stored, the resulting matrix is undefined. Users may choose to interpret this case as they wish (for example, exclusively, or additively).

Definition at line 105 of file MatrixMarket_Banner.hpp.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines