ESCOMP / CTSM

Community Terrestrial Systems Model (includes the Community Land Model of CESM)
http://www.cesm.ucar.edu/models/cesm2.0/land/
Other
300 stars 305 forks source link

Update externals to cesm3_0_alpha02a versions #2640

Open ekluzek opened 1 month ago

ekluzek commented 1 month ago

Update externals to those in cesm3_0_alpha02a for: cime, ccs_config, cmeps, share, mizuRoute, and cdeps

Right now this is:

cime6.1.0 ccs_config_cesm1.0.0 share1.1.2 cmeps1.0.2 cdeps1.0.43 cesm-coupling.n02_v2.1.3 (mizuroute)

2590 updates cism, rtm, and mosart in addition to these (and updates cmeps and ccs_config as well). Between the two that should give us submodules for cesm3_0_alpha02a (and cesm3_0_beta02, as the other planned updates are only for CAM and MOM).

This will go on the b4b-dev branch.

ekluzek commented 1 month ago

Part of the reason to do this is because of the problems I saw in #2545. The other is to keep up to date with cesm3_0 submodules in CESM tags

ekluzek commented 1 month ago

Also note that @fischer-ncar found that a new ccs_config is needed for the setup to build, so at least that submodule will change. We'll let him figure this out first.

ekluzek commented 1 month ago

This relates to #2654 another difference in cesm3_0_alpha02a is the removal of MCT and adding in:

libraries/mpi-serial for MPIserial_2.5.0

ekluzek commented 3 weeks ago

I looked into this a bit, but it will take some effort to get the PF unit-testers to work with the removal of esmf_wrf_timemgr in the share code. This will bringing in some of the work that was done in the share code in

https://github.com/ESCOMP/CESM_share/pull/48

esmf_wrf_timemgr will need to be removed from the CMakeLists.txt files for the ones that use it as well as the build for it at the top level. And the FindESMF cmake will need to be pointed to in the share directory, which might also mean that PIO will need to be made as well as it is in share code. We haven't had I/O in our unit tests at all to this point. But, this could be useful for example in @adrifoster functional unit testing that makes plots and needs I/O. For robustness it's good to have unit-tests that don't do I/O, but there are reasons it can be useful (for example it would be good to have unit-testing for the history modules).

Anyway, the main point here is that it will take some work to get this going. We'll probably need some help from Jim on this...

@wwieder @briandobbins