Advection¶
source: advection_1d.py
example code: example_advection.py
scalar PDE with unknown function \(u(x,t)\) of two independent variables
discretization:
first-order upwind finite differences in space,
backward Euler in time
The advection equation in 1D space is a partial differential equation that governs the motion of a scalar quantity, \(u(x,t)\), subject to a known nonzero (constant) flow speed, \(c\). The governing equation is given by
and subject to some boundary conditions in space.
While parallel-in-time algorithms are known to work well for parabolic problems, most methods show instabilities or poor convergence for hyperbolic problems. The advection equation has proven to be a critical test problem and is therefore included in PyMGRIT. However, the discretization considered in PyMGRIT’s 1D advection application is highly diffusive and does not capture the exact solution.
In example_advection.py, advection subject to flow speed \(c = 1\), in the domain \([-1,1]\times[0,2]\) is considered with periodic boundary conditions in space and subject to the initial condition \(u(x,0) = e^{-x^2}\).