[Dart-dev] DART/branches Revision: 12566

dart at ucar.edu dart at ucar.edu
Thu Apr 26 16:31:28 MDT 2018


nancy at ucar.edu
2018-04-26 16:31:28 -0600 (Thu, 26 Apr 2018)
707
add comments to the gps forward operator and converter files
to remind us that the local gps forward operator doesn't need the
6 items of metadata that the non-local one does.  we could save
memory and file space if we redefined the local and nonlocal gps obs
to be different types.  (comments only, no code changes).

minor non-results-changing update to text_to_obs.f90 converter:
one of the compilers whines about a line that includes: a = b * -1
because there's something unnatural about a star and a minus next to
each other.  changed to:  a = b * (-1) and the minus sign is now
safely quarantined in parens.  

i also had an example input text file with a few more lines 
so i updated that as well.





Modified: DART/branches/rma_trunk/observations/forward_operators/obs_def_gps_mod.f90
===================================================================
--- DART/branches/rma_trunk/observations/forward_operators/obs_def_gps_mod.f90	2018-04-26 22:18:45 UTC (rev 12565)
+++ DART/branches/rma_trunk/observations/forward_operators/obs_def_gps_mod.f90	2018-04-26 22:31:28 UTC (rev 12566)
@@ -11,6 +11,11 @@
 ! all gps obs in all input files, which if you are reading multiple obs_seq
 ! files (e.g. for the obs_diag program) might be a larger number than 100K.
 
+!>@todo we should have a local vs nonlocal forward operator for GPS RO,
+!>so we don't have to add the metadata for the local operator.  big space
+!>and time savings.  also, we should add GPSRO_BENDING_ANGLE if someone
+!>can contribute a forward operator for it.
+
 ! BEGIN DART PREPROCESS KIND LIST
 ! TEMPERATURE,             QTY_TEMPERATURE,        COMMON_CODE
 ! SPECIFIC_HUMIDITY,       QTY_SPECIFIC_HUMIDITY,  COMMON_CODE

Modified: DART/branches/rma_trunk/observations/obs_converters/gps/convert_cosmic_gps_cdf.f90
===================================================================
--- DART/branches/rma_trunk/observations/obs_converters/gps/convert_cosmic_gps_cdf.f90	2018-04-26 22:18:45 UTC (rev 12565)
+++ DART/branches/rma_trunk/observations/obs_converters/gps/convert_cosmic_gps_cdf.f90	2018-04-26 22:31:28 UTC (rev 12566)
@@ -4,6 +4,12 @@
 !
 ! $Id$
 
+!>@todo FIXME we need to redefine GPSRO_REFRACTIVITY to be the non-local
+!>operator and define a new obs type that is the local operator.  in that
+!>case we don't need any additional metadata and can save time and space.
+!> (or redefine them both, and make GPSRO_REFRACTIVITY an alias for the
+!> non-local version)
+
 program convert_cosmic_gps_cdf
 
 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
@@ -35,7 +41,7 @@
                                set_obs_def_error_variance, set_obs_def_location,        &
                                set_obs_def_key
 use    obs_def_gps_mod, only : set_gpsro_ref
-use       obs_kind_mod, only : GPSRO_REFRACTIVITY     ! GPSRO_BENDING_ANGLE
+use       obs_kind_mod, only : GPSRO_REFRACTIVITY     ! also GPSRO_BENDING_ANGLE
 use  obs_utilities_mod, only : add_obs_to_seq
 
 use           netcdf
@@ -251,6 +257,10 @@
    call nc_check( nf90_get_var(ncid, varid, refr)    ,'get var   Ref', next_infile)
    call nc_check( nf90_get_att(ncid, varid, '_FillValue', refr_miss) ,'get_att _FillValue Ref', next_infile)
    
+   ! note about bending angle:
+   !  it is currently unused but people are interested in trying to assimilate this 
+   !  instead of refractivity.  i don't think we have a forward operator for it yet.
+
    ! read the bending angle
    call nc_check( nf90_inq_varid(ncid, "Bend_ang", varid) ,'inq varid Bend_ang', next_infile)
    call nc_check( nf90_get_var(ncid, varid, benda)    ,'get var   Bend_ang', next_infile)

Modified: DART/branches/rma_trunk/observations/obs_converters/text/data/text_input_file
===================================================================
--- DART/branches/rma_trunk/observations/obs_converters/text/data/text_input_file	2018-04-26 22:18:45 UTC (rev 12565)
+++ DART/branches/rma_trunk/observations/obs_converters/text/data/text_input_file	2018-04-26 22:31:28 UTC (rev 12566)
@@ -1,2 +1,5 @@
  1 -45 270   10 2008 1 30 12  0 0  273 2
- 2  30 300  998 2008 1 31  6 30 0  10 355 4
+ 2  10   0  998 2008 1 31  6 30 0  50  90 4
+ 2  40  10  998 2008 1 31  6 30 0  50 180 4
+ 2 -40 260  998 2008 1 31  6 30 0  50 270 4
+ 2  60 350  998 2008 1 31  6 30 0  50 360 4

Modified: DART/branches/rma_trunk/observations/obs_converters/text/text_to_obs.f90
===================================================================
--- DART/branches/rma_trunk/observations/obs_converters/text/text_to_obs.f90	2018-04-26 22:18:45 UTC (rev 12565)
+++ DART/branches/rma_trunk/observations/obs_converters/text/text_to_obs.f90	2018-04-26 22:31:28 UTC (rev 12566)
@@ -214,8 +214,8 @@
       ! check your data source; usually wind direction is specified as the 
       ! direction the wind is coming from, increasing degrees going in a 
       ! clockwise circle.  U and V wind components have the opposite sign.
-      uwnd = sin(wdir * DEG2RAD) * wspeed * -1.0_r8
-      vwnd = cos(wdir * DEG2RAD) * wspeed * -1.0_r8
+      uwnd = sin(wdir * DEG2RAD) * wspeed * (-1.0_r8)
+      vwnd = cos(wdir * DEG2RAD) * wspeed * (-1.0_r8)
       uerr = werr
       verr = werr
 


More information about the Dart-dev mailing list