00001 /* Tests the linear forms 00002 */ 00003 00004 #ifndef linearformTest_hh 00005 #define linearformTest_hh 00006 00007 #include "basics/testcase.hh" 00008 #include "basics/typedefs.hh" 00009 #include "basics/vectorsMatricesForward.hh" 00010 #include "formula/boundary.hh" 00011 #include "hp2D/space.hh" 00012 00013 using concepts::Real; 00014 00015 namespace hp2D { 00016 class Space; 00017 } 00018 00019 namespace test { 00020 00021 // ******************************************************** LinearFormTest ** 00022 00026 class LinearFormTest : public TestCase { 00027 public: 00028 virtual ~LinearFormTest() {} 00029 virtual void run(); 00030 00032 00033 00036 void testRieszIntValue(); 00040 void testGradIntValue(); 00044 void testPlCurlIntValue(); 00047 void testPlCurlSystem(); 00049 private: 00051 template<class F, class G> 00052 void testLinearForm_(concepts::LinearForm<F,Real>& lform, 00053 G& desiredVector); 00054 00056 void setSpace_(uint l = 0, uint p = 1, 00057 concepts::BoundaryConditions *bc = 0); 00059 std::auto_ptr<hp2D::Space> spc_; 00061 std::auto_ptr<concepts::Import2dMesh> m_; 00062 }; 00063 00064 } // namespace test 00065 00066 #endif // linearformTest_hh