Passive Tracer Equations#

Lethe allows the simulation of a passive tracer, which is governed by the following advection-diffusion equation:

\[\frac{\partial C}{\partial t} + \mathbf{u} \cdot \nabla C - D \nabla^2 C + f = 0,\]

where:

  • \(C\) is the tracer concentration;

  • \(\mathbf{u}\) is the velocity of the fluid;

  • \(\nabla\) is the del operator;

  • \(D\) is the diffusivity coefficient;

  • \(f\) is the tracer source term per unit of mass.

Important

The tracer is advected by the fluid velocity, to which can be added a drift velocity. A reactive tracer feature also allows the prescription of a tracer consumption rate.

To obtain the finite element discretization, we start from the strong form previously presented, multiply it by a test function \(q\), then integrate it over the domain \(\Omega\) with boundary \(\Gamma\) such that:

\[\int_{\Omega} q \: \left( \frac{\partial C}{\partial t} + \mathbf{u} \cdot \nabla C - D \nabla^2 C - f \right) \: d\Omega = 0.\]

To obtain the corresponding weak form, we then apply integration by parts on the Laplacian term:

\[F(C) := (q, \partial_t C)_{\Omega} + (q, \mathbf{u} \cdot \nabla C)_{\Omega} + (\nabla q, D \: \nabla C)_{\Omega} - (q, f)_{\Omega} = 0.\]

To ensure that the integral is well defined in the domain \(\Omega\), we use appropriate solution spaces:

\[C \in \mathcal{C} (\Omega) = \mathcal{H}^1 (\Omega), \qquad q \in \mathcal{Q} (\Omega) = \mathcal{H}^1 (\Omega),\]

noting that this solution space for \(q\) is suitable for a Continuous Galerkin formulation. If a Discontinuous Galerkin framework is assumed, the appropriate solution is defined in \(\mathcal{L}^2 (\Omega)\). Both DG and CG tracer formulations are available in Lethe (see how to assign them in the FEM parameters section).

The weak formulation is written as: find \(C \in \mathcal{C} (\Omega) \times (0, T]\) such that

\[(q, \partial_t C)_{\Omega} + (q, \mathbf{u} \cdot \nabla C)_{\Omega} + (\nabla q, D \: \nabla C)_{\Omega} - (q, f)_{\Omega} = 0 \qquad \forall \: q \in \mathcal{Q}.\]

Stabilization Techniques#

Two stabilization terms are added to the weak form of the passive tracer equation:

\[F(C)_{\text{stab}} := F(C) + \underbrace{(\tau \: [\mathbf{u} \cdot \nabla q], \: \mathcal{R}(C))}_{a_{\text{GLS}}} + \underbrace{(v_{\text{DCDD}} \nabla q, \: \mathbf{d}_{\text{DCDD}} \cdot \nabla C)}_{a_{\text{DCDD}}} ,\]

In the GLS stabilization term \(a_{\text{GLS}}\), \(\mathcal{R}(C)\) is the strong residual of the governing equation, and the stabilization parameter \(\tau_k\) is defined as in Tezduyar (1992):

\[\tau = \left[ \left( \frac{1}{\Delta t} \right)^{2} + \left( \frac{2 |\mathrm{u}|}{h_{\text{conv}}} \right)^{2} + 9 \left( \frac{4 \nu}{h^2_{\text{diff}}} \right)^{2} \right]^{-1/2},\]

where \(\Delta t\) is the time step, and \(h_{\text{conv}}\) and \(h_{\text{diff}}\) are the size of the element related to the convection transport and diffusion mechanism, respectively. In Lethe, both element sizes are set to the diameter of a sphere having a volume equivalent to that of the cell.

See also

The same definition of the stabilization parameter is used in the Fluid Dynamics solver.

The second stabilization term is a Discontinuity-Capturing Directional Dissipation (DCDD) shock-capturing scheme proposed by Tezduyar (2003) that aims to deal with crosswind oscillations.

See also

The DCDD shock-capturing scheme is also used in the CLS and Heat Transfer modules. The CLS DCDD implementation is detailed in this publication, and it is analogous to the tracer module.