Skip to content
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

Add marine hybrid envar #3041

Open
wants to merge 37 commits into
base: develop
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
6725bd6
working but still wip
guillaumevernieres Oct 3, 2024
f8418d8
fixed ic staging and deps
guillaumevernieres Oct 8, 2024
4f00963
wip
guillaumevernieres Oct 10, 2024
4792b44
ens fcst waits for marine DA
guillaumevernieres Oct 16, 2024
423471b
Merge branch 'develop' into feature/marineenvar
guillaumevernieres Oct 16, 2024
ca9de60
works but needs tidy
guillaumevernieres Oct 17, 2024
adc9a2c
fixed pynorm
guillaumevernieres Oct 17, 2024
e4ea25b
...
guillaumevernieres Oct 17, 2024
1a95260
wip
guillaumevernieres Oct 28, 2024
1711eb4
Merge branch 'develop' into feature/marineenvar
guillaumevernieres Oct 28, 2024
17c4dfc
Merge branch 'develop' into feature/marineenvar
guillaumevernieres Oct 29, 2024
b06b9c9
Update ci/cases/gfsv17/C384mx025_hybAOWCDA.yaml
guillaumevernieres Oct 29, 2024
4fe50dd
Merge branch 'develop' into feature/marineenvar
guillaumevernieres Oct 31, 2024
446b3a2
cold to warm, fixed ocnres
guillaumevernieres Oct 31, 2024
5c1148a
Merge branch 'feature/marineenvar' of https://github.com/guillaumever…
guillaumevernieres Oct 31, 2024
2f51957
Merge branch 'develop' into feature/marineenvar
guillaumevernieres Nov 1, 2024
6b6417d
wcoss env
guillaumevernieres Nov 1, 2024
2fe99f9
Merge branch 'develop' into feature/marineenvar
guillaumevernieres Nov 4, 2024
796bc8e
Merge branch 'develop' into feature/marineenvar
guillaumevernieres Nov 7, 2024
68b24d4
Merge branch 'feature/marineenvar' of https://github.com/guillaumever…
guillaumevernieres Nov 12, 2024
6f00478
Merge branch 'develop' into feature/marineenvar
guillaumevernieres Nov 19, 2024
abf06ae
bug fixes
guillaumevernieres Nov 21, 2024
feb19d5
Merge branch 'develop' into feature/marineenvar
guillaumevernieres Nov 21, 2024
029ec78
Merge branch 'develop' into feature/marineenvar
guillaumevernieres Nov 25, 2024
3a9cc08
Merge branch 'develop' into feature/marineenvar
guillaumevernieres Nov 26, 2024
cdb7f6d
point to staged ic's
guillaumevernieres Nov 26, 2024
263f0f8
Merge branch 'develop' into feature/marineenvar
guillaumevernieres Dec 2, 2024
7eb1660
Update jobs/JGLOBAL_MARINE_ANALYSIS_FINALIZE
guillaumevernieres Dec 2, 2024
3bba19e
Update workflow/hosts/hercules.yaml
guillaumevernieres Dec 2, 2024
3585495
marine hyb option
guillaumevernieres Dec 2, 2024
44254bd
Update workflow/rocoto/gfs_tasks.py
guillaumevernieres Dec 2, 2024
541d8be
updated #'s
guillaumevernieres Dec 2, 2024
d146af5
Merge branch 'feature/marineenvar' of https://github.com/guillaumever…
guillaumevernieres Dec 2, 2024
0ec480a
wrong logic ...
guillaumevernieres Dec 3, 2024
f24bc6e
new gdas.cd #
guillaumevernieres Dec 3, 2024
7773208
Merge branch 'develop' into feature/marineenvar
guillaumevernieres Dec 3, 2024
618b92c
Update ush/forecast_postdet.sh
guillaumevernieres Dec 3, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 5 additions & 4 deletions ci/cases/gfsv17/C384mx025_3DVarAOWCDA.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,11 @@ arguments:
resdetocean: 0.25
nens: 0
interval: 6
start: cold
start: warm
comroot: {{ 'RUNTESTS' | getenv }}/COMROOT
expdir: {{ 'RUNTESTS' | getenv }}/EXPDIR
idate: 2021063000
idate: 2021063018
edate: 2021070306
icsdir: /scratch1/NCEPDEV/climate/Jessica.Meixner/cycling/IC_2021063000_V2
yaml: {{ HOMEgfs }}/ci/cases/gfsv17/ocnanal.yaml
#icsdir: /scratch1/NCEPDEV/climate/Jessica.Meixner/cycling/IC_2021063000_V2
icsdir: /work/noaa/da/gvernier/ensda/ictest/1440x1080x75/
yaml: {{ HOMEgfs }}/ci/cases/gfsv17/marine3dvar.yaml
19 changes: 19 additions & 0 deletions ci/cases/gfsv17/C384mx025_hybAOWCDA.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
experiment:
system: gfs
mode: cycled

