This paper is concerned with the development of general-purpose
algebraic flux correction schemes for continuous (linear and
multilinear) finite elements. In order to enforce the discrete
maximum principle (DMP), we modify the standard Galerkin
discretization of a scalar transport equation by adding
diffusive and antidiffusive fluxes. The result is a nonlinear
algebraic system satisfying the DMP constraint. An estimate based
on variational gradient recovery leads to a linearity-preserving
limiter for the difference between the function values at two
neighboring nodes. A fully multidimensional version of this
scheme is obtained by taking the sum of local bounds and
constraining the total flux. This new approach to algebraic
flux correction provides a unified treatment of stationary and
time-dependent problems. Moreover, the same algorithm is used to
limit convective fluxes, anisotropic diffusion operators, and
the antidiffusive part of the consistent mass matrix.
The nonlinear algebraic system associated with the constrained
Galerkin scheme is solved using fixed-point defect correction
or a nonlinear SSOR method. A dramatic improvement of nonlinear
convergence rates is achieved with the technique known as
Anderson acceleration (or Anderson mixing). It blends a number
of last iterates in a GMRES fashion, which results in a
Broyden-like quasi-Newton update. The numerical behavior of
the proposed algorithms is illustrated by a grid convergence
study for convection-dominated transport problems and
anisotropic diffusion equations in 2D.