#!/bin/ksh set -x # # Set up experiment and directory names # export userid=wx23sm #export expt=mrf_t2 #export expt=mrf_t #export expt=thetae2 #export expt=mrf_x #export expt=mrf_64b #export expt=clw_mic #export expt=clw_rrtmor2 #export expt=clw_rrtm_v1 #export expt=tst1 export expt=rrtm_exp1 #export expt=gfdl_jul00 #export expt=gfdl_jul00rs #export expt=gfdl_jul00r #export expt=gfdl_wrf #export expt=cnt #export expt=exp #export expt=rrtm_exp2 #export expt=rrtm_mic09 #export expt=gfdl_64 #export expt=clw_rrtm #export expt=t254 # export RUNDIR=/ptmp/$userid/$expt export FCSMEAN=/nfsuser/g01/$userid/data export SCRIPTS=/nfsuser/g01/wx23sm/gsm/scripts export SFCANADIR=/nfsuser/g01/wx23sm/data/sfcanl # # Define cpu time for forecast in ch (hours) and cm (minutes) & cs (secs) # #export DELTIM=900 #export DELTIM=600 #export ch=10 ; export cm=00 ; export cs=00 ; export pfac=1 #export ch=4 ; export cm=50 ; export cs=00 ; export pfac=1 export ch=2 ; export cm=50 ; export cs=00 ; export pfac=1 #export ch=0 ; export cm=45 ; export cs=00 ; export pfac=1 #export ch=0 ; export cm=20 ; export cs=00 ; export pfac=1 # # Forecast begining date and averageing dates # -------- ---------- # # Summer 1998 case # ---------------- #export sdate=1998061500 ; export sdate_avg=1998070100 ; export edate_avg=1998073112 # # Summer 2000 case # ---------------- export sdate=2000061500 ; export sdate_avg=2000070100 ; export edate_avg=2000073112 export cycle_date=2000060100.2000080100 ; export cyclebc=YES # Winter 2001 case # ---------------- #export sdate=2000121500 ; export sdate_avg=2001010100 ; export edate_avg=2001013112 #export cycle_date=2000121500.2001020100 ; export cyclebc=YES # # Winter 2000 case # ---------------- #export sdate=2000012300 ; export sdate_avg=2000020100 ; export edate_avg=2000030100 #export cycle_date=2000011900.2000031100 ; export cyclebc=YES # # Winter 2001 to summer 2001 #export sdate=2000121500 ; export sdate_avg=2001010100 ; export edate_avg=2001013100 #export cycle_date=199703.200205 ; export cyclebc=YES #export cycle_date=2000111500.2002040100 ; export cyclebc=YES #export SFCANADIR=/nfsuser/g01/wx23ss/data/sfcanl # # Just a Random 2002 case # ----------------------- #export sdate=2002050100 #export sdate=2001112100 #export sdate=2001052900 #export sdate_avg=2000020100 #export edate_avg=2000030100 # export CDATE=$sdate # #export FCSTVARS='ras=.true.' #export FCSTVARS='emc=.true.' #export FCSTVARS='LDIAG3D=.true.' export FCSTVARS='LDIAG3D=.true.,ras=.true.' # # nhourb is the beginig hour. If nhourb=0, then initial condition # needs to be specified. ndays is the Length of forecast in days # begining from nhourb # export nhourb=0 #export nhourb=600 #export nhourb=1104 #export nhourb=3744 #export nhourb=4200 #export nhourb=6360 #export nhouri=12 # #export ndays=1 #export ndays=39 export ndays=48 #export ndays=75 #export ndays=61 #export ndays=270 #export ndays=80 # export nhours=`expr $ndays \* 24` #export nhours=168 #export nhours=6 #export nhours=3768 #export nhours=`expr $nhourb \+ $nhouri` # if [ $nhourb -eq 0 ] ; then # For three tracers # export ntrc=4 ; export varid=231 ; export numcld=1 # For two tracers export ntrc=3 ; export varid=21 ; export numcld=1 # export ntrc=2 ; export varid=1 ; export numcld=0 export change_res=YES export ic_type=suru # export ic_type=mrf # export ic_type=avn # export ic_type=prx fi # #export fmax=`expr $nhourb \+ $nhours` export fmax=$nhours #export fout=3 ; export fzer=3 ; export fcyc=24 ; export fdfi=0 ; export FHRES=3 #export fout=3 ; export fzer=3 ; export fcyc=24 ; export fdfi=0 ; export FHRES=$fmax #export fout=3 ; export fzer=3 ; export fcyc=24 ; export fdfi=0 ; export FHRES=$fmax #export fout=6 ; export fzer=6 ; export fcyc=24 ; export fdfi=0 ; export FHRES=$fmax #export fout=12 ; export fzer=12 ; export fcyc=24 ; export fdfi=3 ; export FHRES=24 export fout=12 ; export fzer=12 ; export fcyc=24 ; export fdfi=3 ; export FHRES=120 #export fout=6 ; export fzer=6 ; export fcyc=0 ; export fdfi=3 # # Forecast model : horizontal truncation and vertical levels (select one) # --------------------- # #export wave=62 ; export lm=28 #export wave=62 ; export lm=42 export wave=62 ; export lm=64 #export wave=126 ; export lm=28 #export wave=126 ; export lm=42 #export wave=126 ; export lm=64 #export wave=170 ; export lm=42 #export wave=170 ; export lm=64 #export wave=254 ; export lm=42 #export wave=254 ; export lm=64 # export R=${wave}${lm} # # Control for post and time averaging If "YES" then run # -- Defaults to "NO" # export post=YES export avg=YES export index=YES export pgb=YES export flx=YES #export d3d=YES #export znl=YES # # Forecaset executable name # #export fname=/nfsuser/g01/wx23sm/exec_06/global_fcst${R}_t2 #export fname=/nfsuser/g01/wx23sm/exec_06/global_fcst${R}_t #export fname=/nfsuser/g01/wx23sm/exec_06/global_fcst${R} #export fname=/nfsuser/g01/wx23sm/exec_03/global_fcst${R}_rrtm_micro.x #export fname=/nfsuser/g01/wx23sm/exec_03/global_fcst${R}_rrtm_mod.x #export fname=/nfsuser/g01/wx23sm/exec_03/global_fcst${R}_rrtm_new.x #export fname=/nfsuser/g01/wx23sm/exec_03/global_fcst${R}_gfdl.x #export fname=/nfsuser/g01/wx23sm/exec_2002_test/global_fcst${R}_gfdl_p #export fname=/nfsuser/g01/wx23sm/exec_2002_rrtm/global_fcst${R}_g #export fname=/nfsuser/g01/wx23sm/exec_2002_rrtm/global_fcst${R} #export fname=/nfstmp/wx23sm/rrtm_new_62/global_fcst${R}_st2 #export fname=/nfstmp/wx23sm/rrtm_new_62_phy/global_fcst${R}_cnt #export fname=/nfstmp/wx23sm/rrtm_new_62_vec/global_fcst${R}_rrtm_vec #export fname=/nfstmp/wx23sm/rrtm_new_62_vect/global_fcst${R}_rrtm_vec #export fname=/nfstmp/wx23sm/rrtm_new_62_wrf/global_fcst${R}_rrtm_vec #export fname=/ptmp/wx23sm/testmrf/global_fcst.fd//global_fcst${R} export fname=/nfsuser/g01/wx23sm/exec_2003_rrtm/global_fcst${R} #export fname=/nfstmp/wx23sm/rrtm_new_62_wrf/global_fcst${R}_rrtm_vec_mic #export fname=/nfstmp/wx23sm/rrtm_new_62_wrf/global_fcst${R}_rrtm_vec_mic4 #export fname=/nfstmp/wx23sm/rrtm_new_62_wrf/global_fcst${R}_rrtm_vec_mica #export fname=/nfstmp/wx23sm/rrtm_new_62_wrf2/global_fcst${R}_rrtm_vec_zao #export fname=/nfstmp/wx23sm/rrtm_new_62_wrf/global_fcst${R}_rrtm_vecn #export fname=/nfsuser/g01/wx23sm/exec_2002_test/global_fcst${R}_rrtm_vec #export fname=/nfsuser/g01/wx23sm/exec_2002_test/global_fcst${R}_st1 #export fname=/nfsuser/g01/wx23sm/climate/exec/global_fcst${R} #export fname=/nfsuser/g01/wx23sm/exec_2002_test/global_fcst${R}_rrtm #export fname=/nfsuser/g01/wx23sm/exec_2002_test/global_fcst${R}_rrtm_t #export fname=/nfsuser/g01/wx23sm/exec_2002_test/global_fcst${R}_gfdl #export fname=/nfsuser/g01/wx23sm/exec_2002_test/global_fcst${R}_rrtm_b #export fname=/nfsuser/g01/wx23sm/exec_2002_test/global_fcst${R}_rrtm_vec #export fname=/nfsuser/g01/wx23sm/exec_2002_test/global_fcst${R}_vec_shc #export fname=/nfsuser/g01/wx23sm/exec_2002_test/global_fcst${R}_theta #export fname=/nfsuser/g01/wx23sm/exec_2002_test/global_fcst${R}_thetae #export fname=/nfstmp/wx23sm/rrtm_new_62_vec/global_fcst${R}_rrtm_vec #export fname=/nfsuser/g01/wx23sm/exec_2002_test/global_fcst${R}_rrtm #export fname=/nfsuser/g01/wx23sm/exec_2002_jan/global_fcst${R} #export fname=/nfsuser/g01/wx23sm/exec_03/global_fcst${R}_rrtm_hpm.x #export fname=/nfsuser/g01/wx23sm/exec_03/global_fcst${R}_rrtm2.x #export fname=/nfsuser/g01/wx23sm/gsm/f2001/source_rrtm_oct/f${R} #export fname=/nfsuser/g01/wx23sm/gsm/f2001/source_rrtm_oct/f${R}_sm #export fname=/nfsuser/g01/wx23sm/gsm/f2001/source_rrtm_oct/f${R}_sm_hpm #export fname=/nfsuser/g01/wx23sm/exec_03/global_fcst${R}_rrtm_nsw1.x #export fname=/nfsuser/g01/wx23sm/exec_03/global_fcst${R}_mic.x #export fname=/nfsuser/g01/wx23sm/exec_04/global_fcst${R} #export fname=/nfsuser/g01/wx23sm/exec_03/global_fcst${R}a.x #export fname=/nfsuser/g01/wx23sm/exec_03/global_fcst${R}_debug.x #export fname=/nwprod/exec/global_fcst${R} # # *************************************************************** # Below here no change needed most of the time # ____________________________________________ # mkdir -p $RUNDIR cd $RUNDIR export COMOUT=$RUNDIR # #cp /nfsuser/g01/wx23sm/gsm/sfccyc/aeros_data/aeropac3a* $RUNDIR # export fixdir=/nwprod/fix export OROGRAPHY=/nwprod/fix/global_orography.t${wave}.grb export SLMASK=/nwprod/fix/global_slmask.t${wave}.grb export MTNVAR=/nwprod/fix/global_mtnvar.t${wave}.f77 export CO2CON=/nwprod/fix/global_co2con.l${lm}.f77 # export kop=26 if [ $lm -eq 64 ] ; then # export CO2CON=/nfsuser/g01/wx20mi/newres/global_co2con.l${lm}.f77 export CO2CON=/nfsuser/g01/wx20mi/t254l64/global_co2con.l64.f77 export kop=46 export fixdir=/nfsuser/g01/wx20mi/t254l64/parafixglobal if [ $wave -eq 62 ] ; then export DELTIM=${DELTIM:-900} elif [ $wave -eq 170 ] ; then export DELTIM=${DELTIM:-450} elif [ $wave -eq 254 ] ; then export DELTIM=${DELTIM:-300} fi fi # if [ $wave -eq 62 ] ; then export im=192 ; export jm=94 ; export iop=144 ; export jop=73 export DELTIM=${DELTIM:-1200} fi # if [ $wave -eq 170 ] ; then export im=512 ; export jm=256 ; export iop=360 ; export jop=181 export DELTIM=${DELTIM:-450} fi if [ $wave -eq 254 ] ; then export im=768 ; export jm=384 ; export iop=360 ; export jop=181 export DELTIM=${DELTIM:-300} # export OROGRAPHY=/nfsuser/g01/wx20mi/newres/global_orography.t${wave}.grb # export SLMASK=/nfsuser/g01/wx20mi/newres/global_slmask.t${wave}.grb # export MTNVAR=/nfsuser/g01/wx20mi/newres/global_mtnvar.t${wave}.f77 export OROGRAPHY=/nfsuser/g01/wx20mi/t254l64/global_orography.t${wave}.grb export SLMASK=/nfsuser/g01/wx20mi/t254l64/global_slmask.t${wave}.grb export MTNVAR=/nfsuser/g01/wx20mi/t254l64/global_mtnvar.t${wave}.f77 fi # if [ $kop -eq 17 ] ; then export POSTGPVARS="IO=$iop,JO=$jop,KPO=$kop,PO=1000.,925.,850.,700.,600.,500.,400.,300.,250.,200.,150.,100.,70.,50.,30.,20.,10.," fi if [ $kop -eq 26 ] ; then export POSTGPVARS="IDRTC=0,IOC=$iop,JOC=$jop,IDRT=0,IO=$iop,JO=$jop,MOO=48,MOW=12,MOOA=48,MOWA=12,pob(051)=1000,pob(154)=1000,pot(153)=0,pot(051)=0" fi if [ $kop -eq 46 ] ; then polist="\ 1000.0, 975.0, 950.0, 925.0, 900.0, 875.0,\ 850.0, 825.0, 800.0, 750.0, 700.0, 650.0,\ 600.0, 550.0, 500.0, 450.0, 400.0, 350.0,\ 300.0, 250.0, 200.0, 150.0, 100.0, 70.0,\ 50.0, 40.0, 30.0, 20.0, 10.00, 7.0,\ 5.0, 4.0, 3.0, 2.0, 1.0, 0.7,\ 0.5, 0.4, 0.3, 0.2, 0.1, 0.07,\ 0.05, 0.04, 0.03, 0.02,\ " export POSTGPVARS="KPO=$kop,PO=$polist,\ POB(51)=1000.,POB(154)=1000.,POB(222)=0.,\ POT(39)=0.,POT(51)=0.,POT(52)=0.,POT(153)=0.," fi export POSTGPEXEC=/nfsuser/g01/wx20mi/2jif/global_postgp.fd/global_postgp export CHGRESEXEC=/nfsuser/g01/wx20mi/2jif/global_chgres.fd200205/global_chgres if [ $ntrc -eq 4 ] ; then # export CHGRESEXEC=/nfsuser/g01/wx20mi/2jif/global_chgres.fd200205/global_chgres.drytheta export CHGRESEXEC=/nfsuser/g01/wx20mi/2jif/global_chgres.fd200205/global_chgres.eqvtheta fi # export post=${post:-"NO"} ; export avg=${avg:-"NO"} export index=${index:-"NO"} ; export pgb=${pgb:-"NO"} export flx=${flx:-"NO"} ; export d3d=${d3d:-"NO"} export znl=${znl:-"NO"} ; export change_res=${change_res:-"NO"} export cyclebc=${cyclebc:-"NO"} # if [ $nhourb -eq 0 ] ; then # # Initial condition directory and dataset names # if [[ ${ic_type} = suru ]] ; then # For initial condition from Suru # export datic=/nfsuser/g01/wx23ss/cold/colddata # dtg=`echo $CDATE | cut -c3-10` # export sig_fname=siganl.$dtg.new # export sfc_fname=sfcanl.$dtg.new export datic=/nfsuser/g01/wx23ss/data/ini export sig_fname=siganl.$CDATE export sfc_fname=sfcanl.$CDATE fi # if [[ ${ic_type} = mrf ]] ; then # For initial conditon from production MRF dtg=`echo $CDATE | cut -c1-8` export datic=/com/fnl/prod/fnl.$dtg if [ $wave -eq 62 ] ;then export sig_fname=gdas2.t00z.sanl export sfc_fname=gdas2.t00z.sfcanl else export sig_fname=gdas1.t00z.sanl export sfc_fname=gdas1.t00z.sfcanl fi fi # For AVN initial conditions if [[ ${ic_type} = avn ]] ; then dtg=`echo $CDATE | cut -c1-8` export datic=/com/avn/prod/avn.$dtg # export datic=/ptmp/wx23sm export sig_fname=gblav.t00z.sanl export sfc_fname=gblav.t00z.sfcanl fi # For parallel or other initial conditions if [[ ${ic_type} = prx ]] ; then export datic=/gloptmp/datpro # export datic=/gloptmp/datprx # export datic=/gpfsuser/g01/wx23sm/praaug # export datic=/gpfsuser/g01/wx23sm/para_exp/clw # export datic=/nfsuser/g01/wx23sm/data/para_exp/clw export sig_fname=siganl.$CDATE export sfc_fname=sfcanl.$CDATE fi fi # export listvar=CDATE,COMOUT,FCSMEAN,SCRIPTS,fexec,fname,fmax,fout,listvar,fzer,fdfi,wave,im,jm,lm,iop,jop,kop,OROGRAPHY,SLMASK,MTNVAR,fcyc,RUNDIR,sdate_avg,edate_avg,expt,post,index,avg,pgb,flx,d3d,znl,nhourb,nhours,datic,sig_fname,sfc_fname,change_res,cyclebc,cycle_date,DELTIM,CO2CON,SIGLEVEL,FCSTVARS,POSTGPEXEC,POSTGPVARS,ntrc,SFCANADIR,CHGRESEXEC,FHRES,fixdir,varid,numcld # if [ $nhourb -lt $nhours ] ; then # tasks=`expr $lm \* $pfac` ; nodes=`expr $tasks \/ 2` # tasks=$lm ; nodes=`expr $tasks \/ 2 ` tasks=`expr $lm \+ 1` ; nodes=`expr $tasks \/ 2` # tasks=$lm ; nodes=`expr $tasks \/ 3` # tasks=28 ; nodes=14 # tasks=14 ; nodes=7 sub -e $listvar -q dev -p $tasks/$nodes -t $ch:$cm:$cs -o $RUNDIR/fcst.$CDATE.out $SCRIPTS/global_fcst_script # For invoking TotalView # sub -e $listvar -q dev -p $tasks/$nodes -t $ch:$cm:$cs -o $RUNDIR/fcst.$CDATE.out $SCRIPTS/global_fcst_script_tv # sub -e $listvar -q dev -p $tasks/$nodes -t $ch:$cm:$cs -o $RUNDIR/fcst.$CDATE.out $SCRIPTS/global_fcst_script_tv2 # elif [[ $post = YES ]] ; then sub -e $listvar -q dev -p 4/2 -t 1:00:00 -o $RUNDIR/post.$CDATE.out $SCRIPTS/global_post elif [[ $avg = YES ]] ; then sub -e $listvar -q dev -p 1/1 -t 0:45:00 -o $COMOUT/avg.$CDATE.out $SCRIPTS/global_avgall_new fi