pydirectional
BRDF (Bidirectional Reflectance Distribution Function) modeling tools.
pydirectional provides forward models, fitting routines, and utilities for
working with BRDF measurements and standard semi-empirical models (RTLS, RPV,
Hapke, and others).
Warning: This software is in beta. Results should be used with caution. Please share any feedback via the issue tracker.
Usage
Virtual environment
It is always recommended to use a virtual environment for each Python project. Use your preferred environment manager, or create one with:
python -m venv venv
Activate it on Windows with venv\Scripts\activate, or on macOS/Linux with
source venv/bin/activate.
Installation
Install the package and its core dependencies:
pip install -e .
Optional extras are available depending on your use case:
pip install -e ".[dev]" # Development tools (ruff, mypy, pytest, …)
pip install -e ".[docs]" # Documentation build (sphinx, …)
Development
Install the pre-commit hooks after cloning:
pre-commit install
When you commit, ruff will lint and format your code. If it makes
corrections the commit will be aborted so you can review the changes — just
commit again once you are happy.
Run the test suite with:
pytest
Compatibility
pydirectional requires Python 3.11 or later and is tested on Python 3.11,
3.12, and 3.13.
Licence
pydirectional is released under the GNU Lesser General Public License v3
(LGPLv3). See the LICENSE file for the full licence text.
Authors
pydirectional is developed and maintained by the
MetEOR Toolkit Team.
Metadata
Release files for pydirectional 0.1.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pydirectional-0.1.5.tar.gz | 13.5 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pydirectional-0.1.5-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 27.0 MB
Release files / pydirectional-0.1.5.tar.gz
| Download URL | pydirectional-0.1.5.tar.gz |
|---|---|
| Size | 13.5 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8841cb15b7d66e605aa43f48ba5e8152606ae230cc5e302741b603e547d8c376
|
|
BLAKE2b-256 checksum How to use checksums |
fc922ebf897e7fb906c33b3a2817cdcdf188691016526a84c88b1c2294213e91
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jun 8, 2026.
Transparency logRelease files / pydirectional-0.1.5-py3-none-any.whl
| Download URL | pydirectional-0.1.5-py3-none-any.whl |
|---|---|
| Size | 13.4 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
14a467b987e7e5bf2b55e305426b89a73ce3c70042bc42e6cf57339a7c098a5e
|
|
BLAKE2b-256 checksum How to use checksums |
809f46a4a96b6e4535c9915af357652e370a47a63bcee0d7ae344d90690bdf29
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jun 8, 2026.
Transparency log