-
Notifications
You must be signed in to change notification settings - Fork 37
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
Conversation
e657a92
to
974884d
Compare
@ytakano3, I have completed all the test cases for the 12to60 mesh here:
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. |
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: |
There was a problem hiding this comment.
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 +/-).
There was a problem hiding this comment.
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.
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). |
There was a problem hiding this comment.
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.
There was a problem hiding this comment.
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.
TestingI ran all test cases for both meshes on Chrysalis with Intel and OpenMPI. Results are in these directories:
I also checked the |
@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. |
@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:
|
4de483a
to
e3f1347
Compare
@ytakano3, any headway on looking at this output? |
@xylar, thank you for updating. I am looking at the |
66b06fb
to
dfe7d95
Compare
Only the mesh generation, need to work on dynamical adjustment and namelist.
dfe7d95
to
c54c947
Compare
Instead of having a shared function, have forward test cases call `init.configure` and have `init` call `mesh.configure`. Each can pass an config object to modify.
@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)
and this is the comparison of sst and sss. Here is a closer look in Kuroshio regions, regional cell numbers and figures
Despite slight differences in cell numbers, I think two fields looks very close but what do you think? |
c54c947
to
07af372
Compare
@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. |
There was a problem hiding this 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.
Thanks for working on this @ytakano3! |
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 aconfigure()
function that was called in variousconfigure()
methods, we now call the mesh'sconfigure()
method from the init'sconfigure()
method to get additional config options (e.g. metadata) related to the mesh, and we call init'sconfigure()
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 theMesh
test case; init info in theInit
test case).Checklist
api.rst
) has any new or modified class, method and/or functions listedTesting
in this PR) any testing that was used to verify the changes