Add 'branch' mode of starting CESM hindcasts to the cam-fv setup script(s)

Open
#315 1 comment 0 reactions 2 assignees View on GitHub

Nobody has claimed this yet.

Assessment

This issue has not been assessed yet.

Description

Discussion Enhancement
Use case

There are times when we want a new assimilation to start exactly as an existing one would have continued;
debugging unexpected behavior, inplementing new algorithms, using a modified obs set, etc.

Is your feature request related to a problem?

The default mode of starting in DART is 'hybrid', which makes it possible to use initial files for CAM,
but restart files for the other components. But this causes CLM to start differently than in the continuing run,
even though it's using a restart file. The differences are large. It turns out that it's possible to start CESM
in the DART context in 'branch' mode, which solves the CLM problem. It may make CAM use its restart file
instead of its initial file, but that seems to make no difference. In any case, the branch case produces
identical results to the continuing case, if everything else is set the same.

Describe your preferred solution

The changes required to set up a case to start in the branch mode are:

  1. in env_run.xml set RUN_TYPE = "branch" (instead of "hybrid").
  2. stage a half dozen more CESM file types in the RUNDIR than is required in hybrid mode. This seems to require a mix of new and old CASE names in the file names.
  3. create rpointer files in the RUNDIR with the correct file names in them.

\2. and 3. should be implemented in the stage_cesm_files script, which is created as a 'here' document in setup_advanced (and setup_hybrid). The main question I have is "Should this be an option in the existing setup_advanced or should there be a script which is dedicated to this option, but shares 99% of it's code
with setup_advanced?". A related question is "Should this be an option in setup_hybrid?", which would
contradict its name. It is a simpler form of setup_advanced to help people get started by using more CESM
defaults than setup_advanced.
The third question is "Is this useful enough to propagate to main, or leave it on the reanalysis branch?"

Describe any alternatives you have considered

Remember this recipe and rehack it each time I need it, or someone requests it.
Aside from inconvenience and unreliability, this leaves CAM+DART in the state of
not being able to reproduce existing experiments without starting at the beginning.

Dominant language
Fortran
Stars
263
Forks
182
Avg merge
11d 12h
Merged PRs (30d)
7

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from NCAR/DART

All issues in NCAR/DART

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.