Implicit discretization of a scalar equation defined on cells. More...
Topics | |
Implicit cell advection term | |
Implicit advection schemes of a scalar equation defined on cells. | |
Implicit boundary condition treatment | |
Implicit boundary condition treatment of a scalar equation defined on cells. | |
Implicit cell diffusion term | |
Implicit diffusion schemes of a scalar equation defined on cells. | |
Cell linear system | |
Linear system routines (construction, modification, finalization) for a scalar equation defined on cells. | |
Implicit discretization of a scalar equation defined on cells.
This directory provides a set of routines to discretize a scalar advection-diffusion equation defined on cells. The general form of the equation is:
\[ \varrho \bigg( \underbrace{ \frac {\alpha \varphi^{n+1} + \beta \varphi^n + \gamma \varphi^{n-1} } {\Delta t}}_{\text{temporal term}} + \underbrace{ \mathbf{u^{n+1}} \nabla \cdot \varphi^{n+1} }_{\text{advection term}} \bigg) = \underbrace{ \nabla \cdot \left( D \nabla \varphi^{n+1} \right)}_{\text{diffusive term}} \]
that is, in a finite volume approach, transformed in the conservative equivalent:
\[ \varrho \bigg( \underbrace{ \frac {\alpha \varphi^{n+1} + \beta \varphi^n + \gamma \varphi^{n-1} } {\Delta t}}_{\text{temporal term}} + \underbrace{ \nabla \cdot \left( \mathbf{u^{n+1}} \varphi^{n+1} \right) }_{\text{conservative advection term}} - \underbrace{ \varphi^{n+1} \nabla \cdot \mathbf{u^{n+1}} }_{\text{compression term}} \bigg) = \underbrace{ \nabla \cdot \left( D \nabla \varphi^{n+1} \right)}_{\text{diffusive term}} \]
where \(\varphi\) is the scalar field, \(\mathbf{u^{n+1}}\) the velocity, \(D\) the diffusion coefficient, and \(\varrho \) a scalar coefficient.
This equation is translated to a linear system by the discretization process. The matrix and the right-hand side are constructed by the routines defined here, term by term. Each such routine has its specific numerical parameters options, for example used to select the spatial scheme.
The directories are organized as follows:
linear_system
(Cell linear system) provides structures and routines useful for the construction of the linear system;advection_term
(Implicit cell advection term) provides several advection schemes and helpers;diffusion_term
(Implicit cell diffusion term) provides several diffusion schemes and helpers;boundaries
(Implicit boundary condition treatment) linear system boundary conditions treatment.These routines contribute to the setup of the linear system:
set_cell_stencil_indices