source: trunk/LMDZ.COMMON/ioipsl/util/ins_m_prec @ 253

Last change on this file since 253 was 52, checked in by aslmd, 14 years ago

chantier principal du commit
--- version LMDZ5 qui fonctionne pour tests geantes
--- prochaine etape, tests sur GNOME

M libf/dyn3dpar/comconst.h
M libf/dyn3dpar/conf_planete.F90
ajout du flux de chaleur intrinseque: ihf
[par defaut il est nul]

M libf/dyn3dpar/gcm.F
changements cosmetiques
[pour diff plus efficace avec version non par]

M libf/dyn3dpar/iniacademic.F
possibilites de variations latitudinales
de temperature plus originales
[seulement pour planet_type.eq."giant"]

M libf/dyn3dpar/leapfrog_p.F

  1. ajout d'une tendance causee par le flux de chaleur intrinseque

(seulement prise en compte si planet_type.eq."giant")

  1. correction bugs problematiques a la compilation et au run

--> probleme dans les boucles (l'indice etait llm et non l)
--> ajout de SAVE pour les variables paralleles
--> correction des declarations de variables manquantes

M libf/dyn3dpar/calfis_p.F
correction d'une deuxieme parenthese manquante sur ALLOCATE(zteta(klon,llm))

M libf/phylmd/regr_lat_time_climoz_m.F90
erreur a la compilation avec FCM... il s'agit d'une routine terrestre
il y a visiblement un probleme avec o3_in
en attendant, les lignes sont commentees avec !AS

A deftanks/giant 8 fichiers
ajout de fichiers de configuration typiques pour les geantes gazeuses
[experimental pour le moment... on est loin de jupiter]

--> comparaisons entre un run ancien [avec LMDZ5-dev sur SVN ipsl sans cp var]
et run avec version sur ce SVN planeto donne des resultats similaires

pratique

A ioipsl
A ioipsl/compile_ioipsl.bash
A ioipsl/util 16 fichiers
script et utilitaire pour compiler IOIPSL de facon independante
il suffit d'executer ./compile_ioipsl.bash

M arch/arch-AMD64_CICLAD.path
si IOIPSL a ete compile avec la methode precedente, les bons
PATH sont definis dans ce fichier [le NETCDF est aussi OK]

M 000-README-svn
mise a jour options "svn status"

M mars/libf/phymars/meso_callkeys.h
mise a jour mineure du fichier
[ecri_phys etait defini mais pas dans la liste]

  • Property svn:executable set to *
File size: 2.4 KB
Line 
1#!/bin/ksh
2# $Id: ins_m_prec 293 2008-03-21 13:11:17Z bellier $
3#---------------------------------------------------------------------
4#- ins_m_prec - Installation of the precision module
5#---------------------------------------------------------------------
6function ins_m_prec_Usage
7{
8echo "
9ins_m_prec install the precision module in IOIPSL/src
10
11Usage :
12  ${b_n} [-h] | [-v] [-i i_prec] [-r r_prec]
13
14Options :
15  -h        : help
16  -v        : verbose mode
17  -i i_prec : integer precision 4/8
18  -r r_prec : real    precision 4/8
19
20Defaults :
21  -i 4 -r 8
22
23Example for default precision :
24  ins_m_prec
25
26Example for INTEGER 4 and REAL 4 precision :
27  ins_m_prec -i 4 -r 4
28"
29}
30#-    dirname     and      basename
31d_n=$(dirname ${0}); b_n=$(basename ${0});
32#- Retrieving and validation of the options
33x_v='silencious'; x_i=""; x_r="";
34while getopts :hvi:r: V
35  do
36    case ${V} in
37      (h)  ins_m_prec_Usage; exit 0;;
38      (v)  x_v='verbose';;
39      (i)  x_i=${OPTARG};;
40      (r)  x_r=${OPTARG};;
41      (:)  echo ${b_n}" : -"${OPTARG}" option : missing value" 1>&2;
42           exit 2;;
43      (\?) echo ${b_n}" : -"${OPTARG}" option : not supported" 1>&2;
44           exit 2;;
45    esac
46  done
47shift $(($OPTIND-1));
48#-
49# INTEGER and REAL precision
50#-
51case ${x_i} in
52  ( 4 | 8 ) ;;
53  ("") x_i='4';;
54  (*)
55    echo 'Invalid INTEGER precision requested' 1>&2;
56    echo ${x_i}' (must be 4 or 8)' 1>&2;
57    exit 1;;
58esac
59case ${x_r} in
60  ( 4 | 8 ) ;;
61  ("") x_r='8';;
62  (*)
63    echo 'Invalid REAL precision requested' 1>&2;
64    echo ${x_r}' (must be 4 or 8)' 1>&2;
65    exit 1;;
66esac
67#-
68[[ ${x_v} = 'verbose' ]] && \
69  { echo "\nInstallation of the precision module";
70    echo '--- Integer precision  : '${x_i};
71    echo '--- Real    precision  : '${x_r}; }
72#-
73dp_d=${d_n}'/../modeles/IOIPSL/src';
74#-
75dp_b="${dp_d}"'/def.prec'
76[[ ! -f "${dp_b}" ]] && { echo "${dp_b} unreachable ..."; exit 3; }
77sed -e "s/i_std=i_?/i_std=i_${x_i}/" \
78    -e "s/r_std=r_?/r_std=r_${x_r}/" ${dp_b} > wmpf.$$;
79#-
80# Create the module "defprec.f90" or update it
81# if the default precision has been modified
82#-
83dp_p="${dp_d}"'/defprec.f90';
84diff -q wmpf.$$ ${dp_p} > /dev/null 2>&1; r_c=${?};
85[[ ${r_c} != 0 ]] && cp -p wmpf.$$ ${dp_p};
86[[ ${x_v} = 'verbose' ]] && \
87 { echo " ";
88  { [[ ${r_c} = 0 ]] && echo ${dp_p} 'already up to date'; } || \
89  { [[ ${r_c} = 1 ]] && echo 'Update '${dp_p}; } || \
90  { [[ ${r_c} = 2 ]] && echo 'Create '${dp_p}; }
91  echo " "; }
92#-
93unset dp_d dp_b dp_p x_v x_i x_r; rm -f wmpf.$$;
94#-
95exit 0;
Note: See TracBrowser for help on using the repository browser.