-
Notifications
You must be signed in to change notification settings - Fork 312
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
Wrapper script for batch running NEON sites, and NEON fixes #1444
Conversation
tools/contrib/neon/neon_runner.py
Outdated
#-- get the environment variable | ||
cesmroot = os.environ.get('CESM_ROOT') | ||
|
||
cesmroot = '/home/negins/ctsm_cime/' | ||
|
||
_LIBDIR = os.path.join(cesmroot,"cime","scripts","Tools") | ||
sys.path.append(_LIBDIR) | ||
_LIBDIR = os.path.join(cesmroot,"cime","scripts","lib") | ||
sys.path.append(_LIBDIR) |
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 like the use of cime case objects here. Thanks for your work on this @negin513 !
Once this is integrated with the other ctsm python modules, you can make use of https://github.com/ESCOMP/CTSM/blob/master/python/ctsm/path_utils.py and/or https://github.com/ESCOMP/CTSM/blob/master/python/ctsm/add_cime_to_path.py to add the cime lib to your path in what I think is a robust way. (I'm open to suggestions if you can see a better way to do this.)
After talking with @jedwards4b and @danicalombardozzi we decided that it's not worth the effort at this time to have the script automatically run AD, postAD, and transient simulations for single point cases. While this functionality is desirable in the long-term for CLM developers, it's not really critical for the NCAR-NEON application that we're focusing on now. |
Standard testing has gone fine, with the exception of this test: ERS_Ly3_P72x2_Vnuopc.f10_f10_mg37.IHistClm50BgcCropG.cheyenne_intel.clm-cropMonthOutput |
@ekluzek I think you are using the wrong externals here |
@ekluzek Erik please update cmeps to cmeps0.13.23. |
…ps as directed by @mvertens and @jedwards4b
OK I updated externals as advised but still had trouble with the above IG test (but now in CISM) until I backed off to cime6.0.4 where testing all worked as expected. |
…s to the README files
…ib directory as they are important supported tools now
…al grids run with batch so they use MPI
…git repositiory if so set the hash to a string saying as such but continue
Description of changes
This is a wrapper script for running CTSM simulation for one or more neon sites using CIME case objects.
Based on @ekluzek and @jedwards4b suggestions, I rewrote the wrapper script in #1426 to use CIME case objects.
This script accomplishes the following:
Downloads and parses neon listing file for the available neon data :
https://neon-ncar.s3.data.neonscience.org/listing.csv
Create a base generic case and clone other cases from this generic base case.
Enable the user to run in AD, Post-AD, and transient mode.
Currently, there is no case dependency or case status check in the code. Which means that the user cannot run Post-AD +AD + transient all at the same time. If we add case dependency, then the code that checks the status of a case (e.g. spinup) every 2 seconds and once it is finished successfully submit the next phase (e.g. transient.)
Externals are also updated to fix some NEON issues.
New tools subdirectory site_and_regional and current scripts for handling single-point moved underneath. Also README files and tools testing changed for this move. Also tools test added for the new wrapper script talked about above. Fix an issue in subset_data.py where it couldn't be run from outside of a git directory because it checks for the git hash.
Changes so that CTSM will write restarts as signaled at end of simulation by the CMEPS mediator.
Specific notes
Contributors other than yourself, if any: @wwieder , @danicalombardozzi , @jedwards4b
CTSM Issues Fixed (include github issue #):
Fixes #1354
Fixes #1454
Fixes #1456
Fixes #1407
Fixes #1446
Fixes #1429
Some work on #1441 to create new tools subdirectory and move some things around as well as updating README files
Are answers expected to change (and if so in what way)? NO
Any User Interface Changes (namelist or namelist defaults changes)? No
This script has the following interface: