[Dart-dev] [6219] DART/branches/development/observations: Converters contributed by Nick Pedatella for upper atmosphere

nancy at ucar.edu nancy at ucar.edu
Fri May 31 16:55:17 MDT 2013


Revision: 6219
Author:   nancy
Date:     2013-05-31 16:55:16 -0600 (Fri, 31 May 2013)
Log Message:
-----------
Converters contributed by Nick Pedatella for upper atmosphere
observation platforms.

Added Paths:
-----------
    DART/branches/development/observations/AURA/
    DART/branches/development/observations/AURA/convert_all_aura.pro
    DART/branches/development/observations/AURA/convert_aura.f90
    DART/branches/development/observations/AURA/convert_hdf_to_netcdf.pro
    DART/branches/development/observations/AURA/data/
    DART/branches/development/observations/AURA/data/MLS-Aura_L2GP-Temperature_v03-33-c01_2011d244.he5
    DART/branches/development/observations/AURA/work/
    DART/branches/development/observations/AURA/work/input.nml
    DART/branches/development/observations/AURA/work/inputDOY244.nml
    DART/branches/development/observations/AURA/work/mkmf_advance_time
    DART/branches/development/observations/AURA/work/mkmf_convert_aura
    DART/branches/development/observations/AURA/work/mkmf_obs_sequence_tool
    DART/branches/development/observations/AURA/work/mkmf_preprocess
    DART/branches/development/observations/AURA/work/path_names_advance_time
    DART/branches/development/observations/AURA/work/path_names_convert_aura
    DART/branches/development/observations/AURA/work/path_names_obs_sequence_tool
    DART/branches/development/observations/AURA/work/path_names_preprocess
    DART/branches/development/observations/AURA/work/quickbuild.csh
    DART/branches/development/observations/AURA/work/run_sept.csh
    DART/branches/development/observations/SABER/
    DART/branches/development/observations/SABER/convert_saber_cdf.f90
    DART/branches/development/observations/SABER/data/
    DART/branches/development/observations/SABER/data/SABER_Temp_O3_November2008_v1.07.nc
    DART/branches/development/observations/SABER/error_prof.ps
    DART/branches/development/observations/SABER/work/
    DART/branches/development/observations/SABER/work/input.nml
    DART/branches/development/observations/SABER/work/mkmf_advance_time
    DART/branches/development/observations/SABER/work/mkmf_convert_saber_cdf
    DART/branches/development/observations/SABER/work/mkmf_obs_sequence_tool
    DART/branches/development/observations/SABER/work/mkmf_preprocess
    DART/branches/development/observations/SABER/work/path_names_advance_time
    DART/branches/development/observations/SABER/work/path_names_convert_saber_cdf
    DART/branches/development/observations/SABER/work/path_names_obs_sequence_tool
    DART/branches/development/observations/SABER/work/path_names_preprocess
    DART/branches/development/observations/SABER/work/quickbuild.csh

