diff --git a/cime_config/buildnml b/cime_config/buildnml index 8124c59..b8909aa 100755 --- a/cime_config/buildnml +++ b/cime_config/buildnml @@ -40,10 +40,17 @@ def _create_namelists(case, confdir, inst_string, infile, nmlgen, data_list_path #---------------------------------------------------- config = {} config['mosart_mode'] = case.get_value("MOSART_MODE") + config['ignore_warn'] = case.get_value("MOSART_IGNORE_WARNINGS") config['clm_accel'] = case.get_value("CLM_ACCELERATED_SPINUP") + ignore_msg = "\n (Set MOSART_IGNORE_WARNINGS to TRUE with xmlchange in your case to ignore this message and continue anyway)" if ( config['clm_accel'] != "off" ): - config['mosart_mode'] = "NULL" - case.set_value( "MOSART_MODE", config['mosart_mode'] ) + if ( config['mosart_mode'] != "NULL" ): + message = "CLM_ACCELERATED_SPINUP is not off, but MOSART_MODE is not NULL, " + \ + "normally you should switch it off to save computer time" + if ( not config['ignore_warn'] ): + expect(False, message+ignore_msg ) + else: + logger.warning( "WARNING::"+message ) config['mosart_flood_mode'] = case.get_value("MOSART_FLOOD_MODE") config['rof_grid'] = case.get_value("ROF_GRID") diff --git a/cime_config/config_component.xml b/cime_config/config_component.xml index aae8beb..84b4619 100644 --- a/cime_config/config_component.xml +++ b/cime_config/config_component.xml @@ -35,6 +35,15 @@ mode for mosart model, NULL means mosart is turned off + + logical + TRUE,FALSE + FALSE + run_component_mosart + env_run.xml + If warnings in namelist setttings from buildnml should be ignored or not + + char ACTIVE,NULL diff --git a/cime_config/testdefs/testlist_mosart.xml b/cime_config/testdefs/testlist_mosart.xml index d3e235e..973e788 100644 --- a/cime_config/testdefs/testlist_mosart.xml +++ b/cime_config/testdefs/testlist_mosart.xml @@ -47,13 +47,13 @@ - + - + diff --git a/cime_config/testdefs/testmods_dirs/mosart/clmAccelSpinup/shell_commands b/cime_config/testdefs/testmods_dirs/mosart/clmAccelSpinup/shell_commands deleted file mode 100755 index 3dc3446..0000000 --- a/cime_config/testdefs/testmods_dirs/mosart/clmAccelSpinup/shell_commands +++ /dev/null @@ -1 +0,0 @@ -./xmlchange CLM_ACCELERATED_SPINUP=on diff --git a/cime_config/testdefs/testmods_dirs/mosart/clmAccelSpinupIgnoreWarn/shell_commands b/cime_config/testdefs/testmods_dirs/mosart/clmAccelSpinupIgnoreWarn/shell_commands new file mode 100755 index 0000000..da7655c --- /dev/null +++ b/cime_config/testdefs/testmods_dirs/mosart/clmAccelSpinupIgnoreWarn/shell_commands @@ -0,0 +1,2 @@ +./xmlchange CLM_ACCELERATED_SPINUP=on +./xmlchange MOSART_IGNORE_WARNINGS=TRUE diff --git a/docs/ChangeLog b/docs/ChangeLog index 784a429..ab52ebb 100644 --- a/docs/ChangeLog +++ b/docs/ChangeLog @@ -1,3 +1,17 @@ +=============================================================== +Tag name: mosart1_0_45 +Originator(s): erik +Date: Nov 12, 2021 +One-line Summary: Handle CLM_ACCELERATED_SPINUP option differently + +Handle CLM_ACCELERATED_SPINUP option differently so it doesn't change +MOSART_MODE, but dies (unless the new xml variable MOSART_IGNORE_WARNINGS +is set to TRUE). Also only output information about decomposition from all +PE's only if running with DEBUG compiler options set. + +Fixes #48 -- Remove setting of MOSART_MODE from buildnml +Fixes #49 -- Reduce MOSART output to cesm.log + =============================================================== Tag name: mosart1_0_44 Originator(s): erik diff --git a/src/riverroute/RtmMod.F90 b/src/riverroute/RtmMod.F90 index a02a565..14cf0c6 100644 --- a/src/riverroute/RtmMod.F90 +++ b/src/riverroute/RtmMod.F90 @@ -181,7 +181,11 @@ subroutine Rtmini(flood_active) character(len=256):: locfn ! local file name character(len=16384) :: rList ! list of fields for SM multiply integer :: unitn ! unit for namelist file +#ifdef NDEBUG + integer,parameter :: dbug = 0 ! 0 = none, 1=normal, 2=much, 3=max +#else integer,parameter :: dbug = 3 ! 0 = none, 1=normal, 2=much, 3=max +#endif logical :: lexist ! File exists character(len= 7) :: runtyp(4) ! run type integer ,allocatable :: gindex(:) ! global index @@ -1409,7 +1413,6 @@ subroutine Rtmrun(rstwr,nlend,rdate) character(len=256) :: filer ! restart file name integer :: cnt ! counter for gridcells integer :: ier ! error code - integer,parameter :: dbug = 1 ! local debug flag ! parameters used in negative runoff partitioning algorithm real(r8) :: river_volume_minimum ! gridcell area multiplied by average river_depth_minimum [m3]