Tests deeply nested compositions resulting from constrained Eigenvalue problems. More...

#include <compositions.hh>

Inheritance diagram for test::DeepCompositionsTest:
test::CompositionTestBase test::TestCase

Public Member Functions

void _succeed ()
 Explicitly succeds a test. More...
 
void createSparseQR ()
 
 DeepCompositionsTest ()
 Constructor. Sets up a matrix a. More...
 
long getNumFailed () const
 Returns number of failed tests. More...
 
long getNumPassed () const
 Returns number of passed tests. More...
 
const ostream * getStream () const
 Returns output stream. More...
 
long report () const
 Prints a report on the number of passed and failed tests to the output stream. More...
 
virtual void reset ()
 Resets the counters for the failed and passed tests. More...
 
virtual void run ()
 Runs the tests. Must be overwritten by the specialization. More...
 
void setStream (ostream *osptr)
 Sets the output stream. More...
 
virtual ~DeepCompositionsTest ()
 

Protected Member Functions

template<typename F >
void compare (const concepts::Matrix< F > &a, concepts::Operator< F > &b)
 
void do_fail (const string &lbl, const char *fname, long lineno)
 Internal function to report a failed test (besides increasing the failed counter) More...
 
bool do_numtest (double num, double orig, const string &lbl, const string &lbl2, const char *fname, long lineno, const double tol=1e-10)
 Internal function to do a numerical test. More...
 
bool do_numtest (std::complex< double > num, std::complex< double > orig, const string &lbl, const string &lbl2, const char *fname, long lineno, const double tol=1e-10)
 
bool do_test (bool cond, const string &lbl, const char *fname, long lineno)
 Internal function to do a test. More...
 

Private Attributes

long m_nFail
 
long m_nPass
 
ostream * m_osptr
 

Test routines

concepts::DummySpace< Real > spc
 
concepts::DummySpace< Real > cspc
 
concepts::SparseMatrix< Real > a
 
concepts::SparseMatrix< Real > b
 
concepts::SparseMatrix< Real > c
 
std::unique_ptr< sparseqr::Driverqr
 
concepts::Permutation< Real > * Pr
 
std::unique_ptr< concepts::Permutation< Real > > Prt
 
sparseqr::GivensRotations< Real > * Qgt
 
sparseqr::GivensRotations< Real > * Qg
 
concepts::TrivExtendRestrict< Real > * ext
 
concepts::TrivExtendRestrict< Real > * restr
 
std::unique_ptr< concepts::Compose< Real > > PrQgt
 
std::unique_ptr< concepts::Compose< Real > > QgPrt
 
std::unique_ptr< concepts::Compose< Real > > restrPrQgt
 
std::unique_ptr< concepts::Compose< Real > > QgPrtext
 
std::unique_ptr< concepts::Compose< Real > > restrPrQgtA
 
std::unique_ptr< concepts::Compose< Real > > restrPrQgtAQgPrtext
 
std::unique_ptr< concepts::Compose< Real > > restrPrQgtM
 
std::unique_ptr< concepts::Compose< Real > > restrPrQgtMQgPrtext
 
void testCompositions ()
 

Detailed Description

Tests deeply nested compositions resulting from constrained Eigenvalue problems.

Author
Philipp Frauenfelder, 2004
See also
eigensolver::Constrained

Definition at line 108 of file compositions.hh.

Constructor & Destructor Documentation

◆ DeepCompositionsTest()

test::DeepCompositionsTest::DeepCompositionsTest ( )

Constructor. Sets up a matrix a.

◆ ~DeepCompositionsTest()

virtual test::DeepCompositionsTest::~DeepCompositionsTest ( )
inlinevirtual

Definition at line 112 of file compositions.hh.

Member Function Documentation

◆ _succeed()

void test::TestCase::_succeed ( )
inlineinherited

Explicitly succeds a test.

Definition at line 112 of file testcase.hh.

◆ compare()

template<typename F >
void test::CompositionTestBase::compare ( const concepts::Matrix< F > &  a,
concepts::Operator< F > &  b 
)
protectedinherited

◆ createSparseQR()

void test::DeepCompositionsTest::createSparseQR ( )

◆ do_fail()

void test::TestCase::do_fail ( const string &  lbl,
const char *  fname,
long  lineno 
)
protectedinherited

Internal function to report a failed test (besides increasing the failed counter)

◆ do_numtest() [1/2]

bool test::TestCase::do_numtest ( double  num,
double  orig,
const string &  lbl,
const string &  lbl2,
const char *  fname,
long  lineno,
const double  tol = 1e-10 
)
protectedinherited

Internal function to do a numerical test.

◆ do_numtest() [2/2]

bool test::TestCase::do_numtest ( std::complex< double >  num,
std::complex< double >  orig,
const string &  lbl,
const string &  lbl2,
const char *  fname,
long  lineno,
const double  tol = 1e-10 
)
protectedinherited

◆ do_test()

bool test::TestCase::do_test ( bool  cond,
const string &  lbl,
const char *  fname,
long  lineno 
)
protectedinherited

Internal function to do a test.

◆ getNumFailed()

