Public Types | Public Member Functions | Protected Member Functions | Protected Attributes
Eigen::MatrixMarketIterator< Scalar > Class Template Reference

Iterator to browse matrices from a specified folder. More...

#include <MatrixMarketIterator.h>

List of all members.

Public Types

typedef SparseMatrix< Scalar,
ColMajor
MatrixType
typedef Matrix< Scalar,
Dynamic, 1 > 
VectorType

Public Member Functions

bool hasrefX ()
bool hasRhs ()
std::string & matname ()
MatrixTypematrix ()
 MatrixMarketIterator (const std::string folder)
 operator bool () const
MatrixMarketIteratoroperator++ ()
VectorTyperefX ()
VectorTyperhs ()
int sym ()
 ~MatrixMarketIterator ()

Protected Member Functions

bool Fileexists (std::string file)
void Getnextvalidmatrix ()

Protected Attributes

struct dirent * m_curs_id
std::string m_folder
DIR * m_folder_id
bool m_hasrefX
bool m_hasRhs
bool m_isvalid
MatrixType m_mat
bool m_matIsLoaded
std::string m_matname
VectorType m_refX
VectorType m_rhs
int m_sym

Detailed Description

template<typename Scalar>
class Eigen::MatrixMarketIterator< Scalar >

Iterator to browse matrices from a specified folder.

This is used to load all the matrices from a folder. The matrices should be in Matrix Market format It is assumed that the matrices are named as matname.mtx and matname_SPD.mtx if the matrix is Symmetric and positive definite (or Hermitian) The right hand side vectors are loaded as well, if they exist. They should be named as matname_b.mtx. Note that the right hand side for a SPD matrix is named as matname_SPD_b.mtx

Sometimes a reference solution is available. In this case, it should be named as matname_x.mtx

Sample code

Template Parameters:
ScalarThe scalar type

Definition at line 42 of file MatrixMarketIterator.h.


Member Typedef Documentation

template<typename Scalar >
typedef SparseMatrix<Scalar,ColMajor> Eigen::MatrixMarketIterator< Scalar >::MatrixType

Definition at line 46 of file MatrixMarketIterator.h.

template<typename Scalar >
typedef Matrix<Scalar,Dynamic,1> Eigen::MatrixMarketIterator< Scalar >::VectorType

Definition at line 45 of file MatrixMarketIterator.h.


Constructor & Destructor Documentation

template<typename Scalar >
Eigen::MatrixMarketIterator< Scalar >::MatrixMarketIterator ( const std::string  folder) [inline]

Definition at line 49 of file MatrixMarketIterator.h.

template<typename Scalar >
Eigen::MatrixMarketIterator< Scalar >::~MatrixMarketIterator ( ) [inline]

Definition at line 60 of file MatrixMarketIterator.h.


Member Function Documentation

template<typename Scalar >
bool Eigen::MatrixMarketIterator< Scalar >::Fileexists ( std::string  file) [inline, protected]

Definition at line 158 of file MatrixMarketIterator.h.

template<typename Scalar >
void Eigen::MatrixMarketIterator< Scalar >::Getnextvalidmatrix ( ) [inline, protected]

Definition at line 172 of file MatrixMarketIterator.h.

template<typename Scalar >
bool Eigen::MatrixMarketIterator< Scalar >::hasrefX ( ) [inline]

Definition at line 154 of file MatrixMarketIterator.h.

template<typename Scalar >
bool Eigen::MatrixMarketIterator< Scalar >::hasRhs ( ) [inline]

Definition at line 153 of file MatrixMarketIterator.h.

template<typename Scalar >
std::string& Eigen::MatrixMarketIterator< Scalar >::matname ( ) [inline]

Definition at line 149 of file MatrixMarketIterator.h.

template<typename Scalar >
MatrixType& Eigen::MatrixMarketIterator< Scalar >::matrix ( ) [inline]

Return the sparse matrix corresponding to the current file

Definition at line 76 of file MatrixMarketIterator.h.

template<typename Scalar >
Eigen::MatrixMarketIterator< Scalar >::operator bool ( ) const [inline]

Definition at line 73 of file MatrixMarketIterator.h.

template<typename Scalar >
MatrixMarketIterator& Eigen::MatrixMarketIterator< Scalar >::operator++ ( ) [inline]

Definition at line 65 of file MatrixMarketIterator.h.

template<typename Scalar >
VectorType& Eigen::MatrixMarketIterator< Scalar >::refX ( ) [inline]

Return a reference solution If it is not provided and if the right hand side is not available then refX is randomly generated such that A*refX = b where A and b are the matrix and the rhs. Note that when a rhs is provided, refX is not available

Definition at line 133 of file MatrixMarketIterator.h.

template<typename Scalar >
VectorType& Eigen::MatrixMarketIterator< Scalar >::rhs ( ) [inline]

Return the right hand side corresponding to the current matrix. If the rhs file is not provided, a random rhs is generated

Definition at line 101 of file MatrixMarketIterator.h.

template<typename Scalar >
int Eigen::MatrixMarketIterator< Scalar >::sym ( ) [inline]

Definition at line 151 of file MatrixMarketIterator.h.


Member Data Documentation

template<typename Scalar >
struct dirent* Eigen::MatrixMarketIterator< Scalar >::m_curs_id [protected]

Definition at line 226 of file MatrixMarketIterator.h.

template<typename Scalar >
std::string Eigen::MatrixMarketIterator< Scalar >::m_folder [protected]

Definition at line 224 of file MatrixMarketIterator.h.

template<typename Scalar >
DIR* Eigen::MatrixMarketIterator< Scalar >::m_folder_id [protected]

Definition at line 225 of file MatrixMarketIterator.h.

template<typename Scalar >
bool Eigen::MatrixMarketIterator< Scalar >::m_hasrefX [protected]

Definition at line 223 of file MatrixMarketIterator.h.

template<typename Scalar >
bool Eigen::MatrixMarketIterator< Scalar >::m_hasRhs [protected]

Definition at line 222 of file MatrixMarketIterator.h.

template<typename Scalar >
bool Eigen::MatrixMarketIterator< Scalar >::m_isvalid [protected]

Definition at line 220 of file MatrixMarketIterator.h.

template<typename Scalar >
MatrixType Eigen::MatrixMarketIterator< Scalar >::m_mat [protected]

Definition at line 216 of file MatrixMarketIterator.h.

template<typename Scalar >
bool Eigen::MatrixMarketIterator< Scalar >::m_matIsLoaded [protected]

Definition at line 221 of file MatrixMarketIterator.h.

template<typename Scalar >
std::string Eigen::MatrixMarketIterator< Scalar >::m_matname [protected]

Definition at line 219 of file MatrixMarketIterator.h.

template<typename Scalar >
VectorType Eigen::MatrixMarketIterator< Scalar >::m_refX [protected]

Definition at line 218 of file MatrixMarketIterator.h.

template<typename Scalar >
VectorType Eigen::MatrixMarketIterator< Scalar >::m_rhs [protected]

Definition at line 217 of file MatrixMarketIterator.h.

template<typename Scalar >
int Eigen::MatrixMarketIterator< Scalar >::m_sym [protected]

Definition at line 215 of file MatrixMarketIterator.h.


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


acado
Author(s): Milan Vukov, Rien Quirynen
autogenerated on Sat Jun 8 2019 19:40:49