-
Notifications
You must be signed in to change notification settings - Fork 23
Fix for EnKF cycling #251
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix for EnKF cycling #251
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -724,7 +724,11 @@ MODULES_RUN_TASK_FP script. | |
| {%- if do_retro %} | ||
| <and> | ||
| <datadep age="00:00:05:00"><cyclestr>&FG_ROOT;/@Y@m@d@H{{ slash_ensmem_subdir }}/ics/gfs_data.tile7.halo0.nc</cyclestr></datadep> | ||
| <datadep age="00:00:05:00"><cyclestr offset="-{{ extrn_mdl_ics_offset_hrs }}:00:00">&FG_ROOT;/@Y@m@d@H{{ slash_ensmem_subdir }}/lbcs/gfs_bndy.tile7.{{ "%03d" % boundary_len_hrs }}.nc</cyclestr></datadep> | ||
| <or> | ||
| {%- for h in range(0, extrn_mdl_ics_offset_hrs+1) %} | ||
| <datadep age="00:00:05:00"><cyclestr offset="-{{ h }}:00:00">&FG_ROOT;/@Y@m@d@H{{ slash_ensmem_subdir }}/lbcs/gfs_bndy.tile7.{{ "%03d" % boundary_len_hrs }}.nc</cyclestr></datadep> | ||
| {%- endfor %} | ||
| </or> | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Can you explain why we need this extension of checking for boundary files in retro?
Collaborator
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I guess I wasn't so sure why it was set to find the lbcs from extrn_mdl_ics_offset_hrs ago. So to keep its original setting and expand it for checking lbcs for the start-up cycle, I extended this check for the time window (- extrn_mdl_ics_offset_hrs, 0). May we can talk more about this tomorrow at the 10am meeting. |
||
| </and> | ||
| {% else %} | ||
| <and> | ||
|
|
@@ -1312,23 +1316,21 @@ MODULES_RUN_TASK_FP script. | |
| <envar><name>PDY</name><value><cyclestr>@Y@m@d</cyclestr></value></envar> | ||
| <envar><name>CDATE</name><value><cyclestr>@Y@m@d@H</cyclestr></value></envar> | ||
| <envar><name>CYCLE_DIR</name><value><cyclestr>&CYCLE_BASEDIR;/@Y@m@d@H</cyclestr></value></envar> | ||
| <!-- | ||
| <envar><name>FG_ROOT</name><value><cyclestr>&FG_ROOT;</cyclestr></value></envar> | ||
| <envar><name>LBCS_ROOT</name><value><cyclestr>&FG_ROOT;</cyclestr></value></envar> | ||
| --> | ||
| <envar><name>CYCLE_TYPE</name><value><cyclestr>prod</cyclestr></value></envar> | ||
| <envar><name>NUM_ENS_MEMBERS</name><value><cyclestr>#{{ num_ens_members }}#</cyclestr></value></envar> | ||
|
|
||
| <dependency> | ||
| <and> | ||
| {%- if do_retro %} | ||
| {%- for m in range(1, num_ens_members+1) %} | ||
| <datadep age="00:00:01:00"><cyclestr offset="-{{ da_cycle_interval_hrs }}:00:00">&FG_ROOT;/@Y@m@d@H/mem{{ "%04d" % m }}/fcst_fv3lam/RESTART/</cyclestr><cyclestr>@Y@m@d.@H0000.coupler.res</cyclestr></datadep> | ||
| {%- for h in cycl_hrs_prodstart %} | ||
| <strneq><left>{{ h }}</left><right><cyclestr>@H</cyclestr></right></strneq> | ||
| {%- endfor %} | ||
| {%- else %} | ||
| <timedep><cyclestr offset="&START_TIME_CONVENTIONAL;">@Y@m@d@H@M00</cyclestr></timedep> | ||
| {%- for m in range(1, num_ens_members+1) %} | ||
| <datadep age="00:00:01:00"><cyclestr offset="-{{ da_cycle_interval_hrs }}:00:00">&FG_ROOT;/@Y@m@d@H/mem{{ "%04d" % m }}/fcst_fv3lam/RESTART/</cyclestr><cyclestr>@Y@m@d.@H0000.coupler.res</cyclestr></datadep> | ||
| <taskdep task="&PREP_CYC_PROD_TN;_mem{{ "%04d" % m }}"/> | ||
| {%- endfor %} | ||
| {%- endif %} | ||
| </and> | ||
| </dependency> | ||
|
|
||
|
|
@@ -1367,7 +1369,7 @@ MODULES_RUN_TASK_FP script. | |
| <dependency> | ||
| <and> | ||
| <taskdep task="&PREP_CYC_ENSMEAN_TN;"/> | ||
| <datadep age="05:00"><cyclestr offset="{{ da_cycle_interval_hrs }}:00:00">&OBSPATH;/@Y@m@d@H.rap.t@Hz.prepbufr.tm00</cyclestr></datadep> | ||
| <datadep age="05:00"><cyclestr>&OBSPATH;/@Y@m@d@H.rap.t@Hz.prepbufr.tm00</cyclestr></datadep> | ||
| </and> | ||
| </dependency> | ||
|
|
||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@hu5970 Is this the section that you are concerned about? The reason I changed it is that when I initialize the cycle at 00Z and have the ics and lbcs tasks done for 00Z.But because I am having extrn_mdl_ics_offset_hrs=6 for GDASENKF, it can't find lbcs from 18Z and therefore won't start prep_cyc. By changing it to look for lbcs in the past few hours, it will kick off the task since I have lbcs at 00Z.