-------------- next part --------------
Added: DART/branches/development/observations/AURA/convert_all_aura.pro
===================================================================
--- DART/branches/development/observations/AURA/convert_all_aura.pro	                        (rev 0)
+++ DART/branches/development/observations/AURA/convert_all_aura.pro	2013-05-31 22:55:16 UTC (rev 6219)
@@ -0,0 +1,126 @@
+; NMP
+; Simple script to convert all Aura data to netcdf using IDL
+; run with @convert_all_aura
+day = '244'
+filename = '/glade/scratch/nickp/aura_data/MLS-Aura_L2GP-Temperature_v03-33-c01_2011d'+day+'.he5'
+outfile = '/glade/scratch/nickp/aura_data/MLS_T_2011-'+day+'.nc'
+convert_hdf_to_netcdf,filename,data,outfile
+
+day = '245'
+filename = '/glade/scratch/nickp/aura_data/MLS-Aura_L2GP-Temperature_v03-33-c01_2011d'+day+'.he5'
+outfile = '/glade/scratch/nickp/aura_data/MLS_T_2011-'+day+'.nc'
+convert_hdf_to_netcdf,filename,data,outfile
+
+day = '246'
+filename = '/glade/scratch/nickp/aura_data/MLS-Aura_L2GP-Temperature_v03-33-c01_2011d'+day+'.he5'
+outfile = '/glade/scratch/nickp/aura_data/MLS_T_2011-'+day+'.nc'
+convert_hdf_to_netcdf,filename,data,outfile
+day = '247'
+filename = '/glade/scratch/nickp/aura_data/MLS-Aura_L2GP-Temperature_v03-33-c01_2011d'+day+'.he5'
+outfile = '/glade/scratch/nickp/aura_data/MLS_T_2011-'+day+'.nc'
+convert_hdf_to_netcdf,filename,data,outfile
+day = '248'
+filename = '/glade/scratch/nickp/aura_data/MLS-Aura_L2GP-Temperature_v03-33-c01_2011d'+day+'.he5'
+outfile = '/glade/scratch/nickp/aura_data/MLS_T_2011-'+day+'.nc'
+convert_hdf_to_netcdf,filename,data,outfile
+day = '249'
+filename = '/glade/scratch/nickp/aura_data/MLS-Aura_L2GP-Temperature_v03-33-c01_2011d'+day+'.he5'
+outfile = '/glade/scratch/nickp/aura_data/MLS_T_2011-'+day+'.nc'
+convert_hdf_to_netcdf,filename,data,outfile
+day = '250'
+filename = '/glade/scratch/nickp/aura_data/MLS-Aura_L2GP-Temperature_v03-33-c01_2011d'+day+'.he5'
+outfile = '/glade/scratch/nickp/aura_data/MLS_T_2011-'+day+'.nc'
+convert_hdf_to_netcdf,filename,data,outfile
+day = '251'
+filename = '/glade/scratch/nickp/aura_data/MLS-Aura_L2GP-Temperature_v03-33-c01_2011d'+day+'.he5'
+outfile = '/glade/scratch/nickp/aura_data/MLS_T_2011-'+day+'.nc'
+convert_hdf_to_netcdf,filename,data,outfile
+day = '252'
+filename = '/glade/scratch/nickp/aura_data/MLS-Aura_L2GP-Temperature_v03-33-c01_2011d'+day+'.he5'
+outfile = '/glade/scratch/nickp/aura_data/MLS_T_2011-'+day+'.nc'
+convert_hdf_to_netcdf,filename,data,outfile
+day = '253'
+filename = '/glade/scratch/nickp/aura_data/MLS-Aura_L2GP-Temperature_v03-33-c01_2011d'+day+'.he5'
+outfile = '/glade/scratch/nickp/aura_data/MLS_T_2011-'+day+'.nc'
+convert_hdf_to_netcdf,filename,data,outfile
+day = '254'
+filename = '/glade/scratch/nickp/aura_data/MLS-Aura_L2GP-Temperature_v03-33-c01_2011d'+day+'.he5'
+outfile = '/glade/scratch/nickp/aura_data/MLS_T_2011-'+day+'.nc'
+convert_hdf_to_netcdf,filename,data,outfile
+day = '255'
+filename = '/glade/scratch/nickp/aura_data/MLS-Aura_L2GP-Temperature_v03-33-c01_2011d'+day+'.he5'
+outfile = '/glade/scratch/nickp/aura_data/MLS_T_2011-'+day+'.nc'
+convert_hdf_to_netcdf,filename,data,outfile
+day = '256'
+filename = '/glade/scratch/nickp/aura_data/MLS-Aura_L2GP-Temperature_v03-33-c01_2011d'+day+'.he5'
+outfile = '/glade/scratch/nickp/aura_data/MLS_T_2011-'+day+'.nc'
+convert_hdf_to_netcdf,filename,data,outfile
+day = '257'
+filename = '/glade/scratch/nickp/aura_data/MLS-Aura_L2GP-Temperature_v03-33-c01_2011d'+day+'.he5'
+outfile = '/glade/scratch/nickp/aura_data/MLS_T_2011-'+day+'.nc'
+convert_hdf_to_netcdf,filename,data,outfile
+day = '258'
+filename = '/glade/scratch/nickp/aura_data/MLS-Aura_L2GP-Temperature_v03-33-c01_2011d'+day+'.he5'
+outfile = '/glade/scratch/nickp/aura_data/MLS_T_2011-'+day+'.nc'
+convert_hdf_to_netcdf,filename,data,outfile
+day = '259'
+filename = '/glade/scratch/nickp/aura_data/MLS-Aura_L2GP-Temperature_v03-33-c01_2011d'+day+'.he5'
+outfile = '/glade/scratch/nickp/aura_data/MLS_T_2011-'+day+'.nc'
+convert_hdf_to_netcdf,filename,data,outfile
+day = '260'
+filename = '/glade/scratch/nickp/aura_data/MLS-Aura_L2GP-Temperature_v03-33-c01_2011d'+day+'.he5'
+outfile = '/glade/scratch/nickp/aura_data/MLS_T_2011-'+day+'.nc'
+convert_hdf_to_netcdf,filename,data,outfile
+day = '261'
+filename = '/glade/scratch/nickp/aura_data/MLS-Aura_L2GP-Temperature_v03-33-c01_2011d'+day+'.he5'
+outfile = '/glade/scratch/nickp/aura_data/MLS_T_2011-'+day+'.nc'
+convert_hdf_to_netcdf,filename,data,outfile
+day = '262'
+filename = '/glade/scratch/nickp/aura_data/MLS-Aura_L2GP-Temperature_v03-33-c01_2011d'+day+'.he5'
+outfile = '/glade/scratch/nickp/aura_data/MLS_T_2011-'+day+'.nc'
+convert_hdf_to_netcdf,filename,data,outfile
+day = '263'
+filename = '/glade/scratch/nickp/aura_data/MLS-Aura_L2GP-Temperature_v03-33-c01_2011d'+day+'.he5'
+outfile = '/glade/scratch/nickp/aura_data/MLS_T_2011-'+day+'.nc'
+convert_hdf_to_netcdf,filename,data,outfile
+day = '264'
+filename = '/glade/scratch/nickp/aura_data/MLS-Aura_L2GP-Temperature_v03-33-c01_2011d'+day+'.he5'
+outfile = '/glade/scratch/nickp/aura_data/MLS_T_2011-'+day+'.nc'
+convert_hdf_to_netcdf,filename,data,outfile
+day = '265'
+filename = '/glade/scratch/nickp/aura_data/MLS-Aura_L2GP-Temperature_v03-33-c01_2011d'+day+'.he5'
+outfile = '/glade/scratch/nickp/aura_data/MLS_T_2011-'+day+'.nc'
+convert_hdf_to_netcdf,filename,data,outfile
+day = '266'
+filename = '/glade/scratch/nickp/aura_data/MLS-Aura_L2GP-Temperature_v03-33-c01_2011d'+day+'.he5'
+outfile = '/glade/scratch/nickp/aura_data/MLS_T_2011-'+day+'.nc'
+convert_hdf_to_netcdf,filename,data,outfile
+day = '267'
+filename = '/glade/scratch/nickp/aura_data/MLS-Aura_L2GP-Temperature_v03-33-c01_2011d'+day+'.he5'
+outfile = '/glade/scratch/nickp/aura_data/MLS_T_2011-'+day+'.nc'
+convert_hdf_to_netcdf,filename,data,outfile
+day = '268'
+filename = '/glade/scratch/nickp/aura_data/MLS-Aura_L2GP-Temperature_v03-33-c01_2011d'+day+'.he5'
+outfile = '/glade/scratch/nickp/aura_data/MLS_T_2011-'+day+'.nc'
+convert_hdf_to_netcdf,filename,data,outfile
+day = '269'
+filename = '/glade/scratch/nickp/aura_data/MLS-Aura_L2GP-Temperature_v03-33-c01_2011d'+day+'.he5'
+outfile = '/glade/scratch/nickp/aura_data/MLS_T_2011-'+day+'.nc'
+convert_hdf_to_netcdf,filename,data,outfile
+day = '270'
+filename = '/glade/scratch/nickp/aura_data/MLS-Aura_L2GP-Temperature_v03-33-c01_2011d'+day+'.he5'
+outfile = '/glade/scratch/nickp/aura_data/MLS_T_2011-'+day+'.nc'
+convert_hdf_to_netcdf,filename,data,outfile
+day = '271'
+filename = '/glade/scratch/nickp/aura_data/MLS-Aura_L2GP-Temperature_v03-33-c01_2011d'+day+'.he5'
+outfile = '/glade/scratch/nickp/aura_data/MLS_T_2011-'+day+'.nc'
+convert_hdf_to_netcdf,filename,data,outfile
+day = '272'
+filename = '/glade/scratch/nickp/aura_data/MLS-Aura_L2GP-Temperature_v03-33-c02_2011d'+day+'.he5'
+outfile = '/glade/scratch/nickp/aura_data/MLS_T_2011-'+day+'.nc'
+convert_hdf_to_netcdf,filename,data,outfile
+day = '273'
+filename = '/glade/scratch/nickp/aura_data/MLS-Aura_L2GP-Temperature_v03-33-c01_2011d'+day+'.he5'
+outfile = '/glade/scratch/nickp/aura_data/MLS_T_2011-'+day+'.nc'
+convert_hdf_to_netcdf,filename,data,outfile
+

Added: DART/branches/development/observations/AURA/convert_aura.f90
===================================================================
--- DART/branches/development/observations/AURA/convert_aura.f90	                        (rev 0)
+++ DART/branches/development/observations/AURA/convert_aura.f90	2013-05-31 22:55:16 UTC (rev 6219)
@@ -0,0 +1,328 @@
+!     Nick Pedatella
+!     Program to convert Aura Temperature data to DART Observation
+!     sequence files. 
+
+program convert_aura
+use        types_mod, only : r8
+use time_manager_mod, only : time_type, set_calendar_type, GREGORIAN, set_time,&
+                             increment_time, get_time, set_date, operator(-),  &
+                             print_date, operator(+)
+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, finalize_utilities, &
+                             timestamp,do_nml_term
+use     location_mod, only : VERTISPRESSURE, set_location ! pressure ccordinates for SABER
+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_kind, &
+                             set_obs_def_error_variance, set_obs_def_location, &
+                             set_obs_def_key
+use obs_utilities_mod, only : create_3d_obs,add_obs_to_seq
+use     obs_kind_mod, only : AURAMLS_TEMPERATURE
+
+use           netcdf
+
+implicit none
+
+! version controlled file description for error handling, do not edit
+character(len=128), parameter :: &
+   source   = "$URL$", &
+   revision = "$Revision$", &
+   revdate  = "$Date$"
+
+integer, parameter :: num_copies = 1,   &   ! number of copies in sequence
+                      num_qc     = 1        ! number of QC entries
+
+! variables
+character (len=130) :: msgstring, next_infile
+character (len=80) :: name
+
+integer :: iyear,iday,imonth,idoy,ihr,imin,isec,nalt,nevent,ialt,ievent, &
+           nfiles,ncid,varid,filenum,io,iunit,obs_num,num_new_obs,k,osec,oday
+logical :: file_exist, first_obs, did_obs, from_list = .false.
+
+real(r8) :: qc,oerr,pres_out
+
+real(r8), allocatable :: lat(:), lon(:), pres(:),temp(:,:),qual(:),conv(:),time(:)
+real(r8), allocatable :: localsolartime(:)
+
+type(obs_def_type)      :: obs_def
+type(obs_sequence_type) :: obs_seq
+type(obs_type)          :: obs, prev_obs
+type(time_type)         :: time_obs, time_anal, prev_time
+
+
+! namelist parameters
+character(len=128) :: aura_netcdf_file     = 'aura_input.nc'
+character(len=128) :: aura_netcdf_filelist = 'aura_input_list'
+character(len=128) :: aura_outfile        = 'obs_seq.aura'
+integer :: aura_yr=2011,aura_doy = 1
+
+namelist /convert_aura_nml/ aura_netcdf_file, aura_netcdf_filelist, &
+                             aura_outfile,aura_yr,aura_doy
+
+! initialize some values
+obs_num = 1
+qc = 1.0_r8
+first_obs = .true.
+call set_calendar_type(GREGORIAN)
+
+!  read the necessary parameters from input.nml
+call initialize_utilities()
+
+call find_namelist_in_file("input.nml", "convert_aura_nml", iunit)
+read(iunit, nml = convert_aura_nml, iostat = io)
+call check_namelist_read(iunit, io, "convert_aura_nml")
+
+! Record the namelist values used for the run 
+if (do_nml_file()) write(nmlfileunit, nml=convert_aura_nml)
+if (do_nml_term()) write(     *     , nml=convert_aura_nml)
+
+! namelist checks for sanity
+
+! cannot have both a single filename and a list; the namelist must
+! shut one off.
+if (aura_netcdf_file /= '' .and. aura_netcdf_filelist /= '') then
+  call error_handler(E_ERR, 'convert_aura_cdf',                     &
+                     'One of aura_netcdf_file or filelist must be NULL', &
+                     source, revision, revdate)
+endif
+if (aura_netcdf_filelist /= '') from_list = .true.
+
+! Define Number of observations:
+if (from_list) then
+  num_new_obs = (400 * 40000) * nfiles
+else
+  num_new_obs = (400 * 40000 )
+endif
+
+! output date
+print *, 'OUTPUTING FOR YR=',aura_yr,'DOY=',aura_doy
+
+!  either read existing obs_seq or create a new one
+call static_init_obs_sequence()
+call init_obs(obs, num_copies, num_qc)
+call init_obs(prev_obs, num_copies, num_qc)
+inquire(file=aura_outfile, exist=file_exist)
+if ( file_exist ) then
+
+   print *, "found existing obs_seq file, overwriting ", trim(aura_outfile)
+  print *, "max entries = ", num_new_obs
+  call init_obs_sequence(obs_seq, num_copies, num_qc, num_new_obs)
+
+  do k = 1, num_copies
+    call set_copy_meta_data(obs_seq, k, 'observation')
+  end do
+  do k = 1, num_qc
+    call set_qc_meta_data(obs_seq, k, 'Data QC')
+  end do
+
+else
+
+  print *, "no existing obs_seq file, creating ", trim(aura_outfile)
+  print *, "max entries = ", num_new_obs
+  call init_obs_sequence(obs_seq, num_copies, num_qc, num_new_obs)
+
+  do k = 1, num_copies
+    call set_copy_meta_data(obs_seq, k, 'observation')
+  end do
+  do k = 1, num_qc
+    call set_qc_meta_data(obs_seq, k, 'Data QC')
+  end do
+
+end if
+
+
+did_obs = .false.
+! main loop that does either a single file or a list of files
+
+filenum = 1
+
+fileloop: do  ! until out of files
+
+   ! get the single name, or the next name from a list
+   if (from_list) then 
+      next_infile = get_next_filename(aura_netcdf_filelist, filenum)
+   else
+      next_infile = aura_netcdf_file
+      if (filenum > 1) next_infile = ''
+   endif
+   if (next_infile == '') exit fileloop
+
+   ! open the file
+   call nc_check( nf90_open(next_infile, nf90_nowrite, ncid), 'file open', next_infile)
+
+   ! get the number of events and altitude:
+   call nc_check( nf90_inq_dimid(ncid,"levels",varid), 'inq dimid altitude')
+   call nc_check( nf90_inquire_dimension(ncid,varid,name,nalt), 'inq dim altitude')
+   
+   call nc_check( nf90_inq_dimid(ncid,"times",varid), 'inq dimid event')
+   call nc_check( nf90_inquire_dimension(ncid,varid,name,nevent), 'inq dim event')
+   print *, 'nalt=',nalt
+   allocate( time(nevent) )
+   allocate( lat(nevent) )
+   allocate( lon(nevent) )
+   allocate( pres(nalt) )
+   allocate( temp(nalt,nevent) )
+   allocate( qual(nevent) )
+   allocate( conv(nevent) )
+   allocate( localsolartime(nevent) )
+
+   ! read in the latitude array
+   call nc_check( nf90_inq_varid(ncid, "Latitude", varid) ,'inq varid Lat')
+   call nc_check( nf90_get_var(ncid, varid, lat)     ,'get var   Lat')
+
+   ! read the longitude array
+   call nc_check( nf90_inq_varid(ncid, "Longitude", varid) ,'inq varid Lon')
+   call nc_check( nf90_get_var(ncid, varid, lon)     ,'get var   Lon')
+
+   ! read the altitude array
+   call nc_check( nf90_inq_varid(ncid, "Pressure", varid) ,'inq varid pressure')
+   call nc_check( nf90_get_var(ncid, varid, pres)        ,'get_var   pressure')
+
+   ! read the temperature
+   call nc_check( nf90_inq_varid(ncid, "Temperature", varid) ,'inq varid ktemp')
+   call nc_check( nf90_get_var(ncid, varid, temp)        ,'get_var   ktemp')
+   
+   ! quality
+   call nc_check( nf90_inq_varid(ncid, "Quality", varid) ,'inq varid quality')
+   call nc_check( nf90_get_var(ncid, varid, qual)        ,'get_var   quality')
+   ! convergence
+   call nc_check( nf90_inq_varid(ncid, "Convergence", varid) ,'inq varid conv')
+   call nc_check( nf90_get_var(ncid, varid, conv)        ,'get_var   conv')
+   ! LST
+   call nc_check( nf90_inq_varid(ncid, "LocalSolarTime", varid) ,'inq varid lst')
+   call nc_check( nf90_get_var(ncid, varid, localsolartime)        ,'get_var   lst')
+
+   ! read the date/time
+   call nc_check( nf90_inq_varid(ncid, "Time", varid) ,'inq varid time')
+   call nc_check( nf90_get_var(ncid, varid, time)        ,'get_var   time')
+   
+   ! finished reading the data 
+   call nc_check( nf90_close(ncid), 'close file')
+
+   ! now loop through each event / altitude and add to obs sequence file
+   do ievent=1,nevent
+
+     do ialt=1,nalt
+
+       !calculate seconds from LST
+       isec = int( (localsolartime(ievent)-(lon(ievent)/15.))/24.*86400. )
+       if (isec.le.0) isec = isec + 86400       
+       if (isec.ge.86400) isec = isec - 86400       
+
+       iyear = aura_yr ! yr & day are inputs
+       idoy = aura_doy 
+       call convert_day(iyear,idoy,imonth,iday)
+
+       if (temp(ialt,ievent).ne.-999. .and. & ! data is missing
+           qual(ievent).ge.0.65 .and. & !specified quality check
+           conv(ievent).le.1.2 .and. & ! specified convergence
+           pres(ialt).ge.0.001 .and. pres(ialt).le.260 .and. & !good altitude range
+           isec .lt.86400 ) then 
+           
+
+         ihr = int( isec / 3600 )
+         imin = int( (isec-ihr*3600) / 60 )
+         isec = int( (isec-ihr*3600)-imin*60 )
+         time_obs = set_date(iyear,imonth,iday,ihr,imin,isec)
+         call get_time(time_obs,osec,oday)
+
+         ! need to set the error (for now just take SABER error):
+         call saber_error(pres(ialt),oerr)
+
+         ! convert pressure from mbar(hPa) -> Pa
+         pres_out = pres(ialt)*100.
+
+         if (lon(ievent).le.0) lon(ievent) = lon(ievent)+360.
+
+         ! now creat the observation:
+         call create_3d_obs(lat(ievent),lon(ievent),pres_out, &
+                            VERTISPRESSURE,temp(ialt,ievent), &
+                          AURAMLS_TEMPERATURE,oerr,oday,osec,qc,obs)
+         call add_obs_to_seq(obs_seq,obs,time_obs,prev_obs,prev_time,first_obs)
+
+         if(.not. did_obs) did_obs = .true.
+       else
+
+       end if
+     end do ! end alt loop
+   end do ! end event loop
+
+   ! clean up and loop if there is another input file
+   deallocate( lat,lon,pres,qual,conv,time,temp)
+ 
+   filenum = filenum + 1
+
+end do fileloop
+
+! done with main loop. if we added any obs to the sequence, write it out:
+if (did_obs) then
+!print *, 'ready to write, nobs = ', get_num_obs(obs_seq)
+   if (get_num_obs(obs_seq) > 0) &
+      call write_obs_seq(obs_seq, aura_outfile)
+
+   ! minor stab at cleanup, in the off chance this will someday get turned
+   ! into a subroutine in a module.  probably not all that needs to be done,
+   ! but a start.
+   call destroy_obs(obs)
+! if obs == prev_obs then you can't delete the same obs twice.
+! buf if they differ, then it's a leak.  for now, don't delete prev
+! since the program is exiting here anyway.
+   !call destroy_obs(prev_obs)
+   if (get_num_obs(obs_seq) > 0) call destroy_obs_sequence(obs_seq)
+endif
+
+! END OF MAIN ROUTINE
+
+contains
+
+subroutine convert_day(iyear,idoy,imonth,iday)
+! NMP - Subroutine to convert from yr,doy to yr,mon,day
+
+
+ integer, intent(in)   :: iyear
+ integer, intent(in)   :: idoy
+ integer, intent(out)  :: imonth
+ integer, intent(out)  :: iday
+
+ integer :: t
+
+ t = 0
+ if(modulo(iyear, 4) == 0) t = 1
+
+ if(modulo(iyear, 400) /= 0 .and. modulo(iyear, 100) == 0) t = 0
+
+ iday = idoy
+ if(idoy > 59+t) iday = iday + 2 - t
+ imonth = ((iday+91)*100)/3055
+ iday = (iday+91) - (imonth*3055)/100
+ imonth = imonth - 2
+
+ if(imonth >= 1 .and. imonth <= 12) return
+ write(unit=*,fmt="(a,i11,a)")  &
+ "$$CALEND: DAY OF THE YEAR INPUT =",idoy," IS OUT OF RANGE."
+ stop
+
+end subroutine
+
+subroutine saber_error(pres,err)
+implicit none
+
+real(r8) :: pres,err
+
+! NMP - simple function to calculate the error based on height
+!  function loosely based on Remsberg et al (2008JGR)
+
+err = 1.6718 + -0.4281*log(pres) + 0.0977*log(pres)**2
+
+end subroutine
+
+
+end program
+


Property changes on: DART/branches/development/observations/AURA/convert_aura.f90
___________________________________________________________________
Added: svn:mime-type
   + text/plain
Added: svn:keywords
   + Date Rev Author HeadURL Id
Added: svn:eol-style
   + native

Added: DART/branches/development/observations/AURA/convert_hdf_to_netcdf.pro
===================================================================
--- DART/branches/development/observations/AURA/convert_hdf_to_netcdf.pro	                        (rev 0)
+++ DART/branches/development/observations/AURA/convert_hdf_to_netcdf.pro	2013-05-31 22:55:16 UTC (rev 6219)
@@ -0,0 +1,219 @@
+; convert_hdf_to_netcdf.pro
+;
+; PURPOSE:
+;   A simple reader for EOS-Aura Microwave Limb Sounder (MLS) Level 2 
+;   Geophysical Product (L2GP version 2).
+;   
+;
+;
+; AUTHOR:
+;   Modified by N Pedatella to output the data into a netcdf file
+;     calling sequence is convert_hdf_to_netcdf, "filename",data,"outputfile"
+;
+;
+;
+;   Young-In Won [04/18/2008]
+;   Goddard Earth Science Data Information Service Center (GES DISC)
+;   NASA/Goddard Space Flight Center
+;   Modified from ReaL2GP_STD.pro (from JPL)
+;
+; CALLING SEQUENCE:
+;   IDL> read_mls_l2.pro, "filename", data
+;    Example, IDL> readl2, "MLS-Aura_L2GP-BrO_v02-21-c01_2006d054.he5", data
+;
+;   IDL> help, data, /struct 		; shows the structure of data
+;   IDL> print, data.ntimes 		; prints total profile number
+;   IDL> print, data.time 		; prints time for each profile (TAI time)
+;   IDL> print, data.nlevels 		; prints number of pressure levels
+;   IDL> print, data.pressure 	; prints pressure level
+;   IDL> print, data.longitude 	; prints longitude of each profile
+;   IDL> print, data.l2gpvalue 	; prints geophysical values for each profile
+;    ... so on
+;
+; REQUIRES:
+;   IDL 6.1 or Greater
+;
+; INPUT PARAMETERS:
+;   filename      - A scalar string that indicates the MLS L2GP file
+;                   to be read (in HDF-EOS 5)
+;   data	  - constructed data to be returned
+;
+; RETURN VALUE:
+;   a data structure contains the following fields:
+;   swathName, number of sample times (nTimes), number of vertical levels (nLevels), 
+;   pressure, latitude, longitude, time, localSolarTime, solarZenithAngle, 
+;   lineOfSightAngle, orbitGeodeticAngle, chunkNumber, l2gpValue, l2gpPrecision, 
+;   status, quality, attributes.  If the any of these values are not found in the
+;   file, they are replaced by a scalar value of the proper datatype.
+;
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+ Pro convert_hdf_to_netcdf, filename, result, outfile
+
+  COMPILE_OPT IDL2
+
+  ;; Open hdf5 file and get fileID
+  fileID = H5F_Open(filename)
+  ;; Retreive the swath name(s). If more than one swath, select which swath to choose
+  groupName = 'HDFEOS/SWATHS'
+  print, groupName
+  noSwaths = H5G_Get_NMembers(fileID, groupName)
+  if (noswaths gt 1) then begin
+  for swathindex=0, noswaths-1 do begin
+  thisName = H5G_Get_Member_Name(fileID, groupName, swathIndex)
+  print,strtrim(swathindex, 2), ') Swath= ', thisname
+  endfor
+  ;read, 'Which swath do you want? ', ans_swath
+ans_swath = 'Temperature'  
+swathname=H5G_Get_Member_Name(fileID, groupName, ans_swath)
+  endif else begin
+  swathname=H5G_Get_Member_Name(fileID, groupName, 0)
+  endelse
+  ;
+  ; Get the geolocation fields info (Time, Latitude, Longitude, Pressure, etc.)
+  ;
+  path2=groupname+'/'+swathname+'/Geolocation Fields'
+  geo_members=H5G_GET_NMEMBERS(fileid,path2)
+  geo=strarr(geo_members)
+  for jj= 0, geo_members-1 do begin
+  geo[jj]=H5G_Get_Member_Name(fileid, path2, jj)
+  endfor
+  
+  ; Reading geolocation Fields
+  path3=groupname+'/'+swathname+'/Geolocation Fields/'+'Time'
+  dsID = H5D_Open(fileid, path3)
+  time = H5D_Read(dsiD)
+  ntimes = N_Elements(time)
+  H5D_Close, dsID
+  path3=groupname+'/'+swathname+'/Geolocation Fields/'+'Latitude'
+  dsID = H5D_Open(fileid, path3)
+  latitude = H5D_Read(dsiD)
+  H5D_Close, dsID
+  path3=groupname+'/'+swathname+'/Geolocation Fields/'+'Longitude'
+  dsID = H5D_Open(fileid, path3)
+  longitude = H5D_Read(dsiD)
+  H5D_Close, dsID
+  
+  ; For some swaths (e.g. O3 column-GEOS5), there is no levels
+  dummy = Where(geo EQ 'Pressure', cnt)
+  IF cnt GT 0 THEN BEGIN
+    path3=groupname+'/'+swathname+'/Geolocation Fields/'+'Pressure'
+    dsID = H5D_Open(fileid, path3)
+    pressure = H5D_Read(dsID)
+    H5D_Close, dsID
+    nLevels = N_Elements(pressure)
+  ENDIF ELSE BEGIN
+    nLevels = 1
+    pressure = [0.0]
+  ENDELSE
+
+  path3=groupname+'/'+swathname+'/Geolocation Fields/'+'LocalSolarTime'
+  dsID = H5D_Open(fileid, path3)
+  localsolartime = H5D_Read(dsiD)
+  H5D_Close, dsID
+  path3=groupname+'/'+swathname+'/Geolocation Fields/'+'SolarZenithAngle'
+  dsID = H5D_Open(fileid, path3)
+  solarzenithangle = H5D_Read(dsiD)
+  H5D_Close, dsID
+  path3=groupname+'/'+swathname+'/Geolocation Fields/'+'LineOfSightAngle'
+  dsID = H5D_Open(fileid, path3)
+  lineofsightangle = H5D_Read(dsiD)
+  H5D_Close, dsID
+  path3=groupname+'/'+swathname+'/Geolocation Fields/'+'OrbitGeodeticAngle'
+  dsID = H5D_Open(fileid, path3)
+  orbitgeodeticangle = H5D_Read(dsiD)
+  H5D_Close, dsID
+  path3=groupname+'/'+swathname+'/Geolocation Fields/'+'ChunkNumber'
+  dsID = H5D_Open(fileid, path3)
+  ChunkNumber = H5D_Read(dsiD)
+  H5D_Close, dsID
+ 
+  ;
+  ; Get the data fields info (L2geophysicla Value, precision, status, quality, convergence)
+  ;
+  path4=groupname+'/'+swathname+'/Data Fields'
+  data_members=H5G_GET_NMEMBERS(fileid,path4)
+  for kk= 0, data_members-1 do begin
+  dat=H5G_Get_Member_Name(fileid, path4, kk)
+  endfor
+  
+  ;Reading data Fields (and attributes for the geophysical value only)
+  atts = ''
+  path3=groupname+'/'+swathname+'/Data Fields/'+'L2gpValue'
+  dsID = H5D_Open(fileid, path3)
+  l2gpvalue = H5D_Read(dsiD)
+    FOR i = 0, H5A_Get_Num_Attrs(dsId) - 1 DO BEGIN
+    attId = H5A_Open_Idx(dsId, i)
+    atts = i EQ 0 ? Create_Struct(H5A_Get_Name(attId), (H5A_Read(attId))[0]) : $
+                    Create_Struct(atts, H5A_Get_Name(attId), (H5A_Read(attId))[0])
+    H5A_Close, attId
+  ENDFOR
+  H5D_Close, dsID
+  
+  path3=groupname+'/'+swathname+'/Data Fields/'+'L2gpPrecision'
+  dsID = H5D_Open(fileid, path3)
+  L2gpPrecision = H5D_Read(dsiD)
+  H5D_Close, dsID
+  
+  path3=groupname+'/'+swathname+'/Data Fields/'+'Status'
+  dsID = H5D_Open(fileid, path3)
+  status = H5D_Read(dsiD)
+  H5D_Close, dsID
+  
+  path3=groupname+'/'+swathname+'/Data Fields/'+'Quality'
+  dsID = H5D_Open(fileid, path3)
+  quality = H5D_Read(dsiD)  
+  nLevels = N_Elements(pressure)
+  H5D_Close, dsID
+  
+  path3=groupname+'/'+swathname+'/Data Fields/'+'Convergence'
+  dsID = H5D_Open(fileid, path3)
+  convergence = H5D_Read(dsiD)  
+  H5D_Close, dsID
+
+  ; Close file
+  H5F_Close, fileID
+
+
+  ; Construct the result
+  result = {swathName:swathName, nTimes:nTimes, nLevels:nLevels, $
+            pressure:pressure,latitude:latitude,longitude:longitude, $       
+            time:time,localSolarTime:localSolarTime, $    
+            solarZenithAngle:solarZenithAngle, $
+            lineOfSightAngle:lineOfSightAngle, $      
+            orbitGeodeticAngle:orbitGeodeticAngle, $    
+            chunkNumber:chunkNumber, $
+            l2gpValue:l2gpValue, $
+            l2gpPrecision:l2gpPrecision, $
+            status:status, $
+            quality:quality, $
+            convergence:convergence, $
+            attributes:atts $
+           }
+
+
+;   NMP - output the data into a netcdf file
+    id = NCDF_CREATE(outfile, /CLOBBER) ; open the netcdf file
+    t_dimid = NCDF_DIMDEF(id,'times',ntimes)
+    l_dimid = NCDF_DIMDEF(id,'levels',nlevels)
+    t_vid = NCDF_VARDEF(id,'Time',[t_dimid],/DOUBLE)
+    l_vid = NCDF_VARDEF(id,'Pressure',l_dimid,/FLOAT)
+    lat_vid = NCDF_VARDEF(id,'Latitude',t_dimid,/FLOAT)
+    lon_vid = NCDF_VARDEF(id,'Longitude',t_dimid,/FLOAT)
+    lst_vid = NCDF_VARDEF(id,'LocalSolarTime',t_dimid,/FLOAT)
+    temp_vid = NCDF_VARDEF(id,'Temperature',[l_dimid,t_dimid],/FLOAT)
+    prec_vid = NCDF_VARDEF(id,'Precision',[l_dimid,t_dimid],/FLOAT)
+    qual_vid = NCDF_VARDEF(id,'Quality',t_dimid,/FLOAT)
+    con_vid = NCDF_VARDEF(id,'Convergence',t_dimid,/FLOAT)
+    NCDF_CONTROL, id, /ENDEF ; TAKE OUT OF DEF MODE
+    NCDF_VARPUT, id,t_vid,time
+    NCDF_VARPUT, id,l_vid,pressure
+    NCDF_VARPUT, id,lat_vid,latitude
+    NCDF_VARPUT, id,lon_vid,longitude
+    NCDF_VARPUT, id,lst_vid,localsolartime
+    NCDF_VARPUT, id,temp_vid,l2gpvalue
+    NCDF_VARPUT, id, prec_vid, l2gpPrecision
+    NCDF_VARPUT, id, qual_vid, quality
+    NCDF_VARPUT, id, con_vid, convergence
+    NCDF_CLOSE, id ;close the file
+
+END

Added: DART/branches/development/observations/AURA/data/MLS-Aura_L2GP-Temperature_v03-33-c01_2011d244.he5
===================================================================
(Binary files differ)


Property changes on: DART/branches/development/observations/AURA/data/MLS-Aura_L2GP-Temperature_v03-33-c01_2011d244.he5
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream

Added: DART/branches/development/observations/AURA/work/input.nml
===================================================================
--- DART/branches/development/observations/AURA/work/input.nml	                        (rev 0)
+++ DART/branches/development/observations/AURA/work/input.nml	2013-05-31 22:55:16 UTC (rev 6219)
@@ -0,0 +1,95 @@
+
+! notes on the gps namelist items:
+!  only one of file or filelist can be specified:
+!   file is a single input source. 
+!   filelist is the name of a text file containing a list of 
+!    filenames, one per line, to convert into a single output file.
+!
+!  local operator is a single tangent-point calculation
+!  non-local operator integrates along the ray-path
+!
+!  obs_levels are specified in kilometers
+!  ray delta-step and top ray height are specified in meters
+!
+!  ray_ds and ray_htop are ignored for local operator.
+!  for the non-local operator, ray_ds is the integration length
+!  of each step along the ray path, starting from the tangent
+!  point and going out in each of the two directions.  
+!  ray_htop is the height at which the integration stops, when
+!  the next end point exceeds this height.
+!
+!  obs_window is obsolete and should be removed from your namelist.
+!  use the obs_sequence_tool to select obs within a particular 
+!  time-window.
+
+&convert_aura_nml
+  aura_netcdf_file = '/glade/scratch/nickp/aura_data/MLS_T_2011-273.nc',
+  aura_netcdf_filelist = '',
+  aura_outfile = '/glade/scratch/nickp/aura_data/daily_obs_seq/obs_seq.auramls_2011273',
+  aura_yr = 2011,
+  aura_doy = 273,
+ /
+
+
+&preprocess_nml
+   input_obs_kind_mod_file = '../../../obs_kind/DEFAULT_obs_kind_mod.F90',
+  output_obs_kind_mod_file = '../../../obs_kind/obs_kind_mod.f90',
+    input_obs_def_mod_file = '../../../obs_def/DEFAULT_obs_def_mod.F90',
+   output_obs_def_mod_file = '../../../obs_def/obs_def_mod.f90',
+  input_files              = '../../../obs_def/obs_def_gps_mod.f90',
+                             '../../../obs_def/obs_def_altimeter_mod.f90',
+                             '../../../obs_def/obs_def_SABER_mod.f90',
+                             '../../../obs_def/obs_def_AURA_mod.f90',
+                             '../../../obs_def/obs_def_reanalysis_bufr_mod.f90'
+   /
+
+&obs_kind_nml
+   assimilate_these_obs_types = 'RADIOSONDE_TEMPERATURE',
+                                'ACARS_TEMPERATURE',
+                                'AIRCRAFT_TEMPERATURE',
+                                'RADIOSONDE_U_WIND_COMPONENT',
+                                'RADIOSONDE_V_WIND_COMPONENT',
+                                'AIRCRAFT_U_WIND_COMPONENT',
+                                'AIRCRAFT_V_WIND_COMPONENT',
+                                'ACARS_U_WIND_COMPONENT',
+                                'ACARS_V_WIND_COMPONENT',
+                                'SAT_U_WIND_COMPONENT',
+                                'SAT_V_WIND_COMPONENT',
+                                'GPSRO_REFRACTIVITY',
+                                'AURAMLS_TEMPERATURE',
+                                'SABER_TEMPERATURE',
+  /
+
+
+&obs_def_gps_nml
+ /
+
+&location_nml
+ /
+
+&utilities_nml
+ module_details = .false.,
+ nmlfilename = 'convert.nml'
+ /
+
+&obs_sequence_nml
+   write_binary_obs_sequence = .false.  /
+
+&obs_sequence_tool_nml
+   num_input_files   = 1,
+   filename_seq      = '../obs_seq2007010106', 
+   filename_out      = 'unused',
+   print_only        = .true.,
+   gregorian_cal     = .true.,
+   first_obs_days    = -1,
+   first_obs_seconds = -1,
+   last_obs_days     = -1,
+   last_obs_seconds  = -1,
+/
+! obs_types =
+! keep_types =
+! min_lat =
+! max_lat =
+! min_lon =
+! max_lon =
+