long test::TestCase::getNumFailed ( ) const
inlineinherited

Returns number of failed tests.

Definition at line 105 of file testcase.hh.

◆ getNumPassed()

long test::TestCase::getNumPassed ( ) const
inlineinherited

Returns number of passed tests.

Definition at line 103 of file testcase.hh.

◆ getStream()

const ostream* test::TestCase::getStream ( ) const
inlineinherited

Returns output stream.

Definition at line 107 of file testcase.hh.

◆ report()

long test::TestCase::report ( ) const
inherited

Prints a report on the number of passed and failed tests to the output stream.

Returns
Number of failed tests.

◆ reset()

virtual void test::TestCase::reset ( )
inlinevirtualinherited

Resets the counters for the failed and passed tests.

Definition at line 119 of file testcase.hh.

◆ run()

virtual void test::DeepCompositionsTest::run ( )
virtual

Runs the tests. Must be overwritten by the specialization.

Implements test::TestCase.

◆ setStream()

void test::TestCase::setStream ( ostream *  osptr)
inlineinherited

Sets the output stream.

Definition at line 109 of file testcase.hh.

◆ testCompositions()

void test::DeepCompositionsTest::testCompositions ( )

Member Data Documentation

◆ a

concepts::SparseMatrix<Real> test::DeepCompositionsTest::a
private

Definition at line 122 of file compositions.hh.

◆ b

concepts::SparseMatrix<Real> test::DeepCompositionsTest::b
private

Definition at line 122 of file compositions.hh.

◆ c

concepts::SparseMatrix<Real> test::DeepCompositionsTest::c
private

Definition at line 122 of file compositions.hh.

◆ cspc

concepts::DummySpace<Real> test::DeepCompositionsTest::cspc
private

Definition at line 121 of file compositions.hh.

◆ ext

concepts::TrivExtendRestrict<Real>* test::DeepCompositionsTest::ext
private

Definition at line 127 of file compositions.hh.

◆ m_nFail

long test::TestCase::m_nFail
privateinherited

Definition at line 139 of file testcase.hh.

◆ m_nPass

long test::TestCase::m_nPass
privateinherited

Definition at line 138 of file testcase.hh.

◆ m_osptr

ostream* test::TestCase::m_osptr
privateinherited

Definition at line 137 of file testcase.hh.

◆ Pr

concepts::Permutation<Real>* test::DeepCompositionsTest::Pr
private

Definition at line 124 of file compositions.hh.

◆ PrQgt

std::unique_ptr<concepts::Compose<Real> > test::DeepCompositionsTest::PrQgt
private

Definition at line 128 of file compositions.hh.

◆ Prt

std::unique_ptr<concepts::Permutation<Real> > test::DeepCompositionsTest::Prt
private

Definition at line 125 of file compositions.hh.

◆ Qg

sparseqr::GivensRotations<Real> * test::DeepCompositionsTest::Qg
private

Definition at line 126 of file compositions.hh.

◆ QgPrt

std::unique_ptr<concepts::Compose<Real> > test::DeepCompositionsTest::QgPrt
private

Definition at line 128 of file compositions.hh.

◆ QgPrtext

std::unique_ptr<concepts::Compose<Real> > test::DeepCompositionsTest::QgPrtext
private

Definition at line 129 of file compositions.hh.

◆ Qgt

sparseqr::GivensRotations<Real>* test::DeepCompositionsTest::Qgt
private

Definition at line 126 of file compositions.hh.

◆ qr

std::unique_ptr<sparseqr::Driver> test::DeepCompositionsTest::qr
private

Definition at line 123 of file compositions.hh.

◆ restr

concepts::TrivExtendRestrict<Real> * test::DeepCompositionsTest::restr
private

Definition at line 127 of file compositions.hh.

◆ restrPrQgt

std::unique_ptr<concepts::Compose<Real> > test::DeepCompositionsTest::restrPrQgt
private

Definition at line 128 of file compositions.hh.

◆ restrPrQgtA

std::unique_ptr<concepts::Compose<Real> > test::DeepCompositionsTest::restrPrQgtA
private

Definition at line 129 of file compositions.hh.

◆ restrPrQgtAQgPrtext

std::unique_ptr<concepts::Compose<Real> > test::DeepCompositionsTest::restrPrQgtAQgPrtext
private

Definition at line 129 of file compositions.hh.

◆ restrPrQgtM

std::unique_ptr<concepts::Compose<Real> > test::DeepCompositionsTest::restrPrQgtM
private

Definition at line 129 of file compositions.hh.

◆ restrPrQgtMQgPrtext

std::unique_ptr<concepts::Compose<Real> > test::DeepCompositionsTest::restrPrQgtMQgPrtext
private

Definition at line 130 of file compositions.hh.

◆ spc

concepts::DummySpace<Real> test::DeepCompositionsTest::spc
private

Definition at line 121 of file compositions.hh.


The documentation for this class was generated from the following file:
Page URL: http://wiki.math.ethz.ch/bin/view/Concepts/WebHome
21 August 2020
© 2020 Eidgenössische Technische Hochschule Zürich