tprerequisites.rst - pism - [fork] customized build of PISM, the parallel ice sheet model (tillflux branch)
(HTM) git clone git://src.adamsgaard.dk/pism
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) LICENSE
---
tprerequisites.rst (2308B)
---
1 .. include:: ../global.txt
2
3 .. _sec-install-prerequisites:
4
5 Required tools and libraries
6 ============================
7
8 This table lists required dependencies for PISM alphabetically.
9
10 .. csv-table::
11 :header: Required Library, Comment
12
13 CMake_, version `\ge` 3.1
14 FFTW_, version `\ge` 3.1
15 GSL_, version `\ge` 1.15
16 MPI_, any recent version
17 NetCDF_ [#]_, version `\ge` 4.4
18 PETSc_ [#]_, version `\ge` |petsc-min-version|
19 UDUNITS_, any recent version
20
21 Before installing these "by hand", check sections :ref:`sec-install-debian` and
22 :ref:`sec-install-macos` for specific how-to.
23
24 In particular, if multiple MPI implementations (e.g. MPICH and Open MPI) are installed
25 then PETSc can under some situations "get confused" and throw MPI-related errors. Even
26 package systems have been known to allow this confusion.
27
28 .. note::
29
30 We recommend un-installing all MPI libraries except one. In most cases there is no
31 reason to have both Open MPI and MPICH, for example.
32
33 Optional libraries listed below are needed for certain PISM features, namely computing
34 longitude, latitude coordinates of grid points and parallel I/O. These libraries are
35 recommended, but not strictly required:
36
37 .. csv-table::
38 :header: Optional Library, Comment
39
40 PROJ_, version `\ge` 6.0 (used to compute longitude-latitude grid coordinates and cell bounds)
41 PnetCDF_, Can be used for faster parallel I/O
42 ParallelIO_, Can be used for faster parallel I/O
43
44 Python_ is needed for the PETSc installation process; a number of PISM's pre- and
45 post-processing scripts also use Python (either 2.7 or 3.x), while Git_ is usually needed
46 to download the PISM code.
47
48 PISM's Python bindings support Python 2.7 or 3.3 and later [#]_.
49
50 The following Python packages are needed to do all the examples in the :ref:`User’s Manual
51 <sec-users-manual>` (which run Python scripts):
52
53 .. csv-table:: Python packages
54 :header: Library, Comment
55
56 NumPy_, used in *most* scripts
57 matplotlib_, used in some scripts
58 netcdf4-python_, used in *most* scripts
59
60 .. rubric:: Footnotes
61
62 .. [#] Note that PISM uses ``ncgen`` (provided by NetCDF) on the system where PISM is
63 *compiled*.
64 .. [#] "PETSc" is pronounced "pet-see".
65 .. [#] PISM's Python bindings are tested using Python 3.6.