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 trunk/NEMOGCM/SETTE – NEMO

source: trunk/NEMOGCM/SETTE/sette_rpt @ 6485

Last change on this file since 6485 was 6140, checked in by timgraham, 8 years ago

Merge of branches/2015/dev_merge_2015 back into trunk. Merge excludes NEMOGCM/TOOLS/OBSTOOLS/ for now due to issues with the change of file type. Will sort these manually with further commits.

Branch merged as follows:
In the working copy of branch ran:
svn merge svn+ssh://forge.ipsl.jussieu.fr/ipsl/forge/projets/nemo/svn/trunk@HEAD
Small conflicts due to bug fixes applied to trunk since the dev_merge_2015 was copied. Bug fixes were applied to the branch as well so these were easy to resolve.
Branch committed at this stage

In working copy run:
svn switch svn+ssh://forge.ipsl.jussieu.fr/ipsl/forge/projets/nemo/svn/trunk
to switch working copy

Run:
svn merge --reintegrate svn+ssh://forge.ipsl.jussieu.fr/ipsl/forge/projets/nemo/svn/branches/2015/dev_merge_2015
to merge the branch into the trunk and then commit - no conflicts at this stage.

  • Property svn:executable set to *
File size: 19.1 KB
RevLine 
[3667]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=//'`
[4991]10  set NEMO_VALID = `grep "NEMO_VALIDATION_DIR=" ./param.cfg | sed -e 's/NEMO_VALIDATION_DIR=//'`
[3667]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#
[4687]19# The script also needs the date or revision tag. Currently this is taken from the latest sub-directory found in each directory
[3667]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 )
[3715]28  if ( -d ./WGYRE_LONG ) then
[4687]29    set dorv = `ls -1rtd ./WGYRE_LONG/{$mach}/* | tail -1l `
30    set dorv = $dorv:t
[3715]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
[3667]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
[4687]40      echo "GYRE        restartability  passed"
[3667]41    else
[4687]42      echo "GYRE        restartability  FAILED"
[3667]43      if ( $pass == 1 ) then
44        echo "<return> to view solver.stat differences"
45        set y = $<
[3715]46        sdiff f1.tmp$$ $f2s
[3667]47        echo "<return> to view ocean.output differences"
48        set y = $<
[3715]49        sdiff $f1o $f2o | grep "|"
[3667]50        echo "<return> to continue"
51        set y = $<
52      endif
53    endif
54    rm f1.tmp$$
55  endif
[4990]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
[3667]86 
87  if ( -d ./WORCA2LIMPIS_LONG ) then
[4687]88    set dorv = `ls -1rtd ./WORCA2LIMPIS_LONG/{$mach}/* | tail -1l `
89    set dorv = $dorv:t
[3667]90    set f1o = ./WORCA2LIMPIS_LONG/{$mach}/{$dorv}/LONG/ocean.output
91    set f1s = ./WORCA2LIMPIS_LONG/{$mach}/{$dorv}/LONG/solver.stat
[6140]92    set f1t = ./WORCA2LIMPIS_LONG/{$mach}/{$dorv}/LONG/tracer.stat
[3667]93    set f2o = ./WORCA2LIMPIS_LONG/{$mach}/{$dorv}/SHORT/ocean.output
94    set f2s = ./WORCA2LIMPIS_LONG/{$mach}/{$dorv}/SHORT/solver.stat
[6140]95    set f2t = ./WORCA2LIMPIS_LONG/{$mach}/{$dorv}/SHORT/tracer.stat
96
97    set stato = 0
[3667]98    set nl = `wc -l $f2s`
99    tail -$nl[1] $f1s > f1.tmp$$
100    cmp -s f1.tmp$$ $f2s
101    if ( $status == 0 ) then
[6140]102      echo "ORCA2LIMPIS solver.stat restartability  passed"
[3667]103    else
[6140]104      set stato = 1
105      echo "ORCA2LIMPIS solver.stat restartability  FAILED"
[3667]106      if ( $pass == 1 ) then
107        echo "<return> to view solver.stat differences"
108        set y = $<
[3715]109        sdiff f1.tmp$$ $f2s
[6140]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 "ORCA2LIMPIS tracer.stat restartability  passed"
118    else
119      set stato = 1
120      echo "ORCA2LIMPIS 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
[3667]129        echo "<return> to view ocean.output differences"
130        set y = $<
[3715]131        sdiff $f1o $f2o | grep "|"
[3667]132        echo "<return> to continue"
133        set y = $<
134      endif
[6140]135      set stato = 0
[3667]136    endif
137    rm f1.tmp$$
138  endif
139
140  if ( -d ./WORCA2OFFPIS_LONG ) then
[4687]141    set dorv = `ls -1rtd ./WORCA2OFFPIS_LONG/{$mach}/* | tail -1l `
142    set dorv = $dorv:t
[3667]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 = $<
[3715]158        sdiff f1.tmp$$ $f2s
[3667]159        echo "<return> to view ocean.output differences"
160        set y = $<
[3715]161        sdiff $f1o $f2o | grep "|"
[3667]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
[4687]170    set dorv = `ls -1rtd ./WAMM12_LONG/{$mach}/* | tail -1l `
171    set dorv = $dorv:t
[3667]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 = $<
[3715]187        sdiff f1.tmp$$ $f2s
[3667]188        echo "<return> to view ocean.output differences"
189        set y = $<
[3715]190        sdiff $f1o $f2o | grep "|"
[3667]191        echo "<return> to continue"
192        set y = $<
193      endif
194    endif
195    rm f1.tmp$$
196  endif
[4990]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
[4687]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 )'
[4990]235      goto NEXT1
[4687]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
[4990]260NEXT1:
[3667]261 
[3715]262  if ( -d ./WGYRE_4 ) then
[4687]263    set dorv = `ls -1rtd ./WGYRE_4/{$mach}/* | tail -1l `
264    set dorv = $dorv:t
[3715]265    set f1o = ./WGYRE_4/{$mach}/{$dorv}/REPRO_1_4/ocean.output
266    set f1s = ./WGYRE_4/{$mach}/{$dorv}/REPRO_1_4/solver.stat
267    set f2o = ./WGYRE_4/{$mach}/{$dorv}/REPRO_2_2/ocean.output
268    set f2s = ./WGYRE_4/{$mach}/{$dorv}/REPRO_2_2/solver.stat
[3667]269 
270    cmp -s $f1s $f2s
271    if ( $status == 0 ) then
[4687]272      echo "GYRE        reproducibility passed"
[3667]273    else
[4687]274      echo "GYRE        reproducibility FAILED"
[3667]275      if ( $pass == 1 ) then
276        echo "<return> to view solver.stat differences"
277        set y = $<
[3715]278        sdiff $f1s $f2s
[3667]279        echo "<return> to view ocean.output differences"
280        set y = $<
[3715]281        sdiff $f1o $f2o | grep "|"
[3667]282        echo "<return> to continue"
283        set y = $<
284      endif
285    endif
286  endif
[4990]287
288  if ( -d ./WISOMIP_4 ) then
289    set dorv = `ls -1rtd ./WISOMIP_4/{$mach}/* | tail -1l `
290    set dorv = $dorv:t
291    set f1o = ./WISOMIP_4/{$mach}/{$dorv}/REPRO_1_4/ocean.output
292    set f1s = ./WISOMIP_4/{$mach}/{$dorv}/REPRO_1_4/solver.stat
293    set f2o = ./WISOMIP_4/{$mach}/{$dorv}/REPRO_2_2/ocean.output
294    set f2s = ./WISOMIP_4/{$mach}/{$dorv}/REPRO_2_2/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 
[3667]314  if ( -d ./WORCA2LIMPIS_16 ) then
[4687]315    set dorv = `ls -1rtd ./WORCA2LIMPIS_16/{$mach}/* | tail -1l `
316    set dorv = $dorv:t
[3667]317    set f1o = ./WORCA2LIMPIS_16/{$mach}/{$dorv}/REPRO_2_8/ocean.output
318    set f1s = ./WORCA2LIMPIS_16/{$mach}/{$dorv}/REPRO_2_8/solver.stat
[6140]319    set f1t = ./WORCA2LIMPIS_16/{$mach}/{$dorv}/REPRO_2_8/tracer.stat
[3667]320    set f2o = ./WORCA2LIMPIS_16/{$mach}/{$dorv}/REPRO_4_4/ocean.output
321    set f2s = ./WORCA2LIMPIS_16/{$mach}/{$dorv}/REPRO_4_4/solver.stat
[6140]322    set f2t = ./WORCA2LIMPIS_16/{$mach}/{$dorv}/REPRO_4_4/tracer.stat
323
324    set stato = 0
[3667]325    cmp -s $f1s $f2s
326    if ( $status == 0 ) then
[6140]327      echo "ORCA2LIMPIS solver.stat reproducibility  passed"
[3667]328    else
[6140]329      set stato = 1
330      echo "ORCA2LIMPIS solver.stat reproducibility  FAILED"
[3667]331      if ( $pass == 1 ) then
332        echo "<return> to view solver.stat differences"
333        set y = $<
[3715]334        sdiff $f1s $f2s
[6140]335      endif
336    endif
337
338    cmp -s $f1t $f2t
339    if ( $status == 0 ) then
340      echo "ORCA2LIMPIS tracer.stat reproducibility  passed"
341    else
342      set stato = 1
343      echo "ORCA2LIMPIS 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
[3667]352        echo "<return> to view ocean.output differences"
353        set y = $<
[3715]354        sdiff $f1o $f2o | grep "|"
[3667]355        echo "<return> to continue"
356        set y = $<
357      endif
[6140]358      set stato = 0
[3667]359    endif
360  endif
361
362  if ( -d ./WORCA2OFFPIS_16 ) then
[4687]363    set dorv = `ls -1rtd ./WORCA2OFFPIS_16/{$mach}/* | tail -1l `
364    set dorv = $dorv:t
[3667]365    set f1o = ./WORCA2OFFPIS_16/{$mach}/{$dorv}/REPRO_2_8/ocean.output
366    set f1s = ./WORCA2OFFPIS_16/{$mach}/{$dorv}/REPRO_2_8/tracer.stat
367    set f2o = ./WORCA2OFFPIS_16/{$mach}/{$dorv}/REPRO_4_4/ocean.output
368    set f2s = ./WORCA2OFFPIS_16/{$mach}/{$dorv}/REPRO_4_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 = $<
[3715]378        sdiff $f1s $f2s
[3667]379        echo "<return> to view ocean.output differences"
380        set y = $<
[3715]381        sdiff $f1o $f2o | grep "|"
[3667]382        echo "<return> to continue"
383        set y = $<
384      endif
385    endif
386  endif
387 
388  if ( -d ./WAMM12_32 ) then
[4687]389    set dorv = `ls -1rtd ./WAMM12_32/{$mach}/* | tail -1l `
390    set dorv = $dorv:t
[3667]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 = $<
[3715]404        sdiff $f1s $f2s
[3667]405        echo "<return> to view ocean.output differences"
406        set y = $<
[3715]407        sdiff $f1o $f2o | grep "|"
[3667]408        echo "<return> to continue"
409        set y = $<
410      endif
411    endif
412  endif
413
[4990]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_2_8/ocean.output
418    set f1s = ./WORCA2LIM3_16/{$mach}/{$dorv}/REPRO_2_8/solver.stat
419    set f2o = ./WORCA2LIM3_16/{$mach}/{$dorv}/REPRO_4_4/ocean.output
420    set f2s = ./WORCA2LIM3_16/{$mach}/{$dorv}/REPRO_4_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
[5836]441  if ( -d ./WORCA2_LIM_OBS ) then
442    set dorv = `ls -1rtd ./WORCA2_LIM_OBS/{$mach}/* | tail -1l `
443    set dorv = $dorv:t
444    set f1o = ./WORCA2_LIM_OBS/{$mach}/{$dorv}/REPRO_2_8/ocean.output
445    set f1s = ./WORCA2_LIM_OBS/{$mach}/{$dorv}/REPRO_2_8/solver.stat
446    set f2o = ./WORCA2_LIM_OBS/{$mach}/{$dorv}/REPRO_4_4/ocean.output
447    set f2s = ./WORCA2_LIM_OBS/{$mach}/{$dorv}/REPRO_4_4/solver.stat
448
449    cmp -s $f1s $f2s
450    if ( $status == 0 ) then
451      echo "ORCA2_LIM_OBS   reproducibility passed"
452    else
453      echo "ORCA2_LIM_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
[4687]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 )'
[4990]479      goto NEXT2
[4687]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
[4990]500NEXT2:
[4687]501
[3715]502  if ( -d ./WORCA2AGUL_1_2 ) then
[4687]503    set dorv = `ls -1rtd ./WORCA2AGUL_1_2/{$mach}/* | tail -1l `
504    set dorv = $dorv:t
[3715]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
[5589]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
[3667]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.