Riverscapes / riverscapes-tools

Open-source Python 3.0 tools for the Riverscapes organization
https://tools.riverscapes.net/
GNU General Public License v3.0
11 stars 9 forks source link

Decide inputs to Channel Area tool for purposes of MRB VBET and RS #347

Closed lauren-herbine closed 3 years ago

lauren-herbine commented 3 years ago

Standard inputs to the ChannelArea tool from #330 are now:

With projects looking something like this:

my_cool_project
    project.rs.xml
    report.html
    inputs\
        inputs.gpkg
            flow_areas
            network
    intermediates
        intermediates.gpkg
            filtered_network
    outputs
        outputs.gpkg
            channel_areas

We need to...

philipbaileynar commented 3 years ago

@tyler1218hatch did some nice research on waterbody FCodes

joewheaton commented 3 years ago

@lauren-herbine I am laying this out here so you will have markdown for website documentation of deliverables:

Task 1 Decide which FCodes should we include as input to Channel Area tool for Mississippi Basin (this will dictate what is used for TauDEM, VBET & River Styles)?

For Flowlines (polyline network)

Include all the streamline (46000 feature type only: no attributes; 46003 intermittent; 46006 perennial ; 46007) artificial path (55800) and connector (56600) as input. Exclude rest (non-bold) from below:

Feature Type FCode Description
ARTIFICIAL PATH 55800 feature type only: no attributes
CANAL/DITCH 33600 feature type only: no attributes
CANAL/DITCH 33601 Canal/Ditch Type|aqueduct
CANAL/DITCH 33603 Canal/Ditch Type|stormwater
COASTLINE 56600 feature type only: no attributes
CONNECTOR 33400 feature type only: no attributes
PIPELINE 42800 feature type only: no attributes
PIPELINE 42801 Product|water; Pipeline Type|aqueduct; Relationship to Surface|at or near
PIPELINE 42802 Product|water; Pipeline Type|aqueduct; Relationship to Surface|elevated
PIPELINE 42803 Product|water; Pipeline Type|aqueduct; Relationship to Surface|underground
PIPELINE 42804 Product|water; Pipeline Type|aqueduct; Relationship to Surface|underwater
PIPELINE 42805 Product|water; Pipeline Type|general case; Relationship to Surface|at or near
PIPELINE 42806 Product|water; Pipeline Type|general case; Relationship to Surface|elevated
PIPELINE 42807 Product|water; Pipeline Type|general case; Relationship to Surface|underground
PIPELINE 42808 Product|water; Pipeline Type|general case; Relationship to Surface|underwater
PIPELINE 42809 Product|water; Pipeline Type|penstock; Relationship to Surface|at or near
PIPELINE 42810 Product|water; Pipeline Type|penstock; Relationship to Surface|elevated
PIPELINE 42811 Product|water; Pipeline Type|penstock; Relationship to Surface|underground
PIPELINE 42812 Product|water; Pipeline Type|penstock; Relationship to Surface|underwater
PIPELINE 42813 Product|water; Pipeline Type|siphon; Relationship to Surface|unspecified
PIPELINE 42814 Product|water; Pipeline Type|general case
PIPELINE 42815 Product|water; Pipeline Type|penstock
PIPELINE 42816 Product|water; Pipeline Type|aqueduct
STREAM/RIVER 46000 feature type only: no attributes
STREAM/RIVER 46003 Hydrographic Category|intermittent
STREAM/RIVER 46006 Hydrographic Category|perennial
STREAM/RIVER 46007 Hydrographic Category|ephemeral
UNDERGROUND CONDUIT 42000 feature type only: no attributes
UNDERGROUND CONDUIT 42001 Positional Accuracy|definite
UNDERGROUND CONDUIT 42002 Positional Accuracy|indefinite
UNDERGROUND CONDUIT 42003 Positional Accuracy|appoximate

For Flow Areas (channel area polygons)

I'm thinking we should include all the bold ones. Most to start except CANAL/DITCH and FLUME? What we really need to do in business logic for inputs is symbolize all these by feature types (lumping FCODEs together) and then start to cruise around and explore what is what. Exclude rest (non-bold) from below:

