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

replace CAM-SE VR control volume grids with newer/better grids #62

Open
adamrher opened this issue Sep 29, 2022 · 4 comments
Open

replace CAM-SE VR control volume grids with newer/better grids #62

adamrher opened this issue Sep 29, 2022 · 4 comments

Comments

@adamrher
Copy link
Contributor

adamrher commented Sep 29, 2022

[Note I originally opened this issue in CAM: https://github.com/ESCOMP/CAM/issues/665]

Replace ESMF mesh files for ARCTIC, ARCTICGRIS and CONUS grids in ccs_config, using an improved algorithm. By improved, I mean the control volumes are more regular, with less frequent occurrences of non-convex polygons (which tends to reduce the accuracy of the mapping ... although I'm told ESMF can handle these fine). This is achieved by only allowing up to 6 sided polygons, as opposed to the current algorithm that permits 14 sided polygons. I'm referring to this new algorithm as "chevrons" since it does tend to produce some non-convex 6-sided chevrons (however, this preferable to our egregiously non-convex 12 sided "stars" that results from the current algorithm).

Changing the mesh files will change answers for anything that uses mapping weights. But it's not clear whether the F-compsets will have answer changes because nothing is mapped -- everything is on the same grid (maybe the SST/ICE dataset is mapped using the mesh files?).

I've verified that the new grids aren't of a lower quality by checking their conservation properties (mapping them to themselves using ESMF and then checking those maps) compared to the current ones. The global area has smaller errors, and the relative/maximum/least-squares errors are all reduced using these new mesh files.

/glade/work/aherring/grids/var-res/ne0np4.ARCTIC.ne30x4/grids/ne0ARCTICne30x4_esmf_chevrons_c220827.nc
/glade/work/aherring/grids/var-res/ne0np4.ARCTICGRIS.ne30x8/grids/ne0ARCTICGRISne30x8_esmf_chevrons_c220928.nc
/glade/work/aherring/grids/var-res/ne0np4.CONUS.ne30x8/grids/ne0CONUSne30x8_esmf_chevrons_c220928.nc

These will need to be added to the inputdata and paths updated in ccs_config/component_grids_nuopc.xml. I don't think we should bother updating the MCT mapping files, as MCT will be deprecated soon/eventually.

Question. In the inputdata repo, the meshes belong in inputdata/share/meshes/ ... do they need to be consistent with the equivalent SCRIP grid files in inputdata/share/scripgrids/? If so, then I will need to add these new SCRIP files to the inputdata too.

@PeterHjortLauritzen
@patcal
@jedwards4b
@fischer-ncar
@cacraigucar

@adamrher
Copy link
Contributor Author

adamrher commented Sep 29, 2022

@jedwards4b says:

I don't believe we need the scripgrids in inputdata.

Would this be a problem if the mesh files was created from the scrip file? You will never be able to reproduce that mesh file again if you get rid of the scrip file. Is that a problem? I can't think of any glaring reasons why you wold need to recreate the mesh files though ...

@mvertens
Copy link
Contributor

mvertens commented Sep 29, 2022 via email

@adamrher
Copy link
Contributor Author

Thanks Mariana. We should expect answer changes then.

I'm testing the new grids right now, and am getting an error in the atm nuopc cap:

398:ERROR: CAM n, lonmesh(n), lon(n), diff_lon =    100      0.0000000000000       180.0000000000000             0.18000D+03

I looked into the error message, and it's actually written backwards. The first longitude value is "lon(n)" and the second value is the "lonmesh(n)". I don't really understand this error --- I checked that in the new mesh file, longitudes are bounded by [0,360]. But zero is the prime meridian, and not equal to +180 degrees. So note sure what's going on -- I'm going to plot the mesh files to see if maybe the coordinates are offset by 180 degrees ...

@mvertens
Copy link
Contributor

mvertens commented Oct 11, 2022 via email

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

No branches or pull requests

2 participants