[Dart-dev] DART/branches Revision: 12162

dart at ucar.edu dart at ucar.edu
Fri Dec 1 16:04:58 MST 2017


nancy at ucar.edu
2017-12-01 16:04:58 -0700 (Fri, 01 Dec 2017)
211
update model_mod_check to allow the test grid to
span greenwich for testing.  have mmc print out
where the grid interpolation results are stored
(two files), and add 'write_obs_every_cycle' to
the filter code.




Modified: DART/branches/rma_trunk/CHANGELOG
===================================================================
--- DART/branches/rma_trunk/CHANGELOG	2017-12-01 23:03:00 UTC (rev 12161)
+++ DART/branches/rma_trunk/CHANGELOG	2017-12-01 23:04:58 UTC (rev 12162)
@@ -599,6 +599,20 @@
   and 2013 file formats.
 
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
++ Dec 01 2017 :: ROMS scripting, debugging aids              Revision: 12162  
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+- Added an option to the ROMS model scripting to advance the model ensemble
+members in parallel using a job array.
+
+- Added a debug option to the filter namelist, 'write_obs_every_cycle', 
+to output the full obs_seq.final during each cycle of filter.  
+(Very slow - use only when debugging a filter crash.)
+
+- Allow the test grid in model_mod_check to cross the prime meridian for testing
+longitude interpolation in grids that cross the 360/0 line.
+
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 + MMM DD YYYY :: summary of next changes                    $Revision$
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 

Modified: DART/branches/rma_trunk/assimilation_code/modules/assimilation/filter_mod.dopplerfold.f90
===================================================================
--- DART/branches/rma_trunk/assimilation_code/modules/assimilation/filter_mod.dopplerfold.f90	2017-12-01 23:03:00 UTC (rev 12161)
+++ DART/branches/rma_trunk/assimilation_code/modules/assimilation/filter_mod.dopplerfold.f90	2017-12-01 23:04:58 UTC (rev 12162)
@@ -187,6 +187,7 @@
 logical  :: output_forward_op_errors = .false.
 logical  :: output_timestamps        = .false.
 logical  :: trace_execution          = .false.
+logical  :: write_obs_every_cycle    = .false.  ! debug only
 logical  :: silence                  = .false.
 logical  :: distributed_state = .true. ! Default to do state complete forward operators.
 
@@ -296,6 +297,7 @@
    output_mean,                  &
    output_sd,                    &
    write_all_stages_at_end,      &
+   write_obs_every_cycle,        & 
    allow_missing_clm
 
 ! Are any of the observation types subject to being updated
@@ -1086,6 +1088,16 @@
       endif
    endif
 
+   ! only intended for debugging when cycling inside filter.
+   ! writing the obs_seq file can be slow - but if filter crashes
+   ! you can get partial results by enabling this flag.
+   if (write_obs_every_cycle) then
+      call trace_message('Before writing in-progress output sequence file')
+      ! Only pe 0 outputs the observation space diagnostic file
+      if(my_task_id() == 0) call write_obs_seq(seq, obs_sequence_out_name)
+      call trace_message('After  writing in-progress output sequence file')
+   endif
+
    call trace_message('Near bottom of main loop, cleaning up obs space')
    ! Deallocate storage used for keys for each set
    deallocate(keys)

Modified: DART/branches/rma_trunk/assimilation_code/modules/assimilation/filter_mod.f90
===================================================================
--- DART/branches/rma_trunk/assimilation_code/modules/assimilation/filter_mod.f90	2017-12-01 23:03:00 UTC (rev 12161)
+++ DART/branches/rma_trunk/assimilation_code/modules/assimilation/filter_mod.f90	2017-12-01 23:04:58 UTC (rev 12162)
@@ -187,6 +187,7 @@
 logical  :: output_forward_op_errors = .false.
 logical  :: output_timestamps        = .false.
 logical  :: trace_execution          = .false.
+logical  :: write_obs_every_cycle    = .false.  ! debug only
 logical  :: silence                  = .false.
 logical  :: distributed_state = .true. ! Default to do state complete forward operators.
 
@@ -296,6 +297,7 @@
    output_mean,                  &
    output_sd,                    &
    write_all_stages_at_end,      &
+   write_obs_every_cycle,        & 
    allow_missing_clm
 
 
@@ -1083,6 +1085,16 @@
       endif
    endif
 
+   ! only intended for debugging when cycling inside filter.
+   ! writing the obs_seq file can be slow - but if filter crashes
+   ! you can get partial results by enabling this flag.
+   if (write_obs_every_cycle) then
+      call trace_message('Before writing in-progress output sequence file')
+      ! Only pe 0 outputs the observation space diagnostic file
+      if(my_task_id() == 0) call write_obs_seq(seq, obs_sequence_out_name)
+      call trace_message('After  writing in-progress output sequence file')
+   endif
+
    call trace_message('Near bottom of main loop, cleaning up obs space')
    ! Deallocate storage used for keys for each set
    deallocate(keys)


More information about the Dart-dev mailing list