@@ -117,92 +117,6 @@ if [ $? != 0 ]; then
117117 exit 3
118118fi
119119
120- {%- if ts_fmt ! = ' ts_only' %}
121- tmp_dir=tmp_{{ prefix }}
122-
123- # Generate CMIP ts
124- cat > default_metadata.json << EOF
125- {% include cmip_metadata %}
126- EOF
127- {
128- export cmortables_dir={{ cmor_tables_prefix }}/cmip6-cmor-tables/Tables
129- # input_dir={{ output }}/post/{{ component }}/{{ grid }}/ts/{{ frequency }}/{{ '%dyr' % (ypf) }}
130- input_dir=${dest} /{{ ' %04d' % (yr_start) }}_{{ ' %04d' % (yr_end) }}
131- mkdir -p $input_dir
132-
133- cp -s $dest /* _{{ ' %04d' % (yr_start) }}?? _{{ ' %04d' % (yr_end) }}?? .nc $input_dir
134- dest_cmip={{ output }}/post/{{ component }}/{{ grid }}/cmip_ts/{{ frequency }}
135- mkdir -p ${dest_cmip}
136-
137- {{ e3sm_to_cmip_environment_commands }}
138-
139- {% if input_files.split(" ." )[0] == ' cam' or input_files.split(" ." )[0] == ' eam' -%}
140- # add code to do vertical interpolation variables at model levels before e3sm_to_cmip
141- IFS=' ,' read -ra mlvars <<< " {{ interp_vars }}"
142- for var in " ${mlvars[@]} "
143- do
144- for file in ${input_dir} /${var} _{{ ' %04d' % (yr_start) }}?? _{{ ' %04d' % (yr_end) }}?? .nc
145- do
146- if [ -f ${file} ]; then
147- # ncks --rgr xtr_mth=mss_val --vrt_fl='{{cmip_plevdata}}' ${file} ${file}.plev
148- ncremap -p mpi --vrt_ntp=log --vrt_xtr=mss_val --vrt_out=' {{cmip_plevdata}}' ${file} ${file} .plev
149- # overwrite the model level data
150- mv ${file} .plev ${file}
151- fi
152- done
153- done
154- {% endif -%}
155-
156- # call e3sm_to_cmip
157- srun -N 1 e3sm_to_cmip \
158- --output-path \
159- ${dest_cmip} /${tmp_dir} \
160- {% if input_files.split(" ." )[0] == ' clm2' or input_files.split(" ." )[0] == ' elm' -%}
161- --var-list \
162- ' snd, mrsos, mrso, mrfso, mrros, mrro, prveg, evspsblveg, evspsblsoi, tran, tsl, lai, cLitter, cProduct, cSoilFast, cSoilMedium, cSoilSlow, fFire, fHarvest, cVeg, nbp, gpp, ra, rh' \
163- --realm \
164- lnd \
165- {% endif -%}
166- {% if input_files.split(" ." )[0] == ' cam' or input_files.split(" ." )[0] == ' eam' -%}
167- --var-list \
168- ' ua, va, ta, wa, zg, hur, pr, prc, prsn, ts, tas, prw, psl, sfcWind, tasmax, tasmin, tauu, tauv, rtmt, rsdt, rsds, rsdscs, rlds, rldscs, rsus, rsuscs, rsut, rsutcs, rlus, rlut, rlutcs, clivi, clwvi, clt, evspsbl, hfls, hfss, huss' \
169- --realm \
170- atm \
171- {% endif -%}
172- --input-path \
173- ${input_dir} \
174- --user-metadata \
175- {{ scriptDir }}/${workdir} /default_metadata.json \
176- --num-proc \
177- 12 \
178- --tables-path \
179- ${cmortables_dir}
180-
181- if [ $? != 0 ]; then
182- cd {{ scriptDir }}
183- echo ' ERROR (4)' > {{ prefix }}.status
184- exit 4
185- fi
186- {{ environment_commands }}
187-
188- # Move output ts files to final destination
189- mv ${dest_cmip} /${tmp_dir} /CMIP6/CMIP/* /* /* /* /* /* /* /* /* .nc ${dest_cmip}
190- if [ $? != 0 ]; then
191- cd {{ scriptDir }}
192- echo ' ERROR (5)' > {{ prefix }}.status
193- exit 5
194- fi
195-
196- rm -r ${dest_cmip} /${tmp_dir}
197-
198- }
199- if [ $? != 0 ]; then
200- cd {{ scriptDir }}
201- echo ' ERROR (6)' > {{ prefix }}.status
202- exit 6
203- fi
204- {%- endif %}
205-
206120# Delete temporary workdir
207121cd ..
208122if [[ " ${debug,,} " != " true" ]]; then
0 commit comments