14 Level-3 Planform Analysis Workflow
๐ช Practical ๐ฌ Theory
Level 3 Workflow
This chapter describes the workflow steps necessary to complete a Level 3 (L3) FluvialGeomorph analysis. The purpose of this level is to extract planform dimensions.
Define Valley Line
The purpose of this stage is to define the valley trend line for the base event for each reach.
Determine Final Floodplain Extent
The purpose of this step is to use the REM bankfull elevation identified in L2 to delineate the active floodplain.
From the final Estimate Bankfull Report created in Level 2, use the REM bankfull elevation identified. In the example from Level 2, this value was 104 ft.
Determine the bankfull depth: The REM process used in FluvialGeomorph expresses stream elevations using a base index value of 100 ft. Therefore, a REM bankfull elevation estimated to be 104 ft. means that at bankfull discharge, the water surface elevation is 4 ft. above the REM stream base index value of 100 ft. for this reach:
104 ft REM bankfull elevation - 100 ft REM stream base index = 4 ft bankfull depthDetermine flood prone height: Flood prone has been determined through empirical studies to be approximately two times the bankfull depth. For example, using the bankfull depth calculated in the last step, calculate the flood prone depth using the following formula:
2 * 4 ft bankfull depth = 8 ft flood prone heightTherefore, the flood prone REM elevation would be 108 ft:
100 ft REM stream base index + 8 ft flood prone height = 108 ft REM flood prone heightWith the REM flood prone elevation for your reach determined in the last step, use the
๐ ๏ธ Water Surface Extenttool to extract a flood prone area polygon. This tool creates a new polygon feature class named๐บ๏ธ banks_raw_xxx, where xxx is the REM elevation selected.This feature class must be edited to select the flood prone area polygon(s). Open the attribute table for the
๐บ๏ธ banks_raw_xxxfeature class and use advanced sorting to sort first by๐ gridcodeand then by๐ Shape_Area. Polygons with๐ gridcode=๐งฎ 1are polygons inundated at the REM elevation. Typically, the polygons with the largest area represent the channel. Begin selecting๐ gridcode=๐งฎ 1polygons with the largest area until the entire flood prone area is selected.Export these selected features to a new feature class named
๐บ๏ธ floodplain_polygon.Delete the
๐บ๏ธ banks_raw_xxxfeature class created in this section.
Develop Candidate Valleylines
The purpose of this step is to create a set of candidate ๐บ๏ธ valleyline feature classes through iterative smoothing of the flowline for each reach.
- The following steps are performed in the site geodatabase for the base event. This is done to ensure that a
๐บ๏ธ valleylinefeature class is created smoothly through all of the reaches in a site. - In the site geodatabase for the base event, use the ESRI
๐ ๏ธ Smooth Linetool to smooth the site๐บ๏ธ flowlinefeature class. - Choose the
๐ PAEKsmoothing algorithm. - For the first candidate valleyline, use a
๐ Smoothing Tolarancevalue of 200 meters. In this case you would name the output feature class๐บ๏ธ valleyline_200 - Repeat the previous step using the
๐ Smoothing Tolerancevalues such as 400, 800, and 1000. - Depending on the detail of the
๐บ๏ธ flowlinefeature class geometry, you may need to select a different range or set of step values of the๐ Smoothing Toleranceparameter values to evaluate. - The goal is to create a wide degree of flowline smoothing in the candidate
๐บ๏ธ valleylinefeature classes to select from in the next step.
Choose Final Valleyline
The purpose of this step is to choose from the candidate ๐บ๏ธ valleyline feature classes the one that best captures the overall valley trend line.
- The goal of this step is to select from the candidate
๐บ๏ธ valleylinefeature classes the one that is the most smoothed, yet still fits primarily within the๐บ๏ธ floodplain_polygonfeature class extent. - Add the
๐ flood_pronepolygon and all of the candidate๐บ๏ธ valleylinefeature classes to the current map. - Identify the
๐บ๏ธ valleylinefeature class that has the highest smoothing tolerance value that also is mostly contained within the extent of the๐บ๏ธ floodplain_polygonfeature class. - In the site geodatabase of the base event, rename the selected valley line to
๐บ๏ธ valleyline. - Delete the unused candidate
๐บ๏ธ valleylinefeature classes from the site geodatabase of the base event. - Copy the
๐บ๏ธ valleylinefeature class you just created from the site geodatabase to each of the base event reach geodatabases.
Define Meander Loops
The purpose of this stage is to define meander loops and bends for the base event for each reach.
Define Loop Points
The purpose of this step is to create a new feature class named ๐บ๏ธ loop_points and use it to identify the start and end stream meander loops and bends.
- Create a new point feature class named
๐บ๏ธ loop_points. Enable z and m values. The feature class should contain the following fields:๐ ReachName: Text (50) - The purpose of this field is to store the reach name.๐ loop: Long Integer - The purpose of this field is to store the loop unique identifier for the point.๐ bend: Long Integer - The purpose of the field is to store the bend identifier for the point.๐ position: Text (10) - The purpose of this field is to store position identifier for the point. This field must have one three values: โstartโ, โendโ, or โapexโ.
Create Loop Points
๐บ๏ธ loop_pointsfeatures are used to define the start and end location of loop bends and the location of a loopโs apex.๐บ๏ธ loop_pointsfeatures are always placed along (i.e., snapped to) a๐บ๏ธ banklinefeature.- Begin numbering loops starting at the downstream end of the reach and increment the
๐ loopinteger values moving upstream. - In FluvialGeomorph, the
๐บ๏ธ valleylineis used segment the๐บ๏ธ flowlineinto loops. - The beginning and end of loops are delineated where the
๐บ๏ธ valleylinedefinitively crosses the๐บ๏ธ flowline. - If the
๐บ๏ธ flowlinecrosses the๐บ๏ธ valleylineand then crosses back over in a short distance, this is not considered a definitive crossing. A definitive crossing is one where the๐บ๏ธ flowlineapproaches the๐บ๏ธ valleyline, crosses it, and then continues to move away from the๐บ๏ธ valleylinefor a significant longitudinal distance. - Loops must alternate from one bank to the opposite bank. For example, if loop 1 is delineated along the right descending bank, then loop 2 is delineated along the left descending bank.
- Loops are composed of one or more bends (bends nest inside of loops). For example, loop 1 can have bends 1, 2, and 3 (i.e., loop 1, bend 1; loop 1, bend 2; loop 1, bend 3).
- Bend numbering restarts within each loop. The first
๐ bendvalue within a loop always begins with the value๐งฎ 1.
Multiple Reaches:
- For a site with multiple reaches, loops must be uniquely numbered across all reaches. The
๐ loopfield values of๐บ๏ธ loop_pointsshould not repeat within the reaches of a site.
- The downstream-most loop in the site should be numbered starting with the
๐ loopfield value of 1 and increase moving upstream.
- Set the
๐ loopfield value for each upstream reach to the upstream-most value i.e., the highest๐ loopvalue of the downstream reachโs๐บ๏ธ loop_pointsfeature class of the downstream reach. For example, set the value of the field๐ loopof the first Reach-2๐บ๏ธ loop_pointsfeature to 8 if the maximum value of Reach-1โs๐บ๏ธ loop_pointsfeature class๐ loopfield is 7.
Check Loop Points:
- Use the
๐ ๏ธ Check Loop Pointstool in the๐งฐ Checktoolset to verify that loops and bends are defined correctly. - Review the messages produced by this tool to identify and correct problems with loop and bend delineation.
Derive Bankline Points
The purpose of this step is to convert the ๐บ๏ธ banklines to a set of ๐บ๏ธ bankline_points and assign elevations and loop and bend locations to these features.
- Use the
๐ ๏ธ Bankline Pointstool to assign loops, bends, elevations and valley line positions to the๐บ๏ธ bankline_points. - When the tool completes, check that this tools runs correctly by running the
๐ ๏ธ Check Bankline Pointstool in the๐งฐ Checktoolset. - The check tool ensures that the
๐ loop,๐ bend,๐ position,๐ valley_POINT_X,๐ valley_POINT_Y, and๐ valley_POINT_Mfields are populated. Only๐บ๏ธ bankline_pointsfeatures within loops and bends will have values in the๐ loop,๐ bend, and๐ positionfields. - All records should have values in the
๐ valley_POINT_X,๐ valley_POINT_Y, and๐ valley_POINT_Mfields. - Additionally, apply the following definition query to the
๐บ๏ธ bankline_pointsfeature class: โloop IS NOT NULLโ. Only๐บ๏ธ bankline_pointsfeatures between๐บ๏ธ loop_pointsfeatures should be visible.
Assign Cross Section Loops
The purpose of this step is to assign loop and bend identifiers to regularly spaced and riffle cross section feature classes for each reach.
- Use the
๐ ๏ธ Assign Loopstool to assign loops and bends to a cross section feature class. - Set the value of the
๐ cross_sectionparameter to the๐บ๏ธ XSline feature class. - After the tool completes, check the
๐บ๏ธ XSline feature class that the๐ loopand๐ bendfields are assigned the correct loop and bend values. - Repeat this step for both the
๐บ๏ธ riffle_channeland๐บ๏ธ riffle_floodplainfeature classes.
Calculate L3 Cross Section Geometry
The purpose of this stage is to calculate the Level 3 dimensions for each reach.
Calculate Cross Section L3 Dimensions
The purpose of this step is to calculate the L3 dimensions for the regularly spaced and riffle cross section feature classes for each reach.
- If any
๐บ๏ธ *_dims_L3feature classes exist in the reach geodatabase (created during a previous run), delete these feature classes.
- Use the
๐ ๏ธ XS Planform, Level 3tool to calculate the L3 dimensions.
- Verify in the attribute table that the โL3 dimensionsโ have been calculated.
Add Modeled Water Surface Elevation
The purpose of this optional step is to add an HEC-RAS hydraulic model estimated water surface elevation (if available) to a cross section dimension feature class.
- Use the
๐ ๏ธ XS RAS Watersurfacetool to add a modeled water surface elevation field to the input cross section feature class. - Use the
๐ RAS_model_nameparameter to distinguish between multiple RAS model scenarios.
Run Report
The purpose of this stage is to run the Level 3 report for each reach.
Run the L3 Report
The purpose of this step is to run the L2 report for each reach.
- In the
๐งฐ Reportstoolset, use the๐ ๏ธ Level 3 Reporttool to produce the๐ Level 3 Report. - For the
๐ streamparameter, use the value of the๐ ReachNamefield used in the๐บ๏ธ flowlinefeature class. - For the
๐ flowline_fcparameter, enter the๐บ๏ธ flowlinefeature class for the base event survey. - For the
๐ xs_dims_fcparameter, use the๐บ๏ธ *_dims_L3feature class calculated for the regular cross sections of the base event. - The
๐ xs_points_*parameters should be entered with the feature class for the most recent survey first (i.e., the base event) and then the previous surveys in reverse chronological order (e.g., 2016, 2010, 2006). - The
๐ survey_name_*parameters are used to label the surveys in maps and graphs. - The feature classes and labels used for the
๐ flowline_points_*,๐ xs_points_*, and๐ survey_name_*parameters must be entered in the same order (e.g., 2016, 2010, 2006) in each set of numbered parameters. - For the
๐ demparameter, enter the๐บ๏ธ hydroDEMfor the base event survey. - For the
๐ banklines_fcparameter, enter the๐บ๏ธ banklinesfeature class created for the base event survey.
- For the
๐ features_fcparameter, enter the๐บ๏ธ featuresfeature class for the base event survey. - For the
๐ bf_estimateparameter, specify the REM elevation value that represents the bankfull water surface elevation. - For the
๐ regionsparameter, select the regions to use for estimating the bankfull water surface elevation.
Perform QA
โ๏ธ Evaluate
The purpose of this step is to use the QA Checklist to verify the reports have run correctly and identify any data mistakes that need to be corrected.
- Follow the instructions in the QA Checklist Chapter,
๐ Level 3 Reportsection, to verify that the reports have run correctly. - Make the required changes suggested in the QA Checklist and rerun the report.
- Repeat these QA iterations until the reports are correct.
Determine Next Steps
The purpose of this step is to determine what further steps need to be taken.
- Review the results of the Level 3 Report and determine if the project goals require further analysis.