Installation¶
Editable development install¶
The package builds a small pybind11/C++ extension. A typical development setup is:
python -m venv .venv
source .venv/bin/activate
python -m pip install -U pip
python -m pip install -e .[dev,examples,benchmark,docs]
Run tests:
pytest -q
Build a wheel:
python -m build
Build documentation:
cd docs
make html
Open docs/_build/html/index.html in a browser.
OpenMP¶
If OpenMP is available, the C++ extension enables parallel batch processing. Check from Python:
import lattice_dsp as ld
print(ld.HAS_OPENMP)
OpenMP is most useful for independent filter jobs, for example processing many channels, many filters, or many frequency samples in matrix-lattice response evaluation.
Optional dependencies¶
numpy is required. scipy and matplotlib are optional and are used by
examples and benchmarks. sphinx and myst-parser are optional and are
used only for documentation builds.