[223] | 1 | #!/bin/bash |
---|
| 2 | ## e.g. # concatenate.bash hydrostatic -1:14:2:25 |
---|
| 3 | if test $1 = '-h'; then |
---|
| 4 | echo "*******************************" |
---|
| 5 | echo "*** Files WRF concatenation ***" |
---|
| 6 | echo "*******************************" |
---|
| 7 | echo "concatenate.bash [fold](fodler to use) [point](as Time:z:y:x, -1 last value)" |
---|
| 8 | else |
---|
| 9 | function isin_list() { |
---|
| 10 | # Function to check whether a value is in a list |
---|
| 11 | list=$1 |
---|
| 12 | value=$2 |
---|
| 13 | |
---|
| 14 | is=`echo ${list} | tr ':' '\n' | awk '{print "@"$1"@"}' | grep '@'${value}'@' | wc -w` |
---|
| 15 | if test ${is} -eq 1 |
---|
| 16 | then |
---|
| 17 | true |
---|
| 18 | else |
---|
| 19 | false |
---|
| 20 | fi |
---|
| 21 | } |
---|
| 22 | |
---|
| 23 | ####### ###### ##### #### ### ## # |
---|
| 24 | allvars='XLONG,XLAT,Times,LDQAJS,LDTAJS,LDQCON,LDTCON,LDUCON,LDVCON,LDQDYN,LDTDYN,LDUDYN,LDVDYN,LDQEVA,LDTEVA,LDQLSCST,LDTLSCST,LDQLSCTH,LDTLSCTH,LDQLSC,LDTLSC,LDQPHY,LDTPHY,LDQTHE,LDTTHE,LDQVDF,LDTVDF,LDUVDF,LDVVDF,LDQWAK,LDTWAK,QVAPOR,QCLOUD,LGEOP,LTEMP,LPRES,LVITU,LVITV,LVITW,LVPRECIP,LRHUM,LH2O,LPR_CON_I,LPR_CON_L,LIWCON,LPTCONV,LSNOW,LEVAP,LPRECIP,LPLUC,LPLUL,LRH2M,T2,U10,V10,LCLDL,LCLDM,LCLDH,PSFC' |
---|
| 25 | |
---|
| 26 | # Variables to be printed centered at zero |
---|
| 27 | ZEROcenteredvars='LDQAJS:LDTAJS:LDQCON:LDTCON:LDUCON:LDVCON:LDQDYN:LDTDYN:LDUDYN:LDVDYN:LDQEVA:LDTEVA:LDQLSCST:LDTLSCST:LDQLSCTH:LDTLSCTH:LDQLSC:LDTLSC:LDQPHY:LDTPHY:LDQTHE:LDTTHE:LDQVDF:LDTVDF:LDUVDF:LDVVDF:LDQWAK:LDTWAK:LVITU:LVITV:LVITW:U10:V10' |
---|
| 28 | |
---|
| 29 | # Variables printed following min/max or quantiles |
---|
| 30 | MINMAXvars='QVAPOR:QCLOUD:LGEOP:LTEMP:LPRES:LVPRECIP:LRHUM:LH2O:LPR_CON_I:LPR_CON_L:LIWCON:LPTCONV:LSNOW:LEVAP:LPRECIP:LPLUC:LPLUL:LRH2M:T2:LCLDL:LCLDM:LCLDH:PSFC' |
---|
| 31 | |
---|
| 32 | # 1D variables |
---|
| 33 | OneDvars='LSNOW:LEVAP:LPRECIP:LPLUC:LPLUL:LRH2M:T2:U10:V10:LCLDL:LCLDM:LCLDH:PSFC' |
---|
| 34 | |
---|
| 35 | NOdraw='XLONG:XLAT:Times:longitude:latitude:time:intTime:varDIMbottom_top' |
---|
| 36 | |
---|
| 37 | # File creation |
---|
| 38 | file=0 |
---|
| 39 | |
---|
| 40 | # Cutting file |
---|
| 41 | cut=0 |
---|
| 42 | |
---|
| 43 | # Drawing |
---|
| 44 | draw=0 |
---|
| 45 | |
---|
| 46 | # Graphic visualization |
---|
| 47 | vis=0 |
---|
| 48 | |
---|
| 49 | hovzvarns='dqajs:dtajs:dqcon:dtcon:ducon:dvcon:dqdyn:dtdyn:dudyn:dvdyn:dqeva:dteva:dqlscst:dtlscst:dqlscth:dtlscth:dqlsc:dtlsc:dqphy:dtphy:dqthe:dtthe:dqvdf:dtvdf:duvdf:dvvdf:dqwak:dtwak:r:c:zg:ta:pres:ua:va:wap:prprof:hus:h2o:prci:prcl:ri:cpt' |
---|
| 50 | |
---|
| 51 | dh2varns='dqajs:dtajs:dqcon:dtcon:ducon:dvcon:dqdyn:dtdyn:dudyn:dvdyn:dqeva:dteva:dqlscst:dtlscst:dqlscth:dtlscth:dqlsc:dtlsc:dqphy:dtphy:dqthe:dtthe:dqvdf:dtvdf:duvdf:dvvdf:dqwak:dtwak:r:c:zg:ta:pres:ua:va:wap:prprof:hus:h2o:prci:prcl:ri:cpt:prsn:evspsbl:pr:prc:prls:huss:tas:uas:vas:cll:clm:clh:ps' |
---|
| 52 | |
---|
| 53 | tevolvarns='dqajs:dtajs:dqcon:dtcon:ducon:dvcon:dqdyn:dtdyn:dudyn:dvdyn:dqeva:dteva:dqlscst:dtlscst:dqlscth:dtlscth:dqlsc:dtlsc:dqphy:dtphy:dqthe:dtthe:dqvdf:dtvdf:duvdf:dvvdf:dqwak:dtwak:r:c:zg:ta:pres:ua:va:wap:prprof:hus:h2o:prci:prcl:ri:cpt:prsn:evspsbl:pr:prc:prls:huss:tas:uas:vas:cll:clm:clh:ps' |
---|
| 54 | |
---|
| 55 | # Tex |
---|
| 56 | tex=1 |
---|
| 57 | Ncoldraw=5 |
---|
| 58 | |
---|
| 59 | graphkinds='hor:Hovmoller:TimeSeries' |
---|
| 60 | |
---|
| 61 | kvalues='2dh:hovz:tevol' |
---|
| 62 | |
---|
| 63 | ####### ####### |
---|
| 64 | ## MAIN |
---|
| 65 | ####### |
---|
| 66 | rootsh=`pwd` |
---|
| 67 | PYhome=${HOME}/PY |
---|
| 68 | main='concatenation.bash' |
---|
| 69 | errormsg='ERROR -- error -- ERROR -- error' |
---|
| 70 | infold=`pwd` |
---|
| 71 | fold=$1 |
---|
| 72 | point=$2 |
---|
| 73 | |
---|
| 74 | ofold=${fold} |
---|
| 75 | |
---|
| 76 | tval=`echo ${point} | tr ':' ' ' | awk '{print $1}'` |
---|
| 77 | zval=`echo ${point} | tr ':' ' ' | awk '{print $2}'` |
---|
| 78 | yval=`echo ${point} | tr ':' ' ' | awk '{print $3}'` |
---|
| 79 | xval=`echo ${point} | tr ':' ' ' | awk '{print $4}'` |
---|
| 80 | |
---|
| 81 | kvals=`echo ${kvalues} | tr ':' ' '` |
---|
| 82 | graphks=`echo ${graphkinds} | tr ':' ' '` |
---|
| 83 | |
---|
| 84 | if test ${file} -eq 1; then |
---|
| 85 | python ${PYhome}/nc_var.py -o netcdf_fold_concatenation -f wrfout_d01 -S ${infold}/${fold},Time -v ${allvars} |
---|
| 86 | |
---|
| 87 | if test $? -ne 0; then |
---|
| 88 | echo ${errormsg} |
---|
| 89 | echo " "${main}"python has failed!!" |
---|
| 90 | echo " python ${PYhome}/nc_var.py -o netcdf_fold_concatenation -f wrfout_d01\ |
---|
| 91 | -S ${infold}/${fold},Time -v ${allvars}" |
---|
| 92 | exit |
---|
| 93 | fi |
---|
| 94 | mv netcdf_fold_concatenated.nc ${infold}/${fold}/wrfout_d01_check.nc |
---|
| 95 | fi |
---|
| 96 | |
---|
| 97 | if test ${cut} -eq 1; then |
---|
| 98 | infile=${infold}/${fold}/wrfout_d01_check.nc |
---|
| 99 | for kvn in ${kvals}; do |
---|
| 100 | echo " kind of values: "${kvn} |
---|
| 101 | case $kvn in |
---|
| 102 | '2dh') |
---|
| 103 | pyvls='Time,'${tval}','${tval}',1@bottom_top,'${zval}','${zval}',1' |
---|
| 104 | ;; |
---|
| 105 | 'hovz') |
---|
| 106 | pyvls='south_north,'${yval}','${yval}',1@west_east,'${xval}','${xval}',1' |
---|
| 107 | ;; |
---|
| 108 | 'tevol') |
---|
| 109 | pyvls='bottom_top,'${zval}','${zval}',1@south_north,'${yval}','${yval} |
---|
| 110 | pyvls=${pyvls}',1@west_east,'${xval}','${xval}',1' |
---|
| 111 | ;; |
---|
| 112 | esac |
---|
| 113 | ofile=`python ${PYhome}/nc_var.py -o DataSetSection_multidims -f ${infile} \ |
---|
| 114 | -S ${pyvls} | grep succesfull | awk '{print $6}' | tr '"' ' '` |
---|
| 115 | if test $? -ne 0; then |
---|
| 116 | echo ${errmsg} |
---|
| 117 | echo " "${main}": python failed!" |
---|
| 118 | echo " python "${PYhome}/nc_var.py -o DataSetSection_multidims \ |
---|
| 119 | -f ${infile} -S ${pyvls} |
---|
| 120 | exit |
---|
| 121 | fi |
---|
| 122 | case $kvn in |
---|
| 123 | '2dh') |
---|
| 124 | # Adding CF longitudes and latitudes |
---|
| 125 | python ${PYhome}/nc_var.py -f ${ofile} -o WRF_CFlonlat_creation \ |
---|
| 126 | -S longitude,latitude -v XLONG,XLAT |
---|
| 127 | ;; |
---|
| 128 | 'tevol') |
---|
| 129 | # Adding CF time |
---|
| 130 | python ${PYhome}/nc_var.py -f ${ofile} -o WRF_CFtime_creation \ |
---|
| 131 | -S 19491201000000,hours -v time |
---|
| 132 | ;; |
---|
| 133 | 'hovz') |
---|
| 134 | # Adding CF time |
---|
| 135 | python ${PYhome}/nc_var.py -f ${ofile} -o WRF_CFtime_creation \ |
---|
| 136 | -S 19491201000000,hours -v time |
---|
| 137 | # Adding variable dimension from 'bottom_top' |
---|
| 138 | python ${PYhome}/nc_var.py -f ${ofile} -o dimVar_creation -S bottom_top |
---|
| 139 | ;; |
---|
| 140 | esac |
---|
| 141 | done |
---|
| 142 | fi |
---|
| 143 | |
---|
| 144 | if test $draw -eq 1; then |
---|
| 145 | echo "Drawing..." |
---|
| 146 | mkdir -p ${ofold}/figs |
---|
| 147 | infile=${fold}'/wrfout_d01_check' |
---|
| 148 | |
---|
| 149 | for kvn in ${kvals}; do |
---|
| 150 | case $kvn in |
---|
| 151 | '2dh') |
---|
| 152 | filetail='Time_B'${tval}'-E'${tval}'-I1_bottom_top_B'${zval} |
---|
| 153 | filetail=${filetail}'-E'${zval}'-I1' |
---|
| 154 | dh2varns='' |
---|
| 155 | ;; |
---|
| 156 | 'hovz') |
---|
| 157 | filetail='south_north_B'${yval}'-E'${yval}'-I1_west_east_B'${xval} |
---|
| 158 | filetail=${filetail}'-E'${xval}'-I1' |
---|
| 159 | hovzvarns='' |
---|
| 160 | ;; |
---|
| 161 | 'tevol') |
---|
| 162 | filetail='bottom_top_B'${zval}'-E'${zval}'-I1_south_north_B'${yval}'-E' |
---|
| 163 | filetail=${filetail}${yval}'-I1_west_east_B'${xval}'-E'${xval}'-I1' |
---|
| 164 | tevolvarns='' |
---|
| 165 | ;; |
---|
| 166 | esac |
---|
| 167 | drwfile=${infile}_${filetail}.nc |
---|
| 168 | var0s=`python ~/PY/nc_var.py -o ivars -f ${drwfile} | grep allvars | awk '{print $3}'` |
---|
| 169 | vars=`echo ${var0s} | tr ':' ' '` |
---|
| 170 | echo ${vars} |
---|
| 171 | for var in ${vars}; do |
---|
| 172 | if ! $(isin_list ${NOdraw} ${var}); then |
---|
| 173 | echo " var: "${var} |
---|
| 174 | varvals=`python ${PYhome}/drawing.py -o variable_values -S ${var} | grep all_values` |
---|
| 175 | if test $? -ne 0; then |
---|
| 176 | echo " "${main}": Variable '"${var}"' not defined !!!!" |
---|
| 177 | exit |
---|
| 178 | fi |
---|
| 179 | stdn=`echo ${varvals} | tr ',' ' ' | awk '{print $3}'` |
---|
| 180 | cbar=`echo ${varvals} | tr ',' ' ' | awk '{print $9}'` |
---|
| 181 | min=`echo ${varvals} | tr ',' ' ' | awk '{print $5}'` |
---|
| 182 | max=`echo ${varvals} | tr ',' ' ' | awk '{print $6}'` |
---|
| 183 | |
---|
| 184 | if test ${kvn} = 'hovz' && ! $(isin_list ${OneDvars} ${var}); then |
---|
| 185 | # Shadded vertical Hovmoller diagrams |
---|
| 186 | ## |
---|
| 187 | hovzvarns=${hovzvarns}':'${stdn} |
---|
| 188 | # Let's make it easy |
---|
| 189 | if $(isin_list ${ZEROcenteredvars} ${var}); then |
---|
| 190 | min='Spercentile@1' |
---|
| 191 | max='Spercentile@1' |
---|
| 192 | cbar='seismic' |
---|
| 193 | else |
---|
| 194 | min='Saroundminmax@0.8' |
---|
| 195 | max='Saroundminmax@0.8' |
---|
| 196 | fi |
---|
| 197 | |
---|
| 198 | if test ${var} = 'LDQEVA'; then |
---|
| 199 | cbar='Reds' |
---|
| 200 | fi |
---|
| 201 | |
---|
| 202 | echo " min: "${min}" max: "${max} |
---|
| 203 | |
---|
| 204 | values=${stdn}':Time|-1,bottom_top|-1:varDIMbottom_top:time:'${cbar}':' |
---|
| 205 | values=${values}${min}','${max}':vertical|temporal|evolution|:pdf:' |
---|
| 206 | values=${values}'transpose:time|hours!since!1949-12-01|exct,12,h|' |
---|
| 207 | values=${values}'$%d^{%H}$|date!($[DD]^{[HH]}$)|x:True' |
---|
| 208 | |
---|
| 209 | python ${PYhome}/drawing.py -o draw_2D_shad_time -f ${infile}_${filetail}.nc \ |
---|
| 210 | -S ${values} -v ${var},time |
---|
| 211 | if test $? -ne 0; then |
---|
| 212 | echo ${errormsg} |
---|
| 213 | echo " "${main}": drawing.py fails!" |
---|
| 214 | echo python ${PYhome}/drawing.py -o draw_2D_shad_time \ |
---|
| 215 | -f ${infile}_${filetail}.nc -S ${values} -v ${var},time |
---|
| 216 | exit |
---|
| 217 | else |
---|
| 218 | mv 2Dfields_shadow_time.pdf ${ofold}/figs/${stdn}_Hovmoller.pdf |
---|
| 219 | if test $vis -eq 1; then evince ${ofold}/figs/${stdn}_Hovmoller.pdf & fi |
---|
| 220 | fi |
---|
| 221 | |
---|
| 222 | elif test ${kvn} = 'tevol'; then |
---|
| 223 | # Point evolution |
---|
| 224 | tevolvarns=${tevolvarns}':'${stdn} |
---|
| 225 | |
---|
| 226 | values=${stdn}':time|($[DD]^{[HH]}$):exct,12,h:$%d^{%H}$:time|evolution|at' |
---|
| 227 | values=${values}'|(x='${xval}',y='${yval}',z='${zval}'):1:pdf' |
---|
| 228 | python ${PYhome}/drawing.py -o draw_timeSeries -f ${infile}_${filetail}.nc \ |
---|
| 229 | -S ${values} -v ${var},time |
---|
| 230 | if test $? -ne 0; then |
---|
| 231 | echo ${errormsg} |
---|
| 232 | echo " "${main}": drawing.py fails!" |
---|
| 233 | echo python ${PYhome}/drawing.py -o draw_timeSeries \ |
---|
| 234 | -f ${infile}_${filetail}.nc -S ${values} -v ${var},time |
---|
| 235 | exit |
---|
| 236 | else |
---|
| 237 | mv TimeSeries_${stdn}.pdf ${ofold}/figs/${stdn}_TimeSeries.pdf |
---|
| 238 | if test $vis -eq 1; then evince ${ofold}/figs/${stdn}_TimeSeries.pdf & fi |
---|
| 239 | fi |
---|
| 240 | |
---|
| 241 | elif test ${kvn} = '2dh'; then |
---|
| 242 | # Horizontal plot |
---|
| 243 | dh2varns=${dh2varns}':'${stdn} |
---|
| 244 | mapv='None' |
---|
| 245 | |
---|
| 246 | min=`echo ${varvals} | tr ',' ' ' | awk '{print $5}'` |
---|
| 247 | max=`echo ${varvals} | tr ',' ' ' | awk '{print $6}'` |
---|
| 248 | |
---|
| 249 | if $(isin_list ${ZEROcenteredvars} ${var}); then |
---|
| 250 | min='Spercentile@1' |
---|
| 251 | max='Spercentile@1' |
---|
| 252 | cbar='seismic' |
---|
| 253 | else |
---|
| 254 | min='Saroundminmax@0.97' |
---|
| 255 | max='Saroundminmax@0.97' |
---|
| 256 | fi |
---|
| 257 | |
---|
| 258 | if test ${var} = 'LRH2M'; then |
---|
| 259 | max='100.' |
---|
| 260 | elif test ${var} = 'T2'; then |
---|
| 261 | min='270' |
---|
| 262 | max='300.' |
---|
| 263 | fi |
---|
| 264 | |
---|
| 265 | echo " min: "${min}" max: "${max} |
---|
| 266 | |
---|
| 267 | values=${stdn}':south_north|-1,west_east|-1:longitude:latitude:'${cbar}':' |
---|
| 268 | values=${values}${min}','${max}':horizontal|section|at|(t='${tval} |
---|
| 269 | values=${values}',z='${zval}'):pdf:None:'${mapv}':True' |
---|
| 270 | |
---|
| 271 | python ${PYhome}/drawing.py -o draw_2D_shad -f ${infile}_${filetail}.nc \ |
---|
| 272 | -S ${values} -v ${var} |
---|
| 273 | if test $? -ne 0; then |
---|
| 274 | echo ${errormsg} |
---|
| 275 | echo " "${main}": drawing.py fails!" |
---|
| 276 | echo python ${PYhome}/drawing.py -o draw_2D_shad \ |
---|
| 277 | -f ${infile}_${filetail}.nc -S ${values} -v ${var} |
---|
| 278 | exit |
---|
| 279 | else |
---|
| 280 | mv 2Dfields_shadow.pdf ${ofold}/figs/${stdn}_hor.pdf |
---|
| 281 | if test $vis -eq 1; then evince ${ofold}/figs/${stdn}_hor.pdf & fi |
---|
| 282 | fi |
---|
| 283 | |
---|
| 284 | # exit |
---|
| 285 | fi |
---|
| 286 | fi |
---|
| 287 | done |
---|
| 288 | done |
---|
| 289 | fi |
---|
| 290 | |
---|
| 291 | if test ${tex} -eq 1; then |
---|
| 292 | # Tex generation |
---|
| 293 | echo " TeX file generation...." |
---|
| 294 | |
---|
| 295 | otex='concatenate.tex' |
---|
| 296 | |
---|
| 297 | icol=1 |
---|
| 298 | while test ${icol} -le ${Ncoldraw}; do |
---|
| 299 | NcolS=${NcolS}'c' |
---|
| 300 | icol=`expr ${icol} + 1` |
---|
| 301 | done |
---|
| 302 | |
---|
| 303 | colfrac=`echo "1 "${Ncoldraw} | awk '{print $1/$2}'` |
---|
| 304 | maxlinegraph=`echo "2 "${Ncoldraw} | awk '{printf("%d",$2*sqrt($1))}'` |
---|
| 305 | echo "%concatenate LaTeX output" > ${otex} |
---|
| 306 | |
---|
| 307 | for graphk in ${graphks}; do |
---|
| 308 | cat << EOF >> ${otex} |
---|
| 309 | |
---|
| 310 | \\begin{figure} |
---|
| 311 | \\begin{center} |
---|
| 312 | \\begin{tabular}{${NcolS}} |
---|
| 313 | EOF |
---|
| 314 | echo " graphk: "${graphk} |
---|
| 315 | |
---|
| 316 | case ${graphk} in |
---|
| 317 | 'hor') |
---|
| 318 | vardrwns=${dh2varns} |
---|
| 319 | GraphName='Horizontal section at time='${tval}', zlev='${zval} |
---|
| 320 | ;; |
---|
| 321 | 'TimeSeries') |
---|
| 322 | vardrwns=${tevolvarns} |
---|
| 323 | GraphName='Punctual temporal evolution at zlev='${zval}', ypt= '${yval}', xpt= '${xval} |
---|
| 324 | ;; |
---|
| 325 | 'Hovmoller') |
---|
| 326 | vardrwns=${hovzvarns} |
---|
| 327 | GraphName='Hovmoeller vertical section evolution at ypt= '${yval}', xpt= '${xval} |
---|
| 328 | ;; |
---|
| 329 | esac |
---|
| 330 | echo " vardrwns: "${vardrwns} |
---|
| 331 | vardns=`echo ${vardrwns} | tr ':' ' '` |
---|
| 332 | |
---|
| 333 | Ngraph=1 |
---|
| 334 | Nline=1 |
---|
| 335 | Ngraphk=1 |
---|
| 336 | varsgraph='' |
---|
| 337 | for graph in ${vardns}; do |
---|
| 338 | varvals=`python ${PYhome}/drawing.py -o variable_values -S ${var} | grep all_values` |
---|
| 339 | stdn=`echo ${varvals} | tr ',' ' ' | awk '{print $3}'` |
---|
| 340 | |
---|
| 341 | graphn=${ofold}'/'figs'/'${graph}'_'${graphk}'.png' |
---|
| 342 | echo "\includegraphics[width="${colfrac}"\textwidth]{"${graphn}"}" >> ${otex} |
---|
| 343 | modNgraph=`expr ${Ngraph} % ${Ncoldraw}` |
---|
| 344 | if test ${modNgraph} -eq 0; then |
---|
| 345 | echo "\\\\" >> ${otex} |
---|
| 346 | Nline=`expr ${Nline} + 1` |
---|
| 347 | if test ${Nline} -gt ${maxlinegraph}; then |
---|
| 348 | Nline=1 |
---|
| 349 | varsgraph=${varsgraph}', '${graph} |
---|
| 350 | cat << EOF >> ${otex} |
---|
| 351 | \\end{tabular} |
---|
| 352 | \\end{center} |
---|
| 353 | \\caption{${GraphName} graphics from top left to bottom right of ${varsgraph}} |
---|
| 354 | \\label{fig:${graphk}_${Ngraphk}} |
---|
| 355 | \\end{figure} |
---|
| 356 | \\clearpage |
---|
| 357 | |
---|
| 358 | \\begin{figure} |
---|
| 359 | \\begin{center} |
---|
| 360 | \\begin{tabular}{${NcolS}} |
---|
| 361 | EOF |
---|
| 362 | |
---|
| 363 | Ngraphk=`expr ${Ngraphk} + 1` |
---|
| 364 | varsgraph='' |
---|
| 365 | fi |
---|
| 366 | else |
---|
| 367 | echo "&" >> ${otex} |
---|
| 368 | varsgraph=${varsgraph}', '${graph} |
---|
| 369 | fi |
---|
| 370 | Ngraph=`expr ${Ngraph} + 1` |
---|
| 371 | done |
---|
| 372 | cat << EOF >> ${otex} |
---|
| 373 | \\end{tabular} |
---|
| 374 | \\end{center} |
---|
| 375 | \\caption{${GraphName} graphics from top left to bottom right of ${varsgraph}} |
---|
| 376 | \\label{fig:${graphk}_${Ngraphk}} |
---|
| 377 | \\end{figure} |
---|
| 378 | \\clearpage |
---|
| 379 | |
---|
| 380 | EOF |
---|
| 381 | |
---|
| 382 | done |
---|
| 383 | fi |
---|
| 384 | |
---|
| 385 | fi |
---|