{"id":29194,"name":"RICorDE","description":"Calculates floodwater depths using a digital elevation model and a flood extent polygon.","url":"https://github.com/NRCan/RICorDE","last_synced_at":"2026-04-14T22:30:18.691Z","repository":{"id":180431894,"uuid":"627989217","full_name":"NRCan/RICorDE","owner":"NRCan","description":"Gridded water depth estimates from flood inundation","archived":false,"fork":false,"pushed_at":"2023-08-06T10:58:41.000Z","size":118888,"stargazers_count":6,"open_issues_count":2,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2026-04-03T18:48:44.564Z","etag":null,"topics":["flood"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NRCan.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2023-04-14T16:43:30.000Z","updated_at":"2025-03-19T16:31:49.000Z","dependencies_parsed_at":null,"dependency_job_id":"f2f96288-ab10-48b9-a717-109a7f7231e2","html_url":"https://github.com/NRCan/RICorDE","commit_stats":{"total_commits":261,"total_committers":1,"mean_commits":261.0,"dds":0.0,"last_synced_commit":"4ead14df21f31ed0893495262bfcf3582501f483"},"previous_names":["nrcan/ricorde"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/NRCan/RICorDE","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NRCan%2FRICorDE","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NRCan%2FRICorDE/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NRCan%2FRICorDE/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NRCan%2FRICorDE/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NRCan","download_url":"https://codeload.github.com/NRCan/RICorDE/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NRCan%2FRICorDE/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31695165,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-11T20:18:30.949Z","status":"ssl_error","status_checked_at":"2026-04-11T20:18:29.982Z","response_time":54,"last_error":"SSL_read: 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":"NRCan","name":"Natural Resources Canada","uuid":"1929244","kind":"organization","description":"","email":null,"website":"https://natural-resources.canada.ca/","location":"Canada","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/1929244?v=4","repositories_count":42,"last_synced_at":"2026-02-19T03:45:38.915Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/NRCan","funding_links":[],"total_stars":266,"followers":97,"following":0,"created_at":"2022-11-15T05:54:02.845Z","updated_at":"2026-02-19T03:45:38.915Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NRCan","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NRCan/repositories"},"packages":[{"id":11733304,"name":"github.com/NRCan/RICorDE","ecosystem":"go","description":null,"homepage":null,"licenses":"other","normalized_licenses":["Other"],"repository_url":"https://github.com/NRCan/RICorDE","keywords_array":[],"namespace":null,"versions_count":1,"first_release_published_at":"2023-04-14T19:03:31.000Z","latest_release_published_at":"2023-04-14T19:03:31.000Z","latest_release_number":"v1.0.1","last_synced_at":"2026-04-11T21:01:25.482Z","created_at":"2025-06-05T11:15:17.489Z","updated_at":"2026-04-11T21:01:25.483Z","registry_url":"https://pkg.go.dev/github.com/NRCan/RICorDE","install_command":"go get github.com/NRCan/RICorDE","documentation_url":"https://pkg.go.dev/github.com/NRCan/RICorDE#section-documentation","metadata":{},"repo_metadata":{"id":180431894,"uuid":"627989217","full_name":"NRCan/RICorDE","owner":"NRCan","description":"Gridded water depth estimates from flood inundation","archived":false,"fork":false,"pushed_at":"2023-08-06T10:58:41.000Z","size":118888,"stargazers_count":6,"open_issues_count":2,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-05-31T16:28:51.402Z","etag":null,"topics":["flood"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NRCan.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2023-04-14T16:43:30.000Z","updated_at":"2025-03-19T16:31:49.000Z","dependencies_parsed_at":null,"dependency_job_id":"f2f96288-ab10-48b9-a717-109a7f7231e2","html_url":"https://github.com/NRCan/RICorDE","commit_stats":{"total_commits":261,"total_committers":1,"mean_commits":261.0,"dds":0.0,"last_synced_commit":"4ead14df21f31ed0893495262bfcf3582501f483"},"previous_names":["nrcan/ricorde"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NRCan%2FRICorDE","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NRCan%2FRICorDE/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NRCan%2FRICorDE/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NRCan%2FRICorDE/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NRCan","download_url":"https://codeload.github.com/NRCan/RICorDE/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NRCan%2FRICorDE/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":258182656,"owners_count":22661493,"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.225Z","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/%21n%21r%21can/%21r%21i%21cor%21d%21e","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/go/github.com/NRCan/RICorDE","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/go/github.com/NRCan/RICorDE","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/go/github.com/NRCan/RICorDE/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-06-05T08:30:48.880Z","issues_count":2,"pull_requests_count":0,"avg_time_to_close_issue":null,"avg_time_to_close_pull_request":null,"issues_closed_count":0,"pull_requests_closed_count":0,"pull_request_authors_count":0,"issue_authors_count":1,"avg_comments_per_issue":5.5,"avg_comments_per_pull_request":null,"merged_pull_requests_count":0,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":0,"past_year_pull_requests_count":0,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":0,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":null,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/NRCan%2FRICorDE/issues","maintainers":[],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2FNRCan%2FRICorDE/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2FNRCan%2FRICorDE/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2FNRCan%2FRICorDE/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2FNRCan%2FRICorDE/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2FNRCan%2FRICorDE/codemeta","maintainers":[],"registry":{"name":"proxy.golang.org","url":"https://proxy.golang.org","ecosystem":"go","default":true,"packages_count":2096403,"maintainers_count":0,"namespaces_count":780937,"keywords_count":112785,"github":"golang","metadata":{"funded_packages_count":53472},"icon_url":"https://github.com/golang.png","created_at":"2022-04-04T15:19:22.939Z","updated_at":"2026-04-12T05:07:59.798Z","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"}},{"id":11733307,"name":"github.com/nrcan/ricorde","ecosystem":"go","description":null,"homepage":null,"licenses":"other","normalized_licenses":["Other"],"repository_url":"https://github.com/nrcan/ricorde","keywords_array":[],"namespace":null,"versions_count":1,"first_release_published_at":"2023-04-14T19:03:31.000Z","latest_release_published_at":"2023-04-14T19:03:31.000Z","latest_release_number":"v1.0.1","last_synced_at":"2026-04-11T21:01:25.482Z","created_at":"2025-06-05T11:15:18.223Z","updated_at":"2026-04-11T21:01:25.483Z","registry_url":"https://pkg.go.dev/github.com/nrcan/ricorde","install_command":"go get github.com/nrcan/ricorde","documentation_url":"https://pkg.go.dev/github.com/nrcan/ricorde#section-documentation","metadata":{},"repo_metadata":{"id":180431894,"uuid":"627989217","full_name":"NRCan/RICorDE","owner":"NRCan","description":"Gridded water depth estimates from flood inundation","archived":false,"fork":false,"pushed_at":"2023-08-06T10:58:41.000Z","size":118888,"stargazers_count":6,"open_issues_count":2,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-05-31T16:28:51.402Z","etag":null,"topics":["flood"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NRCan.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2023-04-14T16:43:30.000Z","updated_at":"2025-03-19T16:31:49.000Z","dependencies_parsed_at":null,"dependency_job_id":"f2f96288-ab10-48b9-a717-109a7f7231e2","html_url":"https://github.com/NRCan/RICorDE","commit_stats":{"total_commits":261,"total_committers":1,"mean_commits":261.0,"dds":0.0,"last_synced_commit":"4ead14df21f31ed0893495262bfcf3582501f483"},"previous_names":["nrcan/ricorde"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NRCan%2FRICorDE","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NRCan%2FRICorDE/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NRCan%2FRICorDE/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NRCan%2FRICorDE/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NRCan","download_url":"https://codeload.github.com/NRCan/RICorDE/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NRCan%2FRICorDE/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":258211357,"owners_count":22665346,"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.225Z","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/nrcan/ricorde","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/go/github.com/nrcan/ricorde","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/go/github.com/nrcan/ricorde","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/go/github.com/nrcan/ricorde/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-06-05T08:30:48.880Z","issues_count":2,"pull_requests_count":0,"avg_time_to_close_issue":null,"avg_time_to_close_pull_request":null,"issues_closed_count":0,"pull_requests_closed_count":0,"pull_request_authors_count":0,"issue_authors_count":1,"avg_comments_per_issue":5.5,"avg_comments_per_pull_request":null,"merged_pull_requests_count":0,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":0,"past_year_pull_requests_count":0,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":0,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":null,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/NRCan%2FRICorDE/issues","maintainers":[],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fnrcan%2Fricorde/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fnrcan%2Fricorde/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fnrcan%2Fricorde/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fnrcan%2Fricorde/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fnrcan%2Fricorde/codemeta","maintainers":[],"registry":{"name":"proxy.golang.org","url":"https://proxy.golang.org","ecosystem":"go","default":true,"packages_count":2096403,"maintainers_count":0,"namespaces_count":780937,"keywords_count":112785,"github":"golang","metadata":{"funded_packages_count":53472},"icon_url":"https://github.com/golang.png","created_at":"2022-04-04T15:19:22.939Z","updated_at":"2026-04-12T05:07:59.798Z","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":1340877,"full_name":"NRCan/RICorDE","default_branch":"main","total_commits":261,"total_committers":1,"total_bot_commits":0,"total_bot_committers":0,"mean_commits":261.0,"dds":0.0,"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-11T21:00:38.057Z","last_synced_commit":"4ead14df21f31ed0893495262bfcf3582501f483","created_at":"2023-09-12T08:39:03.926Z","updated_at":"2026-04-11T21:00:38.038Z","committers":[{"name":"cefect","email":"cefect@gmail.com","login":"cefect","count":261}],"past_year_committers":[],"commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/NRCan%2FRICorDE/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-04-13T00:00:06.408Z","repositories_count":6213067,"commits_count":903857731,"contributors_count":34932923,"owners_count":1144142,"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":"NRCan/RICorDE","html_url":"https://github.com/NRCan/RICorDE","last_synced_at":"2026-02-17T19:00:49.174Z","status":"error","issues_count":2,"pull_requests_count":0,"avg_time_to_close_issue":null,"avg_time_to_close_pull_request":null,"issues_closed_count":0,"pull_requests_closed_count":0,"pull_request_authors_count":0,"issue_authors_count":1,"avg_comments_per_issue":5.5,"avg_comments_per_pull_request":null,"merged_pull_requests_count":0,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":0,"past_year_pull_requests_count":0,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":0,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":null,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"created_at":"2023-09-12T08:39:09.537Z","updated_at":"2026-02-17T19:00:49.174Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/NRCan%2FRICorDE","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/NRCan%2FRICorDE/issues","issue_labels_count":{"enhancement":1},"pull_request_labels_count":{},"issue_author_associations_count":{"NONE":2},"pull_request_author_associations_count":{},"issue_authors":{"roescob":2},"pull_request_authors":{},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-04-13T00:00:15.727Z","repositories_count":14247381,"issues_count":34612088,"pull_requests_count":113072260,"authors_count":11233761,"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":{},"past_year_issue_author_associations_count":{},"past_year_pull_request_author_associations_count":{},"past_year_issue_authors":{},"past_year_pull_request_authors":{},"maintainers":[],"active_maintainers":[]},"events":{"total":{"WatchEvent":2},"last_year":{}},"keywords":["flood"],"dependencies":[],"score":null,"created_at":"2023-09-12T07:41:32.070Z","updated_at":"2026-04-14T22:30:18.706Z","avatar_url":"https://github.com/NRCan.png","language":"Python","category":"Climate Change","sub_category":"Natural Hazard and Storms","monthly_downloads":0,"total_dependent_repos":0,"total_dependent_packages":0,"readme":"# RICorDE\nRICorDE produces gridded water depth estimates from flood inundation data by incorporating a HAND sub-model and cost distancing algorithms to extrapolate edge values into the inundated region. \n\n![img](/img/cover.png)\n\nRICorDE is an open source software originally released under the Government of Canada’s Open Government License. RICorDE was co-developed by Bryant, McGrath and Boudreault. Full description of the methodology can be found here: Bryant, S., McGrath, H., and Boudreault, M.: Gridded flood depth estimates from satellite-derived inundations, Nat. Hazards Earth Syst. Sci., 22, 1437–1450, https://doi.org/10.5194/nhess-22-1437-2022, 2022.\n\nTo read more about the algorithm, and its performance and applications, see [Bryant 2022](https://nhess.copernicus.org/articles/22/1437/2022/nhess-22-1437-2022.html).\n\nTo see what's new, check out the [CHANGELOG.md](CHANGELOG.md)\n\n## Installation\ntldr: clone, create your own definitions.py file, run from pyqgis command line\n\n### Prerequisites\nRICorDE is a standalone application built on open source QGIS python bindings and WhiteboxTools.  Before using, ensure the following are installed:\n\n- [QGIS 3.22.8](https://download.qgis.org/downloads/) \n- [WhiteboxTools Open Core v2.1.0](https://www.whiteboxgeo.com/download-whiteboxtools/). (this should install a _whitebox_tools.exe_ file you'll reference in ./definitions.py) \n\nRICorDE must be run within a working pyqgis environment. To test if your environment is working, try the following:\n```\n~python\n\u003e\u003e\u003eimport qgis.core\n\u003e\u003e\u003eimport processing\n```\nIf any of these result in an error, your environment is not set up correctly. \n\nThe tutorials assume your pyqgis environment is activated by calling `./dev/activate_py.bat` within windows cmd. This is not strictly necessary, but makes scripting model runs much easier. See `./CONTRIBUTING.md` for some advice on setting up such a batch script and a virtual pyqgis environment. \n\n### Setup\n1. clone this repo `git clone https://github.com/NRCan/RICorDE.git`\n2. create a `./definitions.py` file as shown below modified to your system\n3. add the source folder to your PYTHONPATH (see `./dev/activate_py.bat`)\n\nNow you're ready to activate your python environment and use the Command Line Interface (see below)!\n\nsee `./tests/README.md` for testing\n\nexample `./definitions.py`:\n```\nimport os\n#location of whitebox executable\n\"\"\"\nChange this to match your whitebox exe path\n\"\"\"\nwhitebox_exe_d = {'v2.1.0':r'C:\\LS\\06_SOFT\\whitebox\\v2.1.0\\whitebox_tools.exe'}\n\n#maximum processors to use\nmax_procs = 4 \n\n#location of source code\nproj_dir = os.path.dirname(os.path.abspath(__file__))\n\n#path to python logging config file\nlogcfg_file=os.path.join(proj_dir, 'logger.conf')\n\n#root directory for building default directories in\nroot_dir=r'C:\\LS\\10_IO\\ricorde'\n```\n\n## Use\nRICorDE routines can be run in sequence using the command-line parsing in [main.py](main.py) or by calling the session methods in [ricorde/scripts.py](ricorde/scripts.py) directly in custom python scripts.\n\n### Command Line Interface (CLI)\nAn end-to-end run of the RICorDE algorithm is provided through the CLI by specifying a parameter.ini file:\n\n`~python main.py path/to/parameter.ini`\n\nAdditional arguments can be passed to control RICorDE's file behaviour and some defaults. Information on these controls can be obtained through the help command:\n```\n~python main.py -h\n\n\nusage: RICorDE [-h] [-exit_summary] [-compress {hiT,hi,med,none}]\n               [-root_dir ROOT_DIR] [-out_dir OUT_DIR] [-temp_dir TEMP_DIR]\n               [-tag TAG] [-write] [-prec PREC] [-overwrite]\n               [-relative]\n               param_fp\n\nCompute a depths grid from flood inundation and DEM\n\npositional arguments:\n  param_fp              filepath to parameter .txt file (see documentation for\n                        format)\n\noptional arguments:\n  -h, --help            show this help message and exit\n  -compress {hiT,hi,med,none}, -c {hiT,hi,med,none}\n                        set the default raster compression level\n  -root_dir ROOT_DIR, -rd ROOT_DIR\n                        Base directory of the project. Used for generating\n                        default directories. Defaults to value in definitions\n  -tag TAG, -t TAG      tag for the run\n\n```\n\n\n#### Parameter.ini file\n\nA RICorDE parameter file is a [pythonic ini file](https://docs.python.org/3/library/configparser.html#supported-ini-file-structure) where the input data and algorithm parameters are specified. The parameter file expects 20 sections, each of which corresponds to an intermediate or end result file, except for the [session] section where the primary inputs are specified. Here's the first 10 rows from [RICorDE_params_default.ini](RICorDE_params_default.ini) \n```\n[session]\nname=project1       #project name\naoi_fp =            #optional area of interest polygon filepath\ndem_fp=             #dem rlay filepath\npwb_fp=             #permanent water body filepath (raster or polygon)\ninun_fp=            #inundation filepath (raster or polygon)\ncrsid=EPSG:4326     #CRSID\n\n[dem]\n#resolution =10             #optional resolution for resampling the DEM\n```\nCharacters following '#' are ignored. \n\nTo prepare a RICorDE run, first copy the provided [RICorDE_params_default.ini](RICorDE_params_default.ini) into your working directory, then edit as needed, before saving and executing using main.py (see above).\n\n#### Typical CLI use\n\nOnce your parameter.ini file is prepared and you've decided on your run arguments, prepare your python call as shown above. For example:\n\n`python main.py -rd path/to/my/work -t r0 path/to/parameter.ini`\n\nthen execute this in your pyqgis environment. On Windows, this is typically accomplished via a batch script which performs the environment setup then makes the RICorDE call. An example of such a batch script is provided in the [tutorials folder](tutorial\\bryant2022_fred12\\run_tutorial.bat) (be sure to edit this with your own paths). Once you're confident the run is configured correctly, python's '-O' flag can be passed to remove some checks. \n\n### Custom Scripting\n\nFor more flexibility, RICorDE methods can be called in custom python scripts by referencing the session methods in [ricorde/scripts.py](ricorde/scripts.py) directly. The function [_run_from_params_](ricorde/runrs.py) provides a nice example (this is the default behaviour of the CLI call) and calls the following hi-level function sequence: \n```\nrun_dataPrep() #Clean and load inputs into memory.\nrun_HAND() #Build the HAND raster from the DEM using whiteboxtools\nrun_imax() #Perform the Phase 1: Inundation Correction\nrun_HANDgrid() #Perform PHASE2: Compute Rolling HAND grid\nrun_wslRoll() #Perform PHASE3: Rolling WSL grid\nrun_depths() #PHASE4: Resultant Depths computation\n```\nWhen developing your custom script, parameters from the parameter.ini file should be passed to the session as a dictionary in the _bk_lib_ key word argument (these can be loaded from the _load_params_ function if you'd like to still use the parameter.ini file). \n\nA typical end-to-end RICorDE run generates ~20 intermediate result data files. This architecture is useful for debugging, resuming a partial run, or for quickly replacing the results of some internal sub-routine (e.g., supplying your own HAND layer rather than using the one computed by RICorDE/WBT). Filepaths to an alternate intermediate (pre-compiled) result data file can be passed to a 'Session' object (e.g., via 'run_from_params') with the 'compiled_fp_d' key. For example:\n```\n    run_from_params(\n        param_fp='path_to_parameters',\n\n        #use this hand raster file instead\n        compiled_fp_d = {'hand_fp':'path_to_layer'},\n        )\n```\nThis will tell RICorDE to use the raster specified rather than call the building function (`build_hand` in this case). Most the building and (pre-compiled) loading functions are specified [here](https://github.com/cefect/RICorDE/blob/8579036e0747c4d97c391968772832f73d564741/ricorde/scripts.py#L66). Using this feature to supply an intermediate data file computed outside of RICorDE is not recommended as this may cause downstream issues in the computation pipeline. \n\n## Tutorial\n\nA pre-configured run of the Fredericton 2018 flood is provided in the [tutorials](tutorials\\bryant2022_fred12) folder. See [Bryant 2022](https://nhess.copernicus.org/articles/22/1437/2022/nhess-22-1437-2022.html) for data sources. Edit the batch file to reflect your own paths. A short video showing the execution of this tutorial can be found [here](https://youtu.be/BzAeMpCo23c).\n\n## Logging\n\nFor each run, RICorDE creates four log files [in a directory]:\n\n- __root.log__: This is the debug log where all messages from all runs are stored [root_dir]. \n- __rootwarn.log__: Same as root.log, but only warnings and errors are stored [root_dir].\n- __Qproj.log__: Same as root.log, but only QGIS feedback messages are stored [root_dir].\n- __tag_datetime.log__: This log stores all messages for an individual run and is used to document the results [out_dir]\n\n\nGood luck! and thank you for  your interest in the project. We'd love to hear from you, so please post an issue with suggestions or questions.\n","funding_links":[],"readme_doi_urls":["https://doi.org/10.5194/nhess-22-1437-2022"],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":["canada","disaster","flood-risk-models","qgis"],"project_url":"https://ost.ecosyste.ms/api/v1/projects/29194","html_url":"https://ost.ecosyste.ms/projects/29194"}