Feature Type FCode Description
AREA OF COMPLEX CHANNELS 53700 feature type only: no attributes
AREA TO BE SUBMERGED 30700 feature type only: no attributes
BAY/INLET 31200 feature type only: no attributes
BRIDGE 31800 feature type only: no attributes
CANAL/DITCH 33600 feature type only: no attributes
CANAL/DITCH 33601 Canal/Ditch Type|aqueduct
CANAL/DITCH 33603 Canal/Ditch Type|stormwater
DAM/WEIR 34300 feature type only: no attributes
DAM/WEIR 34305 Construction Material|earthen
DAM/WEIR 34306 Construction Material|nonearthen
FLUME 36200 feature type only: no attributes
FORESHORE 36400 feature type only: no attributes
INUNDATION AREA 40300 feature type only: no attributes
INUNDATION AREA 40307 Inundation Control Status|not controlled
INUNDATION AREA 40308 Inundation Control|controlled
INUNDATION AREA 40309 Inundation Control|controlled; Stage|flood elevation
LEVEE 56800 feature type only: no attributes
LOCK CHAMBER 39800 feature type only: no attributes
RAPIDS 43100 feature type only: no attributes
SEA/OCEAN 44500 feature type only: no attributes
SPILLWAY 45500 feature type only: no attributes
STREAM/RIVER 46000 feature type only: no attributes
STREAM/RIVER 46003 Hydrographic Category|intermittent;
STREAM/RIVER 46006 Hydrographic Category|perennial;
STREAM/RIVER 46007 Hydrographic Category|ephemeral;
SUBMERGED STREAM 46100 feature type only: no attributes
WASH 48400 feature type only: no attributes
WATER INTAKE/OUTFLOW 48500 feature type only: no attributes

For Water Bodies (channel area polygons)

Include ESTUARY, LAKE/POND, SWAMP/MARSH and selected RESERVOIRs (i.e. all bold below). Exclude rest (non-bold) from below:

Feature Type FCode Description
ESTUARY 49300 feature type only: no attributes
ICE MASS 37800 feature type only: no attributes
LAKE/POND 39000 feature type only: no attributes
LAKE/POND 39001 Hydrographic Category|intermittent
LAKE/POND 39004 Hydrographic Category|perennial
LAKE/POND 39005 Hydrographic Category|intermittent; Stage|high water elevation
LAKE/POND 39006 Hydrographic Category|intermittent; Stage|date of photography
LAKE/POND 39009 Hydrographic Category|perennial; Stage|average water elevation
LAKE/POND 39010 Hydrographic Category|perennial; Stage|normal pool
LAKE/POND 39011 Hydrographic Category|perennial; Stage|date of photography
LAKE/POND 39012 Hydrographic Category|perennial; Stage|spillway elevation
PLAYA 36100 feature type only: no attributes
RESERVOIR 43600 feature type only: no attributes
RESERVOIR 43601 Reservoir Type|aquaculture
RESERVOIR 43603 Reservoir Type|decorative pool
RESERVOIR 43604 Reservoir Type|disposal-tailings pond; Construction Material|earthen
RESERVOIR 43605 Reservoir Type|disposal-tailings pond
RESERVOIR 43606 Reservoir Type|disposal-unspecified
RESERVOIR 43607 Reservoir Type|evaporator
RESERVOIR 43608 Reservoir Type|swimming pool
RESERVOIR 43609 Reservoir Type|treatment-cooling pond
RESERVOIR 43610 Reservoir Type|treatment-filtration pond
RESERVOIR 43611 Reservoir Type|treatment-settling pond
RESERVOIR 43612 Reservoir Type|treatment-sewage treatment pond
RESERVOIR 43613 Reservoir Type|water storage; Construction Material|nonearthen
RESERVOIR 43614 Reservoir Type|water storage; Construction Material|earthen; Hydrographic Category|intermittent
RESERVOIR 43615 Reservoir Type|water storage; Construction Material|earthen; Hydrographic Category|perennial
RESERVOIR 43617 Reservoir Type|water storage
RESERVOIR 43618 Reservoir Type|unspecified; Construction Material|earthen
RESERVOIR 43619 Reservoir Type|unspecified; Construction Material|nonearthen
RESERVOIR 43621 Reservoir Type|water storage; Hydrographic category|perennial
RESERVOIR 43623 Reservoir Type|evaporator; Construction Material|earthen
RESERVOIR 43624 Reservoir Type|treatment
RESERVOIR 43625 Reservoir Type|disposal
RESERVOIR 43626 Reservoir Type|disposal; Construction Material|nonearthen
SWAMP/MARSH 46600 feature type only: no attributes
SWAMP/MARSH 46601 Hydrographic category|intermittent
SWAMP/MARSH 46602 Hydrographic category|perennial

