Software dependencies¶
PyCurious keeps a deliberately small import-time footprint: only numpy and
scipy are imported when you import pycurious. Everything else is imported
lazily inside the function that needs it, so it lives in an optional extra and
is pulled in only when you ask for it.
Core dependencies¶
Package |
Purpose |
|---|---|
|
arrays, FFTs, the grid and spectrum layer |
|
optimisation, special functions, banded linear algebra |
Requires Python 3.9 or newer.
Optional extras¶
Install an extra with pip install "pycurious[<name>]". They compose, e.g.
pip install "pycurious[mapping,download]".
download¶
Backs pycurious.download — cached downloads with md5 checks, used by the
mapping tutorials to fetch the EMAG2 and reference datasets.
mapping¶
Backs the projection and netCDF parts of pycurious.mapping.
geotiff¶
Backs the GeoTIFF import/export in pycurious.mapping. It is kept out
of mapping on purpose: the GDAL Python bindings need a matching system
libgdal already installed, so folding it into mapping would make
pip install "pycurious[mapping]" fail for most users. conda install gdal is
usually easier than installing it from pip.
examples¶
Everything needed to run the bundled Tutorials.
test¶
The test suite imports only pytest, numpy, scipy, and pycurious, so
pip install -e ".[test]" && pytest runs the whole suite.
docs¶
Builds this documentation. Building the tutorials additionally needs the
examples and mapping extras so the notebooks execute.