Property changes on: DART/branches/development/observations/AURA/work/input.nml
___________________________________________________________________
Added: svn:mime-type
   + text/plain
Added: svn:eol-style
   + native

Added: DART/branches/development/observations/AURA/work/inputDOY244.nml
===================================================================
--- DART/branches/development/observations/AURA/work/inputDOY244.nml	                        (rev 0)
+++ DART/branches/development/observations/AURA/work/inputDOY244.nml	2013-05-31 22:55:16 UTC (rev 6219)
@@ -0,0 +1,95 @@
+
+! notes on the gps namelist items:
+!  only one of file or filelist can be specified:
+!   file is a single input source. 
+!   filelist is the name of a text file containing a list of 
+!    filenames, one per line, to convert into a single output file.
+!
+!  local operator is a single tangent-point calculation
+!  non-local operator integrates along the ray-path
+!
+!  obs_levels are specified in kilometers
+!  ray delta-step and top ray height are specified in meters
+!
+!  ray_ds and ray_htop are ignored for local operator.
+!  for the non-local operator, ray_ds is the integration length
+!  of each step along the ray path, starting from the tangent
+!  point and going out in each of the two directions.  
+!  ray_htop is the height at which the integration stops, when
+!  the next end point exceeds this height.
+!
+!  obs_window is obsolete and should be removed from your namelist.
+!  use the obs_sequence_tool to select obs within a particular 
+!  time-window.
+
+&convert_aura_nml
+  aura_netcdf_file = '/glade/scratch/nickp/aura_data/MLS_T_2011-244.nc',
+  aura_netcdf_filelist = '',
+  aura_outfile = '/glade/scratch/nickp/aura_data/daily_obs_seq/obs_seq.auramls_2011244',
+  aura_yr = 2011,
+  aura_doy = 244,
+ /
+
+
+&preprocess_nml
+   input_obs_kind_mod_file = '../../../obs_kind/DEFAULT_obs_kind_mod.F90',
+  output_obs_kind_mod_file = '../../../obs_kind/obs_kind_mod.f90',
+    input_obs_def_mod_file = '../../../obs_def/DEFAULT_obs_def_mod.F90',
+   output_obs_def_mod_file = '../../../obs_def/obs_def_mod.f90',
+  input_files              = '../../../obs_def/obs_def_gps_mod.f90',
+                             '../../../obs_def/obs_def_altimeter_mod.f90',
+                             '../../../obs_def/obs_def_SABER_mod.f90',
+                             '../../../obs_def/obs_def_AURA_mod.f90',
+                             '../../../obs_def/obs_def_reanalysis_bufr_mod.f90'
+   /
+
+&obs_kind_nml
+   assimilate_these_obs_types = 'RADIOSONDE_TEMPERATURE',
+                                'ACARS_TEMPERATURE',
+                                'AIRCRAFT_TEMPERATURE',
+                                'RADIOSONDE_U_WIND_COMPONENT',
+                                'RADIOSONDE_V_WIND_COMPONENT',
+                                'AIRCRAFT_U_WIND_COMPONENT',
+                                'AIRCRAFT_V_WIND_COMPONENT',
+                                'ACARS_U_WIND_COMPONENT',
+                                'ACARS_V_WIND_COMPONENT',
+                                'SAT_U_WIND_COMPONENT',
+                                'SAT_V_WIND_COMPONENT',
+                                'GPSRO_REFRACTIVITY',
+                                'AURAMLS_TEMPERATURE',
+                                'SABER_TEMPERATURE',
+  /
+
+
+&obs_def_gps_nml
+ /
+
+&location_nml
+ /
+
+&utilities_nml
+ module_details = .false.,
+ nmlfilename = 'convert.nml'
+ /
+
+&obs_sequence_nml
+   write_binary_obs_sequence = .false.  /
+
+&obs_sequence_tool_nml
+   num_input_files   = 1,
+   filename_seq      = '../obs_seq2007010106', 
+   filename_out      = 'unused',
+   print_only        = .true.,
+   gregorian_cal     = .true.,
+   first_obs_days    = -1,
+   first_obs_seconds = -1,
+   last_obs_days     = -1,
+   last_obs_seconds  = -1,
+/
+! obs_types =
+! keep_types =
+! min_lat =
+! max_lat =
+! min_lon =
+! max_lon =
+


