Miscellaneous C++ utility code for testing and debugging.
[Development of linear Abstract Numerical Algorithms (ANAs)]

Collaboration diagram for Miscellaneous C++ utility code for testing and debugging.:

Functions

const std::string Thyra::passfail (bool pass)
 Return "passed" or "failed".
template<class Scalar>
Teuchos::ScalarTraits< Scalar
>::magnitudeType 
Thyra::relErr (const Scalar &s1, const Scalar &s2)
 Return relative error of two scalars.
template<class Scalar>
Teuchos::ScalarTraits< Scalar
>::magnitudeType 
Thyra::relVectorErr (const VectorBase< Scalar > &v1, const VectorBase< Scalar > &v2)
 Return relative error of two vectors.
template<class Scalar>
bool Thyra::testRelErr (const std::string &v1_name,const Scalar &v1,const std::string &v2_name,const Scalar &v2,const std::string &maxRelErr_error_name,const typename Teuchos::ScalarTraits< Scalar >::magnitudeType &maxRelErr_error,const std::string &maxRelErr_warning_name,const typename Teuchos::ScalarTraits< Scalar >::magnitudeType &maxRelErr_warning,std::ostream *out,const std::string &leadingIndent=std::string(""))
 Compute, check and optionally print the relative error in two scalars.
template<class Scalar1, class Scalar2, class ScalarMag>
bool Thyra::testRelErrors (const int num_scalars,const std::string &v1_name,const Scalar1 v1[],const std::string &v2_name,const Scalar2 v2[],const std::string &maxRelErr_error_name,const ScalarMag &maxRelErr_error,const std::string &maxRelErr_warning_name,const ScalarMag &maxRelErr_warning,std::ostream *out,const std::string &leadingIndent=std::string(""))
 Compute, check and optionally print the relative errors in two scalar arays.
template<class Scalar>
bool Thyra::testRelNormDiffErr (const std::string &v1_name, const VectorBase< Scalar > &v1, const std::string &v2_name, const VectorBase< Scalar > &v2, const std::string &maxRelErr_error_name, const typename Teuchos::ScalarTraits< Scalar >::magnitudeType &maxRelErr_error, const std::string &maxRelErr_warning_name, const typename Teuchos::ScalarTraits< Scalar >::magnitudeType &maxRelErr_warning, std::ostream *out, const Teuchos::EVerbosityLevel verbLevel=Teuchos::VERB_LOW, const std::string &leadingIndent=std::string(""))
 Compute, check and optionally print the relative errors in two vectors.
template<class Scalar>
bool Thyra::testMaxErr (const std::string &error_name,const Scalar &error,const std::string &max_error_name,const typename Teuchos::ScalarTraits< Scalar >::magnitudeType &max_error,const std::string &max_warning_name,const typename Teuchos::ScalarTraits< Scalar >::magnitudeType &max_warning,std::ostream *out,const std::string &leadingIndent=std::string(""))
 Check that an error is less than some error tolerence.
template<class Scalar>
bool Thyra::testMaxErrors (const int num_scalars,const std::string &error_name,const Scalar error[],const std::string &max_error_name,const typename Teuchos::ScalarTraits< Scalar >::magnitudeType &max_error,const std::string &max_warning_name,const typename Teuchos::ScalarTraits< Scalar >::magnitudeType &max_warning,std::ostream *out,const std::string &leadingIndent=std::string(""))
 Check that an array of errors is less than some error tolerence.
bool Thyra::testBoolExpr (const std::string &boolExprName,const bool &boolExpr,const bool &boolExpected,std::ostream *out,const std::string &leadingIndent=std::string(""))
 Check a boolean result against expected result.
template<class Scalar>
std::ostream & Thyra::operator<< (std::ostream &o, const VectorBase< Scalar > &v)
 Output operator to pretty print any Thyra::VectorBase object.
template<class Scalar>
std::ostream & Thyra::operator<< (std::ostream &o, const LinearOpBase< Scalar > &M)
 Output operator to pretty print any Thyra::LinearOpBase object.


Detailed Description

Here is some assorted C++ code to aid in testing and debugging Thyra code.

Function Documentation

const std::string Thyra::passfail ( bool  pass  )  [inline]

Return "passed" or "failed".

Examples:
test_composite_linear_ops.cpp.

Definition at line 51 of file Thyra_TestingToolsDecl.hpp.

template<class Scalar>
Teuchos::ScalarTraits< Scalar >::magnitudeType Thyra::relErr ( const Scalar &  s1,
const Scalar &  s2 
)

Return relative error of two scalars.

ToDo: Finish documentation!

Examples:
test_composite_linear_ops.cpp, test_product_space.cpp, and test_scalar_product.cpp.

Definition at line 72 of file Thyra_TestingTools.hpp.

template<class Scalar>
Teuchos::ScalarTraits< Scalar >::magnitudeType Thyra::relVectorErr ( const VectorBase< Scalar > &  v1,
const VectorBase< Scalar > &  v2 
)

