Changeset 1995 in lmdz_wrf


Ignore:
Timestamp:
Jul 31, 2018, 9:08:31 PM (7 years ago)
Author:
lfita
Message:

Improving script

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/tools/obs-sim_Comparison.bash

    r1991 r1995  
    1 #!/bin/bash
     1#!/bin/bash -x
    22# Shell script to compare observations with simulations using PyNCplot
    33#
     
    142142#   timefS: date of the plot to be used for the figure name
    143143#   filen: file to use
     144#   figheader: header of the figure's file name
    144145
    145146    valuesfig=$1
     
    152153    timefS=`echo ${valuesfig} | tr '#' ' ' | awk '{print $6}'`
    153154    filen=`echo ${valuesfig} | tr '#' ' ' | awk '{print $7}'`
     155    figheader=`echo ${valuesfig} | tr '#' ' ' | awk '{print $8}'`
    154156
    155157    values='pres|-1;time|'${it}':linepoint;multicol;pres;auto;auto;rainbow;auto:'
    156158    values=${values}${sndstn}'!sounding!WindRose!on!'${timeS}'!local!time:'${kfig}
    157159    values=${values}':cardinals:False:WindRose:True'
    158     ofign=${ofigdir}'/WindRose_'${sndstid}'_'${timefS}'.'${kfig}
     160    ofign=${ofigdir}'/'${figheader}'_'${sndstid}'_'${timefS}'.'${kfig}
    159161    if ${gscratch}; then rm ${ofign} >& /dev/null; fi
    160162    if test ! -f ${ofign}; then
     
    164166        echo ${errmsg}
    165167        echo "  python failed!!"
    166         echo python ${pyHOME}/drawing.py -o draw_WindRose -S ${values} -v ua,va -f ${filen}
     168        echo python ${pyHOME}/drawing.py -o draw_WindRose -S "'"${values}"'" -v ua,va -f ${filen}
    167169        exit
    168170      fi
     
    183185#   timefS: date of the plot to be used for the figure name
    184186#   filen: file to use
     187#   figheader: header of the figure's file name
    185188
    186189    valuesfig=$1
     
    193196    timefS=`echo ${valuesfig} | tr '#' ' ' | awk '{print $6}'`
    194197    filen=`echo ${valuesfig} | tr '#' ' ' | awk '{print $7}'`
     198    figheader=`echo ${valuesfig} | tr '#' ' ' | awk '{print $8}'`
    195199 
    196200    values='time|'${it}',pres|-1:auto:auto:'${sndstn}'!sounding!on!'${timeS}'!local!'
    197201    values=${values}'time:'${kfig}':True'
    198     ofign=${ofigdir}'/SkewT-logP_obs_ta-tda_'${sndstid}'_'${timefS}'.'${kfig}
     202    ofign=${ofigdir}'/'${figheader}'_'${sndstid}'_'${timefS}'.'${kfig}
    199203    if ${gscratch}; then rm ${ofign} >& /dev/null; fi
    200204    if test ! -f ${ofign}; then
     
    204208        echo ${errmsg}
    205209        echo "  python failed!!"
    206         echo python ${pyHOME}/drawing.py -o draw_SkewT -S ${values} -v ta,tda,pres -f ${filen}
     210        echo python ${pyHOME}/drawing.py -o draw_SkewT -S "'"${values}"'" -v ta,tda,pres -f ${filen}
    207211        exit
    208212      fi
     
    222226#   timeS3: date in the figure
    223227#   ofigdir: folder for the output figure
     228#   figheader: header of the figure's file name
    224229
    225230  valuesfig=$1
     
    232237  timeS3=`echo ${valuesfig} | tr '@' ' ' | awk '{print $6}'`
    233238  ofigdir=`echo ${valuesfig} | tr '@' ' ' | awk '{print $7}'`
     239  figheader=`echo ${valuesfig} | tr '@' ' ' | awk '{print $8}'`
    234240
    235241  tatda_evol_values='auto:auto:multilines!'${tatda_evol_labs}'!'${tatda_evol_cols}'!'
    236   tatda_evol_values=${tatda_evol_values}'-!,!2:0,auto:'${ststn}'!sounding!evolution!on!'
     242  tatda_evol_values=${tatda_evol_values}'-!,!2:0,auto:'${sndstn}'!sounding!evolution!on!'
    237243  tatda_evol_values=${tatda_evol_values}${timeS3}'!local!time:'${kfig}':True'
    238244
    239   ofign=${ofigdir}'/SkewT-logP_obs_evol_'${stid}'.'${kfig}
     245  ofign=${ofigdir}'/'${figheader}'_'${stid}'.'${kfig}
    240246  if ${gscratch}; then rm ${ofign} >& /dev/null; fi
    241247  if test ! -f ${ofign}; then
     
    245251      echo ${errmsg}
    246252      echo "  python failed!!"
    247       python ${pyHOME}/drawing.py -o draw_multi_SkewT -S ${tatda_evol_values} -f ${tatda_evol_files}
     253      echo python ${pyHOME}/drawing.py -o draw_multi_SkewT -S "'"${tatda_evol_values}"'" -f "'"${tatda_evol_files}"'"
    248254      exit
    249255    fi
    250256    convert -trim multi_SkewT.png ${ofign}
    251257    echo "* "${ofign} >> ${ofilefigs}
    252     echo python ${pyHOME}/drawing.py -o draw_multi_SkewT -S ${tatda_evol_values} -f ${tatda_evol_files} >> ${ofilefigs}
     258    echo python ${pyHOME}/drawing.py -o draw_multi_SkewT -S "'"${tatda_evol_values}"'" -f "'"${tatda_evol_files}"'" >> ${ofilefigs}
    253259    echo " " >> ${ofilefigs}
    254260  fi
     
    266272#   ofigdir: folder for the output of the figure
    267273#   datefS: date of the plot to be used for the figure name
     274#   figheader: header of the figure's file name
    268275
    269276    valuesfig=$1
     
    277284    ofigdir=`echo ${valuesfig} | tr '@' ' ' | awk '{print $8}'`
    278285    datefS=`echo ${valuesfig} | tr '@' ' ' | awk '{print $9}'`
     286    figheader=`echo ${valuesfig} | tr '@' ' ' | awk '{print $10}'`
    279287
    280288    values='auto:auto:multilines!'${complabs}'!'${compcols}'!'
     
    282290    values=${values}'comparison!on!'${dateS}'!UTC:png:True'
    283291
    284     ofign=${ofigdir}'/SkewT-logP_obs-sim_step_'${sndstid}'_'${datefS}'.'${kfig}
     292    ofign=${ofigdir}'/'${figheader}'_'${sndstid}'_'${datefS}'.'${kfig}
    285293    if ${gscratch}; then rm ${ofign} >& /dev/null; fi
    286294    if test ! -f ${ofign}; then
     
    290298        echo ${errmsg}
    291299        echo "  python failed!!"
    292         echo python ${pyHOME}/drawing.py -o draw_multi_SkewT -S ${values} -f ${compfiles}
     300        echo python ${pyHOME}/drawing.py -o draw_multi_SkewT -S "'"${values}"'" -f "'"${compfiles}"'"
    293301        exit
    294302      fi
    295303      convert -trim multi_SkewT.png ${ofign}
    296304      echo "* "${ofign} >> ${ofilefigs}
    297       echo python ${pyHOME}/drawing.py -o draw_multi_SkewT -S ${values} -f ${compfiles} >> ${ofilefigs}
     305      echo python ${pyHOME}/drawing.py -o draw_multi_SkewT -S "'"${values}"'" -f "'"${compfiles}"'" >> ${ofilefigs}
    298306      echo " " >> ${ofilefigs}
    299307    fi
     
    313321#   expn: name of the experiment
    314322#   cbar: color bar
     323#   figheader: header of the figure's file name
    315324
    316325  valuesfig=$1
     
    326335  expn=`echo ${valuesfig} | tr '#' ' ' | awk '{print $10}'`
    327336  cbar=`echo ${valuesfig} | tr '#' ' ' | awk '{print $11}'`
     337  figheader=`echo ${valuesfig} | tr '#' ' ' | awk '{print $12}'`
    328338
    329339  cfiles=${simfilen}';'${sndv}';time;pres;time|-1,pres|-1@'
     
    333343  cvalues=${cvalues}${sndstn}'!sounding;'${kfig}';flip@y;None;yes'
    334344
    335   ofign=${ofigdir}'/SkewT-logP_obs-sim_evol_'${expl}'_'${sndstid}'_'${sndv}'.'${kfig}
     345  ofign=${ofigdir}'/'${figheader}'_'${expl}'_'${sndstid}'_'${sndv}'.'${kfig}
    336346  if ${gscratch}; then rm ${ofign} >& /dev/null; fi
    337347  if test ! -f ${ofign}; then
     
    340350      echo ${errmsg}
    341351      echo "  python failed!!"
    342       echo python ${pyHOME}/drawing.py -o draw_2D_shad_contdisc_time -f ${cfiles} -S ${cvalues}
     352      echo python ${pyHOME}/drawing.py -o draw_2D_shad_contdisc_time -f "'"${cfiles}"'" -S "'"${cvalues}"'"
    343353      exit
    344354    fi
    345355    convert -trim 2Dshad_obs-sim_comparison_time.png ${ofign}
    346356    echo "* "${ofign} >> ${ofilefigs}
    347     echo python ${pyHOME}/drawing.py -o draw_2D_shad_contdisc_time -f ${cfiles} -S ${cvalues} >> ${ofilefigs}
     357    echo python ${pyHOME}/drawing.py -o draw_2D_shad_contdisc_time -f "'"${cfiles}"'" -S "'"${cvalues}"'" >> ${ofilefigs}
    348358    echo " " >> ${ofilefigs}
    349359  fi
     
    362372#   nsfc: minimum value to plot
    363373#   xsfc: maximum value to plot
     374#   figheader: header of the figure's file name
    364375
    365376    valuesfig=$1
     
    374385    nsfc=`echo ${valuesfig} | tr '@' ' ' | awk '{print $9}'`
    375386    xsfc=`echo ${valuesfig} | tr '@' ' ' | awk '{print $10}'`
     387    figheader=`echo ${valuesfig} | tr '@' ' ' | awk '{print $11}'`
    376388
    377389    timen=`echo ${timevals} | tr '|' ' ' | awk '{print $3}'`
     
    383395    values=${values}${kfig}';-;'${lcol}';.;2.;2.;all;-1;True'
    384396
    385     ofign=${ofigdir}'/obs-sim_evol_ts_'${sfcv}_${sti}'.'${kfig}
     397    ofign=${ofigdir}'/'${figheader}'_'${sfcv}_${sti}'.'${kfig}
    386398    if ${gscratch}; then rm ${ofign} >& /dev/null; fi
    387399    if test ! -f ${ofign}; then
     
    390402        echo ${errmsg}
    391403        echo "  python failed!!"
    392         python ${pyHOME}/drawing.py -o draw_lines_time -f ${files} -S ${values} -v ${sfcv}
     404        echo python ${pyHOME}/drawing.py -o draw_lines_time -f "'"${files}"'" -S "'"${values}"'" -v ${sfcv}
    393405        exit
    394406      fi
    395407      convert -trim lines_time.${kfig} ${ofign}
    396408      echo "* "${ofign} >> ${ofilefigs}
    397       echo python ${pyHOME}/drawing.py -o draw_lines_time -f ${files} -S ${values} -v ${sfcv} >> ${ofilefigs}
     409      echo python ${pyHOME}/drawing.py -o draw_lines_time -f "'"${files}"'" -S "'"${values}"'" -v ${sfcv} >> ${ofilefigs}
    398410      echo " "${ofign} >> ${ofilefigs}
    399411    fi
     
    416428#   mapv: map values
    417429#   mapcover: cover of the map
     430#   figheader: header of the figure's file name
    418431
    419432    valuesfig=$1
     
    433446    mapv=`echo ${valuesfig} | tr '#' ' ' | awk '{print $13}'`
    434447    mapcover=`echo ${valuesfig} | tr '#' ' ' | awk '{print $14}'`
     448    figheader=`echo ${valuesfig} | tr '#' ' ' | awk '{print $15}'`
    435449
    436450    CFvarvals=`python $pyHOME/generic.py -o variables_values -S ${sfcv}`
     
    444458    cvalues=${cvalues}${kfig}':None:'${mapv}':'${mapcover}':yes'
    445459
    446     ofign=${ofigdir}'/map_obs-sim_map_'${timefS}'_'${sfcv}'_'${expl}'.'${kfig}
     460    ofign=${ofigdir}'/'${figheader}'_'${timefS}'_'${sfcv}'_'${expl}'.'${kfig}
    447461    if ${gscratch}; then rm ${ofign} >& /dev/null; fi
    448462    if test ! -f ${ofign}; then
     
    451465        echo ${errmsg}
    452466        echo "  python failed!!"
    453         echo python ${pyHOME}/drawing.py -o draw_2D_shad_contdisc -f ${cfiles} -S ${cvalues}
     467        echo python ${pyHOME}/drawing.py -o draw_2D_shad_contdisc -f "'"${cfiles}"'" -S "'"${cvalues}"'"
    454468      fi
    455469      convert -trim 2Dshad_obs-sim_comparison.png ${ofign}
    456470      echo "* "${ofign} >> ${ofilefigs}
    457       echo python ${pyHOME}/drawing.py -o draw_2D_shad_contdisc -f ${cfiles} -S ${cvalues} >> ${ofilefigs}
     471      echo python ${pyHOME}/drawing.py -o draw_2D_shad_contdisc -f "'"${cfiles}"'" -S "'"${cvalues}"'" >> ${ofilefigs}
    458472      echo " " >> ${ofilefigs}
    459473    fi
     
    478492diagns=`echo ${wrfsnddiags} | tr ':' ' '`
    479493snddiagd='time@time,bottom_top@P,south_north@XLAT,west_east@XLONG'
    480 diagvals=''
     494snddiagvals=''
    481495idiag=1
    482496for diagn in ${diagns}; do
     
    484498    awk '{print $2"|"$3}'`
    485499  if test ${idiag} -eq 1; then
    486     diagvals=${diagv}
     500    snddiagvals=${diagv}
    487501  else
    488     diagvals=${diagvals}','${diagv}
     502    snddiagvals=${snddiagvals}','${diagv}
    489503  fi
    490504  idiag=`expr ${idiag} + 1`
     
    495509diagns=`echo ${wrfsfcdiags} | tr ':' ' '`
    496510sfcdiagd='time@time,south_north@XLAT,west_east@XLONG'
    497 diagvals=''
     511sfcdiagvals=''
    498512idiag=1
    499513iadv=1
     
    509523  else
    510524    if test ${idiag} -eq 1; then
    511       diagvals=${diagv}
     525      sfcdiagvals=${diagv}
    512526      idiag=`expr ${idiag} + 1`
    513527    else
    514       diagvals=${diagvals}','${diagv}
     528      sfcdiagvals=${sfcdiagvals}','${diagv}
    515529    fi
    516530  fi
     
    538552      echo ${errmsg}
    539553      echo "  python failed!!"
    540       echo python ${pyHOME}/nc_var.py -o netcdf_fold_concatenation_HMT -S ${values}  \
    541         -f ${HMT} -v ${simvars}
     554      echo python ${pyHOME}/nc_var.py -o netcdf_fold_concatenation_HMT -S "'"${values}"'"  \
     555        -f "'"${HMT}"'" -v "'"${simvars}"'"
    542556      exit
    543557    fi
     
    549563  if ${fscratch}; then rm ${simdiagsf}; fi
    550564  if test ! -f ${simdiagsf}; then
    551     python ${pyHOME}/diagnostics.py -f ${simjoinselvars} -d ${snddiagd} -v ${diagvals}
     565    python ${pyHOME}/diagnostics.py -f ${simjoinselvars} -d ${snddiagd} -v ${snddiagvals}
    552566    if test $? -ne 0; then
    553567      echo ${errmsg}
    554568      echo "  python failed!!"
    555       echo python ${pyHOME}/diagnostics.py -f ${simjoinselvars} -d ${snddiagd} -v ${diagvals}
     569      echo python ${pyHOME}/diagnostics.py -f ${simjoinselvars} -d "'"${snddiagd}"'" -v "'"${snddiagvals}"'"
    556570      exit
    557571    fi
     
    568582  if ${fscratch}; then rm ${simsfcdiagf}; fi
    569583  if test ! -f ${simsfcdiagf}; then
    570     python ${pyHOME}/diagnostics.py -f ${simjoinselvars} -d ${sfcdiagd} -v ${diagvals}
     584    python ${pyHOME}/diagnostics.py -f ${simjoinselvars} -d ${sfcdiagd} -v ${sfcdiagvals}
    571585    if test $? -ne 0; then
    572586      echo ${errmsg}
    573587      echo "  python failed!!"
    574       echo python ${pyHOME}/diagnostics.py -f ${simjoinselvars} -d ${sfcdiagd} -v ${diagvals}
     588      echo python ${pyHOME}/diagnostics.py -f ${simjoinselvars} -d "'"${sfcdiagd}"'" -v ${sfcdiagvals}
    575589      exit
    576590    fi
     
    589603        echo ${errmsg}
    590604        echo "  python failed!!"
    591         echo python ${pyHOME}/nc_var.py -o fvaradd -S ${simjoinselvars},${vadd} -f ${simsfcdiagf}
     605        echo python ${pyHOME}/nc_var.py -o fvaradd -S "'"${simjoinselvars},${vadd}"'" -f ${simsfcdiagf}
    592606        exit
    593607        rm ${simsfcdiagf}
     
    691705    sndstn=${stid}
    692706
    693     WindRose_plot ${it}'#'${stid}'#'${sndstn}'#'${timeS}'#'${ofigdir}'#'${timefS}'#'${ouavasndf}
    694 
    695     SkewT_logP_plot ${it}'#'${stid}'#'${sndstn}'#'${timeS}'#'${ofigdir}'#'${timefS}'#'${sndorigfn}
     707    fivals=${it}'#'${stid}'#'${sndstn}'#'${timeS}'#'${ofigdir}'#'${timefS}'#'
     708    fivals=${fivals}${ouavasndf}'#WindRose'
     709    WindRose_plot ${fivals}
     710
     711    fivals=${it}'#'${stid}'#'${sndstn}'#'${timeS}'#'${ofigdir}'#'${timefS}'#'
     712    fivals=${fivals}${sndorigfn}'#SkewT-logP_obs_ta-tda'
     713    SkewT_logP_plot ${fivals}
    696714
    697715    colH=`num_hex ${col}`
     
    725743  done
    726744
    727   vals=${stid}'@'${sndstn}'@'${tatda_evol_labs}'@'${tatda_evol_cols}'@'${tatda_evol_files}'@'${timeS3}'@'${ofigdir}
    728   multi_soundings_plot ${vals}
     745  fivals=${stid}'@'${sndstn}'@'${tatda_evol_labs}'@'${tatda_evol_cols}'@'
     746  fivals=${fivals}${tatda_evol_files}'@'${timeS3}'@'${ofigdir}'@SkewT-logP_obs_evol'
     747  multi_soundings_plot ${fivals}
    729748
    730749# End of soundings
     
    790809
    791810      # Getting values at the sounding point
    792       simsndptf=${odir}'/simout_vars_sndpt_'${expl}'.nc'
     811      simsndptf=${odir}'/simout_vars_sndpt_'${stid}'_'${expl}'.nc'
    793812      if ${fscratch}; then rm ${simsndptf} >& /dev/null; fi
    794813      if test ! -f ${simsndptf}; then
     
    801820          echo "  python failed!!"
    802821          echo python ${pyHOME}/nc_var.py -o DataSetSection_multidims -f ${simdiagsf}\
    803             -S ${values} -v all
     822            -S "'"${values}"'" -v all
    804823          exit
    805824        fi
     
    865884        fivals=${stid}'#'${sndstn}'#'${sndv}'#'${ofigdir}'#'${datefS}'#'${fmtTts}
    866885        fivals=${fivals}'#'${simsndptf}'#'${sndorigfn}'#'${expl}'#'${expn}'#'${cbar}
     886        fivals=${fivals}'#SkewT-logP_obs-sim_evol'
    867887
    868888        Homoeller_SkewT_map_plot ${fivals}
     
    881901
    882902    fivals=${stid}'@'${sndstn}'@'${complabs}'@'${compcols}'@'${compltyp}'@'
    883     fivals=${fivals}${compfiles}'@'${dateS}'@'${ofigdir}'@'${datefS}'@'${ofigdir}
     903    fivals=${fivals}${compfiles}'@'${dateS}'@'${ofigdir}'@'${datefS}'@'${ofigdir}'@'
     904    fivals=${fivals}'SkewT-logP_obs-sim_step'
    884905
    885906    multi_SkewT_logP_plot ${fivals}
     907
     908    # Wind Rose comparison
     909    fivals=${it}'#'${stid}'#'${sndstn}'#'${timeS}'#'${ofigdir}'#'${timefS}'#'
     910    fivals=${fivals}${ouavasndf}'#WindRose_obs-sim_'
     911    multi_WindRose_plot ${fivals}
    886912
    887913    it=`expr ${it} + 1`
     
    10551081    fivals=${sti}'@'${stn}'@'${sfcv}'@'${ofigdir}'@'${fmtTts}'@'${sfccompfiles}'@'
    10561082    fivals=${fivals}${sfccomplabs}'@'${sfccompcols}'@'${nsfc}'@'${xsfc}
     1083    fivals=${fivals}'@obs-sim_evol_ts'
    10571084
    10581085    multiple_time_series_plot ${fivals}
     
    10761103  # Time information from simulation
    10771104  simdimt=`python ${pyHOME}/nc_var.py -o itime -S CFtime, -v time -f ${simsfcdiagf}  \
    1078     | grep dimt | awk '{print $2}'`
     1105    | grep dimt | awk '{print $2-1}'`
    10791106  simtunits=`python ${pyHOME}/nc_var.py -o ivattrs -v time -f ${simsfcdiagf} |       \
    10801107    grep -v allvattrs | grep units | awk '{print $3}'`
     
    11101137      fivals=${expl}'#'${expn}'#'${sfcv}'#'${ofigdir}'#'${obssfcfile}'#'${simsfcdiagf}
    11111138      fivals=${fivals}'#'${it}'#'${oit}'#'${timeS}'#'${timefS}'#'${nsfc}'#'${xsfc}'#'
    1112       fivals=${fivals}${mapv}'#'${mapcover}
     1139      fivals=${fivals}${mapv}'#'${mapcover}'#map_obs-sim'
    11131140
    11141141      shad_contdisc_map_plot ${fivals}
Note: See TracChangeset for help on using the changeset viewer.