[Dart-dev] DART/branches Revision: 12971

dart at ucar.edu dart at ucar.edu
Wed Feb 6 13:54:32 MST 2019


nancy at ucar.edu
2019-02-06 13:54:31 -0700 (Wed, 06 Feb 2019)
200
minor update to add 2 new messages to the log file.

1. if running without posterior, log that with a message.
2. if running with more than 1 task, print out what the
"distributed_state" setting is.




Modified: DART/branches/recam/assimilation_code/modules/assimilation/filter_mod.dopplerfold.f90
===================================================================
--- DART/branches/recam/assimilation_code/modules/assimilation/filter_mod.dopplerfold.f90	2019-02-05 18:42:22 UTC (rev 12970)
+++ DART/branches/recam/assimilation_code/modules/assimilation/filter_mod.dopplerfold.f90	2019-02-06 20:54:31 UTC (rev 12971)
@@ -502,15 +502,17 @@
 
 if(distributed_state) then
    call init_ensemble_manager(state_ens_handle, num_state_ens_copies, model_size)
+   msgstring = 'running with distributed state; model states stay distributed across all tasks for the entire run'
 else
    call init_ensemble_manager(state_ens_handle, num_state_ens_copies, model_size, transpose_type_in = 2)
+   msgstring = 'running without distributed state; model states are gathered by ensemble for forward operators'
 endif
+! don't print if running single task.  transposes don't matter in this case.
+if (task_count() > 1) &
+   call error_handler(E_MSG,'filter_main:', msgstring, source, revision, revdate)
 
 call set_num_extra_copies(state_ens_handle, num_extras)
 
-!>@todo FIXME add a call here to the log to say if we're transposing
-!> or running fully distributed based on 'distributed_state' setting.
-
 call trace_message('After  setting up space for ensembles')
 
 ! Don't currently support number of processes > model_size
@@ -521,6 +523,11 @@
        text2=msgstring)
 endif
 
+if(.not. compute_posterior) then
+   msgstring = 'skipping computation of posterior forward operators'
+   call error_handler(E_MSG,'filter_main:', msgstring, source, revision, revdate)
+endif
+
 ! Set a time type for initial time if namelist inputs are not negative
 call filter_set_initial_time(init_time_days, init_time_seconds, time1, read_time_from_file)
 

Modified: DART/branches/recam/assimilation_code/modules/assimilation/filter_mod.f90
===================================================================
--- DART/branches/recam/assimilation_code/modules/assimilation/filter_mod.f90	2019-02-05 18:42:22 UTC (rev 12970)
+++ DART/branches/recam/assimilation_code/modules/assimilation/filter_mod.f90	2019-02-06 20:54:31 UTC (rev 12971)
@@ -499,15 +499,17 @@
 
 if(distributed_state) then
    call init_ensemble_manager(state_ens_handle, num_state_ens_copies, model_size)
+   msgstring = 'running with distributed state; model states stay distributed across all tasks for the entire run'
 else
    call init_ensemble_manager(state_ens_handle, num_state_ens_copies, model_size, transpose_type_in = 2)
+   msgstring = 'running without distributed state; model states are gathered by ensemble for forward operators'
 endif
+! don't print if running single task.  transposes don't matter in this case.
+if (task_count() > 1) &
+   call error_handler(E_MSG,'filter_main:', msgstring, source, revision, revdate)
 
 call set_num_extra_copies(state_ens_handle, num_extras)
 
-!>@todo FIXME add a call here to the log to say if we're transposing
-!> or running fully distributed based on 'distributed_state' setting.
-
 call trace_message('After  setting up space for ensembles')
 
 ! Don't currently support number of processes > model_size
@@ -518,6 +520,11 @@
        text2=msgstring)
 endif
 
+if(.not. compute_posterior) then
+   msgstring = 'skipping computation of posterior forward operators'
+   call error_handler(E_MSG,'filter_main:', msgstring, source, revision, revdate)
+endif
+
 ! Set a time type for initial time if namelist inputs are not negative
 call filter_set_initial_time(init_time_days, init_time_seconds, time1, read_time_from_file)
 


More information about the Dart-dev mailing list