-
Notifications
You must be signed in to change notification settings - Fork 176
/
Copy pathJGFS_ATMOS_CYCLONE_TRACKER
executable file
·157 lines (126 loc) · 4.25 KB
/
JGFS_ATMOS_CYCLONE_TRACKER
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
#! /usr/bin/env bash
source "$HOMEgfs/ush/preamble.sh"
export RUN_ENVIR=${RUN_ENVIR:-"nco"}
#############################
# Source relevant config files
#############################
configs="base vrfy"
config_path=${EXPDIR:-$NWROOT/gfs.${gfs_ver}/parm/config}
for config in $configs; do
. $config_path/config.$config
status=$?
[[ $status -ne 0 ]] && exit $status
done
##########################################
# Source machine runtime environment
##########################################
. $HOMEgfs/env/${machine}.env vrfy
status=$?
[[ $status -ne 0 ]] && exit $status
##############################################
# Obtain unique process id (pid) and make temp directory
##############################################
if [ $RUN_ENVIR = "nco" ]; then
export DATA=${DATA:-${DATAROOT}/${jobid:?}}
else
export job="gfs_cyclone_tracker"
export DATA="$DATAROOT/${job}$$"
[[ -d $DATA ]] && rm -rf $DATA
fi
mkdir -p $DATA
cd $DATA
##############################################
# Run setpdy and initialize PDY variables
##############################################
export cycle="t${cyc}z"
setpdy.sh
. ./PDY
####################################
# Specify NET and RUN Name and model
####################################
export NET=${NET:-gfs}
export RUN=${RUN:-gfs}
export COMPONENT=${COMPONENT:-atmos}
##############################################
# Determine Job Output Name on System
##############################################
export pgmout="OUTPUT.${pid}"
export pgmerr=errfile
##############################################
# Set variables used in the exglobal script
##############################################
export CDATE=${CDATE:-${PDY}${cyc}}
export CDUMP=${CDUMP:-${RUN:-"gfs"}}
if [ $RUN_ENVIR = "nco" ]; then
export ROTDIR=${COMROOT:?}/$NET/$envir
fi
####################################
# SENDCOM - Copy Files From TMPDIR to $COMOUT
# SENDDBN - Issue DBNet Client Calls
####################################
export SENDCOM=YES
export SENDDBN=${SENDDBN:-NO}
export SENDECF=${SENDECF:-NO}
####################################
# Specify Execution Areas
####################################
export HOMEens_tracker=${HOMEens_tracker:-${NWROOT:?}/ens_tracker.${ens_tracker_ver}}
export EXECens_tracker=${EXECens_tracker:-$HOMEens_tracker/exec}
export FIXens_tracker=${FIXens_tracker:-$HOMEens_tracker/fix}
export USHens_tracker=${USHens_tracker:-$HOMEens_tracker/ush}
##############################################
# Define COM and Data directories
##############################################
export COMIN=${ROTDIR}/${RUN}.${PDY}/${cyc}/$COMPONENT
export COMINgfs=${COMIN}
export gfsdir=${COMINgfs}
export COMINgdas=${COMIN}
export gdasdir=${COMINgdas}
export COMOUT=${ROTDIR}/${RUN}.${PDY}/${cyc}/$COMPONENT
export COMINsyn=${COMINsyn:-$(compath.py arch/prod/syndat)}
if [ $RUN_ENVIR = "nco" ]; then
export COMOUThur=${COMROOTp1:?}/hur/${envir}/global
export COMOUTatcf=${COMROOTp1:?}/nhc/${envir}/atcf
mkdir -m 775 -p $COMOUThur $COMOUTatcf
else
# export COMOUThur=$COMOUT
# export COMOUTatcf=$COMOUT
export COMOUThur=$DATA
export COMOUTatcf=$DATA
fi
##############################################
# Run relevant script
##############################################
#############################################################
# Execute the script
export pert="p01"
export cmodel=$CDUMP
export loopnum=1
#-----------input data checking -----------------
${USHens_tracker}/data_check_gfs.sh
export err=$?; err_chk
#------------------------------------------------
machine=${machine:-$(echo ${SITE})}
${USHens_tracker}/extrkr_gfs.sh ${loopnum} ${cmodel} ${CDATE} ${pert} ${DATA}
export err=$?; err_chk
#if [ "$SENDCOM" = 'YES' ]; then
# cat ${DATA}/trak.avnx.atcfunix.${PDY}${cyc} | \
# sed s:AVNX:GFSO:g \
# > ${COMOUT}/gfso.t${cyc}z.cyclone.trackatcfunix
#
# cat ${DATA}/trak.avnx.atcfunix.${PDY}${cyc} | \
# sed s:AVNX:AVNO:g \
# > ${COMOUT}/avn.t${cyc}z.cyclone.trackatcfunix
#fi
##############################################
# Final processing
##############################################
if [ -e "$pgmout" ] ; then
cat $pgmout
fi
##########################################
# Remove the Temporary working directory
##########################################
cd $DATAROOT
[[ $KEEPDATA = "NO" ]] && rm -rf $DATA
exit 0