MOAB: Mesh Oriented datABase
(version 5.4.1)
|
Public Member Functions | |
CompositeMetricTestBase () | |
void | test_supported_types () |
void | test_ideal_element_eval () |
void | test_non_ideal_eval () |
void | test_ideal_element_grad () |
void | test_ideal_element_hess () |
void | test_valid_hessian () |
void | test_measures_quality () |
void | test_gradient_reflects_quality () |
void | test_domain_deviation () |
void | test_inverted_elements () |
void | test_degenerate_elements () |
void | test_get_evaluations () |
void | test_get_element_indices () |
void | test_get_fixed_indices () |
void | test_eval_with_indices () |
void | test_eval_with_gradient () |
void | test_eval_with_hessian () |
void | test_location_invariant () |
void | test_scale_invariant () |
void | test_orient_invariant () |
Protected Member Functions | |
virtual bool | evaluate (PatchData &, size_t, double &, MsqError &)=0 |
Protected Attributes | |
QualityMetricTester | tester |
QualityMetric * | mMetric |
Private Member Functions | |
void | test_evaluate (bool ideal, EntityTopology type) |
Definition at line 49 of file CompositeMetricTest.cpp.
CompositeMetricTestBase::CompositeMetricTestBase | ( | ) | [inline] |
Definition at line 60 of file CompositeMetricTest.cpp.
: tester( QualityMetricTester::ALL_FE_EXCEPT_SEPTAHEDRON ), mMetric( 0 ) { tester.ideal_pyramid_base_equals_height( true ); }
virtual bool CompositeMetricTestBase::evaluate | ( | PatchData & | , |
size_t | , | ||
double & | , | ||
MsqError & | |||
) | [protected, pure virtual] |
void CompositeMetricTestBase::test_degenerate_elements | ( | ) | [inline] |
Definition at line 126 of file CompositeMetricTest.cpp.
References mMetric.
{ tester.test_evaluate_degenerate_element( mMetric, false ); }
void CompositeMetricTestBase::test_domain_deviation | ( | ) | [inline] |
Definition at line 115 of file CompositeMetricTest.cpp.
References mMetric.
void CompositeMetricTestBase::test_eval_with_gradient | ( | ) | [inline] |
Definition at line 151 of file CompositeMetricTest.cpp.
References mMetric.
void CompositeMetricTestBase::test_eval_with_hessian | ( | ) | [inline] |
Definition at line 157 of file CompositeMetricTest.cpp.
References mMetric.
void CompositeMetricTestBase::test_eval_with_indices | ( | ) | [inline] |
Definition at line 146 of file CompositeMetricTest.cpp.
References mMetric.
void CompositeMetricTestBase::test_evaluate | ( | bool | ideal, |
EntityTopology | type | ||
) | [private] |
Definition at line 183 of file CompositeMetricTest.cpp.
References ASSERT_NO_ERROR, CPPUNIT_ASSERT, CPPUNIT_ASSERT_DOUBLES_EQUAL, and mMetric.
{ MsqPrintError err( std::cout ); PatchData pd; double act, ex; bool rval; if( ideal ) tester.get_ideal_element( type, false, pd, false ); else tester.get_nonideal_element( type, pd ); rval = mMetric->evaluate( pd, 0, act, err ); ASSERT_NO_ERROR( err ); CPPUNIT_ASSERT( rval ); rval = this->evaluate( pd, 0, ex, err ); ASSERT_NO_ERROR( err ); CPPUNIT_ASSERT( rval ); CPPUNIT_ASSERT_DOUBLES_EQUAL( ex, act, 1e-6 ); }
void CompositeMetricTestBase::test_get_element_indices | ( | ) | [inline] |
Definition at line 136 of file CompositeMetricTest.cpp.
References mMetric.
{ tester.test_get_element_indices( mMetric ); }
void CompositeMetricTestBase::test_get_evaluations | ( | ) | [inline] |
Definition at line 131 of file CompositeMetricTest.cpp.
References mMetric.
void CompositeMetricTestBase::test_get_fixed_indices | ( | ) | [inline] |
Definition at line 141 of file CompositeMetricTest.cpp.
References mMetric.
{ tester.test_get_indices_fixed( mMetric ); }
void CompositeMetricTestBase::test_gradient_reflects_quality | ( | ) | [inline] |
Definition at line 110 of file CompositeMetricTest.cpp.
References mMetric.
void CompositeMetricTestBase::test_ideal_element_eval | ( | ) | [inline] |
Definition at line 70 of file CompositeMetricTest.cpp.
References MBMesquite::HEXAHEDRON, MBMesquite::PRISM, MBMesquite::PYRAMID, MBMesquite::QUADRILATERAL, test_evaluate(), MBMesquite::TETRAHEDRON, and MBMesquite::TRIANGLE.
{ test_evaluate( true, TRIANGLE ); test_evaluate( true, QUADRILATERAL ); test_evaluate( true, TETRAHEDRON ); test_evaluate( true, HEXAHEDRON ); test_evaluate( true, PRISM ); test_evaluate( true, PYRAMID ); }
void CompositeMetricTestBase::test_ideal_element_grad | ( | ) | [inline] |
Definition at line 90 of file CompositeMetricTest.cpp.
References mMetric.
{ tester.test_ideal_element_zero_gradient( mMetric, false ); }
void CompositeMetricTestBase::test_ideal_element_hess | ( | ) | [inline] |
Definition at line 95 of file CompositeMetricTest.cpp.
References mMetric.
{ tester.test_ideal_element_positive_definite_Hessian( mMetric, false ); }
void CompositeMetricTestBase::test_inverted_elements | ( | ) | [inline] |
Definition at line 121 of file CompositeMetricTest.cpp.
References mMetric.
{ tester.test_evaluate_inverted_element( mMetric, false ); }
void CompositeMetricTestBase::test_location_invariant | ( | ) | [inline] |
Definition at line 164 of file CompositeMetricTest.cpp.
References mMetric.
void CompositeMetricTestBase::test_measures_quality | ( | ) | [inline] |
Definition at line 105 of file CompositeMetricTest.cpp.
References mMetric.
{ tester.test_measures_quality( mMetric ); }
void CompositeMetricTestBase::test_non_ideal_eval | ( | ) | [inline] |
Definition at line 80 of file CompositeMetricTest.cpp.
References MBMesquite::HEXAHEDRON, MBMesquite::PRISM, MBMesquite::PYRAMID, MBMesquite::QUADRILATERAL, test_evaluate(), MBMesquite::TETRAHEDRON, and MBMesquite::TRIANGLE.
{ test_evaluate( false, TRIANGLE ); test_evaluate( false, QUADRILATERAL ); test_evaluate( false, TETRAHEDRON ); test_evaluate( false, HEXAHEDRON ); test_evaluate( false, PRISM ); test_evaluate( false, PYRAMID ); }
void CompositeMetricTestBase::test_orient_invariant | ( | ) | [inline] |
Definition at line 176 of file CompositeMetricTest.cpp.
References mMetric.
void CompositeMetricTestBase::test_scale_invariant | ( | ) | [inline] |
Definition at line 171 of file CompositeMetricTest.cpp.
References mMetric.
{ tester.test_scale_invariant( mMetric ); }
void CompositeMetricTestBase::test_supported_types | ( | ) | [inline] |
Definition at line 65 of file CompositeMetricTest.cpp.
References mMetric.
void CompositeMetricTestBase::test_valid_hessian | ( | ) | [inline] |
Definition at line 100 of file CompositeMetricTest.cpp.
References mMetric.
QualityMetric* CompositeMetricTestBase::mMetric [protected] |
Definition at line 56 of file CompositeMetricTest.cpp.
QualityMetricTester CompositeMetricTestBase::tester [protected] |
Definition at line 55 of file CompositeMetricTest.cpp.