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

Add CICE-QC testing script #5969

Merged
merged 1 commit into from
Oct 18, 2023

Conversation

darincomeau
Copy link
Member

Adds a script to perform "CICE-QC" test, which determines if non-BFB changes in the sea ice model are climate-changing. This has been adapted from the CICE implementation for MPAS-Seaice.
Documentation on usage is provided in a README.md alongside test script.

[BFB]

@darincomeau
Copy link
Member Author

This test uses two netcdf files, which I've put in the public inputdata directory here: https://web.lcrc.anl.gov/public/e3sm/inputdata/ice/mpas-seaice/general/

The path to these files is currently hard-coded in the python script to the LCRC path, so this will only work on those machines as is.

@darincomeau
Copy link
Member Author

@eclare108213 @proteanplanet do either of you have a pair of runs sitting on LCRC I can use to test this? The runs I had in the sample job scripts here have been purged.

@eclare108213
Copy link
Contributor

Yes, the latest qc tests that I ran are in /lcrc/group/e3sm/ac.eclare/E3SM-Polar:

D12.qcPR25.emc.qcPR25.thermo_itd2.eclare108213.anvil
D12.qcPR29.emc.qcPR29.merge-snow-integration-master.E3SM-Project.anvil

Those passed -- I don't have any that failed :)

@proteanplanet
Copy link
Contributor

Back-to-back B-case simulations of Icepack and ColPkg:

/lcrc/group/e3sm/ac.afroberts/E3SM-Polar/B12.merge.icepack.icepack-integration.eclare108213.anvil

k000 --> config_column_physics_type = 'column_package'
k001 --> config_column_physics_type = 'icepack'

I'd love to know what the QC test shows.

@eclare108213
Copy link
Contributor

The QC scripts here need to be modified for the k000 / k001 directory structure produced using Andrew's scripts. E.g. my modified QC scripts are in /home/ac.eclare/MPAS-Analysis.

@eclare108213
Copy link
Contributor

and I should clarify that I'm not suggesting the scripts as submitted in this PR need to be modified, but that a user would need to modify them for, for example, Andrew's data above.

@proteanplanet
Copy link
Contributor

@eclare108213 @darincomeau N.B. I'm changing that directory structure, because it doesn't play well across a range of E3SM applications (PACE, zppy), so no need to rewire this work. I'll rewire my script.

@darincomeau
Copy link
Member Author

Back-to-back B-case simulations of Icepack and ColPkg:

/lcrc/group/e3sm/ac.afroberts/E3SM-Polar/B12.merge.icepack.icepack-integration.eclare108213.anvil

k000 --> config_column_physics_type = 'column_package'
k001 --> config_column_physics_type = 'icepack'

I'd love to know what the QC test shows.

@proteanplanet this test requires non-standard output, which is daily iceThickness snapshots. Unfortunately I can't run it on the pair of runs you've pointed to.

@eclare108213 you've been turning this output on for your tests - do you have an automated way of modifying the streams.seaice file?

@darincomeau
Copy link
Member Author

and thanks @eclare108213 for pointing to your changes. I should loosen the requirement here that the run directory doesn't need to be named exactly run.

Copy link
Contributor

@proteanplanet proteanplanet left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In looking through the code, I think this testing would be most versatile if test runs could be automatically generated with necessary output automatically turned on. Adding that functionality here is quite a bit of work and it's also unneeded because of the E3SM-Polar-Developer.sh script. As a result, I think the best approach would be to leave this script as is, and call it from that test script with a command line option that sets up the simulations, then performs the T-test when they are finished.

Approved.

@rljacob rljacob added the Testing Anything related to unit/system tests label Oct 9, 2023
Copy link
Contributor

@eclare108213 eclare108213 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have been using these scripts on anvil as part of the icepack merge testing process, slightly modified to work with the directory structure produced by the current E3SM_Polar_Developer.sh script. This quality control testing functionality is extremely useful. Future improvements could include more automation, but the current implementation works.

jonbob added a commit that referenced this pull request Oct 12, 2023
Add CICE-QC testing script

Adds a script to perform "CICE-QC" test, which determines if non-BFB
changes in the sea ice model are climate-changing. This has been adapted
from the CICE implementation for MPAS-Seaice.
Documentation on usage is provided in a README.md alongside test script.

[BFB]
@jonbob
Copy link
Contributor

jonbob commented Oct 12, 2023

passes sanity testing, merged to next

@jonbob jonbob merged commit f703513 into E3SM-Project:master Oct 18, 2023
2 checks passed
@jonbob
Copy link
Contributor

jonbob commented Oct 18, 2023

merged to master

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
BFB PR leaves answers BFB mpas-seaice Testing Anything related to unit/system tests
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants