-
Notifications
You must be signed in to change notification settings - Fork 145
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
Compressed state option for MITgcm_ocean NBLING #455
Conversation
todo: use dart modules rather than standalone, netcdf, kinds, etc
mit_to_dart, dart_to_mit seems like place to put the offline squishing
FVAL a parameter
used when uncompressing
integers for coord index
the caching was fixed in #368
note the get_compressed_dart_vector index needs checking for 2d variables. Is the ZC(kloc)=1?
Currently hardcoded as *4. May be able to replace this with INQUIRE to get correct recl
MITgcm-DART with compressed netcdf files is based on work by Ed Liu as part of a 2022 SIParCS project
CHL is not updated, but may be helpful when testing code. For example, perturbing uncompressed state to get an ensemble of mit .data files to test bitwise between compressed and non-compressed.
@@ -2415,7 +2415,7 @@ function nc_create_file(filename, context) | |||
character(len=*), parameter :: routine = 'nc_create_file' | |||
integer :: ret, ncid, oldmode | |||
|
|||
ret = nf90_create(filename, NF90_CLOBBER, ncid) | |||
ret = nf90_create(filename, ior(NF90_CLOBBER,NF90_64BIT_OFFSET), ncid) |
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.
Helen you probably don't want to leave this in, see #287 for netcdf notes
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 believe we need to leave this in if we want to be able to create DART files in the netCDF-4 format (with unlimited time dim), else it will throw the error message shown in #287.
But I'm not sure if including NF90_64BIT_OFFSET as an ior argument will cause DART files that are not in the netCDF-4 format to be created with incorrect formatting?
Documentation for this pull request is here: https://dart-documentation--455.org.readthedocs.build/en/455/models/MITgcm_ocean/readme.html |
Feedback on this, 0 has been used as the masking value in the existing MITgcm-dart and this compressed version: DART/models/MITgcm_ocean/model_mod.f90 Lines 981 to 984 in 502af78
There is actually mask information from MITgcm (0 is dry 1 is wet point) from hFacC.data, hFacW.data, and hFacS.data which we should use instead for masking out land. |
closing for now, will reopen when needed. |
Description:
This pull request introduces an option to compress the land out out of MITgcm ocean files.
For the MITgcm ocean NBLING Red Sea experiment this is particularly effective in reducing the size of the state and enabling high resolution runs.
From work by Jiachen Liu which he presented at AMS 2023
The work was done as part of SIParCS 2022 under the Red Sea Initiative project
Fixes issue
Fixes #391
Types of changes
Documentation changes needed?
Tests
Please describe any tests you ran to verify your changes.
Bitwise against the previous version of the code for the MITgcm test case we have.
Checklist for merging
Checklist for release
Testing Datasets
You can grab MIT cases from here: /glade/scratch/hkershaw/DART/Squished
Hang tight for a nicely organized case.