{"id":51419,"name":"Glacier flow model","description":"Modeling glaciers on a digital elevation model based on mass balance and a modified D8 flow algorithm applied to ice.","url":"https://github.com/munterfi/glacier-flow-model","last_synced_at":"2026-04-27T08:30:17.796Z","repository":{"id":37090453,"uuid":"96700423","full_name":"munterfi/glacier-flow-model","owner":"munterfi","description":"Modeling glaciers on a digital elevation model (DEM) based on mass balance and a modified D8 flow algorithm applied to ice.","archived":false,"fork":false,"pushed_at":"2025-12-06T02:05:37.000Z","size":10571,"stargazers_count":22,"open_issues_count":7,"forks_count":11,"subscribers_count":3,"default_branch":"master","last_synced_at":"2026-04-16T03:02:22.544Z","etag":null,"topics":["digital-elevation-model","geographical-information-system","geospatial","glacier","glaciers-flow","gradient","mass-balance","modeling"],"latest_commit_sha":null,"homepage":"https://doi.org/10.5281/zenodo.6418201","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/munterfi.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":"CONTRIBUTING.rst","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":"2017-07-09T17:38:06.000Z","updated_at":"2025-06-16T22:30:54.000Z","dependencies_parsed_at":"2024-01-07T11:50:35.186Z","dependency_job_id":"a22610eb-7371-437e-9617-3c56fa424bfb","html_url":"https://github.com/munterfi/glacier-flow-model","commit_stats":{"total_commits":427,"total_committers":2,"mean_commits":213.5,"dds":"0.44496487119437944","last_synced_commit":"07285717f08986f12b91b986301dc5367f1c0262"},"previous_names":["munterfinger/glacier-flow-model"],"tags_count":9,"template":false,"template_full_name":null,"purl":"pkg:github/munterfi/glacier-flow-model","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/munterfi","download_url":"https://codeload.github.com/munterfi/glacier-flow-model/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model/sbom","scorecard":{"id":668156,"data":{"date":"2025-08-11","repo":{"name":"github.com/munterfi/glacier-flow-model","commit":"07285717f08986f12b91b986301dc5367f1c0262"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.1,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/gdal-stable-test.yml:1","Warn: no topLevel permission defined: .github/workflows/gdal-unstable-test.yml:1","Warn: no topLevel permission defined: .github/workflows/package-check.yml:1","Warn: no topLevel permission defined: .github/workflows/package-publish.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Code-Review","score":-1,"reason":"Found no human activity in the last 15 changesets","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/gdal-stable-test.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/munterfi/glacier-flow-model/gdal-stable-test.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/gdal-stable-test.yml:15: update your workflow using https://app.stepsecurity.io/secureworkflow/munterfi/glacier-flow-model/gdal-stable-test.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/gdal-stable-test.yml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/munterfi/glacier-flow-model/gdal-stable-test.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/gdal-unstable-test.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/munterfi/glacier-flow-model/gdal-unstable-test.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/gdal-unstable-test.yml:15: update your workflow using https://app.stepsecurity.io/secureworkflow/munterfi/glacier-flow-model/gdal-unstable-test.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/gdal-unstable-test.yml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/munterfi/glacier-flow-model/gdal-unstable-test.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/package-check.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/munterfi/glacier-flow-model/package-check.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/package-check.yml:15: update your workflow using https://app.stepsecurity.io/secureworkflow/munterfi/glacier-flow-model/package-check.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/package-check.yml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/munterfi/glacier-flow-model/package-check.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/package-publish.yml:15: update your workflow using https://app.stepsecurity.io/secureworkflow/munterfi/glacier-flow-model/package-publish.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/package-publish.yml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/munterfi/glacier-flow-model/package-publish.yml/master?enable=pin","Warn: downloadThenRun not pinned by hash: .github/workflows/gdal-stable-test.yml:28","Warn: pipCommand not pinned by hash: .github/workflows/gdal-stable-test.yml:43","Warn: pipCommand not pinned by hash: .github/workflows/gdal-stable-test.yml:48","Warn: pipCommand not pinned by hash: .github/workflows/gdal-stable-test.yml:49","Warn: downloadThenRun not pinned by hash: .github/workflows/gdal-unstable-test.yml:27","Warn: pipCommand not pinned by hash: .github/workflows/gdal-unstable-test.yml:42","Warn: pipCommand not pinned by hash: .github/workflows/gdal-unstable-test.yml:47","Warn: pipCommand not pinned by hash: .github/workflows/gdal-unstable-test.yml:48","Warn: downloadThenRun not pinned by hash: .github/workflows/package-check.yml:25","Warn: downloadThenRun not pinned by hash: .github/workflows/package-publish.yml:27","Warn: pipCommand not pinned by hash: .github/workflows/package-publish.yml:48","Info:   0 out of  11 GitHub-owned GitHubAction dependencies pinned","Info:   1 out of   8 pipCommand dependencies pinned","Info:   0 out of   4 downloadThenRun dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 30 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":3,"reason":"7 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-cpwx-vrp4-4pq7","Warn: Project is vulnerable to: GHSA-gmj6-6f8f-6699","Warn: Project is vulnerable to: GHSA-q2x7-8rv6-6q7h","Warn: Project is vulnerable to: GHSA-9hjg-9r4m-mvj7","Warn: Project is vulnerable to: PYSEC-2025-49 / GHSA-5rjg-fvgr-3xxf","Warn: Project is vulnerable to: GHSA-48p4-8xcf-vxj5","Warn: Project is vulnerable to: GHSA-pq67-6m6q-mj2v"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-21T18:54:03.870Z","repository_id":37090453,"created_at":"2025-08-21T18:54:03.870Z","updated_at":"2025-08-21T18:54:03.870Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32212808,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-24T03:15:14.334Z","status":"ssl_error","status_checked_at":"2026-04-24T03:15:11.608Z","response_time":64,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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"}},"owner":{"login":"munterfi","name":"Merlin Unterfinger","uuid":"29773509","kind":"user","description":"Data Scientist at the Swiss Federal Railways (SBB),\r\nspecialized in Geographic Information Science.","email":"","website":"maptic.ch","location":"Zurich, Switzerland","twitter":"munterfi1","company":"SBB (Swiss Federal Railways)","icon_url":"https://avatars.githubusercontent.com/u/29773509?u=fa07a17148c815a23fc31a33582b315a97b47f08\u0026v=4","repositories_count":29,"last_synced_at":"2024-06-11T15:33:57.435Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/munterfi","funding_links":[],"total_stars":148,"followers":65,"following":50,"created_at":"2022-11-14T09:25:20.518Z","updated_at":"2024-06-11T15:33:59.164Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/munterfi","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/munterfi/repositories"},"packages":[{"id":424691,"name":"glacier-flow-model","ecosystem":"pypi","description":"Modeling glaciers on a digital elevation model based on mass balance and a modified D8 flow algorithm applied to ice","homepage":"https://pypi.org/project/glacier-flow-model/","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/munterfi/glacier-flow-model","keywords_array":[],"namespace":null,"versions_count":8,"first_release_published_at":"2020-10-18T00:40:58.000Z","latest_release_published_at":"2023-12-05T22:24:59.000Z","latest_release_number":"0.4.0","last_synced_at":"2026-04-24T07:00:39.011Z","created_at":"2022-04-06T18:25:55.003Z","updated_at":"2026-04-24T07:00:39.011Z","registry_url":"https://pypi.org/project/glacier-flow-model/","install_command":"pip install glacier-flow-model --index-url https://pypi.org/simple","documentation_url":"https://glacier-flow-model.readthedocs.io/en/latest/","metadata":{"funding":null,"documentation":"https://glacier-flow-model.readthedocs.io/en/latest/","classifiers":["License :: OSI Approved :: MIT License","Programming Language :: Python :: 3","Programming Language :: Python :: 3.11","Programming Language :: Python :: 3.12"],"normalized_name":"glacier-flow-model","project_status":null},"repo_metadata":{"uuid":"96700423","full_name":"munterfi/glacier-flow-model","owner":"munterfi","description":"Modeling glaciers on a digital elevation model (DEM) based on mass balance and a modified D8 flow algorithm applied to ice.","archived":false,"fork":false,"pushed_at":"2024-01-05T10:42:18.000Z","size":10203,"stargazers_count":16,"open_issues_count":2,"forks_count":9,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-01-05T20:36:38.499Z","etag":null,"topics":["digital-elevation-model","geographical-information-system","geospatial","glacier","glaciers-flow","gradient","mass-balance","modeling"],"latest_commit_sha":null,"homepage":"https://doi.org/10.5281/zenodo.6418201","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/munterfi.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":"CONTRIBUTING.rst","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}},"created_at":"2017-07-09T17:38:06.000Z","updated_at":"2024-01-05T20:36:38.500Z","dependencies_parsed_at":"2024-01-01T20:44:41.085Z","dependency_job_id":null,"html_url":"https://github.com/munterfi/glacier-flow-model","commit_stats":{"total_commits":336,"total_committers":4,"mean_commits":84.0,"dds":"0.44940476190476186","last_synced_commit":"29f1ead13f58d8e9eb5081285c577342277f4056"},"previous_names":[],"tags_count":9,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/munterfi","download_url":"https://codeload.github.com/munterfi/glacier-flow-model/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":179386892,"owners_count":10809524,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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"},"owner_record":{"login":"munterfi","name":"Merlin Unterfinger","uuid":"29773509","kind":"user","description":"Data Scientist at the Swiss Federal Railways (SBB),\r\nspecialized in Geographic Information Science.","email":"","website":"maptic.ch","location":"Zurich, Switzerland","twitter":"munterfi1","company":"SBB (Swiss Federal Railways)","icon_url":"https://avatars.githubusercontent.com/u/29773509?u=fa07a17148c815a23fc31a33582b315a97b47f08\u0026v=4","repositories_count":7,"last_synced_at":"2023-03-04T04:14:21.277Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/munterfi","created_at":"2022-11-14T09:25:20.518Z","updated_at":"2023-03-04T04:14:21.285Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/munterfi","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/munterfi/repositories"},"tags":[{"name":"v0.4.0","sha":"7688f29aea7e0209c6b3f305006485d89905a192","kind":"commit","published_at":"2023-12-05T21:53:41.000Z","download_url":"https://codeload.github.com/munterfi/glacier-flow-model/tar.gz/v0.4.0","html_url":"https://github.com/munterfi/glacier-flow-model/releases/tag/v0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model/tags/v0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model/tags/v0.4.0/manifests"},{"name":"v0.3.2","sha":"a025a3eab46f3bdf52c5e8acc8ca38933e155f77","kind":"commit","published_at":"2023-11-24T23:25:47.000Z","download_url":"https://codeload.github.com/munterfi/glacier-flow-model/tar.gz/v0.3.2","html_url":"https://github.com/munterfi/glacier-flow-model/releases/tag/v0.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model/tags/v0.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model/tags/v0.3.2/manifests"},{"name":"v0.3.1","sha":"f250269158a11a352666a715f0b267247487b62c","kind":"commit","published_at":"2022-12-22T17:31:29.000Z","download_url":"https://codeload.github.com/munterfi/glacier-flow-model/tar.gz/v0.3.1","html_url":"https://github.com/munterfi/glacier-flow-model/releases/tag/v0.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model/tags/v0.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model/tags/v0.3.1/manifests"},{"name":"v0.3.0","sha":"8ede50cd92ebd1f3a50ea29476791ec6cadf06b0","kind":"commit","published_at":"2022-12-07T00:44:59.000Z","download_url":"https://codeload.github.com/munterfi/glacier-flow-model/tar.gz/v0.3.0","html_url":"https://github.com/munterfi/glacier-flow-model/releases/tag/v0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model/tags/v0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model/tags/v0.3.0/manifests"},{"name":"v0.2.0","sha":"c4c07d0f0c05c812d1cf25cf60d94b4660737e4c","kind":"commit","published_at":"2022-04-06T13:14:23.000Z","download_url":"https://codeload.github.com/munterfi/glacier-flow-model/tar.gz/v0.2.0","html_url":"https://github.com/munterfi/glacier-flow-model/releases/tag/v0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model/tags/v0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model/tags/v0.2.0/manifests"},{"name":"v0.1.2","sha":"a4d4fcda2bddd03c786d29e016d56388d7968477","kind":"commit","published_at":"2021-10-02T12:28:13.000Z","download_url":"https://codeload.github.com/munterfi/glacier-flow-model/tar.gz/v0.1.2","html_url":"https://github.com/munterfi/glacier-flow-model/releases/tag/v0.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model/tags/v0.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model/tags/v0.1.2/manifests"},{"name":"v0.1.1-1","sha":"d66dc2f4f8071db8c2343fa276c2aa99efba18cd","kind":"commit","published_at":"2020-10-24T22:25:42.000Z","download_url":"https://codeload.github.com/munterfi/glacier-flow-model/tar.gz/v0.1.1-1","html_url":"https://github.com/munterfi/glacier-flow-model/releases/tag/v0.1.1-1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model/tags/v0.1.1-1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model/tags/v0.1.1-1/manifests"},{"name":"v0.1.1","sha":"d66dc2f4f8071db8c2343fa276c2aa99efba18cd","kind":"commit","published_at":"2020-10-24T22:25:42.000Z","download_url":"https://codeload.github.com/munterfi/glacier-flow-model/tar.gz/v0.1.1","html_url":"https://github.com/munterfi/glacier-flow-model/releases/tag/v0.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model/tags/v0.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model/tags/v0.1.1/manifests"},{"name":"v0.1.0","sha":"70b227a5a3cf13fec3ffb45f458d3e8109fd0b62","kind":"commit","published_at":"2020-10-18T00:32:51.000Z","download_url":"https://codeload.github.com/munterfi/glacier-flow-model/tar.gz/v0.1.0","html_url":"https://github.com/munterfi/glacier-flow-model/releases/tag/v0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model/tags/v0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model/tags/v0.1.0/manifests"}]},"repo_metadata_updated_at":"2024-01-05T20:44:31.794Z","dependent_packages_count":0,"downloads":61,"downloads_period":"last-month","dependent_repos_count":1,"rankings":{"downloads":15.425175761633747,"dependent_repos_count":21.5515601217656,"dependent_packages_count":10.117827917587048,"stargazers_count":15.640284676656858,"forks_count":11.406551133045038,"docker_downloads_count":null,"average":14.828279922137659},"purl":"pkg:pypi/glacier-flow-model","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/pypi/glacier-flow-model","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/pypi/glacier-flow-model","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pypi/glacier-flow-model/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2024-01-04T20:33:41.250Z","issues_count":0,"pull_requests_count":172,"avg_time_to_close_issue":null,"avg_time_to_close_pull_request":407617.24418604653,"issues_closed_count":0,"pull_requests_closed_count":172,"pull_request_authors_count":2,"issue_authors_count":0,"avg_comments_per_issue":null,"avg_comments_per_pull_request":0.9767441860465116,"merged_pull_requests_count":141,"bot_issues_count":0,"bot_pull_requests_count":168,"past_year_issues_count":0,"past_year_pull_requests_count":107,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":186760.63551401868,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":107,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":0.9439252336448598,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":105,"past_year_merged_pull_requests_count":94,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model/issues"},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/glacier-flow-model/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/glacier-flow-model/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/glacier-flow-model/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/glacier-flow-model/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/glacier-flow-model/codemeta","maintainers":[{"uuid":"munterfi","login":"munterfi","name":null,"email":null,"url":null,"packages_count":3,"html_url":"https://pypi.org/user/munterfi/","role":null,"created_at":"2022-11-14T18:23:51.300Z","updated_at":"2022-11-14T18:23:51.300Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/munterfi/packages"}],"registry":{"name":"pypi.org","url":"https://pypi.org","ecosystem":"pypi","default":true,"packages_count":849605,"maintainers_count":363024,"namespaces_count":0,"keywords_count":271316,"github":"pypi","metadata":{"funded_packages_count":53172},"icon_url":"https://github.com/pypi.png","created_at":"2022-04-04T15:19:23.364Z","updated_at":"2026-04-09T05:08:03.587Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/namespaces"}},{"id":11733262,"name":"github.com/munterfi/glacier-flow-model","ecosystem":"go","description":null,"homepage":null,"licenses":"mit","normalized_licenses":["MIT"],"repository_url":"https://github.com/munterfi/glacier-flow-model","keywords_array":[],"namespace":null,"versions_count":9,"first_release_published_at":"2020-10-18T00:32:51.000Z","latest_release_published_at":"2023-12-05T21:53:41.000Z","latest_release_number":"v0.4.0","last_synced_at":"2026-04-22T06:33:09.467Z","created_at":"2025-06-05T11:15:02.448Z","updated_at":"2026-04-22T06:33:09.467Z","registry_url":"https://pkg.go.dev/github.com/munterfi/glacier-flow-model","install_command":"go get github.com/munterfi/glacier-flow-model","documentation_url":"https://pkg.go.dev/github.com/munterfi/glacier-flow-model#section-documentation","metadata":{},"repo_metadata":{"id":37090453,"uuid":"96700423","full_name":"munterfi/glacier-flow-model","owner":"munterfi","description":"Modeling glaciers on a digital elevation model (DEM) based on mass balance and a modified D8 flow algorithm applied to ice.","archived":false,"fork":false,"pushed_at":"2025-03-06T03:34:10.000Z","size":10238,"stargazers_count":21,"open_issues_count":5,"forks_count":10,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-06-02T17:19:30.742Z","etag":null,"topics":["digital-elevation-model","geographical-information-system","geospatial","glacier","glaciers-flow","gradient","mass-balance","modeling"],"latest_commit_sha":null,"homepage":"https://doi.org/10.5281/zenodo.6418201","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/munterfi.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":"CONTRIBUTING.rst","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}},"created_at":"2017-07-09T17:38:06.000Z","updated_at":"2024-12-30T13:22:22.000Z","dependencies_parsed_at":"2024-01-07T11:50:35.186Z","dependency_job_id":"620d2d4d-6510-4be4-969b-78c915171412","html_url":"https://github.com/munterfi/glacier-flow-model","commit_stats":{"total_commits":427,"total_committers":2,"mean_commits":213.5,"dds":"0.44496487119437944","last_synced_commit":"07285717f08986f12b91b986301dc5367f1c0262"},"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/munterfi","download_url":"https://codeload.github.com/munterfi/glacier-flow-model/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":258192832,"owners_count":22662952,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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"}},"repo_metadata_updated_at":"2025-06-05T11:25:00.222Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":5.757538697138725,"dependent_packages_count":5.395053785167736,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":5.57629624115323},"purl":"pkg:golang/github.com/munterfi/glacier-flow-model","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/go/github.com/munterfi/glacier-flow-model","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/go/github.com/munterfi/glacier-flow-model","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/go/github.com/munterfi/glacier-flow-model/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-06-05T09:32:09.430Z","issues_count":0,"pull_requests_count":332,"avg_time_to_close_issue":null,"avg_time_to_close_pull_request":351350.4128440367,"issues_closed_count":0,"pull_requests_closed_count":327,"pull_request_authors_count":2,"issue_authors_count":0,"avg_comments_per_issue":null,"avg_comments_per_pull_request":0.7349397590361446,"merged_pull_requests_count":282,"bot_issues_count":0,"bot_pull_requests_count":328,"past_year_issues_count":0,"past_year_pull_requests_count":82,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":402762.54545454547,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":77,"past_year_pull_request_authors_count":1,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":0.21951219512195122,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":82,"past_year_merged_pull_requests_count":67,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model/issues","maintainers":[{"login":"munterfi","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/munterfi"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fmunterfi%2Fglacier-flow-model/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fmunterfi%2Fglacier-flow-model/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fmunterfi%2Fglacier-flow-model/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fmunterfi%2Fglacier-flow-model/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fmunterfi%2Fglacier-flow-model/codemeta","maintainers":[],"registry":{"name":"proxy.golang.org","url":"https://proxy.golang.org","ecosystem":"go","default":true,"packages_count":2107175,"maintainers_count":0,"namespaces_count":782439,"keywords_count":112823,"github":"golang","metadata":{"funded_packages_count":53495},"icon_url":"https://github.com/golang.png","created_at":"2022-04-04T15:19:22.939Z","updated_at":"2026-04-19T05:14:45.920Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/namespaces"}}],"commits":{"id":527989,"full_name":"munterfi/glacier-flow-model","default_branch":"master","total_commits":427,"total_committers":2,"total_bot_commits":237,"total_bot_committers":1,"mean_commits":213.5,"dds":0.44496487119437944,"past_year_total_commits":0,"past_year_total_committers":0,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":0.0,"past_year_dds":0.0,"last_synced_at":"2026-04-24T07:00:32.080Z","last_synced_commit":"07285717f08986f12b91b986301dc5367f1c0262","created_at":"2023-03-09T03:38:40.690Z","updated_at":"2026-04-24T07:00:31.630Z","committers":[{"name":"dependabot[bot]","email":"49699333+dependabot[bot]","login":"dependabot[bot]","count":237},{"name":"Merlin Unterfinger","email":"info@munterfinger.ch","login":"munterfi","count":190}],"past_year_committers":[],"commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-04-26T00:00:10.019Z","repositories_count":6218787,"commits_count":899448093,"contributors_count":34885722,"owners_count":1145603,"icon_url":"https://github.com/github.png","host_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories"}},"issues_stats":{"full_name":"munterfi/glacier-flow-model","html_url":"https://github.com/munterfi/glacier-flow-model","last_synced_at":"2026-04-22T06:00:55.634Z","status":"error","issues_count":0,"pull_requests_count":374,"avg_time_to_close_issue":null,"avg_time_to_close_pull_request":377670.9072463768,"issues_closed_count":0,"pull_requests_closed_count":345,"pull_request_authors_count":2,"issue_authors_count":0,"avg_comments_per_issue":null,"avg_comments_per_pull_request":0.6737967914438503,"merged_pull_requests_count":290,"bot_issues_count":0,"bot_pull_requests_count":370,"past_year_issues_count":0,"past_year_pull_requests_count":36,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":1414090.8235294118,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":17,"past_year_pull_request_authors_count":1,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":0.4166666666666667,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":36,"past_year_merged_pull_requests_count":4,"created_at":"2023-05-14T08:06:49.021Z","updated_at":"2026-04-22T06:00:55.634Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/munterfi%2Fglacier-flow-model/issues","issue_labels_count":{},"pull_request_labels_count":{"dependencies":368,"python":17,"enhancement":1,"bug":1},"issue_author_associations_count":{},"pull_request_author_associations_count":{"CONTRIBUTOR":369,"OWNER":5},"issue_authors":{},"pull_request_authors":{"dependabot[bot]":368,"munterfi":4,"amanthanvi":1,"sorenmat":1},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-04-24T00:00:07.455Z","repositories_count":14381483,"issues_count":34454124,"pull_requests_count":112790889,"authors_count":11244005,"icon_url":"https://github.com/github.png","host_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories","owners_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/owners","authors_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors"},"past_year_issue_labels_count":{},"past_year_pull_request_labels_count":{"dependencies":16,"python":16},"past_year_issue_author_associations_count":{},"past_year_pull_request_author_associations_count":{"CONTRIBUTOR":16},"past_year_issue_authors":{},"past_year_pull_request_authors":{"dependabot[bot]":16},"maintainers":[{"login":"munterfi","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/munterfi"},{"login":"amanthanvi","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/amanthanvi"}],"active_maintainers":[]},"events":{"total":{"DeleteEvent":21,"PullRequestEvent":39,"ForkEvent":2,"WatchEvent":3,"IssueCommentEvent":13,"PushEvent":10,"CreateEvent":25},"last_year":{"DeleteEvent":5,"PullRequestEvent":9,"ForkEvent":1,"WatchEvent":1,"IssueCommentEvent":4,"PushEvent":1,"CreateEvent":7}},"keywords":["digital-elevation-model","geographical-information-system","geospatial","glacier","glaciers-flow","gradient","mass-balance","modeling"],"dependencies":[{"ecosystem":"pypi","filepath":"poetry.lock","sha":null,"kind":"lockfile","created_at":"2022-06-24T14:37:26.232Z","updated_at":"2022-06-24T14:37:26.232Z","repository_link":"https://github.com/munterfi/glacier-flow-model/blob/master/poetry.lock","dependencies":[{"id":45848305,"package_name":"alabaster","ecosystem":"pypi","requirements":"0.7.12","direct":false,"kind":"develop","optional":false},{"id":45848306,"package_name":"atomicwrites","ecosystem":"pypi","requirements":"1.4.0","direct":false,"kind":"develop","optional":false},{"id":45848307,"package_name":"attrs","ecosystem":"pypi","requirements":"21.4.0","direct":false,"kind":"develop","optional":false},{"id":45848308,"package_name":"babel","ecosystem":"pypi","requirements":"2.9.1","direct":false,"kind":"develop","optional":false},{"id":45848309,"package_name":"beautifulsoup4","ecosystem":"pypi","requirements":"4.10.0","direct":false,"kind":"develop","optional":false},{"id":45848310,"package_name":"black","ecosystem":"pypi","requirements":"22.3.0","direct":false,"kind":"develop","optional":false},{"id":45848311,"package_name":"certifi","ecosystem":"pypi","requirements":"2021.10.8","direct":false,"kind":"develop","optional":false},{"id":45848312,"package_name":"charset-normalizer","ecosystem":"pypi","requirements":"2.0.12","direct":false,"kind":"develop","optional":false},{"id":45848313,"package_name":"click","ecosystem":"pypi","requirements":"8.1.2","direct":false,"kind":"develop","optional":false},{"id":45848314,"package_name":"codecov","ecosystem":"pypi","requirements":"2.1.12","direct":false,"kind":"develop","optional":false},{"id":45848315,"package_name":"colorama","ecosystem":"pypi","requirements":"0.4.4","direct":false,"kind":"develop","optional":false},{"id":45848316,"package_name":"coverage","ecosystem":"pypi","requirements":"6.3.2","direct":false,"kind":"develop","optional":false},{"id":45848317,"package_name":"cycler","ecosystem":"pypi","requirements":"0.11.0","direct":false,"kind":"runtime","optional":false},{"id":45848318,"package_name":"doc8","ecosystem":"pypi","requirements":"0.11.2","direct":false,"kind":"develop","optional":false},{"id":45848319,"package_name":"docutils","ecosystem":"pypi","requirements":"0.17.1","direct":false,"kind":"develop","optional":false},{"id":45848320,"package_name":"flake8","ecosystem":"pypi","requirements":"4.0.1","direct":false,"kind":"develop","optional":false},{"id":45848321,"package_name":"fonttools","ecosystem":"pypi","requirements":"4.31.2","direct":false,"kind":"runtime","optional":false},{"id":45848322,"package_name":"gdal","ecosystem":"pypi","requirements":"3.5.0.3","direct":false,"kind":"runtime","optional":false},{"id":45848323,"package_name":"idna","ecosystem":"pypi","requirements":"3.3","direct":false,"kind":"develop","optional":false},{"id":45848324,"package_name":"imagesize","ecosystem":"pypi","requirements":"1.3.0","direct":false,"kind":"develop","optional":false},{"id":45848325,"package_name":"importlib-metadata","ecosystem":"pypi","requirements":"4.11.3","direct":false,"kind":"develop","optional":false},{"id":45848326,"package_name":"iniconfig","ecosystem":"pypi","requirements":"1.1.1","direct":false,"kind":"develop","optional":false},{"id":45848327,"package_name":"jinja2","ecosystem":"pypi","requirements":"3.1.1","direct":false,"kind":"develop","optional":false},{"id":45848328,"package_name":"kiwisolver","ecosystem":"pypi","requirements":"1.4.2","direct":false,"kind":"runtime","optional":false},{"id":45848329,"package_name":"llvmlite","ecosystem":"pypi","requirements":"0.38.0","direct":false,"kind":"runtime","optional":false},{"id":45848330,"package_name":"markupsafe","ecosystem":"pypi","requirements":"2.1.1","direct":false,"kind":"develop","optional":false},{"id":45848331,"package_name":"matplotlib","ecosystem":"pypi","requirements":"3.5.2","direct":false,"kind":"runtime","optional":false},{"id":45848332,"package_name":"mccabe","ecosystem":"pypi","requirements":"0.6.1","direct":false,"kind":"develop","optional":false},{"id":45848333,"package_name":"mypy","ecosystem":"pypi","requirements":"0.961","direct":false,"kind":"develop","optional":false},{"id":45848334,"package_name":"mypy-extensions","ecosystem":"pypi","requirements":"0.4.3","direct":false,"kind":"develop","optional":false},{"id":45848335,"package_name":"numba","ecosystem":"pypi","requirements":"0.55.2","direct":false,"kind":"runtime","optional":false},{"id":45848336,"package_name":"numpy","ecosystem":"pypi","requirements":"1.22.4","direct":false,"kind":"runtime","optional":false},{"id":45848337,"package_name":"packaging","ecosystem":"pypi","requirements":"21.3","direct":false,"kind":"runtime","optional":false},{"id":45848338,"package_name":"pathspec","ecosystem":"pypi","requirements":"0.9.0","direct":false,"kind":"develop","optional":false},{"id":45848339,"package_name":"pbr","ecosystem":"pypi","requirements":"5.8.1","direct":false,"kind":"develop","optional":false},{"id":45848340,"package_name":"pillow","ecosystem":"pypi","requirements":"9.1.1","direct":false,"kind":"runtime","optional":false},{"id":45848341,"package_name":"platformdirs","ecosystem":"pypi","requirements":"2.5.1","direct":false,"kind":"develop","optional":false},{"id":45848342,"package_name":"pluggy","ecosystem":"pypi","requirements":"1.0.0","direct":false,"kind":"develop","optional":false},{"id":45848343,"package_name":"py","ecosystem":"pypi","requirements":"1.11.0","direct":false,"kind":"develop","optional":false},{"id":45848344,"package_name":"pycodestyle","ecosystem":"pypi","requirements":"2.8.0","direct":false,"kind":"develop","optional":false},{"id":45848345,"package_name":"pydantic","ecosystem":"pypi","requirements":"1.9.1","direct":false,"kind":"develop","optional":false},{"id":45848346,"package_name":"pydata-sphinx-theme","ecosystem":"pypi","requirements":"0.9.0","direct":false,"kind":"develop","optional":false},{"id":45848352,"package_name":"python-dateutil","ecosystem":"pypi","requirements":"2.8.2","direct":false,"kind":"runtime","optional":false},{"id":45848347,"package_name":"pyflakes","ecosystem":"pypi","requirements":"2.4.0","direct":false,"kind":"develop","optional":false},{"id":45848348,"package_name":"pygments","ecosystem":"pypi","requirements":"2.11.2","direct":false,"kind":"develop","optional":false},{"id":45848349,"package_name":"pyparsing","ecosystem":"pypi","requirements":"3.0.7","direct":false,"kind":"runtime","optional":false},{"id":45848350,"package_name":"pytest","ecosystem":"pypi","requirements":"7.1.2","direct":false,"kind":"develop","optional":false},{"id":45848351,"package_name":"pytest-cov","ecosystem":"pypi","requirements":"3.0.0","direct":false,"kind":"develop","optional":false},{"id":45848353,"package_name":"pytz","ecosystem":"pypi","requirements":"2022.1","direct":false,"kind":"develop","optional":false},{"id":45848354,"package_name":"requests","ecosystem":"pypi","requirements":"2.27.1","direct":false,"kind":"develop","optional":false},{"id":45848355,"package_name":"restructuredtext-lint","ecosystem":"pypi","requirements":"1.4.0","direct":false,"kind":"develop","optional":false},{"id":45848356,"package_name":"rstcheck","ecosystem":"pypi","requirements":"6.0.0.post1","direct":false,"kind":"develop","optional":false},{"id":45848357,"package_name":"rstcheck-core","ecosystem":"pypi","requirements":"1.0.2","direct":false,"kind":"develop","optional":false},{"id":45848358,"package_name":"scipy","ecosystem":"pypi","requirements":"1.8.1","direct":false,"kind":"runtime","optional":false},{"id":45848359,"package_name":"setuptools-scm","ecosystem":"pypi","requirements":"6.4.2","direct":false,"kind":"runtime","optional":false},{"id":45848360,"package_name":"shellingham","ecosystem":"pypi","requirements":"1.4.0","direct":false,"kind":"develop","optional":false},{"id":45848361,"package_name":"six","ecosystem":"pypi","requirements":"1.16.0","direct":false,"kind":"runtime","optional":false},{"id":45848362,"package_name":"snowballstemmer","ecosystem":"pypi","requirements":"2.2.0","direct":false,"kind":"develop","optional":false},{"id":45848363,"package_name":"soupsieve","ecosystem":"pypi","requirements":"2.3.1","direct":false,"kind":"develop","optional":false},{"id":45848364,"package_name":"sphinx","ecosystem":"pypi","requirements":"5.0.2","direct":false,"kind":"develop","optional":false},{"id":45848365,"package_name":"sphinxcontrib-applehelp","ecosystem":"pypi","requirements":"1.0.2","direct":false,"kind":"develop","optional":false},{"id":45848366,"package_name":"sphinxcontrib-devhelp","ecosystem":"pypi","requirements":"1.0.2","direct":false,"kind":"develop","optional":false},{"id":45848367,"package_name":"sphinxcontrib-htmlhelp","ecosystem":"pypi","requirements":"2.0.0","direct":false,"kind":"develop","optional":false},{"id":45848368,"package_name":"sphinxcontrib-jsmath","ecosystem":"pypi","requirements":"1.0.1","direct":false,"kind":"develop","optional":false},{"id":45848369,"package_name":"sphinxcontrib-qthelp","ecosystem":"pypi","requirements":"1.0.3","direct":false,"kind":"develop","optional":false},{"id":45848370,"package_name":"sphinxcontrib-serializinghtml","ecosystem":"pypi","requirements":"1.1.5","direct":false,"kind":"develop","optional":false},{"id":45848371,"package_name":"stevedore","ecosystem":"pypi","requirements":"3.5.0","direct":false,"kind":"develop","optional":false},{"id":45848372,"package_name":"tomli","ecosystem":"pypi","requirements":"2.0.1","direct":false,"kind":"runtime","optional":false},{"id":45848373,"package_name":"tomlkit","ecosystem":"pypi","requirements":"0.11.0","direct":false,"kind":"develop","optional":false},{"id":45848374,"package_name":"typer","ecosystem":"pypi","requirements":"0.4.1","direct":false,"kind":"develop","optional":false},{"id":45848375,"package_name":"types-docutils","ecosystem":"pypi","requirements":"0.18.2","direct":false,"kind":"develop","optional":false},{"id":45848376,"package_name":"typing-extensions","ecosystem":"pypi","requirements":"4.1.1","direct":false,"kind":"develop","optional":false},{"id":45848377,"package_name":"urllib3","ecosystem":"pypi","requirements":"1.26.9","direct":false,"kind":"develop","optional":false},{"id":45848378,"package_name":"zipp","ecosystem":"pypi","requirements":"3.8.0","direct":false,"kind":"develop","optional":false}]},{"ecosystem":"pypi","filepath":"pyproject.toml","sha":null,"kind":"manifest","created_at":"2022-06-24T14:37:27.128Z","updated_at":"2022-06-24T14:37:27.128Z","repository_link":"https://github.com/munterfi/glacier-flow-model/blob/master/pyproject.toml","dependencies":[{"id":45848422,"package_name":"tomlkit","ecosystem":"pypi","requirements":"^0.11.0","direct":true,"kind":"develop","optional":false},{"id":45848424,"package_name":"codecov","ecosystem":"pypi","requirements":"^2.1.12","direct":true,"kind":"develop","optional":false},{"id":45848403,"package_name":"python","ecosystem":"pypi","requirements":"\u003e=3.9,\u003c3.11","direct":true,"kind":"runtime","optional":false},{"id":45848404,"package_name":"scipy","ecosystem":"pypi","requirements":"^1.8.0","direct":true,"kind":"runtime","optional":false},{"id":45848405,"package_name":"numpy","ecosystem":"pypi","requirements":"^1.19.0","direct":true,"kind":"runtime","optional":false},{"id":45848407,"package_name":"GDAL","ecosystem":"pypi","requirements":"^3.4.1","direct":true,"kind":"runtime","optional":false},{"id":45848409,"package_name":"matplotlib","ecosystem":"pypi","requirements":"^3.5.1","direct":true,"kind":"runtime","optional":false},{"id":45848411,"package_name":"numba","ecosystem":"pypi","requirements":"^0.55.1","direct":true,"kind":"runtime","optional":false},{"id":45848412,"package_name":"pytest","ecosystem":"pypi","requirements":"^7.1.2","direct":true,"kind":"develop","optional":false},{"id":45848414,"package_name":"pytest-cov","ecosystem":"pypi","requirements":"^3.0.0","direct":true,"kind":"develop","optional":false},{"id":45848416,"package_name":"mypy","ecosystem":"pypi","requirements":"^0.961","direct":true,"kind":"develop","optional":false},{"id":45848418,"package_name":"Sphinx","ecosystem":"pypi","requirements":"^5.0.2","direct":true,"kind":"develop","optional":false},{"id":45848420,"package_name":"flake8","ecosystem":"pypi","requirements":"^4.0.1","direct":true,"kind":"develop","optional":false},{"id":45848426,"package_name":"pydata-sphinx-theme","ecosystem":"pypi","requirements":"^0.9.0","direct":true,"kind":"develop","optional":false},{"id":45848428,"package_name":"black","ecosystem":"pypi","requirements":"^22.1.0","direct":true,"kind":"develop","optional":false},{"id":45848429,"package_name":"rstcheck","ecosystem":"pypi","requirements":"^6.0.0","direct":true,"kind":"develop","optional":false},{"id":45848431,"package_name":"doc8","ecosystem":"pypi","requirements":"^0.11.2","direct":true,"kind":"develop","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/gdal-stable-test.yml","sha":null,"kind":"manifest","created_at":"2023-02-19T17:45:54.680Z","updated_at":"2023-02-19T17:45:54.680Z","repository_link":"https://github.com/munterfi/glacier-flow-model/blob/master/.github/workflows/gdal-stable-test.yml","dependencies":[{"id":7793393322,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":7793393323,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false},{"id":7793393324,"package_name":"actions/cache","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/gdal-unstable-test.yml","sha":null,"kind":"manifest","created_at":"2023-02-19T17:45:55.885Z","updated_at":"2023-02-19T17:45:55.885Z","repository_link":"https://github.com/munterfi/glacier-flow-model/blob/master/.github/workflows/gdal-unstable-test.yml","dependencies":[{"id":7793394438,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":7793394439,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false},{"id":7793394440,"package_name":"actions/cache","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/package-check.yml","sha":null,"kind":"manifest","created_at":"2023-02-19T17:45:56.630Z","updated_at":"2023-02-19T17:45:56.630Z","repository_link":"https://github.com/munterfi/glacier-flow-model/blob/master/.github/workflows/package-check.yml","dependencies":[{"id":7793394581,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":7793394582,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false},{"id":7793394583,"package_name":"actions/cache","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/package-publish.yml","sha":null,"kind":"manifest","created_at":"2023-02-19T17:45:56.677Z","updated_at":"2023-02-19T17:45:56.677Z","repository_link":"https://github.com/munterfi/glacier-flow-model/blob/master/.github/workflows/package-publish.yml","dependencies":[{"id":7793394623,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":7793394624,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"conda","filepath":"docs/environment.yml","sha":null,"kind":"manifest","created_at":"2024-01-07T11:50:29.512Z","updated_at":"2024-01-07T11:50:29.512Z","repository_link":"https://github.com/munterfi/glacier-flow-model/blob/master/docs/environment.yml","dependencies":[{"id":15474855736,"package_name":"matplotlib","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":15474855737,"package_name":"numba","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":15474855738,"package_name":"numpy","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":15474855739,"package_name":"pydata-sphinx-theme","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":15474856893,"package_name":"rasterio","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":15474858386,"package_name":"scipy","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":15474858390,"package_name":"sphinx","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":15474858393,"package_name":"tomlkit","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false}]}],"score":8.203577736937952,"created_at":"2023-09-13T12:51:49.866Z","updated_at":"2026-04-27T08:30:17.812Z","avatar_url":"https://github.com/munterfi.png","language":"Python","category":"Cryosphere","sub_category":"Glacier and Ice Sheets","monthly_downloads":61,"total_dependent_repos":1,"total_dependent_packages":0,"readme":".. image:: https://raw.githubusercontent.com/munterfi/glacier-flow-model/master/docs/source/_static/logo.svg\n   :width: 120 px\n   :alt: https://github.com/munterfi/glacier-flow-model\n   :align: right\n\n==================\nGlacier flow model\n==================\n\n.. image:: https://zenodo.org/badge/96700423.svg\n   :target: https://zenodo.org/badge/latestdoi/96700423\n\n.. image:: https://img.shields.io/pypi/v/glacier-flow-model.svg\n        :target: https://pypi.python.org/pypi/glacier-flow-model\n\n.. image:: https://github.com/munterfi/glacier-flow-model/workflows/check/badge.svg\n        :target: https://github.com/munterfi/glacier-flow-model/actions?query=workflow%3Acheck\n\n.. image:: https://readthedocs.org/projects/glacier-flow-model/badge/?version=latest\n        :target: https://glacier-flow-model.readthedocs.io/en/latest/\n        :alt: Documentation Status\n\n.. image:: https://codecov.io/gh/munterfi/glacier-flow-model/branch/master/graph/badge.svg?token=2Kh9EboLXx\n        :target: https://codecov.io/gh/munterfi/glacier-flow-model\n\nModeling glaciers on a digital elevation model (DEM) based on mass balance and\na modified D8 flow algorithm applied to ice.\n\nThe modeling is based on a linear relationship between altitude and mass\nbalance, the so-called mass balance gradient. For alpine glaciers this gradient\nis about 0.006 m/m. Continental glaciers tend to be at 0.003 and maritime\nglaciers at 0.01 m/m. The alpine gradient is set by default in the model.\nTo model the glaciers, annual steps are calculated. First the mass balance\n(accumulation and ablation) for the area is added to the glacier layer and in a\nsecond step the glacier flow is simulated by using a modified D8 technique\n(submodule :code:`fracd8`).\nSince the prupose of the D8 flow direction algorithm is modeling surface water\nflows over terrain, the D8 algorithm was modified to be able to consider the\nfraction of ice that is flowing out of each cell based on the glaciers\nvelocity. In order to avoid pure convergence of the flow, the surface of the\nglaciers is slightly smoothed. The simulation stops when the observed\ndifference in mass balance for a smoothed curve (default\n:code:`MODEL_TREND_SIZE=100`) is less than a given tolerance (default\n:code:`MODEL_TOLERANCE=0.0001`).\n\nGetting started\n---------------\n\nThe **glacier-flow-model** package depends on GDAL, which needs to be installed\non the system.\n\nGet the stable release of the package from pypi:\n\n.. code-block:: shell\n\n    pip install glacier-flow-model\n\nExample data\n____________\n\nThe package includes an example DEM from `swisstopo \u003chttps://www.swisstopo.admin.ch/en/home.html\u003e`_.\nIt covers a smaller extent around the Aletsch glacial arena in Switzerland with\na raster cell resolution of 200m.\n\n.. code-block:: python\n\n    from glacier_flow_model import PkgDataAccess\n    dem = PkgDataAccess.load_dem()\n\nThe original DEM can be downloaded `here \u003chttps://www.swisstopo.admin.ch/en/geodata/height/dhm25200.html\u003e`_.\n\nUsage\n_____\n\nTo set up a glacier flow model, a path to a DEM in the GeoTiff file format has\nto passed to the model class constructor. By default the mass balance\nparameters for alpine glaciers in the year 2000 are set. Keep the input file\nsize small, otherwise the model may be slowed down remarkably:\n\n.. code-block:: python\n\n    import logging\n    from glacier_flow_model import GlacierFlowModel, PkgDataAccess\n\n    LOG_FORMAT = \"[%(asctime)s %(levelname)s] %(message)s (%(name)s)\"\n    logging.basicConfig(format=LOG_FORMAT, level=logging.INFO)\n\n    gfm = GlacierFlowModel(PkgDataAccess.locate_dem())\n\nAfter initialization, the model needs to accumulate the initial ice mass until\nit reaches a steady state, call the :code:`reach_steady_state` method to do so:\n\n.. code-block:: python\n\n    gfm.reach_steady_state()\n\n.. image:: https://raw.githubusercontent.com/munterfi/glacier-flow-model/master/docs/source/_static/steady_state_initial.png\n   :alt: https://github.com/munterfi/glacier-flow-model\n   :align: center\n\nWhen the model is in a steady state, a temperature change of the climate can be\nsimulated. Simply use the :code:`simulate` method with a positive or negative\ntemperature change in degrees. The model changes the temperature gradually and\nsimulates years until it reaches a steady state again.\n\nHeating 4.5°C after initial steady state:\n\n.. code-block:: python\n\n    gfm.simulate(4.5)\n\n.. image:: https://raw.githubusercontent.com/munterfi/glacier-flow-model/master/docs/source/_static/steady_state_heating.png\n   :alt: https://github.com/munterfi/glacier-flow-model\n   :align: center\n\nCooling -3°C after initial steady state:\n\n.. code-block:: python\n\n    gfm.simulate(-3)\n\n.. image:: https://raw.githubusercontent.com/munterfi/glacier-flow-model/master/docs/source/_static/steady_state_cooling.png\n   :alt: https://github.com/munterfi/glacier-flow-model\n   :align: center\n\nExport the results of the model into :code:`.csv` and :code:`.tif` files:\n\n.. code-block:: python\n\n    gfm.export()\n\nThe GeoTiff contains the following bands, averaged over the last 10 simulation\nyears (default :code:`MODEL_RECORD_SIZE=10`):\n\n1. Glacier thickness [m].\n2. Velocity at medium height [m/a].\n3. Mass balance [m].\n\nCheck out the `video \u003chttps://munterfinger.ch/media/film/gfm.mp4\u003e`_ of the scenario simulation in the Aletsch\nglacial arena in Switzerland\n\nLimitations\n-----------\n\nThe model has some limitations that need to be considered:\n\n- The flow velocity of the ice per year is limited by the resolution of the\n  grid cells. Therefore, a too high resolution should not be chosen for the\n  simulation.\n- The modeling of ice flow is done with D8, a technique for modeling surface\n  flow in hydrology. Water behaves fundamentally different from ice, which is\n  neglected by the model (e.g. influence of crevasses).\n- The flow velocity only considers internal ice deformation (creep). Basal\n  sliding, and soft bed deformation are ignored.\n- No distinction is made between snow and ice. The density of the snow or ice\n  mass is also neglected in the vertical column.\n\nLicense\n-------\n\nThis project is licensed under the MIT License - see the LICENSE file for\ndetails\n","funding_links":[],"readme_doi_urls":[],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":["archiving","measur","optimize","transforms","observation","compose","generic","conversion","animals","projection"],"project_url":"https://ost.ecosyste.ms/api/v1/projects/51419","html_url":"https://ost.ecosyste.ms/projects/51419"}