Skip to content

Commit

Permalink
Adds river flow dynamics
Browse files Browse the repository at this point in the history
index created and tests updated

Adds river flow dynamics

Adds the first operating version

Style update

Improves tests

Co-Authored-By: Sebastian Bernal <[email protected]>
  • Loading branch information
angelmons and sebastianbernalv committed Oct 19, 2023
1 parent d72cb61 commit cfe5275
Show file tree
Hide file tree
Showing 11 changed files with 2,909 additions and 41 deletions.
122 changes: 83 additions & 39 deletions docs/index.toml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ doc = 'Link-parallel advection flux'
dtype = 'float64'
intent = 'out'
mapping = 'link'
optional = false
optional = true
units = 'm2/y'

[components.AdvectionSolverTVD.info.advection__velocity]
Expand Down Expand Up @@ -2171,38 +2171,38 @@ units = 'm/s'
[components.ListricKinematicExtender]
name = 'landlab.components.tectonics.listric_kinematic_extender.ListricKinematicExtender'
unit_agnostic = true
summary = 'Apply tectonic extension and subsidence kinematically to a raster or'
summary = 'Apply tectonic extension kinematically to a raster or'

[components.ListricKinematicExtender.info.cumulative_subsidence_depth]
doc = 'Cumulative depth of tectonic subsidence'
[components.ListricKinematicExtender.info.advection__velocity]
doc = 'Link-parallel advection velocity magnitude'
dtype = 'float64'
intent = 'out'
mapping = 'node'
intent = 'in'
mapping = 'link'
optional = true
units = 'm'
units = 'm/y'

[components.ListricKinematicExtender.info.subsidence_rate]
doc = 'Rate of tectonic subsidence in hangingwall area'
[components.ListricKinematicExtender.info.fault_plane__elevation]
doc = 'Elevation of fault plane'
dtype = 'float64'
intent = 'out'
mapping = 'node'
optional = false
units = 'm'

[components.ListricKinematicExtender.info.topographic__elevation]
doc = 'Land surface topographic elevation'
[components.ListricKinematicExtender.info.hangingwall__thickness]
doc = 'Thickness of material in hangingwall block'
dtype = 'float64'
intent = 'inout'
intent = 'out'
mapping = 'node'
optional = false
units = 'm'

[components.ListricKinematicExtender.info.upper_crust_thickness]
doc = 'Thickness of upper crust (arbitrary datum)'
[components.ListricKinematicExtender.info.topographic__elevation]
doc = 'Land surface topographic elevation'
dtype = 'float64'
intent = 'inout'
mapping = 'node'
optional = true
optional = false
units = 'm'

[components.LithoLayers]
Expand Down Expand Up @@ -3750,6 +3750,43 @@ mapping = 'node'
optional = false
units = 'm'

[components.river_flow_dynamics]
name = 'landlab.components.river_flow_dynamics.river_flow_dynamics.river_flow_dynamics'
unit_agnostic = false
summary = 'Simulate surface fluid flow based on Casulli and Cheng (1992).'

[components.river_flow_dynamics.info.surface_water__depth]
doc = 'Depth of water on the surface'
dtype = 'float64'
intent = 'inout'
mapping = 'node'
optional = false
units = 'm'

[components.river_flow_dynamics.info.surface_water__elevation]
doc = 'Water surface elevation at time N'
dtype = 'float64'
intent = 'inout'
mapping = 'node'
optional = false
units = 'm'

[components.river_flow_dynamics.info.surface_water__velocity]
doc = 'Speed of water flow above the surface'
dtype = 'float64'
intent = 'inout'
mapping = 'link'
optional = false
units = 'm/s'

[components.river_flow_dynamics.info.topographic__elevation]
doc = 'Land surface topographic elevation'
dtype = 'float64'
intent = 'in'
mapping = 'node'
optional = false
units = 'm'

# Generated using `landlab index fields`
[fields]

