Macros | Functions | Variables
spbenchsolver.h File Reference
#include <iostream>
#include <fstream>
#include <Eigen/SparseCore>
#include <bench/BenchTimer.h>
#include <cstdlib>
#include <string>
#include <Eigen/Cholesky>
#include <Eigen/Jacobi>
#include <Eigen/Householder>
#include <Eigen/IterativeLinearSolvers>
#include <unsupported/Eigen/IterativeSolvers>
#include <Eigen/LU>
#include <unsupported/Eigen/SparseExtra>
#include <Eigen/SparseLU>
#include "spbenchstyle.h"
Include dependency graph for spbenchsolver.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define EIGEN_BICGSTAB   60
 
#define EIGEN_BICGSTAB_ILUT   61
 
#define EIGEN_CG   170
 
#define EIGEN_CG_PRECOND   180
 
#define EIGEN_CHOLMOD_LDLT   90
 
#define EIGEN_CHOLMOD_SIMPLICIAL_LLT   140
 
#define EIGEN_CHOLMOD_SUPERNODAL_LLT   130
 
#define EIGEN_GMRES   70
 
#define EIGEN_GMRES_ILUT   71
 
#define EIGEN_KLU   11
 
#define EIGEN_PARDISO   40
 
#define EIGEN_PARDISO_LDLT   110
 
#define EIGEN_PARDISO_LLT   160
 
#define EIGEN_PASTIX   30
 
#define EIGEN_PASTIX_LDLT   100
 
#define EIGEN_PASTIX_LLT   150
 
#define EIGEN_SIMPLICIAL_LDLT   80
 
#define EIGEN_SIMPLICIAL_LLT   120
 
#define EIGEN_SPARSELU_COLAMD   50
 
#define EIGEN_SPARSELU_METIS   51
 
#define EIGEN_SUPERLU   20
 
#define EIGEN_UMFPACK   10
 

Functions

template<typename Scalar >
void Browse_Matrices (const string folder, bool statFileExists, std::string &statFile, int maxiters, double tol)
 
template<typename Solver , typename Scalar >
void call_directsolver (Solver &solver, const int solver_id, const typename Solver::MatrixType &A, const Matrix< Scalar, Dynamic, 1 > &b, const Matrix< Scalar, Dynamic, 1 > &refX, std::string &statFile)
 
template<typename Solver , typename Scalar >
void call_itersolver (Solver &solver, const int solver_id, const typename Solver::MatrixType &A, const Matrix< Scalar, Dynamic, 1 > &b, const Matrix< Scalar, Dynamic, 1 > &refX, std::string &statFile)
 
template<typename Solver , typename Scalar >
void call_solver (Solver &solver, const int solver_id, const typename Solver::MatrixType &A, const Matrix< Scalar, Dynamic, 1 > &b, const Matrix< Scalar, Dynamic, 1 > &refX, std::ofstream &statbuf)
 
bool get_options (int argc, char **args, string option, string *value=0)
 
void printStatheader (std::ofstream &out)
 
template<typename Scalar >
void SelectSolvers (const SparseMatrix< Scalar > &A, unsigned int sym, Matrix< Scalar, Dynamic, 1 > &b, const Matrix< Scalar, Dynamic, 1 > &refX, std::string &statFile)
 
template<typename T >
NumTraits< T >::Real test_precision ()
 
template<>
double test_precision< double > ()
 
template<>
float test_precision< float > ()
 
template<>
double test_precision< std::complex< double > > ()
 
template<>
float test_precision< std::complex< float > > ()
 

Variables

int best_time_id
 
double best_time_val
 
int MaximumIters
 
double RelErr
 

Macro Definition Documentation

◆ EIGEN_BICGSTAB

#define EIGEN_BICGSTAB   60

Definition at line 64 of file spbenchsolver.h.

◆ EIGEN_BICGSTAB_ILUT

#define EIGEN_BICGSTAB_ILUT   61

Definition at line 65 of file spbenchsolver.h.

◆ EIGEN_CG

#define EIGEN_CG   170

Definition at line 77 of file spbenchsolver.h.

◆ EIGEN_CG_PRECOND

#define EIGEN_CG_PRECOND   180

Definition at line 78 of file spbenchsolver.h.

◆ EIGEN_CHOLMOD_LDLT

#define EIGEN_CHOLMOD_LDLT   90

Definition at line 69 of file spbenchsolver.h.

◆ EIGEN_CHOLMOD_SIMPLICIAL_LLT

#define EIGEN_CHOLMOD_SIMPLICIAL_LLT   140

Definition at line 74 of file spbenchsolver.h.

◆ EIGEN_CHOLMOD_SUPERNODAL_LLT

#define EIGEN_CHOLMOD_SUPERNODAL_LLT   130

Definition at line 73 of file spbenchsolver.h.

◆ EIGEN_GMRES

#define EIGEN_GMRES   70

Definition at line 66 of file spbenchsolver.h.

◆ EIGEN_GMRES_ILUT

#define EIGEN_GMRES_ILUT   71

Definition at line 67 of file spbenchsolver.h.

◆ EIGEN_KLU

#define EIGEN_KLU   11

