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

Completes LETKF task, adds WCDA CI test #1287

Open
wants to merge 17 commits into
base: develop
Choose a base branch
from

Conversation

AndrewEichmann-NOAA
Copy link
Collaborator

Completes LETKF task, adds WCDA CI test

Mutually dependent on NOAA-EMC/global-workflow#2944

Copy link
Contributor

@guillaumevernieres guillaumevernieres left a comment

Choose a reason for hiding this comment

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

👍

test/gw-ci/CMakeLists.txt Outdated Show resolved Hide resolved
basename: ./ens/mem%mem%
state variables: [socn, tocn, ssh, uocn, vocn, cicen]
basename: ./ens/mem%mem%/
state variables: [socn, tocn, ssh, hocn, uocn, vocn, cicen]
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
state variables: [socn, tocn, ssh, hocn, uocn, vocn, cicen]
state variables: [socn, tocn, ssh, hocn, uocn, vocn, cicen]

@@ -38,32 +41,31 @@ local ensemble DA:
mult: 1.1

output:
datadir: data_output/
datadir: Data/
Copy link
Contributor

Choose a reason for hiding this comment

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

Wouldn't a more descriptive output path be useful than Data/ for all of these?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

As I recall this was to match existing code but I don't see a reason why it can't be changed

Copy link
Contributor

Choose a reason for hiding this comment

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

Data sounds good to me, but up to you @AndrewEichmann-NOAA .

{% set COMOUT_OCEAN_LETKF_MEM = COM_OCEAN_LETKF_TMPL | replace_tmpl(tmpl_dict) %}
{% set COMOUT_ICE_LETKF_MEM = COM_ICE_LETKF_TMPL | replace_tmpl(tmpl_dict) %}

- ["{{ DATA }}/Data/ocn.letkf.ens.{{ mem }}.{{ timestr }}.PT3H.nc", "{{ COMOUT_OCEAN_LETKF_MEM }}/{{ RUN }}.ocean.t{{ cyc }}z.letkf.nc"]
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
- ["{{ DATA }}/Data/ocn.letkf.ens.{{ mem }}.{{ timestr }}.PT3H.nc", "{{ COMOUT_OCEAN_LETKF_MEM }}/{{ RUN }}.ocean.t{{ cyc }}z.letkf.nc"]
- ["{{ DATA }}/Data/ocn.letkf.ens.{{ mem }}.{{ timestr }}.PT3H.nc", "{{ COMOUT_OCEAN_LETKF_MEM }}/{{ RUN }}.ocean.t{{ cyc }}z.analysis.nc"]

Copy link
Contributor

Choose a reason for hiding this comment

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

seems strange to call this file gdas.ocean.t00z.letkf.nc, we don't say gdas.ocean.t00z.var.nc do we?

{% set COMOUT_ICE_LETKF_MEM = COM_ICE_LETKF_TMPL | replace_tmpl(tmpl_dict) %}

- ["{{ DATA }}/Data/ocn.letkf.ens.{{ mem }}.{{ timestr }}.PT3H.nc", "{{ COMOUT_OCEAN_LETKF_MEM }}/{{ RUN }}.ocean.t{{ cyc }}z.letkf.nc"]
- ["{{ DATA }}/Data/ice.letkf.ens.{{ mem }}.{{ timestr }}.PT3H.nc", "{{ COMOUT_ICE_LETKF_MEM }}/{{ RUN }}.ice.t{{ cyc }}z.letkf.nc"]
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
- ["{{ DATA }}/Data/ice.letkf.ens.{{ mem }}.{{ timestr }}.PT3H.nc", "{{ COMOUT_ICE_LETKF_MEM }}/{{ RUN }}.ice.t{{ cyc }}z.letkf.nc"]
- ["{{ DATA }}/Data/ice.letkf.ens.{{ mem }}.{{ timestr }}.PT3H.nc", "{{ COMOUT_ICE_LETKF_MEM }}/{{ RUN }}.ice.t{{ cyc }}z.analysis.nc"]


- ["{{ DATA }}/Data/ocn.letkf.ens.{{ mem }}.{{ timestr }}.PT3H.nc", "{{ COMOUT_OCEAN_LETKF_MEM }}/{{ RUN }}.ocean.t{{ cyc }}z.letkf.nc"]
- ["{{ DATA }}/Data/ice.letkf.ens.{{ mem }}.{{ timestr }}.PT3H.nc", "{{ COMOUT_ICE_LETKF_MEM }}/{{ RUN }}.ice.t{{ cyc }}z.letkf.nc"]
{% endfor %}
Copy link
Contributor

Choose a reason for hiding this comment

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

No EOL

@@ -11,6 +11,9 @@ obs space:
simulated variables: [seaSurfaceTemperature]
io pool:
max pool size: 1
distribution:
Copy link
Contributor

Choose a reason for hiding this comment

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

Same comment x n

@@ -1,4 +1,3 @@
# TODO(AFE): make resolution dependent
Copy link
Contributor

Choose a reason for hiding this comment

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

Why are these not made resolution dependent? Seems like a lot of redundancy here that can be simplified with some Jinja

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

This got broken out into different yamls - @guillaumevernieres is there a particular approach you're committed to?

Copy link
Contributor

Choose a reason for hiding this comment

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

Yes, the one that we have now. We might decide to combine these at some point, but it's pretty far down the priority list.

@@ -17,12 +17,40 @@ function(add_cycling_tests pslot YAML_PATH HOMEgfs RUNTESTS PROJECT_SOURCE_DIR T
list(GET DATES_LIST 0 HALF_CYCLE)
list(GET DATES_LIST 1 FULL_CYCLE)

# stage ics
message(STATUS "preparing gdasstage_ic for ${pslot} ctest")
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
message(STATUS "preparing gdasstage_ic for ${pslot} ctest")
message(STATUS "preparing gdasstage_ic for ${pslot} ctest")


# stage ensemble ics
if (letkf)
message(STATUS "preparing enkfgdasstage_ic for ${pslot} ctest")
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
message(STATUS "preparing enkfgdasstage_ic for ${pslot} ctest")
message(STATUS "preparing enkfgdasstage_ic for ${pslot} ctest")


# 1/2 cycle enkfgdasfcst
if (letkf)
set(ENS_MEMS "mem001" "mem002" "mem003")
Copy link
Contributor

Choose a reason for hiding this comment

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

indent this if block to be consistent with the others

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants