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

Set default resolution with variables in tests #141

Merged

Conversation

DeniseWorthen
Copy link
Collaborator

@DeniseWorthen DeniseWorthen commented Jul 15, 2020

Issue #135

  • Replaces hard-wired resolution dependent values in tests w/ variables.

  • Removes nems regression tests from rt.conf, removes rt_35d_nems.conf

  • Adds MOM_input_template for 1/2 deg resolution

  • Regression tests for CMEPS on Orion pass

Issue #134

  • Removes compset subdirectory and appBuilder files

DeniseWorthen and others added 30 commits November 20, 2019 12:22
merge develop/ufs-s2s-model
MOM_input template for initial condition files
Add debug compilation flag specification at top level (#17)
update to current ufs-weather-app (#19)
Remove IPD tests and CCPP repro tests from the regression test system…
@DeniseWorthen
Copy link
Collaborator Author

Both Orion and Hera logs are posted, all tests pass.
Remove coupled appBuilder files and compset subdir.

@DeniseWorthen DeniseWorthen marked this pull request as ready for review July 15, 2020 19:42
Copy link
Collaborator

@junwang-noaa junwang-noaa left a comment

Choose a reason for hiding this comment

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

Looks good, thanks. You may also to run it on dell?

@@ -10,9 +10,14 @@ function edit_ice_in {
jday=$(date -d "${SYEAR}-${SMONTH}-${SDAY} ${SHOUR}:00:00" +%j)
istep0=$(( ((10#$jday-1)*86400 + 10#$SHOUR*3600) / DT_CICE ))

CICEGRID="grid_cice_NEMS_mx"$OCNRES".nc"
Copy link
Collaborator

Choose a reason for hiding this comment

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

Why are CICEGRID and CICEMASK defined here? I see they are defined in default_vars.sh. Should any overriding be done in individual tests/tests/ files?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Yes, I think you are right.

The other line I was unsure about (even though it works) is setting ICERES in the fv3_conf/*.IN files. Unfortunately we have files with both "025" and "0.25" as resolution identifiers. Is there a better way (or place) to set that variable?

Copy link
Collaborator

Choose a reason for hiding this comment

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

Here is what I think -- this will have to be tested. I leave it up to you to decide:

  • Delete CICEGRID and CICEMASK in default_vars
  • Move CICEGRID and CICEMASK defined in edit_inputs to fv3_conf/*.IN (grid_cice_NEMS_mx@[OCNRES].nc)
  • If ICRES always depends on OCNRES, maybe replace ICERES in default_vars with ICERES in fv3_conf/*.IN, and remove it from fv3_conf/*.IN

Copy link
Collaborator

Choose a reason for hiding this comment

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

If you want to test these out, let me know. I can clone your branch and work on them.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

That would be a huge help Minsuk, thanks.

ICERES and OCNRES will always represent the same resolution since they're always on the same grid. I can envision: mx025, 0.25
mx050, 0.50
mx100, 1.00

@@ -24,11 +29,24 @@ function edit_ice_in {
}

function edit_mom_input {

CHLCLIM="seawifs-clim-1997-2010."$NX_GLB"x"$NY_GLB".v20180328.nc"
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I should probably move this and the FRUNOFF (below) to the individual tests also.

Copy link
Collaborator

Choose a reason for hiding this comment

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

I think NX_GLB and NY_GLB need to be defined in individual tests if need to be overridden since their defaults are defined in default_vars. As to CHLCLIM, maybe define it in fv3_conf/*.in?

Copy link
Collaborator

Choose a reason for hiding this comment

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

I just moved the variables CICEGRID, CICEMASK, CHLCLIM, FRUNOFF to default_vars.sh. I guess individual tests can override any one of these if needed in the future. I don't think it's a good idea to move them to fv3_conf/*.in. Running RT's on Hera with these changes now.

Copy link
Collaborator

@JessicaMeixner-NOAA JessicaMeixner-NOAA left a comment

Choose a reason for hiding this comment

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

@DeniseWorthen this looks great! The clean up and the removal of NEMS tests is really exciting! I only had the one comment that some of the added things in the 025 MOM6_input might not be necessary, but can certainly be kept.

@@ -82,11 +82,11 @@ WRITE_GEOM = 2 ! default = 1
TRIPOLAR_N = True ! [Boolean] default = False
! Use tripolar connectivity at the northern edge of the
! domain. With TRIPOLAR_N, NIGLOBAL must be even.
NIGLOBAL = 1440 !
NIGLOBAL = NX_GLB !
Copy link
Collaborator

Choose a reason for hiding this comment

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

If we have another template for _050 do you even want to make these variables? I mean they are now, so we can keep them. But I don't know if it's strictly necessary?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Eventually I was hoping that all the MOM_input templates could be collapsed into one file, even for waves. It may not be possible but that was where I was going w/ this.

Copy link
Collaborator

Choose a reason for hiding this comment

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

Agreed, I didn't see a way to do waves vs no waves without just adding an extra template but would be happy if there was a way to do this. I think there are even more differences between 1/2 and 1/4 than waves and no waves.

@junwang-noaa
Copy link
Collaborator

junwang-noaa commented Jul 16, 2020 via email

@DeniseWorthen
Copy link
Collaborator Author

There are a couple of other differences.
025 has a specified TOPO_EDITS_FILE, 050 does not have this file (so it would default to "")
025 has a different TIDEAMP file name.

There are also quite a few parameter differences (values) in the module_MOM_MEKE nml, MOM_lateral_mixing_coeffs nml, MOM_hor_visc nml and MOM_mixed_layer_restrat nml. Given the number of differences, really may not be possible to have a single template for different resolutions.

@DeniseWorthen DeniseWorthen merged commit 9bbcd0b into ufs-community:develop Jul 16, 2020
@DeniseWorthen DeniseWorthen deleted the feature/variable_res branch July 25, 2020 15:55
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.

5 participants