diff --git a/ci/cases/C48_S2S_gefs.yaml b/ci/cases/C48_S2S_gefs.yaml new file mode 100644 index 0000000000..44869fb407 --- /dev/null +++ b/ci/cases/C48_S2S_gefs.yaml @@ -0,0 +1,16 @@ +experiment: + type: gefs + +arguments: + pslot: ${pslot} + app: S2SA + resdet: 48 + resens: 48 + nens: 2 + gfs_cyc: 1 + comrot: ${RUNTESTS}/COMROT + expdir: ${RUNTESTS}/EXPDIR + icsdir: ${ICSDIR_ROOT}/C48C48mx500 + idate: 2021032312 + edate: 2021032312 + yaml: ${HOMEgfs_PR}/ci/platforms/gfs_defaults_ci-updates.yaml diff --git a/workflow/setup_expt.py b/workflow/setup_expt.py index 803a704b2a..61ffd837b0 100755 --- a/workflow/setup_expt.py +++ b/workflow/setup_expt.py @@ -224,7 +224,15 @@ def fill_COMROT_forecasts(host, inputs): """ Implementation of 'fill_COMROT' for forecast-only mode """ - print('forecast-only mode treats ICs differently and cannot be staged here') + if inputs.system in ['gfs']: + print('forecast-only mode treats ICs differently and cannot be staged here') + elif inputs.system in ['gefs']: # Temporarily copy ICs from icsdir into COM for testing + print('temporary hack to stage gefs ICs for testing') + comrot = os.path.join(inputs.comrot, inputs.pslot) + idatestr = datetime_to_YMDH(inputs.idate) + current_cycle_dir = f'gefs.{idatestr[:8]}}' + cmd = f"cp -as {inputs.icsdir}/gefs.{idatestr} {comrot}/{current_cycle_dir}" + os.system(cmd) return @@ -455,6 +463,9 @@ def input_args(*argv): default=os.path.join(_top, 'parm/config/gefs')) gefs.add_argument('--yaml', help='Defaults to substitute from', type=str, required=False, default=os.path.join(_top, 'parm/config/gefs/yaml/defaults.yaml')) + gefs.add_argument('--icsdir', help='full path to initial condition directory + [temporary hack in place for testing]', + type=str, required=False, default=None) return parser.parse_args(argv[0][0] if len(argv[0]) else None)