[Dart-dev] DART/branches Revision: 11923

dart at ucar.edu dart at ucar.edu
Wed Aug 30 16:37:32 MDT 2017


thoar at ucar.edu
2017-08-30 16:37:27 -0600 (Wed, 30 Aug 2017)
383
The electron density observations from the CDAAC site are now 
supported and documented. There is a bit of ambiguity as to whether
the COSMIC_ELECTRON_DENSITY quantity should be in the obs_def_gps_mod.f90
or the obs_def_upper_atm_mod.f90 or maybe a new obs_def_CDAAC_mod.f90

I do not have an observation error lookup table, and I should commit
a single profile for people to test.




Modified: DART/branches/rma_trunk/observations/obs_converters/gps/convert_cosmic_ionosphere.f90
===================================================================
--- DART/branches/rma_trunk/observations/obs_converters/gps/convert_cosmic_ionosphere.f90	2017-08-30 17:17:42 UTC (rev 11922)
+++ DART/branches/rma_trunk/observations/obs_converters/gps/convert_cosmic_ionosphere.f90	2017-08-30 22:37:27 UTC (rev 11923)
@@ -2,73 +2,94 @@
 ! by UCAR, "as is", without charge, subject to all terms of use at
 ! http://www.image.ucar.edu/DAReS/DART/DART_download
 !
-! $Id$
+! DART $Id$
 
-!> a version of the netcdf -> dart obs_seq converter for ionosphere profiles
-!> the file type from the CDAAC data site is 'ionPrf'.
+!> An observation sequence converter for ionosphere profiles 
+!> from the CDAAC web site http://cosmic-io.cosmic.ucar.edu/cdaac
+!> The usual mission is 'cosmic2013', the file type is 'ionPrf'.
 !>
-!> i don't know where the obs errors are going to come from. 
+!> The strategy here is to read the raw vertical locations and interpolate
+!> to a fixed set of vertical locations. If there are any 'bad' observations
+!> below the lowest desired level - they are ignored. If there are any 'bad'
+!> observations ABOVE the lowest desired level - the entire profile is IGNORED.
+!>
+!> modified from GPS atmospheric radio/occultation version
+!> which was created June 2008 by Ryan Torn, NCAR/MMM
+!> nsc 11 mar 2016  
+!>
+!> Incorporated multiple methods for setting the observation error variance
+!>   Feb. 2010  I-TE LEE, NCAR/HAO & NCU
+!>             Modify to read the ionPrf data file of COSMIC
+!>             and write the data to the DART format.  
+!>   Oct. 2010  I-TE LEE, NCAR/HAO & NCU
+!>             Remove the code for lower atmospheric observations
+!>   Dec. 2010  I-TE LEE, NCAR/HAO & NCU
+!>             Add new error valur for log scale testing
+!>   Jan. 2011  I-TE LEE, NCAR/HAO & NCU
+!>             Modify for real GOX observations
+!>   Jan. 2011  I-TE LEE, NACR/HAO & NCU
+!>             Add subroutine to calculate the observation variance 
+!> the ancestor of this routine modified the observation time with the desired
+!> analysis time - this is not done - windowing is done in a post-processing step.
+!>
+!> The normal usage pattern is to create a list of input files for all satellite
+!> pairs for a given day and create a SINGLE observation sequence file. That file
+!> can then be post-processed any way you like - but it is a lot more manageable
+!> than reprocessing a thousand (literally) netCDF files.
 
 program convert_cosmic_ionosphere
 
-!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-!
-!   convert_cosmic_ionosphere - program that reads a COSMIC GPS ionosphere
-!                               profile and writes the data to a DART 
-!                               observation sequence file. 
-!
-!     copied from GPS atmospheric radio/occultation version
-!     which was created June 2008 by Ryan Torn, NCAR/MMM
-!     nsc 11 mar 2016  
-!
-!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-
-use          types_mod, only : r8
+use          types_mod, only : r8, MISSING_R8
 use   time_manager_mod, only : time_type, set_calendar_type, GREGORIAN, set_time,&
                                increment_time, get_time, set_date, operator(-),  &
                                print_date
-use      utilities_mod, only : initialize_utilities, find_namelist_in_file,    &
-                               check_namelist_read, nmlfileunit, do_nml_file,   &
-                               get_next_filename, error_handler, E_ERR, E_MSG, &
-                               nc_check, find_textfile_dims, do_nml_term, finalize_utilities
+use      utilities_mod, only : initialize_utilities, find_namelist_in_file,      &
+                               check_namelist_read, nmlfileunit, do_nml_file,    &
+                               get_next_filename, error_handler, E_ERR, E_MSG,   &
+                               nc_check, find_textfile_dims, do_nml_term,        &
+                               to_upper, open_file, finalize_utilities
 use       location_mod, only : VERTISHEIGHT, set_location
-use   obs_sequence_mod, only : obs_sequence_type, obs_type, read_obs_seq,       &
-                               static_init_obs_sequence, init_obs, destroy_obs, &
-                               write_obs_seq, init_obs_sequence, get_num_obs,   &
-                               insert_obs_in_seq, destroy_obs_sequence,         &
-                               set_copy_meta_data, set_qc_meta_data, set_qc,    & 
-                               set_obs_values, set_obs_def, insert_obs_in_seq
-use   obs_def_mod,      only : obs_def_type, set_obs_def_time, set_obs_def_type_of_obs, &
+use   obs_sequence_mod, only : obs_sequence_type, obs_type, read_obs_seq,        &
+                               static_init_obs_sequence, init_obs, destroy_obs,  &
+                               write_obs_seq, init_obs_sequence, get_num_obs,    &
+                               insert_obs_in_seq, destroy_obs_sequence,          &
+                               set_copy_meta_data, set_qc_meta_data, set_qc,     & 
+                               set_obs_values, set_obs_def, insert_obs_in_seq,   &
+                               get_num_copies, get_num_qc
+use        obs_def_mod, only : obs_def_type, set_obs_def_time, set_obs_def_type_of_obs, &
                                set_obs_def_error_variance, set_obs_def_location, &
                                set_obs_def_key
+use  obs_utilities_mod, only : add_obs_to_seq
 use       obs_kind_mod, only : COSMIC_ELECTRON_DENSITY
-use  obs_utilities_mod, only : add_obs_to_seq
 
-use           netcdf
+use netcdf
 
 implicit none


More information about the Dart-dev mailing list