GfsAdvectionParams
From Gerris
GfsAdvectionParams is used to control the parameters of various advection schemes.
The syntax in parameter files is:
GfsAdvectionParams {
cfl = 0.8
gradient = gfs_center_van_leer_gradient
scheme = godunov
moving_order = 1
vx = 0 vy = 0 vz = 0
}
where the parameters have been set to their default values and where
cfl- is the CFL number,
gradient- the function used to compute the gradient of advected variables. One of:
none- the gradient is set to zero (i.e. spatially first-order scheme),
gfs_center_gradient- second-order centered estimate (no limiter),
gfs_center_van_leer_gradient- van Leer generalised minmod limiter (θ = 2),
gfs_center_minmod_gradient- minmod limiter,
gfs_center_sweby_gradient- sweby limiter (β = 1.5),
gfs_center_superbee_gradient- superbee limiter.
scheme- either
godunovfor the default Godunov advection scheme, ornoneto switch advection off entirely, moving_order- only relevant for GfsSimulationMoving, either 1 for the default first-order moving boundaries scheme, or 2 for the second-order scheme,
vx, vy, vz- the components of a "sinking velocity" to add when advecting a GfsVariableTracer. It can be functions. When present. it has to be specified ALL the components of the "sinking velocity" (vx and vy in 2D; vx, vy and vz in 3D). In addition, it is advisable that each component goes in separated lines.
Examples
- Dam break on complex topography
- Small amplitude solitary wave interacting with a parabolic hump
- Tsunami runup onto a complex three-dimensional beach
- The 2004 Indian Ocean tsunami
- Convergence for a simple periodic problem
- Convergence for the three-way vortex merging problem
- Potential flow around a sphere
- Bagnold flow of a granular material
- Creeping Couette flow of Generalised Newtonian fluids
- Convergence of a potential flow solution
- Flow through a divergent channel
- Potential flow around a thin plate
- Translation of an hexagon in a uniform flow
- Circular droplet in equilibrium
- Axisymmetric spherical droplet in equilibrium
- Geostrophic adjustment
- Geostrophic adjustment with Saint-Venant
- Coastally-trapped waves
- Coastally-trapped waves with adaptive refinement
- Gravity waves in a realistic ocean basin
- Transcritical flow over a bump
- Transcritical flow with multiple layers
- Tsunami runup onto a plane beach
- Creeping Couette flow between cylinders
- Creeping Couette flow between eccentric cylinders
- Flow between eccentric cylinders using bipolar coordinates
- Flow between eccentric cylinders on a stretched grid
- Rossby--Haurwitz wave with Saint-Venant
- Simple example of groundwater flow following Darcy's law
- Groundwater flow with piecewise constant permeability
AdvectionParams {
# gradient = gfs_center_minmod_gradient
gradient = none
}
AdvectionParams { cfl = 0.5 }
AdvectionParams { gradient = gfs_center_sweby_gradient }
AdvectionParams { gradient = gfs_center_sweby_gradient }
AdvectionParams { cfl = 0.75 }
AdvectionParams { cfl = 0.9 }
AdvectionParams { scheme = none }
AdvectionParams {
scheme = none
}
AdvectionParams { scheme = none }
AdvectionParams { scheme = none }
AdvectionParams { cfl = 0.9 }
AdvectionParams { scheme = none }
AdvectionParams {
moving_order = ORDER
# uncommenting the following line leads to instabilities for the
# first-order scheme
# cfl = 0.45
}
AdvectionParams { scheme = none }
AdvectionParams { scheme = none }
AdvectionParams { scheme = none }
AdvectionParams { gradient = gfs_center_gradient }
AdvectionParams { scheme = none }
AdvectionParams { scheme = none }
AdvectionParams { scheme = none }
AdvectionParams {
# Sweby seems to work better than minmod for this test case
gradient = gfs_center_sweby_gradient
}
AdvectionParams {
# Sweby seems to oscillate in this case
# gradient = gfs_center_sweby_gradient
}
AdvectionParams {
gradient = gfs_center_sweby_gradient
}
AdvectionParams { scheme = none }
AdvectionParams { scheme = none }
AdvectionParams { scheme = none }
AdvectionParams { scheme = none }
AdvectionParams {
gradient = gfs_center_gradient
# gradient = none
}
AdvectionParams { scheme = none }
AdvectionParams { scheme = none }