Return relative error of two vectors.

ToDo: Finish documentation!

Definition at line 88 of file Thyra_TestingTools.hpp.

template<class Scalar>
bool Thyra::testRelErr ( const std::string &  v1_name,
const Scalar &  v1,
const std::string &  v2_name,
const Scalar &  v2,
const std::string &  maxRelErr_error_name,
const typename Teuchos::ScalarTraits< Scalar >::magnitudeType &  maxRelErr_error,
const std::string &  maxRelErr_warning_name,
const typename Teuchos::ScalarTraits< Scalar >::magnitudeType &  maxRelErr_warning,
std::ostream *  out,
const std::string &  leadingIndent = std::string("") 
)

Compute, check and optionally print the relative error in two scalars.

ToDo: Finish documentation!

Definition at line 115 of file Thyra_TestingTools.hpp.

template<class Scalar1, class Scalar2, class ScalarMag>
bool Thyra::testRelErrors ( const int  num_scalars,
const std::string &  v1_name,
const Scalar1  v1[],
const std::string &  v2_name,
const Scalar2  v2[],
const std::string &  maxRelErr_error_name,
const ScalarMag &  maxRelErr_error,
const std::string &  maxRelErr_warning_name,
const ScalarMag &  maxRelErr_warning,
std::ostream *  out,
const std::string &  leadingIndent = std::string("") 
)

Compute, check and optionally print the relative errors in two scalar arays.

Parameters:
v1 [in] Array (length num_scalars).
v2 [in] Array (length num_scalars).
ToDo: Finish documentation!

Definition at line 151 of file Thyra_TestingTools.hpp.

template<class Scalar>
bool Thyra::testRelNormDiffErr ( const std::string &  v1_name,
const VectorBase< Scalar > &  v1,
const std::string &  v2_name,
const VectorBase< Scalar > &  v2,
const std::string &  maxRelErr_error_name,
const typename Teuchos::ScalarTraits< Scalar >::magnitudeType &  maxRelErr_error,
const std::string &  maxRelErr_warning_name,
const typename Teuchos::ScalarTraits< Scalar >::magnitudeType &  maxRelErr_warning,
std::ostream *  out,
const Teuchos::EVerbosityLevel  verbLevel = Teuchos::VERB_LOW,
const std::string &  leadingIndent = std::string("") 
)

Compute, check and optionally print the relative errors in two vectors.

This function only looks at the difference in the relative errors in the natural norm of the difference between two vectors. This does not perform a component-by-component check.

ToDo: Finish documentation!

Definition at line 199 of file Thyra_TestingTools.hpp.

template<class Scalar>
bool Thyra::testMaxErr ( const std::string &  error_name,
const Scalar &  error,
const std::string &  max_error_name,
const typename Teuchos::ScalarTraits< Scalar >::magnitudeType &  max_error,
const std::string &  max_warning_name,
const typename Teuchos::ScalarTraits< Scalar >::magnitudeType &  max_warning,
std::ostream *  out,
const std::string &  leadingIndent = std::string("") 
)

Check that an error is less than some error tolerence.

ToDo: Finish documentation!

Definition at line 258 of file Thyra_TestingTools.hpp.

template<class Scalar>
bool Thyra::testMaxErrors ( const int  num_scalars,
const std::string &  error_name,
const Scalar  error[],
const std::string &  max_error_name,
const typename Teuchos::ScalarTraits< Scalar >::magnitudeType &  max_error,
const std::string &  max_warning_name,
const typename Teuchos::ScalarTraits< Scalar >::magnitudeType &  max_warning,
std::ostream *  out,
const std::string &  leadingIndent = std::string("") 
)

Check that an array of errors is less than some error tolerence.

Parameters:
error [in] Array (length num_scalars).
ToDo: Finish documentation!

Definition at line 289 of file Thyra_TestingTools.hpp.

bool Thyra::testBoolExpr ( const std::string &  boolExprName,
const bool &  boolExpr,
const bool &  boolExpected,
std::ostream *  out,
const std::string &  leadingIndent = std::string("") 
)

Check a boolean result against expected result.

ToDo: Finish documentation!

Examples:
test_scalar_product.cpp.

Definition at line 31 of file Thyra_TestingTools.cpp.

template<class Scalar>
std::ostream & Thyra::operator<< ( std::ostream &  o,
const VectorBase< Scalar > &  v 
)

Output operator to pretty print any Thyra::VectorBase object.

ToDo: Finish documentation!

Definition at line 334 of file Thyra_TestingTools.hpp.

template<class Scalar>
std::ostream & Thyra::operator<< ( std::ostream &  o,
const LinearOpBase< Scalar > &  M 
)

Output operator to pretty print any Thyra::LinearOpBase object.

Calls M.describe(o,Teuchos::VERB_EXTREME);

Definition at line 340 of file Thyra_TestingTools.hpp.


Generated on Tue Oct 20 12:46:59 2009 for Thyra Operator/Vector Support by doxygen 1.4.7