# Introduction

A lot of PDE(s) can be writen in a generic form, and depends mainly on the definition of coefficients. The generic form that we use is describe by the next equation :

$\begin{eqnarray*} d \frac{\partial u}{\partial t} + \nabla \cdot \left( -c \nabla u - \alpha u + \gamma \right) + \beta \cdot \nabla u + a u = f \quad \text{ in } \Omega \end{eqnarray*}$

with $u$ the unknown and $\Omega \in \mathbb{R}^n$ the computation domain . We call this generic form by Coefficient Form PDE and the coefficients are

• $d$ : damping or mass coefficient

• $c$ : diffusion coefficient

• $\alpha$ : conservative flux convection coefficient

• $\gamma$ : conservative flux source term

• $\beta$ : convection coefficient

• $a$ : absorption or reaction coefficient

• $f$ : source term

Many problems are multiphysics (i.e. several unknowns) and the generic form can be extended naturally into a system of generic PDE.

 Coefficients of each equation can be defined by an expression that depends of the current unknown or unknowns of other equations.

The unknown of each PDEs can be defined as a scalar function ($u:\mathbb{R}^n \longrightarrow \mathbb{R}$) or a vectorial function ($u:\mathbb{R}^n \longrightarrow \mathbb{R}^n$). We need also to respect some constraint on the coefficient shape as described in the next table.

Table 1. Shape required by the coefficients
Coefficient Scalar Unknown Vectorial Unknown

$d$

scalar

scalar

$c$

scalar or matrix

scalar or matrix

$\alpha$

vectorial

x

$\gamma$

vectorial

x

$\beta$

vectorial

vectorial

$a$

scalar

scalar

$f$

scalar

vectorial

## 2. Boundary Conditions

• Dirichlet :

• Neumann : generic version which can depend on the unknowns

• Robin :

• BDF

• Theta

## 5. Stabilized finite element

Given a `cfpdes` equation named `eq`, SUPG and GaLS can be used as stabilisation methods. To enable them use, in the command-line or `.cfg` file, the option `cfpdes.eq.stabilitsation=1` and define the stabilisation type `cfpdes.eq.stabilitsation.type=gls #supg#unusual-gls #gls`

Table 2. Stabilisation methods
type

`gls`

default option

`supg`

`unusual-gls`

Examples are available here