docs/netcdf_file.rst

changeset 89
8310b682c916
parent 60
f5bf7a56ffd6
child 96
2f5d5e1d416d
equal deleted inserted replaced
88:9391c86dee91 89:8310b682c916
1 .. _netcdf_file: 1 .. _netcdf_file:
2 2
3 The SCC netCDF file format 3 The SCC netCDF file format
4 ========================== 4 ==========================
5 5
6 A more detailed version of this document can be found in this :download:`pdf file <files/NetCDF_input_filev2.0.pdf>`. 6 A more detailed version of this document can be found in this :download:`pdf file <files/NetCDF_input_file_v3.pdf>`.
7 7
8 .. note:: 8 .. note::
9 9
10 You can check the format of the files you create using the linked `script <https://bitbucket.org/iannis_b/scc-netcdf-checker>`_ . 10 You can check the format of the files you create using the linked `script <https://bitbucket.org/iannis_b/scc-netcdf-checker>`_ .
11 11
12 12
13 Rationale 13 Rationale
14 --------- 14 ---------
15 15
16 The Single Calculus Chain (SCC) is composed by two different modules: 16 The Single Calculus Chain (SCC) is composed by three different modules:
17 17
18 - pre-processing module ( scc\_preprocessing) 18 - pre-processing module (*ELPP*)
19 19
20 - optical processing module ( ELDA) 20 - optical processing module (*ELDA*)
21
22 - depolarization calibrator module (*ELDEC*)
21 23
22 To perfom aerosol optical retrievals the SCC needs not only the raw 24 To perfom aerosol optical retrievals the SCC needs not only the raw
23 lidar data but also a certain number of parameters to use in both 25 lidar data but also a certain number of parameters to use in both
24 pre-processing and optical processing stages. The SCC gets these 26 pre-processing and optical processing stages. The SCC gets these
25 parameters looking at two different locations: 27 parameters looking at two different locations:
31 There are some paramenters that can be found only in the input files 33 There are some paramenters that can be found only in the input files
32 (those ones changing from measurement to measurement), others that can 34 (those ones changing from measurement to measurement), others that can
33 be found only in the SCC\_DB and other ones that can be found in both 35 be found only in the SCC\_DB and other ones that can be found in both
34 these locations. In the last case, if a particular parameter is needed, 36 these locations. In the last case, if a particular parameter is needed,
35 the SCC will search first in the input files and then in SCC\_DB. If the 37 the SCC will search first in the input files and then in SCC\_DB. If the
36 parameter is found in the input files the SCC will keep it without 38 parameter is found in the input files, the SCC will keep it without
37 looking into SCC\_DB. 39 looking into SCC\_DB.
38 40
39 The input files have to be submitted to the SCC in NetCDF format. At the 41 The input files have to be submitted to the SCC in NetCDF format. At
40 present the SCC can handle four different types of input files: 42 present the SCC can handle four different types of input files:
41 43
42 1. Raw Lidar Data 44 1. Raw Lidar Data
45
43 2. Sounding Data 46 2. Sounding Data
47
44 3. Overlap 48 3. Overlap
49
45 4. Lidar Ratio 50 4. Lidar Ratio
46 51
47 52 As already mentioned, the *Raw lidar data* file contains not only the
48 As already mentioned, the Raw Lidar Data file contains not only the
49 raw lidar data but also other parameters to use to perform the 53 raw lidar data but also other parameters to use to perform the
50 pre-processing and optical processing. The Sounding Data file 54 pre-processing and optical processing. The *Sounding Data* file contains
51 contains the data coming from a correlative radiosounding and it is used 55 the data coming from a correlative radiosounding and it is used by the
52 by the SCC for molecular density calculation. The Overlap file 56 SCC for molecular density calculation. The *Overlap* file contains the
53 contains the measured overlap function. The Lidar Ratio file contains 57 measured overlap function. The *Lidar Ratio* file contains a lidar ratio
54 a lidar ratio profile to use in elastic backscatter retrievals. The 58 profile to use in elastic backscatter retrievals. The *Raw Lidar Data*
55 Raw Lidar Data file is of course mandatory and the Sounding Data, 59 file is of course mandatory and the *Sounding Data*, *Overlap* and
56 Overlap and Lidar Ratio files are optional. If Sounding Data file 60 *Lidar Ratio* files are optional. If *Sounding Data* file is not
57 is not submitted by the user, the molecular density will be calculated 61 submitted by the user, the molecular density will be calculated by the
58 by the SCC using the “US Standard Atmosphere 1976”. If the Overlap 62 SCC using the "US Standard Atmosphere 1976". If the *Overlap* file is
59 file is not submitted by the user, the SCC will get the full overlap 63 not submitted by the user, the SCC will get the full overlap height from
60 height from SCC\_DB and it will produce optical results starting from 64 SCC\_DB and it will produce optical results starting from this height.
61 this height. If Lidar Ratio file is not submitted by the user, the 65 If *Lidar Ratio* file is not submitted by the user, the SCC will
62 SCC will consider a fixed value for lidar ratio got from SCC\_DB. 66 consider a fixed value for lidar ratio got from SCC\_DB.
63 67
64 The user can decide to submit all these files or any number of them (of 68 The user can decide to submit all these files or any number of them (of
65 course the file Raw Lidar Data is mandatory). For example the user 69 course the file *Raw Lidar Data* is mandatory). For example the user can
66 can submit together with the Raw Lidar Data file only the Sounding 70 submit together with the *Raw Lidar Data* file only the *Sounding Data*
67 Data file or only the Overlap file. 71 file or only the *Overlap* file.
68 72
69 This document provides a detailed explanation about the structure of the 73 This document provides a detailed example about the structure of
70 NetCDF input files to use for SCC data submission. All Earlinet groups 74 the NetCDF input files to use for SCC data submission. All Earlinet
71 should read it carefully because they have to produce such kind of input 75 groups should read it carefully because they have to produce such kind
72 files if they want to use the SCC for their standard lidar retrievals. 76 of input files if they want to use the SCC for their standard lidar
73 Every comments or suggestions regarding this document can be sent to 77 retrievals.
74 Giuseppe D’Amico by e-mail at ``damico@imaa.cnr.it`` 78
75 79 Additionaly, the linked :download:`pdf file <files/NetCDF_input_file_v3.pdf>` contains
76 This document is available for downloading at ``www.earlinetasos.org`` 80 tables with all mandatory and optional variables for the netcdf files
77 81 accepted by the SCC. Table 1 contains a list of dimensions, variables and
78 In table tab:rawdata is reported a list of dimensions, variables and 82 global attributes that can be used in the NetCDF *Raw Lidar Data*
79 global attributes that can be used in the NetCDF Raw Lidar Data input 83 input file. For each of them it is indicated:
80 file. For each of them it is indicated:
81 84
82 - The name. For the multidimensional variables also the corresponding 85 - The name. For the multidimensional variables also the corresponding
83 dimensions are reported 86 dimensions are reported
84 87
85 - A description explaining the meaning 88 - A description explaining the meaning
87 - The type 90 - The type
88 91
89 - If it is mandatory or optional 92 - If it is mandatory or optional
90 93
91 As already mentioned, the SCC can get some parameters looking first in 94 As already mentioned, the SCC can get some parameters looking first in
92 the Raw Lidar Data input file and then into SCC\_DB. This means that 95 the *Raw Lidar Data* input file and then into SCC\_DB. This means that
93 to use the parameters stored in SCC\_DB the optional variables or 96 to use the parameters stored in SCC\_DB the optional variables or
94 optional global attributes must not appear within Raw Lidar Data 97 optional global attributes must not appear within *Raw Lidar Data* file.
95 file. This is the suggested and recommended way to use the SCC. Please 98 This is the suggested and recommended way to use the SCC. Please include
96 include optional parameters in the Raw Lidar Data only as an 99 optional parameters in the *Raw Lidar Data* only as an exception.
97 exception. 100
98 101 Tables 2, 3, and 4 report all the
99 In table tab:sounding, tab:overlap and tab:lr are reported all the 102 information about the structure of *Sounding Data*, *Overlap* and *Lidar
100 information about the structure of Sounding Data, Overlap and 103 Ratio* input files respectively.
101 Lidar Ratio input files respectively. 104
102 105
103 Example 106 Example
104 ------- 107 -------
105 108
106 Let’s now consider an example of Raw Lidar Data input file. Suppose 109 Let's now consider an example of *Raw Lidar Data* input file. Suppose
107 we want to generate NetCDF input file corresponding to a measurement 110 we want to generate NetCDF input file corresponding to a measurement
108 with the following properties: 111 with the following properties:
109 112
110 +----------------------+-------------------------------------------+ 113 +----------------------+-------------------------------------------+
111 | Start Date | :math:`30^{th}` January 2009 | 114 | Start Date | 30\ :sup:`th` January 2009 |
112 +----------------------+-------------------------------------------+ 115 +----------------------+-------------------------------------------+
113 | Start Time UT | 00:00:01 | 116 | Start Time UT | 00:00:01 |
114 +----------------------+-------------------------------------------+ 117 +----------------------+-------------------------------------------+
115 | Stop Time UT | 00:05:01 | 118 | Stop Time UT | 00:05:01 |
116 +----------------------+-------------------------------------------+ 119 +----------------------+-------------------------------------------+
119 | Earlinet call-sign | cc | 122 | Earlinet call-sign | cc |
120 +----------------------+-------------------------------------------+ 123 +----------------------+-------------------------------------------+
121 | Pointing angle | 5 degrees with respect to the zenith | 124 | Pointing angle | 5 degrees with respect to the zenith |
122 +----------------------+-------------------------------------------+ 125 +----------------------+-------------------------------------------+
123 126
127
124 Moreover suppose that this measurement is composed by the following 128 Moreover suppose that this measurement is composed by the following
125 lidar channels: 129 lidar channels:
126 130
127 1. 1064 lidar channel 131 #. 1064 lidar channel
128 132
129 +------------------------------+-------------------------------+ 133 +------------------------------+-------------------------------+
130 | Emission wavelength=1064nm | Detection wavelength=1064nm | 134 | Emission wavelength=1064nm | Detection wavelength=1064nm |
131 +------------------------------+-------------------------------+ 135 +------------------------------+-------------------------------+
132 | Time resolution=30s | Number of laser shots=1500 | 136 | Time resolution=30s | Number of laser shots=1500 |
134 | Number of bins=3000 | Detection mode=analog | 138 | Number of bins=3000 | Detection mode=analog |
135 +------------------------------+-------------------------------+ 139 +------------------------------+-------------------------------+
136 | Range resolution=7.5m | Polarization state=total | 140 | Range resolution=7.5m | Polarization state=total |
137 +------------------------------+-------------------------------+ 141 +------------------------------+-------------------------------+
138 142
139 2. 532 cross lidar channel 143 #. 532 cross lidar channel
140 144
141 +-----------------------------+---------------------------------+ 145 +-----------------------------+------------------------------------------+
142 | Emission wavelength=532nm | Detection wavelength=532nm | 146 | Emission wavelength=532nm | Detection wavelength=532nm |
143 +-----------------------------+---------------------------------+ 147 +-----------------------------+------------------------------------------+
144 | Time resolution=60s | Number of laser shots=3000 | 148 | Time resolution=60s | Number of laser shots=3000 |
145 +-----------------------------+---------------------------------+ 149 +-----------------------------+------------------------------------------+
146 | Number of bins=5000 | Detection mode=photoncounting | 150 | Number of bins=5000 | Detection mode=photoncounting |
147 +-----------------------------+---------------------------------+ 151 +-----------------------------+------------------------------------------+
148 | Range resolution=15m | Polarization state=cross | 152 | Range resolution=15m | Polarization state=cross (transmitted) |
149 +-----------------------------+---------------------------------+ 153 +-----------------------------+------------------------------------------+
150 154
151 3. 532 parallel lidar channel 155 #. 532 parallel lidar channel
152 156
153 +-----------------------------+---------------------------------+ 157 +-----------------------------+-------------------------------------------+
154 | Emission wavelength=532nm | Detection wavelength=532nm | 158 | Emission wavelength=532nm | Detection wavelength=532nm |
155 +-----------------------------+---------------------------------+ 159 +-----------------------------+-------------------------------------------+
156 | Time resolution=60s | Number of laser shots=3000 | 160 | Time resolution=60s | Number of laser shots=3000 |
157 +-----------------------------+---------------------------------+ 161 +-----------------------------+-------------------------------------------+
158 | Number of bins=5000 | Detection mode=photoncounting | 162 | Number of bins=5000 | Detection mode=photoncounting |
159 +-----------------------------+---------------------------------+ 163 +-----------------------------+-------------------------------------------+
160 | Range resolution=15m | Polarization state=parallel | 164 | Range resolution=15m | Polarization state=parallel (reflected) |
161 +-----------------------------+---------------------------------+ 165 +-----------------------------+-------------------------------------------+
162 166
163 4. 607 :math:`N_2` vibrational Raman channel 167 #. | 607 :math:`N_2` vibrational Raman channel
164 168
165 +-----------------------------+---------------------------------+ 169 +-----------------------------+---------------------------------+
166 | Emission wavelength=532nm | Detection wavelength=607nm | 170 | Emission wavelength=532nm | Detection wavelength=607nm |
167 +-----------------------------+---------------------------------+ 171 +-----------------------------+---------------------------------+
168 | Time resolution=60s | Number of laser shots=3000 | 172 | Time resolution=60s | Number of laser shots=3000 |
169 +-----------------------------+---------------------------------+ 173 +-----------------------------+---------------------------------+
170 | Number of bins=5000 | Detection mode=photoncounting | 174 | Number of bins=5000 | Detection mode=photoncounting |
171 +-----------------------------+---------------------------------+ 175 +-----------------------------+---------------------------------+
172 | Range resolution=15m | 176 | Range resolution=15m | |
173 +-----------------------------+---------------------------------+ 177 +-----------------------------+---------------------------------+
174 178
175 Finally let’s assume we have also performed dark measurements before the 179 Finally let's assume we have also performed dark measurements before the
176 lidar measurements from the 23:50:01 UT up to 23:53:01 UT of 180 lidar measurements from the 23:50:01 UT up to 23:53:01 UT of
177 29:math:`^\mathrmth` January 2009. 181 29\ :sup:`th` January 2009.
182
178 183
179 Dimensions 184 Dimensions
180 ~~~~~~~~~~ 185 ~~~~~~~~~~
181 186
182 Looking at table tab:rawdata we have to fix the following dimensions: 187 Looking at table 1 of the pdf file we have to fix the following dimensions:
183 188
184 :: 189 ::
185 190
186 points 191 points
187 channels 192 channels
189 nb_of_time_scales 194 nb_of_time_scales
190 scan_angles 195 scan_angles
191 time_bck 196 time_bck
192 197
193 The dimension ``time`` is unlimited so we don’t have to fix it. 198 The dimension ``time`` is unlimited so we don’t have to fix it.
194
195 We have 4 lidar channels so: 199 We have 4 lidar channels so:
196 200
197 :: 201 ::
198 202
199 channels=4 203 channels=4
232 236
233 :: 237 ::
234 238
235 time_bck=6 239 time_bck=6
236 240
241
237 Variables 242 Variables
238 ~~~~~~~~~ 243 ~~~~~~~~~
239 244
240 In this section it will be explained how to fill all the possible 245 In this section it will be explained how to fill all the possible
241 variables either mandatory or optional of Raw Lidar Data input file. 246 variables either mandatory or optional of *Raw Lidar Data* input file.
242 247
243 Raw_Data_Start_Time(time, nb_of_time_scales) 248 - | ``Raw_Data_Start_Time(time, nb_of_time_scales)``
244 This 2 dimensional mandatory array has to contain the acquisition 249 | This 2 dimensional mandatory array has to contain the acquisition
245 start time (in seconds from the time given by the global attribute 250 start time (in seconds from the time given by the global attribute
246 ``RawData_Start_Time_UT``) of each lidar profile. In this example we 251 ``RawData_Start_Time_UT``) of each lidar profile. In this example
247 have two different time scales: one is characterized by steps of 30 252 we have two different time scales: one is characterized by steps of
248 seconds (the 1064nm is acquired with this time scale) the other by 253 30 seconds (the 1064nm is acquired with this time scale) the other
249 steps of 60 seconds (532cross, 532parallel and 607nm). Moreover the 254 by steps of 60 seconds (532cross, 532parallel and 607nm). Moreover
250 measurement start time is 00:00:01 UT and the measurement stop time 255 the measurement start time is 00:00:01 UT and the measurement stop
251 is 00:05:01 UT. In this case we have to define: 256 time is 00:05:01 UT. In this case we have to define:
252 257
253 :: 258 ::
254 259
255 Raw_Data_Start_Time = 260 Raw_Data_Start_Time =
256 0, 0, 261 0, 0,
267 The order used to fill this array defines the correspondence between 272 The order used to fill this array defines the correspondence between
268 the different time scales and the time scale index. In this example 273 the different time scales and the time scale index. In this example
269 we have a time scale index of 0 for the time scale with steps of 60 274 we have a time scale index of 0 for the time scale with steps of 60
270 seconds and a time scale index of 1 for the other one. 275 seconds and a time scale index of 1 for the other one.
271 276
272 Raw_Data_Stop_Time(time, nb_of_time_scales) 277 - | ``Raw_Data_Stop_Time(time, nb_of_time_scales)``
273 The same as previous item but for the data acquisition stop time. 278 | The same as previous item but for the data acquisition stop time.
274 Following a similar procedure we have to define: 279 Following a similar procedure we have to define:
275 280
276 :: 281 ::
277 282
278 Raw_Data_Stop_Time = 283 Raw_Data_Stop_Time =
279 60, 30, 284 60, 30,
285 _, 210, 290 _, 210,
286 _, 240, 291 _, 240,
287 _, 270, 292 _, 270,
288 _, 300 ; 293 _, 300 ;
289 294
290 Raw_Lidar_Data(time, channels, points) 295 - | ``Raw_Lidar_Data(time, channels, points)``
291 This 3 dimensional mandatory array has to be filled with the 296 | This 3 dimensional mandatory array has to be filled with the
292 time-series of raw lidar data. The photoncounting profiles have to 297 time-series of raw lidar data. The photoncounting profiles have to
293 submitted in counts (so as integers) while the analog ones in mV. The 298 submitted in counts (so as integers) while the analog ones in mV.
294 order the user chooses to fill this array defines the correspondence 299 The order the user chooses to fill this array defines the
295 between channel index and lidar data. 300 correspondence between channel index and lidar data.
296 301 | For example if we fill this array in such way that:
297 For example if we fill this array in such way that: 302
298 303 +-------------------------------------+---------------------------------------+
299 +-------------------------------------+------------------------------------------------------------+ 304 | ``Raw_Lidar_Data(time,0,points)`` | is the time-series of 1064 nm |
300 | Raw_Lidar_Data(time,0,points | :math:`\rightarrow` is the time-series of 1064 nm | 305 +-------------------------------------+---------------------------------------+
301 +-------------------------------------+------------------------------------------------------------+ 306 | ``Raw_Lidar_Data(time,1,points)`` | is the time-series of 532 cross |
302 | Raw_Lidar_Data(time,1,points | :math:`\rightarrow` is the time-series of 532 cross | 307 +-------------------------------------+---------------------------------------+
303 +-------------------------------------+------------------------------------------------------------+ 308 | ``Raw_Lidar_Data(time,2,points)`` | is the time-series of 532 parallel |
304 | Raw_Lidar_Data(time,2,points | :math:`\rightarrow` is the time-series of 532 parallel | 309 +-------------------------------------+---------------------------------------+
305 +-------------------------------------+------------------------------------------------------------+ 310 | ``Raw_Lidar_Data(time,3,points)`` | is the time-series of 607 nm |
306 | Raw_Lidar_Data(time,3,points | :math:`\rightarrow` is the time-series of 607 nm | 311 +-------------------------------------+---------------------------------------+
307 +-------------------------------------+------------------------------------------------------------+ 312
308 313 |
309 from now on the channel index 0 is associated to the 1064 channel, 314 | from now on the channel index 0 is associated to the 1064 channel,
310 1 to the 532 cross, 2 to the 532 parallel and 3 to the 607nm. 315 1 to the 532 cross, 2 to the 532 parallel and 3 to the 607nm.
311 316
312 Raw_Bck_Start_Time(time_bck, nb_of_time_scales) 317 - | ``Raw_Bck_Start_Time(time_bck, nb_of_time_scales)``
313 This 2 dimensional optional array has to contain the acquisition 318 | This 2 dimensional optional array has to contain the acquisition
314 start time (in seconds from the time given by the global attribute 319 start time (in seconds from the time given by the global attribute
315 ``RawBck_Start_Time_UT``) of each dark measurements profile. 320 ``RawBck_Start_Time_UT``) of each dark measurements profile.
316 Following the same procedure used for the variable 321 Following the same procedure used for the variable
317 ``Raw_Data_Start_Time`` we have to define: 322 ``Raw_Data_Start_Time`` we have to define:
318 323
319 :: 324 ::
320 325
321 Raw_Bck_Start_Time = 326 Raw_Bck_Start_Time =
322 0, 0, 327 0, 0,
324 120, 60, 329 120, 60,
325 _, 90, 330 _, 90,
326 _, 120, 331 _, 120,
327 _, 150; 332 _, 150;
328 333
329 Raw_Bck_Stop_Time(time_bck, nb_of_time_scales) 334 - | ``Raw_Bck_Stop_Time(time_bck, nb_of_time_scales)``
330 The same as previous item but for the dark acquisition stop time. 335 | The same as previous item but for the dark acquisition stop time.
331 Following a similar procedure we have to define: 336 Following a similar procedure we have to define:
332 337
333 :: 338 ::
334 339
335 Raw_Bck_Stop_Time = 340 Raw_Bck_Stop_Time =
336 60, 30, 341 60, 30,
337 120, 60, 342 120, 60,
338 180, 90, 343 180, 90,
339 _, 120, 344 _, 120,
340 _, 150, 345 _, 150,
341 _, 180 ; 346 _, 180 ;
342 347
343 348 - | ``Background_Profile(time_bck, channels, points)``
344 Background_Profile(time_bck, channels, points) 349 | This 3 dimensional optional array has to be filled with the
345 This 3 dimensional optional array has to be filled with the 350 time-series of the dark measurements data. The photoncounting
346 time-series of the dark measurements data. The photoncounting 351 profiles have to submitted in counts (so as integers) while the
347 profiles have to submitted in counts (so as integers) while the 352 analog ones in mV. The user has to fill this array following the
348 analog ones in mV. The user has to fill this array following the same 353 same order used in filling the array ``Raw_Lidar_Data``:
349 order used in filling the array ``Raw_Lidar_Data``: 354
350 355 +---------------------------------------------+-------------------------------------+
351 +---------------------------------------------+----------------------------------------------------------+ 356 | ``Background_Profile(time_bck,0,points)`` | dark time-series at 1064 nm |
352 | Background_Profile(time_bck,0,points | :math:`\rightarrow` dark time-series at 1064 nm | 357 +---------------------------------------------+-------------------------------------+
353 +---------------------------------------------+----------------------------------------------------------+ 358 | ``Background_Profile(time_bck,1,points)`` | dark time-series at 532 cross |
354 | Background_Profile(time_bck,1,points | :math:`\rightarrow` dark time-series at 532 cross | 359 +---------------------------------------------+-------------------------------------+
355 +---------------------------------------------+----------------------------------------------------------+ 360 | ``Background_Profile(time_bck,2,points)`` | dark time-series at 532 parallel |
356 | Background_Profile(time_bck,2,points | :math:`\rightarrow` dark time-series at 532 parallel | 361 +---------------------------------------------+-------------------------------------+
357 +---------------------------------------------+----------------------------------------------------------+ 362 | ``Background_Profile(time_bck,3,points)`` | dark time-series at 607 nm |
358 | Background_Profile(time_bck,3,points | :math:`\rightarrow` dark time-series at 607 nm | 363 +---------------------------------------------+-------------------------------------+
359 +---------------------------------------------+----------------------------------------------------------+ 364
360 365 |
361 366
362 channel_ID(channels) 367 - | ``channel_ID(channels)``
363 This mandatory array provides the link between the channel index 368 | This mandatory array provides the link between the channel index
364 within the Raw Lidar Data input file and the channel ID in 369 within the *Raw Lidar Data* input file and the channel ID in
365 SCC\_DB. To fill this variable the user has to know which channel IDs 370 SCC\_DB. To fill this variable the user has to know which channel
366 in SCC\_DB correspond to his lidar channels. For this purpose the 371 IDs in SCC\_DB correspond to his lidar channels. For this purpose
367 SCC, in its final version will provide to the user a special tool to 372 the SCC, in its final version will provide to the user a special
368 get these channel IDs through a Web interface. At the moment this 373 tool to get these channel IDs through a Web interface. At the
369 interface is not yet available and these channel IDs will be 374 moment this interface is not yet available and these channel IDs
370 communicated directly to the user by the NA5 people. 375 will be communicated directly to the user by the NA5 people.
371 376 | Anyway to continue the example let’s suppose that the four lidar
372 Anyway to continue the example let’s suppose that the four lidar 377 channels taken into account are mapped into SCC\_DB with the
373 channels taken into account are mapped into SCC\_DB with the 378 following channel IDs:
374 following channel IDs: 379
375 380 +----------------+-----------------+
376 +----------------+--------------------------------------+ 381 | 1064 nm | channel ID=7 |
377 | 1064 nm | :math:`\rightarrow` channel ID=7 | 382 +----------------+-----------------+
378 +----------------+--------------------------------------+ 383 | 532 cross | channel ID=5 |
379 | 532 cross | :math:`\rightarrow` channel ID=5 | 384 +----------------+-----------------+
380 +----------------+--------------------------------------+ 385 | 532 parallel | channel ID=6 |
381 | 532 parallel | :math:`\rightarrow` channel ID=6 | 386 +----------------+-----------------+
382 +----------------+--------------------------------------+ 387 | 607 nm | channel ID=8 |
383 | 607 nm | :math:`\rightarrow` channel ID=8 | 388 +----------------+-----------------+
384 +----------------+--------------------------------------+ 389
385 390 |
386 In this case we have to define: 391 | In this case we have to define:
387 392
388 :: 393 ::
389 394
390 channel_ID = 7, 5, 6, 8 ; 395 channel_ID = 7, 5, 6, 8 ;
391 396
392 id_timescale(channels) 397 - | ``id_timescale(channels)``
393 This mandatory array is introduced to determine which time scale is 398 | This mandatory array is introduced to determine which time scale is
394 used for the acquisition of each lidar channel. In particular this 399 used for the acquisition of each lidar channel. In particular this
395 array defines the link between the channel index and the time scale 400 array defines the link between the channel index and the time scale
396 index. In our example we have two different time scales. Filling the 401 index. In our example we have two different time scales. Filling
397 arrays ``Raw_Data_Start_Time`` and ``Raw_Data_Stop_Time`` we have 402 the arrays ``Raw_Data_Start_Time`` and ``Raw_Data_Stop_Time`` we
398 defined a time scale index of 0 for the time scale with steps of 60 403 have defined a time scale index of 0 for the time scale with steps
399 seconds and a time scale index of 1 for the other one with steps of 404 of 60 seconds and a time scale index of 1 for the other one with
400 30 seconds. In this way this array has to be set as: 405 steps of 30 seconds. In this way this array has to be set as:
401 406
402 :: 407 ::
403 408
404 id_timescale = 1, 0, 0, 0 ; 409 id_timescale = 1, 0, 0, 0 ;
405 410
406 Laser_Pointing_Angle(scan_angles 411 - | ``Laser_Pointing_Angle(scan_angles)``
407 This mandatory array contains all the scan angles used in the 412 | This mandatory array contains all the scan angles used in the
408 measurement. In our example we have only one scan angle of 5 degrees 413 measurement. In our example we have only one scan angle of 5
409 with respect to the zenith, so we have to define: 414 degrees with respect to the zenith, so we have to define:
410 415
411 :: 416 ::
412 417
413 Laser_Pointing_Angle = 5 ; 418 Laser_Pointing_Angle = 5 ;
414 419
415 Laser_Pointing_Angle_of_Profiles(time, nb_of_time_scales) 420 - | ``Laser_Pointing_Angle_of_Profiles(time, nb_of_time_scales)``
416 This mandatory array is introduced to determine which scan angle is 421 | This mandatory array is introduced to determine which scan angle is
417 used for the acquisition of each lidar profile. In particular this 422 used for the acquisition of each lidar profile. In particular this
418 array defines the link between the time and time scales indexes and 423 array defines the link between the time and time scales indexes and
419 the scan angle index. In our example we have a single scan angle that 424 the scan angle index. In our example we have a single scan angle
420 has to correspond to the scan angle index 0. So this array has to be 425 that has to correspond to the scan angle index 0. So this array has
421 defined as: 426 to be defined as:
422 427
423 :: 428 ::
424 429
425 Laser_Pointing_Angle_of_Profiles = 430 Laser_Pointing_Angle_of_Profiles =
426 0, 0, 431 0, 0,
432 _, 0, 437 _, 0,
433 _, 0, 438 _, 0,
434 _, 0, 439 _, 0,
435 _, 0 ; 440 _, 0 ;
436 441
437 Laser_Shots(time, channels) 442 - | ``Laser_Shots(time, channels)``
438 This mandatory array stores the laser shots accumulated at each time 443 | This mandatory array stores the laser shots accumulated at each
439 for each channel. In our example the number of laser shots 444 time for each channel. In our example the number of laser shots
440 accumulated is 1500 for the 1064nm channels and 3000 for all the 445 accumulated is 1500 for the 1064nm channels and 3000 for all the
441 other channels. Moreover the laser shots do not change with the time. 446 other channels. Moreover the laser shots do not change with the
442 So we have to define this array as: 447 time. So we have to define this array as:
443 448
444 :: 449 ::
445 450
446 Laser_Shots = 451 Laser_Shots =
447 1500, 3000, 3000, 3000, 452 1500, 3000, 3000, 3000,
453 1500, _, _, _, 458 1500, _, _, _,
454 1500, _, _, _, 459 1500, _, _, _,
455 1500, _, _, _, 460 1500, _, _, _,
456 1500, _, _, _ ; 461 1500, _, _, _ ;
457 462
458 Emitted_Wavelength(channels) 463 - | ``Emitted_Wavelength(channels)``
459 This optional array defines the link between the channel index and 464 | This optional array defines the link between the channel index and
460 the emission wavelength for each lidar channel. The wavelength has to 465 the emission wavelength for each lidar channel. The wavelength has
461 be expressed in nm. This information can be also taken from SCC\_DB. 466 to be expressed in nm. This information can be also taken from
462 In our example we have: 467 SCC\_DB. In our example we have:
463 468
464 :: 469 ::
465 470
466 Emitted_Wavelength = 1064, 532, 532, 532 ; 471 Emitted_Wavelength = 1064, 532, 532, 532 ;
467 472
468 Detected_Wavelength(channels) 473 - | ``Detected_Wavelength(channels)``
469 This optional array defines the link between the channel index and 474 | This optional array defines the link between the channel index and
470 the detected wavelength for each lidar channel. Here detected 475 the detected wavelength for each lidar channel. Here detected
471 wavelength means the value of center of interferential filter 476 wavelength means the value of center of interferential filter
472 expressed in nm. This information can be also taken from SCC\_DB. In 477 expressed in nm. This information can be also taken from SCC\_DB.
473 our example we have: 478 In our example we have:
474 479
475 :: 480 ::
476 481
477 Detected_Wavelength = 1064, 532, 532, 607 ; 482 Detected_Wavelength = 1064, 532, 532, 607 ;
478 483
479 Raw_Data_Range_Resolution(channels) 484 - | ``Raw_Data_Range_Resolution(channels)``
480 This optional array defines the link between the channel index and 485 | This optional array defines the link between the channel index and
481 the raw range resolution for each channel. If the scan angle is 486 the raw range resolution for each channel. If the scan angle is
482 different from zero this quantity is different from the vertical 487 different from zero this quantity is different from the vertical
483 resolution. More precisely if :math:`\alpha` is the scan angle used 488 resolution. More precisely if :math:`\alpha` is the scan angle used
484 and :math:`\Delta z` is the range resolution the vertical 489 and :math:`\Delta z` is the range resolution the vertical
485 resolution is calculated as :math:`\Delta 490 resolution is calculated as :math:`\Delta
486 z'=\Delta z \cos\alpha`. This array has to be filled with 491 z'=\Delta z \cos\alpha`. This array has to be filled with
487 :math:`\Delta z` and not with :math:`\Delta z'`. The unit is 492 :math:`\Delta z` and not with :math:`\Delta z'`. The unit is
488 meters. This information can be also taken from SCC\_DB. In our 493 meters. This information can be also taken from SCC\_DB. In our
489 example we have: 494 example we have:
490 495
491 :: 496 ::
492 497
493 Raw_Data_Range_Resolution = 7.5, 15.0, 15.0, 15.0 ; 498 Raw_Data_Range_Resolution = 7.5, 15.0, 15.0, 15.0 ;
494 499
495 ID_Range(channels) 500 - | ``Scattering_Mechanism(channels)``
496 This optional array defines if a particular channel is configured as 501 | This optional array defines the scattering mechanism involved in
497 high, low or ultranear range channel. In particular a value 0 502 each lidar channel. In particular the following values are adopted:
498 indicates a low range channel, a value 1 a high range channel and a 503
499 value of 2 an ultranear range channel. If for a particular channel 504 +-----+---------------------------------------------------+
500 you don’t separate between high and low range channel, please set the 505 | 0 | Total elastic backscatter |
501 corresponding value to 1. This information can be also taken from 506 +-----+---------------------------------------------------+
502 SCC\_DB. In our case we have to set: 507 | 1 | N\ :math:`_2` vibrational Raman backscatter |
503 508 +-----+---------------------------------------------------+
504 :: 509 | 2 | Cross polarization elastic backscatter |
505 510 +-----+---------------------------------------------------+
506 ID_Range = 1, 1, 1, 1 ; 511 | 3 | Parallel polarization elastic backscatter |
507 512 +-----+---------------------------------------------------+
508 Scattering_Mechanism(channels) 513 | 4 | H\ :math:`_2`\ O vibrational Raman backscatter |
509 This optional array defines the scattering mechanism involved in 514 +-----+---------------------------------------------------+
510 each lidar channel. In particular the following values are adopted: 515 | 5 | Rotational Raman low quantum number |
511 516 +-----+---------------------------------------------------+
512 +------+---------------------------------------------------------------------------------------------+ 517 | 6 | Rotational Raman high quantum number |
513 | 0 | :math:`\rightarrow` Total elastic backscatter | 518 +-----+---------------------------------------------------+
514 +------+---------------------------------------------------------------------------------------------+ 519
515 | 1 | :math:`\rightarrow` :math:`N_2` vibrational Raman backscatter | 520 |
516 +------+---------------------------------------------------------------------------------------------+ 521 | This information can be also taken from SCC\_DB. In our example we
517 | 2 | :math:`\rightarrow` Cross polarization elastic backscatter | 522 have:
518 +------+---------------------------------------------------------------------------------------------+
519 | 3 | :math:`\rightarrow` Parallel polarization elastic backscatter |
520 +------+---------------------------------------------------------------------------------------------+
521 | 4 | :math:`\rightarrow` :math:`H_2O` vibrational Raman backscatter |
522 +------+---------------------------------------------------------------------------------------------+
523 | 5 | :math:`\rightarrow` Rotational Raman Stokes line close to elastic line |
524 +------+---------------------------------------------------------------------------------------------+
525 | 6 | :math:`\rightarrow` Rotational Raman Stokes line far from elastic line |
526 +------+---------------------------------------------------------------------------------------------+
527 | 7 | :math:`\rightarrow` Rotational Raman anti-Stokes line close to elastic line |
528 +------+---------------------------------------------------------------------------------------------+
529 | 8 | :math:`\rightarrow` Rotational Raman anti-Stokes line far from elastic line |
530 +------+---------------------------------------------------------------------------------------------+
531 | 9 | :math:`\rightarrow` Rotational Raman Stokes and anti-Stokes lines close to elastic line |
532 +------+---------------------------------------------------------------------------------------------+
533 | 10 | :math:`\rightarrow` Rotational Raman Stokes and anti-Stokes lines far from elastic line |
534 +------+---------------------------------------------------------------------------------------------+
535
536 This information can be also taken from SCC\_DB. In our example we have:
537 523
538 :: 524 ::
539 525
540 Scattering_Mechanism = 0, 2, 3, 1 ; 526 Scattering_Mechanism = 0, 2, 3, 1 ;
541 527
542 Acquisition_Mode(channels) 528 - | ``Signal_Type(channels)``
543 This optional array defines the acquisition mode (analog or 529 | This optional array defines the type of signal involved in each
544 photoncounting) involved in each lidar channel. In particular a value 530 lidar channel. In particular the following values are adopted:
545 of 0 means analog mode and 1 photoncounting mode. This information 531
546 can be also taken from SCC\_DB. In our example we have: 532 +------+--------------------------------------------------------------+
533 | 0 | Total elastic |
534 +------+--------------------------------------------------------------+
535 | 1 | Total elastic near range |
536 +------+--------------------------------------------------------------+
537 | 2 | Total elastic far range |
538 +------+--------------------------------------------------------------+
539 | 3 | N\ :math:`_2` vibrational Raman |
540 +------+--------------------------------------------------------------+
541 | 4 | N\ :math:`_2` vibrational Raman near range |
542 +------+--------------------------------------------------------------+
543 | 5 | N\ :math:`_2` vibrational Raman far range |
544 +------+--------------------------------------------------------------+
545 | 6 | Elastic polarization reflected |
546 +------+--------------------------------------------------------------+
547 | 7 | Elastic polarization transmitted |
548 +------+--------------------------------------------------------------+
549 | 8 | Rotational Raman line close to elastic line |
550 +------+--------------------------------------------------------------+
551 | 9 | Rotational Raman line far from elastic line |
552 +------+--------------------------------------------------------------+
553 | 10 | Elastic polarization reflected near range |
554 +------+--------------------------------------------------------------+
555 | 11 | Elastic polarization reflected far range |
556 +------+--------------------------------------------------------------+
557 | 12 | Elastic polarization transmitted near range |
558 +------+--------------------------------------------------------------+
559 | 13 | Elastic polarization transmitted far range |
560 +------+--------------------------------------------------------------+
561 | 14 | H\ :math:`_2`\ O vibrational Raman backscatter |
562 +------+--------------------------------------------------------------+
563 | 15 | Rotational Raman line far from elastic line near range |
564 +------+--------------------------------------------------------------+
565 | 16 | Rotational Raman line far from elastic line far range |
566 +------+--------------------------------------------------------------+
567 | 17 | Rotational Raman line close to elastic line near range |
568 +------+--------------------------------------------------------------+
569 | 18 | Rotational Raman line close to elastic line far range |
570 +------+--------------------------------------------------------------+
571 | 19 | H\ :math:`_2`\ O vibrational Raman backscatter near range |
572 +------+--------------------------------------------------------------+
573 | 20 | H\ :math:`_2`\ O vibrational Raman backscatter far range |
574 +------+--------------------------------------------------------------+
575 | 21 | Total elastic ultra near range |
576 +------+--------------------------------------------------------------+
577 | 22 | +45 rotated elastic polarization transmitted |
578 +------+--------------------------------------------------------------+
579 | 23 | +45 rotated elastic polarization reflected |
580 +------+--------------------------------------------------------------+
581 | 24 | -45 rotated elastic polarization transmitted |
582 +------+--------------------------------------------------------------+
583 | 25 | -45 rotated elastic polarization reflected |
584 +------+--------------------------------------------------------------+
585 | 26 | +45 rotated elastic polarization transmitted near range |
586 +------+--------------------------------------------------------------+
587 | 27 | +45 rotated elastic polarization transmitted far range |
588 +------+--------------------------------------------------------------+
589 | 28 | +45 rotated elastic polarization reflected near range |
590 +------+--------------------------------------------------------------+
591 | 29 | +45 rotated elastic polarization reflected far range |
592 +------+--------------------------------------------------------------+
593 | 30 | -45 rotated elastic polarization transmitted near range |
594 +------+--------------------------------------------------------------+
595 | 31 | -45 rotated elastic polarization transmitted far range |
596 +------+--------------------------------------------------------------+
597 | 32 | -45 rotated elastic polarization reflected near range |
598 +------+--------------------------------------------------------------+
599 | 33 | -45 rotated elastic polarization reflected far range |
600 +------+--------------------------------------------------------------+
601
602 |
603 | This information can be also taken from SCC\_DB. In our example we
604 have:
605
606 ::
607
608 Signal_Type = 0, 7, 6, 3 ;
609
610 - | ``Acquisition_Mode(channels)``
611 | This optional array defines the acquisition mode (analog or
612 photoncounting) involved in each lidar channel. In particular a
613 value of 0 means analog mode and 1 photoncounting mode. This
614 information can be also taken from SCC\_DB. In our example we have:
547 615
548 :: 616 ::
549 617
550 Acquisition_Mode = 0, 1, 1, 1 ; 618 Acquisition_Mode = 0, 1, 1, 1 ;
551 619
552 Laser_Repetition_Rate(channels) 620 - | ``Laser_Repetition_Rate(channels)``
553 This optional array defines the repetition rate in Hz used to 621 | This optional array defines the repetition rate in Hz used to
554 acquire each lidar channel. This information can be also taken from 622 acquire each lidar channel. This information can be also taken from
555 SCC\_DB. In our example we are supposing we have only one laser with 623 SCC\_DB. In our example we are supposing we have only one laser
556 a repetition rate of 50 Hz so we have to set: 624 with a repetition rate of 50 Hz so we have to set:
557 625
558 :: 626 ::
559 627
560 Laser_Repetition_Rate = 50, 50, 50, 50 ; 628 Laser_Repetition_Rate = 50, 50, 50, 50 ;
561 629
562 Dead_Time(channels) 630 - | ``Dead_Time(channels)``
563 This optional array defines the dead time in ns associated to each 631 | This optional array defines the dead time in ns associated to each
564 lidar channel. The SCC will use the values given by this array to 632 lidar channel. The SCC will use the values given by this array to
565 correct the photoncounting signals for dead time. Of course for 633 correct the photoncounting signals for dead time. Of course for
566 analog signals no dead time correction will be applied (for analog 634 analog signals no dead time correction will be applied (for analog
567 channels the corresponding dead time values have to be set to 635 channels the corresponding dead time values have to be set to
568 undefined value). This information can be also taken from SCC\_DB. In 636 undefined value). This information can be also taken from SCC\_DB.
569 our example the 1064 nm channel is acquired in analog mode so the 637 In our example the 1064 nm channel is acquired in analog mode so
570 corresponding dead time value has to be undefined. If we suppose a 638 the corresponding dead time value has to be undefined. If we
571 dead time of 10 ns for all other channels we have to set: 639 suppose a dead time of 10 ns for all other channels we have to set:
572 640
573 :: 641 ::
574 642
575 Dead_Time = _, 10, 10, 10 ; 643 Dead_Time = _, 10, 10, 10 ;
576 644
577 Dead_Time_Corr_Type(channels 645 - | ``Dead_Time_Corr_Type(channels)``
578 This optional array defines which kind of dead time correction has 646 | This optional array defines which kind of dead time correction has
579 to be applied on each photoncounting channel. The SCC will correct 647 to be applied on each photoncounting channel. The SCC will correct
580 the data supposing a not-paralyzable channel if a value of 0 is found 648 the data supposing a not-paralyzable channel if a value of 0 is
581 while a paralyzable channel is supposed if a value of 1 is found. Of 649 found while a paralyzable channel is supposed if a value of 1 is
582 course for analog signals no dead time correction will be applied and 650 found. Of course for analog signals no dead time correction will be
583 so the corresponding values have to be set to undefined value. This 651 applied and so the corresponding values have to be set to undefined
584 information can be also taken from SCC\_DB. In our example the 1064 652 value. This information can be also taken from SCC\_DB. In our
585 nm channel is acquired in analog mode so the corresponding has to be 653 example the 1064 nm channel is acquired in analog mode so the
586 undefined. If we want to consider all the photoncounting signals as 654 corresponding has to be undefined. If we want to consider all the
587 not-paralyzable ones: we have to set: 655 photoncounting signals as not-paralyzable ones: we have to set:
588 656
589 :: 657 ::
590 658
591 Dead_Time_Corr_Type = _, 0, 0, 0 ; 659 Dead_Time_Corr_Type = _, 0, 0, 0 ;
592 660
593 Trigger_Delay(channels) 661 - | ``Trigger_Delay(channels)``
594 This optional array defines the delay (in ns) of the middle of the 662 | This optional array defines the delay (in ns) of the middle of the
595 first rangebin with respect to the output laser pulse for each lidar 663 first rangebin with respect to the output laser pulse for each
596 channel. The SCC will use the values given by this array to correct 664 lidar channel. The SCC will use the values given by this array to
597 for trigger delay. This information can be also taken from SCC\_DB. 665 correct for trigger delay. This information can be also taken from
598 Let’s suppose that in our example all the photoncounting channels are 666 SCC\_DB. Let’s suppose that in our example all the photoncounting
599 not affected by this delay and only the analog channel at 1064nm is 667 channels are not affected by this delay and only the analog channel
600 acquired with a delay of 50ns. In this case we have to set: 668 at 1064nm is acquired with a delay of 50ns. In this case we have to
669 set:
601 670
602 :: 671 ::
603 672
604 Trigger_Delay = 50, 0, 0, 0 ; 673 Trigger_Delay = 50, 0, 0, 0 ;
605 674
606 Background_Mode(channels 675 - | ``Background_Mode(channels)``
607 This optional array defines how the atmospheric background has to be 676 | This optional array defines how the atmospheric background has to
608 subtracted from the lidar channel. Two options are available for the 677 be subtracted from the lidar channel. Two options are available for
609 calculation of atmospheric background: 678 the calculation of atmospheric background:
610 679
611 #. Average in the far field of lidar channel. In this case the value 680 #. Average in the far field of lidar channel. In this case the value
612 of this variable has to be 1 681 of this variable has to be 1
613 682
614 #. Average within pre-trigger bins. In this case the value of this 683 #. Average within pre-trigger bins. In this case the value of this
620 689
621 :: 690 ::
622 691
623 Background_Mode = 0, 1, 1, 1 ; 692 Background_Mode = 0, 1, 1, 1 ;
624 693
625 Background_Low(channels) 694 - | ``Background_Low(channels)``
626 This mandatory array defines the minimum altitude (in meters) to 695 | This mandatory array defines the minimum altitude (in meters) to
627 consider in calculating the atmospheric background for each channel. 696 consider in calculating the atmospheric background for each
628 In case pre-trigger mode is used the corresponding value has to be 697 channel. In case pre-trigger mode is used the corresponding value
629 set to the rangebin to be used as lower limit (within pre-trigger 698 has to be set to the rangebin to be used as lower limit (within
630 region) for background calculation. In our example, if we want to 699 pre-trigger region) for background calculation. In our example, if
631 calculate the background between 30000 and 50000 meters for all 700 we want to calculate the background between 30000 and 50000 meters
632 photoncounting channels and we want to use the first 500 pre-trigger 701 for all photoncounting channels and we want to use the first 500
633 bins for the background calculation for the 1064nm channel we have to 702 pre-trigger bins for the background calculation for the 1064nm
634 set: 703 channel we have to set:
635 704
636 :: 705 ::
637 706
638 Background_Low= 0, 30000, 30000, 30000 ; 707 Background_Low= 0, 30000, 30000, 30000 ;
639 708
640 Background_High(channels) 709 - | ``Background_High(channels)``
641 This mandatory array defines the maximum altitude (in meters) to 710 | This mandatory array defines the maximum altitude (in meters) to
642 consider in calculating the atmospheric background for each channel. 711 consider in calculating the atmospheric background for each
643 In case pre-trigger mode is used the corresponding value has to be 712 channel. In case pre-trigger mode is used the corresponding value
644 set to the rangebin to be used as upper limit (within pre-trigger 713 has to be set to the rangebin to be used as upper limit (within
645 region) for background calculation. In our example, if we want to 714 pre-trigger region) for background calculation. In our example, if
646 calculate the background between 30000 and 50000 meters for all 715 we want to calculate the background between 30000 and 50000 meters
647 photoncounting channels and we want to use the first 500 pre-trigger 716 for all photoncounting channels and we want to use the first 500
648 bins for the background calculation for the 1064nm channel we have to 717 pre-trigger bins for the background calculation for the 1064nm
649 set: 718 channel we have to set:
650 719
651 :: 720 ::
652 721
653 Background_High = 500, 50000, 50000, 50000 ; 722 Background_High = 500, 50000, 50000, 50000 ;
654 723
655 Molecular_Calc 724 - | ``Molecular_Calc``
656 This mandatory variable defines the way used by SCC to calculate the 725 | This mandatory variable defines the way used by SCC to calculate
657 molecular density profile. At the moment two options are available: 726 the molecular density profile. At the moment two options are
727 available:
658 728
659 #. US Standard Atmosphere 1976. In this case the value of this 729 #. US Standard Atmosphere 1976. In this case the value of this
660 variable has to be 0 730 variable has to be 0
661 731
662 #. Radiosounding. In this case the value of this variable has to be 1 732 #. Radiosounding. In this case the value of this variable has to be 1
663 733
664 If we decide to use the option 1. we have to provide also the 734 If we decide to use the option 1. we have to provide also the
665 measured pressure and temperature at lidar station level. Indeed if 735 measured pressure and temperature at lidar station level. Indeed if
666 we decide to use the option 2. a radiosounding file has to be 736 we decide to use the option 2. a radiosounding file has to be
667 submitted separately in NetCDF format (the structure of this file is 737 submitted separately in NetCDF format (the structure of this file is
668 summarized in table tab:sounding). Let’s suppose we want to use the 738 summarized in table 2 of the pdf file). Let’s suppose we want to use the
669 option 1. so: 739 option 1. so:
670 740
671 :: 741 ::
672 742
673 Molecular_Calc = 0 ; 743 Molecular_Calc = 0 ;
674 744
675 Pressure_at_Lidar_Station 745 - | ``Pressure_at_Lidar_Station``
676 Because we have chosen the US Standard Atmosphere for calculation of 746 | Because we have chosen the US Standard Atmosphere for calculation
677 the molecular density profile we have to give the pressure in hPa at 747 of the molecular density profile we have to give the pressure in
678 lidar station level: 748 hPa at lidar station level:
679 749
680 :: 750 ::
681 751
682 Pressure_at_Lidar_Station = 1010 ; 752 Pressure_at_Lidar_Station = 1010 ;
683 753
684 Temperature_at_Lidar_Station 754 - | ``Temperature_at_Lidar_Station``
685 Because we have chosen the US Standard Atmosphere for calculation of 755 | Because we have chosen the US Standard Atmosphere for calculation
686 the molecular density profile we have to give the temperature in C at 756 of the molecular density profile we have to give the temperature in
687 lidar station level: 757 C at lidar station level:
688 758
689 :: 759 ::
690 760
691 Temperature_at_Lidar_Station = 19.8 ; 761 Temperature_at_Lidar_Station = 19.8 ;
692 762
693 Depolarization_Factor(channels) 763 - | ``LR_Input(channels)``
694 This array is required only for lidar systems that use the two 764 | This array is required only for lidar channels for which elastic
695 depolarization channels for the backscatter retrieval. It represents 765 backscatter retrieval has to be performed. It defines the lidar
696 the factor :math:`f` to calculate the total backscatter signal 766 ratio to be used within this retrieval. Two options are available:
697 :math:`S_t` combining its cross :math:`S_c` and parallel
698 :math:`S_p` components: :math:`S_t=S_p+fS_c`. This factor is
699 mandatory only for systems acquiring :math:`S_c` and :math:`S_p`
700 and not :math:`S_t`. For systems acquiring :math:`S_c`,
701 :math:`S_p` and :math:`S_t` this factor is optional and it will
702 be used only for depolarizaton ratio calculation. Moreover only the
703 values of the array corresponding to cross polarization channels will
704 be considered; all other values will be not taken into account and
705 should be set to undefined value. In our example for the wavelength
706 532nm we have only the cross and the parallel components and not the
707 total one. So we have to give the value of this factor only in
708 correspondence of the 532nm cross polarization channel that
709 corresponds to the channel index 1. Suppose that this factor is 0.88.
710 Moreover, because we don’t have any other depolarization channels we
711 have also to set all other values of the array to undefined value.
712
713 ::
714
715 Depolarization_Factor = _,0.88,_,_ ;
716
717 LR_Input(channels)
718 This array is required only for lidar channels for which elastic
719 backscatter retrieval has to be performed. It defines the lidar ratio
720 to be used within this retrieval. Two options are available:
721 767
722 #. The user can submit a lidar ratio profile. In this case the value 768 #. The user can submit a lidar ratio profile. In this case the value
723 of this variable has to be 0. 769 of this variable has to be 0.
724 770
725 #. A fixed value of lidar ratio can be used. In this case the value 771 #. A fixed value of lidar ratio can be used. In this case the value
726 of this variable has to be 1. 772 of this variable has to be 1.
727 773
728 If we decide to use the option 1. a lidar ratio file has to be 774 If we decide to use the option 1. a lidar ratio file has to be
729 submitted separately in NetCDF format (the structure of this file is 775 submitted separately in NetCDF format (the structure of this file is
730 summarized in table tab:lr). If we decide to use the option 2. the 776 summarized in table ). If we decide to use the option 2. the
731 fixed value of lidar ratio will be taken from SCC\_DB. In our example 777 fixed value of lidar ratio will be taken from SCC\_DB. In our example
732 we have to give a value of this array only for the 1064nm lidar 778 we have to give a value of this array only for the 1064nm lidar
733 channel because for the 532nm we will be able to retrieve a Raman 779 channel because for the 532nm we will be able to retrieve a Raman
734 backscatter coefficient. In case we want to use the fixed value 780 backscatter coefficient. In case we want to use the fixed value
735 stored in SCC\_DB we have to set: 781 stored in SCC\_DB we have to set:
736 782
737 :: 783 ::
738 784
739 LR_Input = 1,_,_,_ ; 785 LR_Input = 1,_,_,_ ;
740 786
741 DAQ_Range(channels) 787 - | ``DAQ_Range(channels)``
742 This array is required only if one or more lidar signals are 788 | This array is required only if one or more lidar signals are
743 acquired in analog mode. It gives the analog scale in mV used to 789 acquired in analog mode. It gives the analog scale in mV used to
744 acquire the analog signals. In our example we have only the 1064nm 790 acquire the analog signals. In our example we have only the 1064nm
745 channel acquired in analog mode. If we have used a 100mV analog scale 791 channel acquired in analog mode. If we have used a 100mV analog
746 to acquire this channel we have to set: 792 scale to acquire this channel we have to set:
747 793
748 :: 794 ::
749 795
750 DAQ_Range = 100,_,_,_ ; 796 DAQ_Range = 100,_,_,_ ;
797
751 798
752 Global attributes 799 Global attributes
753 ~~~~~~~~~~~~~~~~~ 800 ~~~~~~~~~~~~~~~~~
754 801
755 Measurement_ID 802 - | ``Measurement_ID``
756 This mandatory global attribute defines the measurement ID 803 | This mandatory global attribute defines the measurement ID
757 corresponding to the actual lidar measurement. It is a string 804 corresponding to the actual lidar measurement. It is a string
758 composed by 12 characters. The first 8 characters give the start date 805 composed by 12 characters. The first 8 characters give the start
759 of measurement in the format YYYYMMDD. The next 2 characters give the 806 date of measurement in the format YYYYMMDD. The next 2 characters
760 Earlinet call-sign of the station. The last 2 characters are used to 807 give the Earlinet call-sign of the station. The last 2 characters
761 distinguish between different time-series within the same date. In 808 are used to distinguish between different time-series within the
762 our example we have to set: 809 same date. In our example we have to set:
763 810
764 :: 811 ::
765 812
766 Measurement_ID= "20090130cc00" ; 813 Measurement_ID= "20090130cc00" ;
767 814
768 RawData_Start_Date 815 - | ``RawData_Start_Date``
769 This mandatory global attribute defines the start date of lidar 816 | This mandatory global attribute defines the start date of lidar
770 measurements in the format YYYYMMDD. In our case we have: 817 measurements in the format YYYYMMDD. In our case we have:
771 818
772 :: 819 ::
773 820
774 RawData_Start_Date = "20090130" ; 821 RawData_Start_Date = "20090130" ;
775 822
776 RawData_Start_Time_UT 823 - | ``RawData_Start_Time_UT``
777 This mandatory global attribute defines the UT start time of lidar 824 | This mandatory global attribute defines the UT start time of lidar
778 measurements in the format HHMMSS. In our case we have: 825 measurements in the format HHMMSS. In our case we have:
779 826
780 :: 827 ::
781 828
782 RawData_Start_Time_UT = "000001" ; 829 RawData_Start_Time_UT = "000001" ;
783 830
784 RawData_Stop_Time_UT`` 831 - | ``RawData_Stop_Time_UT``
785 This mandatory global attribute defines the UT stop time of lidar 832 | This mandatory global attribute defines the UT stop time of lidar
786 measurements in the format HHMMSS. In our case we have: 833 measurements in the format HHMMSS. In our case we have:
787 834
788 :: 835 ::
789 836
790 RawData_Stop_Time_UT = "000501" ; 837 RawData_Stop_Time_UT = "000501" ;
791 838
792 RawBck_Start_Date 839 - | ``RawBck_Start_Date``
793 This optional global attribute defines the start date of dark 840 | This optional global attribute defines the start date of dark
794 measurements in the format YYYYMMDD. In our case we have: 841 measurements in the format YYYYMMDD. In our case we have:
795 842
796 :: 843 ::
797 844
798 RawBck_Start_Date = "20090129" ; 845 RawBck_Start_Date = "20090129" ;
799 846
800 RawBck_Start_Time_UT 847 - | ``RawBck_Start_Time_UT``
801 This optional global attribute defines the UT start time of dark 848 | This optional global attribute defines the UT start time of dark
802 measurements in the format HHMMSS. In our case we have: 849 measurements in the format HHMMSS. In our case we have:
803 850
804 :: 851 ::
805 852
806 RawBck_Start_Time_UT = "235001" ; 853 RawBck_Start_Time_UT = "235001" ;
807 854
808 RawBck_Stop_Time_UT 855 - | ``RawBck_Stop_Time_UT``
809 This optional global attribute defines the UT stop time of dark 856 | This optional global attribute defines the UT stop time of dark
810 measurements in the format HHMMSS. In our case we have: 857 measurements in the format HHMMSS. In our case we have:
811 858
812 :: 859 ::
813 860
814 RawBck_Stop_Time_UT = "235301" ; 861 RawBck_Stop_Time_UT = "235301" ;
815 862
863
816 Example of file (CDL format) 864 Example of file (CDL format)
817 ---------------------------- 865 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
818 866
819 To summarize we have the following NetCDF Raw Lidar Data file (in CDL 867 To summarize we have the following NetCDF *Raw Lidar Data* file (in CDL
820 format): 868 format):
821 869
822 :: 870 ::
823 871
824 dimensions: 872 dimensions:
830 time_bck = 6 ; 878 time_bck = 6 ;
831 variables: 879 variables:
832 int channel_ID(channels) ; 880 int channel_ID(channels) ;
833 int Laser_Repetition_Rate(channels) ; 881 int Laser_Repetition_Rate(channels) ;
834 double Laser_Pointing_Angle(scan_angles) ; 882 double Laser_Pointing_Angle(scan_angles) ;
835 int ID_Range(channels) ; 883 int Signal_Type(channels);
836 int Scattering_Mechanism(channels) ;
837 double Emitted_Wavelength(channels) ; 884 double Emitted_Wavelength(channels) ;
838 double Detected_Wavelength(channels) ; 885 double Detected_Wavelength(channels) ;
839 double Raw_Data_Range_Resolution(channels) ; 886 double Raw_Data_Range_Resolution(channels) ;
840 int Background_Mode(channels) ; 887 int Background_Mode(channels) ;
841 double Background_Low(channels) ; 888 double Background_Low(channels) ;
874 921
875 Laser_Repetition_Rate = 50, 50, 50, 50 ; 922 Laser_Repetition_Rate = 50, 50, 50, 50 ;
876 923
877 Laser_Pointing_Angle = 5 ; 924 Laser_Pointing_Angle = 5 ;
878 925
879 ID_Range = 1, 1, 1, 1 ; 926 Signal_Type = 0, 7, 6, 3 ;
880
881 Scattering_Mechanism = 0, 2, 3, 1 ;
882 927
883 Emitted_Wavelength = 1064, 532, 532, 532 ; 928 Emitted_Wavelength = 1064, 532, 532, 532 ;
884 929
885 Detected_Wavelength = 1064, 532, 532, 607 ; 930 Detected_Wavelength = 1064, 532, 532, 607 ;
886 931
983 1028
984 Raw_Lidar_Data = ... 1029 Raw_Lidar_Data = ...
985 1030
986 Background_Profile = ... 1031 Background_Profile = ...
987 1032
988 Please keep in mind that in case you submit a file like the previous one 1033 The name of the input file should have the following format:
989 all the parameters present in it will be used by the SCC even if you 1034
990 have different values for the same parameters within the SCC\_DB. If you 1035 ::
991 want to use the values already stored in SCC\_DB (this should be the 1036
992 usual way to use SCC) the Raw Lidar Data input file has to be 1037 Measurement_ID.nc
1038
1039 | so in the example the filename should be 20090130cc00.nc.
1040  
1041 Please keep in mind that in case you submit a file like the previous
1042 one all the parameters present in it will be used by the SCC even if
1043 you have different values for the same parameters within the SCC\_DB.
1044 If you want to use the values already stored in SCC\_DB (this should
1045 be the usual way to use SCC) the *Raw Lidar Data* input file has to be
993 modified as follows: 1046 modified as follows:
994 1047
995 :: 1048 ::
996 1049
997 dimensions: 1050 dimensions:
1124 Raw_Lidar_Data = ... 1177 Raw_Lidar_Data = ...
1125 1178
1126 Background_Profile = ... 1179 Background_Profile = ...
1127 1180
1128 This example file contains the minimum collection of mandatory 1181 This example file contains the minimum collection of mandatory
1129 information that has to be found within the Raw Lidar Data input 1182 information that has to be found within the *Raw Lidar Data* input file.
1130 file. If it is really necessary, the user can decide to add to these 1183 If it is really necessary, the user can decide to add to these mandatory
1131 mandatory parameters any number of additional parameters considered in 1184 parameters any number of additional parameters considered in the
1132 the previous example. 1185 previous example.
1133 1186
1134 Finally, suppose we want to make the following changes with respect to 1187 Finally, suppose we want to make the following changes with respect to
1135 the previous example: 1188 the previous example:
1136 1189
1137 #. use a sounding file for molecular density calculation instead of “US 1190 #. use a sounding file for molecular density calculation instead of “US
1142 1195
1143 #. provide a overlap function for overlap correction 1196 #. provide a overlap function for overlap correction
1144 1197
1145 In this case we have to generate the following NetCDF additional files: 1198 In this case we have to generate the following NetCDF additional files:
1146 1199
1147 rs_20090130cc00.nc 1200 - | ``rs_20090130cc00.nc``
1148 The name of Sounding Data file has to be computed as follows: 1201 | The name of *Sounding Data* file has to be computed as follows:
1149 ``"rs_"``+``Measurement_ID`` 1202 | ``"rs_"``\ +\ ``Measurement_ID``
1150 The structure of this file is summarized in table tab:sounding. 1203 | The structure of this file is summarized in table 2 of the pdf.
1151 1204
1152 ov_20090130cc00.nc 1205 - | ``ov_20090130cc00.nc``
1153 The name of Overlap file has to be computed as follows: 1206 | The name of *Overlap* file has to be computed as follows:
1154 ``"ov_"``+``Measurement_ID`` 1207 | ``"ov_"``\ +\ ``Measurement_ID``
1155 The structure of this file is summarized in table tab:overlap. 1208 | The structure of this file is summarized in table 3 of the pdf.
1156 1209
1157 lr_20090130cc00.nc 1210 - | ``lr_20090130cc00.nc``
1158 The name of Lidar Ratio file has to be computed as follows: 1211 | The name of *Lidar Ratio* file has to be computed as follows:
1159 ``"lr_"``+``Measurement_ID`` 1212 | ``"lr_"``\ +\ ``Measurement_ID``
1160 The structure of this file is summarized in table tab:lr. 1213 | The structure of this file is summarized in table 4 of the pdf.
1161 1214
1162 Moreover we need to apply the following changes to the Raw Lidar Data 1215 Moreover we need to apply the following changes to the *Raw Lidar Data*
1163 input file: 1216 input file:
1164 1217
1165 1. Change the value of the variable ``Molecular_Calc`` as follows: 1218 #. Change the value of the variable ``Molecular_Calc`` as follows:
1166 1219
1167 :: 1220 ::
1168 1221
1169 Molecular_Calc = 1 ; 1222 Molecular_Calc = 1 ;
1170 1223
1171 Of course the variables ``Pressure_at_Lidar_Station`` and 1224 Of course the variables ``Pressure_at_Lidar_Station`` and
1172 ``Temperature_at_Lidar_Station`` are not necessary anymore. 1225 ``Temperature_at_Lidar_Station`` are not necessary anymore.
1173 1226
1174 2. Change the values of the array ``LR_Input`` as follows: 1227 #. Change the values of the array ``LR_Input`` as follows:
1175 1228
1176 :: 1229 ::
1177 1230
1178 LR_Input = 0,_,_,_ ; 1231 LR_Input = 0,_,_,_ ;
1179 1232
1180 3. Add the global attribute ``Sounding_File_Name`` 1233 #. Add the global attribute ``Sounding_File_Name``
1181 1234
1182 :: 1235 ::
1183 1236
1184 Sounding_File_Name = "rs_20090130cc00.nc" ; 1237 Sounding_File_Name = "rs_20090130cc00.nc" ;
1185 1238
1186 5. Add the global attribute ``LR_File_Name`` 1239 #. Add the global attribute ``LR_File_Name``
1187 1240
1188 :: 1241 ::
1189 1242
1190 LR_File_Name = "lr_20090130cc00.nc" ; 1243 LR_File_Name = "lr_20090130cc00.nc" ;
1191 1244
1192 6. Add the global attribute ``Overlap_File_Name`` 1245 #. Add the global attribute ``Overlap_File_Name``
1193 1246
1194 :: 1247 ::
1195 1248
1196 Overlap_File_Name = "ov_20090130cc00.nc" ; 1249 Overlap_File_Name = "ov_20090130cc00.nc" ;
1250

mercurial