From 1e2729fd9c7d18ed1ca6dc330a2ac406cac50373 Mon Sep 17 00:00:00 2001 From: Erik Kluzek Date: Mon, 20 Sep 2021 17:43:43 -0600 Subject: [PATCH] Change defaults for use_lch4 and use_nitrif_denitrif to be false if soil_decomp_method is None, and otherwise TRUE which means it will normally be true when FATES is on fixing #1465 --- bld/CLMBuildNamelist.pm | 11 ++++++----- bld/namelist_files/namelist_defaults_ctsm.xml | 11 +++++------ 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/bld/CLMBuildNamelist.pm b/bld/CLMBuildNamelist.pm index 3b169159b8..faeb107e76 100755 --- a/bld/CLMBuildNamelist.pm +++ b/bld/CLMBuildNamelist.pm @@ -870,12 +870,13 @@ sub setup_cmdl_bgc { my $var = "soil_decomp_method"; add_default($opts, $nl_flags->{'inputdata_rootdir'}, $definition, $defaults, $nl, $var, 'phys'=>$nl_flags->{'phys'}, 'use_cn'=>$nl_flags->{'use_cn'}, 'use_fates'=>$nl_flags->{'use_fates'} ); + my $soil_decomp_method = remove_leading_and_trailing_quotes( $nl->get_value( $var ) ); if ( &value_is_true($nl_flags->{'use_cn'}) || &value_is_true($nl_flags->{'use_fates'})) { - if ( remove_leading_and_trailing_quotes( $nl->get_value($var)) eq "None" ) { + if ( $soil_decomp_method eq "None" ) { $log->fatal_error("$var must NOT be None if use_cn or use_fates are on"); } - } elsif ( remove_leading_and_trailing_quotes($nl->get_value($var)) ne "None" ) { + } elsif ( $soil_decomp_method ne "None" ) { $log->fatal_error("$var must be None if use_cn or use_fates are not"); } # @@ -885,13 +886,13 @@ sub setup_cmdl_bgc { my %settings = ( 'bgc_mode'=>$nl_flags->{'bgc_mode'} ); foreach my $var ( @list ) { add_default($opts, $nl_flags->{'inputdata_rootdir'}, $definition, $defaults, $nl, $var, - 'phys'=>$nl_flags->{'phys'}, 'use_cn'=>$nl_flags->{'use_cn'}, 'use_fates'=>$nl_flags->{'use_fates'} ); + 'phys'=>$nl_flags->{'phys'}, 'soil_decomp_method'=>$soil_decomp_method ); $nl_flags->{$var} = $nl->get_value($var); } - if ( remove_leading_and_trailing_quotes( $nl->get_value($var)) eq "None" ) { + if ( $soil_decomp_method eq "None" ) { foreach my $var ( @list ) { if ( &value_is_true($nl_flags->{$var}) ) { - $log->fatal_error("When soil_decomp_method is NONE $var can NOT be TRUE"); + $log->fatal_error("When soil_decomp_method is None $var can NOT be TRUE"); } } } else { diff --git a/bld/namelist_files/namelist_defaults_ctsm.xml b/bld/namelist_files/namelist_defaults_ctsm.xml index 02e6860bc8..af08046656 100644 --- a/bld/namelist_files/namelist_defaults_ctsm.xml +++ b/bld/namelist_files/namelist_defaults_ctsm.xml @@ -2527,15 +2527,14 @@ lnd/clm2/surfdata_map/release-clm5.0.30/surfdata_ne0np4.CONUS.ne30x8_hist_78pfts -.false. -.true. -.false. CENTURYKoven2013 CENTURYKoven2013 None -.false. -.true. -.false. + +.false. +.true. +.false. +.true. 0