Salome HOME
Merge from V6_main_20120808 08Aug12
[modules/med.git] / src / MEDCoupling / Test / MEDCouplingBasicsTestInterp.hxx
1 // Copyright (C) 2007-2012  CEA/DEN, EDF R&D
2 //
3 // This library is free software; you can redistribute it and/or
4 // modify it under the terms of the GNU Lesser General Public
5 // License as published by the Free Software Foundation; either
6 // version 2.1 of the License.
7 //
8 // This library is distributed in the hope that it will be useful,
9 // but WITHOUT ANY WARRANTY; without even the implied warranty of
10 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
11 // Lesser General Public License for more details.
12 //
13 // You should have received a copy of the GNU Lesser General Public
14 // License along with this library; if not, write to the Free Software
15 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
16 //
17 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
18 //
19
20 #ifndef __MEDCOUPLINGBASICSTESTINTERP_HXX__
21 #define __MEDCOUPLINGBASICSTESTINTERP_HXX__
22
23 #include "MEDCouplingBasicsTest.hxx"
24
25 #include <map>
26 #include <vector>
27
28 namespace ParaMEDMEM
29 {
30   class DataArrayDouble;
31   class MEDCouplingUMesh;
32   class MEDCouplingFieldDouble;
33   class MEDCouplingMultiFields;
34
35   class MEDCouplingBasicsTestInterp : public MEDCouplingBasicsTest
36   {
37     CPPUNIT_TEST_SUITE(MEDCouplingBasicsTestInterp);
38     CPPUNIT_TEST( test2DInterpP0P0_1 );
39     CPPUNIT_TEST( test2DInterpP0P0PL_1 );
40     CPPUNIT_TEST( test2DInterpP0P0PL_2 );
41     CPPUNIT_TEST( test2DInterpP0P0PL_3 );
42     CPPUNIT_TEST( test2DInterpP0P0PL_4 );
43     CPPUNIT_TEST( test2DInterpP0P1_1 );
44     CPPUNIT_TEST( test2DInterpP0P1PL_1 );
45     CPPUNIT_TEST( test2DInterpP0P1PL_2 );
46     CPPUNIT_TEST( test2DInterpP1P0_1 );
47     CPPUNIT_TEST( test2DInterpP1P0PL_1 );
48     CPPUNIT_TEST( test2DInterpP1P0PL_2 );
49     CPPUNIT_TEST( test2DInterpP1P1_1 );
50     CPPUNIT_TEST( test2DInterpP1P1PL_1 );
51     CPPUNIT_TEST( test3DSurfInterpP0P0_1 );
52     CPPUNIT_TEST( test3DSurfInterpP0P0PL_1 );
53     CPPUNIT_TEST( test3DSurfInterpP0P1_1 );
54     CPPUNIT_TEST( test3DSurfInterpP0P1PL_1 );
55     CPPUNIT_TEST( test3DSurfInterpP1P0_1 );
56     CPPUNIT_TEST( test3DSurfInterpP1P0PL_1 );
57     CPPUNIT_TEST( test3DSurfInterpP1P1_1 );
58     CPPUNIT_TEST( test3DSurfInterpP1P1PL_1 );
59     CPPUNIT_TEST( test3DSurfInterpP0P0_2 );
60     CPPUNIT_TEST( test3DSurfInterpP0P0_3 );
61
62     CPPUNIT_TEST( testInterpolationCC );
63     CPPUNIT_TEST( testInterpolationCU1D );
64     CPPUNIT_TEST( testInterpolationCU2D );
65     CPPUNIT_TEST( testInterpolationCU3D );
66
67     CPPUNIT_TEST( test3DInterpP0P0_1 );
68     CPPUNIT_TEST( test3DInterpP0P0PL_1 );
69     CPPUNIT_TEST( test3DInterpP0P0PL_2 );
70     CPPUNIT_TEST( test3DInterpP0P0PL_3 );
71     CPPUNIT_TEST( test3DInterpP0P0PL_4 );
72     CPPUNIT_TEST( test3DInterpP0P1_1 );
73     CPPUNIT_TEST( test3DInterpP0P1PL_1 );
74     CPPUNIT_TEST( test3DInterpP1P0_1 );
75     CPPUNIT_TEST( test3DInterpP1P0PL_1 );
76     CPPUNIT_TEST( test3DInterpP1P1_1 );
77     CPPUNIT_TEST( test3DInterpP1P1PL_1 );
78     CPPUNIT_TEST( test3DInterpP0P0Empty );
79     CPPUNIT_TEST( test2DInterpP0IntegralUniform );
80     CPPUNIT_TEST( test3DSurfInterpP0IntegralUniform );
81     CPPUNIT_TEST( test3DInterpP0IntegralUniform );
82     CPPUNIT_TEST( test2DInterpP1IntegralUniform );
83     CPPUNIT_TEST( test3DInterpP1IntegralUniform );
84     CPPUNIT_TEST( test2DInterpP1P0Bary_1 );
85     CPPUNIT_TEST( test3DSurfInterpP1P0Bary_1 );
86     CPPUNIT_TEST( test3DInterpP1P0Bary_1 );
87     CPPUNIT_TEST( test3DTo1DInterpP0P0PL_1 );
88
89     CPPUNIT_TEST( test2D1DBasicInterpP0P0 );
90     CPPUNIT_TEST( test2D1DSegQuadInterpP0P0_1 );
91     CPPUNIT_TEST( test2D1DSegQuadInterpP0P0_2 );
92     CPPUNIT_TEST( test2D1DSegQuadInterpP0P0_3 );
93     CPPUNIT_TEST( test2D1DSegQuadInterpP0P0_4 );
94     CPPUNIT_TEST( test2D1DSegQuadInterpP0P0_5 );
95     CPPUNIT_TEST( test2D1DSegQuadInterpP0P0_6 );
96     CPPUNIT_TEST( test2D1DSegTriInterpP0P0_1 );
97     CPPUNIT_TEST( test2D1DSegTriInterpP0P0_2 );
98     CPPUNIT_TEST( test2D1DSegTriInterpP0P0_3 );
99     CPPUNIT_TEST( test2D1DSegTriInterpP0P0_4 );
100     CPPUNIT_TEST( test2D1DSegTriInterpP0P0_5 );
101     CPPUNIT_TEST( test2D1DSegTriInterpP0P0_6 );
102     CPPUNIT_TEST( test3D2DBasicInterpP0P0 );
103     CPPUNIT_TEST( test3D2DQuadHexaInterpP0P0_1 );
104     CPPUNIT_TEST( test3D2DQuadHexaInterpP0P0_2 );
105     CPPUNIT_TEST( test3D2DQuadHexaInterpP0P0_3 );
106     CPPUNIT_TEST( test3D2DQuadHexaInterpP0P0_4 );
107     CPPUNIT_TEST( test3D2DQuadHexaInterpP0P0_5 );
108     CPPUNIT_TEST( test3D2DQuadHexaInterpP0P0_6 );
109     CPPUNIT_TEST( test3D2DTriHexaInterpP0P0_1 );
110     CPPUNIT_TEST( test3D2DTriHexaInterpP0P0_2 );
111     CPPUNIT_TEST( test3D2DTriHexaInterpP0P0_3 );
112     CPPUNIT_TEST( test3D2DTriHexaInterpP0P0_4 );
113     CPPUNIT_TEST( test3D2DTriHexaInterpP0P0_5 );
114     CPPUNIT_TEST( test3D2DTriHexaInterpP0P0_6 );
115     CPPUNIT_TEST( test3D2DQuadTetraInterpP0P0_1 );
116     CPPUNIT_TEST( test3D2DQuadTetraInterpP0P0_2 );
117     CPPUNIT_TEST( test3D2DQuadTetraInterpP0P0_3 );
118     CPPUNIT_TEST( test3D2DQuadTetraInterpP0P0_4 );
119     CPPUNIT_TEST( test3D2DQuadTetraInterpP0P0_5 );
120     CPPUNIT_TEST( test3D2DQuadTetraInterpP0P0_6 );
121     CPPUNIT_TEST( test3D2DTriTetraInterpP0P0_1 );
122     CPPUNIT_TEST( test3D2DTriTetraInterpP0P0_2 );
123     CPPUNIT_TEST( test3D2DTriTetraInterpP0P0_3 );
124     CPPUNIT_TEST( test3D2DTriTetraInterpP0P0_4 );
125     CPPUNIT_TEST( test3D2DTriTetraInterpP0P0_5 );
126     CPPUNIT_TEST( test3D2DTriTetraInterpP0P0_6 );
127
128     CPPUNIT_TEST( test1DInterp_1 );
129     CPPUNIT_TEST( test2DCurveInterpP0P0_1 );
130     CPPUNIT_TEST( test2DCurveInterpP0P0_2 );
131     CPPUNIT_TEST( test2DCurveInterpP0P1_1 );
132     CPPUNIT_TEST( test2DCurveInterpP1P0_1 );
133     CPPUNIT_TEST( test2DCurveInterpP1P1_1 );
134     CPPUNIT_TEST_SUITE_END();
135   public:
136     void test2DInterpP0P0_1();
137     void test2DInterpP0P0PL_1();
138     void test2DInterpP0P0PL_2();
139     void test2DInterpP0P0PL_3();
140     void test2DInterpP0P0PL_4();
141     void test2DInterpP0P1_1();
142     void test2DInterpP0P1PL_1();
143     void test2DInterpP0P1PL_2();
144     void test2DInterpP1P0_1();
145     void test2DInterpP1P0PL_1();
146     void test2DInterpP1P0PL_2();
147     void test2DInterpP1P1_1();
148     void test2DInterpP1P1PL_1();
149     void test3DSurfInterpP0P0_1();
150     void test3DSurfInterpP0P0PL_1();
151     void test3DSurfInterpP0P1_1();
152     void test3DSurfInterpP0P1PL_1();
153     void test3DSurfInterpP1P0_1();
154     void test3DSurfInterpP1P0PL_1();
155     void test3DSurfInterpP1P1_1();
156     void test3DSurfInterpP1P1PL_1();
157     void test3DSurfInterpP0P0_2();
158     void test3DSurfInterpP0P0_3();
159     void test3DInterpP0P0_1();
160     void test3DInterpP0P0PL_1();
161     void test3DInterpP0P0PL_2();
162     void test3DInterpP0P0PL_3();
163     void test3DInterpP0P0PL_4();
164     void test3DInterpP0P1_1();
165     void test3DInterpP0P1PL_1();
166     void test3DInterpP1P0_1();
167     void test3DInterpP1P0PL_1();
168     void test3DInterpP1P1_1();
169     void test3DInterpP1P1PL_1();
170
171     void testInterpolationCC();
172     void testInterpolationCU1D();
173     void testInterpolationCU2D();
174     void testInterpolationCU3D();
175
176     void test3DInterpP0P0Empty();
177     void test2DInterpP0IntegralUniform();
178     void test3DSurfInterpP0IntegralUniform();
179     void test3DInterpP0IntegralUniform();
180     void test2DInterpP1IntegralUniform();
181     void test3DInterpP1IntegralUniform();
182     void test2DInterpP1P0Bary_1();
183     void test3DSurfInterpP1P0Bary_1();
184     void test3DInterpP1P0Bary_1();
185     void test3DTo1DInterpP0P0PL_1();
186
187     void test2D1DBasicInterpP0P0();
188     void test2D1DSegQuadInterpP0P0_1();
189     void test2D1DSegQuadInterpP0P0_2();
190     void test2D1DSegQuadInterpP0P0_3();
191     void test2D1DSegQuadInterpP0P0_4();
192     void test2D1DSegQuadInterpP0P0_5();
193     void test2D1DSegQuadInterpP0P0_6();
194     void test2D1DSegTriInterpP0P0_1();
195     void test2D1DSegTriInterpP0P0_2();
196     void test2D1DSegTriInterpP0P0_3();
197     void test2D1DSegTriInterpP0P0_4();
198     void test2D1DSegTriInterpP0P0_5();
199     void test2D1DSegTriInterpP0P0_6();
200     void test3D2DBasicInterpP0P0();
201     void test3D2DQuadHexaInterpP0P0_1();
202     void test3D2DQuadHexaInterpP0P0_2();
203     void test3D2DQuadHexaInterpP0P0_3();
204     void test3D2DQuadHexaInterpP0P0_4();
205     void test3D2DQuadHexaInterpP0P0_5();
206     void test3D2DQuadHexaInterpP0P0_6();
207     void test3D2DTriHexaInterpP0P0_1();
208     void test3D2DTriHexaInterpP0P0_2();
209     void test3D2DTriHexaInterpP0P0_3();
210     void test3D2DTriHexaInterpP0P0_4();
211     void test3D2DTriHexaInterpP0P0_5();
212     void test3D2DTriHexaInterpP0P0_6();
213     void test3D2DQuadTetraInterpP0P0_1();
214     void test3D2DQuadTetraInterpP0P0_2();
215     void test3D2DQuadTetraInterpP0P0_3();
216     void test3D2DQuadTetraInterpP0P0_4();
217     void test3D2DQuadTetraInterpP0P0_5();
218     void test3D2DQuadTetraInterpP0P0_6();
219     void test3D2DTriTetraInterpP0P0_1();
220     void test3D2DTriTetraInterpP0P0_2();
221     void test3D2DTriTetraInterpP0P0_3();
222     void test3D2DTriTetraInterpP0P0_4();
223     void test3D2DTriTetraInterpP0P0_5();
224     void test3D2DTriTetraInterpP0P0_6();
225
226     void test1DInterp_1();
227     void test2DCurveInterpP0P0_1();
228     void test2DCurveInterpP0P0_2();
229     void test2DCurveInterpP0P1_1();
230     void test2DCurveInterpP1P0_1();
231     void test2DCurveInterpP1P1_1();
232   };
233 }
234
235 #endif