Salome HOME
Initiating medtool
[modules/med.git] / src / medtool / src / MEDCoupling / Test / MEDCouplingBasicsTestInterp.hxx
1 // Copyright (C) 2007-2015  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, or (at your option) any later version.
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 // Author : Anthony Geay (CEA/DEN)
20
21 #ifndef __MEDCOUPLINGBASICSTESTINTERP_HXX__
22 #define __MEDCOUPLINGBASICSTESTINTERP_HXX__
23
24 #include "MEDCouplingBasicsTest.hxx"
25
26 #include <map>
27 #include <vector>
28
29 namespace ParaMEDMEM
30 {
31   class DataArrayDouble;
32   class MEDCouplingUMesh;
33   class MEDCouplingFieldDouble;
34   class MEDCouplingMultiFields;
35
36   class MEDCouplingBasicsTestInterp : public MEDCouplingBasicsTest
37   {
38     CPPUNIT_TEST_SUITE(MEDCouplingBasicsTestInterp);
39     CPPUNIT_TEST( test2DInterpP0P0_1 );
40     CPPUNIT_TEST( test2DInterpP0P0PL_1 );
41     CPPUNIT_TEST( test2DInterpP0P0PL_2 );
42     CPPUNIT_TEST( test2DInterpP0P0PL_3 );
43     CPPUNIT_TEST( test2DInterpP0P0PL_4 );
44     CPPUNIT_TEST( test2DInterpP0P1_1 );
45     CPPUNIT_TEST( test2DInterpP0P1PL_1 );
46     CPPUNIT_TEST( test2DInterpP0P1PL_2 );
47     CPPUNIT_TEST( test2DInterpP1P0_1 );
48     CPPUNIT_TEST( test2DInterpP1P0PL_1 );
49     CPPUNIT_TEST( test2DInterpP1P0PL_2 );
50     CPPUNIT_TEST( test2DInterpP1P1_1 );
51     CPPUNIT_TEST( test2DInterpP1P1PL_1 );
52     CPPUNIT_TEST( test3DSurfInterpP0P0_1 );
53     CPPUNIT_TEST( test3DSurfInterpP0P0PL_1 );
54     CPPUNIT_TEST( test3DSurfInterpP0P1_1 );
55     CPPUNIT_TEST( test3DSurfInterpP0P1PL_1 );
56     CPPUNIT_TEST( test3DSurfInterpP1P0_1 );
57     CPPUNIT_TEST( test3DSurfInterpP1P0PL_1 );
58     CPPUNIT_TEST( test3DSurfInterpP1P1_1 );
59     CPPUNIT_TEST( test3DSurfInterpP1P1PL_1 );
60     CPPUNIT_TEST( test3DSurfInterpP0P0_2 );
61     CPPUNIT_TEST( test3DSurfInterpP0P0_3 );
62
63     CPPUNIT_TEST( testInterpolationCC );
64     CPPUNIT_TEST( testInterpolationCU1D );
65     CPPUNIT_TEST( testInterpolationCU2D );
66     CPPUNIT_TEST( testInterpolationCU3D );
67
68     CPPUNIT_TEST( test3DInterpP0P0_1 );
69     CPPUNIT_TEST( test3DInterpP0P0PL_1 );
70     CPPUNIT_TEST( test3DInterpP0P0PL_2 );
71     CPPUNIT_TEST( test3DInterpP0P0PL_3 );
72     CPPUNIT_TEST( test3DInterpP0P0PL_4 );
73     CPPUNIT_TEST( test3DInterpP0P1_1 );
74     CPPUNIT_TEST( test3DInterpP0P1PL_1 );
75     CPPUNIT_TEST( test3DInterpP1P0_1 );
76     CPPUNIT_TEST( test3DInterpP1P0PL_1 );
77     CPPUNIT_TEST( test3DInterpP1P1_1 );
78     CPPUNIT_TEST( test3DInterpP1P1PL_1 );
79     CPPUNIT_TEST( test3DInterpP0P0Empty );
80     CPPUNIT_TEST( test2DInterpP0IntegralUniform );
81     CPPUNIT_TEST( test3DSurfInterpP0IntegralUniform );
82     CPPUNIT_TEST( test3DInterpP0IntegralUniform );
83     CPPUNIT_TEST( test2DInterpP1IntegralUniform );
84     CPPUNIT_TEST( test3DInterpP1IntegralUniform );
85     CPPUNIT_TEST( test2DInterpP1P0Bary_1 );
86     CPPUNIT_TEST( test3DSurfInterpP1P0Bary_1 );
87     CPPUNIT_TEST( test3DInterpP1P0Bary_1 );
88     CPPUNIT_TEST( test3DTo1DInterpP0P0PL_1 );
89
90     CPPUNIT_TEST( test2D1DBasicInterpP0P0 );
91     CPPUNIT_TEST( test2D1DSegQuadInterpP0P0_1 );
92     CPPUNIT_TEST( test2D1DSegQuadInterpP0P0_2 );
93     CPPUNIT_TEST( test2D1DSegQuadInterpP0P0_3 );
94     CPPUNIT_TEST( test2D1DSegQuadInterpP0P0_4 );
95     CPPUNIT_TEST( test2D1DSegQuadInterpP0P0_5 );
96     CPPUNIT_TEST( test2D1DSegQuadInterpP0P0_6 );
97     CPPUNIT_TEST( test2D1DSegTriInterpP0P0_1 );
98     CPPUNIT_TEST( test2D1DSegTriInterpP0P0_2 );
99     CPPUNIT_TEST( test2D1DSegTriInterpP0P0_3 );
100     CPPUNIT_TEST( test2D1DSegTriInterpP0P0_4 );
101     CPPUNIT_TEST( test2D1DSegTriInterpP0P0_5 );
102     CPPUNIT_TEST( test2D1DSegTriInterpP0P0_6 );
103     CPPUNIT_TEST( test3D2DBasicInterpP0P0 );
104     CPPUNIT_TEST( test3D2DQuadHexaInterpP0P0_1 );
105     CPPUNIT_TEST( test3D2DQuadHexaInterpP0P0_2 );
106     CPPUNIT_TEST( test3D2DQuadHexaInterpP0P0_3 );
107     CPPUNIT_TEST( test3D2DQuadHexaInterpP0P0_4 );
108     CPPUNIT_TEST( test3D2DQuadHexaInterpP0P0_5 );
109     CPPUNIT_TEST( test3D2DQuadHexaInterpP0P0_6 );
110     CPPUNIT_TEST( test3D2DTriHexaInterpP0P0_1 );
111     CPPUNIT_TEST( test3D2DTriHexaInterpP0P0_2 );
112     CPPUNIT_TEST( test3D2DTriHexaInterpP0P0_3 );
113     CPPUNIT_TEST( test3D2DTriHexaInterpP0P0_4 );
114     CPPUNIT_TEST( test3D2DTriHexaInterpP0P0_5 );
115     CPPUNIT_TEST( test3D2DTriHexaInterpP0P0_6 );
116     CPPUNIT_TEST( test3D2DQuadTetraInterpP0P0_1 );
117     CPPUNIT_TEST( test3D2DQuadTetraInterpP0P0_2 );
118     CPPUNIT_TEST( test3D2DQuadTetraInterpP0P0_3 );
119     CPPUNIT_TEST( test3D2DQuadTetraInterpP0P0_4 );
120     CPPUNIT_TEST( test3D2DQuadTetraInterpP0P0_5 );
121     CPPUNIT_TEST( test3D2DQuadTetraInterpP0P0_6 );
122     CPPUNIT_TEST( test3D2DTriTetraInterpP0P0_1 );
123     CPPUNIT_TEST( test3D2DTriTetraInterpP0P0_2 );
124     CPPUNIT_TEST( test3D2DTriTetraInterpP0P0_3 );
125     CPPUNIT_TEST( test3D2DTriTetraInterpP0P0_4 );
126     CPPUNIT_TEST( test3D2DTriTetraInterpP0P0_5 );
127     CPPUNIT_TEST( test3D2DTriTetraInterpP0P0_6 );
128
129     CPPUNIT_TEST( test1DInterp_1 );
130     CPPUNIT_TEST( test2DCurveInterpP0P0_1 );
131     CPPUNIT_TEST( test2DCurveInterpP0P0_2 );
132     CPPUNIT_TEST( test2DCurveInterpP0P1_1 );
133     CPPUNIT_TEST( test2DCurveInterpP1P0_1 );
134     CPPUNIT_TEST( test2DCurveInterpP1P1_1 );
135     CPPUNIT_TEST_SUITE_END();
136   public:
137     void test2DInterpP0P0_1();
138     void test2DInterpP0P0PL_1();
139     void test2DInterpP0P0PL_2();
140     void test2DInterpP0P0PL_3();
141     void test2DInterpP0P0PL_4();
142     void test2DInterpP0P1_1();
143     void test2DInterpP0P1PL_1();
144     void test2DInterpP0P1PL_2();
145     void test2DInterpP1P0_1();
146     void test2DInterpP1P0PL_1();
147     void test2DInterpP1P0PL_2();
148     void test2DInterpP1P1_1();
149     void test2DInterpP1P1PL_1();
150     void test3DSurfInterpP0P0_1();
151     void test3DSurfInterpP0P0PL_1();
152     void test3DSurfInterpP0P1_1();
153     void test3DSurfInterpP0P1PL_1();
154     void test3DSurfInterpP1P0_1();
155     void test3DSurfInterpP1P0PL_1();
156     void test3DSurfInterpP1P1_1();
157     void test3DSurfInterpP1P1PL_1();
158     void test3DSurfInterpP0P0_2();
159     void test3DSurfInterpP0P0_3();
160     void test3DInterpP0P0_1();
161     void test3DInterpP0P0PL_1();
162     void test3DInterpP0P0PL_2();
163     void test3DInterpP0P0PL_3();
164     void test3DInterpP0P0PL_4();
165     void test3DInterpP0P1_1();
166     void test3DInterpP0P1PL_1();
167     void test3DInterpP1P0_1();
168     void test3DInterpP1P0PL_1();
169     void test3DInterpP1P1_1();
170     void test3DInterpP1P1PL_1();
171
172     void testInterpolationCC();
173     void testInterpolationCU1D();
174     void testInterpolationCU2D();
175     void testInterpolationCU3D();
176
177     void test3DInterpP0P0Empty();
178     void test2DInterpP0IntegralUniform();
179     void test3DSurfInterpP0IntegralUniform();
180     void test3DInterpP0IntegralUniform();
181     void test2DInterpP1IntegralUniform();
182     void test3DInterpP1IntegralUniform();
183     void test2DInterpP1P0Bary_1();
184     void test3DSurfInterpP1P0Bary_1();
185     void test3DInterpP1P0Bary_1();
186     void test3DTo1DInterpP0P0PL_1();
187
188     void test2D1DBasicInterpP0P0();
189     void test2D1DSegQuadInterpP0P0_1();
190     void test2D1DSegQuadInterpP0P0_2();
191     void test2D1DSegQuadInterpP0P0_3();
192     void test2D1DSegQuadInterpP0P0_4();
193     void test2D1DSegQuadInterpP0P0_5();
194     void test2D1DSegQuadInterpP0P0_6();
195     void test2D1DSegTriInterpP0P0_1();
196     void test2D1DSegTriInterpP0P0_2();
197     void test2D1DSegTriInterpP0P0_3();
198     void test2D1DSegTriInterpP0P0_4();
199     void test2D1DSegTriInterpP0P0_5();
200     void test2D1DSegTriInterpP0P0_6();
201     void test3D2DBasicInterpP0P0();
202     void test3D2DQuadHexaInterpP0P0_1();
203     void test3D2DQuadHexaInterpP0P0_2();
204     void test3D2DQuadHexaInterpP0P0_3();
205     void test3D2DQuadHexaInterpP0P0_4();
206     void test3D2DQuadHexaInterpP0P0_5();
207     void test3D2DQuadHexaInterpP0P0_6();
208     void test3D2DTriHexaInterpP0P0_1();
209     void test3D2DTriHexaInterpP0P0_2();
210     void test3D2DTriHexaInterpP0P0_3();
211     void test3D2DTriHexaInterpP0P0_4();
212     void test3D2DTriHexaInterpP0P0_5();
213     void test3D2DTriHexaInterpP0P0_6();
214     void test3D2DQuadTetraInterpP0P0_1();
215     void test3D2DQuadTetraInterpP0P0_2();
216     void test3D2DQuadTetraInterpP0P0_3();
217     void test3D2DQuadTetraInterpP0P0_4();
218     void test3D2DQuadTetraInterpP0P0_5();
219     void test3D2DQuadTetraInterpP0P0_6();
220     void test3D2DTriTetraInterpP0P0_1();
221     void test3D2DTriTetraInterpP0P0_2();
222     void test3D2DTriTetraInterpP0P0_3();
223     void test3D2DTriTetraInterpP0P0_4();
224     void test3D2DTriTetraInterpP0P0_5();
225     void test3D2DTriTetraInterpP0P0_6();
226
227     void test1DInterp_1();
228     void test2DCurveInterpP0P0_1();
229     void test2DCurveInterpP0P0_2();
230     void test2DCurveInterpP0P1_1();
231     void test2DCurveInterpP1P0_1();
232     void test2DCurveInterpP1P1_1();
233   };
234 }
235
236 #endif