-
Notifications
You must be signed in to change notification settings - Fork 0
/
INSTALL.html
293 lines (273 loc) · 16.5 KB
/
INSTALL.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
<!DOCTYPE html>
<html class="writer-html5" lang="en" >
<head>
<meta charset="utf-8" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Installation — Py-ART 1.11.7.dev+c829faf documentation</title>
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
<link rel="stylesheet" href="_static/plot_directive.css" type="text/css" />
<link rel="stylesheet" href="_static/copybutton.css" type="text/css" />
<!--[if lt IE 9]>
<script src="_static/js/html5shiv.min.js"></script>
<![endif]-->
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
<script src="_static/jquery.js"></script>
<script src="_static/underscore.js"></script>
<script src="_static/doctools.js"></script>
<script src="_static/clipboard.min.js"></script>
<script src="_static/copybutton.js"></script>
<script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script>
<script src="_static/js/theme.js"></script>
<link rel="index" title="Index" href="genindex.html" />
<link rel="search" title="Search" href="search.html" />
<link rel="next" title="Setting up an Environment" href="setting_up_an_environment.html" />
<link rel="prev" title="pyart._debug_info" href="API/generated/pyart._debug_info.html" />
</head>
<body class="wy-body-for-nav">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-scroll">
<div class="wy-side-nav-search" >
<a href="index.html" class="icon icon-home"> Py-ART
</a>
<div class="version">
1.11.7.dev+c829faf
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="search.html" method="get">
<input type="text" name="q" placeholder="Search docs" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
<p class="caption" role="heading"><span class="caption-text">Documentation</span></p>
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="API/index.html">API Reference Manual</a></li>
<li class="toctree-l1 current"><a class="current reference internal" href="#">Installation</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#required-dependencies">Required Dependencies</a></li>
<li class="toctree-l2"><a class="reference internal" href="#optional-dependencies">Optional Dependencies</a></li>
<li class="toctree-l2"><a class="reference internal" href="#obtaining-the-latest-source">Obtaining the latest source</a></li>
<li class="toctree-l2"><a class="reference internal" href="#installing-from-source">Installing from Source</a></li>
<li class="toctree-l2"><a class="reference internal" href="#frequently-asked-questions">Frequently asked questions</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="setting_up_an_environment.html">Setting up an Environment</a></li>
<li class="toctree-l1"><a class="reference internal" href="contributors_guide.html">Contributor’s Guide</a></li>
</ul>
<p class="caption" role="heading"><span class="caption-text">Downloads</span></p>
<ul>
<li class="toctree-l1"><a class="reference external" href="https://anaconda.org/conda-forge/arm_pyart">Anaconda Cloud</a></li>
<li class="toctree-l1"><a class="reference external" href="https://github.com/ARM-DOE/pyart">GitHub Repo</a></li>
<li class="toctree-l1"><a class="reference external" href="https://github.com/ARM-DOE/pyart/archive/master.zip">Zip File of Repository</a></li>
</ul>
<p class="caption" role="heading"><span class="caption-text">Notebooks</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="notebooks/basic_ingest_using_test_radar_object.html">Creating a basic ingest of a NetCDF file</a></li>
<li class="toctree-l1"><a class="reference internal" href="notebooks/changing_fields_and_saving.html">Field manipulation and Saving the Radar Object to a file.</a></li>
<li class="toctree-l1"><a class="reference internal" href="notebooks/dealiasing_velocity.html">Dealiasing Velocity</a></li>
<li class="toctree-l1"><a class="reference internal" href="notebooks/mapping_data_to_a_cartesian_grid.html">Mapping Data to a Cartesian Grid</a></li>
<li class="toctree-l1"><a class="reference internal" href="notebooks/masking_data_with_gatefilters.html">Masking Data With Py-ART Gatefilters</a></li>
<li class="toctree-l1"><a class="reference internal" href="notebooks/the_pyart_radar_object_and_indexing.html">The Py-ART Radar object and indexing</a></li>
</ul>
<p class="caption" role="heading"><span class="caption-text">Getting Help</span></p>
<ul>
<li class="toctree-l1"><a class="reference external" href="https://github.com/ARM-DOE/pyart/issues">GitHub Issue Tracker</a></li>
<li class="toctree-l1"><a class="reference external" href="https://groups.google.com/forum/#!forum/pyart-users">Mailing List</a></li>
</ul>
<p class="caption" role="heading"><span class="caption-text">Science Lead</span></p>
<ul>
<li class="toctree-l1"><a class="reference external" href="https://www.anl.gov/profile/scott-m-collis">Scott Collis</a></li>
</ul>
</div>
</div>
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="Mobile navigation menu" >
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="index.html">Py-ART</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="Page navigation">
<ul class="wy-breadcrumbs">
<li><a href="index.html" class="icon icon-home"></a> »</li>
<li>Installation</li>
<li class="wy-breadcrumbs-aside">
<a href="_sources/INSTALL.rst.txt" rel="nofollow"> View page source</a>
</li>
</ul>
<hr/>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<style>
/* CSS overrides for sphinx_rtd_theme */
/* 24px margin */
.nbinput.nblast.container,
.nboutput.nblast.container {
margin-bottom: 19px; /* padding has already 5px */
}
/* ... except between code cells! */
.nblast.container + .nbinput.container {
margin-top: -19px;
}
.admonition > p:before {
margin-right: 4px; /* make room for the exclamation icon */
}
/* Fix math alignment, see https://github.com/rtfd/sphinx_rtd_theme/pull/686 */
.math {
text-align: unset;
}
</style>
<section id="installation">
<h1>Installation<a class="headerlink" href="#installation" title="Permalink to this headline">¶</a></h1>
<section id="required-dependencies">
<h2>Required Dependencies<a class="headerlink" href="#required-dependencies" title="Permalink to this headline">¶</a></h2>
<p>Py-ART requires the following software.</p>
<ul class="simple">
<li><p><a class="reference external" href="http://www.python.org">Python</a> 3.6.x, 3.7.x or 3.8x</p></li>
</ul>
<ul class="simple">
<li><p><a class="reference external" href="http://www.scipy.org">NumPy</a></p></li>
</ul>
<ul class="simple">
<li><p><a class="reference external" href="http://www.scipy.org">SciPy</a></p></li>
</ul>
<ul class="simple">
<li><p><a class="reference external" href="http://matplotlib.org/">matplotlib</a></p></li>
</ul>
<ul class="simple">
<li><p><a class="reference external" href="https://github.com/Unidata/netcdf4-python">netCDF4</a></p></li>
</ul>
</section>
<section id="optional-dependencies">
<h2>Optional Dependencies<a class="headerlink" href="#optional-dependencies" title="Permalink to this headline">¶</a></h2>
<p>The following packages are recommended for a fully-functional Py-ART
installation, but the package will install and work with reduced functionality
without these packages.</p>
<ul class="simple">
<li><p><a class="reference external" href="https://trmm-fc.gsfc.nasa.gov/trmm_gv/software/rsl/">TRMM RSL</a></p></li>
<li><p><a class="reference external" href="https://github.com/mpy/CyLP">CyLP</a> or
<a class="reference external" href="https://tfinley.net/software/pyglpk/">PyGLPK</a> or
<a class="reference external" href="https://cvxopt.org/">CVXOPT</a> and their dependencies.</p></li>
<li><p><a class="reference external" href="https://scitools.org.uk/cartopy/docs/latest/">Cartopy</a> or</p></li>
<li><p><a class="reference external" href="https://matplotlib.org/basemap/">Basemap</a> But Cartopy is recommended as
basemap will no longer have support.</p></li>
<li><p><a class="reference external" href="https://xarray.pydata.org/en/stable/">xarray</a></p></li>
<li><p><a class="reference external" href="https://code.google.com/p/pyproj/">pyproj</a></p></li>
<li><p><a class="reference external" href="https://docs.pytest.org/en/latest/">pytest</a></p></li>
</ul>
</section>
<section id="obtaining-the-latest-source">
<h2>Obtaining the latest source<a class="headerlink" href="#obtaining-the-latest-source" title="Permalink to this headline">¶</a></h2>
<p>The latest source code for Py-ART can be obtained from the GitHub repository,
<a class="reference external" href="https://github.com/ARM-DOE/pyart">https://github.com/ARM-DOE/pyart</a>.</p>
<p>The latest source can be checked out using</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span>$ git clone https://github.com/ARM-DOE/pyart.git
</pre></div>
</div>
</section>
<section id="installing-from-source">
<h2>Installing from Source<a class="headerlink" href="#installing-from-source" title="Permalink to this headline">¶</a></h2>
<p>The path to the TRMM RSL library must be provided during install. This can
either be done by setting the <code class="docutils literal notranslate"><span class="pre">RSL_PATH</span></code> environmentation variable. In bash
this can be done using <code class="docutils literal notranslate"><span class="pre">export</span> <span class="pre">RSL_PATH=/path/to/rsl/</span></code>. If this location is
not specified, some common locations will be searched. Note that the location
provided should be the root TRMM RSL path, under which both a <cite>lib</cite> and
<cite>include</cite> directory are contained, the default location is <code class="docutils literal notranslate"><span class="pre">/lib/local/trmm</span></code>.
If using CyLP, a path for the coincbc directory is needed. This can be done
using <code class="docutils literal notranslate"><span class="pre">export</span> <span class="pre">COIN_INSTALL_DIR=/path/to/coincbc/</span></code>. When using CyLP, on some
systems, installing the Anaconda compilers is needed. These can be found here:
<a class="reference external" href="https://docs.conda.io/projects/conda-build/en/latest/resources/compiler-tools.html">https://docs.conda.io/projects/conda-build/en/latest/resources/compiler-tools.html</a></p>
<p>After specifying the TRMM RSL path Py-ART can be installed globally using</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span>$ python setup.py install
</pre></div>
</div>
<p>of locally using</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span>$ python setup.py install --user
</pre></div>
</div>
<p>If you prefer to use Py-ART without installing, simply add the this path to
your <code class="docutils literal notranslate"><span class="pre">PYTHONPATH</span></code> (directory or with a .pth file) and compile the extension
in-place.</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span>$ python setup.py build_ext -i
</pre></div>
</div>
<p>You can also install Py-ART in development mode by using</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span>$ pip install -e .
</pre></div>
</div>
</section>
<section id="frequently-asked-questions">
<h2>Frequently asked questions<a class="headerlink" href="#frequently-asked-questions" title="Permalink to this headline">¶</a></h2>
<ul>
<li><p>I’m getting a no ‘io’ module after installing pyart with pip.</p>
<p>There is a pyart on pip that is a different package. Make sure to do:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">pip</span> <span class="n">install</span> <span class="n">arm_pyart</span>
</pre></div>
</div>
<p>and not:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">pip</span> <span class="n">install</span> <span class="n">pyart</span>
</pre></div>
</div>
</li>
<li><p>I’m getting a segfault or compile error with CyLP in newer Python versions
when installing in an environment.</p>
<p>Anaconda has its own compilers now on conda-forge. Theres can be found here:
<a class="reference external" href="https://docs.conda.io/projects/conda-build/en/latest/resources/compiler-tools.html">https://docs.conda.io/projects/conda-build/en/latest/resources/compiler-tools.html</a>
Once the proper compilers are installed, reinstall CyLP.</p>
</li>
<li><p>I’m getting a segfault or another error in python when using
<code class="docutils literal notranslate"><span class="pre">pyart.io.read_rsl()</span></code> with IRIS/other files.</p>
<p>This is due to a bug in RSL, and can be remedied by adding
<code class="docutils literal notranslate"><span class="pre">-fno-stack-protector</span> <span class="pre">-D_FORTIFY_SOURCE=0</span></code> to the CFLAGS parameter of the
makefile of RSL. This issue has been fixed with the release of rsl-v1.44.</p>
</li>
<li><p>I’m having trouble getting PyGLPK to compile on my 64-bit operating system.</p>
<p>Change the line in the setup.py file from</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">define_macros</span> <span class="o">=</span> <span class="n">macros</span><span class="p">,</span> <span class="n">extra_compile_args</span><span class="o">=</span><span class="p">[</span><span class="s1">'-m32'</span><span class="p">],</span> <span class="n">extra_link_args</span><span class="o">=</span><span class="p">[</span><span class="s1">'-m32'</span><span class="p">],</span>
</pre></div>
</div>
<p>to</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">define_macros</span> <span class="o">=</span> <span class="n">macros</span><span class="p">,</span> <span class="n">extra_compile_args</span><span class="o">=</span><span class="p">[</span><span class="s1">'-m64'</span><span class="p">],</span> <span class="n">extra_link_args</span><span class="o">=</span><span class="p">[</span><span class="s1">'-m64'</span><span class="p">],</span>
</pre></div>
</div>
<p>Then build and install PyGLPK as recommended in the PYGLPK README.txt file.</p>
</li>
<li><p>When running basemap, I get an error ‘KeyError: PROJ_LIB’.</p>
<p>Basemap is not being supported beyond 2020, some of these errors relate
to it not playing nicely with newer versions of packages. We recommend using
Cartopy instead, but some users have been able to use:
import os
os.environ[‘PROJ_LIB’] = ‘C:/Users/xx Username xxx/Anaconda3/Lib/site-packages/mpl_toolkits/basemap’
To get basemap working, but again Cartopy should be used instead of Basemap.</p>
</li>
</ul>
</section>
</section>
</div>
</div>
<footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
<a href="API/generated/pyart._debug_info.html" class="btn btn-neutral float-left" title="pyart._debug_info" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
<a href="setting_up_an_environment.html" class="btn btn-neutral float-right" title="Setting up an Environment" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
</div>
<hr/>
<div role="contentinfo">
<p>© Copyright 2013-2020, Py-ART developers.</p>
</div>
Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a
<a href="https://github.com/readthedocs/sphinx_rtd_theme">theme</a>
provided by <a href="https://readthedocs.org">Read the Docs</a>.
</footer>
</div>
</div>
</section>
</div>
<script>
jQuery(function () {
SphinxRtdTheme.Navigation.enable(true);
});
</script>
</body>
</html>