source: XIOS/trunk/xios_test_suite/TEST_SUITE/test_axis_algo/context_atm.xml @ 1921

Last change on this file since 1921 was 1921, checked in by yushan, 4 years ago

trunk : complete axis transformation tests

File size: 14.6 KB
Line 
1<!-- -->
2<context id="atm">
3 
4  <calendar type="Gregorian" time_origin="1850-01-01 00:00:00" /> 
5 
6  <domain_definition>
7    <domain id="domain" />
8    <domain id="other_domain" />
9  </domain>
10 
11  <axis_definition>
12    <axis id="axis" />
13    <axis id="domain_X" />
14    <axis id="domain_Y" />
15    <axis id="ensemble" />
16    <axis id="axis_interpolate" n_glo="2" value="(0,1)[80000 40000]">
17      <interpolate_axis type="polynomial" order="1" coordinate="pressure"/> 
18    </axis>
19    <axis id="axis_temporal_splitting" n_glo="4">
20      <temporal_splitting /> 
21    </axis>
22   
23    <axis id="axis_duplicate_scalar" n_glo="5">
24      <duplicate_scalar /> 
25    </axis>
26
27
28
29
30    <axis id="other_axis" />
31    <axis id="other_domain_X" />
32    <axis id="other_domain_Y" />
33    <axis id="other_ensemble" />
34  </axis_definition>
35
36  <scalar_definition>
37    <scalar id="scalar" /> 
38  </scalar_definition>
39 
40 
41 
42  <grid_definition>
43   
44    <grid id="grid3D">
45      <domain domain_ref="domain" />
46      <axis axis_ref="axis" />
47    </grid>
48     
49    <grid id="grid3D_interpolate_axis">
50      <domain domain_ref="domain" />
51      <axis axis_ref="axis_interpolate" />
52    </grid>
53
54
55    <grid id="grid2D">
56      <domain domain_ref="domain" />
57    </grid>
58
59    <grid id="grid2D_extract_domain">
60      <axis n_glo="36" >
61      <extract_domain direction="iDir" position="5" />
62      </axis>
63    </grid>
64
65
66
67    <grid id="grid1D">
68      <axis axis_ref="axis" />
69    </grid>
70 
71    <grid id="grid1D_extract">
72      <axis id="axis_extract" axis_ref="axis">
73      <extract_axis n="5" begin="0" />
74      </axis>
75    </grid>   
76
77    <grid id="grid1D_zoom">
78      <axis id="axis_zoom" axis_ref="axis">
79      <zoom_axis n="5" begin="0" />
80      </axis>
81    </grid>   
82
83
84    <grid id="grid1D_inverse">
85      <axis id="axis_inverse" axis_ref="axis">
86      <inverse_axis />
87      </axis>
88    </grid>   
89
90    <grid id="grid1D_reduce_sum">
91      <axis id="axis_reduce_sum" axis_ref="axis">
92      <reduce_axis operation="sum"/>
93      </axis>
94    </grid>   
95
96    <grid id="grid1D_reduce_max">
97      <axis id="axis_reduce_max" axis_ref="axis">
98      <reduce_axis operation="max"/>
99      </axis>
100    </grid>   
101
102
103    <grid id="grid1D_reduce_min">
104      <axis id="axis_reduce_min" axis_ref="axis">
105      <reduce_axis operation="min"/>
106      </axis>
107    </grid>   
108 
109    <grid id="grid1D_reduce_ave">
110      <axis id="axis_reduce_ave" axis_ref="axis">
111      <reduce_axis operation="average"/>
112      </axis>
113    </grid>   
114
115    <grid id="grid_src">
116      <domain domain_ref="domain" />
117      <axis axis_ref="axis" />
118      <scalar scalar_ref="scalar"/>
119    </grid>
120 
121     <grid id="grid_dst">
122      <domain domain_ref="domain" />
123      <axis axis_ref="axis" />
124      <axis axis_ref="axis_temporal_splitting"/>
125    </grid>
126 
127   <grid id="grid0D">
128      <scalar scalar_ref="scalar" />
129    </grid>
130   
131    <grid id="grid1D_duplicate_scalar">
132      <axis axis_ref="axis_duplicate_scalar" />
133    </grid>
134 
135
136
137
138    <grid id="grid_X">
139      <axis axis_ref="domain_X" />
140    </grid>
141
142    <grid id="grid_Y">
143      <axis axis_ref="domain_Y" />
144    </grid>
145
146    <grid id="grid_XY">
147      <axis axis_ref="domain_X" />
148      <axis axis_ref="domain_Y" />
149    </grid>
150   
151    <grid id="gridXY_zoomX">
152      <axis id="domain_X_zoom" axis_ref="domain_X">
153      <zoom_axis n="6" begin="1" />
154      </axis>
155      <axis axis_ref="domain_Y" />
156    </grid>
157   
158    <grid id="gridXY_zoomY">
159      <axis axis_ref="domain_X" />
160      <axis id="domain_Y_zoom" axis_ref="domain_Y">
161      <zoom_axis n="4" begin="2" />
162      </axis>
163    </grid>
164
165
166
167    <grid id="grid_XYZ">
168      <axis axis_ref="domain_X" />
169      <axis axis_ref="domain_Y" />
170      <axis axis_ref="axis" />
171    </grid>
172
173    <grid id="grid_XZ">
174      <axis axis_ref="domain_X" />
175      <axis axis_ref="axis" />
176    </grid>
177
178    <grid id="grid_YZ">
179      <axis axis_ref="domain_Y" />
180      <axis axis_ref="axis" />
181    </grid>
182
183
184    <grid id="grid3D_W">
185      <domain domain_ref="domain" />
186      <axis axis_ref="axis" />
187      <axis axis_ref="ensemble" />
188    </grid>
189   
190    <grid id="grid2D_W">
191      <domain domain_ref="domain" />
192      <axis axis_ref="ensemble" />
193    </grid>
194
195    <grid id="grid1D_W">
196      <axis axis_ref="axis" />
197      <axis axis_ref="ensemble" />
198    </grid>
199
200    <grid id="grid_XW">
201      <axis axis_ref="domain_X" />
202      <axis axis_ref="ensemble" />
203    </grid>
204
205    <grid id="grid_YW">
206      <axis axis_ref="domain_Y" />
207      <axis axis_ref="ensemble" />
208    </grid>
209
210    <grid id="grid_XYW">
211      <axis axis_ref="domain_X" />
212      <axis axis_ref="domain_Y" />
213      <axis axis_ref="ensemble" />
214    </grid>
215
216    <grid id="grid_XYZW">
217      <axis axis_ref="domain_X" />
218      <axis axis_ref="domain_Y" />
219      <axis axis_ref="axis" />
220      <axis axis_ref="ensemble" />
221    </grid>
222
223    <grid id="grid_XZW">
224      <axis axis_ref="domain_X" />
225      <axis axis_ref="axis" />
226      <axis axis_ref="ensemble" />
227    </grid>
228
229    <grid id="grid_YZW">
230      <axis axis_ref="domain_Y" />
231      <axis axis_ref="axis" />
232      <axis axis_ref="ensemble" />
233    </grid>
234
235 
236 
237    <grid id="other_grid3D">
238      <domain domain_ref="other_domain" />
239      <axis axis_ref="other_axis" />
240    </grid>
241   
242    <grid id="other_grid2D">
243      <domain domain_ref="other_domain" />
244    </grid>
245
246    <grid id="other_grid1D">
247      <axis axis_ref="other_axis" />
248    </grid>
249
250    <grid id="other_grid_X">
251      <axis axis_ref="other_domain_X" />
252    </grid>
253
254    <grid id="other_grid_Y">
255      <axis axis_ref="other_domain_Y" />
256    </grid>
257
258    <grid id="other_grid_XY">
259      <axis axis_ref="other_domain_X" />
260      <axis axis_ref="other_domain_Y" />
261    </grid>
262
263    <grid id="other_grid_XYZ">
264      <axis axis_ref="other_domain_X" />
265      <axis axis_ref="other_domain_Y" />
266      <axis axis_ref="other_axis" />
267    </grid>
268
269    <grid id="other_grid_XZ">
270      <axis axis_ref="other_domain_X" />
271      <axis axis_ref="other_axis" />
272    </grid>
273
274    <grid id="other_grid_YZ">
275      <axis axis_ref="other_domain_Y" />
276      <axis axis_ref="other_axis" />
277    </grid>
278
279
280    <grid id="other_grid3D_W">
281      <domain domain_ref="other_domain" />
282      <axis axis_ref="other_axis" />
283      <axis axis_ref="other_ensemble" />
284    </grid>
285   
286    <grid id="other_grid2D_W">
287      <domain domain_ref="other_domain" />
288      <axis axis_ref="other_ensemble" />
289    </grid>
290
291    <grid id="other_grid1D_W">
292      <axis axis_ref="other_axis" />
293      <axis axis_ref="other_ensemble" />
294    </grid>
295
296    <grid id="other_grid_XW">
297      <axis axis_ref="other_domain_X" />
298      <axis axis_ref="other_ensemble" />
299    </grid>
300
301    <grid id="other_grid_YW">
302      <axis axis_ref="other_domain_Y" />
303      <axis axis_ref="other_ensemble" />
304    </grid>
305
306    <grid id="other_grid_XYW">
307      <axis axis_ref="other_domain_X" />
308      <axis axis_ref="other_domain_Y" />
309      <axis axis_ref="other_ensemble" />
310    </grid>
311
312    <grid id="other_grid_XYZW">
313      <axis axis_ref="other_domain_X" />
314      <axis axis_ref="other_domain_Y" />
315      <axis axis_ref="other_axis" />
316      <axis axis_ref="other_ensemble" />
317    </grid>
318
319    <grid id="other_grid_XZW">
320      <axis axis_ref="other_domain_X" />
321      <axis axis_ref="other_axis" />
322      <axis axis_ref="other_ensemble" />
323    </grid>
324
325    <grid id="other_grid_YZW">
326      <axis axis_ref="other_domain_Y" />
327      <axis axis_ref="other_axis" />
328      <axis axis_ref="other_ensemble" />
329    </grid>
330
331   
332  </grid_definition>
333 
334 
335  <field_definition level="1" prec="8" operation="instant" freq_op="1ts" enabled=".true." default_value="1.e+20" detect_missing_value="true">
336    <field id="field2D" grid_ref="grid2D" />
337    <field id="field3D" grid_ref="grid3D"  />
338    <field id="pressure" grid_ref="grid3D"  />
339    <field id="field3D_recv" read_access="true" grid_ref="grid3D"  field_ref="field3D" />
340    <field id="field3D_resend" grid_ref="grid3D" />
341
342    <field id="field_X" grid_ref="grid_X" />
343    <field id="field_Y" grid_ref="grid_Y" />
344    <field id="field_Z" grid_ref="grid1D" />
345    <field id="field_XY" grid_ref="grid_XY" />
346    <field id="field_XYZ" grid_ref="grid_XYZ" />
347    <field id="field_XZ" grid_ref="grid_XZ" />
348    <field id="field_YZ" grid_ref="grid_YZ" />
349
350
351    <field id="field2D_W" grid_ref="grid2D_W"/>
352    <field id="field3D_W" grid_ref="grid3D_W"  />
353    <field id="pressure_W" grid_ref="grid3D_W"  />
354    <field id="field3D_recv_W" read_access="true" grid_ref="grid3D_W"  field_ref="field3D_W"/>
355    <field id="field3D_resend_W" grid_ref="grid3D_W" />
356
357    <field id="field_XW" grid_ref="grid_XW" />
358    <field id="field_YW" grid_ref="grid_YW" />
359    <field id="field_ZW" grid_ref="grid1D_W" />
360    <field id="field_XYW" grid_ref="grid_XYW" />
361    <field id="field_XYZW" grid_ref="grid_XYZW" />
362    <field id="field_XZW" grid_ref="grid_XZW" />
363    <field id="field_YZW" grid_ref="grid_YZW" />
364
365
366    <field id="other_field2D" grid_ref="other_grid2D"/>
367    <field id="other_field3D" grid_ref="other_grid3D"  />
368    <field id="other_pressure" grid_ref="other_grid3D"  />
369    <field id="other_field3D_recv" read_access="true" grid_ref="other_grid3D"  field_ref="other_field3D"/>
370    <field id="other_field3D_resend" grid_ref="other_grid3D" />
371
372    <field id="other_field_X" grid_ref="other_grid_X" />
373    <field id="other_field_Y" grid_ref="other_grid_Y" />
374    <field id="other_field_Z" grid_ref="other_grid1D" />
375    <field id="other_field_XY" grid_ref="other_grid_XY" />
376    <field id="other_field_XYZ" grid_ref="other_grid_XYZ" />
377    <field id="other_field_XZ" grid_ref="other_grid_XZ" />
378    <field id="other_field_YZ" grid_ref="other_grid_YZ" />
379
380    <field id="other_field2D_W" grid_ref="other_grid2D_W"/>
381    <field id="other_field3D_W" grid_ref="other_grid3D_W"  />
382    <field id="other_pressure_W" grid_ref="other_grid3D_W"  />
383    <field id="other_field3D_recv_W" read_access="true" grid_ref="other_grid3D_W"  field_ref="other_field3D_W"/>
384    <field id="other_field3D_resend_W" grid_ref="other_grid3D_W" />
385
386    <field id="other_field_XW" grid_ref="other_grid_XW" />
387    <field id="other_field_YW" grid_ref="other_grid_YW" />
388    <field id="other_field_ZW" grid_ref="other_grid1D_W" />
389    <field id="other_field_XYW" grid_ref="other_grid_XYW" />
390    <field id="other_field_XYZW" grid_ref="other_grid_XYZW" />
391    <field id="other_field_XZW" grid_ref="other_grid_XZW" />
392    <field id="other_field_YZW" grid_ref="other_grid_YZW" />
393
394    <field id="field_src" grid_ref="grid_src" > field3D </field>
395   
396   
397  </field_definition>
398
399
400
401<!-- implementation of specifics test case -->
402<!-- simplest test cases : output data to file -->
403
404 
405
406  <file_definition  type="one_file" >
407    <file id="atm_output_axis_transformation_reduce" output_freq="4ts" type="one_file" enabled="true">
408       <field field_ref="field_Z" />
409       <field id="field_Z_reduce_sum" field_ref="field_Z" grid_ref="grid1D_reduce_sum" />
410       <field id="field_Z_reduce_max" field_ref="field_Z" grid_ref="grid1D_reduce_max" />
411       <field id="field_Z_reduce_min" field_ref="field_Z" grid_ref="grid1D_reduce_min" />
412       <field id="field_Z_reduce_ave" field_ref="field_Z" grid_ref="grid1D_reduce_ave" />
413    </file>
414
415    <file id="atm_output_axis_transformation_zoom" output_freq="12ts" type="one_file" enabled="true">
416       <field field_ref="field_Z" />
417       <field id="field_Z_zoom"       field_ref="field_Z" grid_ref="grid1D_zoom"       />
418       <field field_ref="field_XY" />
419       <field id="field_XY_zoomX"       field_ref="field_XY" grid_ref="gridXY_zoomX"       />
420       <field id="field_XY_zoomY"       field_ref="field_XY" grid_ref="gridXY_zoomY"       />
421    </file>
422   
423    <file id="atm_output_axis_transformation_extract" output_freq="12ts" type="one_file" enabled="true">
424       <field field_ref="field_Z" />
425       <field id="field_Z_extract"    field_ref="field_Z" grid_ref="grid1D_extract"    /> 
426    </file>
427   
428 
429    <file id="atm_output_axis_transformation_inverse" output_freq="12ts" type="one_file" enabled="true">
430       <field field_ref="field_Z" />
431       <field id="field_Z_inverse"    field_ref="field_Z" grid_ref="grid1D_inverse"    />
432    </file>
433   
434    <file id="atm_output_axis_transformation_extract_domain" output_freq="12ts" type="one_file" enabled="true">
435       <field field_ref="field2D" />
436       <field id="field2D_extract"       field_ref="field2D" grid_ref="grid2D_extract_domain"       />
437    </file>
438   
439    <file id="atm_output_axis_transformation_interpolate" output_freq="24ts" type="one_file" enabled="true">
440       <field field_ref="field3D"  />
441       <field field_ref="pressure"  />
442       <field id="field_interpolate_axis" field_ref="field3D" grid_ref="grid3D_interpolate_axis" />
443    </file>
444
445    <file id="atm_output_axis_transformation_temporal_splitting" output_freq="4ts" type="one_file" enabled="true">
446       <field field_ref="field_src" operation="instant" />
447       <field id="field_temporal_splitting" field_ref="field_src" grid_ref="grid_dst" />
448    </file>
449   
450    <file id="atm_output_axis_transformation_duplicate_scalar" output_freq="4ts" type="one_file" enabled="true">
451       <field field_ref="field_Z" />
452       <field id="field_0D" field_ref="field_Z" name="field_0D" grid_ref="grid0D" />
453       <field id="field_duplicate_scalar" field_ref="field_0D" name="field_duplicate_scalar" grid_ref="grid1D_duplicate_scalar" />
454    </file>
455
456
457
458
459
460    <file id="atm_output" output_freq="1ts" type="one_file" enabled="false">
461       <field field_ref="field3D" />
462       <field field_ref="field2D" /> 
463       <field field_ref="field_X" />
464       <field field_ref="field_Y" />
465       <field field_ref="field_XY" />
466       <field field_ref="field_Z" />
467       <field field_ref="field_XYZ" />
468       <field field_ref="field_XZ" />
469       <field field_ref="field_YZ" />
470       <field field_ref="pressure"  /> 
471       <field field_ref="field3D_resend" />
472    </file>
473
474    <file id="atm_output_other" output_freq="1ts" type="one_file" enabled="false">
475       <field field_ref="other_field3D" />
476       <field field_ref="other_field2D" /> 
477       <field field_ref="other_field_X" />
478       <field field_ref="other_field_Y" />
479       <field field_ref="other_field_XY" />
480       <field field_ref="other_field_Z" />
481       <field field_ref="other_field_XYZ" />
482       <field field_ref="other_field_XZ" />
483       <field field_ref="other_field_YZ" />
484       <field field_ref="other_pressure"  /> 
485       <field field_ref="other_field3D_resend" />
486    </file>
487
488    <file id="atm_output_W" output_freq="1ts" enabled="false">
489       <field field_ref="field3D_W" />
490       <field field_ref="field2D_W" /> 
491       <field field_ref="field_XW" />
492       <field field_ref="field_YW" />
493       <field field_ref="field_XYW" />
494       <field field_ref="field_ZW" />
495       <field field_ref="field_XYZW" />
496       <field field_ref="field_XZW" />
497       <field field_ref="field_YZW" />
498    </file>
499   
500   
501  </file_definition>
502 
503 
504</context>
Note: See TracBrowser for help on using the repository browser.