-
Notifications
You must be signed in to change notification settings - Fork 38
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
default way of doing long CTSM simulation does not work with CMEPS/CDEPS #97
Comments
We talked about this in our CTSM software meeting. This is a roadblock in moving away from MCT. |
@ekluzek - thanks for pointing out the criticality of this. I'll work with @jedwards4b to come up with a flexible solution. |
@jedwards4b - I think that adding a namelist variable in cdeps for datm that specifies that restarts should not be read would be simple to do and would solve this problem. Lets talk if you have other ideas or concerns. |
What should that variable be called? |
@ekluzek ctsm_spinup_mode sound okay? |
What I am suggesting is that a new datm variable - skip_restart_read - be add. The default value would be .false. |
I like @mvertens name better. It's not intrinsic to the CTSM spinup itself. The thing that I need from DATM is to skip reading restarts. That is something that's sometimes useful to do. It may be in other contexts as well. I think we just need this in the namelist. This is obscure enough that I don't think it needs to be lifted to the XML level. |
@ekluzek - so you would be happy to manually just change this namelist variable in user_nl_datm when you start step2 and then change it back again? This would have to be done manually - but if that's fine its very easy to do this. |
Yes, I think that's fine. But, I'll let @olyson chime in. This is an important thing to have in place, but it's still obscure enough that we don't need a super slick way of doing it. It's required for the first step, but turning it back to false is only needed to save some time on the continue run. So good to do, but not strictly required. |
If it's not too much more work, I would lean toward an xml variable. It's just a bit more awkward to change the user_nl_datm during the run and maybe not as visible and clear as an xml change. Just my opinion, thanks for doing this. |
@olyson - making it an xml variable is very easy. I agree that it will be clearer with that. |
The default way of running a standard CTSM long simulation is the following:
The problem is that for cdeps this is really not a restart and the following error occurs when during the read of the datm restart file at model date 19010101:
ERROR: something is wrong
The traceback is:
This is due the fact that the restart file expects 240 files in each stream (20 years X 12 months), whereas we are now using 1368 files (114 years X 12 months).
The quick solution was to comment out the following line in dshr_mod.F90
!call shr_stream_restIO(pioid, sdat%stream, 'read')
Another longer term solution needs to be implemented. One idea is to introduce a namelist variable that would skip the reading of the datm restart data if it was turned on. In fact - the simplest thing would have been to comment out the restart read in
datm_datamode_clmncep_mod.F90
based on the namelist variable.
At any rate - this needs to be fixed in a general manner as a high priority in order for CTSM to use cmeps/cdeps as their default data model and coupling architecture.
I am labeling this as a bug since this capability does work in mct.
The text was updated successfully, but these errors were encountered: