mtspec¶
Multitaper Spectral Estimation¶
mtspec is a Python wrapper for the Multitaper Spectrum Estimation Library by Germán Prieto. The relevant publication is
Prieto, G. A., R. L. Parker, F. L. Vernon. (2009),
A Fortran 90 library for multitaper spectrum analysis,
Computers and Geosciences, 35, pp. 1701-1710.
doi:10.1016/j.cageo.2008.06.007
It enables you to calculate Slepian windows, perform multitaper spectral estimations with various options, calculate Wigner-Ville time-frequency distributions, and construct coherence spectra with multitapers.
It currently wraps version 3.1 of the library. This is mainly due to later versions using FFTW which would introduce an additional dependency.
If you use the Python wrapper please consider citing it as (http://doi.org/10.5281/zenodo.321789)
Lion Krischer. (2016). mtspec Python wrappers 0.3.2 [Data set].
Zenodo.
doi:10.5281/zenodo.321789
Installation¶
Easy Way¶
The simplest way to install mtspec
is to download
(Ana)conda, install it, and run:
$ conda config --add channels conda-forge
$ conda install mtspec
This will take care of everything and you can stop reading here. The rest of the installation instructions are for custom installations.
Requirements¶
mtspec currently runs on Linux and Mac OS X. Adding support for Windows is mainly a question of compiling the shared Fortran libraries - pull requests are welcome.
gfortran >= 4.7
Python 2.7, 3.3, 3.4, or 3.5
NumPy >= 1.7
Fortran Compiler¶
If you don’t have gfortran
, please install it (on Linux) with
$ sudo apt-get install gfortran
or the equivalent of your distribution. On OSX we recommend to install
Homebrew and then use it to install gfortran
:
$ brew install gcc
On Windows, you’ll have download and install TDM-GCC after you’ve installed Anaconda and before you install mtspec. Don’t forget to mark the fortran option in the “gcc” part of the installation.
Python and Dependencies¶
If you know what you are doing, just make sure the aforementioned
dependencies are installed. Otherwise do yourself a favor and download the
Anaconda Python distribution.
It is a free scientific Python distribution bundling almost all necessary
modules with a convenient installer (does not require root access!).
Once installed assert that pip
and conda
point to the Anaconda
installation folder (you may need to open a new terminal after installing
Anaconda). Then install mtspec’s dependencies with
$ conda install numpy pip
Installing mtspec¶
For normal usage just install mtspec with
User Installation¶
$ pip install mtspec
Developer Installation¶
If you want the bleeding edge version or intend to edit mtspec’s code, clone the git repository and install in an editable fashion:
$ git clone https://github.com/krischer/mtspec.git
$ cd mtspec
$ pip install -v -e .
Testing¶
To assert that your installation is working properly, execute
$ python -m mtspec.tests
and make sure all tests pass. Otherwise please contact the developers.
If you intend to develop for mtspec
, please also install flake8>=3
-
the tests will then also include code formatting checks.
Build the Documentation¶
The documentation requires sphinx
and the Alabaster theme. Install both
with
$ pip install sphinx alabaster
Build the doc with
$ cd doc
$ make html
Finally open the doc/html_doc/index.html
file with the browser of your
choice.