1 | #!/bin/csh |
---|
2 | |
---|
3 | set mois=$1 |
---|
4 | set an=$2 |
---|
5 | set tmin=$3 |
---|
6 | set tmax=$4 |
---|
7 | set GRILLE_FI=$5 |
---|
8 | set outsuf=_ERAI_$an-$mois.nc |
---|
9 | set climserv=local |
---|
10 | |
---|
11 | ##################################################################### |
---|
12 | # Grille |
---|
13 | ##################################################################### |
---|
14 | if ( ! -f $GRILLE_FI ) then |
---|
15 | echo fichier grilles_gcm.nc must exist |
---|
16 | exit |
---|
17 | endif |
---|
18 | |
---|
19 | ################################################################### |
---|
20 | # Choix de la periode temporelle |
---|
21 | ################################################################### |
---|
22 | set t0="l=$tmin" |
---|
23 | set t1tn="l=${tmin}:${tmax}" |
---|
24 | |
---|
25 | ################################################################### |
---|
26 | # Fichiers donnees |
---|
27 | ################################################################### |
---|
28 | if ( 1 == 0 ) then #ncep |
---|
29 | |
---|
30 | set varu=ua |
---|
31 | set varv=va |
---|
32 | set vart=ta |
---|
33 | set varq=hur |
---|
34 | set varp=ps |
---|
35 | |
---|
36 | set fileu="$NCEP_DIR/ua.nc" |
---|
37 | set filev="$NCEP_DIR/va.nc" |
---|
38 | set filet="$NCEP_DIR/ta.nc" |
---|
39 | set fileq="$NCEP_DIR/hur.nc" |
---|
40 | set filep="$NCEP_DIR/ps.nc" |
---|
41 | |
---|
42 | else # ERAI |
---|
43 | |
---|
44 | set suf=ei.GLOBAL_075 |
---|
45 | |
---|
46 | if ( $climserv == poly ) then |
---|
47 | set ANA_DIR='http://dods-ipsl.ipsl.polytechnique.fr/ipsl-bin/nph-dods/ERAI/NETCDF/GLOBAL_075/4xdaily' |
---|
48 | else |
---|
49 | set ANA_DIR='http://dodsp.idris.fr:81/cgi-bin/nph-dods/rpsl376/ERAI/NETCDF/GLOBAL_075/4xdaily' |
---|
50 | # at ulam: set ANA_DIR='/u/rech/psl/rpsl376/ERAI/NETCDF/GLOBAL_075/4xdaily' |
---|
51 | endif |
---|
52 | |
---|
53 | set vart=ta |
---|
54 | set varu=u |
---|
55 | set varv=v |
---|
56 | set varq=r |
---|
57 | set varp=msl |
---|
58 | set filet="$ANA_DIR/AN_PL/$an/$vart.$an$mois.aph$suf.nc" |
---|
59 | set fileu="$ANA_DIR/AN_PL/$an/$varu.$an$mois.aph$suf.nc" |
---|
60 | set filev="$ANA_DIR/AN_PL/$an/$varv.$an$mois.aph$suf.nc" |
---|
61 | set fileq="$ANA_DIR/AN_PL/$an/$varq.$an$mois.aph$suf.nc" |
---|
62 | set filep="$ANA_DIR/AN_SF/$an/$varp.$an$mois.ash$suf.nc" |
---|
63 | |
---|
64 | endif |
---|
65 | |
---|
66 | ################################################################### |
---|
67 | # script ferret pour interpolation |
---|
68 | ################################################################### |
---|
69 | |
---|
70 | cat <<eod> ! tmp.jnl |
---|
71 | set memory/size=50 |
---|
72 | use "$GRILLE_FI" |
---|
73 | use "$fileu" |
---|
74 | use "$filev" |
---|
75 | use "$filet" |
---|
76 | use "$fileq" |
---|
77 | use "$filep" |
---|
78 | |
---|
79 | let uwnd=$varu |
---|
80 | let vwnd=$varv |
---|
81 | let tempair='T' |
---|
82 | let air=$vart |
---|
83 | let rh=$varq |
---|
84 | let sp=$varp |
---|
85 | let year=$an |
---|
86 | |
---|
87 | define axis/t=1-jan-${an}:31-dec-${an}:6/units=hours thour |
---|
88 | define grid/like=uwnd[d=2]/x=grille_u[d=1]/y=grille_u[d=1] grille_u |
---|
89 | define grid/like=vwnd[d=3]/x=grille_v[d=1]/y=grille_v[d=1] grille_v |
---|
90 | define grid/like=air[d=4]/x=grille_v[d=1]/y=grille_u[d=1] grille_T |
---|
91 | |
---|
92 | save/clobber/file=T$outsuf air[d=4,g=grille_T,$t0,gt=thour@asn] |
---|
93 | repeat/$t1tn save/file="T$outsuf"/append air[d=4,g=grille_T,gt=thour@asn] |
---|
94 | |
---|
95 | save/clobber/file=u$outsuf uwnd[d=2,g=grille_u,$t0,gt=thour@asn] |
---|
96 | repeat/$t1tn save/file="u$outsuf"/append uwnd[d=2,g=grille_u,gt=thour@asn] |
---|
97 | |
---|
98 | save/clobber/file=v$outsuf vwnd[d=3,g=grille_v,$t0,gt=thour@asn] |
---|
99 | repeat/$t1tn save/file="v$outsuf"/append vwnd[d=3,g=grille_v,gt=thour@asn] |
---|
100 | |
---|
101 | save/clobber/file=hur$outsuf rh[d=5,g=grille_T,$t0,gt=thour@asn] |
---|
102 | repeat/$t1tn save/file="hur$outsuf"/append rh[d=5,g=grille_T,gt=thour@asn] |
---|
103 | |
---|
104 | save/clobber/file=ps$outsuf sp[d=6,g=grille_T,$t0,gt=thour@asn] |
---|
105 | repeat/$t1tn save/file="ps$outsuf"/append sp[d=6,g=grille_T,gt=thour@asn] |
---|
106 | |
---|
107 | eod |
---|
108 | |
---|
109 | ferret <<eod > & /dev/null |
---|
110 | go tmp.jnl |
---|
111 | quit |
---|
112 | eod |
---|