DOI: 10.5061/dryad.fttdz091q
title: Data for: Quantifying Bankfull Flow Width Using Preserved Bar Clinoforms from Fluvial Strata

description: Reconstruction of active channel geometry from fluvial strata is critical
 to constrain the water and sediment fluxes in ancient terrestrial
 landscapes. Robust methods—grounded in extensive field observations,
 numerical simulations, and physical experiments—exist for estimating the
 bankfull flow depth and channel-bed slope from preserved deposits;
 however, we lack similar tools to quantify bankfull channel widths. We
 combined high-resolution lidar data from 134 meander bends across 11
 rivers that span over two orders of magnitude in size to develop a robust,
 empirical relation between the bankfull channel width and channel-bar
 clinoform width (relict stratigraphic surfaces of bank-attached channel
 bars). We parameterized the bar cross-sectional shape using a
 two-parameter sigmoid, defining bar width as the cross-stream distance
 between 95% of the asymptotes of the fit sigmoid. We combined this
 objective definition of the bar width with Bayesian linear regression
 analysis to show that the measured bankfull flow width is 2.34 ± 0.13
 times the channel-bar width. We validated our model using field
 measurements of channel-bar and bankfull flow widths of meandering rivers
 that span all climate zones (R2 = 0.79) and concurrent measurements of
 channel-bar clinoform width and mud-plug width in fluvial strata (R2 =
 0.80). We also show that the transverse bed slopes of bars are inversely
 correlated with bend curvature, consistent with theory. Results provide a
 simple, usable metric to derive paleochannel width from preserved bar
 clinoforms.