Expand Down Expand Up @@ -3778,6 +3815,7 @@ provided_by = [
desc = 'Link-parallel advection velocity magnitude'
used_by = [
'landlab.components.advection.advection_solver_tvd.AdvectionSolverTVD',
'landlab.components.tectonics.listric_kinematic_extender.ListricKinematicExtender',
]
provided_by = []

Expand Down Expand Up @@ -4001,13 +4039,6 @@ used_by = [
]
provided_by = []

[fields.cumulative_subsidence_depth]
desc = 'Cumulative depth of tectonic subsidence'
used_by = []
provided_by = [
'landlab.components.tectonics.listric_kinematic_extender.ListricKinematicExtender',
]

[fields.depression__depth]
desc = 'Depth of depression below its spillway point'
used_by = []
Expand Down Expand Up @@ -4107,6 +4138,13 @@ provided_by = [
'landlab.components.tidal_flow.tidal_flow_calculator.TidalFlowCalculator',
]

[fields.fault_plane__elevation]
desc = 'Elevation of fault plane'
used_by = []
provided_by = [
'landlab.components.tectonics.listric_kinematic_extender.ListricKinematicExtender',
]

[fields.flood_status_code]
desc = 'Map of flood status (_PIT, _CURRENT_LAKE, _UNFLOODED, or _FLOODED).'
used_by = []
Expand Down Expand Up @@ -4301,6 +4339,13 @@ provided_by = [
'landlab.components.groundwater.dupuit_percolator.GroundwaterDupuitPercolator',
]

[fields.hangingwall__thickness]
desc = 'Thickness of material in hangingwall block'
used_by = []
provided_by = [
'landlab.components.tectonics.listric_kinematic_extender.ListricKinematicExtender',
]

[fields.height_above_drainage__elevation]
desc = 'Elevation above the nearest channel node'
used_by = []
Expand Down Expand Up @@ -4821,13 +4866,6 @@ provided_by = [
'landlab.components.priority_flood_flow_router.priority_flood_flow_router.PriorityFloodFlowRouter',
]

[fields.subsidence_rate]
desc = 'Rate of tectonic subsidence in hangingwall area'
used_by = []
provided_by = [
'landlab.components.tectonics.listric_kinematic_extender.ListricKinematicExtender',
]

[fields.surface__evapotranspiration]
desc = 'actual sum of evaporation and plant transpiration'
used_by = [
Expand Down Expand Up @@ -4882,6 +4920,7 @@ used_by = [
'landlab.components.overland_flow.generate_overland_flow_Bates.OverlandFlowBates',
'landlab.components.overland_flow.generate_overland_flow_deAlmeida.OverlandFlow',
'landlab.components.overland_flow.kinematic_wave_rengers.KinematicWaveRengers',
'landlab.components.river_flow_dynamics.river_flow_dynamics.river_flow_dynamics',
'landlab.components.soil_moisture.infiltrate_soil_green_ampt.SoilInfiltrationGreenAmpt',
]
provided_by = [
Expand All @@ -4892,6 +4931,7 @@ provided_by = [
'landlab.components.overland_flow.kinematic_wave_rengers.KinematicWaveRengers',
'landlab.components.overland_flow.linear_diffusion_overland_flow_router.LinearDiffusionOverlandFlowRouter',
'landlab.components.potentiality_flowrouting.route_flow_by_boundary.PotentialityFlowRouter',
'landlab.components.river_flow_dynamics.river_flow_dynamics.river_flow_dynamics',
'landlab.components.soil_moisture.infiltrate_soil_green_ampt.SoilInfiltrationGreenAmpt',
]

Expand Down Expand Up @@ -4932,6 +4972,15 @@ provided_by = [
'landlab.components.flow_accum.lossy_flow_accumulator.LossyFlowAccumulator',
]

[fields.surface_water__elevation]
desc = 'Water surface elevation at time N'
used_by = [
'landlab.components.river_flow_dynamics.river_flow_dynamics.river_flow_dynamics',
]
provided_by = [
'landlab.components.river_flow_dynamics.river_flow_dynamics.river_flow_dynamics',
]

[fields.surface_water__specific_discharge]
desc = 'rate of seepage to surface'
used_by = []
Expand All @@ -4948,9 +4997,12 @@ provided_by = []

[fields.surface_water__velocity]
desc = 'Speed of water flow above the surface'
used_by = []
used_by = [
'landlab.components.river_flow_dynamics.river_flow_dynamics.river_flow_dynamics',
]
provided_by = [
'landlab.components.overland_flow.kinematic_wave_rengers.KinematicWaveRengers',
'landlab.components.river_flow_dynamics.river_flow_dynamics.river_flow_dynamics',
]

[fields.surface_water_inflow__discharge]
Expand Down Expand Up @@ -5016,6 +5068,7 @@ used_by = [
'landlab.components.potentiality_flowrouting.route_flow_by_boundary.PotentialityFlowRouter',
'landlab.components.priority_flood_flow_router.priority_flood_flow_router.PriorityFloodFlowRouter',
'landlab.components.radiation.radiation.Radiation',
'landlab.components.river_flow_dynamics.river_flow_dynamics.river_flow_dynamics',
'landlab.components.sink_fill.fill_sinks.SinkFiller',
'landlab.components.sink_fill.sink_fill_barnes.SinkFillerBarnes',
'landlab.components.space.space.Space',
Expand Down Expand Up @@ -5122,15 +5175,6 @@ provided_by = [
'landlab.components.priority_flood_flow_router.priority_flood_flow_router.PriorityFloodFlowRouter',
]

[fields.upper_crust_thickness]
desc = 'Thickness of upper crust (arbitrary datum)'
used_by = [
'landlab.components.tectonics.listric_kinematic_extender.ListricKinematicExtender',
]
provided_by = [
'landlab.components.tectonics.listric_kinematic_extender.ListricKinematicExtender',
]

[fields.user_d50]
desc = 'Median grain size of the bed sediment in each link'
used_by = [
Expand Down
2 changes: 2 additions & 0 deletions docs/source/reference/components/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,7 @@ Shallow water hydrodynamics
:maxdepth: 2

overland_flow
river_flow_dynamics
tidal_flow

Land surface hydrology
Expand Down Expand Up @@ -241,6 +242,7 @@ Alphabetical Listing of Modules
plant_competition_ca
potentiality_flowrouting
radiation
river_flow_dynamics
sink_fill
soil_moisture
space
Expand Down
7 changes: 7 additions & 0 deletions docs/source/reference/components/river_flow_dynamics.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
river_flow_dynamics: Model depth-averaged shallow water equations in two dimensions
---------------------------------------------------------------------------------------------

.. automodule:: landlab.components.river_flow_dynamics
:members:
:undoc-members:
:show-inheritance:
2 changes: 2 additions & 0 deletions landlab/components/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,7 @@
from .priority_flood_flow_router import PriorityFloodFlowRouter
from .profiler import ChannelProfiler, Profiler, TrickleDownProfiler
from .radiation import Radiation
from .river_flow_dynamics import river_flow_dynamics
from .sink_fill import SinkFiller, SinkFillerBarnes
from .soil_moisture import SoilInfiltrationGreenAmpt, SoilMoisture
from .space import Space, SpaceLargeScaleEroder
Expand Down Expand Up @@ -138,6 +139,7 @@
PrecipitationDistribution,
Profiler,
Radiation,
river_flow_dynamics,
SedDepEroder,
SedimentPulserAtLinks,
SedimentPulserEachParcel,
Expand Down
3 changes: 3 additions & 0 deletions landlab/components/river_flow_dynamics/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
from .river_flow_dynamics import river_flow_dynamics

__all__ = ["river_flow_dynamics"]
Loading

0 comments on commit cfe5275

Please sign in to comment.