1 | #!/bin/bash |
---|
2 | |
---|
3 | |
---|
4 | ######################################################### |
---|
5 | # Transformation des contours de (xmin,xmax,dx) en x0 x1 ... |
---|
6 | ######################################################### |
---|
7 | cat <<eod>| contours.sh |
---|
8 | #!/bin/bash |
---|
9 | |
---|
10 | sed -e 's/(Inf)//' -e 's/(-Inf)//' -e 's/^.*.=.(//' -e 's/(//g' -e s:\'.*.\$:: -e 's/)/ /g' -e s/[\"\']//g tt > ttt |
---|
11 | |
---|
12 | |
---|
13 | n=\`wc -w ttt | awk ' { print \$1 } '\` |
---|
14 | i=0 |
---|
15 | cont="" |
---|
16 | while [ \$i -lt \$n ] ; do |
---|
17 | (( i = \$i + 1 )) |
---|
18 | sub=\`cut -d" " -f\$i ttt\` |
---|
19 | if [ "\`echo \$sub | grep , \`" = "" ] ; then |
---|
20 | cont="\$cont \$sub" |
---|
21 | else |
---|
22 | ci=\`echo \$sub | cut -d, -f1\` |
---|
23 | cf=\`echo \$sub | cut -d, -f2\` |
---|
24 | dc=\`echo \$sub | cut -d, -f3\` |
---|
25 | c=\$ci |
---|
26 | cont="\$cont \$c" |
---|
27 | diff="-" |
---|
28 | while [ "\$diff" = "-" ] ; do |
---|
29 | c=\`echo \$c \$dc | awk ' { print \$1 + \$2 } '\` |
---|
30 | cont="\$cont \$c" |
---|
31 | diff=\`echo \$c \$cf | awk ' { print \$1 - \$2 } ' | cut -c1\` |
---|
32 | done |
---|
33 | fi |
---|
34 | done |
---|
35 | echo \$cont |
---|
36 | eod |
---|
37 | chmod +x contours.sh |
---|
38 | |
---|
39 | ######################################################### |
---|
40 | # Entete du fichier plot_params.py.ferret |
---|
41 | ######################################################### |
---|
42 | cat <<eod>| plot_params.py.ferret |
---|
43 | # -*- coding: iso-8859-1 -*- |
---|
44 | # Created : S.Sénési - nov 2015 |
---|
45 | |
---|
46 | """ |
---|
47 | Une fonction qui rend des paramètres régissant l'apparence de |
---|
48 | graphiques, en fonction de la variable géophysique et du contexte |
---|
49 | |
---|
50 | Encore au stade de brouilllon ; peu de variables traitées |
---|
51 | |
---|
52 | """ |
---|
53 | |
---|
54 | def plot_params(variable,context) : |
---|
55 | """ |
---|
56 | Return plot parameters as a dict() , according to LMDZ habits , for a given |
---|
57 | variable and a context (among full_field, bias, model_model) |
---|
58 | |
---|
59 | """ |
---|
60 | |
---|
61 | defaults = { |
---|
62 | 'contours' : 1 , |
---|
63 | 'color' :'temp_19lev', |
---|
64 | } |
---|
65 | |
---|
66 | per_variable = { |
---|
67 | eod |
---|
68 | |
---|
69 | |
---|
70 | ###################################################################### |
---|
71 | # Boucle sur les variables |
---|
72 | ###################################################################### |
---|
73 | |
---|
74 | vars1="pr hurs rstt rlut rtt crelt crest crett hfns hfss hfls tas tasc tauu tauv pslhPa zg500" |
---|
75 | vars2="rsah rsahcs rsahcre rlah rlahcs rlahcre rah rahcs rahcre cress rsts rsut rlutcs albs albt cress crels crets rts crelt" |
---|
76 | vars3="cltcalipso clhcalipso clmcalipso cllcalipso" |
---|
77 | |
---|
78 | file_ferret=/data/hourdin/LMDZ6/cartes.sh |
---|
79 | |
---|
80 | for vvv in $vars1 $vars2 $vars3 ; do |
---|
81 | |
---|
82 | case $vvv in |
---|
83 | "pslhPa") var=psl ;; |
---|
84 | *) var=$vvv |
---|
85 | esac |
---|
86 | |
---|
87 | |
---|
88 | lev=`grep ${vvv}"[)\|]" $file_ferret | grep 'lev=' | awk ' { print $2 } ' ` |
---|
89 | #| sed -e 's/lev=.//' -e 's/(Inf)//' -e 's/(-Inf)//' -e s:[\)\(\']:\ :g` |
---|
90 | |
---|
91 | levd=`grep ${vvv}"[)\|]" $file_ferret | grep 'lev=' | awk ' { print $4 } ' ` |
---|
92 | if [ `echo $levd | cut -d\" -f2 | cut -c1` = "\$" ] ; then |
---|
93 | vard=`echo $levd | cut -d\" -f2 | sed -e 's/^.//'` |
---|
94 | levd=`grep ${vard}"\=" $file_ferret` |
---|
95 | fi |
---|
96 | |
---|
97 | echo $lev >| tt |
---|
98 | lev=`./contours.sh` |
---|
99 | |
---|
100 | echo $levd >| tt |
---|
101 | levd=`./contours.sh` |
---|
102 | |
---|
103 | echo VAR $var |
---|
104 | echo $lev |
---|
105 | echo $levd |
---|
106 | |
---|
107 | cat <<eod>> plot_params.py.ferret |
---|
108 | '$var' : { |
---|
109 | eod |
---|
110 | grep ' '$var' ' default.txt | sed -e 's/ '$var' //' >> plot_params.py.ferret |
---|
111 | offset=`grep ' '$var' ' offset.txt | awk ' { print $2 } '` |
---|
112 | echo $offset |
---|
113 | if [ "$offset" != "" ] ; then offset=" , 'offset' : $offset" ; fi |
---|
114 | cat <<eod>> plot_params.py.ferret |
---|
115 | 'full_field' : {'colors':'$lev' $offset }, |
---|
116 | 'bias' : {'colors': '$levd' , 'color':'BlueDarkRed18' }, |
---|
117 | 'model_model' : {'colors': '$levd'}, |
---|
118 | }, |
---|
119 | eod |
---|
120 | |
---|
121 | |
---|
122 | done |
---|
123 | |
---|
124 | |
---|
125 | ######################################################################## |
---|
126 | # Fin du fichier |
---|
127 | ######################################################################## |
---|
128 | cat <<eod>> plot_params.py.ferret |
---|
129 | } |
---|
130 | # |
---|
131 | rep=defaults.copy() |
---|
132 | if variable in per_variable : |
---|
133 | var_entry=per_variable[variable] |
---|
134 | for cont in [ 'default', context ] : |
---|
135 | if cont in var_entry : rep.update(var_entry[cont]) |
---|
136 | return rep |
---|
137 | |
---|
138 | eod |
---|