A two-dimensional shallow water equations model The two-dimensonal shallow water equations (SWEs) can be written as. More...
#include <dumux/common/properties.hh>
#include <dumux/common/properties/model.hh>
#include <dumux/flux/shallowwaterflux.hh>
#include <dumux/flux/fluxvariablescaching.hh>
#include "localresidual.hh"
#include "volumevariables.hh"
#include "fluxvariables.hh"
#include "indices.hh"
#include "iofields.hh"
Go to the source code of this file.
A two-dimensional shallow water equations model The two-dimensonal shallow water equations (SWEs) can be written as.
\[ \frac{\partial \mathbf{U}}{\partial t} + \frac{\partial \mathbf{F}}{\partial x} + \\ \frac{\partial \mathbf{G}}{\partial y} - \mathbf{S_b} - \mathbf{S_f} = 0 \]
with U, F, G are defined as
\[ \mathbf{U} = \begin{bmatrix} h \\ uh \\ vh \end{bmatrix}, \mathbf{F} = \begin{bmatrix} hu \\ hu^2 + \frac{1}{2} gh^2 \\ huv \end{bmatrix}, \mathbf{G} = \begin{bmatrix} hv \\ huv \\ hv^2 + \frac{1}{2} gh^2 \end{bmatrix} \]
Z is the bedSurface, h the water depth, u the velocity in x-direction and v the velocity in y-direction, g is the constant of gravity.
The source terms for the bed friction S_b and bed slope S_f are given as
\[ \mathbf{S_b} = \begin{bmatrix} 0 \\ -gh \frac{\partial z}{\partial x} \\ -gh \frac{\partial z}{\partial y}\end{bmatrix}, \mathbf{S_f} = \begin{bmatrix} 0 \\ -ghS_{fx} \\ -ghS_{fy}\end{bmatrix}. \]
A cell-centered finte volume method (cctpfa) is applied to solve the SWEs in combination with a fully-implicit time discretization. For large time step sizes (CFL > 1) this can lead to a strong semearing of sharp fronts. This can be seen in the movement of short traveling waves (e.g. dam break waves). Nevertheless the fully implicit time discretization showes often no drawbacks in cases where no short waves are considered. Thus the model can be a good choice for simulating flow in rivers and channels, where the fully-implicit discretization allows large time steps and reduces the overall computation time drastically.
Classes | |
struct | Dumux::ShallowWaterModelTraits |
Specifies a number properties of shallow water models. More... | |
struct | Dumux::ShallowWaterVolumeVariablesTraits< PV, MT > |
Traits class for the volume variables of the shallow water model. More... | |
struct | Dumux::Properties::TTag::ShallowWater |
struct | Dumux::Properties::ModelTraits< TypeTag, TTag::ShallowWater > |
struct | Dumux::Properties::LocalResidual< TypeTag, TTag::ShallowWater > |
struct | Dumux::Properties::FluxVariables< TypeTag, TTag::ShallowWater > |
struct | Dumux::Properties::VolumeVariables< TypeTag, TTag::ShallowWater > |
struct | Dumux::Properties::FluxVariablesCache< TypeTag, TTag::ShallowWater > |
struct | Dumux::Properties::FluxVariablesCacheFiller< TypeTag, TTag::ShallowWater > |
struct | Dumux::Properties::IOFields< TypeTag, TTag::ShallowWater > |
struct | Dumux::Properties::AdvectionType< TypeTag, TTag::ShallowWater > |
Namespaces | |
namespace | Dumux |
namespace | Dumux::Properties |
namespace | Dumux::Properties::TTag |
Type tag for numeric models. | |