Property changes on: DART/branches/development/observations/AURA/work/inputDOY244.nml
___________________________________________________________________
Added: svn:mime-type
   + text/plain
Added: svn:eol-style
   + native

Added: DART/branches/development/observations/AURA/work/mkmf_advance_time
===================================================================
--- DART/branches/development/observations/AURA/work/mkmf_advance_time	                        (rev 0)
+++ DART/branches/development/observations/AURA/work/mkmf_advance_time	2013-05-31 22:55:16 UTC (rev 6219)
@@ -0,0 +1,18 @@
+#!/bin/csh
+#
+# DART software - Copyright 2004 - 2011 UCAR. This open source software is
+# provided by UCAR, "as is", without charge, subject to all terms of use at
+# http://www.image.ucar.edu/DAReS/DART/DART_download
+#
+# $Id$
+
+../../../mkmf/mkmf -p advance_time -t ../../../mkmf/mkmf.template -c"-Duse_netCDF" \
+ -a "../../.." path_names_advance_time
+
+exit $status
+
+# <next few lines under version control, do not edit>
+# $URL$
+# $Revision$
+# $Date$
+


Property changes on: DART/branches/development/observations/AURA/work/mkmf_advance_time
___________________________________________________________________
Added: svn:executable
   + *
Added: svn:mime-type
   + text/plain
