source: BOL/script_install/install.sh @ 2164

Last change on this file since 2164 was 2164, checked in by Laurent Fairhead, 10 years ago

back to compile_with_fcm = 0 for 1+1=2

File size: 20.4 KB
Line 
1#!/bin/bash
2
3###########################################################################
4# Author : Frédéric Hourdin/LMD/hourdin@lmd.jussieu.fr
5# Usage  : install.sh
6#
7# bash installation script of the LMDZ model on a Linux PC.
8# the model is downloaded in the following direcory tree
9# $MODEL/modipsl/modeles/...
10# using the "modipsl" infrastructure created by the "IPSL"
11# for coupled (atmosphere/ocean/vegetation/chemistry) climate modeling
12# activities.
13# Here we only download atmospheric (LMDZ) and vegetation (ORCHIDEE)
14# components.
15#
16# The sources of the models can be found in the "modeles" directory.
17# In the present case, LMDZ5, ORCHIDEE and IOIPSL (handling of input-outputs
18# using the NetCDF library.
19#
20# The script downloads various source files (including a version of NetCDF)
21# and utilities, compiles the model, and runs a test simulation in a
22# munimal configuration.
23#
24# Prerequisites : g95/pgf90/gfortran, ksh, wget , gunzip, tar, ...
25#
26# Modif 18/11/2011
27#    changes for option real 8.
28#      We comopile with -r8 (or equivalent) and -DNC_DOUBLE for the GCM
29#      but with -r4 for netcdf. Variable real must be set to
30#      r4 or r8 at the beginning of the script below.
31#
32###########################################################################
33
34echo install.sh DEBUT `date`
35
36set -e
37
38echo '################################################################'
39echo  Choice of installation options
40echo '################################################################'
41
42
43#real=r4
44real=r8
45
46# WARNING !!!! For versions before october 2009, use
47# install.v2.sh instead of install.sh
48
49version=20130716.trunk
50version=testing
51compilo=gfortran # compilo=pgf90 or g95 or gfortran or ifort sur PC linux
52
53#Chemin pour placer le modele
54MODEL=./LMDZ$version
55
56
57getlmdzor=1
58netcdf=1   #  1 for automatic installation
59           #  0 for no installation
60           #  /.../../netcdf-4.0.1 if wanting to link with an already
61           #  compiled netcdf library (implies to check option compatibility)
62check_linux=1
63ioipsl=1
64veget=1
65bench=1
66pclinux=1
67
68# choose the resolution for the bench runs
69# grid_resolution= 32x24x11 or 48x36x19 for tests (test without ORCHIDEE)
70#                  96x71x19  standard configuration
71grid_resolution=48x36x19
72
73## compile_with_fcm=1 : use makelmdz_fcm, possible a of version 20111103.trunk (LMDZ5/trunk rev 1578)
74## compile_with_fcm=0 : use makelmdz
75compile_with_fcm=0
76arch=local
77
78sequential=1
79
80
81#####################################################################
82# Test for old gfortran compilers
83# If the compiler is too old (older than 4.3.x) we test if the
84# temporary gfortran44 patch is available on the computer in which
85# case the compiler is changed from gfortran to gfortran44
86# Must be aware than parallelism can not be activated in this case
87#####################################################################
88
89if [ $compilo = gfortran ] ; then
90   gfortran=gfortran
91   gfortranv=`gfortran --version | \
92   head -1 | awk ' { print $NF } ' | awk -F. ' { print $1 * 10 + $2 } '`
93   if [ $gfortranv -le 43 ] ; then
94       echo ERROR : Your gfortran compiler is too old
95       echo 'Please choose a new one (g95, ifort) and change the line'
96       echo compilo=xxx
97       echo in the install.sh script and rerun it
98       if [ `which gfortran44 | wc -w` -ne 0 ] ; then
99          gfortran=gfortran44
100       else
101          echo gfotran trop vieux ; exit
102       fi
103   fi
104   compilo=$gfortran
105fi
106#####################################################################
107
108
109
110OPTPREC=""
111echo '################################################################'
112echo  Choix des options de compilation
113echo '################################################################'
114
115OPTIMNC=$OPTIM
116export FC=$compilo
117export F90=$compilo
118export F77=$compilo
119export CPPFLAGS=
120BASE_LD=
121if [ $compilo = g95 ] ; then
122# Set the appropriate compilation options
123   OPTIM='-i4 -O3'
124   OPTDEB="-g -O0 -Wall -ftrace=full -fbounds-check -freal=nan"
125   OPTDEV="-g -O1 -Wall"
126   fmod='fmod='
127   BASE_LD=""
128   if [ $real = r8 ] ; then OPTPREC="-r8 -DNC_DOUBLE" ; fi
129   export F90FLAGS=" -cpp -ffree-form $OPTIMNC"
130   export FFLAGS=" -cpp $OPTIMNC"
131   export CPPFLAGS=-Df2cFortran
132   export CC=gcc
133   export CXX=g++
134elif [ $compilo = $gfortran ] ; then
135   OPTIM='-O3'
136   OPTDEB="-g3 -Wall -fbounds-check -ffpe-trap=invalid,zero,overflow -O0 -fstack-protector-all"
137   OPTDEV="-Wall -fbounds-check"
138   fmod='I '
139#   OPTPREC="-ffree-line-length-0"
140#   if [ $real = r8 ] ; then OPTPREC="$OPTPREC -fdefault-real-8 -DNC_DOUBLE" ; fi
141   if [ $real = r8 ] ; then OPTPREC=" -fdefault-real-8 -DNC_DOUBLE" ; fi
142   export F90FLAGS=" -ffree-form $OPTIMNC"
143   export FFLAGS=" $OPTIMNC"
144   export CC=gcc
145   export CXX=g++
146elif [ $compilo = mpif90 ] ; then
147   OPTIM='-O3'
148   OPTDEB="-g3 -Wall -fbounds-check -ffpe-trap=invalid,zero,overflow -O0 -fstack-protector-all"
149   OPTDEV="-Wall -fbounds-check"
150   BASE_LD="-lblas"
151   fmod='I '
152   if [ $real = r8 ] ; then OPTPREC="-fdefault-real-8 -DNC_DOUBLE -fcray-pointer" ; fi
153   export F90FLAGS=" -ffree-form $OPTIMNC"
154   export FFLAGS=" $OPTIMNC"
155   export CC=gcc
156   export CXX=g++
157elif [ $compilo = pgf90 ] ; then
158   OPTIM='-O2 -Munroll -Mnoframe -Mautoinline -Mcache_align'
159   fmod='module '
160   if [ $real = r8 ] ; then OPTPREC="-r8 -DNC_DOUBLE" ; fi
161   export CPPFLAGS="-DNDEBUG -DpgiFortran"
162   export CC=pgcc
163   export CFLAGS="-Msignextend"
164   export CXX=pgCC
165   export CXXFLAGS="-Msignextend"
166   export FFLAGS="$OPTIMNC"
167   export F90FLAGS="$OPTIMNC"
168   compile_with_fcm=1
169elif [ $compilo = ifort ] ; then
170   OPTIM="-O2 -fp-model strict -ip -align all "
171   OPTDEV="-p -g -O2 -traceback -fp-stack-check -ftrapuv -check"
172   OPTDEB="-g -no-ftz -traceback -ftrapuv -fp-stack-check -check"
173   fmod='module '
174   if [ $real = r8 ] ; then OPTPREC="-real-size 64 -DNC_DOUBLE" ; fi
175   export CPP="icc -E"
176   export FFLAGS="-O2 -ip -fpic -mcmodel=large"
177   export FCFLAGS="-O2 -ip -fpic -mcmodel=large"
178   export CC=icc
179   export CFLAGS="-O2 -ip -fpic -mcmodel=large"
180   export CXX=icpc
181   export CXXFLAGS="-O2 -ip -fpic -mcmodel=large"
182   compile_with_fcm=1
183else
184   echo unexpected compiler $compilo ; exit
185fi
186
187OPTIMGCM="$OPTIM $OPTPREC"
188
189hostname=`hostname`
190
191##########################################################################
192# If installing on know machines such as IBM x3750 (Ada)
193# at IDRIS, don't check for available software and don"t install netcdf
194if [ ${hostname:0:5} = ada33 ] ; then
195  netcdf=0 # no need to recompile netcdf, alreday available
196  check_linux=0
197  pclinux=0
198  ioipsl=0 # no need to recompile ioipsl, already available
199  #netcdf="/smplocal/pub/NetCDF/4.1.3"
200  compilo="ifort"
201  fmod='module '
202  if [ $real = r8 ] ; then OPTPREC="-real-size 64 -DNC_DOUBLE" ; fi
203  OPTIM="-O2 -fp-model strict -ip -axAVX,SSE4.2 -align all "
204  OPTIMGCM="$OPTIM $OPTPREC"
205fi
206##########################################################################
207
208
209mkdir -p $MODEL
210echo $MODEL
211MODEL=`( cd $MODEL ; pwd )` # to get absolute path, if necessary
212
213
214
215# Option -fendian=big is only to be used with ARPEGE1D.
216# The -r8 should probably be avoided if running on 32 bit machines
217# Option r8 is not mandatory and generates larger executables.
218# It is however mandatory if using ARPEGE1D
219# Better optimization options might be a better choice (e.g. -O3)
220
221
222echo '################################################################'
223if [ "$check_linux" = 1 ] ; then
224echo   Check if required software is available
225echo '################################################################'
226
227#### Ehouarn: test if ksh and/or bash are available
228use_shell="ksh" # default: use ksh
229if [ "`which ksh`" = "" ] ; then
230  echo "no ksh ... we will use bash"
231  use_shell="bash"
232  if [ "`which bash`" = "" ] ; then
233    echo "ksh (or bash) needed!! Install it!"
234  fi
235fi
236
237
238for logiciel in csh wget tar gzip make $compilo gcc ; do
239if [ "`which $logiciel`" = "" ] ; then
240echo You must first install $logiciel on your system
241exit
242fi
243done
244
245if [ $pclinux = 1 ] ; then
246cd $MODEL
247cat <<eod > tt.f90
248print*,'coucou'
249end
250eod
251$compilo tt.f90 -o a.out
252./a.out >| tt
253if [ "`cat tt | sed -e 's/ //g' `" != "coucou" ] ; then
254echo problem installing with compiler $compilo ; exit ; fi
255\rm tt a.out tt.f90
256fi
257fi
258
259###########################################################################
260if [ $getlmdzor = 1 ] ; then
261echo '##########################################################'
262echo  Download a slightly modified version of  LMDZ
263echo '##########################################################'
264cd $MODEL
265wget http://www.lmd.jussieu.fr/~lmdz/DistribG95/modipsl.$version.tar.gz
266echo install.sh wget_OK `date`
267gunzip modipsl.$version.tar.gz
268tar xvf modipsl.$version.tar
269\rm modipsl.$version.tar
270
271# We download LMDZ and make some modifications to make it
272#compatible with $compilo
273# and we use an old stable but robust and well tested version of ORCHIDEE
274# That version of ORCHIDEE can be obtained using
275# wget http://www.lmd.jussieu.fr/~lmdz/DistribG95/getlmdzor.x
276fi
277
278echo OK1
279
280if [ $netcdf = 1 ] ; then
281echo '##########################################################'
282echo Compiling the Netcdf library
283echo '##########################################################'
284cd $MODEL
285wget http://www.lmd.jussieu.fr/~lmdz/DistribG95/netcdf-4.0.1.tar.gz
286gunzip netcdf-4.0.1.tar.gz
287tar xvf netcdf-4.0.1.tar
288\rm -f netcdf-4.0.1.tar
289
290cd netcdf-4.0.1
291
292sed -e 's/gfortran/'$gfortran'/g' configure >| tmp ; mv -f tmp configure ; chmod +x configure
293localdir=`pwd -P`
294./configure --prefix=$localdir
295sed -e 's/gfortran/'$gfortran'/g' Makefile >| tmp ; mv -f tmp Makefile
296make check
297make install
298echo install.sh netcdf_OK `date`
299fi # of if [ $netcdf = 1 ]
300
301
302#=======================================================================================
303echo OK2 ioipsl=$ioipsl
304echo '##########################################################'
305echo 'Installing MODIPSL, the installation package manager for the '
306echo 'IPSL models and tools'
307echo '##########################################################'
308
309if [ $netcdf = 0 -o $netcdf = 1 ] ; then
310ncdfdir=$MODEL/netcdf-4.0.1
311else
312ncdfdir=$netcdf
313fi
314
315if [ $ioipsl = 1 ] ; then
316  cd $MODEL/modipsl
317  \rm -rf lib/*
318
319  cd util
320
321  cp AA_make.gdef AA_make.orig
322  F_C="$compilo -c " ; if [ "$compilo" = "$gfortran" -o "$compilo" = "mpif90" ] ; then F_C="$compilo -c -cpp " ; fi
323  sed -e 's/^\#.*.g95.*.\#.*.$/\#/' AA_make.gdef > tmp
324  sed -e "s:F_L = g95:F_L = $compilo:" -e "s:F_C = g95 -c:F_C = $F_C": \
325  -e 's/g95.*.w_w.*.(F_D)/g95      w_w = '"$OPTIMGCM"'/' \
326  -e 's:g95.*.NCDF_INC.*.$:g95      NCDF_INC= '"$ncdfdir"'/include:' \
327  -e 's:g95.*.NCDF_LIB.*.$:g95      NCDF_LIB= -L'"$ncdfdir"'/lib -lnetcdf:' \
328  -e "s:-fmod=:-$fmod:" -e 's/-fno-second-underscore//' \
329  -e 's:#-Q- g95      M_K = gmake:#-Q- g95      M_K = make:' \
330  tmp >| AA_make.gdef
331
332
333  if [ "$use_shell" = "ksh" ] ; then
334    if [ "$pclinux" = 1 ] ; then
335       ./ins_make -t g95 # We use lines for g95 even for the other compilers
336    fi
337  else # bash
338    sed -e s:/bin/ksh:/bin/bash:g ins_make > ins_make.bash
339    chmod u=rwx ins_make.bash
340    if [ "$pclinux" = 1 ] ; then
341    ./ins_make.bash -t g95 # We use lines for g95 even for the other compilers
342    else
343    ./ins_make.bash
344    fi
345  fi # of if [ "$use_shell" = "ksh" ]
346
347#=======================================================================================
348  echo '##########################################################'
349  echo 'Compiling IOIPSL, the interface library with Netcdf'
350  echo '##########################################################'
351
352  cd $MODEL/modipsl/modeles/IOIPSL/src
353  if [ "$use_shell" = "bash" ] ; then
354    cp Makefile Makefile.ksh
355    sed -e s:/bin/ksh:/bin/bash:g Makefile.ksh > Makefile
356  fi
357  if [ "$pclinux" = 1 ] ; then
358    # Build IOIPSL modules and library
359    if [ $compilo = g95 ] ; then
360       cp restcom.f90 restcom.f90.orig
361       sed -e 's:cmode=or(NF90_NOCLOBBER,NF90_64BIT_OFFSET):cmode=NF90_NOCLOBBER:' restcom.f90.orig > restcom.f90 
362    fi
363    make clean
364    make
365    if [ "$compilo" = "$gfortran" -o "$compilo" = "mpif90" ] ; then # copy module files to lib
366      cp -f *.mod ../../../lib
367    fi
368    # Build IOIPSL tools (ie: "rebuild", if present)
369    if [ -f $MODEL/modipsl/modeles/IOIPSL/tools/rebuild ] ; then
370      cd $MODEL/modipsl/modeles/IOIPSL/tools
371      # adapt Makefile & rebuild script if in bash
372      if [ "$use_shell" = "bash" ] ; then
373        cp Makefile Makefile.ksh
374        sed -e s:/bin/ksh:/bin/bash:g Makefile.ksh > Makefile
375        cp rebuild rebuild.ksh
376        sed -e 's:/bin/ksh:/bin/bash:g' \
377            -e 's:print -u2:echo:g' \
378            -e 's:print:echo:g' rebuild.ksh > rebuild
379      fi
380      make clean
381      make
382    fi
383  fi # of if [ "$pclinux" = 1 ]
384
385else # of if [ $ioipsl = 1 ]
386  if [ ${hostname:0:5} = ada33 ] ; then
387    cd $MODEL/modipsl
388    cd util
389
390    cp AA_make.gdef AA_make.orig
391    sed -e 's/^\#.*.g95.*.\#.*.$/\#/' AA_make.gdef > tmp
392    sed -e "s:F_L = g95:F_L = $compilo:" -e "s:F_C = g95 -c:F_C = $compilo -c": \
393    -e 's/g95.*.w_w.*.(F_D)/g95      w_w = '"$OPTIMGCM"'/' \
394    -e 's:g95.*.NCDF_INC.*.$:g95      NCDF_INC= -I/smplocal/pub/HDF5/1.8.9/seq/include -I/smplocal/pub/NetCDF/4.1.3/include:' \
395    -e 's:g95.*.NCDF_LIB.*.$:g95      NCDF_LIB= -L/smplocal/pub/NetCDF/4.1.3/lib -lnetcdff -lnetcdf:' \
396    -e "s:-fmod=:-$fmod:" -e 's/-fno-second-underscore//' \
397    -e 's:#-Q- g95      M_K = gmake:#-Q- g95      M_K = make:' \
398    tmp >| AA_make.gdef
399
400    ./ins_make -t g95 # We use lines for g95 even for the other compilers
401
402    # on Ada, IOIPSL is already installed in ~rpsl035/IOIPSL_PLUS
403    # so link it to current settings
404    cd $MODEL/modipsl/modeles/
405    \rm -r -f IOIPSL
406    ln -s ~rpsl035/IOIPSL_PLUS IOIPSL
407    cd ..
408    ln -s ~rpsl035/IOIPSL_PLUS/modipsl/bin/* bin/
409    ln -s ~rpsl035/IOIPSL_PLUS/modipsl/lib/* lib/
410
411  fi # of if [ ${hostname:0:5} = ada33 ]
412  echo install.sh ioipsl_OK `date`
413fi # of if [ $ioipsl = 1 ]
414
415
416#============================================================================
417veget_version=false
418if [ "$veget" = 1 ] ; then
419  echo '########################################################'
420  echo 'Compiling ORCHIDEE, the continental surfaces model '
421  echo '########################################################'
422  cd $MODEL/modipsl/modeles/ORCHIDEE
423  export ORCHPATH=`pwd`
424  orchidee_rev=`svn info | grep '^Revision' | awk '{print $2}'`
425  echo '########################################################'
426  echo 'Orchidee revision: ', $orchidee_rev
427  echo '########################################################'
428  echo OKpwd ; pwd
429  if [ $orchidee_rev -ge 2247 ] ; then
430     veget_version=orchidee2.0
431       cd arch
432      sed -e s:"%COMPILER        .*.$":"%COMPILER            $compilo":1 \
433     -e s:"%LINK            .*.$":"%LINK                $compilo":1 \
434     -e s:"%PROD_FFLAGS     .*.$":"%PROD_FFLAGS         $OPTIM":1 \
435     -e s:"%DEV_FFLAGS      .*.$":"%DEV_FFLAGS          $OPTDEV":1 \
436     -e s:"%DEBUG_FFLAGS    .*.$":"%DEBUG_FFLAGS        $OPTDEB":1 \
437     -e s:"%BASE_FFLAGS     .*.$":"%BASE_FFLAGS         $OPTPREC":1 \
438     arch-gfortran.fcm > arch-local.fcm
439     echo "NETCDF_LIBDIR=\"-L${ncdfdir}/lib -lnetcdf\"" > arch-local.path
440     echo "NETCDF_INCDIR=${ncdfdir}/include" >> arch-local.path
441     echo "IOIPSL_INCDIR=$ORCHPATH/../../lib" >> arch-local.path
442     echo "IOIPSL_LIBDIR=$ORCHPATH/../../lib" >> arch-local.path
443     cd ../
444# compiling ORCHIDEE sequential mode
445     ./makeorchidee_fcm -noxios -prod -parallel none -arch local
446  else
447     if [ -d src_parallel ] ; then
448       liste_src="parallel parameters global stomate sechiba driver"
449       veget_version=orchidee2.0
450     else
451       # Obsolete, for ORCHIDEE_beton only
452       liste_src="parameters stomate sechiba "
453       # A trick to compile ORCHIDEE depending on if we are using real*4 or real*8
454       cd src_parameters ; \cp reqdprec.$real reqdprec.f90 ; cd ..
455       veget_version=orchidee1.9
456     fi
457     for d in $liste_src ; do src_d=src_$d
458        echo src_d $src_d
459        echo ls ; ls
460        if [ ! -d $src_d ] ; then echo Problem orchidee : no $src_d ; exit ; fi
461        cd $src_d ; \rm -f *.mod make ; make clean
462        make ; if [ "$compilo" = "$gfortran" -o "$compilo" = "mpif90" ] ; then cp -f *.mod ../../../lib ; fi
463        cd ..
464     done
465  fi
466  echo install.sh orchidee_OK `date`
467fi # of if [ "$veget" = 1 ]
468
469
470#============================================================================
471# Ehouarn: it may be directory LMDZ4 or LMDZ5 depending on tar file...
472if [ -d $MODEL/modipsl/modeles/LMDZ[45] ] ; then
473  echo '##########################################################'
474  echo 'Compiling LMDZ'
475  echo '##########################################################'
476  cd $MODEL/modipsl/modeles/LMDZ[45]
477else
478  echo "ERROR: No LMDZ4 (or LMDZ5) directory !!!"
479  exit
480fi
481
482###########################################################
483# For those who want to use fcm to compile via :
484#  makelmdz_fcm -arch local .....
485############################################################
486
487if [ "$pclinux" = "1" ] ; then
488
489# create local 'arch' files (if on Linux PC):
490cd arch
491# arch-local.path file
492echo "NETCDF_LIBDIR=\"-L${ncdfdir}/lib -lnetcdf\"" > arch-local.path
493echo OK3
494echo "NETCDF_INCDIR=-I${ncdfdir}/include" >> arch-local.path
495echo 'IOIPSL_INCDIR=$LMDGCM/../../lib' >> arch-local.path
496echo 'IOIPSL_LIBDIR=$LMDGCM/../../lib' >> arch-local.path
497echo 'ORCH_INCDIR=$LMDGCM/../../lib' >> arch-local.path
498echo 'ORCH_LIBDIR=$LMDGCM/../../lib' >> arch-local.path
499# arch-local.fcm file (adapted from arch-linux-32bit.fcm)
500
501if [ $real = r8 ] ; then FPP_DEF=NC_DOUBLE ; else FPP_DEF="" ; fi
502sed -e s:"%COMPILER        .*.$":"%COMPILER            $compilo":1 \
503    -e s:"%LINK            .*.$":"%LINK                $compilo":1 \
504    -e s:"%PROD_FFLAGS     .*.$":"%PROD_FFLAGS         $OPTIM":1 \
505    -e s:"%DEV_FFLAGS      .*.$":"%DEV_FFLAGS          $OPTDEV":1 \
506    -e s:"%DEBUG_FFLAGS    .*.$":"%DEBUG_FFLAGS        $OPTDEB":1 \
507    -e s:"%BASE_FFLAGS     .*.$":"%BASE_FFLAGS         $OPTPREC":1 \
508    arch-linux-32bit.fcm > arch-local.fcm
509
510cd ..
511### Adapt "bld.cfg" (add the shell):
512whereisthatshell=$(which ${use_shell})
513echo "bld::tool::SHELL   $whereisthatshell" >> bld.cfg
514
515fi # of if [ "$pclinux" = 1 ]
516
517
518cd $MODEL/modipsl/modeles/LMDZ?
519
520##################################################################
521# Compile LMDZ
522##################################################################
523echo install.sh avant_compilation `date`
524if [ $compile_with_fcm = 1 ] ; then makelmdz="makelmdz_fcm -arch $arch" ; else makelmdz=makelmdz ; fi
525
526if [ "$sequential" = 1 ] ; then
527./$makelmdz -d ${grid_resolution} -v $veget_version gcm
528echo install.sh apres_compilation `date`
529
530
531if [ -f gcm.e ] || [ -f bin/gcm_${grid_resolution}_phylmd_seq_orch.e ] || [ -f bin/gcm_${grid_resolution}_phylmd_seq.e ] ; then
532echo '##########################################################'
533echo 'Compilation successfull !! '
534echo '##########################################################'
535else
536echo 'Compilation failed !!'
537exit
538fi
539
540##################################################################
541# Below, we run a benchmark test (if bench=0)
542##################################################################
543if [ $bench = 0 ] ; then
544                exit
545fi
546
547echo '##########################################################'
548echo ' Running a test run '
549echo '##########################################################'
550
551\rm -rf BENCH${grid_resolution}
552bench=bench_lmdz_${grid_resolution}
553echo install.sh avant_chargement_bench  `date`
554wget http://www.lmd.jussieu.fr/~lmdz/DistribG95/$bench.tar.gz
555echo install.sh apres_chargement_bench  `date`
556gunzip $bench.tar.gz
557tar xvf $bench.tar
558
559if [ -f gcm.e ] ; then 
560    cp gcm.e BENCH${grid_resolution}/
561elif [ -f bin/gcm_${grid_resolution}_phylmd_seq_orch.e ] ; then
562    cp bin/gcm_${grid_resolution}_phylmd_seq_orch.e  BENCH${grid_resolution}/gcm.e
563elif [ -f bin/gcm_${grid_resolution}_phylmd_seq.e ] ; then
564    cp bin/gcm_${grid_resolution}_phylmd_seq.e  BENCH${grid_resolution}/gcm.e
565else
566    echo "No gcm.e found"
567    exit
568fi
569
570
571cd BENCH${grid_resolution}
572./bench.sh > bench.out  2>&1
573
574
575echo '##########################################################'
576echo ' Bench results '
577echo '##########################################################'
578
579cat ./bench.out
580echo install.sh FIN_du_BENCH  `date`
581
582echo '##########################################################'
583echo 'Simulation finished in' `pwd`
584echo 'You may re-run it with : cd ' `pwd` ' ; gcm.e'
585echo 'or ./bench.sh'
586echo '##########################################################'
587
588fi # fin sequential
589
590if [ "$gfortran" = "gfortran44" ] ; then
591    echo Your gfortran compiler was too old so that the model was automatically
592    echo compiled with gfortran44 instead. It can not be used in parallel mode.
593    echo You can change the compiler at the begining of the install.sh
594    echo script and reinstall.
595fi
Note: See TracBrowser for help on using the repository browser.