description: This README file was generated on 2024-04-24 # General information: ##
 Dataset title Data for "Quantifying bankfull flow width using
 preserved bar clinoforms from fluvial strata" ## Overview This
 supplementary dataset supports an analysis to build a predictive model of
 river channel width from the depositional record of their bar deposits,
 i.e., clinoforms. Included here are all the input data to generate
 topographic cross-sections and measurements of river channel width for 11
 meandering rivers. The output data, including measurements of bar width,
 channel width, and the selected cross-sections, are also provided. Output
 data is generated from the companion software archive:
 [https://doi.org/10.5281/zenodo.11053670](https://doi.org/10.5281/zenodo.11053670). The associated manuscript is: [https://doi.org/10.1130/G48729.1](https://doi.org/10.1130/G48729.1). ## Data Formats * **Data Files:**: * **.csv**: Broadly used to organize tabular data. They are generally used to record point-source measurements and data locations. Naming conventions are descriptive. * **.npy**: Binary data format to persist a single numpy array into memory. These are used to record all cross-section elevation data for each river. See: [https://numpy.org/doc/stable/reference/generated/numpy.load.html](https://numpy.org/doc/stable/reference/generated/numpy.load.html) for help loading into memory. * **Raster Files:** * **.tif**: GeoTIFF files. This is a raster format that represents n-dim array-like data with an associated Geotransform that fixes the array in spatial coordinates. There are two types of GeoTiffs included in this repsository: 1. Water masks. These are single band GeoTIFFs with the the occurence value for water presence at a specific pixel location. They are sourced from the "Global Surface Water" product: [https://global-surface-water.appspot.com/download](https://global-surface-water.appspot.com/download) 2. Digital Elevation Models (DEMs). These are single band GeoTIFFs with topographic information saved at each pixel. * **config Files:** * **.yaml**: This is a data format to persist key: value pairs. They are used as input configuration files for the codes found in the associated software repository(10.5281/zenodo.11053670). ## Recommended Software for Data Analysis: ### Geogrpahic Data (GIS) Raster and tabular data can all be visualized using GIS software. We use **QGIS**, an open-source GIS program, but **ArcGIS** can be equally used. All .tif, and .csv files are spatially located. GeoTIFF files include a EPSG (coordinate system). CSV files are either in geographic coordinates, i.e. Latitude and Longitude (EPSG: 4326 WGS 1984), or in projected coordinates (UTM), which match the .tif files for the associated river. The naming convention is to use Lon/Lat for the EPSG: 4326 coordinates and Easting/Northing for the UTM coordinates. ### Scripting The project uses **Python**-based geospatial stack. To work with the Python files themselves, you can use any text/code editor (e.g. Visual Studio Code, Atom, Vim) or scripting environment (e.g. PyCharm, Spyder, Visual Studio). Files were developed in Vim side-by-side with an IPython terminal. The codes designs reflect this, and are not run in the command line, but rather in a terminal. Some import packages used for the analysis are: * Rasterio * Shapely * Geopandas * Pyproj * Scipy * Pandas * Numpy Code available in the GitHub repository: [https://github.com/evan-greenbrg/BarWidth](https://github.com/evan-greenbrg/BarWidth) # Content: ## Overall description of the data Directories contain data for each river used in the analyses. There is also a directory that has the aggregated data. The directories are as follows: ├── AggregatedData\ ├── Brazos\ ├── Koyukuk\ ├── Mississippi\ ├── Mississippi_Leclair\ ├── Nestucca\ ├── Powder\ ├── Red\ ├── RioGrande\ ├── Sacramento\ ├── Tombigbee\ ├── Trinity\ ├── White\ ## Detailed description of the data ### ├── AggregatedData: This includes the aggregated primary data produced from the individual rivers as well as aggregated published data that is used for validation. The files are: Overview directory structure: ├── AggregatedData    ├── bar_average_data.csv    ├── Lit_values.csv    ├── total_data.csv These are more unique across the tabular data included in the repository. Descriptions of the files are: **├── bar_average_data.csv** Primary data aggregated at the bar scale. Columns: * **bar**: Bar number that the measurement comes from. Repeats for each river. * **channel_width_m**: Bar average channel width measurement. In meters. * **bar_width_m**: Bar average bar width measurement. In meters. * **bar_height_m**: Bar average bar height measurement. In meters. * **channel_width_m_std**: Standard deviation of channel width measurements within the bar. In meters. * **bar_width_m_std**: Standard deviation of bar width measurements within the bar. In meters. * **bar_height_std**: Standard deviation of bar height measurements within the bar. In meters * **river**: The river name that the bar comes from. **├── Lit_values.csv** Measurements of channel bar clinoforms from published panels of fluvial stratigraphy. Columns: **River**: Bar number that the measurement comes from. Repeats for each river. **channel_width_m**: Bar average channel width measurement. In meters. **bar_width_m**: Bar average bar width measurement. In meters. **├── total_data.csv** Primary measurements at each sample cross-section for each river * **bar**: Bar number that the measurement comes from. Repeats for each river. * **easting**: UTM Easting coordinate for the measurement. * **northing**: UTM Northing coordinate for the measurement. * **channel_width_m**: Bar average channel width measurement. In meters. * **bar_width_m**: Bar average bar width measurement. In meters. * **bar_height_m**: Bar average bar height measurement. In meters. * **distance_m**: Length of the half-channel cross-section. * **river**: The river name that the bar comes from. ### River Data Below is a description of 1) how the river directories are organized, and 2) column descriptions for each of the file types. Files share similar file naming conventions and header definitions for tabular data across rivers. We list directory structures for each river, then describe the shared descriptions and column headers for each file type. #### ├── Brazos: This includes all of the input and output data for the Brazos river. ├── Brazos    ├── Input_data       ├── barParams.yaml       ├── brazos_bar_coords.csv       ├── brazos_centerline_4326.csv       ├── brazos_dem_26914.tif       ├── brazos_water_occurence_26914.tif       ├── sectionParams.yaml    ├── Output_data       ├── bar_data.csv       ├── bar_parameters.csv       ├── coordinates.csv       ├── xsections.npy    #### ├── Koyukuk: This includes all of the input and output data for the Koyukuk river. ├── Koyukuk    ├── Input_data       ├── barParams.yaml       ├── koyukuk_bar_coords.csv       ├── koyukuk_centerline_4326.csv       ├── Koyukuk_dem_3995.tif.tif       ├── Koyukuk_water_occurrence_3995.tif       ├── sectionParams.yaml    ├── Output_data       ├── bar_data.csv       ├── bar_parameters.csv       ├── coordinates.csv       ├── xsections.npy                   #### ├── Mississippi: This includes all of the input and output data for the Mississippi River. ├── Mississippi    ├── Input_data       ├── barParams.yaml       ├── Mississippi_1_dem_26915.tif       ├── Mississippi_bar_coords.csv       ├── mississippi_centerline_4326.csv       ├── Mississippi_water_occurrence_26915.tif       ├── sectionParams.yaml    ├── Output_data       ├── bar_data.csv       ├── bar_parameters.csv       ├── coordinates.csv       ├── xsections.npy     #### ├── Mississippi\_Leclair: This includes all of the input and output data for the Mississippi River at the location of: [https://pubs.geoscienceworld.org/sepm/jsedres/article/71/5/713/99199/Quantitative-Interpretation-of-Sedimentary](https://pubs.geoscienceworld.org/sepm/jsedres/article/71/5/713/99199/Quantitative-Interpretation-of-Sedimentary). ├── Mississippi_Leclair    ├── Input_data       ├── barParams.yaml       ├── Mississippi_Leclair_dem_26914.tif       ├── Mississippi_Leclair_water_occurrence_26914.tif       ├── miss_leclair_bar_coords.csv       ├── miss_leclair_centerline_4326.csv       ├── sectionParams.yaml    ├── Output_data       ├── bar_data.csv       ├── bar_parameters.csv       ├── coordinates.csv       ├── xsections.npy            #### ├── Nestucca: This includes all of the input and output data for the Nestucca River. ├── Nestucca    ├── Input_data       ├── barParams.yaml       ├── nestucca_bar_coords.csv       ├── nestucca_centerline_4326.csv       ├── Nestucca_dem_26910.tif       ├── Nestucca_water_occurence_26910.tif       ├── sectionParams.yaml    ├── Output_data       ├── bar_data.csv       ├── bar_parameters.csv       ├── coordinates.csv       ├── xsections.npy            #### ├── Powder: This includes all of the input and output data for the Powder River. ├── Powder    ├── Input_data       ├── barParams.yaml       ├── powder_bar_coords.csv       ├── powder_centerline_4326.csv       ├── Powder_Dem_26913.tif       ├── Powder_water_occurence_26915.tif       ├── sectionParams.yaml    ├── Output_data       ├── bar_data.csv       ├── bar_parameters.csv       ├── coordinates.csv       ├── xsections.npy           #### ├── Red: This includes all of the input and output data for the Red River. ├── Red    ├── Input_data       ├── barParams.yaml       ├── red_bar_coords.csv       ├── red_centerline_4326.csv       ├── red_dem_26915.tif       ├── Red_water_occurrence_26915.tif       ├── sectionParams.yaml    ├── Output_data       ├── bar_data.csv       ├── bar_parameters.csv       ├── coordinates.csv       ├── xsections.npy           #### ├── RioGrande: This includes all of the input and output data for the Rio Grande. ├── RioGrande    ├── Input_data       ├── barParams.yaml       ├── riogrande_bar_coords.csv       ├── riogrande_centerline_4326.csv       ├── RioGrande_dem_26914.tif       ├── RioGrande_water_occurence_26914.tif       ├── sectionParams.yaml    ├── Output_data       ├── bar_data.csv       ├── bar_parameters.csv       ├── coordinates.csv       ├── xsections.npy           #### ├── Sacramento: This includes all of the input and output data for the Sacramento River. ├── Sacramento    ├── Input_data       ├── barParams.yaml       ├── sacramento_bar_coords.csv       ├── sacramento_centerline_4326.csv       ├── sacramento_dem_26910.tif       ├── sacramento_water_occurence_26910.tif       ├── sectionParams.yaml    ├── Output_data       ├── bar_data.csv       ├── bar_parameters.csv       ├── coordinates.csv       ├── xsections.npy          #### ├── Tombigbee: This includes all of the input and output data for the Tombigbee River. ├── Sacramento    ├── Input_data       ├── barParams.yaml       ├── tombigbee_bar_coords.csv       ├── tombigbee_centerline_4326.csv       ├── tombigbee_dem_26916.tif       ├── tombigbee_water_occurence_26916.tif       ├── sectionParams.yaml    ├── Output_data       ├── bar_data.csv       ├── bar_parameters.csv       ├── coordinates.csv       ├── xsections.npy          #### ├── Trinity: This includes all of the input and output data for the Trinity River. ├── Sacramento    ├── Input_data       ├── barParams.yaml       ├── trinity_bar_coords.csv       ├── trinity_centerline_4326.csv       ├── Trinity_dem_26915.tif       ├── Trinity_water_occurence_26915.tif       ├── sectionParams.yaml    ├── Output_data       ├── bar_data.csv       ├── bar_parameters.csv       ├── coordinates.csv       ├── xsections.npy          #### ├── Trinity: This includes all of the input and output data for the White River. ├── Sacramento    ├── Input_data       ├── barParams.yaml       ├── white_bar_coords.csv       ├── white_centerline_4326.csv       ├── White_dem_32616.tif       ├── White_water_occurence_32616.tif       ├── sectionParams.yaml    ├── Output_data       ├── bar_data.csv       ├── bar_parameters.csv       ├── coordinates.csv       ├── xsections.npy   #### File Type Descriptions: #### Config Files: The input_data directories all contain config files for the associated software (10.5281zenodo.11053670). These are: **├── barParams.yaml** This is the config file for the getBarStats.py script. * **xPath**: The path to the sampled cross-section object * **coordPath**: The path to the cross-section coordinate file * **demPath**: The path to the dem file * **outputRoot**: Location to save the outputs * **depth**: Depth estimate for the river (m) * **cv**: Variability for simulating the bottom of profiles **├── sectionParams.yaml** This is the config file for the getXsections.py script in the associated software (10.5281/zenodo.11053670) * **DEMpath**: The path to the dem file * **centerlinePath**: The path to the centerline file * **esaPAth**: The path to the surface water occurrence file * **CenterlineSmoothing**: The degree to smooth the positions when generating the centerline * **SectionLength**: The cross-river length to generate the cross-section * **SectionSmoothing**: The degree to smooth the elevations of the cross section * **WidthSens**: A parameter to tell the program how to select the width of the river * **OutputRoot**: Where to save the output files #### Input Tabular Files: **├── \_bar_coords.csv** This contains the paired coordinates defining the bar-scale grouping of cross-section measurements. The format of the file naming is {river}_bar_coords.csv. For example, the Brazos file is named Brazos_bar_coords.csv. * **Latitude_us**: Upstream Latitude * **Longitude_us**: Upstream Logitude * **Latitude_ds**: Downstream Latitude * **Longitude_ds**: Downstream Logitude **├── \_centerline_4326.csv** This contains the channel centerline coordinates in UTM and Lat-Long. The format of the file naming is {river}_centerline_4326.csv. For example, the Brazos file is named Brazos_centerline_4326.csv. They all include LatLon values, which is why 4326 is in the title (EPSG: 4326). * **Easting**: Easting coordinate * **Northing**: Northing coordinate * **Lon**: Logitude coordinate * **Lat**: Latitude coordinate #### Input Raster Files: **├── \_dem_.tif** Input DEM files. The format is {River}*dem*{epsg}.tif. For example. The Brazos river has a file name of Brazos_dem_26914.tif. **├── \_water_occurrence_.tif** Input surface water files. The format is {River}*water_occurrence*{epsg}.tif. For example. The Brazos river has a file name of Brazos_water_occurrence_26914.tif. **Output Tabular Files:** Output files are consistent across all rivers. Descriptions of each file type are: **├── bar_data.csv** These are the primary measurements at each sample cross-section for the Brazos River * **bar**: Bar number that the measurement comes from. Repeats for each river. * **idx**: Unique measurement index. * **easting**: UTM Easting coordinate for the measurement. * **northing**: UTM Northing coordinate for the measurement. * **channel_width_m**: Bar average channel width measurement. In meters. * **bar_width_m**: Bar average bar width measurement. In meters. * **bar_height_m**: Bar average bar height measurement. In meters. **├── bar_parameters.csv** These are the parameters of the function used to represent channel bars. L is the height of the sigmoid, X0 is the middle point, and k is the growth rate. * **bar**: Bar number that the measurement comes from. Repeats for each river. * **idx**: Unique measurement index. * **L**: Height parameter of the sigmoid used to represent the bar surface. * **X0**: Middle point parameter of the sigmoid used to represent the bar surface. * **k**: Growth parameter of the sigmoid used to represent the bar surface. **├── coordinates.csv** These are the measurement coordinates of all the cross-sections. The Lat-Long as well as UTM coordinates are provided. The inverse-directions used to generate the cross-sections that are perpendicular to the centerline are also given. * **lon**: Longitude coordinate of measurement. * **lat**: Latitude coordinate of measurement. * **easting**: Easting coordinate of measurement. * **northing**: Northing coordinate of the measurement. * **dlon**: Change in the x-coordinate at the measurement point. * **dlat**: Change in the y-coordinate at the measurement point. * **dlon_inv**: Inverse change in the x-coordinate at the measurement point. * **dlat_inv**: Inverse change in the y-coordinate at the measurement point. **├── xsections.npy** These are nxm arrays that contain each of the sampled elevation cross-sections. The n-value corresponds to the index of the coordinates.csv file. m is of size \_*SectionLength* from the sectionParams.yaml file. ## Sharing/Access information We leverage OpenToporaphy to generate the DEMs used in the analysis: [https://portal.opentopography.org/datasets](https://portal.opentopography.org/datasets) We leverage the Global Surface Water Explorer to generate the water masks: [https://global-surface-water.appspot.com/](https://global-surface-water.appspot.com/)