How do we want to threat the waterbody FCodes for purposes of VBET?

This impacts both @lauren-herbine and @shelbysawyer. For our purposes we have decided to use included (see above) water bodies as valley bottoms. For natural water bodies (e.g. LAKE/PONDs ands SWAMP/MARSH) their inclusion in VBET is consistent with the definition of valley bottoms as "areas that could plausibly flood in contemporary natural flow regime." However, reservoirs being artificial, would be questionable. But practically, they are functional valley bottoms now and we are river styling current possible river styles. So all the bold things above will be treated as channel areas in VBET!

What this means, is they will be given the highest likelihood of being valley bottom (i.e. 1 or 0.99). As such they will be part of the valley bottom area.

lauren-herbine commented 3 years ago

Cleaning up the table a bit to include only the ones @joewheaton highlighted above. So far in the watersheds I've been flying around to I agree with these. It seems like dammed systems are treated slightly differently in different places, so it is important that we include the artificial paths, connectors, and ephemeral network. Potentially treat them all the same in most contexts? Example: the mainstem of the Bighorn is not included in the perennial network as perennial but it shows up as an artificial path and in the ephemeral network (which does not make sense to me...)

Condensed table of FCodes from above: Feature Type FCode Description
ARTIFICIAL PATH 55800 feature type only: no attributes
CONNECTOR 33400 feature type only: no attributes
STREAM/RIVER 46000 feature type only: no attributes
STREAM/RIVER 46003 Hydrographic Category|intermittent
STREAM/RIVER 46006 Hydrographic Category|perennial
STREAM/RIVER 46007 Hydrographic Category|ephemeral
AREA OF COMPLEX CHANNELS 53700 feature type only: no attributes
BRIDGE 31800 feature type only: no attributes
DAM/WEIR 34300 feature type only: no attributes
DAM/WEIR 34305 Construction Material|earthen
DAM/WEIR 34306 Construction Material|nonearthen
RAPIDS 43100 feature type only: no attributes
STREAM/RIVER 46000 feature type only: no attributes
STREAM/RIVER 46003 Hydrographic Category|intermittent;
STREAM/RIVER 46006 Hydrographic Category|perennial;
STREAM/RIVER 46007 Hydrographic Category|ephemeral;
SUBMERGED STREAM 46100 feature type only: no attributes
WASH 48400 feature type only: no attributes
ESTUARY 49300 feature type only: no attributes
LAKE/POND 39000 feature type only: no attributes
LAKE/POND 39001 Hydrographic Category|intermittent
LAKE/POND 39004 Hydrographic Category|perennial
RESERVOIR 43600 feature type only: no attributes
RESERVOIR 43617 Reservoir Type|water storage
SWAMP/MARSH 46600 feature type only: no attributes
SWAMP/MARSH 46601 Hydrographic category|intermittent
SWAMP/MARSH 46602 Hydrographic category|perennial
lauren-herbine commented 3 years ago

Updated FCode list (proposal)

After looking through the first ChannelArea project output, it is obvious we need to update our FCode list. Here is what I propose based off of my look through the 10190005 output.

Flowlines/Waterbodies:

