Fri, 11 May 2012 13:27:13 +0200
Changed markdown to Restructured text.
ulalume3@11 | 1 | |
ulalume3@11 | 2 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" |
ulalume3@11 | 3 | "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
ulalume3@11 | 4 | |
ulalume3@11 | 5 | |
ulalume3@11 | 6 | <html xmlns="http://www.w3.org/1999/xhtml"> |
ulalume3@11 | 7 | <head> |
ulalume3@11 | 8 | <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> |
ulalume3@11 | 9 | |
ulalume3@11 | 10 | <title>The SCC netCDF file format — Single Calculus Chain 0.2 documentation</title> |
ulalume3@11 | 11 | |
ulalume3@11 | 12 | <link rel="stylesheet" href="_static/nature.css" type="text/css" /> |
ulalume3@11 | 13 | <link rel="stylesheet" href="_static/pygments.css" type="text/css" /> |
ulalume3@11 | 14 | |
ulalume3@11 | 15 | <script type="text/javascript"> |
ulalume3@11 | 16 | var DOCUMENTATION_OPTIONS = { |
ulalume3@11 | 17 | URL_ROOT: '', |
ulalume3@11 | 18 | VERSION: '0.2', |
ulalume3@11 | 19 | COLLAPSE_INDEX: false, |
ulalume3@11 | 20 | FILE_SUFFIX: '.html', |
ulalume3@11 | 21 | HAS_SOURCE: true |
ulalume3@11 | 22 | }; |
ulalume3@11 | 23 | </script> |
ulalume3@11 | 24 | <script type="text/javascript" src="_static/jquery.js"></script> |
ulalume3@11 | 25 | <script type="text/javascript" src="_static/underscore.js"></script> |
ulalume3@11 | 26 | <script type="text/javascript" src="_static/doctools.js"></script> |
ulalume3@11 | 27 | <script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script> |
ulalume3@11 | 28 | <link rel="top" title="Single Calculus Chain 0.2 documentation" href="index.html" /> |
ulalume3@11 | 29 | <link rel="next" title="User management" href="user_management.html" /> |
ulalume3@11 | 30 | <link rel="prev" title="View processing results" href="details/viewing_measurements.html" /> |
ulalume3@11 | 31 | </head> |
ulalume3@11 | 32 | <body> |
ulalume3@11 | 33 | <div class="related"> |
ulalume3@11 | 34 | <h3>Navigation</h3> |
ulalume3@11 | 35 | <ul> |
ulalume3@11 | 36 | <li class="right" style="margin-right: 10px"> |
ulalume3@11 | 37 | <a href="genindex.html" title="General Index" |
ulalume3@11 | 38 | accesskey="I">index</a></li> |
ulalume3@11 | 39 | <li class="right" > |
ulalume3@11 | 40 | <a href="user_management.html" title="User management" |
ulalume3@11 | 41 | accesskey="N">next</a> |</li> |
ulalume3@11 | 42 | <li class="right" > |
ulalume3@11 | 43 | <a href="details/viewing_measurements.html" title="View processing results" |
ulalume3@11 | 44 | accesskey="P">previous</a> |</li> |
ulalume3@11 | 45 | <li><a href="index.html">Single Calculus Chain 0.2 documentation</a> »</li> |
ulalume3@11 | 46 | </ul> |
ulalume3@11 | 47 | </div> |
ulalume3@11 | 48 | |
ulalume3@11 | 49 | <div class="document"> |
ulalume3@11 | 50 | <div class="documentwrapper"> |
ulalume3@11 | 51 | <div class="bodywrapper"> |
ulalume3@11 | 52 | <div class="body"> |
ulalume3@11 | 53 | |
ulalume3@11 | 54 | <div class="section" id="the-scc-netcdf-file-format"> |
ulalume3@11 | 55 | <h1>The SCC netCDF file format<a class="headerlink" href="#the-scc-netcdf-file-format" title="Permalink to this headline">¶</a></h1> |
ulalume3@11 | 56 | <div class="section" id="rationale"> |
ulalume3@11 | 57 | <h2>Rationale<a class="headerlink" href="#rationale" title="Permalink to this headline">¶</a></h2> |
ulalume3@11 | 58 | <p>The Single Calculus Chain (SCC) is composed by two different modules:</p> |
ulalume3@11 | 59 | <ul class="simple"> |
ulalume3@11 | 60 | <li>pre-processing module ( scc_preprocessing)</li> |
ulalume3@11 | 61 | <li>optical processing module ( ELDA)</li> |
ulalume3@11 | 62 | </ul> |
ulalume3@11 | 63 | <p>To perfom aerosol optical retrievals the SCC needs not only the raw |
ulalume3@11 | 64 | lidar data but also a certain number of parameters to use in both |
ulalume3@11 | 65 | pre-processing and optical processing stages. The SCC gets these |
ulalume3@11 | 66 | parameters looking at two different locations:</p> |
ulalume3@11 | 67 | <ul class="simple"> |
ulalume3@11 | 68 | <li>Single Calculus Chain relational database (SCC_DB)</li> |
ulalume3@11 | 69 | <li>Input files</li> |
ulalume3@11 | 70 | </ul> |
ulalume3@11 | 71 | <p>There are some paramenters that can be found only in the input files |
ulalume3@11 | 72 | (those ones changing from measurement to measurement), others that can |
ulalume3@11 | 73 | be found only in the SCC_DB and other ones that can be found in both |
ulalume3@11 | 74 | these locations. In the last case, if a particular parameter is needed, |
ulalume3@11 | 75 | the SCC will search first in the input files and then in SCC_DB. If the |
ulalume3@11 | 76 | parameter is found in the input files the SCC will keep it without |
ulalume3@11 | 77 | looking into SCC_DB.</p> |
ulalume3@11 | 78 | <p>The input files have to be submitted to the SCC in NetCDF format. At the |
ulalume3@11 | 79 | present the SCC can handle four different types of input files:</p> |
ulalume3@11 | 80 | <ol class="arabic simple"> |
ulalume3@11 | 81 | <li>Raw Lidar Data</li> |
ulalume3@11 | 82 | <li>Sounding Data</li> |
ulalume3@11 | 83 | <li>Overlap</li> |
ulalume3@11 | 84 | <li>Lidar Ratio</li> |
ulalume3@11 | 85 | </ol> |
ulalume3@11 | 86 | <p>As already mentioned, the Raw Lidar Data file contains not only the |
ulalume3@11 | 87 | raw lidar data but also other parameters to use to perform the |
ulalume3@11 | 88 | pre-processing and optical processing. The Sounding Data file |
ulalume3@11 | 89 | contains the data coming from a correlative radiosounding and it is used |
ulalume3@11 | 90 | by the SCC for molecular density calculation. The Overlap file |
ulalume3@11 | 91 | contains the measured overlap function. The Lidar Ratio file contains |
ulalume3@11 | 92 | a lidar ratio profile to use in elastic backscatter retrievals. The |
ulalume3@11 | 93 | Raw Lidar Data file is of course mandatory and the Sounding Data, |
ulalume3@11 | 94 | Overlap and Lidar Ratio files are optional. If Sounding Data file |
ulalume3@11 | 95 | is not submitted by the user, the molecular density will be calculated |
ulalume3@11 | 96 | by the SCC using the “US Standard Atmosphere 1976”. If the Overlap |
ulalume3@11 | 97 | file is not submitted by the user, the SCC will get the full overlap |
ulalume3@11 | 98 | height from SCC_DB and it will produce optical results starting from |
ulalume3@11 | 99 | this height. If Lidar Ratio file is not submitted by the user, the |
ulalume3@11 | 100 | SCC will consider a fixed value for lidar ratio got from SCC_DB.</p> |
ulalume3@11 | 101 | <p>The user can decide to submit all these files or any number of them (of |
ulalume3@11 | 102 | course the file Raw Lidar Data is mandatory). For example the user |
ulalume3@11 | 103 | can submit together with the Raw Lidar Data file only the Sounding |
ulalume3@11 | 104 | Data file or only the Overlap file.</p> |
ulalume3@11 | 105 | <p>This document provides a detailed explanation about the structure of the |
ulalume3@11 | 106 | NetCDF input files to use for SCC data submission. All Earlinet groups |
ulalume3@11 | 107 | should read it carefully because they have to produce such kind of input |
ulalume3@11 | 108 | files if they want to use the SCC for their standard lidar retrievals. |
ulalume3@11 | 109 | Every comments or suggestions regarding this document can be sent to |
ulalume3@11 | 110 | Giuseppe D’Amico by e-mail at <tt class="docutils literal"><span class="pre">damico@imaa.cnr.it</span></tt></p> |
ulalume3@11 | 111 | <p>This document is available for downloading at <tt class="docutils literal"><span class="pre">www.earlinetasos.org</span></tt></p> |
ulalume3@11 | 112 | <p>In table tab:rawdata is reported a list of dimensions, variables and |
ulalume3@11 | 113 | global attributes that can be used in the NetCDF Raw Lidar Data input |
ulalume3@11 | 114 | file. For each of them it is indicated:</p> |
ulalume3@11 | 115 | <ul class="simple"> |
ulalume3@11 | 116 | <li>The name. For the multidimensional variables also the corresponding |
ulalume3@11 | 117 | dimensions are reported</li> |
ulalume3@11 | 118 | <li>A description explaining the meaning</li> |
ulalume3@11 | 119 | <li>The type</li> |
ulalume3@11 | 120 | <li>If it is mandatory or optional</li> |
ulalume3@11 | 121 | </ul> |
ulalume3@11 | 122 | <p>As already mentioned, the SCC can get some parameters looking first in |
ulalume3@11 | 123 | the Raw Lidar Data input file and then into SCC_DB. This means that |
ulalume3@11 | 124 | to use the parameters stored in SCC_DB the optional variables or |
ulalume3@11 | 125 | optional global attributes must not appear within Raw Lidar Data |
ulalume3@11 | 126 | file. This is the suggested and recommended way to use the SCC. Please |
ulalume3@11 | 127 | include optional parameters in the Raw Lidar Data only as an |
ulalume3@11 | 128 | exception.</p> |
ulalume3@11 | 129 | <p>In table tab:sounding, tab:overlap and tab:lr are reported all the |
ulalume3@11 | 130 | information about the structure of Sounding Data, Overlap and |
ulalume3@11 | 131 | Lidar Ratio input files respectively.</p> |
ulalume3@11 | 132 | </div> |
ulalume3@11 | 133 | <div class="section" id="example"> |
ulalume3@11 | 134 | <h2>Example<a class="headerlink" href="#example" title="Permalink to this headline">¶</a></h2> |
ulalume3@11 | 135 | <p>Let’s now consider an example of Raw Lidar Data input file. Suppose |
ulalume3@11 | 136 | we want to generate NetCDF input file corresponding to a measurement |
ulalume3@11 | 137 | with the following properties:</p> |
ulalume3@11 | 138 | <table border="1" class="docutils"> |
ulalume3@11 | 139 | <colgroup> |
ulalume3@11 | 140 | <col width="34%" /> |
ulalume3@11 | 141 | <col width="66%" /> |
ulalume3@11 | 142 | </colgroup> |
ulalume3@11 | 143 | <tbody valign="top"> |
ulalume3@11 | 144 | <tr class="row-odd"><td>Start Date</td> |
ulalume3@11 | 145 | <td><span class="math">\(30^{th}\)</span> January 2009</td> |
ulalume3@11 | 146 | </tr> |
ulalume3@11 | 147 | <tr class="row-even"><td>Start Time UT</td> |
ulalume3@11 | 148 | <td>00:00:01</td> |
ulalume3@11 | 149 | </tr> |
ulalume3@11 | 150 | <tr class="row-odd"><td>Stop Time UT</td> |
ulalume3@11 | 151 | <td>00:05:01</td> |
ulalume3@11 | 152 | </tr> |
ulalume3@11 | 153 | <tr class="row-even"><td>Station Name</td> |
ulalume3@11 | 154 | <td>Dummy station</td> |
ulalume3@11 | 155 | </tr> |
ulalume3@11 | 156 | <tr class="row-odd"><td>Earlinet call-sign</td> |
ulalume3@11 | 157 | <td>cc</td> |
ulalume3@11 | 158 | </tr> |
ulalume3@11 | 159 | <tr class="row-even"><td>Pointing angle</td> |
ulalume3@11 | 160 | <td>5 degrees with respect to the zenith</td> |
ulalume3@11 | 161 | </tr> |
ulalume3@11 | 162 | </tbody> |
ulalume3@11 | 163 | </table> |
ulalume3@11 | 164 | <p>Moreover suppose that this measurement is composed by the following |
ulalume3@11 | 165 | lidar channels:</p> |
ulalume3@11 | 166 | <ol class="arabic"> |
ulalume3@11 | 167 | <li><p class="first">1064 lidar channel</p> |
ulalume3@11 | 168 | <table border="1" class="docutils"> |
ulalume3@11 | 169 | <colgroup> |
ulalume3@11 | 170 | <col width="49%" /> |
ulalume3@11 | 171 | <col width="51%" /> |
ulalume3@11 | 172 | </colgroup> |
ulalume3@11 | 173 | <tbody valign="top"> |
ulalume3@11 | 174 | <tr class="row-odd"><td><p class="first last">Emission wavelength=1064nm</p> |
ulalume3@11 | 175 | </td> |
ulalume3@11 | 176 | <td><p class="first last">Detection wavelength=1064nm</p> |
ulalume3@11 | 177 | </td> |
ulalume3@11 | 178 | </tr> |
ulalume3@11 | 179 | <tr class="row-even"><td><p class="first last">Time resolution=30s</p> |
ulalume3@11 | 180 | </td> |
ulalume3@11 | 181 | <td><p class="first last">Number of laser shots=1500</p> |
ulalume3@11 | 182 | </td> |
ulalume3@11 | 183 | </tr> |
ulalume3@11 | 184 | <tr class="row-odd"><td><p class="first last">Number of bins=3000</p> |
ulalume3@11 | 185 | </td> |
ulalume3@11 | 186 | <td><p class="first last">Detection mode=analog</p> |
ulalume3@11 | 187 | </td> |
ulalume3@11 | 188 | </tr> |
ulalume3@11 | 189 | <tr class="row-even"><td><p class="first last">Range resolution=7.5m</p> |
ulalume3@11 | 190 | </td> |
ulalume3@11 | 191 | <td><p class="first last">Polarization state=total</p> |
ulalume3@11 | 192 | </td> |
ulalume3@11 | 193 | </tr> |
ulalume3@11 | 194 | </tbody> |
ulalume3@11 | 195 | </table> |
ulalume3@11 | 196 | </li> |
ulalume3@11 | 197 | <li><p class="first">532 cross lidar channel</p> |
ulalume3@11 | 198 | <table border="1" class="docutils"> |
ulalume3@11 | 199 | <colgroup> |
ulalume3@11 | 200 | <col width="47%" /> |
ulalume3@11 | 201 | <col width="53%" /> |
ulalume3@11 | 202 | </colgroup> |
ulalume3@11 | 203 | <tbody valign="top"> |
ulalume3@11 | 204 | <tr class="row-odd"><td><p class="first last">Emission wavelength=532nm</p> |
ulalume3@11 | 205 | </td> |
ulalume3@11 | 206 | <td><p class="first last">Detection wavelength=532nm</p> |
ulalume3@11 | 207 | </td> |
ulalume3@11 | 208 | </tr> |
ulalume3@11 | 209 | <tr class="row-even"><td><p class="first last">Time resolution=60s</p> |
ulalume3@11 | 210 | </td> |
ulalume3@11 | 211 | <td><p class="first last">Number of laser shots=3000</p> |
ulalume3@11 | 212 | </td> |
ulalume3@11 | 213 | </tr> |
ulalume3@11 | 214 | <tr class="row-odd"><td><p class="first last">Number of bins=5000</p> |
ulalume3@11 | 215 | </td> |
ulalume3@11 | 216 | <td><p class="first last">Detection mode=photoncounting</p> |
ulalume3@11 | 217 | </td> |
ulalume3@11 | 218 | </tr> |
ulalume3@11 | 219 | <tr class="row-even"><td><p class="first last">Range resolution=15m</p> |
ulalume3@11 | 220 | </td> |
ulalume3@11 | 221 | <td><p class="first last">Polarization state=cross</p> |
ulalume3@11 | 222 | </td> |
ulalume3@11 | 223 | </tr> |
ulalume3@11 | 224 | </tbody> |
ulalume3@11 | 225 | </table> |
ulalume3@11 | 226 | </li> |
ulalume3@11 | 227 | <li><p class="first">532 parallel lidar channel</p> |
ulalume3@11 | 228 | <table border="1" class="docutils"> |
ulalume3@11 | 229 | <colgroup> |
ulalume3@11 | 230 | <col width="47%" /> |
ulalume3@11 | 231 | <col width="53%" /> |
ulalume3@11 | 232 | </colgroup> |
ulalume3@11 | 233 | <tbody valign="top"> |
ulalume3@11 | 234 | <tr class="row-odd"><td><p class="first last">Emission wavelength=532nm</p> |
ulalume3@11 | 235 | </td> |
ulalume3@11 | 236 | <td><p class="first last">Detection wavelength=532nm</p> |
ulalume3@11 | 237 | </td> |
ulalume3@11 | 238 | </tr> |
ulalume3@11 | 239 | <tr class="row-even"><td><p class="first last">Time resolution=60s</p> |
ulalume3@11 | 240 | </td> |
ulalume3@11 | 241 | <td><p class="first last">Number of laser shots=3000</p> |
ulalume3@11 | 242 | </td> |
ulalume3@11 | 243 | </tr> |
ulalume3@11 | 244 | <tr class="row-odd"><td><p class="first last">Number of bins=5000</p> |
ulalume3@11 | 245 | </td> |
ulalume3@11 | 246 | <td><p class="first last">Detection mode=photoncounting</p> |
ulalume3@11 | 247 | </td> |
ulalume3@11 | 248 | </tr> |
ulalume3@11 | 249 | <tr class="row-even"><td><p class="first last">Range resolution=15m</p> |
ulalume3@11 | 250 | </td> |
ulalume3@11 | 251 | <td><p class="first last">Polarization state=parallel</p> |
ulalume3@11 | 252 | </td> |
ulalume3@11 | 253 | </tr> |
ulalume3@11 | 254 | </tbody> |
ulalume3@11 | 255 | </table> |
ulalume3@11 | 256 | </li> |
ulalume3@11 | 257 | <li><p class="first">607 <span class="math">\(N_2\)</span> vibrational Raman channel</p> |
ulalume3@11 | 258 | <table border="1" class="docutils"> |
ulalume3@11 | 259 | <colgroup> |
ulalume3@11 | 260 | <col width="47%" /> |
ulalume3@11 | 261 | <col width="53%" /> |
ulalume3@11 | 262 | </colgroup> |
ulalume3@11 | 263 | <tbody valign="top"> |
ulalume3@11 | 264 | <tr class="row-odd"><td><p class="first last">Emission wavelength=532nm</p> |
ulalume3@11 | 265 | </td> |
ulalume3@11 | 266 | <td><p class="first last">Detection wavelength=607nm</p> |
ulalume3@11 | 267 | </td> |
ulalume3@11 | 268 | </tr> |
ulalume3@11 | 269 | <tr class="row-even"><td><p class="first last">Time resolution=60s</p> |
ulalume3@11 | 270 | </td> |
ulalume3@11 | 271 | <td><p class="first last">Number of laser shots=3000</p> |
ulalume3@11 | 272 | </td> |
ulalume3@11 | 273 | </tr> |
ulalume3@11 | 274 | <tr class="row-odd"><td><p class="first last">Number of bins=5000</p> |
ulalume3@11 | 275 | </td> |
ulalume3@11 | 276 | <td><p class="first last">Detection mode=photoncounting</p> |
ulalume3@11 | 277 | </td> |
ulalume3@11 | 278 | </tr> |
ulalume3@11 | 279 | <tr class="row-even"><td colspan="2"><p class="first last">Range resolution=15m</p> |
ulalume3@11 | 280 | </td> |
ulalume3@11 | 281 | </tr> |
ulalume3@11 | 282 | </tbody> |
ulalume3@11 | 283 | </table> |
ulalume3@11 | 284 | </li> |
ulalume3@11 | 285 | </ol> |
ulalume3@11 | 286 | <p>Finally let’s assume we have also performed dark measurements before the |
ulalume3@11 | 287 | lidar measurements from the 23:50:01 UT up to 23:53:01 UT of |
ulalume3@11 | 288 | 29:math:<cite>^mathrmth</cite> January 2009.</p> |
ulalume3@11 | 289 | <div class="section" id="dimensions"> |
ulalume3@11 | 290 | <h3>Dimensions<a class="headerlink" href="#dimensions" title="Permalink to this headline">¶</a></h3> |
ulalume3@11 | 291 | <p>Looking at table tab:rawdata we have to fix the following dimensions:</p> |
ulalume3@11 | 292 | <div class="highlight-python"><div class="highlight"><pre><span class="n">points</span> |
ulalume3@11 | 293 | <span class="n">channels</span> |
ulalume3@11 | 294 | <span class="n">time</span> |
ulalume3@11 | 295 | <span class="n">nb_of_time_scales</span> |
ulalume3@11 | 296 | <span class="n">scan_angles</span> |
ulalume3@11 | 297 | <span class="n">time_bck</span> |
ulalume3@11 | 298 | </pre></div> |
ulalume3@11 | 299 | </div> |
ulalume3@11 | 300 | <p>The dimension <tt class="docutils literal"><span class="pre">time</span></tt> is unlimited so we don’t have to fix it.</p> |
ulalume3@11 | 301 | <p>We have 4 lidar channels so:</p> |
ulalume3@11 | 302 | <div class="highlight-python"><div class="highlight"><pre><span class="n">channels</span><span class="o">=</span><span class="mi">4</span> |
ulalume3@11 | 303 | </pre></div> |
ulalume3@11 | 304 | </div> |
ulalume3@11 | 305 | <p>Regarding the dimension <tt class="docutils literal"><span class="pre">points</span></tt> we have only one channel with a |
ulalume3@11 | 306 | number of vertical bins equal to 3000 (the 1064nm) and all other |
ulalume3@11 | 307 | channels with 5000 vertical bins. In cases like this the dimension |
ulalume3@11 | 308 | <tt class="docutils literal"><span class="pre">points</span></tt> has to be fixed to the maximum number of vertical bins so:</p> |
ulalume3@11 | 309 | <div class="highlight-python"><div class="highlight"><pre><span class="n">points</span><span class="o">=</span><span class="mi">5000</span> |
ulalume3@11 | 310 | </pre></div> |
ulalume3@11 | 311 | </div> |
ulalume3@11 | 312 | <p>Moreover only one channel (1064nm) is acquired with a time resolution of |
ulalume3@11 | 313 | 30 seconds, all the other channels have a time resolution of 60 seconds. |
ulalume3@11 | 314 | This means that we have to define two different time scales. We have to |
ulalume3@11 | 315 | set:</p> |
ulalume3@11 | 316 | <div class="highlight-python"><div class="highlight"><pre><span class="n">nb_of_time_scales</span><span class="o">=</span><span class="mi">2</span> |
ulalume3@11 | 317 | </pre></div> |
ulalume3@11 | 318 | </div> |
ulalume3@11 | 319 | <p>The measurement is performed only at one scan angle (5 degrees with |
ulalume3@11 | 320 | respect to the zenith) so:</p> |
ulalume3@11 | 321 | <div class="highlight-python"><div class="highlight"><pre><span class="n">scan_angles</span><span class="o">=</span><span class="mi">1</span> |
ulalume3@11 | 322 | </pre></div> |
ulalume3@11 | 323 | </div> |
ulalume3@11 | 324 | <p>We have 3 minutes of dark measurements and two different time scales one |
ulalume3@11 | 325 | with 60 seconds time resolution and the other one with 30 seconds time |
ulalume3@11 | 326 | resolution. So we will have 3 different dark profiles for the channels |
ulalume3@11 | 327 | acquired with the first time scale and 6 for the lidar channels acquired |
ulalume3@11 | 328 | with the second time scale. We have to fix the dimension <tt class="docutils literal"><span class="pre">time_bck</span></tt> as |
ulalume3@11 | 329 | the maximum between these values:</p> |
ulalume3@11 | 330 | <div class="highlight-python"><div class="highlight"><pre><span class="n">time_bck</span><span class="o">=</span><span class="mi">6</span> |
ulalume3@11 | 331 | </pre></div> |
ulalume3@11 | 332 | </div> |
ulalume3@11 | 333 | </div> |
ulalume3@11 | 334 | <div class="section" id="variables"> |
ulalume3@11 | 335 | <h3>Variables<a class="headerlink" href="#variables" title="Permalink to this headline">¶</a></h3> |
ulalume3@11 | 336 | <p>In this section it will be explained how to fill all the possible |
ulalume3@11 | 337 | variables either mandatory or optional of Raw Lidar Data input file.</p> |
ulalume3@11 | 338 | <dl class="docutils"> |
ulalume3@11 | 339 | <dt>Raw_Data_Start_Time(time, nb_of_time_scales)</dt> |
ulalume3@11 | 340 | <dd><p class="first">This 2 dimensional mandatory array has to contain the acquisition |
ulalume3@11 | 341 | start time (in seconds from the time given by the global attribute |
ulalume3@11 | 342 | <tt class="docutils literal"><span class="pre">RawData_Start_Time_UT</span></tt>) of each lidar profile. In this example we |
ulalume3@11 | 343 | have two different time scales: one is characterized by steps of 30 |
ulalume3@11 | 344 | seconds (the 1064nm is acquired with this time scale) the other by |
ulalume3@11 | 345 | steps of 60 seconds (532cross, 532parallel and 607nm). Moreover the |
ulalume3@11 | 346 | measurement start time is 00:00:01 UT and the measurement stop time |
ulalume3@11 | 347 | is 00:05:01 UT. In this case we have to define:</p> |
ulalume3@11 | 348 | <div class="highlight-python"><pre>Raw_Data_Start_Time = |
ulalume3@11 | 349 | 0, 0, |
ulalume3@11 | 350 | 60, 30, |
ulalume3@11 | 351 | 120, 60, |
ulalume3@11 | 352 | 180, 90, |
ulalume3@11 | 353 | 240, 120, |
ulalume3@11 | 354 | _, 150, |
ulalume3@11 | 355 | _, 180, |
ulalume3@11 | 356 | _, 210, |
ulalume3@11 | 357 | _, 240, |
ulalume3@11 | 358 | _, 270 ;</pre> |
ulalume3@11 | 359 | </div> |
ulalume3@11 | 360 | <p class="last">The order used to fill this array defines the correspondence between |
ulalume3@11 | 361 | the different time scales and the time scale index. In this example |
ulalume3@11 | 362 | we have a time scale index of 0 for the time scale with steps of 60 |
ulalume3@11 | 363 | seconds and a time scale index of 1 for the other one.</p> |
ulalume3@11 | 364 | </dd> |
ulalume3@11 | 365 | <dt>Raw_Data_Stop_Time(time, nb_of_time_scales)</dt> |
ulalume3@11 | 366 | <dd><p class="first">The same as previous item but for the data acquisition stop time. |
ulalume3@11 | 367 | Following a similar procedure we have to define:</p> |
ulalume3@11 | 368 | <div class="last highlight-python"><pre>Raw_Data_Stop_Time = |
ulalume3@11 | 369 | 60, 30, |
ulalume3@11 | 370 | 120, 60, |
ulalume3@11 | 371 | 180, 90, |
ulalume3@11 | 372 | 240, 120, |
ulalume3@11 | 373 | 300, 150, |
ulalume3@11 | 374 | _, 180, |
ulalume3@11 | 375 | _, 210, |
ulalume3@11 | 376 | _, 240, |
ulalume3@11 | 377 | _, 270, |
ulalume3@11 | 378 | _, 300 ;</pre> |
ulalume3@11 | 379 | </div> |
ulalume3@11 | 380 | </dd> |
ulalume3@11 | 381 | <dt>Raw_Lidar_Data(time, channels, points)</dt> |
ulalume3@11 | 382 | <dd><p class="first">This 3 dimensional mandatory array has to be filled with the |
ulalume3@11 | 383 | time-series of raw lidar data. The photoncounting profiles have to |
ulalume3@11 | 384 | submitted in counts (so as integers) while the analog ones in mV. The |
ulalume3@11 | 385 | order the user chooses to fill this array defines the correspondence |
ulalume3@11 | 386 | between channel index and lidar data.</p> |
ulalume3@11 | 387 | <p>For example if we fill this array in such way that:</p> |
ulalume3@11 | 388 | <table border="1" class="docutils"> |
ulalume3@11 | 389 | <colgroup> |
ulalume3@11 | 390 | <col width="38%" /> |
ulalume3@11 | 391 | <col width="62%" /> |
ulalume3@11 | 392 | </colgroup> |
ulalume3@11 | 393 | <tbody valign="top"> |
ulalume3@11 | 394 | <tr class="row-odd"><td>Raw_Lidar_Data(time,0,points</td> |
ulalume3@11 | 395 | <td><span class="math">\(\rightarrow\)</span> is the time-series of 1064 nm</td> |
ulalume3@11 | 396 | </tr> |
ulalume3@11 | 397 | <tr class="row-even"><td>Raw_Lidar_Data(time,1,points</td> |
ulalume3@11 | 398 | <td><span class="math">\(\rightarrow\)</span> is the time-series of 532 cross</td> |
ulalume3@11 | 399 | </tr> |
ulalume3@11 | 400 | <tr class="row-odd"><td>Raw_Lidar_Data(time,2,points</td> |
ulalume3@11 | 401 | <td><span class="math">\(\rightarrow\)</span> is the time-series of 532 parallel</td> |
ulalume3@11 | 402 | </tr> |
ulalume3@11 | 403 | <tr class="row-even"><td>Raw_Lidar_Data(time,3,points</td> |
ulalume3@11 | 404 | <td><span class="math">\(\rightarrow\)</span> is the time-series of 607 nm</td> |
ulalume3@11 | 405 | </tr> |
ulalume3@11 | 406 | </tbody> |
ulalume3@11 | 407 | </table> |
ulalume3@11 | 408 | <p class="last">from now on the channel index 0 is associated to the 1064 channel, |
ulalume3@11 | 409 | 1 to the 532 cross, 2 to the 532 parallel and 3 to the 607nm.</p> |
ulalume3@11 | 410 | </dd> |
ulalume3@11 | 411 | <dt>Raw_Bck_Start_Time(time_bck, nb_of_time_scales)</dt> |
ulalume3@11 | 412 | <dd><p class="first">This 2 dimensional optional array has to contain the acquisition |
ulalume3@11 | 413 | start time (in seconds from the time given by the global attribute |
ulalume3@11 | 414 | <tt class="docutils literal"><span class="pre">RawBck_Start_Time_UT</span></tt>) of each dark measurements profile. |
ulalume3@11 | 415 | Following the same procedure used for the variable |
ulalume3@11 | 416 | <tt class="docutils literal"><span class="pre">Raw_Data_Start_Time</span></tt> we have to define:</p> |
ulalume3@11 | 417 | <div class="last highlight-python"><pre>Raw_Bck_Start_Time = |
ulalume3@11 | 418 | 0, 0, |
ulalume3@11 | 419 | 60, 30, |
ulalume3@11 | 420 | 120, 60, |
ulalume3@11 | 421 | _, 90, |
ulalume3@11 | 422 | _, 120, |
ulalume3@11 | 423 | _, 150;</pre> |
ulalume3@11 | 424 | </div> |
ulalume3@11 | 425 | </dd> |
ulalume3@11 | 426 | <dt>Raw_Bck_Stop_Time(time_bck, nb_of_time_scales)</dt> |
ulalume3@11 | 427 | <dd><p class="first">The same as previous item but for the dark acquisition stop time. |
ulalume3@11 | 428 | Following a similar procedure we have to define:</p> |
ulalume3@11 | 429 | <div class="last highlight-python"><pre>Raw_Bck_Stop_Time = |
ulalume3@11 | 430 | 60, 30, |
ulalume3@11 | 431 | 120, 60, |
ulalume3@11 | 432 | 180, 90, |
ulalume3@11 | 433 | _, 120, |
ulalume3@11 | 434 | _, 150, |
ulalume3@11 | 435 | _, 180 ;</pre> |
ulalume3@11 | 436 | </div> |
ulalume3@11 | 437 | </dd> |
ulalume3@11 | 438 | <dt>Background_Profile(time_bck, channels, points)</dt> |
ulalume3@11 | 439 | <dd><p class="first">This 3 dimensional optional array has to be filled with the |
ulalume3@11 | 440 | time-series of the dark measurements data. The photoncounting |
ulalume3@11 | 441 | profiles have to submitted in counts (so as integers) while the |
ulalume3@11 | 442 | analog ones in mV. The user has to fill this array following the same |
ulalume3@11 | 443 | order used in filling the array <tt class="docutils literal"><span class="pre">Raw_Lidar_Data</span></tt>:</p> |
ulalume3@11 | 444 | <table border="1" class="last docutils"> |
ulalume3@11 | 445 | <colgroup> |
ulalume3@11 | 446 | <col width="44%" /> |
ulalume3@11 | 447 | <col width="56%" /> |
ulalume3@11 | 448 | </colgroup> |
ulalume3@11 | 449 | <tbody valign="top"> |
ulalume3@11 | 450 | <tr class="row-odd"><td>Background_Profile(time_bck,0,points</td> |
ulalume3@11 | 451 | <td><span class="math">\(\rightarrow\)</span> dark time-series at 1064 nm</td> |
ulalume3@11 | 452 | </tr> |
ulalume3@11 | 453 | <tr class="row-even"><td>Background_Profile(time_bck,1,points</td> |
ulalume3@11 | 454 | <td><span class="math">\(\rightarrow\)</span> dark time-series at 532 cross</td> |
ulalume3@11 | 455 | </tr> |
ulalume3@11 | 456 | <tr class="row-odd"><td>Background_Profile(time_bck,2,points</td> |
ulalume3@11 | 457 | <td><span class="math">\(\rightarrow\)</span> dark time-series at 532 parallel</td> |
ulalume3@11 | 458 | </tr> |
ulalume3@11 | 459 | <tr class="row-even"><td>Background_Profile(time_bck,3,points</td> |
ulalume3@11 | 460 | <td><span class="math">\(\rightarrow\)</span> dark time-series at 607 nm</td> |
ulalume3@11 | 461 | </tr> |
ulalume3@11 | 462 | </tbody> |
ulalume3@11 | 463 | </table> |
ulalume3@11 | 464 | </dd> |
ulalume3@11 | 465 | <dt>channel_ID(channels)</dt> |
ulalume3@11 | 466 | <dd><p class="first">This mandatory array provides the link between the channel index |
ulalume3@11 | 467 | within the Raw Lidar Data input file and the channel ID in |
ulalume3@11 | 468 | SCC_DB. To fill this variable the user has to know which channel IDs |
ulalume3@11 | 469 | in SCC_DB correspond to his lidar channels. For this purpose the |
ulalume3@11 | 470 | SCC, in its final version will provide to the user a special tool to |
ulalume3@11 | 471 | get these channel IDs through a Web interface. At the moment this |
ulalume3@11 | 472 | interface is not yet available and these channel IDs will be |
ulalume3@11 | 473 | communicated directly to the user by the NA5 people.</p> |
ulalume3@11 | 474 | <p>Anyway to continue the example let’s suppose that the four lidar |
ulalume3@11 | 475 | channels taken into account are mapped into SCC_DB with the |
ulalume3@11 | 476 | following channel IDs:</p> |
ulalume3@11 | 477 | <table border="1" class="docutils"> |
ulalume3@11 | 478 | <colgroup> |
ulalume3@11 | 479 | <col width="30%" /> |
ulalume3@11 | 480 | <col width="70%" /> |
ulalume3@11 | 481 | </colgroup> |
ulalume3@11 | 482 | <tbody valign="top"> |
ulalume3@11 | 483 | <tr class="row-odd"><td>1064 nm</td> |
ulalume3@11 | 484 | <td><span class="math">\(\rightarrow\)</span> channel ID=7</td> |
ulalume3@11 | 485 | </tr> |
ulalume3@11 | 486 | <tr class="row-even"><td>532 cross</td> |
ulalume3@11 | 487 | <td><span class="math">\(\rightarrow\)</span> channel ID=5</td> |
ulalume3@11 | 488 | </tr> |
ulalume3@11 | 489 | <tr class="row-odd"><td>532 parallel</td> |
ulalume3@11 | 490 | <td><span class="math">\(\rightarrow\)</span> channel ID=6</td> |
ulalume3@11 | 491 | </tr> |
ulalume3@11 | 492 | <tr class="row-even"><td>607 nm</td> |
ulalume3@11 | 493 | <td><span class="math">\(\rightarrow\)</span> channel ID=8</td> |
ulalume3@11 | 494 | </tr> |
ulalume3@11 | 495 | </tbody> |
ulalume3@11 | 496 | </table> |
ulalume3@11 | 497 | <blockquote> |
ulalume3@11 | 498 | <div>In this case we have to define:</div></blockquote> |
ulalume3@11 | 499 | <div class="last highlight-python"><div class="highlight"><pre><span class="n">channel_ID</span> <span class="o">=</span> <span class="mi">7</span><span class="p">,</span> <span class="mi">5</span><span class="p">,</span> <span class="mi">6</span><span class="p">,</span> <span class="mi">8</span> <span class="p">;</span> |
ulalume3@11 | 500 | </pre></div> |
ulalume3@11 | 501 | </div> |
ulalume3@11 | 502 | </dd> |
ulalume3@11 | 503 | <dt>id_timescale(channels)</dt> |
ulalume3@11 | 504 | <dd><p class="first">This mandatory array is introduced to determine which time scale is |
ulalume3@11 | 505 | used for the acquisition of each lidar channel. In particular this |
ulalume3@11 | 506 | array defines the link between the channel index and the time scale |
ulalume3@11 | 507 | index. In our example we have two different time scales. Filling the |
ulalume3@11 | 508 | arrays <tt class="docutils literal"><span class="pre">Raw_Data_Start_Time</span></tt> and <tt class="docutils literal"><span class="pre">Raw_Data_Stop_Time</span></tt> we have |
ulalume3@11 | 509 | defined a time scale index of 0 for the time scale with steps of 60 |
ulalume3@11 | 510 | seconds and a time scale index of 1 for the other one with steps of |
ulalume3@11 | 511 | 30 seconds. In this way this array has to be set as:</p> |
ulalume3@11 | 512 | <div class="last highlight-python"><div class="highlight"><pre><span class="n">id_timescale</span> <span class="o">=</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span> <span class="p">;</span> |
ulalume3@11 | 513 | </pre></div> |
ulalume3@11 | 514 | </div> |
ulalume3@11 | 515 | </dd> |
ulalume3@11 | 516 | <dt>Laser_Pointing_Angle(scan_angles</dt> |
ulalume3@11 | 517 | <dd><p class="first">This mandatory array contains all the scan angles used in the |
ulalume3@11 | 518 | measurement. In our example we have only one scan angle of 5 degrees |
ulalume3@11 | 519 | with respect to the zenith, so we have to define:</p> |
ulalume3@11 | 520 | <div class="last highlight-python"><div class="highlight"><pre><span class="n">Laser_Pointing_Angle</span> <span class="o">=</span> <span class="mi">5</span> <span class="p">;</span> |
ulalume3@11 | 521 | </pre></div> |
ulalume3@11 | 522 | </div> |
ulalume3@11 | 523 | </dd> |
ulalume3@11 | 524 | <dt>Laser_Pointing_Angle_of_Profiles(time, nb_of_time_scales)</dt> |
ulalume3@11 | 525 | <dd><p class="first">This mandatory array is introduced to determine which scan angle is |
ulalume3@11 | 526 | used for the acquisition of each lidar profile. In particular this |
ulalume3@11 | 527 | array defines the link between the time and time scales indexes and |
ulalume3@11 | 528 | the scan angle index. In our example we have a single scan angle that |
ulalume3@11 | 529 | has to correspond to the scan angle index 0. So this array has to be |
ulalume3@11 | 530 | defined as:</p> |
ulalume3@11 | 531 | <div class="last highlight-python"><pre>Laser_Pointing_Angle_of_Profiles = |
ulalume3@11 | 532 | 0, 0, |
ulalume3@11 | 533 | 0, 0, |
ulalume3@11 | 534 | 0, 0, |
ulalume3@11 | 535 | 0, 0, |
ulalume3@11 | 536 | 0, 0, |
ulalume3@11 | 537 | _, 0, |
ulalume3@11 | 538 | _, 0, |
ulalume3@11 | 539 | _, 0, |
ulalume3@11 | 540 | _, 0, |
ulalume3@11 | 541 | _, 0 ;</pre> |
ulalume3@11 | 542 | </div> |
ulalume3@11 | 543 | </dd> |
ulalume3@11 | 544 | <dt>Laser_Shots(time, channels)</dt> |
ulalume3@11 | 545 | <dd><p class="first">This mandatory array stores the laser shots accumulated at each time |
ulalume3@11 | 546 | for each channel. In our example the number of laser shots |
ulalume3@11 | 547 | accumulated is 1500 for the 1064nm channels and 3000 for all the |
ulalume3@11 | 548 | other channels. Moreover the laser shots do not change with the time. |
ulalume3@11 | 549 | So we have to define this array as:</p> |
ulalume3@11 | 550 | <div class="last highlight-python"><pre>Laser_Shots = |
ulalume3@11 | 551 | 1500, 3000, 3000, 3000, |
ulalume3@11 | 552 | 1500, 3000, 3000, 3000, |
ulalume3@11 | 553 | 1500, 3000, 3000, 3000, |
ulalume3@11 | 554 | 1500, 3000, 3000, 3000, |
ulalume3@11 | 555 | 1500, 3000, 3000, 3000, |
ulalume3@11 | 556 | 1500, _, _, _, |
ulalume3@11 | 557 | 1500, _, _, _, |
ulalume3@11 | 558 | 1500, _, _, _, |
ulalume3@11 | 559 | 1500, _, _, _, |
ulalume3@11 | 560 | 1500, _, _, _ ;</pre> |
ulalume3@11 | 561 | </div> |
ulalume3@11 | 562 | </dd> |
ulalume3@11 | 563 | <dt>Emitted_Wavelength(channels)</dt> |
ulalume3@11 | 564 | <dd><p class="first">This optional array defines the link between the channel index and |
ulalume3@11 | 565 | the emission wavelength for each lidar channel. The wavelength has to |
ulalume3@11 | 566 | be expressed in nm. This information can be also taken from SCC_DB. |
ulalume3@11 | 567 | In our example we have:</p> |
ulalume3@11 | 568 | <div class="last highlight-python"><div class="highlight"><pre><span class="n">Emitted_Wavelength</span> <span class="o">=</span> <span class="mi">1064</span><span class="p">,</span> <span class="mi">532</span><span class="p">,</span> <span class="mi">532</span><span class="p">,</span> <span class="mi">532</span> <span class="p">;</span> |
ulalume3@11 | 569 | </pre></div> |
ulalume3@11 | 570 | </div> |
ulalume3@11 | 571 | </dd> |
ulalume3@11 | 572 | <dt>Detected_Wavelength(channels)</dt> |
ulalume3@11 | 573 | <dd><p class="first">This optional array defines the link between the channel index and |
ulalume3@11 | 574 | the detected wavelength for each lidar channel. Here detected |
ulalume3@11 | 575 | wavelength means the value of center of interferential filter |
ulalume3@11 | 576 | expressed in nm. This information can be also taken from SCC_DB. In |
ulalume3@11 | 577 | our example we have:</p> |
ulalume3@11 | 578 | <div class="last highlight-python"><div class="highlight"><pre><span class="n">Detected_Wavelength</span> <span class="o">=</span> <span class="mi">1064</span><span class="p">,</span> <span class="mi">532</span><span class="p">,</span> <span class="mi">532</span><span class="p">,</span> <span class="mi">607</span> <span class="p">;</span> |
ulalume3@11 | 579 | </pre></div> |
ulalume3@11 | 580 | </div> |
ulalume3@11 | 581 | </dd> |
ulalume3@11 | 582 | <dt>Raw_Data_Range_Resolution(channels)</dt> |
ulalume3@11 | 583 | <dd><p class="first">This optional array defines the link between the channel index and |
ulalume3@11 | 584 | the raw range resolution for each channel. If the scan angle is |
ulalume3@11 | 585 | different from zero this quantity is different from the vertical |
ulalume3@11 | 586 | resolution. More precisely if <span class="math">\(\alpha\)</span> is the scan angle used |
ulalume3@11 | 587 | and <span class="math">\(\Delta z\)</span> is the range resolution the vertical |
ulalume3@11 | 588 | resolution is calculated as <span class="math">\(\Delta |
ulalume3@11 | 589 | z'=\Delta z \cos\alpha\)</span>. This array has to be filled with |
ulalume3@11 | 590 | <span class="math">\(\Delta z\)</span> and not with <span class="math">\(\Delta z'\)</span>. The unit is |
ulalume3@11 | 591 | meters. This information can be also taken from SCC_DB. In our |
ulalume3@11 | 592 | example we have:</p> |
ulalume3@11 | 593 | <div class="last highlight-python"><div class="highlight"><pre><span class="n">Raw_Data_Range_Resolution</span> <span class="o">=</span> <span class="mf">7.5</span><span class="p">,</span> <span class="mf">15.0</span><span class="p">,</span> <span class="mf">15.0</span><span class="p">,</span> <span class="mf">15.0</span> <span class="p">;</span> |
ulalume3@11 | 594 | </pre></div> |
ulalume3@11 | 595 | </div> |
ulalume3@11 | 596 | </dd> |
ulalume3@11 | 597 | <dt>ID_Range(channels)</dt> |
ulalume3@11 | 598 | <dd><p class="first">This optional array defines if a particular channel is configured as |
ulalume3@11 | 599 | high, low or ultranear range channel. In particular a value 0 |
ulalume3@11 | 600 | indicates a low range channel, a value 1 a high range channel and a |
ulalume3@11 | 601 | value of 2 an ultranear range channel. If for a particular channel |
ulalume3@11 | 602 | you don’t separate between high and low range channel, please set the |
ulalume3@11 | 603 | corresponding value to 1. This information can be also taken from |
ulalume3@11 | 604 | SCC_DB. In our case we have to set:</p> |
ulalume3@11 | 605 | <div class="last highlight-python"><div class="highlight"><pre><span class="n">ID_Range</span> <span class="o">=</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span> <span class="p">;</span> |
ulalume3@11 | 606 | </pre></div> |
ulalume3@11 | 607 | </div> |
ulalume3@11 | 608 | </dd> |
ulalume3@11 | 609 | <dt>Scattering_Mechanism(channels)</dt> |
ulalume3@11 | 610 | <dd><p class="first">This optional array defines the scattering mechanism involved in |
ulalume3@11 | 611 | each lidar channel. In particular the following values are adopted:</p> |
ulalume3@11 | 612 | <table border="1" class="docutils"> |
ulalume3@11 | 613 | <colgroup> |
ulalume3@11 | 614 | <col width="6%" /> |
ulalume3@11 | 615 | <col width="94%" /> |
ulalume3@11 | 616 | </colgroup> |
ulalume3@11 | 617 | <tbody valign="top"> |
ulalume3@11 | 618 | <tr class="row-odd"><td>0</td> |
ulalume3@11 | 619 | <td><span class="math">\(\rightarrow\)</span> Total elastic backscatter</td> |
ulalume3@11 | 620 | </tr> |
ulalume3@11 | 621 | <tr class="row-even"><td>1</td> |
ulalume3@11 | 622 | <td><span class="math">\(\rightarrow\)</span> <span class="math">\(N_2\)</span> vibrational Raman backscatter</td> |
ulalume3@11 | 623 | </tr> |
ulalume3@11 | 624 | <tr class="row-odd"><td>2</td> |
ulalume3@11 | 625 | <td><span class="math">\(\rightarrow\)</span> Cross polarization elastic backscatter</td> |
ulalume3@11 | 626 | </tr> |
ulalume3@11 | 627 | <tr class="row-even"><td>3</td> |
ulalume3@11 | 628 | <td><span class="math">\(\rightarrow\)</span> Parallel polarization elastic backscatter</td> |
ulalume3@11 | 629 | </tr> |
ulalume3@11 | 630 | <tr class="row-odd"><td>4</td> |
ulalume3@11 | 631 | <td><span class="math">\(\rightarrow\)</span> <span class="math">\(H_2O\)</span> vibrational Raman backscatter</td> |
ulalume3@11 | 632 | </tr> |
ulalume3@11 | 633 | <tr class="row-even"><td>5</td> |
ulalume3@11 | 634 | <td><span class="math">\(\rightarrow\)</span> Rotational Raman Stokes line close to elastic line</td> |
ulalume3@11 | 635 | </tr> |
ulalume3@11 | 636 | <tr class="row-odd"><td>6</td> |
ulalume3@11 | 637 | <td><span class="math">\(\rightarrow\)</span> Rotational Raman Stokes line far from elastic line</td> |
ulalume3@11 | 638 | </tr> |
ulalume3@11 | 639 | <tr class="row-even"><td>7</td> |
ulalume3@11 | 640 | <td><span class="math">\(\rightarrow\)</span> Rotational Raman anti-Stokes line close to elastic line</td> |
ulalume3@11 | 641 | </tr> |
ulalume3@11 | 642 | <tr class="row-odd"><td>8</td> |
ulalume3@11 | 643 | <td><span class="math">\(\rightarrow\)</span> Rotational Raman anti-Stokes line far from elastic line</td> |
ulalume3@11 | 644 | </tr> |
ulalume3@11 | 645 | <tr class="row-even"><td>9</td> |
ulalume3@11 | 646 | <td><span class="math">\(\rightarrow\)</span> Rotational Raman Stokes and anti-Stokes lines close to elastic line</td> |
ulalume3@11 | 647 | </tr> |
ulalume3@11 | 648 | <tr class="row-odd"><td>10</td> |
ulalume3@11 | 649 | <td><span class="math">\(\rightarrow\)</span> Rotational Raman Stokes and anti-Stokes lines far from elastic line</td> |
ulalume3@11 | 650 | </tr> |
ulalume3@11 | 651 | </tbody> |
ulalume3@11 | 652 | </table> |
ulalume3@11 | 653 | <p>This information can be also taken from SCC_DB. In our example we have:</p> |
ulalume3@11 | 654 | <div class="last highlight-python"><div class="highlight"><pre><span class="n">Scattering_Mechanism</span> <span class="o">=</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">,</span> <span class="mi">1</span> <span class="p">;</span> |
ulalume3@11 | 655 | </pre></div> |
ulalume3@11 | 656 | </div> |
ulalume3@11 | 657 | </dd> |
ulalume3@11 | 658 | <dt>Acquisition_Mode(channels)</dt> |
ulalume3@11 | 659 | <dd><p class="first">This optional array defines the acquisition mode (analog or |
ulalume3@11 | 660 | photoncounting) involved in each lidar channel. In particular a value |
ulalume3@11 | 661 | of 0 means analog mode and 1 photoncounting mode. This information |
ulalume3@11 | 662 | can be also taken from SCC_DB. In our example we have:</p> |
ulalume3@11 | 663 | <div class="last highlight-python"><div class="highlight"><pre><span class="n">Acquisition_Mode</span> <span class="o">=</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span> <span class="p">;</span> |
ulalume3@11 | 664 | </pre></div> |
ulalume3@11 | 665 | </div> |
ulalume3@11 | 666 | </dd> |
ulalume3@11 | 667 | <dt>Laser_Repetition_Rate(channels)</dt> |
ulalume3@11 | 668 | <dd><p class="first">This optional array defines the repetition rate in Hz used to |
ulalume3@11 | 669 | acquire each lidar channel. This information can be also taken from |
ulalume3@11 | 670 | SCC_DB. In our example we are supposing we have only one laser with |
ulalume3@11 | 671 | a repetition rate of 50 Hz so we have to set:</p> |
ulalume3@11 | 672 | <div class="last highlight-python"><div class="highlight"><pre><span class="n">Laser_Repetition_Rate</span> <span class="o">=</span> <span class="mi">50</span><span class="p">,</span> <span class="mi">50</span><span class="p">,</span> <span class="mi">50</span><span class="p">,</span> <span class="mi">50</span> <span class="p">;</span> |
ulalume3@11 | 673 | </pre></div> |
ulalume3@11 | 674 | </div> |
ulalume3@11 | 675 | </dd> |
ulalume3@11 | 676 | <dt>Dead_Time(channels)</dt> |
ulalume3@11 | 677 | <dd><p class="first">This optional array defines the dead time in ns associated to each |
ulalume3@11 | 678 | lidar channel. The SCC will use the values given by this array to |
ulalume3@11 | 679 | correct the photoncounting signals for dead time. Of course for |
ulalume3@11 | 680 | analog signals no dead time correction will be applied (for analog |
ulalume3@11 | 681 | channels the corresponding dead time values have to be set to |
ulalume3@11 | 682 | undefined value). This information can be also taken from SCC_DB. In |
ulalume3@11 | 683 | our example the 1064 nm channel is acquired in analog mode so the |
ulalume3@11 | 684 | corresponding dead time value has to be undefined. If we suppose a |
ulalume3@11 | 685 | dead time of 10 ns for all other channels we have to set:</p> |
ulalume3@11 | 686 | <div class="last highlight-python"><div class="highlight"><pre><span class="n">Dead_Time</span> <span class="o">=</span> <span class="n">_</span><span class="p">,</span> <span class="mi">10</span><span class="p">,</span> <span class="mi">10</span><span class="p">,</span> <span class="mi">10</span> <span class="p">;</span> |
ulalume3@11 | 687 | </pre></div> |
ulalume3@11 | 688 | </div> |
ulalume3@11 | 689 | </dd> |
ulalume3@11 | 690 | <dt>Dead_Time_Corr_Type(channels</dt> |
ulalume3@11 | 691 | <dd><p class="first">This optional array defines which kind of dead time correction has |
ulalume3@11 | 692 | to be applied on each photoncounting channel. The SCC will correct |
ulalume3@11 | 693 | the data supposing a not-paralyzable channel if a value of 0 is found |
ulalume3@11 | 694 | while a paralyzable channel is supposed if a value of 1 is found. Of |
ulalume3@11 | 695 | course for analog signals no dead time correction will be applied and |
ulalume3@11 | 696 | so the corresponding values have to be set to undefined value. This |
ulalume3@11 | 697 | information can be also taken from SCC_DB. In our example the 1064 |
ulalume3@11 | 698 | nm channel is acquired in analog mode so the corresponding has to be |
ulalume3@11 | 699 | undefined. If we want to consider all the photoncounting signals as |
ulalume3@11 | 700 | not-paralyzable ones: we have to set:</p> |
ulalume3@11 | 701 | <div class="last highlight-python"><div class="highlight"><pre><span class="n">Dead_Time_Corr_Type</span> <span class="o">=</span> <span class="n">_</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span> <span class="p">;</span> |
ulalume3@11 | 702 | </pre></div> |
ulalume3@11 | 703 | </div> |
ulalume3@11 | 704 | </dd> |
ulalume3@11 | 705 | <dt>Trigger_Delay(channels)</dt> |
ulalume3@11 | 706 | <dd><p class="first">This optional array defines the delay (in ns) of the middle of the |
ulalume3@11 | 707 | first rangebin with respect to the output laser pulse for each lidar |
ulalume3@11 | 708 | channel. The SCC will use the values given by this array to correct |
ulalume3@11 | 709 | for trigger delay. This information can be also taken from SCC_DB. |
ulalume3@11 | 710 | Let’s suppose that in our example all the photoncounting channels are |
ulalume3@11 | 711 | not affected by this delay and only the analog channel at 1064nm is |
ulalume3@11 | 712 | acquired with a delay of 50ns. In this case we have to set:</p> |
ulalume3@11 | 713 | <div class="last highlight-python"><div class="highlight"><pre><span class="n">Trigger_Delay</span> <span class="o">=</span> <span class="mi">50</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span> <span class="p">;</span> |
ulalume3@11 | 714 | </pre></div> |
ulalume3@11 | 715 | </div> |
ulalume3@11 | 716 | </dd> |
ulalume3@11 | 717 | <dt>Background_Mode(channels</dt> |
ulalume3@11 | 718 | <dd><p class="first">This optional array defines how the atmospheric background has to be |
ulalume3@11 | 719 | subtracted from the lidar channel. Two options are available for the |
ulalume3@11 | 720 | calculation of atmospheric background:</p> |
ulalume3@11 | 721 | <ol class="arabic simple"> |
ulalume3@11 | 722 | <li>Average in the far field of lidar channel. In this case the value |
ulalume3@11 | 723 | of this variable has to be 1</li> |
ulalume3@11 | 724 | <li>Average within pre-trigger bins. In this case the value of this |
ulalume3@11 | 725 | variable has to be 0</li> |
ulalume3@11 | 726 | </ol> |
ulalume3@11 | 727 | <p>This information can be also taken from SCC_DB. Let’s suppose in our |
ulalume3@11 | 728 | example we use the pre-trigger for the 1064nm channel and the far |
ulalume3@11 | 729 | field for all other channels. In this case we have to set:</p> |
ulalume3@11 | 730 | <div class="last highlight-python"><div class="highlight"><pre><span class="n">Background_Mode</span> <span class="o">=</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span> <span class="p">;</span> |
ulalume3@11 | 731 | </pre></div> |
ulalume3@11 | 732 | </div> |
ulalume3@11 | 733 | </dd> |
ulalume3@11 | 734 | <dt>Background_Low(channels)</dt> |
ulalume3@11 | 735 | <dd><p class="first">This mandatory array defines the minimum altitude (in meters) to |
ulalume3@11 | 736 | consider in calculating the atmospheric background for each channel. |
ulalume3@11 | 737 | In case pre-trigger mode is used the corresponding value has to be |
ulalume3@11 | 738 | set to the rangebin to be used as lower limit (within pre-trigger |
ulalume3@11 | 739 | region) for background calculation. In our example, if we want to |
ulalume3@11 | 740 | calculate the background between 30000 and 50000 meters for all |
ulalume3@11 | 741 | photoncounting channels and we want to use the first 500 pre-trigger |
ulalume3@11 | 742 | bins for the background calculation for the 1064nm channel we have to |
ulalume3@11 | 743 | set:</p> |
ulalume3@11 | 744 | <div class="last highlight-python"><div class="highlight"><pre><span class="n">Background_Low</span><span class="o">=</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">30000</span><span class="p">,</span> <span class="mi">30000</span><span class="p">,</span> <span class="mi">30000</span> <span class="p">;</span> |
ulalume3@11 | 745 | </pre></div> |
ulalume3@11 | 746 | </div> |
ulalume3@11 | 747 | </dd> |
ulalume3@11 | 748 | <dt>Background_High(channels)</dt> |
ulalume3@11 | 749 | <dd><p class="first">This mandatory array defines the maximum altitude (in meters) to |
ulalume3@11 | 750 | consider in calculating the atmospheric background for each channel. |
ulalume3@11 | 751 | In case pre-trigger mode is used the corresponding value has to be |
ulalume3@11 | 752 | set to the rangebin to be used as upper limit (within pre-trigger |
ulalume3@11 | 753 | region) for background calculation. In our example, if we want to |
ulalume3@11 | 754 | calculate the background between 30000 and 50000 meters for all |
ulalume3@11 | 755 | photoncounting channels and we want to use the first 500 pre-trigger |
ulalume3@11 | 756 | bins for the background calculation for the 1064nm channel we have to |
ulalume3@11 | 757 | set:</p> |
ulalume3@11 | 758 | <div class="last highlight-python"><div class="highlight"><pre><span class="n">Background_High</span> <span class="o">=</span> <span class="mi">500</span><span class="p">,</span> <span class="mi">50000</span><span class="p">,</span> <span class="mi">50000</span><span class="p">,</span> <span class="mi">50000</span> <span class="p">;</span> |
ulalume3@11 | 759 | </pre></div> |
ulalume3@11 | 760 | </div> |
ulalume3@11 | 761 | </dd> |
ulalume3@11 | 762 | <dt>Molecular_Calc</dt> |
ulalume3@11 | 763 | <dd><p class="first">This mandatory variable defines the way used by SCC to calculate the |
ulalume3@11 | 764 | molecular density profile. At the moment two options are available:</p> |
ulalume3@11 | 765 | <ol class="arabic simple"> |
ulalume3@11 | 766 | <li>US Standard Atmosphere 1976. In this case the value of this |
ulalume3@11 | 767 | variable has to be 0</li> |
ulalume3@11 | 768 | <li>Radiosounding. In this case the value of this variable has to be 1</li> |
ulalume3@11 | 769 | </ol> |
ulalume3@11 | 770 | <p>If we decide to use the option 1. we have to provide also the |
ulalume3@11 | 771 | measured pressure and temperature at lidar station level. Indeed if |
ulalume3@11 | 772 | we decide to use the option 2. a radiosounding file has to be |
ulalume3@11 | 773 | submitted separately in NetCDF format (the structure of this file is |
ulalume3@11 | 774 | summarized in table tab:sounding). Let’s suppose we want to use the |
ulalume3@11 | 775 | option 1. so:</p> |
ulalume3@11 | 776 | <div class="last highlight-python"><div class="highlight"><pre><span class="n">Molecular_Calc</span> <span class="o">=</span> <span class="mi">0</span> <span class="p">;</span> |
ulalume3@11 | 777 | </pre></div> |
ulalume3@11 | 778 | </div> |
ulalume3@11 | 779 | </dd> |
ulalume3@11 | 780 | <dt>Pressure_at_Lidar_Station</dt> |
ulalume3@11 | 781 | <dd><p class="first">Because we have chosen the US Standard Atmosphere for calculation of |
ulalume3@11 | 782 | the molecular density profile we have to give the pressure in hPa at |
ulalume3@11 | 783 | lidar station level:</p> |
ulalume3@11 | 784 | <div class="last highlight-python"><div class="highlight"><pre><span class="n">Pressure_at_Lidar_Station</span> <span class="o">=</span> <span class="mi">1010</span> <span class="p">;</span> |
ulalume3@11 | 785 | </pre></div> |
ulalume3@11 | 786 | </div> |
ulalume3@11 | 787 | </dd> |
ulalume3@11 | 788 | <dt>Temperature_at_Lidar_Station</dt> |
ulalume3@11 | 789 | <dd><p class="first">Because we have chosen the US Standard Atmosphere for calculation of |
ulalume3@11 | 790 | the molecular density profile we have to give the temperature in C at |
ulalume3@11 | 791 | lidar station level:</p> |
ulalume3@11 | 792 | <div class="last highlight-python"><div class="highlight"><pre><span class="n">Temperature_at_Lidar_Station</span> <span class="o">=</span> <span class="mf">19.8</span> <span class="p">;</span> |
ulalume3@11 | 793 | </pre></div> |
ulalume3@11 | 794 | </div> |
ulalume3@11 | 795 | </dd> |
ulalume3@11 | 796 | <dt>Depolarization_Factor(channels)</dt> |
ulalume3@11 | 797 | <dd><p class="first">This array is required only for lidar systems that use the two |
ulalume3@11 | 798 | depolarization channels for the backscatter retrieval. It represents |
ulalume3@11 | 799 | the factor <span class="math">\(f\)</span> to calculate the total backscatter signal |
ulalume3@11 | 800 | <span class="math">\(S_t\)</span> combining its cross <span class="math">\(S_c\)</span> and parallel |
ulalume3@11 | 801 | <span class="math">\(S_p\)</span> components: <span class="math">\(S_t=S_p+fS_c\)</span>. This factor is |
ulalume3@11 | 802 | mandatory only for systems acquiring <span class="math">\(S_c\)</span> and <span class="math">\(S_p\)</span> |
ulalume3@11 | 803 | and not <span class="math">\(S_t\)</span>. For systems acquiring <span class="math">\(S_c\)</span>, |
ulalume3@11 | 804 | <span class="math">\(S_p\)</span> and <span class="math">\(S_t\)</span> this factor is optional and it will |
ulalume3@11 | 805 | be used only for depolarizaton ratio calculation. Moreover only the |
ulalume3@11 | 806 | values of the array corresponding to cross polarization channels will |
ulalume3@11 | 807 | be considered; all other values will be not taken into account and |
ulalume3@11 | 808 | should be set to undefined value. In our example for the wavelength |
ulalume3@11 | 809 | 532nm we have only the cross and the parallel components and not the |
ulalume3@11 | 810 | total one. So we have to give the value of this factor only in |
ulalume3@11 | 811 | correspondence of the 532nm cross polarization channel that |
ulalume3@11 | 812 | corresponds to the channel index 1. Suppose that this factor is 0.88. |
ulalume3@11 | 813 | Moreover, because we don’t have any other depolarization channels we |
ulalume3@11 | 814 | have also to set all other values of the array to undefined value.</p> |
ulalume3@11 | 815 | <div class="last highlight-python"><div class="highlight"><pre><span class="n">Depolarization_Factor</span> <span class="o">=</span> <span class="n">_</span><span class="p">,</span><span class="mf">0.88</span><span class="p">,</span><span class="n">_</span><span class="p">,</span><span class="n">_</span> <span class="p">;</span> |
ulalume3@11 | 816 | </pre></div> |
ulalume3@11 | 817 | </div> |
ulalume3@11 | 818 | </dd> |
ulalume3@11 | 819 | <dt>LR_Input(channels)</dt> |
ulalume3@11 | 820 | <dd><p class="first">This array is required only for lidar channels for which elastic |
ulalume3@11 | 821 | backscatter retrieval has to be performed. It defines the lidar ratio |
ulalume3@11 | 822 | to be used within this retrieval. Two options are available:</p> |
ulalume3@11 | 823 | <ol class="arabic simple"> |
ulalume3@11 | 824 | <li>The user can submit a lidar ratio profile. In this case the value |
ulalume3@11 | 825 | of this variable has to be 0.</li> |
ulalume3@11 | 826 | <li>A fixed value of lidar ratio can be used. In this case the value |
ulalume3@11 | 827 | of this variable has to be 1.</li> |
ulalume3@11 | 828 | </ol> |
ulalume3@11 | 829 | <p>If we decide to use the option 1. a lidar ratio file has to be |
ulalume3@11 | 830 | submitted separately in NetCDF format (the structure of this file is |
ulalume3@11 | 831 | summarized in table tab:lr). If we decide to use the option 2. the |
ulalume3@11 | 832 | fixed value of lidar ratio will be taken from SCC_DB. In our example |
ulalume3@11 | 833 | we have to give a value of this array only for the 1064nm lidar |
ulalume3@11 | 834 | channel because for the 532nm we will be able to retrieve a Raman |
ulalume3@11 | 835 | backscatter coefficient. In case we want to use the fixed value |
ulalume3@11 | 836 | stored in SCC_DB we have to set:</p> |
ulalume3@11 | 837 | <div class="last highlight-python"><div class="highlight"><pre><span class="n">LR_Input</span> <span class="o">=</span> <span class="mi">1</span><span class="p">,</span><span class="n">_</span><span class="p">,</span><span class="n">_</span><span class="p">,</span><span class="n">_</span> <span class="p">;</span> |
ulalume3@11 | 838 | </pre></div> |
ulalume3@11 | 839 | </div> |
ulalume3@11 | 840 | </dd> |
ulalume3@11 | 841 | <dt>DAQ_Range(channels)</dt> |
ulalume3@11 | 842 | <dd><p class="first">This array is required only if one or more lidar signals are |
ulalume3@11 | 843 | acquired in analog mode. It gives the analog scale in mV used to |
ulalume3@11 | 844 | acquire the analog signals. In our example we have only the 1064nm |
ulalume3@11 | 845 | channel acquired in analog mode. If we have used a 100mV analog scale |
ulalume3@11 | 846 | to acquire this channel we have to set:</p> |
ulalume3@11 | 847 | <div class="last highlight-python"><div class="highlight"><pre><span class="n">DAQ_Range</span> <span class="o">=</span> <span class="mi">100</span><span class="p">,</span><span class="n">_</span><span class="p">,</span><span class="n">_</span><span class="p">,</span><span class="n">_</span> <span class="p">;</span> |
ulalume3@11 | 848 | </pre></div> |
ulalume3@11 | 849 | </div> |
ulalume3@11 | 850 | </dd> |
ulalume3@11 | 851 | </dl> |
ulalume3@11 | 852 | </div> |
ulalume3@11 | 853 | <div class="section" id="global-attributes"> |
ulalume3@11 | 854 | <h3>Global attributes<a class="headerlink" href="#global-attributes" title="Permalink to this headline">¶</a></h3> |
ulalume3@11 | 855 | <dl class="docutils"> |
ulalume3@11 | 856 | <dt>Measurement_ID</dt> |
ulalume3@11 | 857 | <dd><p class="first">This mandatory global attribute defines the measurement ID |
ulalume3@11 | 858 | corresponding to the actual lidar measurement. It is a string |
ulalume3@11 | 859 | composed by 12 characters. The first 8 characters give the start date |
ulalume3@11 | 860 | of measurement in the format YYYYMMDD. The next 2 characters give the |
ulalume3@11 | 861 | Earlinet call-sign of the station. The last 2 characters are used to |
ulalume3@11 | 862 | distinguish between different time-series within the same date. In |
ulalume3@11 | 863 | our example we have to set:</p> |
ulalume3@11 | 864 | <div class="last highlight-python"><div class="highlight"><pre><span class="n">Measurement_ID</span><span class="o">=</span> <span class="s">"20090130cc00"</span> <span class="p">;</span> |
ulalume3@11 | 865 | </pre></div> |
ulalume3@11 | 866 | </div> |
ulalume3@11 | 867 | </dd> |
ulalume3@11 | 868 | <dt>RawData_Start_Date</dt> |
ulalume3@11 | 869 | <dd><p class="first">This mandatory global attribute defines the start date of lidar |
ulalume3@11 | 870 | measurements in the format YYYYMMDD. In our case we have:</p> |
ulalume3@11 | 871 | <div class="last highlight-python"><div class="highlight"><pre><span class="n">RawData_Start_Date</span> <span class="o">=</span> <span class="s">"20090130"</span> <span class="p">;</span> |
ulalume3@11 | 872 | </pre></div> |
ulalume3@11 | 873 | </div> |
ulalume3@11 | 874 | </dd> |
ulalume3@11 | 875 | <dt>RawData_Start_Time_UT</dt> |
ulalume3@11 | 876 | <dd><p class="first">This mandatory global attribute defines the UT start time of lidar |
ulalume3@11 | 877 | measurements in the format HHMMSS. In our case we have:</p> |
ulalume3@11 | 878 | <div class="last highlight-python"><div class="highlight"><pre><span class="n">RawData_Start_Time_UT</span> <span class="o">=</span> <span class="s">"000001"</span> <span class="p">;</span> |
ulalume3@11 | 879 | </pre></div> |
ulalume3@11 | 880 | </div> |
ulalume3@11 | 881 | </dd> |
ulalume3@11 | 882 | <dt>RawData_Stop_Time_UT``</dt> |
ulalume3@11 | 883 | <dd><p class="first">This mandatory global attribute defines the UT stop time of lidar |
ulalume3@11 | 884 | measurements in the format HHMMSS. In our case we have:</p> |
ulalume3@11 | 885 | <div class="last highlight-python"><div class="highlight"><pre><span class="n">RawData_Stop_Time_UT</span> <span class="o">=</span> <span class="s">"000501"</span> <span class="p">;</span> |
ulalume3@11 | 886 | </pre></div> |
ulalume3@11 | 887 | </div> |
ulalume3@11 | 888 | </dd> |
ulalume3@11 | 889 | <dt>RawBck_Start_Date</dt> |
ulalume3@11 | 890 | <dd><p class="first">This optional global attribute defines the start date of dark |
ulalume3@11 | 891 | measurements in the format YYYYMMDD. In our case we have:</p> |
ulalume3@11 | 892 | <div class="last highlight-python"><div class="highlight"><pre><span class="n">RawBck_Start_Date</span> <span class="o">=</span> <span class="s">"20090129"</span> <span class="p">;</span> |
ulalume3@11 | 893 | </pre></div> |
ulalume3@11 | 894 | </div> |
ulalume3@11 | 895 | </dd> |
ulalume3@11 | 896 | <dt>RawBck_Start_Time_UT</dt> |
ulalume3@11 | 897 | <dd><p class="first">This optional global attribute defines the UT start time of dark |
ulalume3@11 | 898 | measurements in the format HHMMSS. In our case we have:</p> |
ulalume3@11 | 899 | <div class="last highlight-python"><div class="highlight"><pre><span class="n">RawBck_Start_Time_UT</span> <span class="o">=</span> <span class="s">"235001"</span> <span class="p">;</span> |
ulalume3@11 | 900 | </pre></div> |
ulalume3@11 | 901 | </div> |
ulalume3@11 | 902 | </dd> |
ulalume3@11 | 903 | <dt>RawBck_Stop_Time_UT</dt> |
ulalume3@11 | 904 | <dd><p class="first">This optional global attribute defines the UT stop time of dark |
ulalume3@11 | 905 | measurements in the format HHMMSS. In our case we have:</p> |
ulalume3@11 | 906 | <div class="last highlight-python"><div class="highlight"><pre><span class="n">RawBck_Stop_Time_UT</span> <span class="o">=</span> <span class="s">"235301"</span> <span class="p">;</span> |
ulalume3@11 | 907 | </pre></div> |
ulalume3@11 | 908 | </div> |
ulalume3@11 | 909 | </dd> |
ulalume3@11 | 910 | </dl> |
ulalume3@11 | 911 | </div> |
ulalume3@11 | 912 | </div> |
ulalume3@11 | 913 | <div class="section" id="example-of-file-cdl-format"> |
ulalume3@11 | 914 | <h2>Example of file (CDL format)<a class="headerlink" href="#example-of-file-cdl-format" title="Permalink to this headline">¶</a></h2> |
ulalume3@11 | 915 | <p>To summarize we have the following NetCDF Raw Lidar Data file (in CDL |
ulalume3@11 | 916 | format):</p> |
ulalume3@11 | 917 | <div class="highlight-python"><pre>dimensions: |
ulalume3@11 | 918 | points = 5000 ; |
ulalume3@11 | 919 | channels = 4 ; |
ulalume3@11 | 920 | time = UNLIMITED ; // (10 currently) |
ulalume3@11 | 921 | nb_of_time_scales = 2 ; |
ulalume3@11 | 922 | scan_angles = 1 ; |
ulalume3@11 | 923 | time_bck = 6 ; |
ulalume3@11 | 924 | variables: |
ulalume3@11 | 925 | int channel_ID(channels) ; |
ulalume3@11 | 926 | int Laser_Repetition_Rate(channels) ; |
ulalume3@11 | 927 | double Laser_Pointing_Angle(scan_angles) ; |
ulalume3@11 | 928 | int ID_Range(channels) ; |
ulalume3@11 | 929 | int Scattering_Mechanism(channels) ; |
ulalume3@11 | 930 | double Emitted_Wavelength(channels) ; |
ulalume3@11 | 931 | double Detected_Wavelength(channels) ; |
ulalume3@11 | 932 | double Raw_Data_Range_Resolution(channels) ; |
ulalume3@11 | 933 | int Background_Mode(channels) ; |
ulalume3@11 | 934 | double Background_Low(channels) ; |
ulalume3@11 | 935 | double Background_High(channels) ; |
ulalume3@11 | 936 | int Molecular_Calc ; |
ulalume3@11 | 937 | double Pressure_at_Lidar_Station ; |
ulalume3@11 | 938 | double Temperature_at_Lidar_Station ; |
ulalume3@11 | 939 | int id_timescale(channels) ; |
ulalume3@11 | 940 | double Dead_Time(channels) ; |
ulalume3@11 | 941 | int Dead_Time_Corr_Type(channels) ; |
ulalume3@11 | 942 | int Acquisition_Mode(channels) ; |
ulalume3@11 | 943 | double Trigger_Delay(channels) ; |
ulalume3@11 | 944 | int LR_Input(channels) ; |
ulalume3@11 | 945 | int Laser_Pointing_Angle_of_Profiles(time, nb_of_time_scales) ; |
ulalume3@11 | 946 | int Raw_Data_Start_Time(time, nb_of_time_scales) ; |
ulalume3@11 | 947 | int Raw_Data_Stop_Time(time, nb_of_time_scales) ; |
ulalume3@11 | 948 | int Raw_Bck_Start_Time(time_bck, nb_of_time_scales) ; |
ulalume3@11 | 949 | int Raw_Bck_Stop_Time(time_bck, nb_of_time_scales) ; |
ulalume3@11 | 950 | int Laser_Shots(time, channels) ; |
ulalume3@11 | 951 | double Raw_Lidar_Data(time, channels, points) ; |
ulalume3@11 | 952 | double Background_Profile(time_bck, channels, points) ; |
ulalume3@11 | 953 | double DAQ_Range(channels) ; |
ulalume3@11 | 954 | |
ulalume3@11 | 955 | // global attributes: |
ulalume3@11 | 956 | :Measurement_ID = "20090130cc00" ; |
ulalume3@11 | 957 | :RawData_Start_Date = "20090130" ; |
ulalume3@11 | 958 | :RawData_Start_Time_UT = "000001" ; |
ulalume3@11 | 959 | :RawData_Stop_Time_UT = "000501" ; |
ulalume3@11 | 960 | :RawBck_Start_Date = "20090129" ; |
ulalume3@11 | 961 | :RawBck_Start_Time_UT = "235001" ; |
ulalume3@11 | 962 | :RawBck_Stop_Time_UT = "235301" ; |
ulalume3@11 | 963 | |
ulalume3@11 | 964 | data: |
ulalume3@11 | 965 | |
ulalume3@11 | 966 | channel_ID = 7, 5, 6, 8 ; |
ulalume3@11 | 967 | |
ulalume3@11 | 968 | Laser_Repetition_Rate = 50, 50, 50, 50 ; |
ulalume3@11 | 969 | |
ulalume3@11 | 970 | Laser_Pointing_Angle = 5 ; |
ulalume3@11 | 971 | |
ulalume3@11 | 972 | ID_Range = 1, 1, 1, 1 ; |
ulalume3@11 | 973 | |
ulalume3@11 | 974 | Scattering_Mechanism = 0, 2, 3, 1 ; |
ulalume3@11 | 975 | |
ulalume3@11 | 976 | Emitted_Wavelength = 1064, 532, 532, 532 ; |
ulalume3@11 | 977 | |
ulalume3@11 | 978 | Detected_Wavelength = 1064, 532, 532, 607 ; |
ulalume3@11 | 979 | |
ulalume3@11 | 980 | Raw_Data_Range_Resolution = 7.5, 15, 15, 15 ; |
ulalume3@11 | 981 | |
ulalume3@11 | 982 | Background_Mode = 0, 1, 1, 1 ; |
ulalume3@11 | 983 | |
ulalume3@11 | 984 | Background_Low = 0, 30000, 30000, 30000 ; |
ulalume3@11 | 985 | |
ulalume3@11 | 986 | Background_High = 500, 50000, 50000, 50000 ; |
ulalume3@11 | 987 | |
ulalume3@11 | 988 | Molecular_Calc = 0 ; |
ulalume3@11 | 989 | |
ulalume3@11 | 990 | Pressure_at_Lidar_Station = 1010 ; |
ulalume3@11 | 991 | |
ulalume3@11 | 992 | Temperature_at_Lidar_Station = 19.8 ; |
ulalume3@11 | 993 | |
ulalume3@11 | 994 | id_timescale = 1, 0, 0, 0 ; |
ulalume3@11 | 995 | |
ulalume3@11 | 996 | Dead_Time = _, 10, 10, 10 ; |
ulalume3@11 | 997 | |
ulalume3@11 | 998 | Dead_Time_Corr_Type = _, 0, 0, 0 ; |
ulalume3@11 | 999 | |
ulalume3@11 | 1000 | Acquisition_Mode = 0, 1, 1, 1 ; |
ulalume3@11 | 1001 | |
ulalume3@11 | 1002 | Trigger_Delay = 50, 0, 0, 0 ; |
ulalume3@11 | 1003 | |
ulalume3@11 | 1004 | LR_Input = 1,_,_,_ ; |
ulalume3@11 | 1005 | |
ulalume3@11 | 1006 | DAQ_Range = 100,_,_,_ ; |
ulalume3@11 | 1007 | |
ulalume3@11 | 1008 | Laser_Pointing_Angle_of_Profiles = |
ulalume3@11 | 1009 | 0, 0, |
ulalume3@11 | 1010 | 0, 0, |
ulalume3@11 | 1011 | 0, 0, |
ulalume3@11 | 1012 | 0, 0, |
ulalume3@11 | 1013 | 0, 0, |
ulalume3@11 | 1014 | _, 0, |
ulalume3@11 | 1015 | _, 0, |
ulalume3@11 | 1016 | _, 0, |
ulalume3@11 | 1017 | _, 0, |
ulalume3@11 | 1018 | _, 0 ; |
ulalume3@11 | 1019 | |
ulalume3@11 | 1020 | |
ulalume3@11 | 1021 | Raw_Data_Start_Time = |
ulalume3@11 | 1022 | 0, 0, |
ulalume3@11 | 1023 | 60, 30, |
ulalume3@11 | 1024 | 120, 60, |
ulalume3@11 | 1025 | 180, 90, |
ulalume3@11 | 1026 | 240, 120, |
ulalume3@11 | 1027 | _, 150, |
ulalume3@11 | 1028 | _, 180, |
ulalume3@11 | 1029 | _, 210, |
ulalume3@11 | 1030 | _, 240, |
ulalume3@11 | 1031 | _, 270 ; |
ulalume3@11 | 1032 | |
ulalume3@11 | 1033 | Raw_Data_Stop_Time = |
ulalume3@11 | 1034 | 60, 30, |
ulalume3@11 | 1035 | 120, 60, |
ulalume3@11 | 1036 | 180, 90, |
ulalume3@11 | 1037 | 240, 120, |
ulalume3@11 | 1038 | 300, 150, |
ulalume3@11 | 1039 | _, 180, |
ulalume3@11 | 1040 | _, 210, |
ulalume3@11 | 1041 | _, 240, |
ulalume3@11 | 1042 | _, 270, |
ulalume3@11 | 1043 | _, 300 ; |
ulalume3@11 | 1044 | |
ulalume3@11 | 1045 | |
ulalume3@11 | 1046 | Raw_Bck_Start_Time = |
ulalume3@11 | 1047 | 0, 0, |
ulalume3@11 | 1048 | 60, 30, |
ulalume3@11 | 1049 | 120, 60, |
ulalume3@11 | 1050 | _, 90, |
ulalume3@11 | 1051 | _, 120, |
ulalume3@11 | 1052 | _, 150; |
ulalume3@11 | 1053 | |
ulalume3@11 | 1054 | |
ulalume3@11 | 1055 | Raw_Bck_Stop_Time = |
ulalume3@11 | 1056 | 60, 30, |
ulalume3@11 | 1057 | 120, 60, |
ulalume3@11 | 1058 | 180, 90, |
ulalume3@11 | 1059 | _, 120, |
ulalume3@11 | 1060 | _, 150, |
ulalume3@11 | 1061 | _, 180 ; |
ulalume3@11 | 1062 | |
ulalume3@11 | 1063 | |
ulalume3@11 | 1064 | Laser_Shots = |
ulalume3@11 | 1065 | 1500, 3000, 3000, 3000, |
ulalume3@11 | 1066 | 1500, 3000, 3000, 3000, |
ulalume3@11 | 1067 | 1500, 3000, 3000, 3000, |
ulalume3@11 | 1068 | 1500, 3000, 3000, 3000, |
ulalume3@11 | 1069 | 1500, 3000, 3000, 3000, |
ulalume3@11 | 1070 | 1500, _, _, _, |
ulalume3@11 | 1071 | 1500, _, _, _, |
ulalume3@11 | 1072 | 1500, _, _, _, |
ulalume3@11 | 1073 | 1500, _, _, _, |
ulalume3@11 | 1074 | 1500, _, _, _ ; |
ulalume3@11 | 1075 | |
ulalume3@11 | 1076 | |
ulalume3@11 | 1077 | Raw_Lidar_Data = ... |
ulalume3@11 | 1078 | |
ulalume3@11 | 1079 | Background_Profile = ...</pre> |
ulalume3@11 | 1080 | </div> |
ulalume3@11 | 1081 | <p>Please keep in mind that in case you submit a file like the previous one |
ulalume3@11 | 1082 | all the parameters present in it will be used by the SCC even if you |
ulalume3@11 | 1083 | have different values for the same parameters within the SCC_DB. If you |
ulalume3@11 | 1084 | want to use the values already stored in SCC_DB (this should be the |
ulalume3@11 | 1085 | usual way to use SCC) the Raw Lidar Data input file has to be |
ulalume3@11 | 1086 | modified as follows:</p> |
ulalume3@11 | 1087 | <div class="highlight-python"><pre>dimensions: |
ulalume3@11 | 1088 | points = 5000 ; |
ulalume3@11 | 1089 | channels = 4 ; |
ulalume3@11 | 1090 | time = UNLIMITED ; // (10 currently) |
ulalume3@11 | 1091 | nb_of_time_scales = 2 ; |
ulalume3@11 | 1092 | scan_angles = 1 ; |
ulalume3@11 | 1093 | time_bck = 6 ; |
ulalume3@11 | 1094 | variables: |
ulalume3@11 | 1095 | int channel_ID(channels) ; |
ulalume3@11 | 1096 | double Laser_Pointing_Angle(scan_angles) ; |
ulalume3@11 | 1097 | double Background_Low(channels) ; |
ulalume3@11 | 1098 | double Background_High(channels) ; |
ulalume3@11 | 1099 | int Molecular_Calc ; |
ulalume3@11 | 1100 | double Pressure_at_Lidar_Station ; |
ulalume3@11 | 1101 | double Temperature_at_Lidar_Station ; |
ulalume3@11 | 1102 | int id_timescale(channels) ; |
ulalume3@11 | 1103 | int Laser_Pointing_Angle_of_Profiles(time, nb_of_time_scales) ; |
ulalume3@11 | 1104 | int Raw_Data_Start_Time(time, nb_of_time_scales) ; |
ulalume3@11 | 1105 | int Raw_Data_Stop_Time(time, nb_of_time_scales) ; |
ulalume3@11 | 1106 | int Raw_Bck_Start_Time(time_bck, nb_of_time_scales) ; |
ulalume3@11 | 1107 | int Raw_Bck_Stop_Time(time_bck, nb_of_time_scales) ; |
ulalume3@11 | 1108 | int LR_Input(channels) ; |
ulalume3@11 | 1109 | int Laser_Shots(time, channels) ; |
ulalume3@11 | 1110 | double Raw_Lidar_Data(time, channels, points) ; |
ulalume3@11 | 1111 | double Background_Profile(time_bck, channels, points) ; |
ulalume3@11 | 1112 | double DAQ_Range(channels) ; |
ulalume3@11 | 1113 | |
ulalume3@11 | 1114 | // global attributes: |
ulalume3@11 | 1115 | :Measurement_ID = "20090130cc00" ; |
ulalume3@11 | 1116 | :RawData_Start_Date = "20090130" ; |
ulalume3@11 | 1117 | :RawData_Start_Time_UT = "000001" ; |
ulalume3@11 | 1118 | :RawData_Stop_Time_UT = "000501" ; |
ulalume3@11 | 1119 | :RawBck_Start_Date = "20090129" ; |
ulalume3@11 | 1120 | :RawBck_Start_Time_UT = "235001" ; |
ulalume3@11 | 1121 | :RawBck_Stop_Time_UT = "235301" ; |
ulalume3@11 | 1122 | |
ulalume3@11 | 1123 | data: |
ulalume3@11 | 1124 | |
ulalume3@11 | 1125 | channel_ID = 7, 5, 6, 8 ; |
ulalume3@11 | 1126 | |
ulalume3@11 | 1127 | Laser_Pointing_Angle = 5 ; |
ulalume3@11 | 1128 | |
ulalume3@11 | 1129 | Background_Low = 0, 30000, 30000, 30000 ; |
ulalume3@11 | 1130 | |
ulalume3@11 | 1131 | Background_High = 500, 50000, 50000, 50000 ; |
ulalume3@11 | 1132 | |
ulalume3@11 | 1133 | Molecular_Calc = 0 ; |
ulalume3@11 | 1134 | |
ulalume3@11 | 1135 | Pressure_at_Lidar_Station = 1010 ; |
ulalume3@11 | 1136 | |
ulalume3@11 | 1137 | Temperature_at_Lidar_Station = 19.8 ; |
ulalume3@11 | 1138 | |
ulalume3@11 | 1139 | id_timescale = 1, 0, 0, 0 ; |
ulalume3@11 | 1140 | |
ulalume3@11 | 1141 | LR_Input = 1,_,_,_ ; |
ulalume3@11 | 1142 | |
ulalume3@11 | 1143 | DAQ_Range = 100,_,_,_ ; |
ulalume3@11 | 1144 | |
ulalume3@11 | 1145 | Laser_Pointing_Angle_of_Profiles = |
ulalume3@11 | 1146 | 0, 0, |
ulalume3@11 | 1147 | 0, 0, |
ulalume3@11 | 1148 | 0, 0, |
ulalume3@11 | 1149 | 0, 0, |
ulalume3@11 | 1150 | 0, 0, |
ulalume3@11 | 1151 | _, 0, |
ulalume3@11 | 1152 | _, 0, |
ulalume3@11 | 1153 | _, 0, |
ulalume3@11 | 1154 | _, 0, |
ulalume3@11 | 1155 | _, 0 ; |
ulalume3@11 | 1156 | |
ulalume3@11 | 1157 | |
ulalume3@11 | 1158 | Raw_Data_Start_Time = |
ulalume3@11 | 1159 | 0, 0, |
ulalume3@11 | 1160 | 60, 30, |
ulalume3@11 | 1161 | 120, 60, |
ulalume3@11 | 1162 | 180, 90, |
ulalume3@11 | 1163 | 240, 120, |
ulalume3@11 | 1164 | _, 150, |
ulalume3@11 | 1165 | _, 180, |
ulalume3@11 | 1166 | _, 210, |
ulalume3@11 | 1167 | _, 240, |
ulalume3@11 | 1168 | _, 270 ; |
ulalume3@11 | 1169 | |
ulalume3@11 | 1170 | Raw_Data_Stop_Time = |
ulalume3@11 | 1171 | 60, 30, |
ulalume3@11 | 1172 | 120, 60, |
ulalume3@11 | 1173 | 180, 90, |
ulalume3@11 | 1174 | 240, 120, |
ulalume3@11 | 1175 | 300, 150, |
ulalume3@11 | 1176 | _, 180, |
ulalume3@11 | 1177 | _, 210, |
ulalume3@11 | 1178 | _, 240, |
ulalume3@11 | 1179 | _, 270, |
ulalume3@11 | 1180 | _, 300 ; |
ulalume3@11 | 1181 | |
ulalume3@11 | 1182 | |
ulalume3@11 | 1183 | Raw_Bck_Start_Time = |
ulalume3@11 | 1184 | 0, 0, |
ulalume3@11 | 1185 | 60, 30, |
ulalume3@11 | 1186 | 120, 60, |
ulalume3@11 | 1187 | _, 90, |
ulalume3@11 | 1188 | _, 120, |
ulalume3@11 | 1189 | _, 150; |
ulalume3@11 | 1190 | |
ulalume3@11 | 1191 | |
ulalume3@11 | 1192 | Raw_Bck_Stop_Time = |
ulalume3@11 | 1193 | 60, 30, |
ulalume3@11 | 1194 | 120, 60, |
ulalume3@11 | 1195 | 180, 90, |
ulalume3@11 | 1196 | _, 120, |
ulalume3@11 | 1197 | _, 150, |
ulalume3@11 | 1198 | _, 180 ; |
ulalume3@11 | 1199 | |
ulalume3@11 | 1200 | |
ulalume3@11 | 1201 | Laser_Shots = |
ulalume3@11 | 1202 | 1500, 3000, 3000, 3000, |
ulalume3@11 | 1203 | 1500, 3000, 3000, 3000, |
ulalume3@11 | 1204 | 1500, 3000, 3000, 3000, |
ulalume3@11 | 1205 | 1500, 3000, 3000, 3000, |
ulalume3@11 | 1206 | 1500, 3000, 3000, 3000, |
ulalume3@11 | 1207 | 1500, _, _, _, |
ulalume3@11 | 1208 | 1500, _, _, _, |
ulalume3@11 | 1209 | 1500, _, _, _, |
ulalume3@11 | 1210 | 1500, _, _, _, |
ulalume3@11 | 1211 | 1500, _, _, _ ; |
ulalume3@11 | 1212 | |
ulalume3@11 | 1213 | |
ulalume3@11 | 1214 | Raw_Lidar_Data = ... |
ulalume3@11 | 1215 | |
ulalume3@11 | 1216 | Background_Profile = ...</pre> |
ulalume3@11 | 1217 | </div> |
ulalume3@11 | 1218 | <p>This example file contains the minimum collection of mandatory |
ulalume3@11 | 1219 | information that has to be found within the Raw Lidar Data input |
ulalume3@11 | 1220 | file. If it is really necessary, the user can decide to add to these |
ulalume3@11 | 1221 | mandatory parameters any number of additional parameters considered in |
ulalume3@11 | 1222 | the previous example.</p> |
ulalume3@11 | 1223 | <p>Finally, suppose we want to make the following changes with respect to |
ulalume3@11 | 1224 | the previous example:</p> |
ulalume3@11 | 1225 | <ol class="arabic simple"> |
ulalume3@11 | 1226 | <li>use a sounding file for molecular density calculation instead of “US |
ulalume3@11 | 1227 | Standar Atmosphere 1976”</li> |
ulalume3@11 | 1228 | <li>supply a lidar ratio profile to use in elastic backscatter retrieval |
ulalume3@11 | 1229 | instead of a fixed value</li> |
ulalume3@11 | 1230 | <li>provide a overlap function for overlap correction</li> |
ulalume3@11 | 1231 | </ol> |
ulalume3@11 | 1232 | <p>In this case we have to generate the following NetCDF additional files:</p> |
ulalume3@11 | 1233 | <dl class="docutils"> |
ulalume3@11 | 1234 | <dt>rs_20090130cc00.nc</dt> |
ulalume3@11 | 1235 | <dd>The name of Sounding Data file has to be computed as follows: |
ulalume3@11 | 1236 | <tt class="docutils literal"><span class="pre">"rs_"``+``Measurement_ID</span></tt> |
ulalume3@11 | 1237 | The structure of this file is summarized in table tab:sounding.</dd> |
ulalume3@11 | 1238 | <dt>ov_20090130cc00.nc</dt> |
ulalume3@11 | 1239 | <dd>The name of Overlap file has to be computed as follows: |
ulalume3@11 | 1240 | <tt class="docutils literal"><span class="pre">"ov_"``+``Measurement_ID</span></tt> |
ulalume3@11 | 1241 | The structure of this file is summarized in table tab:overlap.</dd> |
ulalume3@11 | 1242 | <dt>lr_20090130cc00.nc</dt> |
ulalume3@11 | 1243 | <dd>The name of Lidar Ratio file has to be computed as follows: |
ulalume3@11 | 1244 | <tt class="docutils literal"><span class="pre">"lr_"``+``Measurement_ID</span></tt> |
ulalume3@11 | 1245 | The structure of this file is summarized in table tab:lr.</dd> |
ulalume3@11 | 1246 | </dl> |
ulalume3@11 | 1247 | <p>Moreover we need to apply the following changes to the Raw Lidar Data |
ulalume3@11 | 1248 | input file:</p> |
ulalume3@11 | 1249 | <ol class="arabic"> |
ulalume3@11 | 1250 | <li><p class="first">Change the value of the variable <tt class="docutils literal"><span class="pre">Molecular_Calc</span></tt> as follows:</p> |
ulalume3@11 | 1251 | <div class="highlight-python"><div class="highlight"><pre><span class="n">Molecular_Calc</span> <span class="o">=</span> <span class="mi">1</span> <span class="p">;</span> |
ulalume3@11 | 1252 | </pre></div> |
ulalume3@11 | 1253 | </div> |
ulalume3@11 | 1254 | <p>Of course the variables <tt class="docutils literal"><span class="pre">Pressure_at_Lidar_Station</span></tt> and |
ulalume3@11 | 1255 | <tt class="docutils literal"><span class="pre">Temperature_at_Lidar_Station</span></tt> are not necessary anymore.</p> |
ulalume3@11 | 1256 | </li> |
ulalume3@11 | 1257 | <li><p class="first">Change the values of the array <tt class="docutils literal"><span class="pre">LR_Input</span></tt> as follows:</p> |
ulalume3@11 | 1258 | <div class="highlight-python"><div class="highlight"><pre><span class="n">LR_Input</span> <span class="o">=</span> <span class="mi">0</span><span class="p">,</span><span class="n">_</span><span class="p">,</span><span class="n">_</span><span class="p">,</span><span class="n">_</span> <span class="p">;</span> |
ulalume3@11 | 1259 | </pre></div> |
ulalume3@11 | 1260 | </div> |
ulalume3@11 | 1261 | </li> |
ulalume3@11 | 1262 | <li><p class="first">Add the global attribute <tt class="docutils literal"><span class="pre">Sounding_File_Name</span></tt></p> |
ulalume3@11 | 1263 | <div class="highlight-python"><div class="highlight"><pre><span class="n">Sounding_File_Name</span> <span class="o">=</span> <span class="s">"rs_20090130cc00.nc"</span> <span class="p">;</span> |
ulalume3@11 | 1264 | </pre></div> |
ulalume3@11 | 1265 | </div> |
ulalume3@11 | 1266 | </li> |
ulalume3@11 | 1267 | </ol> |
ulalume3@11 | 1268 | <ol class="arabic" start="5"> |
ulalume3@11 | 1269 | <li><p class="first">Add the global attribute <tt class="docutils literal"><span class="pre">LR_File_Name</span></tt></p> |
ulalume3@11 | 1270 | <div class="highlight-python"><div class="highlight"><pre><span class="n">LR_File_Name</span> <span class="o">=</span> <span class="s">"lr_20090130cc00.nc"</span> <span class="p">;</span> |
ulalume3@11 | 1271 | </pre></div> |
ulalume3@11 | 1272 | </div> |
ulalume3@11 | 1273 | </li> |
ulalume3@11 | 1274 | <li><p class="first">Add the global attribute <tt class="docutils literal"><span class="pre">Overlap_File_Name</span></tt></p> |
ulalume3@11 | 1275 | <div class="highlight-python"><div class="highlight"><pre><span class="n">Overlap_File_Name</span> <span class="o">=</span> <span class="s">"ov_20090130cc00.nc"</span> <span class="p">;</span> |
ulalume3@11 | 1276 | </pre></div> |
ulalume3@11 | 1277 | </div> |
ulalume3@11 | 1278 | </li> |
ulalume3@11 | 1279 | </ol> |
ulalume3@11 | 1280 | </div> |
ulalume3@11 | 1281 | </div> |
ulalume3@11 | 1282 | |
ulalume3@11 | 1283 | |
ulalume3@11 | 1284 | </div> |
ulalume3@11 | 1285 | </div> |
ulalume3@11 | 1286 | </div> |
ulalume3@11 | 1287 | <div class="sphinxsidebar"> |
ulalume3@11 | 1288 | <div class="sphinxsidebarwrapper"> |
ulalume3@11 | 1289 | <h3><a href="index.html">Table Of Contents</a></h3> |
ulalume3@11 | 1290 | <ul> |
ulalume3@11 | 1291 | <li><a class="reference internal" href="#">The SCC netCDF file format</a><ul> |
ulalume3@11 | 1292 | <li><a class="reference internal" href="#rationale">Rationale</a></li> |
ulalume3@11 | 1293 | <li><a class="reference internal" href="#example">Example</a><ul> |
ulalume3@11 | 1294 | <li><a class="reference internal" href="#dimensions">Dimensions</a></li> |
ulalume3@11 | 1295 | <li><a class="reference internal" href="#variables">Variables</a></li> |
ulalume3@11 | 1296 | <li><a class="reference internal" href="#global-attributes">Global attributes</a></li> |
ulalume3@11 | 1297 | </ul> |
ulalume3@11 | 1298 | </li> |
ulalume3@11 | 1299 | <li><a class="reference internal" href="#example-of-file-cdl-format">Example of file (CDL format)</a></li> |
ulalume3@11 | 1300 | </ul> |
ulalume3@11 | 1301 | </li> |
ulalume3@11 | 1302 | </ul> |
ulalume3@11 | 1303 | |
ulalume3@11 | 1304 | <h4>Previous topic</h4> |
ulalume3@11 | 1305 | <p class="topless"><a href="details/viewing_measurements.html" |
ulalume3@11 | 1306 | title="previous chapter">View processing results</a></p> |
ulalume3@11 | 1307 | <h4>Next topic</h4> |
ulalume3@11 | 1308 | <p class="topless"><a href="user_management.html" |
ulalume3@11 | 1309 | title="next chapter">User management</a></p> |
ulalume3@11 | 1310 | <h3>This Page</h3> |
ulalume3@11 | 1311 | <ul class="this-page-menu"> |
ulalume3@11 | 1312 | <li><a href="_sources/netcdf_file.txt" |
ulalume3@11 | 1313 | rel="nofollow">Show Source</a></li> |
ulalume3@11 | 1314 | </ul> |
ulalume3@11 | 1315 | <div id="searchbox" style="display: none"> |
ulalume3@11 | 1316 | <h3>Quick search</h3> |
ulalume3@11 | 1317 | <form class="search" action="search.html" method="get"> |
ulalume3@11 | 1318 | <input type="text" name="q" /> |
ulalume3@11 | 1319 | <input type="submit" value="Go" /> |
ulalume3@11 | 1320 | <input type="hidden" name="check_keywords" value="yes" /> |
ulalume3@11 | 1321 | <input type="hidden" name="area" value="default" /> |
ulalume3@11 | 1322 | </form> |
ulalume3@11 | 1323 | <p class="searchtip" style="font-size: 90%"> |
ulalume3@11 | 1324 | Enter search terms or a module, class or function name. |
ulalume3@11 | 1325 | </p> |
ulalume3@11 | 1326 | </div> |
ulalume3@11 | 1327 | <script type="text/javascript">$('#searchbox').show(0);</script> |
ulalume3@11 | 1328 | </div> |
ulalume3@11 | 1329 | </div> |
ulalume3@11 | 1330 | <div class="clearer"></div> |
ulalume3@11 | 1331 | </div> |
ulalume3@11 | 1332 | <div class="related"> |
ulalume3@11 | 1333 | <h3>Navigation</h3> |
ulalume3@11 | 1334 | <ul> |
ulalume3@11 | 1335 | <li class="right" style="margin-right: 10px"> |
ulalume3@11 | 1336 | <a href="genindex.html" title="General Index" |
ulalume3@11 | 1337 | >index</a></li> |
ulalume3@11 | 1338 | <li class="right" > |
ulalume3@11 | 1339 | <a href="user_management.html" title="User management" |
ulalume3@11 | 1340 | >next</a> |</li> |
ulalume3@11 | 1341 | <li class="right" > |
ulalume3@11 | 1342 | <a href="details/viewing_measurements.html" title="View processing results" |
ulalume3@11 | 1343 | >previous</a> |</li> |
ulalume3@11 | 1344 | <li><a href="index.html">Single Calculus Chain 0.2 documentation</a> »</li> |
ulalume3@11 | 1345 | </ul> |
ulalume3@11 | 1346 | </div> |
ulalume3@11 | 1347 | <div class="footer"> |
ulalume3@11 | 1348 | © Copyright 2012, SCC team. |
ulalume3@11 | 1349 | Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 1.1.2. |
ulalume3@11 | 1350 | </div> |
ulalume3@11 | 1351 | </body> |
ulalume3@11 | 1352 | </html> |