Definition at line 58 of file spbenchsolver.h.

◆ EIGEN_PARDISO

#define EIGEN_PARDISO   40

Definition at line 61 of file spbenchsolver.h.

◆ EIGEN_PARDISO_LDLT

#define EIGEN_PARDISO_LDLT   110

Definition at line 71 of file spbenchsolver.h.

◆ EIGEN_PARDISO_LLT

#define EIGEN_PARDISO_LLT   160

Definition at line 76 of file spbenchsolver.h.

◆ EIGEN_PASTIX

#define EIGEN_PASTIX   30

Definition at line 60 of file spbenchsolver.h.

◆ EIGEN_PASTIX_LDLT

#define EIGEN_PASTIX_LDLT   100

Definition at line 70 of file spbenchsolver.h.

◆ EIGEN_PASTIX_LLT

#define EIGEN_PASTIX_LLT   150

Definition at line 75 of file spbenchsolver.h.

◆ EIGEN_SIMPLICIAL_LDLT

#define EIGEN_SIMPLICIAL_LDLT   80

Definition at line 68 of file spbenchsolver.h.

◆ EIGEN_SIMPLICIAL_LLT

#define EIGEN_SIMPLICIAL_LLT   120

Definition at line 72 of file spbenchsolver.h.

◆ EIGEN_SPARSELU_COLAMD

#define EIGEN_SPARSELU_COLAMD   50

Definition at line 62 of file spbenchsolver.h.

◆ EIGEN_SPARSELU_METIS

#define EIGEN_SPARSELU_METIS   51

Definition at line 63 of file spbenchsolver.h.

◆ EIGEN_SUPERLU

#define EIGEN_SUPERLU   20

Definition at line 59 of file spbenchsolver.h.

◆ EIGEN_UMFPACK

#define EIGEN_UMFPACK   10

Definition at line 57 of file spbenchsolver.h.

Function Documentation

◆ Browse_Matrices()

template<typename Scalar >
void Browse_Matrices ( const string  folder,
bool  statFileExists,
std::string &  statFile,
int  maxiters,
double  tol 
)

Definition at line 509 of file spbenchsolver.h.

◆ call_directsolver()

template<typename Solver , typename Scalar >
void call_directsolver ( Solver &  solver,
const int  solver_id,
const typename Solver::MatrixType A,
const Matrix< Scalar, Dynamic, 1 > &  b,
const Matrix< Scalar, Dynamic, 1 > &  refX,
std::string &  statFile 
)

Definition at line 290 of file spbenchsolver.h.

◆ call_itersolver()

template<typename Solver , typename Scalar >
void call_itersolver ( Solver &  solver,
const int  solver_id,
const typename Solver::MatrixType A,
const Matrix< Scalar, Dynamic, 1 > &  b,
const Matrix< Scalar, Dynamic, 1 > &  refX,
std::string &  statFile 
)

Definition at line 300 of file spbenchsolver.h.

◆ call_solver()

template<typename Solver , typename Scalar >
void call_solver ( Solver &  solver,
const int  solver_id,
const typename Solver::MatrixType A,
const Matrix< Scalar, Dynamic, 1 > &  b,
const Matrix< Scalar, Dynamic, 1 > &  refX,
std::ofstream &  statbuf 
)

Definition at line 225 of file spbenchsolver.h.

◆ get_options()

bool get_options ( int  argc,
char **  args,
string  option,
string *  value = 0 
)

Definition at line 562 of file spbenchsolver.h.

◆ printStatheader()

void printStatheader ( std::ofstream &  out)

Definition at line 96 of file spbenchsolver.h.

◆ SelectSolvers()

template<typename Scalar >
void SelectSolvers ( const SparseMatrix< Scalar > &  A,
unsigned int  sym,
Matrix< Scalar, Dynamic, 1 > &  b,
const Matrix< Scalar, Dynamic, 1 > &  refX,
std::string &  statFile 
)

Definition at line 316 of file spbenchsolver.h.

◆ test_precision()

template<typename T >
NumTraits<T>::Real test_precision ( )
inline

Definition at line 90 of file spbenchsolver.h.

◆ test_precision< double >()

template<>
double test_precision< double > ( )
inline

Definition at line 92 of file spbenchsolver.h.

◆ test_precision< float >()

template<>
float test_precision< float > ( )
inline

Definition at line 91 of file spbenchsolver.h.

◆ test_precision< std::complex< double > >()

template<>
double test_precision< std::complex< double > > ( )
inline

Definition at line 94 of file spbenchsolver.h.

◆ test_precision< std::complex< float > >()

template<>
float test_precision< std::complex< float > > ( )
inline

Definition at line 93 of file spbenchsolver.h.

Variable Documentation

◆ best_time_id

int best_time_id

Definition at line 88 of file spbenchsolver.h.

◆ best_time_val

double best_time_val

Definition at line 87 of file spbenchsolver.h.

◆ MaximumIters

int MaximumIters

Definition at line 85 of file spbenchsolver.h.

◆ RelErr

double RelErr

Definition at line 86 of file spbenchsolver.h.



gtsam
Author(s):
autogenerated on Sat Nov 16 2024 04:09:52