Skip to content

Commit 710f29d

Browse files
committed
adapt parflow output and restart handling
1 parent d86e3bc commit 710f29d

File tree

3 files changed

+9
-4
lines changed

3 files changed

+9
-4
lines changed

ctl/expid.conf

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,8 @@ clmoutvar='TWS','H2OSOI','TSOI','TG','EFLX_LH_TOT','FSH','FSA','FSR','FIRA','Rne
2929
pfl_ngx=444
3030
pfl_ngy=432
3131
pfl_mask=PfbMask4SolidFile_eCLM.pfsol
32+
pfloutmfilt=24
33+
pfltsfilerst=$((pfloutmfilt - 1))
3234

3335
[sim_config_oas]
3436
icon_ncg=189976

ctl/sim_ctl/sim_cleanup.sh

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -85,11 +85,12 @@ if [[ "${modelid}" == *parflow* ]]; then
8585

8686
# Restart
8787
mkdir -p ${simout_dir}/rst/parflow ${simrst_dir}/parflow
88-
pflnout=$(printf "%05d" $(echo "${simlenhr} / (${pfloutfrq} * ${pfloutmfilt})" | bc))
88+
pflnout=$(echo "( ((${simlenhr}/${pfloutfrq}) + ${pfloutmfilt} -1) / ${pfloutmfilt})" | bc)
89+
pflnlast=$(printf "%05d" $(echo "1 + (${pflnout} -1) * ${pfloutmfilt}" | bc))
8990
# cp -v $(ls -1 ${sim_dir}/*.out.?????.nc | tail -1) ${simout_dir}/rst/parflow
9091
# save twice as simout is archived
91-
cp -v ${sim_dir}/${EXP_ID}.out.${pflnout}.nc ${simout_dir}/rst/parflow
92-
cp -v ${sim_dir}/${EXP_ID}.out.${pflnout}.nc ${simrst_dir}/parflow/${EXP_ID}.out.$(date -u -d "${datep1}" +%Y%m%d%H%M%S).nc # 2nd copy
92+
cp -v ${sim_dir}/${EXP_ID}.out.${pflnlast}.nc ${simout_dir}/rst/parflow
93+
cp -v ${sim_dir}/${EXP_ID}.out.${pflnlast}.nc ${simrst_dir}/parflow/${EXP_ID}.out.$(date -u -d "${datep1}" +%Y%m%d%H%M%S).nc # 2nd copy
9394

9495
# Copy binary
9596
cp -v parflow ${simout_dir}/bin/

ctl/sim_ctl/sim_config.sh

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -221,7 +221,8 @@ if [[ "${modelid}" == *parflow* ]]; then
221221
parflow_base=${parflow_base:-0.0025}
222222
# parflow_inifile=${frc_dir}/parflow/ini/ic_press.pfb
223223
pfloutfrq=${pfloutfrq:-1.0}
224-
pfloutmfilt=${pfloutmfilt:-24}
224+
pfloutmfilt=${pfloutmfilt:-1}
225+
pfltsfilerst=${pfltsfilerst:-0}
225226

226227
# copy namelist
227228
cp ${nml_dir}/parflow/ascii2pfb_slopes.tcl ascii2pfb_slopes.tcl
@@ -249,6 +250,7 @@ if [[ "${modelid}" == *parflow* ]]; then
249250
sed -i "s/__dump_pfl_interval__/$pfloutfrq/" coup_oas.tcl
250251
sed -i "s/__pfl_casename__/$EXP_ID/" coup_oas.tcl
251252
sed -i "s#__inifile__#$(basename "$fini_pfl")#" coup_oas.tcl
253+
sed -i "s/__pfltsfilerst__/${pfltsfilerst}/" coup_oas.tcl
252254
sed -i "s/__pfloutmfilt__/${pfloutmfilt}/" coup_oas.tcl
253255
sed -i "s/__pfl_expid__/$EXP_ID/" slm_multiprog_mapping.conf
254256

0 commit comments

Comments
 (0)