arguments:
pslot: {{ 'pslot' | getenv }}
app: S2S
resdetatmos: 384
resensatmos: 192
resdetocean: 0.25
nens: 30
interval: 0
start: warm
comroot: {{ 'RUNTESTS' | getenv }}/COMROOT
expdir: {{ 'RUNTESTS' | getenv }}/EXPDIR
idate: 2021063018
edate: 2021070306
icsdir: /work/noaa/da/gvernier/ensda/ictest/1440x1080x75/
yaml: {{ HOMEgfs }}/ci/cases/gfsv17/marinehyb.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,3 @@ marineanl:
SOCA_INPUT_FIX_DIR: {{ HOMEgfs }}/fix/gdas/soca/1440x1080x75/soca
SOCA_OBS_LIST: {{ HOMEgfs }}/sorc/gdas.cd/parm/soca/obs/obs_list.yaml
SOCA_NINNER: 100

prepoceanobs:
SOCA_OBS_LIST: {{ HOMEgfs }}/sorc/gdas.cd/parm/soca/obs/obs_list.yaml
OBSPREP_YAML: {{ HOMEgfs }}/sorc/gdas.cd/parm/soca/obsprep/obsprep_config.yaml
DMPDIR: /scratch1/NCEPDEV/da/common/
21 changes: 21 additions & 0 deletions ci/cases/gfsv17/marinehyb.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
defaults:
!INC {{ HOMEgfs }}/parm/config/gfs/yaml/defaults.yaml

base:
DOIAU: "YES"
DO_JEDIATMVAR: "NO"
DO_JEDIATMENS: "NO"
DO_JEDIOCNVAR: "YES"
DO_JEDISNOWDA: "NO"
DO_MERGENSST: "NO"
DOHYBVAR_OCN: "YES"
DO_FIT2OBS: "YES"
DO_VERFOZN: "YES"
DO_VERFRAD: "YES"
DO_VRFY_OCEANDA: "NO"
FHMAX_GFS: 240
ACCOUNT: {{ 'HPC_ACCOUNT' | getenv }}

marineanl:
SOCA_INPUT_FIX_DIR: {{ HOMEgfs }}/fix/gdas/soca/1440x1080x75/soca
SOCA_NINNER: 20 # revert to ~100 after the memory leak is fixed
5 changes: 2 additions & 3 deletions ci/cases/pr/C48mx500_3DVarAOWCDA.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@ arguments:
comroot: {{ 'RUNTESTS' | getenv }}/COMROOT
expdir: {{ 'RUNTESTS' | getenv }}/EXPDIR
icsdir: {{ 'ICSDIR_ROOT' | getenv }}/C48mx500/20241120
idate: 2021032412
edate: 2021032418
idate: 2021032418
edate: 2021032500
nens: 0
interval: 0
start: warm
Expand All @@ -21,4 +21,3 @@ skip_ci_on_hosts:
- wcoss2
- gaea
- orion
- hercules
14 changes: 6 additions & 8 deletions ci/cases/pr/C48mx500_hybAOWCDA.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,21 +6,19 @@ arguments:
pslot: {{ 'pslot' | getenv }}
app: S2S
resdetatmos: 48
resdetocean: 5.0
resensatmos: 48
resdetocean: 5.0
comroot: {{ 'RUNTESTS' | getenv }}/COMROOT
expdir: {{ 'RUNTESTS' | getenv }}/EXPDIR
icsdir: {{ 'ICSDIR_ROOT' | getenv }}/C48mx500/20241120
idate: 2021032412
edate: 2021032418
nens: 3
idate: 2021032418
edate: 2021032500
nens: 2
interval: 0
start: warm
yaml: {{ HOMEgfs }}/ci/cases/yamls/soca_gfs_defaults_ci.yaml
yaml: {{ HOMEgfs }}/ci/cases/yamls/soca_hyb_gfs_defaults_ci.yaml