Feature Type FCode Description
ARTIFICIAL PATH 55800 feature type only: no attributes
CONNECTOR 33400 feature type only: no attributes
STREAM/RIVER 46000 feature type only: no attributes
STREAM/RIVER 46003 Hydrographic Category|intermittent
STREAM/RIVER 46006 Hydrographic Category|perennial
STREAM/RIVER 46007 Hydrographic Category|ephemeral
AREA OF COMPLEX CHANNELS 53700 feature type only: no attributes
SUBMERGED STREAM 46100 feature type only: no attributes
WASH 48400 feature type only: no attributes
ESTUARY 49300 feature type only: no attributes
LAKE/POND 39000 feature type only: no attributes
LAKE/POND 39001 Hydrographic Category|intermittent
LAKE/POND 39004 Hydrographic Category: perennial
LAKE/POND 39005 Hydrographic Category: intermittent; Stage: high water elevation
LAKE/POND 39006 Hydrographic Category| intermittent; Stage: date of photography
LAKE/POND 39009 Hydrographic Category: perennial; Stage: average water elevation
LAKE/POND 39010 Hydrographic Category: perennial; Stage: normal pool
LAKE/POND 39011 Hydrographic Category: perennial; Stage: date of photography
LAKE/POND 39012 Hydrographic Category: perennial; Stage: spillway elevation
RESERVOIR 43600 feature type only: no attributes
RESERVOIR 43601 Reservoir Type|aquaculture
RESERVOIR 43603 Reservoir Type|decorative pool
RESERVOIR 43604 Reservoir Type|disposal-tailings pond; Construction Material|earthen
RESERVOIR 43605 Reservoir Type|disposal-tailings pond
RESERVOIR 43606 Reservoir Type|disposal-unspecified
RESERVOIR 43607 Reservoir Type|evaporator
RESERVOIR 43608 Reservoir Type|swimming pool
RESERVOIR 43609 Reservoir Type|treatment-cooling pond
RESERVOIR 43610 Reservoir Type|treatment-filtration pond
RESERVOIR 43611 Reservoir Type|treatment-settling pond
RESERVOIR 43612 Reservoir Type|treatment-sewage treatment pond
RESERVOIR 43613 Reservoir Type|water storage; Construction Material|nonearthen
RESERVOIR 43614 Reservoir Type|water storage; Construction Material|earthen; Hydrographic Category|intermittent
RESERVOIR 43615 Reservoir Type|water storage; Construction Material|earthen; Hydrographic Category|perennial
RESERVOIR 43618 Reservoir Type|unspecified; Construction Material|earthen
RESERVOIR 43619 Reservoir Type|unspecified; Construction Material|nonearthen
RESERVOIR 43621 Reservoir Type|water storage; Hydrographic category|perennial
RESERVOIR 43623 Reservoir Type|evaporator; Construction Material|earthen
RESERVOIR 43624 Reservoir Type|treatment
RESERVOIR 43625 Reservoir Type|disposal
RESERVOIR 43626 Reservoir Type|disposal; Construction Material|nonearthen
SWAMP/MARSH 46600 feature type only: no attributes
SWAMP/MARSH 46601 Hydrographic category|intermittent
SWAMP/MARSH 46602 Hydrographic category|perennial
Features of note Feature Type FCode Description
BRIDGE 31800 feature type only: no attributes
DAM/WEIR 34300 feature type only: no attributes
DAM/WEIR 34305 Construction Material|earthen
DAM/WEIR 34306 Construction Material|nonearthen
RAPIDS 43100 feature type only: no attributes

Basically just increasing the inclusivity of Reservoirs and Lakes/Ponds. @joewheaton what do you think about this list? This is just based off what I have seen in 10190005, but I think the issue with excluding a lot of the waterbodies will be generally universal.

joewheaton commented 3 years ago

I agree @lauren-herbine. @philipbaileynar and @KellyMWhitehead this is ready to run with. Please

philipbaileynar commented 3 years ago

@lauren-herbine can you please revise the new list of FCodes. We need this as three separate lists for:

Each list should be a simple comma separated list of FCode integers. So something like:

Flow lines

55800,33400 etc

Flow Areas

49300,48400 etc

Waterbodies

39009, 39011 etc

lauren-herbine commented 3 years ago

Hi @philipbaileynar - is markdown right here ok? Or do you need this in .csv or something?

Flowlines

55800, 33400, 4600, 46003, 46006, 46007

Areas

53700, 46100, 48400, 31800, 34300, 34305, 34306, 4600, 46003, 46006, 46007

Waterbodies

49300, 3900, 39001, 39004, 39005, 39006, 39009, 39010, 39011, 39012, 43600, 43601, 43603, 43604, 43605, 43606, 43607, 43608, 43609, 43610, 43611, 43612, 43613, 43614, 43615, 43618, 43619, 43621, 43623, 43624, 43625, 43626, 46600, 46601, 46602

Lines

31800, 34300, 34305, 34306, 43100

Note: the bolded numbers under "Areas" are also listed as Flowlines or Lines. I wasn't sure if this made a difference for your end of things, so I included the codes under both categories if they exist in more than one category.

philipbaileynar commented 3 years ago

This is perfect @lauren-herbine. @KellyMWhitehead can just copy/paste the list of values into the channel area configuration file!

Reassigned to @KellyMWhitehead to implement. Kelly, please close this ticket once you have implemented the new FCode command line arguments into your local and cybercastor processes.

KellyMWhitehead commented 3 years ago

The new fcodes have been used since august 20 (1cdf99207f6027214e2232342266b6864e1eb3a0) and on cybercastor (85b8449c91ef5dea5ade9b8828edc918c75ecada)