{"id":18368924,"url":"https://github.com/cheginit/bankfull-physio","last_synced_at":"2026-02-27T19:05:30.185Z","repository":{"id":222215095,"uuid":"756551118","full_name":"cheginit/bankfull-physio","owner":"cheginit","description":"Bankfull Regression Equations for CONUS","archived":false,"fork":false,"pushed_at":"2024-02-13T23:12:02.000Z","size":604,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-30T21:29:03.945Z","etag":null,"topics":["bankfull","conus","hydrological-modelling"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cheginit.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-02-12T21:28:23.000Z","updated_at":"2024-07-16T16:34:52.000Z","dependencies_parsed_at":"2024-02-13T00:45:09.490Z","dependency_job_id":"b66d3903-5eca-4343-8b57-5dfcbcd1ee93","html_url":"https://github.com/cheginit/bankfull-physio","commit_stats":null,"previous_names":["cheginit/bankfull-physio"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/cheginit/bankfull-physio","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cheginit%2Fbankfull-physio","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cheginit%2Fbankfull-physio/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cheginit%2Fbankfull-physio/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cheginit%2Fbankfull-physio/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cheginit","download_url":"https://codeload.github.com/cheginit/bankfull-physio/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cheginit%2Fbankfull-physio/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29909260,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-27T17:28:36.873Z","status":"ssl_error","status_checked_at":"2026-02-27T17:28:20.970Z","response_time":57,"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"}},"keywords":["bankfull","conus","hydrological-modelling"],"created_at":"2024-11-05T23:27:53.626Z","updated_at":"2026-02-27T19:05:30.164Z","avatar_url":"https://github.com/cheginit.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Bankfull Regression Equations for CONUS\n\nThe dataset generated by the methodology presented in this repository can\nbe directly downloaded from this repository (`bankfull_physio.parquet`) or\n[HydroShare](https://www.hydroshare.org/resource/5d3ab5cc521344c881c38621fa3769f1/)\nusing\n[this link](https://www.hydroshare.org/resource/5d3ab5cc521344c881c38621fa3769f1/data/contents/bankfull_phyiso.parquet).\n\nFor example, in Python, after installing `geopandas` and `pyarrow`, you can\ndownload and read this GeoParquet file as follows:\n\n```python\nimport geopandas as gpd\nimport urllib.request\n\nurl = \"https://www.hydroshare.org/resource/5d3ab5cc521344c881c38621fa3769f1/data/contents/bankfull_phyiso.parquet\"\nfile_path = \"bankfull_phyiso.parquet\"\n_ = urllib.request.urlretrieve(url, file_path)\n\nbf = gpd.read_parquet(file_path)\n```\n\n## Motivation\n\nFor hydrological and hydraulic modeling, the bankfull width and depth are\nimportant parameters that are challenging to measure in the field and/or\nestimate a priori. Many studies suggested different methodologies for estimating\nthese parameters based on various geomorphological and hydrological characteristics.\nOne such study is by [Bieger et al. (2015)](https://doi.org/10.1111/jawr.12282)\nwhich proposed a methodology to estimate bankfull width and depth for the conterminous\nUnited States (CONUS) using regression equations. They gathered hydraulic geometry\ndata from hundreds of sites across the CONUS and developed regional regression\nequations for the\n[Physiographic Regions of CONUS](https://www.sciencebase.gov/catalog/item/631405bbd34e36012efa304e).\nThe general form of the regression equations is:\n\n$$\nY = a \\times A^b,\n$$\n\nwhere $Y$ is the bankfull width or depth, $A$ is the upstream  drainage area, and\n$a$ and $b$ are the coefficients of the regression equation. These coefficients are\nspecific to each physiographic region. Thus, bankfull width and depth can be\nestimated for any location in the CONUS using upstream drainage area and the coefficients\nof the corresponding physiographic region.\n\nHowever, the dataset provided by Bieger et al. (2015) is not readily available\nfor use in hydrological and hydraulic modeling. This repository aims to provide\na methodology to generate a geospatial dataset for the bankfull width and depth\nof the CONUS using the regression equations provided by Bieger et al. (2015).\nSo, users can easily query the bankfull width and depth for any location in the\nCONUS using the drainage area and the coefficients of the corresponding physiographic.\n\n## Methodology\n\nYou can run `bankfull_physio.py` to reproduce the dataset. The script depends on\n`pandas`, `geopandas`, `pyogrio`, `pyarrow`, and `openpyxl` packages that can be installed\nwith `pip` or `mamba`:\n\n```bash\npip install pandas geopandas pyogrio pyarrow openpyxl\n```\n\nor\n\n```bash\nmamba install pandas geopandas-base pyogrio pyarrow openpyxl\n```\n\nHere is a brief overview of the methodology to generate the bankfull width\nand depth dataset:\n\n1. From the supplementary material of Bieger et al. (2015), which is a Microsoft\n   Word file, convert SUPPLEMENTARY TABLE 1 to an Excel file. Save the results\n   to `bankfull_equations.xlsx`.\n1. Extract the coefficients of the regression equations for each physiographic\n   region.\n1. Download the Physiographic Regions of CONUS shapefile from the\n   [ScienceBase](https://www.sciencebase.gov/catalog/item/631405bbd34e36012efa304e).\n1. Ensure the keywords for the regions in the shapefile match the keywords in the\n   Excel file.\n1. Use the shapefile and the coefficients to generate the bankfull width and depth\n    dataset for the CONUS.\n1. Save the dataset to a GeoParquet file.\n\n![Bankfull width](width_plot.png)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcheginit%2Fbankfull-physio","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcheginit%2Fbankfull-physio","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcheginit%2Fbankfull-physio/lists"}