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 Kuroshio8to60E2r4 and Kuroshio12to60E2r4 meshes #525

Merged
merged 19 commits into from
Feb 21, 2023

Conversation

ytakano3
Copy link
Contributor

@ytakano3 ytakano3 commented Feb 8, 2023

This merge introduces 2 meshes used in Yohei's research on the Kuroshio and the northeast Pacific.

It also includes some reorganization of how config options are handled in the global_ocean test group to handle a set of shared config options for the 2 meshes as well as a small number of unique config options for each one. Rather than having a configure() function that was called in various configure() methods, we now call the mesh's configure() method from the init's configure() method to get additional config options (e.g. metadata) related to the mesh, and we call init's configure() from forward test cases (performance, dynamic adjustment, restart test, etc.) in order to get metadata about both the mesh and initial condition. This turns out to be a more elegant and flexible approach where the info supplied is in a more intuitive location (mesh info in the Mesh test case; init info in the Init test case).

Checklist

  • User's Guide has been updated
  • Developer's Guide has been updated
  • API documentation in the Developer's Guide (api.rst) has any new or modified class, method and/or functions listed
  • Documentation has been built locally and changes look as expected
  • Document (in a comment titled Testing in this PR) any testing that was used to verify the changes
  • New tests have been added to a test suite

@xylar xylar changed the title Add kuroshio 8 and 12 meshes Add Kuroshio8to60E2r4 and Kuroshio12to60E2r4 meshes Feb 8, 2023
@xylar xylar self-assigned this Feb 8, 2023
@xylar xylar self-requested a review February 8, 2023 15:22
@xylar xylar added new mesh An E3SM mesh for special review ocean labels Feb 8, 2023
@xylar xylar mentioned this pull request Feb 8, 2023
5 tasks
@xylar xylar force-pushed the add-kuroshio-8-and-12-meshes branch 3 times, most recently from e657a92 to 974884d Compare February 8, 2023 23:06
@xylar
Copy link
Collaborator

xylar commented Feb 8, 2023

@ytakano3, I have completed all the test cases for the 12to60 mesh here:

/lcrc/group/e3sm/ac.xylar/compass_1.2/chrysalis/test_20230207/kuroshio12/ocean/global_ocean/Kuroshio12to60

Could you take a look at the results and make sure they look quite similar to what you have seen previously? Ideally, we would make sure the relevant config and namelist options are the same as what you ran with before but that may be more work than either of us has time for. So I'm hoping a look at the mesh and the output after dynamic adjustment will be sufficient.

I am still working on the 8to60 dynamic adjustment, which takes quite a bit longer.

Comment on lines 444 to 462
The ``Kuroshio8to60`` and ``Kuroshio12to60`` mehses are designed to explore
dynamics of the Kuroshio Current.

The class
:py:class:`compass.ocean.tests.global_ocean.mesh.kuroshio.KuroshioBaseMesh`
defines the resolution for the meshes, where the finest resolution comes from
the ``min_res`` config option in the ``[global_ocean]`` section of the config
file.

The ``compass.ocean.tests.global_ocean.mesh.kuroshio8to60`` and
``compass.ocean.tests.global_ocean.mesh.kuroshio12to60`` modules include
namelist options appropriate for forward simulations with split-explicit (but
not RK4) time integration on this mesh. These set the time step and default
run duration for short runs with this mesh.

Except for ``min_res``, default config options for these meshes come from a
shared config file in the ``compass.ocean.tests.global_ocean.mesh.kuroshio``
module:
Copy link
Collaborator

Choose a reason for hiding this comment

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

@ytakano3, please check this documentation and suggest modifications here if you would like (using the "Add suggestions" button with the +/-).

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@xylar Minor comment (change) added.

Comment on lines 313 to 348
The Kuroshio 8- and 12- to 60-km meshes (Kuroshio8to60 and Kuroshio12to60) are
designed to explore dynamics of the Kuroshio Current.

The meshes have 8 and 12 km resolution, respectively, in the eastern
North Pacific, tapering to 60 km at mid latitudes, 30 km at the equator, and
35 km in polar regions (the same as the EC30to60).
Copy link
Collaborator

Choose a reason for hiding this comment

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

@ytakano3, same here. Please make any suggested changes here with the "Add a suggestion" button.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@xylar Minor comment (change) added.

