New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
sette_rpt in branches/2017/dev_r7663_ISOMIP_TEST_CASE/NEMOGCM/SETTE – NEMO

source: branches/2017/dev_r7663_ISOMIP_TEST_CASE/NEMOGCM/SETTE/sette_rpt @ 7700

Last change on this file since 7700 was 7646, checked in by timgraham, 7 years ago

Merge of dev_merge_2016 into trunk. UPDATE TO ARCHFILES NEEDED for XIOS2.
LIM_SRC_s/limrhg.F90 to follow in next commit due to change of kind (I'm unable to do it in this commit).
Merged using the following steps:

1) svn merge --reintegrate svn+ssh://forge.ipsl.jussieu.fr/ipsl/forge/projets/nemo/svn/trunk .
2) Resolve minor conflicts in sette.sh and namelist_cfg for ORCA2LIM3 (due to a change in trunk after branch was created)
3) svn commit
4) svn switch svn+ssh://forge.ipsl.jussieu.fr/ipsl/forge/projets/nemo/svn/trunk
5) svn merge svn+ssh://forge.ipsl.jussieu.fr/ipsl/forge/projets/nemo/svn/branches/2016/dev_merge_2016 .
6) At this stage I checked out a clean copy of the branch to compare against what is about to be committed to the trunk.
6) svn commit #Commit code to the trunk

In this commit I have also reverted a change to Fcheck_archfile.sh which was causing problems on the Paris machine.

  • Property svn:executable set to *
