Scheduled Downtime
On Tuesday 24 October 2023 @ 5pm MT the forums will be in read only mode in preparation for the downtime. On Wednesday 25 October 2023 @ 5am MT, this website will be down for maintenance and expected to return online later in the morning.
Normal Operations
The forums are back online with normal operations. If you notice any issues or errors related to the forums, please reach out to help@ucar.edu

Compatibility of CLM and cime versions

pesieber

Petra Sieber
New Member
Hello,
I am using CTSM coupled to a regional climate model via the OASIS coupler. We are trying to update the model by replacing CLM4.5 by CLM5, but found major changes in the information coming from CLM (e.g. some previously global variables are now local).

Are these changes caused by the change in cime between CLM4.5 and CLM5? The OASIS interface was developed for CLM4.5 (clm4_5_18_r270-652-gc87157a9) with cime5.6.10. Now we want to couple CLM5 (release-clm5.0.35-23-g012cafb9a) where the default cime version is cime5.6.39.

Is CLM5 backward compatible with older cime versions, such that we could use release-clm5.0 with cime5.6.10?
Would this even work with the latest development code, i.e. using the master branch with cime5.6.10?

Thanks,
Petra
 

jedwards

CSEG and Liaisons
Staff member
Hello Petra,

Looking at the original clm tag you are using I see that there are clm5.0 compsets available in that tag. Perhaps the first thing that you should do is see if the new features you want to use are already available in the tag that you have. clm4.5 compsets are also available in more recent ctsm tags including the
latest available tags. I would do an incremental approach to updating - if the ctsm feature you want to use is already available in the tag you are using I would first try to get that compset working in the current tag. If you find that you do need to update to a newer tag then perhaps you should start by updating the tag but continuing to test the clm4.5 compset you are currently using, then once you have that compset working in the newer tag you can try switching to the clm5.0 compset you are interested in using.
 

pesieber

Petra Sieber
New Member
Hi Jim,
thanks for your explanation. In the current coupling, we already use CLM4.5 (the special tag above) with the clm5.0 compset I2000Clm50Sp. However, I assumed the physics would not be the same as in the CLM5 release tag with the equivalent compset I2000Clm50SpGs?

Actually I am not sure how to verify changes in physics and available features. I tried comparing the tags on github (Comparing release-clm5.0.35...clm4_5_18_r270 · ESCOMP/CTSM) and found zero changes, which seems unrealistic. At least there should be bug fixes in the code and I think the code was ported from python2 to python3 between the two tags.

To understand the difference between tags, compsets and physics versions: can later tags introduce changes in the physics (i.e. flux calculations) of an existing compset, e.g. the clm5 one? Also, what does setting "phys=clm5_0" in the CLM configure script do if the version in the compset was different, e.g. I2000Clm45Sp?

Finally, say I would not find all desired features (and bug fixes) in my old CLM4.5 tag. Could it be a solution to switch the cime version as suggested above? Or would we necessarily have to update the coupling interface?

Cheers,
Petra
 

oleson

Keith Oleson
CSEG and Liaisons
Staff member
I see that this has been moved over to the CTSM Forum. It looks like Jim has some good suggestions as to how to move forward.
I'll take a crack at answering some of your questions in your second post, @erik and/or @sacks may have additional input or corrections.
Right, the physics in the CLM5 release tag would not be exactly the same as the CLM5 version in the tag you are using (clm4_5_18_r270). There are likely bug fixes, possible parameter and dataset changes, and updated externals. I believe most of the major science updates for CLM5 were in clm4_5_18_r270 however.
I think you could compare tags if you switched around the tags in your github comparison. I tried that, however, that gives far too many differences to be comprehensible. A way to get a broader picture of this is to look at the ChangeLogs. Begin with clm4_5_18_r270 in clm4_5_ChangeLog and then clm5_0_ChangeLog and release-clm5.0.ChangeLog in sequence.
Yes, later tags can introduce changes in the physics of an existing compset, although for the release-clm5.0 sequence of tags for example, I wouldn't expect these to be climate-changing and some effects are only significant in certain configurations. For example, for the release-clm5.0 sequence I see mostly "similar climate" for the "nature of change" entries
 

pesieber

Petra Sieber
New Member
Thanks Keith, I will look at the ChangeLogs to find out what might be missing in clm4_5_18_r270. Continuing to use this tag is probably a good quick fix for my problem.

In the long run, it would be desirable to be able to couple release-clm5.0 (and possibly the main branch) considering bug fixes, technical and scientific updates. Does anyone know where the changes mentioned above come from (e.g. global vs. local variables provided by CLM)? Is it cime and how about backward compatibility (i.e. using an older cime version with a newer version of CLM)?
 

sacks

Bill Sacks
CSEG and Liaisons
Staff member
Hi Petra,

Can you clarify what you mean by a change from global to local variables? I think a specific example would be most helpful for us to be able to address that question.

In general, only certain cime versions can be used with a given version of CLM, so it generally is not recommended to try to change the cime version. Small changes are often safe, but larger changes often are not backwards compatible.
 
Top