Added: svn:keywords
   + Date Rev Author HeadURL Id
Added: svn:eol-style
   + native

Added: DART/branches/development/observations/AURA/work/mkmf_convert_aura
===================================================================
--- DART/branches/development/observations/AURA/work/mkmf_convert_aura	                        (rev 0)
+++ DART/branches/development/observations/AURA/work/mkmf_convert_aura	2013-05-31 22:55:16 UTC (rev 6219)
@@ -0,0 +1,18 @@
+#!/bin/csh
+#
+# DART software - Copyright 2004 - 2011 UCAR. This open source software is
+# provided by UCAR, "as is", without charge, subject to all terms of use at
+# http://www.image.ucar.edu/DAReS/DART/DART_download
+#
+# $Id$
+
+../../../mkmf/mkmf -p convert_aura -t ../../../mkmf/mkmf.template -c"-Duse_netCDF" \
+ -a "../../.." path_names_convert_aura
+
+exit $status
+
+# <next few lines under version control, do not edit>
+# $URL$
+# $Revision$
+# $Date$
+


Property changes on: DART/branches/development/observations/AURA/work/mkmf_convert_aura
___________________________________________________________________
Added: svn:executable
   + *
Added: svn:mime-type
   + text/plain
Added: svn:keywords
   + Date Rev Author HeadURL Id
Added: svn:eol-style
   + native

Added: DART/branches/development/observations/AURA/work/mkmf_obs_sequence_tool
===================================================================
--- DART/branches/development/observations/AURA/work/mkmf_obs_sequence_tool	                        (rev 0)
+++ DART/branches/development/observations/AURA/work/mkmf_obs_sequence_tool	2013-05-31 22:55:16 UTC (rev 6219)
@@ -0,0 +1,18 @@
+#!/bin/csh
+#
+# DART software - Copyright 2004 - 2011 UCAR. This open source software is
+# provided by UCAR, "as is", without charge, subject to all terms of use at
+# http://www.image.ucar.edu/DAReS/DART/DART_download
+#
+# $Id$
+
+../../../mkmf/mkmf -p obs_sequence_tool -t ../../../mkmf/mkmf.template -c"-Duse_netCDF" \
+ -a "../../.." path_names_obs_sequence_tool
+
+exit $status
+
+# <next few lines under version control, do not edit>
+# $URL$
+# $Revision$
+# $Date$
+


Property changes on: DART/branches/development/observations/AURA/work/mkmf_obs_sequence_tool
___________________________________________________________________
Added: svn:executable
   + *
Added: svn:mime-type
   + text/plain
Added: svn:keywords
   + Date Rev Author HeadURL Id
Added: svn:eol-style
   + native

Added: DART/branches/development/observations/AURA/work/mkmf_preprocess
===================================================================
--- DART/branches/development/observations/AURA/work/mkmf_preprocess	                        (rev 0)
+++ DART/branches/development/observations/AURA/work/mkmf_preprocess	2013-05-31 22:55:16 UTC (rev 6219)
@@ -0,0 +1,18 @@
+#!/bin/csh
+#
+# DART software - Copyright 2004 - 2011 UCAR. This open source software is
+# provided by UCAR, "as is", without charge, subject to all terms of use at
+# http://www.image.ucar.edu/DAReS/DART/DART_download
+#
+# $Id$
+
+../../../mkmf/mkmf -p preprocess -t ../../../mkmf/mkmf.template -c"-Duse_netCDF" \
+ -a "../../.." path_names_preprocess
+
+exit $status
+
+# <next few lines under version control, do not edit>
+# $URL$
+# $Revision$
+# $Date$
+


Property changes on: DART/branches/development/observations/AURA/work/mkmf_preprocess
___________________________________________________________________
Added: svn:executable
   + *
Added: svn:mime-type
   + text/plain
Added: svn:keywords
   + Date Rev Author HeadURL Id
Added: svn:eol-style
   + native

Added: DART/branches/development/observations/AURA/work/path_names_advance_time
===================================================================
--- DART/branches/development/observations/AURA/work/path_names_advance_time	                        (rev 0)

@@ Diff output truncated at 40000 characters. @@


More information about the Dart-dev mailing list