-
Notifications
You must be signed in to change notification settings - Fork 4
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 0.1 degree model configurations #16
Comments
Steps to modify a configuration:
Reproducibility TestingThere is a general discussion here ACCESS-NRI/model-config-tests#83 Specifically there is some code for extracting MOM/FMS checksums buried in the CI checking code, which isn't easy to call currently, but shows how it is done https://github.com/ACCESS-NRI/access-om2-configs/blob/main/test/models/accessom2.py#L43-L91 |
This GitHub comparison shows the changes I did for the 1 degree RYF configuration (and I noticed there are some mistakes that need fixing!) |
For comparing model outputs to check for bit reproducibility I recommend a few different tools:
Simple Xwindows based netCDF file viewer. When subtracting one file from another it is a good idea to make sure the files contain actual data. If they're empty you may get a false negative for bit reproducibility as they will be identical. |
Hi @minghangli-uni, great work, thanks. A couple of things I noticed (that weren't covered above):
https://github.com/ACCESS-NRI/access-om2-configs/blob/release-01deg_jra55_ryf/config.yaml#L74 Perhaps @aekiss would have some useful input into what frequency of restarts is appropriate, but in the this experiment ( restart_freq: '5Y'
The documentation for I'd suggest we start with something like sync:
enable: False # set the path and change to true to automatically copy experiment outputs to another location
path: # Set to a location on /g/data or use rsync syntax to specify a remote server and path
exclude:
- *.nc.*
- iceh.????-??-??.nc But best to consult @aekiss to see if all these exclude patterns are required by default https://github.com/COSIMA/01deg_jra55_ryf/blob/master/sync_data.sh#L20C10-L20C121 |
I've added https://github.com/ACCESS-NRI/access-om2-configs/blob/release-1deg_jra55_ryf/config.yaml#L15-L22 |
For the purpose of ensuring checksum reproducibility, the output file from a Known Good Output (KGO) generated by the COSIMA configuration and the output file from the current configuration are provided below:
|
For comparing model outputs, the above tools are used. It's worth noting that when using
it is suggested to include the flag
Also for 3D variables, it's advisable to refrain from running Last but not least, it is ensured that diagnostics contain non-empty data. |
@aekiss can you confirm there aren't separate BGC executables required for the BGC configs? |
re sync exclusions - see comments below and https://github.com/COSIMA/01deg_jra55_iaf/blob/01deg_jra55v140_iaf_cycle4/sync_data.sh#L90-L111 sync:
enable: False # set the path and change to true to automatically copy experiment outputs to another location
path: # Set to a location on /g/data or use rsync syntax to specify a remote server and path
exclude:
- *.nc.* # don't sync uncollated MOM outputs (eg if collation is slow or fails)
- iceh.????-??-??.nc # don't sync individual daily cice outputs - these are concatenated by sync_data.sh
- iceh*.????-??-??-?????.nc # don't sync individual sub-daily cice outputs - these are concatenated eg by https://github.com/COSIMA/01deg_jra55_iaf/blob/01deg_jra55v140_iaf_cycle4/concat_ice_6hourlies.sh
- *-DELETE # deletable files from daily ice concatenation
- *-IN-PROGRESS # temp files from daily ice concatenation |
No, MOM e.g. compare these: |
I've been saving annual restarts for IAF at 0.1°. Not sure what was done at other resolutions. |
I couldn't find where the build logic differs. Where is there any build logic that differentiates between |
The RYF is being saved every 5 years, at least lately
|
Thanks. But this has made me realise we don't have any functionality for concatenating the daily ice files https://github.com/COSIMA/01deg_jra55_ryf/blob/master/sync_data.sh#L87-L108 That would need |
FYI we also concatenated sub-daily cice outputs, eg https://github.com/COSIMA/01deg_jra55_iaf/blob/01deg_jra55v140_iaf_cycle4/concat_ice_6hourlies.sh |
No, they're built differently, in some way that I can't quite remember right now - see https://github.com/COSIMA/access-om2/blob/master/install.sh#L10-L11 and https://github.com/COSIMA/access-om2/wiki/Getting-started#building-the-models |
Found it. https://github.com/mom-ocean/MOM5/blob/master/exp/MOM_compile.csh#L108-L109 which defines a preprocessor flag https://github.com/search?q=repo%3Amom-ocean%2FMOM5+defined%28CSIRO_BGC%29&type=code |
Progress on the BGC configurations is largely blocked until the build variant referenced above is created and deployed. Though it should be possible to copy the missing BGC inputs from |
These configurations need to be updated to the ACCESS-OM2 2024.03.0 deployment, which includes restart reproducibility. The binary paths are in the
|
Nice work @minghangli-uni! This is completed. |
Currently only the 1 degree RYF and IAF global configurations are available in this repo.
The full ACCESS-OM2 release requires the 0.1 degree configurations, IAF and RYF atmospheric forcing, with physics only and bgc.
This corresponds to four configurations:
release-01deg_jra55_ryf
(repo)release-01deg_jra55_iaf
(repo)release-01deg_jra55_ryf_bgc
(repo)release-01deg_jra55_iaf_bgc
(repo)The release-1deg_jra55_ryf branch is the template to follow for RYF configurations. Similarly the release-1deg_jra55_iaf branch is the template to follow for IAF configurations.
Steps to follow to add a COSIMA configuration to this repo:
gh repo clone ACCESS-NRI/access-om2-configs
gh repo clone COSIMA/01deg_jra55_ryf
cd access-om2-configs
remote add 01deg_jra55_ryf ../01deg_jra55_ryf
git checkout -b release-01deg_jra55_ryf 01deg_jra55_ryf/master
vk83
andqv56
git push -f release-01deg_jra55_ryf
The text was updated successfully, but these errors were encountered: