File: nonlinear.sh

package info (click to toggle)
gerris 20131206%2Bdfsg-21
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 14,252 kB
  • sloc: ansic: 66,595; sh: 15,922; f90: 1,513; makefile: 1,150; fortran: 696; python: 493; awk: 104; lisp: 89; xml: 27
file content (44 lines) | stat: -rw-r--r-- 1,433 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#!/bin/bash

# exit on errors
set -e

if test x$donotrun != xtrue; then
    for omega in 0 1; do
	gerris2D -DOMEGA=$omega nonlinear.gfs
	gerris2D -DOMEGA=$omega river.gfs
	gerris3D -DOMEGA=$omega ocean.gfs
    done
fi

for  omega in 0 1; do
    gnuplot <<EOF
set term postscript eps color solid lw 2 18
set output 'error-$omega.eps'
set xlabel 'Time'
set ylabel 'Maximum relative error'
set xrange [0.01:]
set logscale y
plot 'error-$omega' u 3:9 w l t 'Incompressible', \
     'error-ocean-$omega' u 3:9 w l t 'Linearised free surface', \
     'error-river-$omega' u 3:9 w l t 'Saint-Venant'
EOF

    echo "Save end-$omega.eps { format = EPS }" | gfsview-batch2D end-$omega.gfs error.gfv
    echo "Save end-river-$omega.eps { format = EPS }" | \
	gfsview-batch2D end-river-$omega.gfs error.gfv
    echo "Save end-ocean-$omega.eps { format = EPS }" | \
	gfsview-batch3D end-ocean-$omega.gfs error-ocean.gfv
done

python <<EOF
from check import *
from sys import *
if (Curve('error-1',3,9) - Curve('error-1.ref',3,9)).max() > 1e-7 or\
   (Curve('error-river-1',3,9) - Curve('error-river-1.ref',3,9)).max() > 1e-7 or\
   (Curve('error-ocean-1',3,9) - Curve('error-ocean-1.ref',3,9)).max() > 1e-7:
    print (Curve('error-1',3,9) - Curve('error-1.ref',3,9)).max()
    print (Curve('error-river-1',3,9) - Curve('error-river-1.ref',3,9)).max()
    print (Curve('error-ocean-1',3,9) - Curve('error-ocean-1.ref',3,9)).max()
    exit(1)
EOF