{"id":40900386,"url":"https://github.com/inkenbrandt/footprints","last_synced_at":"2026-01-22T02:30:52.517Z","repository":{"id":291041746,"uuid":"976380813","full_name":"inkenbrandt/footprints","owner":"inkenbrandt","description":"Used for calculation of measurement footprint of gas flux by an eddy covariance station.","archived":false,"fork":false,"pushed_at":"2025-10-06T02:23:55.000Z","size":35447,"stargazers_count":1,"open_issues_count":2,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-10-06T04:26:11.593Z","etag":null,"topics":["eddy","eddy-covariance","evapotranspiration","flux","footprint"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/inkenbrandt.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-05-02T02:28:17.000Z","updated_at":"2025-10-06T02:23:58.000Z","dependencies_parsed_at":"2025-09-08T12:22:38.300Z","dependency_job_id":"4dc01efb-083a-4839-ae3f-2a45a6996cf5","html_url":"https://github.com/inkenbrandt/footprints","commit_stats":null,"previous_names":["inkenbrandt/footprints"],"tags_count":17,"template":false,"template_full_name":null,"purl":"pkg:github/inkenbrandt/footprints","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/inkenbrandt%2Ffootprints","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/inkenbrandt%2Ffootprints/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/inkenbrandt%2Ffootprints/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/inkenbrandt%2Ffootprints/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/inkenbrandt","download_url":"https://codeload.github.com/inkenbrandt/footprints/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/inkenbrandt%2Ffootprints/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28651703,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-22T01:17:37.254Z","status":"online","status_checked_at":"2026-01-22T02:00:07.137Z","response_time":144,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["eddy","eddy-covariance","evapotranspiration","flux","footprint"],"created_at":"2026-01-22T02:30:52.431Z","updated_at":"2026-01-22T02:30:52.508Z","avatar_url":"https://github.com/inkenbrandt.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Flux-footprints\n\n\u003e **FluxFootprints** is a fast, fully‑featured Python implementation of the\n\u003e Kljun et al. (2015) flux‑footprint parameterisation for eddy‑covariance research.\n\u003e It provides vectorised and xarray‑enabled utilities to compute per‑timestamp\n\u003e footprints, aggregate footprint climatologies, extract source‑area contours,\n\u003e and visualise results—scaling seamlessly from single towers to multi‑year\n\u003e datasets.\n\n---\n\n### Table of Contents\n \n1. [Installation](#installation)\n2. [Documentation](https://fluxfootprints.readthedocs.io/en/latest/)\n3. [Quick‑start Example](#quick-start-example)\n4. [Key Features](#key-features)\n5. [Input Requirements](#input-requirements)\n7. [Citing \u0026 Referencing](#citing--referencing)\n8. [Contributing](#contributing)\n9. [Development Road‑map](#development-road-map)\n10. [License](#license)\n\n---\n\n### Installation\n\n```bash\n# Stable release (PyPI)\npip install fluxfootprints\n\n# Development version (GitHub)\npip install git+https://github.com/YourOrg/fluxfootprint.git\n```\n\n\u003e Minimum Python 3.10  Core dependencies: `numpy`, `pandas`, `xarray`,\n\u003e `scipy`, `matplotlib`.  Optional: `dask`, `rioxarray`, `pyproj` for advanced\n\u003e geospatial export.\n\n---\n\n### Documentation\n\nFull API docs, tutorials, and example notebooks are hosted at **Read the Docs**:\n\n```\nhttps://fluxfootprints.readthedocs.io/en/latest/\n```\n\nTo build locally:\n\n```bash\npip install -r docs/requirements.txt\nsphinx-build -M html docs/ docs/_build\n```\n\n---\n\n### Key Features\n\n| Category                | Highlights                                                                                                                                                                                                   |\n| ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |\n| **Core model**          | • Implements Eq. 14 \u0026 17 of Kljun et al. (2015) with stability‑specific coefficients\u003cbr\u003e• Optional roughness‑sublayer corrections\u003cbr\u003e• Supports per‑footprint filtering based on theoretical validity limits |\n| **Performance**         | • Pure NumPy + xarray for vectorised calculations\u003cbr\u003e• Lazy computation and Dask compatibility for large archives                                                                                            |\n| **I/O \u0026 preprocessing** | • Pandas helpers to map tower log fields automatically\u003cbr\u003e• Quality‑control filters for *u\\* ≥ 0.1 m s⁻¹*, finite σᵥ, etc.                                                                                   |\n| **Analysis tools**      | • Aggregate footprint climatologies\u003cbr\u003e• Compute *r%* source‑area contours (10–90 %)\u003cbr\u003e• Functions to derive transects, footprint peak statistics, and 80 % area coverage                                   |\n| **Visualisation**       | • Matplotlib helpers for heat‑maps \u0026 contour overlays\u003cbr\u003e• Geospatial export to GeoTIFF / shapefile (EPSG aware)                                                                                             |\n\n---\n\n### Input Requirements\n\n| Column                          | Units | Description                    |\n| ------------------------------- | ----- | ------------------------------ |\n| `USTAR`                         | m s⁻¹ | Friction velocity, u\\*         |\n| `V_SIGMA`                       | m s⁻¹ | Lateral velocity std. dev., σᵥ |\n| `MO_LENGTH`                     | m     | Monin–Obukhov length, L        |\n| `WD`                            | °     | Wind direction (0–360)         |\n| `WS`                            | m s⁻¹ | Mean wind speed at *zₘ*        |\n| *(optional)* `crop_height`      | m     | Canopy height, h\\_c            |\n| *(optional)* `atm_bound_height` | m     | Boundary‑layer height, h       |\n\nAny additional columns are ignored unless you plug in custom routines.\n\n---\n\n### Citing \u0026 Referencing\n\nIf you use *Flux-Footprints* in a publication, please cite the original\nparameterisation:\n\n\u003e Kljun, N., Calanca, P., Rotach, M.W., \u0026 Schmid, H.P. (2015).\n\u003e **A simple two‑dimensional parameterisation for flux footprint prediction (FFP)**.\n\u003e *Geoscientific Model Development*, 8(11), 3695–3713.\n\u003e [https://doi.org/10.5194/gmd-8-3695-2015](https://doi.org/10.5194/gmd-8-3695-2015)\n\nYou may also cite the software directly (see `CITATION.cff`).\n\n---\n\n### Contributing\n\n1. **Fork** → 2. **Create branch** → 3. **Commit changes**\n2. **Run tests** (`pytest`) \u0026 linters (`pre‑commit run --all-files`)\n3. **Open a pull‑request**\n\nAll contributions—bug reports, suggestions, or code—are welcome!\n\n---\n\n### Development Road‑map\n\n* [ ] Build out tests\n* [ ] Build out documentation\n* [ ] Footprint uncertainty quantification via Monte‑Carlo resampling\n* [ ] OpenET API and Comparison\n* [ ] Footprint aggregation across different time periods\n* [ ] QGIS plug‑in for in‑map footprint visualisation\n\n---\n\n### License\n\nThis project is licensed under the **MIT License** – see the\n[`LICENSE`](LICENSE) file for details.\n\n---\n\n*Happy footprinting!*\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finkenbrandt%2Ffootprints","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Finkenbrandt%2Ffootprints","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finkenbrandt%2Ffootprints/lists"}