@xylar
Copy link
Collaborator

xylar commented Feb 9, 2023

Testing

I ran all test cases for both meshes on Chrysalis with Intel and OpenMPI. Results are in these directories:

/lcrc/group/e3sm/ac.xylar/compass_1.2/chrysalis/test_20230207/kuroshio12/ocean/global_ocean/Kuroshio12to60
/lcrc/group/e3sm/ac.xylar/compass_1.2/chrysalis/test_20230207/kuroshio8/ocean/global_ocean/Kuroshio8to60

I also checked the pr test suite using main as a baseline (and using the same build of MPAS-Ocean from the E3SM-Project submodule from main). Everything (importantly the global_ocean tests) passed and were bit-for-bit.

@xylar
Copy link
Collaborator

xylar commented Feb 9, 2023

@ytakano3, can you take a look at the output in the directories above and make sure it looks similar to (hopefully even identical to) what you have already been using as an initial condition? That's the main thing I need from you as a review. Can you do that in the next week or so?

I would like to get this in.

@xylar
Copy link
Collaborator

xylar commented Feb 9, 2023

@ytakano3, thank you for your comments. I believe I have incorporated all of them. I will rerun the full set of tests now and hopefully they will be there for you to look at tomorrow:

/lcrc/group/e3sm/ac.xylar/compass_1.2/chrysalis/test_20230209/kuroshio12/ocean/global_ocean/Kuroshio12to60
/lcrc/group/e3sm/ac.xylar/compass_1.2/chrysalis/test_20230209/kuroshio8/ocean/global_ocean/Kuroshio8to60

@xylar xylar force-pushed the add-kuroshio-8-and-12-meshes branch from 4de483a to e3f1347 Compare February 9, 2023 23:41
@xylar
Copy link
Collaborator

xylar commented Feb 17, 2023

@ytakano3, any headway on looking at this output?

@ytakano3
Copy link
Contributor Author

@xylar, thank you for updating. I am looking at the restart.nc from compass run now for both 12km and 8km meshes. Will update on this soon.

@xylar xylar force-pushed the add-kuroshio-8-and-12-meshes branch 2 times, most recently from 66b06fb to dfe7d95 Compare February 17, 2023 23:32
@xylar
Copy link
Collaborator

xylar commented Feb 21, 2023

@ytakano3, just a warning that I'm going to do one more rebase on this branch to take care of some conflicts with #474

@xylar xylar force-pushed the add-kuroshio-8-and-12-meshes branch from dfe7d95 to c54c947 Compare February 21, 2023 22:09
@ytakano3
Copy link
Contributor Author

ytakano3 commented Feb 21, 2023

@xylar Thank you for the rebase warning. I have checked the sea surface temperature and salinity (sst and sss from compass (your version and my version). The global cell numbers differ slightly, here is the summary (cell numbers no bathymetry)

           Kuroshio 12km     Kuroshio 8km
 Xylar       322685             457263
 Yohei       322637             457732

and this is the comparison of sst and sss.

Kuroshio_test_figures 001
Kuroshio_test_figures 002

Here is a closer look in Kuroshio regions, regional cell numbers and figures

           Kuroshio 12km     Kuroshio 8km
 Xylar       114747             229907
 Yohei       114791             230231

Kuroshio_test_figures 003
Kuroshio_test_figures 004

Despite slight differences in cell numbers, I think two fields looks very close but what do you think?

@xylar xylar force-pushed the add-kuroshio-8-and-12-meshes branch from c54c947 to 07af372 Compare February 21, 2023 22:35
@xylar
Copy link
Collaborator

xylar commented Feb 21, 2023

@ytakano3, that looks very good to me. I'm going to run one more test following the rebase to make sure I didn't break anything. Then, I'm going to approve and merge.

Copy link
Collaborator

@xylar xylar left a comment

Choose a reason for hiding this comment

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

I did one last test with this branch and the pr suite is bit-for-bit with main so I think the rebase went fine.

@xylar xylar merged commit 01a1a41 into MPAS-Dev:main Feb 21, 2023
@xylar xylar deleted the add-kuroshio-8-and-12-meshes branch February 21, 2023 23:58
@xylar
Copy link
Collaborator

xylar commented Feb 21, 2023

Thanks for working on this @ytakano3!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
new mesh An E3SM mesh for special review ocean
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants