From 4f50d78f872e7c1e29fc4e2c109719e683b4e606 Mon Sep 17 00:00:00 2001 From: DavidNew-NOAA <134300700+DavidNew-NOAA@users.noreply.github.com> Date: Mon, 2 Dec 2024 14:42:10 -0500 Subject: [PATCH] Make separate JCB algorithm YAMLs for CI tests (#1394) The motivation for having separate JCB algorithm YAMLs for each CI test is that in the future, we may want different regression tests for various resolutions, obs configurations, etc. The primary JCB algorithm YAMLs should be generic. --- parm/atm/jcb-prototype_3dvar-fv3inc.yaml.j2 | 10 ---- parm/atm/jcb-prototype_3dvar.yaml.j2 | 10 ---- parm/atm/jcb-prototype_lgetkf-fv3inc.yaml.j2 | 10 ---- parm/atm/jcb-prototype_lgetkf.yaml.j2 | 10 ---- .../atm/jcb-prototype_lgetkf_observer.yaml.j2 | 10 ---- parm/atm/jcb-prototype_lgetkf_solver.yaml.j2 | 10 ---- parm/soca/marine-jcb-3dfgat.yaml.j2 | 10 ---- .../jcb-prototype_3dvar-fv3inc.yaml.j2 | 2 +- .../jcb-prototype_3dvar.yaml.j2 | 2 +- .../jcb-prototype_lgetkf-fv3inc.yaml.j2 | 2 +- .../jcb-prototype_lgetkf.yaml.j2 | 2 +- .../jcb-prototype_lgetkf_observer.yaml.j2 | 2 +- .../jcb-prototype_lgetkf_solver.yaml.j2 | 2 +- ...rototype_3dvar-fv3inc_ufs_hybatmDA.yaml.j2 | 13 ++++ .../jcb-prototype_3dvar_ufs_hybatmDA.yaml.j2 | 42 +++++++++++++ ...ototype_lgetkf-fv3inc_ufs_hybatmDA.yaml.j2 | 13 ++++ ...otype_lgetkf_observer_ufs_hybatmDA.yaml.j2 | 56 ++++++++++++++++++ ...ototype_lgetkf_solver_ufs_hybatmDA.yaml.j2 | 59 +++++++++++++++++++ .../jcb-prototype_lgetkf_ufs_hybatmDA.yaml.j2 | 50 ++++++++++++++++ .../jcb-prototype_3dfgat_3DVarAOWCDA.yaml.j2 | 15 +++++ 20 files changed, 254 insertions(+), 76 deletions(-) create mode 100644 test/gw-ci/atm/jcb-prototype_3dvar-fv3inc_ufs_hybatmDA.yaml.j2 create mode 100644 test/gw-ci/atm/jcb-prototype_3dvar_ufs_hybatmDA.yaml.j2 create mode 100644 test/gw-ci/atm/jcb-prototype_lgetkf-fv3inc_ufs_hybatmDA.yaml.j2 create mode 100644 test/gw-ci/atm/jcb-prototype_lgetkf_observer_ufs_hybatmDA.yaml.j2 create mode 100644 test/gw-ci/atm/jcb-prototype_lgetkf_solver_ufs_hybatmDA.yaml.j2 create mode 100644 test/gw-ci/atm/jcb-prototype_lgetkf_ufs_hybatmDA.yaml.j2 create mode 100644 test/gw-ci/soca/jcb-prototype_3dfgat_3DVarAOWCDA.yaml.j2 diff --git a/parm/atm/jcb-prototype_3dvar-fv3inc.yaml.j2 b/parm/atm/jcb-prototype_3dvar-fv3inc.yaml.j2 index c0aaa3d38..1263650d6 100644 --- a/parm/atm/jcb-prototype_3dvar-fv3inc.yaml.j2 +++ b/parm/atm/jcb-prototype_3dvar-fv3inc.yaml.j2 @@ -1,13 +1,3 @@ # Algorithm # --------- algorithm: fv3jedi_fv3inc_variational - -# Testing things -# -------------- -{% if DO_TEST_MODE and RUN == 'gdas' %} -do_testing: true -test_reference_filename: {{ HOMEgfs }}/sorc/gdas.cd/test/testreference/C96C48_ufs_hybatmDA_3dvar-fv3inc.ref -test_output_filename: {{ HOMEgfs }}/sorc/gdas.cd/build/gdas/test/testoutput/C96C48_ufs_hybatmDA_3dvar-fv3inc.test.out -test_float_relative_tolerance: 1.0e-3 -test_float_absolute_tolerance: 1.0e-5 -{% endif %} diff --git a/parm/atm/jcb-prototype_3dvar.yaml.j2 b/parm/atm/jcb-prototype_3dvar.yaml.j2 index e1e2ff836..4330a87bd 100644 --- a/parm/atm/jcb-prototype_3dvar.yaml.j2 +++ b/parm/atm/jcb-prototype_3dvar.yaml.j2 @@ -30,13 +30,3 @@ observations: # - scatwind_ascat_metop-a # - snowcvr # - abi_g16 - -# Testing things -# -------------- -{% if DO_TEST_MODE and RUN == 'gdas' %} -do_testing: true -test_reference_filename: {{ HOMEgfs }}/sorc/gdas.cd/test/testreference/C96C48_ufs_hybatmDA_3dvar.ref -test_output_filename: {{ HOMEgfs }}/sorc/gdas.cd/build/gdas/test/testoutput/C96C48_ufs_hybatmDA_3dvar.test.out -test_float_relative_tolerance: 1.0e-3 -test_float_absolute_tolerance: 1.0e-5 -{% endif %} diff --git a/parm/atm/jcb-prototype_lgetkf-fv3inc.yaml.j2 b/parm/atm/jcb-prototype_lgetkf-fv3inc.yaml.j2 index f7bf0049b..82f02f4d6 100644 --- a/parm/atm/jcb-prototype_lgetkf-fv3inc.yaml.j2 +++ b/parm/atm/jcb-prototype_lgetkf-fv3inc.yaml.j2 @@ -1,13 +1,3 @@ # Algorithm # --------- algorithm: fv3jedi_fv3inc_lgetkf - -# Testing things -# -------------- -{% if DO_TEST_MODE and RUN == 'enkfgdas' %} -do_testing: true -test_reference_filename: {{ HOMEgfs }}/sorc/gdas.cd/test/testreference/C96C48_ufs_hybatmDA_lgetkf-fv3inc.ref -test_output_filename: {{ HOMEgfs }}/sorc/gdas.cd/build/gdas/test/testoutput/C96C48_ufs_hybatmDA_lgetkf-fv3inc.test.out -test_float_relative_tolerance: 1.0e-3 -test_float_absolute_tolerance: 1.0e-5 -{% endif %} diff --git a/parm/atm/jcb-prototype_lgetkf.yaml.j2 b/parm/atm/jcb-prototype_lgetkf.yaml.j2 index 03e364825..2ed04df3b 100644 --- a/parm/atm/jcb-prototype_lgetkf.yaml.j2 +++ b/parm/atm/jcb-prototype_lgetkf.yaml.j2 @@ -38,13 +38,3 @@ observations: - satwnd.viirs_npp # - scatwind_ascat_metop-a # - snowcvr - -# Testing things -# -------------- -{% if DO_TEST_MODE and RUN == 'enkfgdas' %} -do_testing: true -test_reference_filename: {{ HOMEgfs }}/sorc/gdas.cd/test/testreference/C96C48_ufs_hybatmDA_lgetkf.ref -test_output_filename: {{ HOMEgfs }}/sorc/gdas.cd/build/gdas/test/testoutput/C96C48_ufs_hybatmDA_lgetkf.test.out -test_float_relative_tolerance: 1.0e-3 -test_float_absolute_tolerance: 1.0e-5 -{% endif %} diff --git a/parm/atm/jcb-prototype_lgetkf_observer.yaml.j2 b/parm/atm/jcb-prototype_lgetkf_observer.yaml.j2 index 62bc4b813..4b800ac8f 100644 --- a/parm/atm/jcb-prototype_lgetkf_observer.yaml.j2 +++ b/parm/atm/jcb-prototype_lgetkf_observer.yaml.j2 @@ -44,13 +44,3 @@ atmosphere_obsdataout_prefix: diag_lobs_ # Distribution type distribution_type: RoundRobin - -# Testing things -# -------------- -{% if DO_TEST_MODE and RUN == 'enkfgdas' %} -do_testing: true -test_reference_filename: {{ HOMEgfs }}/sorc/gdas.cd/test/testreference/C96C48_ufs_hybatmDA_lgetkf_observer.ref -test_output_filename: {{ HOMEgfs }}/sorc/gdas.cd/build/gdas/test/testoutput/C96C48_ufs_hybatmDA_lgetkf_observer.test.out -test_float_relative_tolerance: 1.0e-3 -test_float_absolute_tolerance: 1.0e-5 -{% endif %} diff --git a/parm/atm/jcb-prototype_lgetkf_solver.yaml.j2 b/parm/atm/jcb-prototype_lgetkf_solver.yaml.j2 index ca62821aa..b5123dde9 100644 --- a/parm/atm/jcb-prototype_lgetkf_solver.yaml.j2 +++ b/parm/atm/jcb-prototype_lgetkf_solver.yaml.j2 @@ -47,13 +47,3 @@ atmosphere_obsdataout_prefix: diag_solv_ # Distribution type distribution_type: Halo - -# Testing things -# -------------- -{% if DO_TEST_MODE and RUN == 'enkfgdas' %} -do_testing: true -test_reference_filename: {{ HOMEgfs }}/sorc/gdas.cd/test/testreference/C96C48_ufs_hybatmDA_lgetkf_solver.ref -test_output_filename: {{ HOMEgfs }}/sorc/gdas.cd/build/gdas/test/testoutput/C96C48_ufs_hybatmDA_lgetkf_solver.test.out -test_float_relative_tolerance: 1.0e-3 -test_float_absolute_tolerance: 1.0e-5 -{% endif %} diff --git a/parm/soca/marine-jcb-3dfgat.yaml.j2 b/parm/soca/marine-jcb-3dfgat.yaml.j2 index f5301fb32..acdfa002d 100644 --- a/parm/soca/marine-jcb-3dfgat.yaml.j2 +++ b/parm/soca/marine-jcb-3dfgat.yaml.j2 @@ -3,13 +3,3 @@ algorithm: 3dfgat # Observations observations: !INC ${OBS_LIST_SHORT} - -# Testing things -# -------------- -{% if DO_TEST_MODE and RUN == 'gdas' %} -do_testing: true -test_reference_filename: '{{HOMEgfs}}/sorc/gdas.cd/test/testreference/C48mx500_3DVarAOWCDA_3dfgat.ref' -test_output_filename: '{{HOMEgfs}}/sorc/gdas.cd/build/gdas/test/testoutput/C48mx500_3DVarAOWCDA_3dfgat.test.out' -test_float_relative_tolerance: 1.0e-3 -test_float_absolute_tolerance: 1.0e-5 -{% endif %} diff --git a/test/atm/global-workflow/jcb-prototype_3dvar-fv3inc.yaml.j2 b/test/atm/global-workflow/jcb-prototype_3dvar-fv3inc.yaml.j2 index f30be7ad9..1b7d705df 100644 --- a/test/atm/global-workflow/jcb-prototype_3dvar-fv3inc.yaml.j2 +++ b/test/atm/global-workflow/jcb-prototype_3dvar-fv3inc.yaml.j2 @@ -4,7 +4,7 @@ algorithm: fv3jedi_fv3inc_variational # Testing things # -------------- -{% if DO_TEST_MODE and RUN == 'gdas' %} +{% if DO_TEST_MODE == true and RUN == 'gdas' and current_cycle | to_YMDH == '2021032318' %} do_testing: true test_reference_filename: {{ HOMEgfs }}/sorc/gdas.cd/test/testreference/atm_jjob_3dvar-fv3inc.ref test_output_filename: {{ HOMEgfs }}/sorc/gdas.cd/build/gdas/test/testoutput/atm_jjob_3dvar-fv3inc.test.out diff --git a/test/atm/global-workflow/jcb-prototype_3dvar.yaml.j2 b/test/atm/global-workflow/jcb-prototype_3dvar.yaml.j2 index 104d8004d..2e0961b4f 100644 --- a/test/atm/global-workflow/jcb-prototype_3dvar.yaml.j2 +++ b/test/atm/global-workflow/jcb-prototype_3dvar.yaml.j2 @@ -17,7 +17,7 @@ atmosphere_obsdatain_suffix: ".{{ current_cycle | to_YMDH }}.nc" # Testing things # -------------- -{% if DO_TEST_MODE and RUN == 'gdas' %} +{% if DO_TEST_MODE == true and RUN == 'gdas' and current_cycle | to_YMDH == '2021032318' %} do_testing: true test_reference_filename: {{ HOMEgfs }}/sorc/gdas.cd/test/testreference/atm_jjob_3dvar.ref test_output_filename: {{ HOMEgfs }}/sorc/gdas.cd/build/gdas/test/testoutput/atm_jjob_3dvar.test.out diff --git a/test/atm/global-workflow/jcb-prototype_lgetkf-fv3inc.yaml.j2 b/test/atm/global-workflow/jcb-prototype_lgetkf-fv3inc.yaml.j2 index 1238593e1..0e6ce8358 100644 --- a/test/atm/global-workflow/jcb-prototype_lgetkf-fv3inc.yaml.j2 +++ b/test/atm/global-workflow/jcb-prototype_lgetkf-fv3inc.yaml.j2 @@ -4,7 +4,7 @@ algorithm: fv3jedi_fv3inc_lgetkf # Testing things # -------------- -{% if DO_TEST_MODE and RUN == 'enkfgdas' %} +{% if DO_TEST_MODE == true and RUN == 'enkfgdas' and current_cycle | to_YMDH == '2021032318' %} do_testing: true test_reference_filename: {{ HOMEgfs }}/sorc/gdas.cd/test/testreference/atm_jjob_lgetkf-fv3inc.ref test_output_filename: {{ HOMEgfs }}/sorc/gdas.cd/build/gdas/test/testoutput/atm_jjob_lgetkf-fv3inc.test.out diff --git a/test/atm/global-workflow/jcb-prototype_lgetkf.yaml.j2 b/test/atm/global-workflow/jcb-prototype_lgetkf.yaml.j2 index 0b01cdd8c..589e6b5c8 100644 --- a/test/atm/global-workflow/jcb-prototype_lgetkf.yaml.j2 +++ b/test/atm/global-workflow/jcb-prototype_lgetkf.yaml.j2 @@ -22,7 +22,7 @@ atmosphere_obsdatain_suffix: ".{{ current_cycle | to_YMDH }}.nc" # Testing things # -------------- -{% if DO_TEST_MODE and RUN == 'enkfgdas' %} +{% if DO_TEST_MODE == true and RUN == 'enkfgdas' and current_cycle | to_YMDH == '2021032318' %} do_testing: true test_reference_filename: {{ HOMEgfs }}/sorc/gdas.cd/test/testreference/atm_jjob_lgetkf.ref test_output_filename: {{ HOMEgfs }}/sorc/gdas.cd/build/gdas/test/testoutput/atm_jjob_lgetkf.test.out diff --git a/test/atm/global-workflow/jcb-prototype_lgetkf_observer.yaml.j2 b/test/atm/global-workflow/jcb-prototype_lgetkf_observer.yaml.j2 index f6d76e22d..1831ca4d2 100644 --- a/test/atm/global-workflow/jcb-prototype_lgetkf_observer.yaml.j2 +++ b/test/atm/global-workflow/jcb-prototype_lgetkf_observer.yaml.j2 @@ -28,7 +28,7 @@ distribution_type: RoundRobin # Testing things # -------------- -{% if DO_TEST_MODE and RUN == 'enkfgdas' %} +{% if DO_TEST_MODE == true and RUN == 'enkfgdas' and current_cycle | to_YMDH == '2021032318' %} do_testing: true test_reference_filename: {{ HOMEgfs }}/sorc/gdas.cd/test/testreference/atm_jjob_lgetkf_observer.ref test_output_filename: {{ HOMEgfs }}/sorc/gdas.cd/build/gdas/test/testoutput/atm_jjob_lgetkf_observer.test.out diff --git a/test/atm/global-workflow/jcb-prototype_lgetkf_solver.yaml.j2 b/test/atm/global-workflow/jcb-prototype_lgetkf_solver.yaml.j2 index 78215fefe..c2e644172 100644 --- a/test/atm/global-workflow/jcb-prototype_lgetkf_solver.yaml.j2 +++ b/test/atm/global-workflow/jcb-prototype_lgetkf_solver.yaml.j2 @@ -28,7 +28,7 @@ distribution_type: Halo # Testing things # -------------- -{% if DO_TEST_MODE and RUN == 'enkfgdas' %} +{% if DO_TEST_MODE == true and RUN == 'enkfgdas' and current_cycle | to_YMDH == '2021032318' %} do_testing: true test_reference_filename: {{ HOMEgfs }}/sorc/gdas.cd/test/testreference/atm_jjob_lgetkf_solver.ref test_output_filename: {{ HOMEgfs }}/sorc/gdas.cd/build/gdas/test/testoutput/atm_jjob_lgetkf_solver.test.out diff --git a/test/gw-ci/atm/jcb-prototype_3dvar-fv3inc_ufs_hybatmDA.yaml.j2 b/test/gw-ci/atm/jcb-prototype_3dvar-fv3inc_ufs_hybatmDA.yaml.j2 new file mode 100644 index 000000000..bb4ab8ff7 --- /dev/null +++ b/test/gw-ci/atm/jcb-prototype_3dvar-fv3inc_ufs_hybatmDA.yaml.j2 @@ -0,0 +1,13 @@ +# Algorithm +# --------- +algorithm: fv3jedi_fv3inc_variational + +# Testing things +# -------------- +{% if DO_TEST_MODE == true and RUN == 'gdas' and current_cycle | to_YMDH == '2024022400' %} +do_testing: true +test_reference_filename: {{ HOMEgfs }}/sorc/gdas.cd/test/testreference/{{ CASE }}{{ CASE_ENS }}_ufs_hybatmDA_3dvar-fv3inc.ref +test_output_filename: {{ HOMEgfs }}/sorc/gdas.cd/build/gdas/test/testoutput/{{ CASE }}{{ CASE_ENS }}_ufs_hybatmDA_3dvar-fv3inc.test.out +test_float_relative_tolerance: 1.0e-3 +test_float_absolute_tolerance: 1.0e-5 +{% endif %} diff --git a/test/gw-ci/atm/jcb-prototype_3dvar_ufs_hybatmDA.yaml.j2 b/test/gw-ci/atm/jcb-prototype_3dvar_ufs_hybatmDA.yaml.j2 new file mode 100644 index 000000000..5f8c313dc --- /dev/null +++ b/test/gw-ci/atm/jcb-prototype_3dvar_ufs_hybatmDA.yaml.j2 @@ -0,0 +1,42 @@ +# Algorithm +# --------- +algorithm: 3dvar + +# Observation things +# ------------------ +observations: +# - ADPSFC +# - ADPUPA +# - SFCSHP + - aircraft + - ascatw.ascat_metop-b +# - ascatw.ascat_metop-c + - atms_n20 +# - atms_npp + - conventional_ps + - gnssro +# - gpsro +# - iasi_metop-a +# - iasi_metop-b +# - ompsnp_n20 + - ompsnp_npp +# - ompstc_n20 + - ompstc_npp + - satwnd.abi_goes-16 +# - satwnd.abi_goes-18 +# - satwnd.leogeo_multi +# - satwnd.viirs_n20 +# - satwnd.viirs_npp +# - scatwind_ascat_metop-a +# - snowcvr +# - abi_g16 + +# Testing things +# -------------- +{% if DO_TEST_MODE == true and RUN == 'gdas' and current_cycle | to_YMDH == '2024022400' %} +do_testing: true +test_reference_filename: {{ HOMEgfs }}/sorc/gdas.cd/test/testreference/{{ CASE }}{{ CASE_ENS }}_ufs_hybatmDA_3dvar.ref +test_output_filename: {{ HOMEgfs }}/sorc/gdas.cd/build/gdas/test/testoutput/{{ CASE }}{{ CASE_ENS }}_ufs_hybatmDA_3dvar.test.out +test_float_relative_tolerance: 1.0e-3 +test_float_absolute_tolerance: 1.0e-5 +{% endif %} diff --git a/test/gw-ci/atm/jcb-prototype_lgetkf-fv3inc_ufs_hybatmDA.yaml.j2 b/test/gw-ci/atm/jcb-prototype_lgetkf-fv3inc_ufs_hybatmDA.yaml.j2 new file mode 100644 index 000000000..55f42ba54 --- /dev/null +++ b/test/gw-ci/atm/jcb-prototype_lgetkf-fv3inc_ufs_hybatmDA.yaml.j2 @@ -0,0 +1,13 @@ +# Algorithm +# --------- +algorithm: fv3jedi_fv3inc_lgetkf + +# Testing things +# -------------- +{% if DO_TEST_MODE == true and RUN == 'enkfgdas' and current_cycle | to_YMDH == '2024022400' %} +do_testing: true +test_reference_filename: {{ HOMEgfs }}/sorc/gdas.cd/test/testreference/{{ CASE }}{{ CASE_ENS }}_ufs_hybatmDA_lgetkf-fv3inc.ref +test_output_filename: {{ HOMEgfs }}/sorc/gdas.cd/build/gdas/test/testoutput/{{ CASE }}{{ CASE_ENS }}_ufs_hybatmDA_lgetkf-fv3inc.test.out +test_float_relative_tolerance: 1.0e-3 +test_float_absolute_tolerance: 1.0e-5 +{% endif %} diff --git a/test/gw-ci/atm/jcb-prototype_lgetkf_observer_ufs_hybatmDA.yaml.j2 b/test/gw-ci/atm/jcb-prototype_lgetkf_observer_ufs_hybatmDA.yaml.j2 new file mode 100644 index 000000000..031ba0a51 --- /dev/null +++ b/test/gw-ci/atm/jcb-prototype_lgetkf_observer_ufs_hybatmDA.yaml.j2 @@ -0,0 +1,56 @@ +# Use observations for lgetkf +# --------------------------- +app_path_observations: {{PARMgfs}}/gdas/jcb-gdas/observations/atmosphere-lgetkf +app_path_observation_chronicle: {{PARMgfs}}/gdas/jcb-gdas/observation_chronicle/atmosphere + +# Algorithm +# --------- +algorithm: local_ensemble_da_observer + +# Model things +# ------------ +atmosphere_background_ensemble_path: ./bkg/mem%mem% + +# Observation things +# ------------------ +observations: +# - ADPSFC +# - ADPUPA +# - SFCSHP + - aircraft + - ascatw.ascat_metop-b +# - ascatw.ascat_metop-c + - atms_n20 +# - atms_npp + - conventional_ps + - gnssro +# - gpsro +# - iasi_metop-a +# - iasi_metop-b +# - ompsnp_n20 + - ompsnp_npp +# - ompstc_n20 + - ompstc_npp + - satwnd.abi_goes-16 +# - satwnd.abi_goes-18 +# - satwnd.leogeo_multi +# - satwnd.viirs_n20 +# - satwnd.viirs_npp +# - scatwind_ascat_metop-a +# - snowcvr + +# Naming conventions for observation files +atmosphere_obsdataout_prefix: diag_lobs_ + +# Distribution type +distribution_type: RoundRobin + +# Testing things +# -------------- +{% if DO_TEST_MODE == true and RUN == 'enkfgdas' and current_cycle | to_YMDH == '2024022400' %} +do_testing: true +test_reference_filename: {{ HOMEgfs }}/sorc/gdas.cd/test/testreference/{{ CASE }}{{ CASE_ENS }}_ufs_hybatmDA_lgetkf_observer.ref +test_output_filename: {{ HOMEgfs }}/sorc/gdas.cd/build/gdas/test/testoutput/{{ CASE }}{{ CASE_ENS }}_ufs_hybatmDA_lgetkf_observer.test.out +test_float_relative_tolerance: 1.0e-3 +test_float_absolute_tolerance: 1.0e-5 +{% endif %} diff --git a/test/gw-ci/atm/jcb-prototype_lgetkf_solver_ufs_hybatmDA.yaml.j2 b/test/gw-ci/atm/jcb-prototype_lgetkf_solver_ufs_hybatmDA.yaml.j2 new file mode 100644 index 000000000..3523bbcfe --- /dev/null +++ b/test/gw-ci/atm/jcb-prototype_lgetkf_solver_ufs_hybatmDA.yaml.j2 @@ -0,0 +1,59 @@ +# Use observations for lgetkf +# --------------------------- +app_path_observations: {{PARMgfs}}/gdas/jcb-gdas/observations/atmosphere-lgetkf +app_path_observation_chronicle: {{PARMgfs}}/gdas/jcb-gdas/observation_chronicle/atmosphere + +# Algorithm +# --------- +algorithm: local_ensemble_da_solver + +# Model things +# ------------ +atmosphere_background_ensemble_path: ./bkg/mem%mem% + +# Observation things +# ------------------ +observations: +# - ADPSFC +# - ADPUPA +# - SFCSHP + - aircraft + - ascatw.ascat_metop-b +# - ascatw.ascat_metop-c + - atms_n20 +# - atms_npp + - conventional_ps + - gnssro +# - gpsro +# - iasi_metop-a +# - iasi_metop-b +# - ompsnp_n20 + - ompsnp_npp +# - ompstc_n20 + - ompstc_npp + - satwnd.abi_goes-16 +# - satwnd.abi_goes-18 +# - satwnd.leogeo_multi +# - satwnd.viirs_n20 +# - satwnd.viirs_npp +# - scatwind_ascat_metop-a +# - snowcvr + +# Naming conventions for observation files +atmosphere_obsdatain_path: "{{atm_obsdataout_path}}" +atmosphere_obsdatain_prefix: diag_lobs_ +atmosphere_obsdatain_suffix: "_{{ current_cycle | to_YMDH }}.nc" +atmosphere_obsdataout_prefix: diag_solv_ + +# Distribution type +distribution_type: Halo + +# Testing things +# -------------- +{% if DO_TEST_MODE == true and RUN == 'enkfgdas' and current_cycle | to_YMDH == '2024022400' %} +do_testing: true +test_reference_filename: {{ HOMEgfs }}/sorc/gdas.cd/test/testreference/{{ CASE }}{{ CASE_ENS }}_ufs_hybatmDA_lgetkf_solver.ref +test_output_filename: {{ HOMEgfs }}/sorc/gdas.cd/build/gdas/test/testoutput/{{ CASE }}{{ CASE_ENS }}_ufs_hybatmDA_lgetkf_solver.test.out +test_float_relative_tolerance: 1.0e-3 +test_float_absolute_tolerance: 1.0e-5 +{% endif %} diff --git a/test/gw-ci/atm/jcb-prototype_lgetkf_ufs_hybatmDA.yaml.j2 b/test/gw-ci/atm/jcb-prototype_lgetkf_ufs_hybatmDA.yaml.j2 new file mode 100644 index 000000000..befc637e9 --- /dev/null +++ b/test/gw-ci/atm/jcb-prototype_lgetkf_ufs_hybatmDA.yaml.j2 @@ -0,0 +1,50 @@ +# Use observations for lgetkf +# --------------------------- +app_path_observations: {{PARMgfs}}/gdas/jcb-gdas/observations/atmosphere-lgetkf +app_path_observation_chronicle: {{PARMgfs}}/gdas/jcb-gdas/observation_chronicle/atmosphere + +# Algorithm +# --------- +algorithm: local_ensemble_da + +# Model things +# ------------ +atmosphere_background_ensemble_path: ./bkg/mem%mem% + +# Observation things +# ------------------ +observations: +# - ADPSFC +# - ADPUPA +# - SFCSHP + - aircraft + - ascatw.ascat_metop-b +# - ascatw.ascat_metop-c + - atms_n20 + - atms_npp + - conventional_ps + - gnssro +# - gpsro +# - iasi_metop-a +# - iasi_metop-b +# - ompsnp_n20 + - ompsnp_npp +# - ompstc_n20 + - ompstc_npp + - satwnd.abi_goes-16 + - satwnd.abi_goes-18 + - satwnd.leogeo_multi + - satwnd.viirs_n20 + - satwnd.viirs_npp +# - scatwind_ascat_metop-a +# - snowcvr + +# Testing things +# -------------- +{% if DO_TEST_MODE == true and RUN == 'enkfgdas' and current_cycle | to_YMDH == '2024022400' %} +do_testing: true +test_reference_filename: {{ HOMEgfs }}/sorc/gdas.cd/test/testreference/{{ CASE }}{{ CASE_ENS }}_ufs_hybatmDA_lgetkf.ref +test_output_filename: {{ HOMEgfs }}/sorc/gdas.cd/build/gdas/test/testoutput/{{ CASE }}{{ CASE_ENS }}_ufs_hybatmDA_lgetkf.test.out +test_float_relative_tolerance: 1.0e-3 +test_float_absolute_tolerance: 1.0e-5 +{% endif %} diff --git a/test/gw-ci/soca/jcb-prototype_3dfgat_3DVarAOWCDA.yaml.j2 b/test/gw-ci/soca/jcb-prototype_3dfgat_3DVarAOWCDA.yaml.j2 new file mode 100644 index 000000000..bd17e8d19 --- /dev/null +++ b/test/gw-ci/soca/jcb-prototype_3dfgat_3DVarAOWCDA.yaml.j2 @@ -0,0 +1,15 @@ +# JEDI algorithm being invoked +algorithm: 3dfgat + +# Observations +observations: !INC ${OBS_LIST_SHORT} + +# Testing things +# -------------- +{% if DO_TEST_MODE == true and RUN == 'gdas' and current_cycle | to_YMDH == '2021032418' %} +do_testing: true +test_reference_filename: '{{HOMEgfs}}/sorc/gdas.cd/test/testreference/{{ CASE }}mx{{ OCNRES }}_3DVarAOWCDA_3dfgat.ref' +test_output_filename: '{{HOMEgfs}}/sorc/gdas.cd/build/gdas/test/testoutput/{{ CASE }}mx{{ OCNRES }}_3DVarAOWCDA_3dfgat.test.out' +test_float_relative_tolerance: 1.0e-3 +test_float_absolute_tolerance: 1.0e-5 +{% endif %}