File size: 19.2 KB
Line 
1#!/bin/csh -f
2#
3# simple SETTE report generator.
4#
5# This version should be run in the SETTE directory.
6# The machine name will be picked up from the sette.sh script but the location of the
7# validation directory needs to be set here (currently assumed to reside in the ../CONFIG directory)
8#
9  set mach = `grep "COMPILER=" ./sette.sh | sed -e 's/COMPILER=//'`
10  set NEMO_VALID = `grep "NEMO_VALIDATION_DIR=" ./param.cfg | sed -e 's/NEMO_VALIDATION_DIR=//'`
11#
12  if ( ! -d $NEMO_VALID ) then
13    echo "$NEMO_VALID validation directory not found"
14  endif
15#
16  set basedir = `pwd`
17  cd $NEMO_VALID
18#
19# The script also needs the date or revision tag. Currently this is taken from the latest sub-directory found in each directory
20#
21#
22# Now loop through all the test directories. On the second pass the user can optionally examine any mismatched
23# outputs
24#
25# This is crude but readable and easily extended for new test configurations
26
27foreach pass (0 1 )
28  if ( -d ./WGYRE_LONG ) then
29    set dorv = `ls -1rtd ./WGYRE_LONG/{$mach}/* | tail -1l `
30    set dorv = $dorv:t
31    set f1o = ./WGYRE_LONG/{$mach}/{$dorv}/LONG/ocean.output
32    set f1s = ./WGYRE_LONG/{$mach}/{$dorv}/LONG/solver.stat
33    set f2o = ./WGYRE_LONG/{$mach}/{$dorv}/SHORT/ocean.output
34    set f2s = ./WGYRE_LONG/{$mach}/{$dorv}/SHORT/solver.stat
35 
36    set nl = `wc -l $f2s`
37    tail -$nl[1] $f1s > f1.tmp$$
38    cmp -s f1.tmp$$ $f2s
39    if ( $status == 0 ) then
40      echo "GYRE        restartability  passed"
41    else
42      echo "GYRE        restartability  FAILED"
43      if ( $pass == 1 ) then
44        echo "<return> to view solver.stat differences"
45        set y = $<
46        sdiff f1.tmp$$ $f2s
47        echo "<return> to view ocean.output differences"
48        set y = $<
49        sdiff $f1o $f2o | grep "|"
50        echo "<return> to continue"
51        set y = $<
52      endif
53    endif
54    rm f1.tmp$$
55  endif
56
57  if ( -d ./WISOMIP_LONG ) then
58    set dorv = `ls -1rtd ./WISOMIP_LONG/{$mach}/* | tail -1l `
59    set dorv = $dorv:t
60    set f1o = ./WISOMIP_LONG/{$mach}/{$dorv}/LONG/ocean.output
61    set f1s = ./WISOMIP_LONG/{$mach}/{$dorv}/LONG/solver.stat
62    set f2o = ./WISOMIP_LONG/{$mach}/{$dorv}/SHORT/ocean.output
63    set f2s = ./WISOMIP_LONG/{$mach}/{$dorv}/SHORT/solver.stat
64
65    set nl = `wc -l $f2s`
66    tail -$nl[1] $f1s > f1.tmp$$
67    cmp -s f1.tmp$$ $f2s
68    if ( $status == 0 ) then
69      echo "ISOMIP      restartability  passed"
70    else
71      echo "ISOMIP      restartability  FAILED"
72      if ( $pass == 1 ) then
73        echo "<return> to view solver.stat differences"
74        set y = $<
75        sdiff f1.tmp$$ $f2s
76        echo "<return> to view ocean.output differences"
77        set y = $<
78        sdiff $f1o $f2o | grep "|"
79        echo "<return> to continue"
80        set y = $<
81      endif
82    endif
83    rm f1.tmp$$
84  endif
85
86 
87  if ( -d ./WORCA2LIM3PIS_LONG ) then
88    set dorv = `ls -1rtd ./WORCA2LIM3PIS_LONG/{$mach}/* | tail -1l `
89    set dorv = $dorv:t
90    set f1o = ./WORCA2LIM3PIS_LONG/{$mach}/{$dorv}/LONG/ocean.output
91    set f1s = ./WORCA2LIM3PIS_LONG/{$mach}/{$dorv}/LONG/solver.stat
92    set f1t = ./WORCA2LIM3PIS_LONG/{$mach}/{$dorv}/LONG/tracer.stat
93    set f2o = ./WORCA2LIM3PIS_LONG/{$mach}/{$dorv}/SHORT/ocean.output
94    set f2s = ./WORCA2LIM3PIS_LONG/{$mach}/{$dorv}/SHORT/solver.stat
95    set f2t = ./WORCA2LIM3PIS_LONG/{$mach}/{$dorv}/SHORT/tracer.stat
96
97    set stato = 0
98    set nl = `wc -l $f2s`
99    tail -$nl[1] $f1s > f1.tmp$$
100    cmp -s f1.tmp$$ $f2s
101    if ( $status == 0 ) then
102      echo "ORCA2LIM3PIS solver.stat restartability  passed"
103    else
104      set stato = 1
105      echo "ORCA2LIM3PIS solver.stat restartability  FAILED"
106      if ( $pass == 1 ) then
107        echo "<return> to view solver.stat differences"
108        set y = $<
109        sdiff f1.tmp$$ $f2s
110      endif
111    endif
112
113    set nl = `wc -l $f2t`
114    tail -$nl[1] $f1t > f1.tmp$$
115    cmp -s f1.tmp$$ $f2t
116    if ( $status == 0 ) then
117      echo "ORCA2LIM3PIS tracer.stat restartability  passed"
118    else
119      set stato = 1
120      echo "ORCA2LIM3PIS tracer.stat restartability  FAILED"
121      if ( $pass == 1 ) then
122        echo "<return> to view tracer.stat differences"
123        set y = $<
124        sdiff f1.tmp$$ $f2t
125      endif
126    endif
127    if ( $stato == 1 ) then
128      if ( $pass == 1 ) then
129        echo "<return> to view ocean.output differences"
130        set y = $<
131        sdiff $f1o $f2o | grep "|"
132        echo "<return> to continue"
133        set y = $<
134      endif
135      set stato = 0
136    endif
137    rm f1.tmp$$
138  endif
139
140  if ( -d ./WORCA2OFFPIS_LONG ) then
141    set dorv = `ls -1rtd ./WORCA2OFFPIS_LONG/{$mach}/* | tail -1l `
142    set dorv = $dorv:t
143    set f1o = ./WORCA2OFFPIS_LONG/{$mach}/{$dorv}/LONG/ocean.output
144    set f1s = ./WORCA2OFFPIS_LONG/{$mach}/{$dorv}/LONG/tracer.stat
145    set f2o = ./WORCA2OFFPIS_LONG/{$mach}/{$dorv}/SHORT/ocean.output
146    set f2s = ./WORCA2OFFPIS_LONG/{$mach}/{$dorv}/SHORT/tracer.stat
147
148    set nl = `wc -l $f2s`
149    tail -$nl[1] $f1s > f1.tmp$$
150    cmp -s f1.tmp$$ $f2s
151    if ( $status == 0 ) then
152      echo "ORCA2OFFPIS restartability  passed"
153    else
154      echo "ORCA2OFFPIS restartability  FAILED"
155      if ( $pass == 1 ) then
156        echo "<return> to view tracer.stat differences"
157        set y = $<
158        sdiff f1.tmp$$ $f2s
159        echo "<return> to view ocean.output differences"
160        set y = $<
161        sdiff $f1o $f2o | grep "|"
162        echo "<return> to continue"
163        set y = $<
164      endif
165    endif
166    rm f1.tmp$$
167  endif
168 
169  if ( -d ./WAMM12_LONG ) then
170    set dorv = `ls -1rtd ./WAMM12_LONG/{$mach}/* | tail -1l `
171    set dorv = $dorv:t
172    set f1o = ./WAMM12_LONG/{$mach}/{$dorv}/LONG/ocean.output
173    set f1s = ./WAMM12_LONG/{$mach}/{$dorv}/LONG/solver.stat
174    set f2o = ./WAMM12_LONG/{$mach}/{$dorv}/SHORT/ocean.output
175    set f2s = ./WAMM12_LONG/{$mach}/{$dorv}/SHORT/solver.stat
176
177    set nl = `wc -l $f2s`
178    tail -$nl[1] $f1s > f1.tmp$$
179    cmp -s f1.tmp$$ $f2s
180    if ( $status == 0 ) then
181      echo "AMM12       restartability  passed"
182    else
183      echo "AMM12       restartability  FAILED"
184      if ( $pass == 1 ) then
185        echo "<return> to view solver.stat differences"
186        set y = $<
187        sdiff f1.tmp$$ $f2s
188        echo "<return> to view ocean.output differences"
189        set y = $<
190        sdiff $f1o $f2o | grep "|"
191        echo "<return> to continue"
192        set y = $<
193      endif
194    endif
195    rm f1.tmp$$
196  endif
197  if ( -d ./WORCA2LIM3_LONG ) then
198    set dorv = `ls -1rtd ./WORCA2LIM3_LONG/{$mach}/* | tail -1l `
199    set dorv = $dorv:t
200    set f1o = ./WORCA2LIM3_LONG/{$mach}/{$dorv}/LONG/ocean.output
201    set f1s = ./WORCA2LIM3_LONG/{$mach}/{$dorv}/LONG/solver.stat
202    set f2o = ./WORCA2LIM3_LONG/{$mach}/{$dorv}/SHORT/ocean.output
203    set f2s = ./WORCA2LIM3_LONG/{$mach}/{$dorv}/SHORT/solver.stat
204    set nl = `wc -l $f2s`
205    tail -$nl[1] $f1s > f1.tmp$$
206    cmp -s f1.tmp$$ $f2s
207    if ( $status == 0 ) then
208      echo "ORCA2LIM3   restartability  passed"
209    else
210      echo "ORCA2LIM3   restartability  FAILED"
211      if ( $pass == 1 ) then
212        echo "<return> to view solver.stat differences"
213        set y = $<
214        sdiff f1.tmp$$ $f2s
215        echo "<return> to view ocean.output differences"
216        set y = $<
217        sdiff $f1o $f2o | grep "|"
218        echo "<return> to continue"
219        set y = $<
220      endif
221    endif
222    rm f1.tmp$$
223  endif
224
225  if ( -d ./WSAS_LONG ) then
226    set dorv = `ls -1rtd ./WSAS_LONG/{$mach}/* | tail -1l `
227    set dorv = $dorv:t
228    set f1o = ./WSAS_LONG/{$mach}/{$dorv}/LONG/ocean.output
229    set f1s = ./WSAS_LONG/{$mach}/{$dorv}/LONG/solver.stat
230    set f2o = ./WSAS_LONG/{$mach}/{$dorv}/SHORT/ocean.output
231    set f2s = ./WSAS_LONG/{$mach}/{$dorv}/SHORT/solver.stat
232    foreach f ( $f1o $f1s $f2o $f2s )
233     if ( ! -f $f ) then
234      echo 'SAS         restartability  inconclusive ( ' $f:t ' not found )'
235      goto NEXT1
236     endif
237    end
238
239    set nl = `wc -l $f2s`
240    tail -$nl[1] $f1s > f1.tmp$$
241    cmp -s f1.tmp$$ $f2s
242    if ( $status == 0 ) then
243      echo "SAS         restartability  passed"
244    else
245      echo "SAS         restartability  FAILED"
246      if ( $pass == 1 ) then
247        echo "<return> to view solver.stat differences"
248        set y = $<
249        sdiff f1.tmp$$ $f2s
250        echo "<return> to view ocean.output differences"
251        set y = $<
252        sdiff $f1o $f2o | grep "|"
253        echo "<return> to continue"
254        set y = $<
255      endif
256    endif
257    rm f1.tmp$$
258  endif
259
260NEXT1:
261 
262  if ( -d ./WGYRE_32 ) then
263    set dorv = `ls -1rtd ./WGYRE_32/{$mach}/* | tail -1l `
264    set dorv = $dorv:t
265    set f1o = ./WGYRE_32/{$mach}/{$dorv}/REPRO_4_8/ocean.output
266    set f1s = ./WGYRE_32/{$mach}/{$dorv}/REPRO_4_8/solver.stat
267    set f2o = ./WGYRE_32/{$mach}/{$dorv}/REPRO_8_4/ocean.output
268    set f2s = ./WGYRE_32/{$mach}/{$dorv}/REPRO_8_4/solver.stat
269 
270    cmp -s $f1s $f2s
271    if ( $status == 0 ) then
272      echo "GYRE        reproducibility passed"
273    else
274      echo "GYRE        reproducibility FAILED"
275      if ( $pass == 1 ) then
276        echo "<return> to view solver.stat differences"
277        set y = $<
278        sdiff $f1s $f2s
279        echo "<return> to view ocean.output differences"
280        set y = $<
281        sdiff $f1o $f2o | grep "|"
282        echo "<return> to continue"
283        set y = $<
284      endif
285    endif
286  endif
287
288  if ( -d ./WISOMIP_32 ) then
289    set dorv = `ls -1rtd ./WISOMIP_32/{$mach}/* | tail -1l `
290    set dorv = $dorv:t
291    set f1o = ./WISOMIP_32/{$mach}/{$dorv}/REPRO_4_8/ocean.output
292    set f1s = ./WISOMIP_32/{$mach}/{$dorv}/REPRO_4_8/solver.stat
293    set f2o = ./WISOMIP_32/{$mach}/{$dorv}/REPRO_8_4/ocean.output
294    set f2s = ./WISOMIP_32/{$mach}/{$dorv}/REPRO_8_4/solver.stat
295
296    cmp -s $f1s $f2s
297    if ( $status == 0 ) then
298      echo "ISOMIP      reproducibility passed"
299    else
300      echo "ISOMIP      reproducibility FAILED"
301      if ( $pass == 1 ) then
302        echo "<return> to view solver.stat differences"
303        set y = $<
304        sdiff $f1s $f2s
305        echo "<return> to view ocean.output differences"
306        set y = $<
307        sdiff $f1o $f2o | grep "|"
308        echo "<return> to continue"
309        set y = $<
310      endif
311    endif
312  endif
313 
314  if ( -d ./WORCA2LIM3PIS_32 ) then
315    set dorv = `ls -1rtd ./WORCA2LIM3PIS_32/{$mach}/* | tail -1l `
316    set dorv = $dorv:t
317    set f1o = ./WORCA2LIM3PIS_32/{$mach}/{$dorv}/REPRO_4_8/ocean.output
318    set f1s = ./WORCA2LIM3PIS_32/{$mach}/{$dorv}/REPRO_4_8/solver.stat
319    set f1t = ./WORCA2LIM3PIS_32/{$mach}/{$dorv}/REPRO_4_8/tracer.stat
320    set f2o = ./WORCA2LIM3PIS_32/{$mach}/{$dorv}/REPRO_8_4/ocean.output
321    set f2s = ./WORCA2LIM3PIS_32/{$mach}/{$dorv}/REPRO_8_4/solver.stat
322    set f2t = ./WORCA2LIM3PIS_32/{$mach}/{$dorv}/REPRO_8_4/tracer.stat
323
324    set stato = 0
325    cmp -s $f1s $f2s
326    if ( $status == 0 ) then
327      echo "ORCA2LIM3PIS solver.stat reproducibility  passed"
328    else
329      set stato = 1
330      echo "ORCA2LIM3PIS solver.stat reproducibility  FAILED"
331      if ( $pass == 1 ) then
332        echo "<return> to view solver.stat differences"
333        set y = $<
334        sdiff $f1s $f2s
335      endif
336    endif
337
338    cmp -s $f1t $f2t
339    if ( $status == 0 ) then
340      echo "ORCA2LIM3PIS tracer.stat reproducibility  passed"
341    else
342      set stato = 1
343      echo "ORCA2LIM3PIS tracer.stat reproducibility  FAILED"
344      if ( $pass == 1 ) then
345        echo "<return> to view tracer.stat differences"
346        set y = $<
347        sdiff $f1t $f2t
348      endif
349    endif
350    if ( $stato == 1 ) then
351      if ( $pass == 1 ) then
352        echo "<return> to view ocean.output differences"
353        set y = $<
354        sdiff $f1o $f2o | grep "|"
355        echo "<return> to continue"
356        set y = $<
357      endif
358      set stato = 0
359    endif
360  endif
361
362  if ( -d ./WORCA2OFFPIS_32 ) then
363    set dorv = `ls -1rtd ./WORCA2OFFPIS_32/{$mach}/* | tail -1l `
364    set dorv = $dorv:t
365    set f1o = ./WORCA2OFFPIS_32/{$mach}/{$dorv}/REPRO_4_8/ocean.output
366    set f1s = ./WORCA2OFFPIS_32/{$mach}/{$dorv}/REPRO_4_8/tracer.stat
367    set f2o = ./WORCA2OFFPIS_32/{$mach}/{$dorv}/REPRO_8_4/ocean.output
368    set f2s = ./WORCA2OFFPIS_32/{$mach}/{$dorv}/REPRO_8_4/tracer.stat
369
370    cmp -s $f1s $f2s
371    if ( $status == 0 ) then
372      echo "ORCA2OFFPIS reproducibility passed"
373    else
374      echo "ORCA2OFFPIS reproducibility FAILED"
375      if ( $pass == 1 ) then
376        echo "<return> to view tracer.stat differences"
377        set y = $<
378        sdiff $f1s $f2s
379        echo "<return> to view ocean.output differences"
380        set y = $<
381        sdiff $f1o $f2o | grep "|"
382        echo "<return> to continue"
383        set y = $<
384      endif
385    endif
386  endif
387 
388  if ( -d ./WAMM12_32 ) then
389    set dorv = `ls -1rtd ./WAMM12_32/{$mach}/* | tail -1l `
390    set dorv = $dorv:t
391    set f1o = ./WAMM12_32/{$mach}/{$dorv}/REPRO_4_8/ocean.output
392    set f1s = ./WAMM12_32/{$mach}/{$dorv}/REPRO_4_8/solver.stat
393    set f2o = ./WAMM12_32/{$mach}/{$dorv}/REPRO_8_4/ocean.output
394    set f2s = ./WAMM12_32/{$mach}/{$dorv}/REPRO_8_4/solver.stat
395
396    cmp -s $f1s $f2s
397    if ( $status == 0 ) then
398      echo "AMM12       reproducibility passed"
399    else
400      echo "AMM12       reproducibility FAILED"
401      if ( $pass == 1 ) then
402        echo "<return> to view solver.stat differences"
403        set y = $<
404        sdiff $f1s $f2s
405        echo "<return> to view ocean.output differences"
406        set y = $<
407        sdiff $f1o $f2o | grep "|"
408        echo "<return> to continue"
409        set y = $<
410      endif
411    endif
412  endif
413
414  if ( -d ./WORCA2LIM3_16 ) then
415    set dorv = `ls -1rtd ./WORCA2LIM3_16/{$mach}/* | tail -1l `
416    set dorv = $dorv:t
417    set f1o = ./WORCA2LIM3_16/{$mach}/{$dorv}/REPRO_4_8/ocean.output
418    set f1s = ./WORCA2LIM3_16/{$mach}/{$dorv}/REPRO_4_8/solver.stat
419    set f2o = ./WORCA2LIM3_16/{$mach}/{$dorv}/REPRO_8_4/ocean.output
420    set f2s = ./WORCA2LIM3_16/{$mach}/{$dorv}/REPRO_8_4/solver.stat
421
422    cmp -s $f1s $f2s
423    if ( $status == 0 ) then
424      echo "ORCA2LIM3   reproducibility passed"
425    else
426      echo "ORCA2LIM3   reproducibility FAILED"
427      if ( $pass == 1 ) then
428        echo "<return> to view solver.stat differences"
429        set y = $<
430        sdiff $f1s $f2s
431        echo "<return> to view ocean.output differences"
432        set y = $<
433        sdiff $f1o $f2o | grep "|"
434        echo "<return> to continue"
435        set y = $<
436      endif
437    endif
438  endif
439
440
441  if ( -d ./WORCA2_LIM3_OBS ) then
442    set dorv = `ls -1rtd ./WORCA2_LIM3_OBS/{$mach}/* | tail -1l `
443    set dorv = $dorv:t
444    set f1o = ./WORCA2_LIM3_OBS/{$mach}/{$dorv}/REPRO_4_8/ocean.output
445    set f1s = ./WORCA2_LIM3_OBS/{$mach}/{$dorv}/REPRO_4_8/solver.stat
446    set f2o = ./WORCA2_LIM3_OBS/{$mach}/{$dorv}/REPRO_8_4/ocean.output
447    set f2s = ./WORCA2_LIM3_OBS/{$mach}/{$dorv}/REPRO_8_4/solver.stat
448
449    cmp -s $f1s $f2s
450    if ( $status == 0 ) then
451      echo "ORCA2_LIM3_OBS   reproducibility passed"
452    else
453      echo "ORCA2_LIM3_OBS   reproducibility FAILED"
454      if ( $pass == 1 ) then
455        echo "<return> to view solver.stat differences"
456        set y = $<
457        sdiff $f1s $f2s
458        echo "<return> to view ocean.output differences"
459        set y = $<
460        sdiff $f1o $f2o | grep "|"
461        echo "<return> to continue"
462        set y = $<
463      endif
464    endif
465  endif
466
467
468  if ( -d ./WSAS_32 ) then
469    set dorv = `ls -1rtd ./WSAS_32/{$mach}/* | tail -1l `
470    set dorv = $dorv:t
471    set f1o = ./WSAS_32/{$mach}/{$dorv}/REPRO_4_8/ocean.output
472    set f1s = ./WSAS_32/{$mach}/{$dorv}/REPRO_4_8/solver.stat
473    set f2o = ./WSAS_32/{$mach}/{$dorv}/REPRO_8_4/ocean.output
474    set f2s = ./WSAS_32/{$mach}/{$dorv}/REPRO_8_4/solver.stat
475
476    foreach f ( $f1o $f1s $f2o $f2s )
477     if ( ! -f $f ) then
478      echo 'SAS         reproducibility inconclusive ( ' $f:t ' not found )'
479      goto NEXT2
480     endif
481    end
482
483    cmp -s $f1s $f2s
484    if ( $status == 0 ) then
485      echo "SAS reproducibility passed"
486    else
487      echo "SAS reproducibility FAILED"
488      if ( $pass == 1 ) then
489        echo "<return> to view solver.stat differences"
490        set y = $<
491        sdiff $f1s $f2s
492        echo "<return> to view ocean.output differences"
493        set y = $<
494        sdiff $f1o $f2o | grep "|"
495        echo "<return> to continue"
496        set y = $<
497      endif
498    endif
499  endif
500NEXT2:
501
502  if ( -d ./WORCA2AGUL_1_2 ) then
503    set dorv = `ls -1rtd ./WORCA2AGUL_1_2/{$mach}/* | tail -1l `
504    set dorv = $dorv:t
505    set f1o = ./WORCA2AGUL_1_2/{$mach}/{$dorv}/SHORT/ocean.output
506    set f1s = ./WORCA2AGUL_1_2/{$mach}/{$dorv}/SHORT/solver.stat
507
508    if ( -f $f1o && -f  $f1s ) then
509      echo "ORCA2_LIM_AGRIF runability passed"
510    else
511      echo "ORCA2_LIM_AGRIF runability FAILED"
512    endif
513  endif
514
515
516  if ( -d ./WORCA2AGUL_LONG ) then
517    set dorv = `ls -1rtd ./WORCA2AGUL_LONG/{$mach}/* | tail -1l `
518    set dorv = $dorv:t
519    set f1o = ./WORCA2AGUL_LONG/{$mach}/{$dorv}/LONG/ocean.output
520    set f1s = ./WORCA2AGUL_LONG/{$mach}/{$dorv}/LONG/solver.stat
521    set f2o = ./WORCA2AGUL_LONG/{$mach}/{$dorv}/SHORT/ocean.output
522    set f2s = ./WORCA2AGUL_LONG/{$mach}/{$dorv}/SHORT/solver.stat
523 
524    set nl = `wc -l $f2s`
525    tail -$nl[1] $f1s > f1.tmp$$
526    cmp -s f1.tmp$$ $f2s
527    if ( $status == 0 ) then
528      echo "ORCA2_LIM_AGRIF restartability  passed"
529    else
530      echo "ORCA2_LIM_AGRIF restartability  FAILED"
531      if ( $pass == 1 ) then
532        echo "<return> to view solver.stat differences"
533        set y = $<
534        sdiff f1.tmp$$ $f2s
535        echo "<return> to view ocean.output differences"
536        set y = $<
537        sdiff $f1o $f2o | grep "|"
538        echo "<return> to continue"
539        set y = $<
540      endif
541    endif
542    rm f1.tmp$$
543  endif
544
545  if ( -d ./WORCA2AGUL_16 ) then
546    set dorv = `ls -1rtd ./WORCA2AGUL_16/{$mach}/* | tail -1l `
547    set dorv = $dorv:t
548    set f1o = ./WORCA2AGUL_16/{$mach}/{$dorv}/REPRO_2_8/ocean.output
549    set f1s = ./WORCA2AGUL_16/{$mach}/{$dorv}/REPRO_2_8/solver.stat
550    set f2o = ./WORCA2AGUL_16/{$mach}/{$dorv}/REPRO_4_4/ocean.output
551    set f2s = ./WORCA2AGUL_16/{$mach}/{$dorv}/REPRO_4_4/solver.stat
552 
553    cmp -s $f1s $f2s
554    if ( $status == 0 ) then
555      echo "ORCA2_LIM_AGRIF reproducibility passed"
556    else
557      echo "ORCA2_LIM_AGRIF reproducibility FAILED"
558      if ( $pass == 1 ) then
559        echo "<return> to view solver.stat differences"
560        set y = $<
561        sdiff $f1s $f2s
562        echo "<return> to view ocean.output differences"
563        set y = $<
564        sdiff $f1o $f2o | grep "|"
565        echo "<return> to continue"
566        set y = $<
567      endif
568    endif
569  endif
570
571  if ( -d ./WORCA2AGUL_2_2_NAG ) then
572    set dorv = `ls -1rtd ./WORCA2AGUL_2_2_NAG/{$mach}/* | tail -1l `
573    set dorv = $dorv:t
574    set f1o = ./WORCA2AGUL_2_2_NAG/{$mach}/{$dorv}/SHORT_NOAGRIF/ocean.output
575    set f1s = ./WORCA2AGUL_2_2_NAG/{$mach}/{$dorv}/SHORT_NOAGRIF/solver.stat
576    set dorv = `ls -1rtd ./WORCA2AGUL_2_2/{$mach}/* | tail -1l `
577    set dorv = $dorv:t
578    set f2o = ./WORCA2AGUL_2_2/{$mach}/{$dorv}/SHORT_NOZOOM/ocean.output
579    set f2s = ./WORCA2AGUL_2_2/{$mach}/{$dorv}/SHORT_NOZOOM/solver.stat
580 
581    cmp -s $f1s $f2s
582    if ( $status == 0 ) then
583      echo "ORCA2_LIM_AGRIF code corruption test passed"
584    else
585      echo "ORCA2_LIM_AGRIF code corruption test FAILED"
586      if ( $pass == 1 ) then
587        echo "<return> to view solver.stat differences"
588        set y = $<
589        sdiff $f1s $f2s
590        echo "<return> to view ocean.output differences"
591        set y = $<
592        sdiff $f1o $f2o | grep "|"
593        echo "<return> to continue"
594        set y = $<
595      endif
596    endif
597  endif
598
599  echo "<return> for second (more detailed) pass (y/n)"
600  set y = $<
601  if ( $y != "y" ) exit
602end
603cd $basedir
604exit
Note: See TracBrowser for help on using the repository browser.