testInversion.cxx File Reference

#include "Math/SMatrix.h"
#include "TMatrixTSym.h"
#include "TDecompChol.h"
#include "TDecompBK.h"
#include "TRandom.h"
#include <vector>
#include <string>
#include <iostream>
#include <cmath>
#include <limits>
#include "TStopwatch.h"

Go to the source code of this file.

Namespaces

namespace  test

Classes

class  test::Timer
struct  Choleski
struct  BK
struct  QR
struct  Cramer
struct  Default
struct  TestInverter< M, Type >
struct  TestInverter< SymMatrix, Choleski >
struct  TestInverter< SymMatrix, BK >
struct  TestInverter< SymMatrix, Cramer >
struct  TestInverter< TMatrixDSym, Default >
struct  TestInverter< TMatrixDSym, Cramer >
struct  TestInverter< TMatrixDSym, Choleski >
struct  TestInverter< TMatrixDSym, BK >

Defines

#define N   5

Typedefs

typedef SMatrix< double, N,
N, MatRepSym< double, N > > 
SymMatrix

Functions

void test::printTime (TStopwatch &time, std::string s)
template<class M>
M * createMatrix ()
template<>
TMatrixTSym< double > * createMatrix< TMatrixTSym< double > > ()
template<class M>
void printMatrix (const M &m)
template<>
void printMatrix< TMatrixTSym< double > > (const TMatrixTSym< double > &m)
template<class M>
void genMatrix (M &m)
template<class M>
void generate (std::vector< M * > &v)
template<class M, class T>
double invert (const std::vector< M * > &matlist, double &time, std::string s)
template<class M, class T>
double invert2 (const std::vector< M * > &matlist, double &time, std::string s)
bool equal (double d1, double d2, double stol=10000)
bool stressSymPosInversion (int n, bool selftest)
int testInversion (int n=100000)
int main ()

Variables

bool doSelfTest = true


Define Documentation

#define N   5

Definition at line 18 of file testInversion.cxx.


Typedef Documentation

typedef SMatrix<double,N,N, MatRepSym<double,N> > SymMatrix

Definition at line 78 of file testInversion.cxx.


Function Documentation

template<class M>
M* createMatrix (  ) 

Definition at line 82 of file testInversion.cxx.

template<>
TMatrixTSym<double>* createMatrix< TMatrixTSym< double > > (  ) 

bool equal ( double  d1,
double  d2,
double  stol = 10000 
)

Definition at line 289 of file testInversion.cxx.

References RootCsg::epsilon, and max.

Referenced by checkPermute(), TMVA::RuleEnsemble::RemoveSimilarRules(), TMVA::Rule::RuleDist(), stressSymPosInversion(), testSort(), and TFriendElement::TFriendElement().

template<class M>
void generate ( std::vector< M * > &  v  ) 

Definition at line 121 of file testInversion.cxx.

References genMatrix(), gRandom, i, n, and TRandom::SetSeed().

template<class M>
void genMatrix ( M &  m  ) 

Definition at line 103 of file testInversion.cxx.

References gRandom, i, j, m, N, and sqrt().

Referenced by generate().

template<class M, class T>
double invert ( const std::vector< M * > &  matlist,
double time,
std::string  s 
)

Definition at line 241 of file testInversion.cxx.

References TestInverter< M, Type >::Inv(), l, m, nloop, ok, result(), and t.

template<class M, class T>
double invert2 ( const std::vector< M * > &  matlist,
double time,
std::string  s 
)

Definition at line 263 of file testInversion.cxx.

References TestInverter< M, Type >::Inv2(), l, m, nloop, ok, and t.

int main ( void   ) 

Definition at line 375 of file testInversion.cxx.

References testInversion().

template<class M>
void printMatrix ( const M &  m  ) 

Definition at line 93 of file testInversion.cxx.

template<>
void printMatrix< TMatrixTSym< double > > ( const TMatrixTSym< double > &  m  ) 

bool stressSymPosInversion ( int  n,
bool  selftest 
)

Definition at line 301 of file testInversion.cxx.

References equal(), generate(), ok, s1, s2, and v1.

Referenced by testInversion().

int testInversion ( int  n = 100000  ) 

Definition at line 367 of file testInversion.cxx.

References doSelfTest, n, ok, and stressSymPosInversion().

Referenced by main().


Variable Documentation

bool doSelfTest = true

Definition at line 21 of file testInversion.cxx.

Referenced by testInversion().


Generated on Tue Jul 5 16:07:44 2011 for ROOT_528-00b_version by  doxygen 1.5.1