Adds reading of omega HorzMesh from mesh iostream #382
Adds reading of omega HorzMesh from mesh iostream #382philipwjones wants to merge 4 commits intoE3SM-Project:developfrom
Conversation
Uses an input IOStream to read the input horizontal mesh variables. The same filename is used by Decomp. If the Decomp optional argument for a mesh file is supplied, that value overrides the mesh stream filename. All physical mesh fields are defined for IO and are added to a field group HorzMeshIn. Some cleanup of the HorzMesh test driver is included to reduce test output and conform to omega code conventions. User and developer docs have been updated with these changes.
updated HorzMesh interfaces
|
Passes ctests on Perlmutter (CPU) |
|
Thanks @philipwjones! I'll take a look ASAP. |
|
I'm working on the Polaris side of supporting these changes in E3SM-Project/polaris#527. That's going to need some fixes in Polaris for the horizontal pressure gradient before it can be tested. |
|
@philipwjones, this is excellent work! I've been able to make use of it in Polaris in E3SM-Project/polaris#544. It allows a major refactor where we split out the mesh and initial conditions into entirely separate files. I did run into an issue that I'll comment on below. |
|
@philipwjones and @brian-oneill, in the merry-go-round test, which may be the only current This is on Frontier at: in case it's helpful. Looking at the code, it seems that not from the separate I don't know if this is something we want to address in this branch or leave for a follow-up PR. But I won't be able to fully test E3SM-Project/polaris#544 until it gets addressed. |
|
@xylar It's a minor change, but probably makes more sense to do it separately. I can code it up and create the PR today. |
|
@brian-oneill, does is make sense to fold that into a broader fix for #391? |
reads global mesh metadata like OnSphere, IsPeriodic and a few others from the input mesh data file
- also removed some debug statements in IOStream
Uses an input IOStream to read the input horizontal mesh variables. Mesh metadata have been added to the mesh class and are also read from this file. The same filename is used by Decomp. If the Decomp optional argument for a mesh file is supplied (eg in some unit test drivers), that value overrides the mesh stream filename. All physical mesh fields are defined for IO and are added to a field group HorzMeshIn. Some cleanup of the HorzMesh test driver is included to reduce test output and conform to omega code conventions. User and developer docs have been updated with these changes.
Checklist
Testingwith the following:have been run on and indicate that are all passing.
has passed, using the Polaris
e3sm_submodules/Omegabaseline-pfor both the baseline (Polarise3sm_submodules/Omega) and the PR buildFixes #311
Fixes #395