skip_ci_on_hosts:
- wcoss2
- orion
- hercules
- hera
- gaea
- orion
3 changes: 3 additions & 0 deletions ci/cases/yamls/soca_gfs_defaults_ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,7 @@ defaults:
base:
ACCOUNT: {{ 'HPC_ACCOUNT' | getenv }}
DO_JEDIOCNVAR: "YES"

marineanl:
SOCA_NINNER: 1
DO_TEST_MODE: "YES"
8 changes: 8 additions & 0 deletions ci/cases/yamls/soca_hyb_gfs_defaults_ci.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
defaults:
!INC {{ HOMEgfs }}/parm/config/gfs/yaml/defaults.yaml
base:
ACCOUNT: {{ 'HPC_ACCOUNT' | getenv }}
DO_JEDIOCNVAR: "YES"
DOHYBVAR_OCN: "YES"
marineanl:
SOCA_NINNER: 1
9 changes: 2 additions & 7 deletions env/HERCULES.env
Original file line number Diff line number Diff line change
Expand Up @@ -138,14 +138,9 @@ case ${step} in
;;
"ocnanalecen")

export APRUNCFP="${launcher} -n \$ncmd ${mpmd_opt}"

max_threads_per_task=$((max_tasks_per_node / tasks_per_node_ocnanalecen))
export APRUN_OCNANALECEN="${APRUN_default}"
;;

export NTHREADS_OCNANALECEN=${threads_per_task_ocnanalecen:-${max_threads_per_task}}
[[ ${NTHREADS_OCNANALECEN} -gt ${max_threads_per_task} ]] && export NTHREADS_OCNANALECEN=${max_threads_per_task}
export APRUN_OCNANALECEN="${launcher} -n ${ntasks_ocnanalecen} --cpus-per-task=${NTHREADS_OCNANALECEN}"
;;
"marineanlchkpt")

export APRUNCFP="${launcher} -n \$ncmd ${mpmd_opt}"
Expand Down
3 changes: 2 additions & 1 deletion env/WCOSS2.env
Original file line number Diff line number Diff line change
Expand Up @@ -115,6 +115,7 @@ elif [[ "${step}" = "marineanlvar" ]]; then
elif [[ "${step}" = "marineanlchkpt" ]]; then

export APRUNCFP="${launcher} -n \$ncmd --multi-prog"

export APRUN_MARINEANLCHKPT="${APRUN_default}"

elif [[ "${step}" = "ocnanalecen" ]]; then
Expand All @@ -126,7 +127,7 @@ elif [[ "${step}" = "marineanlletkf" ]]; then

export NTHREADS_MARINEANLLETKF=${NTHREADSmax}
export APRUN_MARINEANLLETKF="${APRUN_default}"

elif [[ "${step}" = "atmanlfv3inc" ]]; then

export NTHREADS_ATMANLFV3INC=${NTHREADSmax}
Expand Down
11 changes: 8 additions & 3 deletions jobs/JGDAS_GLOBAL_OCEAN_ANALYSIS_ECEN
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/bin/bash
source "${HOMEgfs}/ush/preamble.sh"
source "${HOMEgfs}/ush/jjob_header.sh" -e "ocnanalecen" -c "base ocnanal ocnanalecen"
source "${HOMEgfs}/ush/jjob_header.sh" -e "ocnanalecen" -c "base marineanl ocnanalecen"

##############################################
# Set variables used in the script
Expand All @@ -12,8 +12,13 @@ export gPDY=${GDATE:0:8}
export gcyc=${GDATE:8:2}

YMD=${gPDY} HH=${gcyc} declare_from_tmpl -rx \
COM_OCEAN_HISTORY_PREV:COM_OCEAN_HISTORY_TMPL \
COM_ICE_HISTORY_PREV:COM_ICE_HISTORY_TMPL
COMIN_OCEAN_HISTORY_PREV:COM_OCEAN_HISTORY_TMPL \
COMIN_ICE_HISTORY_PREV:COM_ICE_HISTORY_TMPL

YMD=${PDY} HH=${cyc} declare_from_tmpl -rx \
COMOUT_OCEAN_ANALYSIS:COM_OCEAN_ANALYSIS_TMPL \
COMIN_ICE_RESTART:COM_ICE_RESTART_TMPL \
COMOUT_ICE_ANALYSIS:COM_ICE_ANALYSIS_TMPL

##############################################
# Begin JOB SPECIFIC work
Expand Down
1 change: 1 addition & 0 deletions jobs/JGLOBAL_MARINE_ANALYSIS_CHECKPOINT
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
source "${HOMEgfs}/ush/preamble.sh"
export WIPE_DATA="NO"
export DATAjob="${DATAROOT}/${RUN}marineanalysis.${PDY:-}${cyc}"
export DATAens="${DATAjob}/ensdata"
export DATA="${DATAjob}/marinevariational"
source "${HOMEgfs}/ush/jjob_header.sh" -e "marineanlchkpt" -c "base marineanl marineanlchkpt"

Expand Down
1 change: 1 addition & 0 deletions jobs/JGLOBAL_MARINE_ANALYSIS_FINALIZE
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
source "${HOMEgfs}/ush/preamble.sh"
export WIPE_DATA="NO"
export DATAjob="${DATAROOT}/${RUN}marineanalysis.${PDY:-}${cyc}"
export DATAens="${DATAjob}/ensdata"
export DATA="${DATAjob}/marinevariational"
source "${HOMEgfs}/ush/jjob_header.sh" -e "marineanlfinal" -c "base marineanl marineanlfinal"

Expand Down
1 change: 1 addition & 0 deletions jobs/JGLOBAL_MARINE_ANALYSIS_INITIALIZE
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

source "${HOMEgfs}/ush/preamble.sh"
export DATAjob="${DATAROOT}/${RUN}marineanalysis.${PDY:-}${cyc}"
export DATAens="${DATAjob}/ensdata"
export DATA="${DATAjob}/marinevariational"
source "${HOMEgfs}/ush/jjob_header.sh" -e "marineanlinit" -c "base marineanl marineanlinit"

Expand Down
1 change: 1 addition & 0 deletions jobs/JGLOBAL_MARINE_ANALYSIS_VARIATIONAL
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
source "${HOMEgfs}/ush/preamble.sh"
export WIPE_DATA="NO"
export DATAjob="${DATAROOT}/${RUN}marineanalysis.${PDY:-}${cyc}"
export DATAens="${DATAjob}/ensdata"
export DATA="${DATAjob}/marinevariational"
source "${HOMEgfs}/ush/jjob_header.sh" -e "marineanlvar" -c "base marineanl marineanlvar"

Expand Down
2 changes: 1 addition & 1 deletion parm/archive/gdas.yaml.j2
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ gdas:
- "logs/{{ cycle_YMDH }}/{{ RUN }}_marineanlvar.log"
- "logs/{{ cycle_YMDH }}/{{ RUN }}_marineanlfinal.log"
- "logs/{{ cycle_YMDH }}/{{ RUN }}_marineanlchkpt.log"
{% if DOHYBVAR %}
{% if DOHYBVAR_OCN %}
- "logs/{{ cycle_YMDH }}/{{ RUN }}_ocnanalecen.log"
{% endif %}
{% endif %}
Expand Down
4 changes: 3 additions & 1 deletion parm/config/gfs/config.base
Original file line number Diff line number Diff line change
Expand Up @@ -368,9 +368,11 @@ export DO_JEDIATMENS="@DO_JEDIATMENS@"
export DO_JEDIOCNVAR="@DO_JEDIOCNVAR@"
export DO_JEDISNOWDA="@DO_JEDISNOWDA@"
export DO_MERGENSST="@DO_MERGENSST@"
export DO_STARTMEM_FROM_JEDIICE="@DO_STARTMEM_FROM_JEDIICE@"

# Hybrid related
export DOHYBVAR="@DOHYBVAR@"
export DOHYBVAR_OCN="@DOHYBVAR_OCN@"
export NMEM_ENS=@NMEM_ENS@
export SMOOTH_ENKF="NO"
export l4densvar=".true."
Expand Down Expand Up @@ -482,7 +484,7 @@ export ARCH_FCSTICFREQ=1 # Archive frequency in days for gdas and gfs foreca

# The monitor jobs are not yet supported for JEDIATMVAR.
if [[ ${DO_JEDIATMVAR} = "YES" ]]; then
export DO_FIT2OBS="NO" # Run fit to observations package
export DO_FIT2OBS="NO" # Run fit to observations package
export DO_VERFOZN="NO" # Ozone data assimilation monitoring
export DO_VERFRAD="NO" # Radiance data assimilation monitoring
export DO_VMINMON="NO" # GSI minimization monitoring
Expand Down
4 changes: 3 additions & 1 deletion parm/config/gfs/yaml/defaults.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ base:
DO_JEDIOCNVAR: "NO"
DO_JEDISNOWDA: "NO"
DO_MERGENSST: "NO"
DO_STARTMEM_FROM_JEDIICE: "NO"
DO_GOES: "NO"
DO_BUFRSND: "NO"
DO_GEMPAK: "NO"
Expand All @@ -21,6 +22,7 @@ base:
GSI_SOILANAL: "NO"
EUPD_CYC: "gdas"
FHMAX_ENKF_GFS: 12
DOHYBVAR_OCN: "NO"
DO_TEST_MODE: "NO"

atmanl:
Expand All @@ -39,7 +41,7 @@ atmensanl:
LAYOUT_Y_ATMENSANL: 8
IO_LAYOUT_X: 1
IO_LAYOUT_Y: 1

aeroanl:
IO_LAYOUT_X: 1
IO_LAYOUT_Y: 1
Expand Down
9 changes: 8 additions & 1 deletion parm/stage/ice.yaml.j2
Original file line number Diff line number Diff line change
@@ -1,5 +1,12 @@
{% set START_ICE_FROM_ANA = False %}
{% if DO_JEDIOCNVAR == True and RUN == 'gdas' %}
{% set START_ICE_FROM_ANA = True %}
{% endif %}
{% if DO_STARTMEM_FROM_JEDIICE == False and RUN == 'enkfgdas' %}
{% set START_ICE_FROM_ANA = False %}
{% endif %}
ice:
{% if DO_JEDIOCNVAR == True %}
{% if START_ICE_FROM_ANA == True %}
mkdir:
{% for mem in range(first_mem, last_mem + 1) %}
{% set imem = mem - first_mem %}
Expand Down
2 changes: 1 addition & 1 deletion scripts/exglobal_stage_ic.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ def main():
keys = ['RUN', 'MODE', 'EXP_WARM_START', 'NMEM_ENS',
'assim_freq', 'current_cycle', 'previous_cycle',
'ROTDIR', 'ICSDIR', 'STAGE_IC_YAML_TMPL', 'DO_JEDIATMVAR',
'OCNRES', 'waveGRD', 'ntiles', 'DOIAU', 'DO_JEDIOCNVAR',
'OCNRES', 'waveGRD', 'ntiles', 'DOIAU', 'DO_JEDIOCNVAR', 'DO_STARTMEM_FROM_JEDIICE',
'REPLAY_ICS', 'DO_WAVE', 'DO_OCN', 'DO_ICE', 'DO_NEST',
'USE_ATM_ENS_PERTURB_FILES', 'USE_OCN_ENS_PERTURB_FILES']

