[Dart-dev] [8759] DART/trunk/observations/tpw/convert_tpw.f90: fix the uninitialized time bug.

nancy at ucar.edu nancy at ucar.edu
Wed Oct 7 14:59:41 MDT 2015


Revision: 8759
Author:   nancy
Date:     2015-10-07 14:59:41 -0600 (Wed, 07 Oct 2015)
Log Message:
-----------
fix the uninitialized time bug.  this has just been
fixed in the lanai release code as well.

Modified Paths:
--------------
    DART/trunk/observations/tpw/convert_tpw.f90

-------------- next part --------------
Modified: DART/trunk/observations/tpw/convert_tpw.f90
===================================================================
--- DART/trunk/observations/tpw/convert_tpw.f90	2015-10-07 20:54:41 UTC (rev 8758)
+++ DART/trunk/observations/tpw/convert_tpw.f90	2015-10-07 20:59:41 UTC (rev 8759)
@@ -82,7 +82,7 @@
 type(obs_sequence_type) :: obs_seq
 type(obs_type)          :: obs, prev_obs 
 type(time_type)         :: obs_time, prev_time
-type(time_type)         :: base_time, time_diff
+type(time_type)         :: time_diff
 
 integer  :: ibin, nr, io, obstype
 integer  :: iyear, imonth, iday, ihour, imin
@@ -375,19 +375,22 @@
             lon = tpw_avg%lon / real(num_avg)
             tpw = tpw_avg%tpw_value / real(num_avg)
 
+            ! sec_diff is the total running difference, in seconds, of all
+            ! the obs from the base time.  divide by the obs count to get 
+            ! the average diff from the base time.
             sec_diff = nint(real(sec_diff) / real(num_avg))
             if (sec_diff > 0) then
-               obs_time = increment_time(base_time, sec_diff)
+               obs_time = increment_time(tpw_base%time, sec_diff)
             else if (sec_diff < 0) then
-               obs_time = decrement_time(base_time, sec_diff)
+               obs_time = decrement_time(tpw_base%time, sec_diff)
             else
-               obs_time = base_time
+               obs_time = tpw_base%time
             endif
          else
-            lat = tpw_avg%lat
-            lon = tpw_avg%lon
-            tpw = tpw_avg%tpw_value
-            obs_time = base_time
+            lat = tpw_base%lat
+            lon = tpw_base%lon
+            tpw = tpw_base%tpw_value
+            obs_time = tpw_base%time
          endif
  
          ! at this point longitudes are between 0 and 720; subtract


More information about the Dart-dev mailing list