Ignore:
Timestamp:
Mar 8, 2019, 10:00:34 AM (5 years ago)
Author:
Anne Philipp <anne.philipp@…>
Branches:
master, ctbto, dev
Children:
b4a4777
Parents:
8778c5a
Message:

deleted jobscripts for tracking and updated Sphinx doc

File:
1 edited

Legend:

Unmodified
Added
Removed
  • documentation/Sphinx/build/html/_modules/get_mars_data.html

    r2625ca8 rf66f990  
    220220    <span class="n">inspect</span><span class="o">.</span><span class="n">getfile</span><span class="p">(</span><span class="n">inspect</span><span class="o">.</span><span class="n">currentframe</span><span class="p">())))</span> <span class="o">+</span> <span class="s1">&#39;/../&#39;</span><span class="p">)</span>
    221221<span class="kn">import</span> <span class="nn">_config</span>
    222 <span class="kn">from</span> <span class="nn">tools</span> <span class="k">import</span> <span class="p">(</span><span class="n">my_error</span><span class="p">,</span> <span class="n">normal_exit</span><span class="p">,</span> <span class="n">get_cmdline_args</span><span class="p">,</span>
     222<span class="kn">from</span> <span class="nn">tools</span> <span class="k">import</span> <span class="p">(</span><span class="n">setup_controldata</span><span class="p">,</span> <span class="n">my_error</span><span class="p">,</span> <span class="n">normal_exit</span><span class="p">,</span> <span class="n">get_cmdline_args</span><span class="p">,</span>
    223223                   <span class="n">read_ecenv</span><span class="p">,</span> <span class="n">make_dir</span><span class="p">)</span>
    224224<span class="kn">from</span> <span class="nn">classes.EcFlexpart</span> <span class="k">import</span> <span class="n">EcFlexpart</span>
     
    227227
    228228<span class="k">try</span><span class="p">:</span>
    229     <span class="n">ecapi</span> <span class="o">=</span> <span class="kc">True</span>
     229    <span class="n">ec_api</span> <span class="o">=</span> <span class="kc">True</span>
    230230    <span class="kn">import</span> <span class="nn">ecmwfapi</span>
    231231<span class="k">except</span> <span class="ne">ImportError</span><span class="p">:</span>
    232     <span class="n">ecapi</span> <span class="o">=</span> <span class="kc">False</span>
     232    <span class="n">ec_api</span> <span class="o">=</span> <span class="kc">False</span>
     233
     234<span class="k">try</span><span class="p">:</span>
     235    <span class="n">cds_api</span> <span class="o">=</span> <span class="kc">True</span>
     236    <span class="kn">import</span> <span class="nn">cdsapi</span>
     237<span class="k">except</span> <span class="ne">ImportError</span><span class="p">:</span>
     238    <span class="n">cds_api</span> <span class="o">=</span> <span class="kc">False</span>
    233239<span class="c1"># ------------------------------------------------------------------------------</span>
    234240<span class="c1"># FUNCTION</span>
     
    248254<span class="sd">    &#39;&#39;&#39;</span>
    249255
    250     <span class="n">args</span> <span class="o">=</span> <span class="n">get_cmdline_args</span><span class="p">()</span>
    251     <span class="n">c</span> <span class="o">=</span> <span class="n">ControlFile</span><span class="p">(</span><span class="n">args</span><span class="o">.</span><span class="n">controlfile</span><span class="p">)</span>
    252 
    253     <span class="n">env_parameter</span> <span class="o">=</span> <span class="n">read_ecenv</span><span class="p">(</span><span class="n">_config</span><span class="o">.</span><span class="n">PATH_ECMWF_ENV</span><span class="p">)</span>
    254     <span class="n">c</span><span class="o">.</span><span class="n">assign_args_to_control</span><span class="p">(</span><span class="n">args</span><span class="p">)</span>
    255     <span class="n">c</span><span class="o">.</span><span class="n">assign_envs_to_control</span><span class="p">(</span><span class="n">env_parameter</span><span class="p">)</span>
    256     <span class="n">c</span><span class="o">.</span><span class="n">check_conditions</span><span class="p">(</span><span class="n">args</span><span class="o">.</span><span class="n">queue</span><span class="p">)</span>
    257 
     256    <span class="n">c</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="o">=</span> <span class="n">setup_controldata</span><span class="p">()</span>
    258257    <span class="n">get_mars_data</span><span class="p">(</span><span class="n">c</span><span class="p">)</span>
    259     <span class="n">normal_exit</span><span class="p">(</span><span class="n">c</span><span class="o">.</span><span class="n">mailops</span><span class="p">,</span> <span class="n">c</span><span class="o">.</span><span class="n">queue</span><span class="p">,</span> <span class="s1">&#39;Done!&#39;</span><span class="p">)</span>
     258    <span class="n">normal_exit</span><span class="p">(</span><span class="s1">&#39;Retrieving MARS data: Done!&#39;</span><span class="p">)</span>
    260259
    261260    <span class="k">return</span></div>
     
    278277
    279278<span class="sd">    &#39;&#39;&#39;</span>
    280     <span class="n">c</span><span class="o">.</span><span class="n">ecapi</span> <span class="o">=</span> <span class="n">ecapi</span>
     279    <span class="n">c</span><span class="o">.</span><span class="n">ec_api</span> <span class="o">=</span> <span class="n">ec_api</span>
     280    <span class="n">c</span><span class="o">.</span><span class="n">cds_api</span> <span class="o">=</span> <span class="n">cds_api</span>
    281281
    282282    <span class="k">if</span> <span class="ow">not</span> <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">exists</span><span class="p">(</span><span class="n">c</span><span class="o">.</span><span class="n">inputdir</span><span class="p">):</span>
     
    335335
    336336<div class="viewcode-block" id="mk_server"><a class="viewcode-back" href="../api.html#get_mars_data.mk_server">[docs]</a><span class="k">def</span> <span class="nf">mk_server</span><span class="p">(</span><span class="n">c</span><span class="p">):</span>
    337     <span class="sd">&#39;&#39;&#39;Creates server connection if ECMWF WebAPI is available.</span>
     337    <span class="sd">&#39;&#39;&#39;Creates a server connection with available python API.</span>
     338
     339<span class="sd">    Which API is used depends on availability and the dataset to be retrieved.</span>
     340<span class="sd">    The CDS API is used for ERA5 dataset no matter if the user is a member or</span>
     341<span class="sd">    a public user. ECMWF WebAPI is used for all other available datasets.</span>
    338342
    339343<span class="sd">    Parameters</span>
     
    345349<span class="sd">    Return</span>
    346350<span class="sd">    ------</span>
    347 <span class="sd">    server : ECMWFDataServer or ECMWFService</span>
    348 <span class="sd">        Connection to ECMWF server via python interface ECMWF WebAPI.</span>
    349 
    350 <span class="sd">    &#39;&#39;&#39;</span>
    351     <span class="k">if</span> <span class="n">c</span><span class="o">.</span><span class="n">ecapi</span><span class="p">:</span>
     351<span class="sd">    server : ECMWFDataServer, ECMWFService or Client</span>
     352<span class="sd">        Connection to ECMWF server via python interface ECMWF WebAPI or CDS API.</span>
     353
     354<span class="sd">    &#39;&#39;&#39;</span>
     355    <span class="k">if</span> <span class="n">cds_api</span> <span class="ow">and</span> <span class="p">(</span><span class="n">c</span><span class="o">.</span><span class="n">marsclass</span><span class="o">.</span><span class="n">upper</span><span class="p">()</span> <span class="o">==</span> <span class="s1">&#39;EA&#39;</span><span class="p">):</span>
     356        <span class="n">server</span> <span class="o">=</span> <span class="n">cdsapi</span><span class="o">.</span><span class="n">Client</span><span class="p">()</span>
     357        <span class="n">c</span><span class="o">.</span><span class="n">ec_api</span> <span class="o">=</span> <span class="kc">False</span>
     358    <span class="k">elif</span> <span class="n">c</span><span class="o">.</span><span class="n">ec_api</span><span class="p">:</span>
    352359        <span class="k">if</span> <span class="n">c</span><span class="o">.</span><span class="n">public</span><span class="p">:</span>
    353360            <span class="n">server</span> <span class="o">=</span> <span class="n">ecmwfapi</span><span class="o">.</span><span class="n">ECMWFDataServer</span><span class="p">()</span>
    354361        <span class="k">else</span><span class="p">:</span>
    355362            <span class="n">server</span> <span class="o">=</span> <span class="n">ecmwfapi</span><span class="o">.</span><span class="n">ECMWFService</span><span class="p">(</span><span class="s2">&quot;mars&quot;</span><span class="p">)</span>
     363        <span class="n">c</span><span class="o">.</span><span class="n">cds_api</span> <span class="o">=</span> <span class="kc">False</span>
    356364    <span class="k">else</span><span class="p">:</span>
    357365        <span class="n">server</span> <span class="o">=</span> <span class="kc">False</span>
    358366
    359     <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;Using ECMWF WebAPI: &#39;</span> <span class="o">+</span> <span class="nb">str</span><span class="p">(</span><span class="n">c</span><span class="o">.</span><span class="n">ecapi</span><span class="p">))</span>
     367    <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;Using ECMWF WebAPI: &#39;</span> <span class="o">+</span> <span class="nb">str</span><span class="p">(</span><span class="n">c</span><span class="o">.</span><span class="n">ec_api</span><span class="p">))</span>
     368    <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;Using CDS API: &#39;</span> <span class="o">+</span> <span class="nb">str</span><span class="p">(</span><span class="n">c</span><span class="o">.</span><span class="n">cds_api</span><span class="p">))</span>
    360369
    361370    <span class="k">return</span> <span class="n">server</span></div>
     371
     372
     373<div class="viewcode-block" id="check_dates_for_nonflux_fc_times"><a class="viewcode-back" href="../api.html#get_mars_data.check_dates_for_nonflux_fc_times">[docs]</a><span class="k">def</span> <span class="nf">check_dates_for_nonflux_fc_times</span><span class="p">(</span><span class="n">types</span><span class="p">,</span> <span class="n">times</span><span class="p">):</span>
     374    <span class="sd">&#39;&#39;&#39;</span>
     375<span class="sd">    &#39;&#39;&#39;</span>
     376    <span class="k">for</span> <span class="n">ty</span><span class="p">,</span> <span class="n">ti</span> <span class="ow">in</span> <span class="nb">zip</span><span class="p">(</span><span class="n">types</span><span class="p">,</span><span class="n">times</span><span class="p">):</span>
     377        <span class="k">if</span> <span class="n">ty</span><span class="o">.</span><span class="n">upper</span><span class="p">()</span> <span class="o">==</span> <span class="s1">&#39;FC&#39;</span> <span class="ow">and</span> <span class="nb">int</span><span class="p">(</span><span class="n">ti</span><span class="p">)</span> <span class="o">==</span> <span class="mi">18</span><span class="p">:</span>
     378            <span class="k">return</span> <span class="kc">True</span>
     379    <span class="k">return</span> <span class="kc">False</span></div>
    362380
    363381
     
    405423    <span class="n">chunk</span> <span class="o">=</span> <span class="n">timedelta</span><span class="p">(</span><span class="n">days</span><span class="o">=</span><span class="nb">int</span><span class="p">(</span><span class="n">c</span><span class="o">.</span><span class="n">date_chunk</span><span class="p">))</span>
    406424
    407     <span class="k">if</span> <span class="n">c</span><span class="o">.</span><span class="n">basetime</span><span class="p">:</span>
    408         <span class="k">if</span> <span class="n">c</span><span class="o">.</span><span class="n">basetime</span> <span class="o">==</span> <span class="s1">&#39;00&#39;</span><span class="p">:</span>
    409             <span class="n">start</span> <span class="o">=</span> <span class="n">start</span> <span class="o">-</span> <span class="n">timedelta</span><span class="p">(</span><span class="n">days</span><span class="o">=</span><span class="mi">1</span><span class="p">)</span>
    410 
    411     <span class="k">if</span> <span class="ow">not</span> <span class="n">c</span><span class="o">.</span><span class="n">purefc</span> <span class="ow">and</span> <span class="n">fluxes</span><span class="p">:</span>
     425    <span class="k">if</span> <span class="n">c</span><span class="o">.</span><span class="n">basetime</span> <span class="o">==</span> <span class="mi">0</span><span class="p">:</span>
     426        <span class="n">start</span> <span class="o">=</span> <span class="n">start</span> <span class="o">-</span> <span class="n">timedelta</span><span class="p">(</span><span class="n">days</span><span class="o">=</span><span class="mi">1</span><span class="p">)</span>
     427
     428    <span class="k">if</span> <span class="ow">not</span> <span class="n">c</span><span class="o">.</span><span class="n">purefc</span> <span class="ow">and</span> <span class="n">fluxes</span> <span class="ow">and</span> <span class="ow">not</span> <span class="n">c</span><span class="o">.</span><span class="n">basetime</span> <span class="o">==</span> <span class="mi">0</span><span class="p">:</span>
    412429        <span class="n">start</span> <span class="o">=</span> <span class="n">start</span> <span class="o">-</span> <span class="n">timedelta</span><span class="p">(</span><span class="n">days</span><span class="o">=</span><span class="mi">1</span><span class="p">)</span>
    413430        <span class="n">end</span> <span class="o">=</span> <span class="n">end</span> <span class="o">+</span> <span class="n">timedelta</span><span class="p">(</span><span class="n">days</span><span class="o">=</span><span class="mi">1</span><span class="p">)</span>
     431
     432    <span class="c1"># if we have non-flux forecast data starting at 18 UTC</span>
     433    <span class="c1"># we need to start retrieving data one day in advance</span>
     434    <span class="k">if</span> <span class="ow">not</span> <span class="n">fluxes</span> <span class="ow">and</span> <span class="n">check_dates_for_nonflux_fc_times</span><span class="p">(</span><span class="n">c</span><span class="o">.</span><span class="n">type</span><span class="p">,</span> <span class="n">c</span><span class="o">.</span><span class="n">time</span><span class="p">):</span>
     435        <span class="n">start</span> <span class="o">=</span> <span class="n">start</span> <span class="o">-</span> <span class="n">timedelta</span><span class="p">(</span><span class="n">days</span><span class="o">=</span><span class="mi">1</span><span class="p">)</span>
    414436
    415437    <span class="k">return</span> <span class="n">start</span><span class="p">,</span> <span class="n">end</span><span class="p">,</span> <span class="n">chunk</span></div>
     
    493515            <span class="n">flexpart</span><span class="o">.</span><span class="n">retrieve</span><span class="p">(</span><span class="n">server</span><span class="p">,</span> <span class="n">dates</span><span class="p">,</span> <span class="n">c</span><span class="o">.</span><span class="n">public</span><span class="p">,</span> <span class="n">c</span><span class="o">.</span><span class="n">request</span><span class="p">,</span> <span class="n">c</span><span class="o">.</span><span class="n">inputdir</span><span class="p">)</span>
    494516        <span class="k">except</span> <span class="ne">IOError</span><span class="p">:</span>
    495             <span class="n">my_error</span><span class="p">(</span><span class="n">c</span><span class="o">.</span><span class="n">mailfail</span><span class="p">,</span> <span class="s1">&#39;MARS request failed&#39;</span><span class="p">)</span>
     517            <span class="n">my_error</span><span class="p">(</span><span class="s1">&#39;MARS request failed&#39;</span><span class="p">)</span>
    496518
    497519        <span class="n">day</span> <span class="o">+=</span> <span class="n">delta_t</span>
     
    513535  <div role="contentinfo">
    514536    <p>
    515         &copy; Copyright 2018, Anne Philipp and Leopold Haimberger
     537        &copy; Copyright 2018, Anne Philipp and Leopold Haimberger.
    516538
    517539    </p>
     
    532554 
    533555
    534    
    535    
    536       <script type="text/javascript" id="documentation_options" data-url_root="../" src="../_static/documentation_options.js"></script>
    537         <script type="text/javascript" src="../_static/jquery.js"></script>
    538         <script type="text/javascript" src="../_static/underscore.js"></script>
    539         <script type="text/javascript" src="../_static/doctools.js"></script>
    540    
     556    <script type="text/javascript">
     557        var DOCUMENTATION_OPTIONS = {
     558            URL_ROOT:'../',
     559            VERSION:'7.1 alpha',
     560            LANGUAGE:'None',
     561            COLLAPSE_INDEX:false,
     562            FILE_SUFFIX:'.html',
     563            HAS_SOURCE:  true,
     564            SOURCELINK_SUFFIX: '.txt'
     565        };
     566    </script>
     567      <script type="text/javascript" src="../_static/jquery.js"></script>
     568      <script type="text/javascript" src="../_static/underscore.js"></script>
     569      <script type="text/javascript" src="../_static/doctools.js"></script>
     570      <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
    541571
    542572 
Note: See TracChangeset for help on using the changeset viewer.
hosted by ZAMG