Expand Down
2 changes: 1 addition & 1 deletion sorc/gdas.cd
Submodule gdas.cd updated 59 files
+1 −0 ci/hera.sh
+1 −0 ci/orion.sh
+1 −1 ci/run_ci.sh
+1 −1 ci/run_gw_ci.sh
+3 −0 parm/atm/jcb-prototype_3dvar-fv3inc.yaml.j2
+3 −0 parm/atm/jcb-prototype_lgetkf-fv3inc.yaml.j2
+1 −1 parm/jcb-algorithms
+1 −1 parm/jcb-gdas
+27 −71 parm/soca/berror/soca_ensrecenter.yaml
+0 −92 parm/soca/berror/soca_hybrid_bmat.yaml
+4 −3 parm/soca/ensda/stage_ens_mem.yaml.j2
+0 −1 parm/soca/marine-jcb-base.yaml
+3 −5 parm/soca/obsprep/obsprep_config.yaml
+0 −7 test/CMakeLists.txt
+81 −58 test/atm/global-workflow/CMakeLists.txt
+3 −0 test/atm/global-workflow/config.yaml
+13 −0 test/atm/global-workflow/jcb-prototype_3dvar-fv3inc.yaml.j2
+5 −2 test/atm/global-workflow/jcb-prototype_3dvar.yaml.j2
+13 −0 test/atm/global-workflow/jcb-prototype_lgetkf-fv3inc.yaml.j2
+5 −2 test/atm/global-workflow/jcb-prototype_lgetkf.yaml.j2
+5 −2 test/atm/global-workflow/jcb-prototype_lgetkf_observer.yaml.j2
+5 −2 test/atm/global-workflow/jcb-prototype_lgetkf_solver.yaml.j2
+0 −23 test/fv3jedi/CMakeLists.txt
+0 −65 test/fv3jedi/testinput/gdasapp_fv3jedi_fv3inc.yaml
+0 −41 test/fv3jedi/testoutput/gdasapp_fv3jedi_fv3inc.ref
+397 −107 test/gw-ci/CMakeLists.txt
+13 −0 test/gw-ci/atm/jcb-prototype_3dvar-fv3inc_ufs_hybatmDA.yaml.j2
+42 −0 test/gw-ci/atm/jcb-prototype_3dvar_ufs_hybatmDA.yaml.j2
+13 −0 test/gw-ci/atm/jcb-prototype_lgetkf-fv3inc_ufs_hybatmDA.yaml.j2
+56 −0 test/gw-ci/atm/jcb-prototype_lgetkf_observer_ufs_hybatmDA.yaml.j2
+59 −0 test/gw-ci/atm/jcb-prototype_lgetkf_solver_ufs_hybatmDA.yaml.j2
+50 −0 test/gw-ci/atm/jcb-prototype_lgetkf_ufs_hybatmDA.yaml.j2
+35 −19 test/gw-ci/run_exp.sh
+15 −0 test/gw-ci/soca/jcb-prototype_3dfgat_3DVarAOWCDA.yaml.j2
+41 −0 test/testreference/C48mx500_3DVarAOWCDA_3dfgat.ref
+41 −0 test/testreference/C96C48_ufs_hybatmDA_3dvar-fv3inc.ref
+124 −0 test/testreference/C96C48_ufs_hybatmDA_3dvar.ref
+82 −0 test/testreference/C96C48_ufs_hybatmDA_lgetkf-fv3inc.ref
+126 −0 test/testreference/C96C48_ufs_hybatmDA_lgetkf_observer.ref
+180 −0 test/testreference/C96C48_ufs_hybatmDA_lgetkf_solver.ref
+41 −0 test/testreference/atm_jjob_3dvar-fv3inc.ref
+0 −0 test/testreference/atm_jjob_3dvar.ref
+123 −0 test/testreference/atm_jjob_lgetkf-fv3inc.ref
+0 −0 test/testreference/atm_jjob_lgetkf.ref
+0 −0 test/testreference/atm_jjob_lgetkf_observer.ref
+0 −0 test/testreference/atm_jjob_lgetkf_solver.ref
+0 −1 ush/CMakeLists.txt
+0 −187 ush/jediinc2fv3.py
+63 −56 ush/soca/marine_recenter.py
+19 −3 utils/fv3jedi/fv3jedi_fv3inc.h
+29 −0 utils/soca/fig_gallery/marine_vrfy_display/README
+724 −0 utils/soca/fig_gallery/marine_vrfy_display/default.css
+422 −0 utils/soca/fig_gallery/marine_vrfy_display/fonts.css
+862 −0 utils/soca/fig_gallery/marine_vrfy_display/index_vrfy_marine.html
+43 −11 utils/soca/gdas_ens_handler.h
+1 −1 utils/soca/gdas_incr_handler.h
+11 −10 utils/soca/gdas_postprocincr.h
+27 −6 utils/soca/gdas_soca_diagb.h
+19 −10 utils/test/CMakeLists.txt
21 changes: 13 additions & 8 deletions ush/forecast_postdet.sh
Original file line number Diff line number Diff line change
Expand Up @@ -460,13 +460,12 @@ MOM6_postdet() {
fi

# GEFS perturbations
if [[ "${RUN}" == "gefs" ]]; then
# to ensure it does not interfere with the GFS
if (( MEMBER > 0 )) && [[ "${ODA_INCUPD:-False}" == "True" ]]; then
${NCP} "${COMIN_OCEAN_ANALYSIS}/${RUN}.t${cyc}z.ocninc.nc" "${DATA}/INPUT/mom6_increment.nc" \
|| ( echo "FATAL ERROR: Unable to copy ensemble MOM6 increment, ABORT!"; exit 1 )
fi
fi # if [[ "${RUN}" == "gefs" ]]; then
# TODO if [[ $RUN} == "gefs" ]] block maybe be needed
# to ensure it does not interfere with the GFS when ensemble is updated in the GFS
Comment on lines 462 to +464
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should these comments be removed now?

if (( MEMBER > 0 )) && [[ "${ODA_INCUPD:-False}" == "True" ]]; then
${NCP} "${COMIN_OCEAN_ANALYSIS}/${RUN}.t${cyc}z.ocninc.nc" "${DATA}/INPUT/mom6_increment.nc" \
|| ( echo "FATAL ERROR: Unable to copy ensemble MOM6 increment, ABORT!"; exit 1 )
fi
fi # if [[ "${RERUN}" == "NO" ]]; then

# Link output files
Expand Down Expand Up @@ -587,7 +586,13 @@ CICE_postdet() {
restart_date="${model_start_date_current_cycle}"
cice_restart_file="${COMIN_ICE_RESTART_PREV}/${restart_date:0:8}.${restart_date:8:2}0000.cice_model.res.nc"
if [[ "${DO_JEDIOCNVAR:-NO}" == "YES" ]]; then
cice_restart_file="${COMIN_ICE_ANALYSIS}/${restart_date:0:8}.${restart_date:8:2}0000.cice_model_anl.res.nc"
if (( MEMBER == 0 )); then
# Start the deterministic from the JEDI/SOCA analysis if the Marine DA in ON
cice_restart_file="${COMIN_ICE_ANALYSIS}/${restart_date:0:8}.${restart_date:8:2}0000.cice_model_anl.res.nc"
elif (( MEMBER > 0 )) && [[ "${DO_STARTMEM_FROM_JEDIICE:-NO}" == "YES" ]]; then
# Ignore the JEDI/SOCA ensemble analysis for the ensemble members if DO_START_FROM_JEDIICE is OFF
cice_restart_file="${COMIN_ICE_ANALYSIS}/${restart_date:0:8}.${restart_date:8:2}0000.cice_model_anl.res.nc"
fi
fi
fi

Expand Down
Loading