* Ancillary variable group

Fri, 15 Dec 2017 13:33:10 +0200

author
Iannis <ulalume3@yahoo.com>
date
Fri, 15 Dec 2017 13:33:10 +0200
changeset 113
b5bbfee2a898
parent 112
07bb7a219314
child 114
d11a94f03753

* Ancillary variable group

* Example of analog and photon-counting channel parameters.

atmospheric_lidar/diva.py file | annotate | diff | comparison | revisions
atmospheric_lidar/systems/rali/rali_diva_parameters.yaml file | annotate | diff | comparison | revisions
--- a/atmospheric_lidar/diva.py	Fri Dec 15 12:58:20 2017 +0200
+++ b/atmospheric_lidar/diva.py	Fri Dec 15 13:33:10 2017 +0200
@@ -71,9 +71,30 @@
             altitude.long_name = 'system altitude'
             altitude.units = 'm'
 
+            # Optional ancillary group
+            ancillary = f.createGroup('ancillary')
+            ancillary.featureType = "timeSeries"
+
+            ancillary.createDimension('time', size=None)
+
+            time = ancillary.createVariable('time', datatype='f8', dimensions=('time',))
+            time.long_name = 'time'
+            time.units = 'seconds since 1970-01-01 00:00'
+            time.standard_name = 'time'
+
+            temperature = ancillary.createVariable('air_temperature', datatype='f8', dimensions=('time',))
+            temperature.long_name = 'air temperature at instrument level'
+            temperature.units = 'K'
+            temperature.standard_name = 'air_temperature'
+
+            pressure = ancillary.createVariable('air_pressure', datatype='f8', dimensions=('time',))
+            pressure.long_name = 'air pressure at instrument level'
+            pressure.units = 'hPa'
+            pressure.standard_name = 'air_pressure'
+
+            # Create a separate group for each channel
             for channel_name, channel_parameters in channels.iteritems():
 
-                # Create a separate group for each channel
                 group_name = "channel_{0}".format(channel_name)  # Give channels groups a standard name
                 g = f.createGroup(group_name)
                 g.long_name = channel_parameters['long_name']
--- a/atmospheric_lidar/systems/rali/rali_diva_parameters.yaml	Fri Dec 15 12:58:20 2017 +0200
+++ b/atmospheric_lidar/systems/rali/rali_diva_parameters.yaml	Fri Dec 15 13:33:10 2017 +0200
@@ -15,8 +15,8 @@
   system_altitude: 93.0
 channels:
   01064.o_an:
-    long_name: elastic signal
-    detector_type: APD
+    long_name: total elastic signal at 1064nm
+    detector_type: APD                  # APD or PMT
     detection_mode: analog              # analog or photon-counting
     detector_manufacturer: Hamamatsu    # Optional
     detector_model: ABC                 # Optional
@@ -26,15 +26,32 @@
     pulse_delay: 5000                   # ns
     laser_repetition_rate: 10           # Hz
     signal_units: mV                    # counts or mV
-    emission_wavelength: 1064.01        # nm    
+    emission_wavelength: 1064.17        # nm    
     emission_polarization: linear       # linear, circular, or none
-    filter_cw: 1064.01                  # nm
+    filter_cw: 1064.20                  # nm
     filter_fwhm: 1.                     # nm
     fov: 2.4                            # mrad full angle
     detection_polarization: linear      # linear, circular, or none
     polarizer_angle: 0.                 # polarization angle in case of linear polarization
+  00532.p_ph:
+    long_name: parallel elastic signal at 532nm
+    detector_type: PMT
+    detection_mode: photon-counting     # analog or photon-counting
+    detector_manufacturer: Hamamatsu    # Optional
+    detector_model: ABC                 # Optional
+    daq_manufacturer: Licel             # Optional
+    daq_model: -                        # Optional
+    bin_length: 50                      # ns
+    pulse_delay: 5000                   # ns
+    laser_repetition_rate: 10           # Hz
+    signal_units: counts                # counts or mV
+    emission_wavelength: 532.085        # nm    
+    emission_polarization: linear       # linear, circular, or none
+    filter_cw: 532.0                    # nm
+    filter_fwhm: 0.5                    # nm
+    fov: 2.4                            # mrad full angle
+    detection_polarization: linear      # linear, circular, or none
+    polarizer_angle: 0.                 # polarization angle in case of linear polarization
     dead_time_model: paralyzable        # paralyzable, non-paralyzable, or other
     dead_time: 3.8                      # ns 
-  00532.p_ph:
-    discriminator: 10                   # discriminator level
-       
+     

mercurial