Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Why mixed formulations ?

Previously, we have solved the classical Poisson equation, using a primal formulation. If this approach produces good results in most cases, it has a major drawback. Indeed, when using for instance 1st order Lagrange elements for the pressure pp, the gradient p\nabla p is piecewise constant per element. In particular, the normal flux is not conserved at the interface between two elements. In the case of a mass flux, this means that the local mass balance is not necessarily satisfied. Mass balanced is only ensured in an averaged sense. When conductivity is low, this can lead to spurious oscillations in the solution, as we shall demonstrate hereafter.

Introducing a so-called mixed formulation (with pressure and flux both unknown) can solve this issue by using vector elements for the flux which preserve the normal component of the flux between elements, ensuring local mass balance.

An example of oscillating solution

To illustrate the shortcomings of the primal formulation, we will produce an example leading to an oscillating solution.

Mixed formulation for the Poisson equation

We are looking to solve the following equation:

(E):{κΔu=0 on Ω,u=u0 on ΓD,nu=0 on ΓN.(E): \left\{ \begin{aligned} -\kappa\Delta u &= 0 \ &\text{on }\Omega, \\ u &= u_0 \ &\text{on }\Gamma_D, \\ \partial_n u &= 0 \ &\text{on }\Gamma_N. \end{aligned} \right.

We will introduce w=κu\underline{w} =-\kappa\underline{\nabla u}, and rewrite the problem as:

{w=0 on Ω,w=κu on Ω,u=u0 on ΓD,w=0 on ΓN.\left\{ \begin{aligned} \underline{\nabla}\cdot \underline{w} &= 0 \ &\text{on }\Omega, \\ \underline{w} &= -\kappa\underline{\nabla u} \ &\text{on }\Omega, \\ u &= u_0 \ &\text{on }\Gamma_D,\\ w &= 0 \ &\text{on }\Gamma_N. \end{aligned} \right.

Let us multiply by the test functions.

w~HN1(div,Ω)\forall \underline{\tilde{w}} \in H^1_N(\mathrm{div},\Omega):

Ωww~dVκΩuw~dV=0\int_\Omega \underline{w}\cdot\underline{\tilde{w}}\:\mathrm{d}V - \kappa\int_\Omega\underline{\nabla u}\cdot\underline{\tilde{w}}\:\mathrm{d}V = 0

1κΩww~dV+Ωu(w~)dV=Γu(w~n)dS,\Rightarrow \frac{1}{\kappa}\int_\Omega\underline{w}\cdot\underline{\tilde{w}}\:\mathrm{d}V + \int_\Omega u (\underline{\nabla}\cdot\underline{\tilde{w}})\:\mathrm{d}V = \int_\Gamma u( \underline{\tilde{w}}\cdot\underline{n})\:\mathrm{d}S,

and u~H1(Ω)\forall \tilde{u} \in H^1(\Omega):

Ω(w)u~dV=0.\int_\Omega (\underline{\nabla}\cdot\underline{w})\tilde{u}\:\mathrm{d}V = 0.

Boundary conditions in the mixed formulation

In the boundary integral, we can split in two terms, on ΓD\Gamma_D where uu is known and ΓN\Gamma_N where the flux ww is known. We realize that the essential boundary condition u=u0u = u_0 on ΓD\Gamma_D from the primal formulation actually becomes a natural boundary condition in the mixed formulation, whereas the natural boundary conditions from the primal formulation become essential boundary conditions on the flux ww:

1κΩww~dV+Ωu(w~)dV=ΓDu0(w~n)dS\frac{1}{\kappa}\int_\Omega\underline{w}\cdot\underline{\tilde{w}}\:\mathrm{d}V + \int_\Omega u (\underline{\nabla}\cdot\underline{\tilde{w}})\:\mathrm{d}V = \int_{\Gamma_D} u_0( \underline{\tilde{w}}\cdot\underline{n})\:\mathrm{d}S