Skip to content
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

FATES will never start from specified finidat #2856

Closed
mvdebolskiy opened this issue Nov 1, 2024 · 3 comments · Fixed by #2870
Closed

FATES will never start from specified finidat #2856

mvdebolskiy opened this issue Nov 1, 2024 · 3 comments · Fixed by #2870
Assignees
Labels
bug something is working incorrectly FATES A change needed for FATES that doesn't require a FATES API update. science Enhancement to or bug impacting science test: aux_clm Pass aux_clm suite before merging test: fates Pass fates test suite before merging

Comments

@mvdebolskiy
Copy link
Contributor

mvdebolskiy commented Nov 1, 2024

Brief summary of bug

When trying to run I2000Clm60FatesSpCruRsGs specifying finidat=/path/to/finidat.nc.

General bug information

namelist_defaults_overall.xml sets clm_start_type to cold:

<clm_start_type                use_fates=".true.">cold</clm_start_type>

which means that CLMBuildNamelist.pm in any fates run that is not branch or hybrid, you will hit this warning:

  my $var = "finidat";
  my $finidat = $nl->get_value($var);
  $nl_flags->{'excess_ice_on_finidat'} = "unknown";
  if ( $nl_flags->{'clm_start_type'} =~ /cold/ ) {
    if (defined $finidat ) {
      $log->warning("setting $var (either explicitly in your user_nl_clm or by doing a hybrid or branch RUN_TYPE)\n is incomptable with using a cold start" .
              " (by setting CLM_FORCE_COLDSTART=on)." );
      $log->warning("Overridding input $var file with one specifying that this is a cold start from arbitrary initial conditions." );
      my $group = $definition->get_group_name($var);
      $nl->set_variable_value($group, $var, "' '" );
    }
...

That makes it impossible to run not only that compset, but the coupled model with CLM[^_]*FATES ( you want it f.e. when you don't want to spinup the model every time you have added new things to the atmosphere)

CTSM version you are using: [output of git describe]
ctsm5.3.009

Does this bug cause significantly incorrect results in the model's science? [Yes / No]

Yes, if you pass -ignore-warnings to CLMBuildNamelist.pm, you will get acutally coldstart instead of finidat. And you will not see the warning for that, since when -ignore-warnings is not set, you don't see the second warning at all.

Configurations affected: [Fill this in if known.]

Any Fates configuration.

Details of bug

Might be related to NGEET/fates#1234

Important details of your setup / configuration so we can reproduce the bug

finidat='/not/an/empty/string'

Important output or errors that show the problem

[Fill this in with anything relevant that you haven't already noted; if there is nothing to add, delete this section.]

@samsrabin samsrabin added bug something is working incorrectly next this should get some attention in the next week or two. Normally each Thursday SE meeting. science Enhancement to or bug impacting science labels Nov 4, 2024
@samsrabin samsrabin self-assigned this Nov 4, 2024
@samsrabin samsrabin added FATES A change needed for FATES that doesn't require a FATES API update. test: aux_clm Pass aux_clm suite before merging test: fates Pass fates test suite before merging labels Nov 4, 2024
@wwieder wwieder removed the next this should get some attention in the next week or two. Normally each Thursday SE meeting. label Nov 7, 2024
@ekluzek ekluzek added this to the cesm3_0_beta05 milestone Nov 7, 2024
@wwieder
Copy link
Contributor

wwieder commented Nov 7, 2024

This is an issue we need to address. @mvdebolskiy has a few ideas for how this could be done, but needs guidance / suggestions on where to fix this.

@adrifoster noted this is likely related to #2670 (a symptom of the same issue)?

@samsrabin
Copy link
Collaborator

samsrabin commented Nov 7, 2024

@ekluzek @mvdebolskiy Which do y'all prefer for non-FATES cases that are cold start but have finidat specified:

  1. Warn and say that -ignore_warnings will set finidat = ''
  2. Throw an error with no option to override (i.e., require the user to remove the finidat specification)

@mvdebolskiy
Copy link
Contributor Author

2nd option.

samsrabin added a commit to samsrabin/CTSM that referenced this issue Nov 8, 2024
Resolves ESCOMP#2856, where such runs were getting their finidat overwritten with ' '.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug something is working incorrectly FATES A change needed for FATES that doesn't require a FATES API update. science Enhancement to or bug impacting science test: aux_clm Pass aux_clm suite before merging test: fates Pass fates test suite before merging
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

4 participants