# Documentation du code de simulation numérique SUNFLUIDH

### Outils du site

sunfluidh:numerical_methods_setup_namelist

## Namelist "Numerical_Methods" (old version)

This data setup is devoted to the selection of the numerical methods and schemes used in order to solve the conservation equations for velocity components, temperature, species mass fractions and density (in particuliar cases) and Poisson equation for the pressure. Some parameter setting could be also considered in respect with the numerical method selected. The data are divided in three groups in order to define :

• the numerical method applied for solving the conservation equations (for velocity, temperature, species, …)
• the choice of advective or convective flux discretization (for 2nd order schemes). the viscous, conductive or diffusive fluxes are always discretized with a centered 2nd order or 4th order scheme according to the previous choice.
• the numerical method (and associated parameters) for solving the Poisson's equation according to the type of problem considered. several methods are presented based on direct or iterative approaches.
• Two versions of this data setup exists. This one is related to an old release of the code that can always be used. The second one is presented for in the namelist Numerical_Methods (new version).
• The choice of numerical methods is here done by means of a set of option numbers
• The parameters related to iterative solvers can be directly included in this namelist

## Full data set of the namelist

 &Numerical_Methods  Numerical_Scheme= 1,
Convective_Flux_Discretization_Type            = 1 ,
Explicit_Solving_of_Density         = 0    ,
Velocity_Correction_Enabled        = .true.,
Numerical_Method_Poisson_Equation   = 4    ,
Iterative_Method_Selection         = 1    ,
Number_max_Grid= 4                         ,
Number_max_Cycle= 10                      ,
Number_Iteration= 15,
Number_Iteration_FineToCoarseGrid= 15,
Number_Iteration_CoarsestGrid= 15,
Number_Iteration_CoarseToFineGrid= 15,
Relaxation_Coefficient              = 1.80 ,
Convergence_Criterion = 1.D-08 /

• Following the problem treated, some numerical methods are better adapted than others, this point is precised for each available option.
• The partial diagonalization method (Iterative_Method_Selection=3) used for solving the Poisson equation is only permitted for separable problem.
• When the partial diagonalization method is used, the data related to the SOR and multigrid method are useless and can be removed.

## Solving the conservation equations

### Numerical_scheme

• Type: integer value
• Selection of the numerical scheme for solving the conservation equations :
• 1 : 2nd order Backward Differentiation Formula for the time discretization. Semi-implicit scheme on the viscous or diffusion terms. 2nd order spatial discretization (centered for the viscous/diffusion terms, different schemes are available for the convection/advection terms - see further).
Preferentially used for incompressible or low Mach-number flows without multi-species components (except two phase incompressible flows).
• 2 : 2nd order Crank-Nicolson scheme (semi-implicit scheme on the viscous or diffusion terms. 2nd order spatial discretization (centered for the viscous/diffusion terms, different schemes are available for the convection/advection terms - see further).
Preferentially used for incompressible or low Mach-number flows without multi-species components (except two phase incompressible flows).
Not for the release SUNFLUIDH_EDU .
• 3 : 1st order Backward Differentiation Formula. Semi-implicit scheme on the viscous or diffusion terms. 2nd order spatial discretization (centered for the viscous/diffusion terms, different schemes are available for the convection/advection terms - see further).
Not for the release SUNFLUIDH_EDU .
• 4 : Explicit predictor-corrector scheme : 2nd order Adams Bashforth - Runge-Kutta scheme (Knio et al., JCP 1998).
This scheme is mainly used for low Mach Number flows with multi-species components.
Not for the release SUNFLUIDH_EDU .
• 5 : 2nd order Explicit scheme based on Strang's operator-splitting with a multi-timestep procedure on the viscous/diffusion terms (2nd order Adams Bashforth - Runge-Kutta schemes) The density is explicitly solved from the differential formulation of the equation of state and the Temperature is deduced from the equation of state. The projection method is based on the Chorin's formulation by considering Poisson's Operator with constant coefficients (Njam et al., JCP 1999).
This scheme is mainly used for reactive flows under low Mach number hypothesis.
Not for the release SUNFLUIDH_EDU .
• 6 : 2nd order Explicit scheme based on Strang's operator-splitting with multistep a multi-timestep procedure on the viscous/diffusion terms (2nd order Adams Bashforth - Runge-Kutta schemes). The temperature is explicitly solved from the enthalpy equation and the density is deduced from the equation of state. The projection method is based on the Goda's formulation by considering Poisson's Operator with variable coefficients (Rixin Yu et al., JCP 2012).\\ Not for the release SUNFLUIDH_EDU .
• 7 : 4th order hermittian scheme in space + 3rd order explicit Runge-Kutta scheme in time. The projection method is based on the Goda's formulation by considering Poisson's Operator with constant coefficients (Knikker, ijnmf 2008, 2009).
This numerical scheme is used for incompressible or low Mach number flows with or without heat transfer.
Not for the release SUNFLUIDH_EDU .
• 8 : 4th order hermittian scheme in space + semi-implicit Crank-Nicolson scheme in time. The projection method is based on the Goda's formulation by considering Poisson's Operator with constant coefficients (Knikker, ijnmf 2008, 2009).
This numerical scheme is used for incompressible or low Mach number flows with or without heat transfer.
Not for the release SUNFLUIDH_EDU .
• 9 : 4th order hermittian scheme in space + hybrid RK3/Crank-Nicolson scheme in time. The projection method is based on the Goda's formulation by considering Poisson's Operator with constant coefficients (Knikker, ijnmf 2008, 2009).
This numerical scheme is used for incompressible or low Mach number flows with or without heat transfer.
Not for the release SUNFLUIDH_EDU .
• 10 : Crank-Nicolson semi-implicit scheme (as the option 2) with a predictor-corrector procedure for solving species mass fractions and temperature. This numerical scheme is used for low Mach number flows.
Not for the release SUNFLUIDH_EDU .

### Convective_Flux_Discretization_Type

• Type : integer value
• Selection of the 2nd order spatial discretization for the convection flux in the momentum equations. The options are :
• 1 : 2nd order centered scheme in the conservative formulation.
• 2 : 2nd order centered scheme in the advective formulation.
• 3 : 2nd order centered scheme in the skew-symemetric formulation (developer's test).
• 4 : not commented (developer's test)
• 5 : QUICK scheme in the conservative formulation.
Not for the release SUNFLUIDH_EDU .
• 6 : 2nd order Upwind scheme in the conservative formulation.
Not for the release SUNFLUIDH_EDU .
• 7 : 2nd order ENO scheme in the conservative formulation (in progress).
Not for the release SUNFLUIDH_EDU .

• Type : integer value
• Selection of the 2nd order spatial discretization for the advection flux in the temperature/enthalpy equation. The options are the same as previously.

• Type : integer value. Not for the release SUNFLUIDH_EDU .
• Selection of the 2nd order spatial discretization for the advection flux in the species equations. The options are the same as previously.

### Explicit_Solving_of_Density

• Type : integer value. Not for the release SUNFLUIDH_EDU .
• Selection of numerical schemes based on flux limiters with TVD properties for solving the density. Some of proposed methods are “experimental” and they must be used with caution. The options are :
• 0 : The mass equation is not solved. For low Mach number flows, the density is deduced from the equation of state. This supposes that species mass fractions or/and temperature are calculated from their conservation equations if it is required.
• 1, 2, 4, 5 : Obsolete methods
• 3 : Solving the density from the differential equation of state. This option is automatically selected when the numerical scheme of Njam et al. is used (Numerical_Scheme=5)
• 6 : The mass equation is solved with the Lax-Wendroff + Superbee TVD scheme (test).
• 7 : The mass equation is solved with the Lax-Wendroff + SuperC TVD scheme (test).
• 8 : The mass equation is solved with the Lax-Wendroff + HyperC TVD scheme (test).
• 9 : The mass equation is solved with the Lax-Wendroff + Van Leer TVD scheme (test).
• 10 : The mass equation is solved with the Lax-Wendroff + a TVD scheme defined by the user (test).
• 11 : The mass equation is solved with a WENO5 scheme (test).

## Solving the Poisson's equation

### Numerical_Method_Poisson_Equation

• Type : Integer value
• Selection of the numerical method for solving the Poisson equation in accordance to the projection method. The solution is the pressure time increment ($\Phi= P^{n+1}-P^{n}$, Goda's method) used to update the velocity field according to the principle of the projection method (When the numerical method of Njam et al. is used to solve the Navier-Stokes equations, the pressure is solved in place of its time increment (Chorin's method). The options are :
• 1 : Successive Over-Relaxed method (SOR) coupled with a multigrid method in order to accelerate the convergence. The matrix elements depend on the cell size only and the source term depends on the density, it is defined from the divergence of the momentum.
• 2 : Poisson's operator is approximated by a Helmholtz's operator (experimental method proposed by J.L. Guermond) - For incompressible flow only.
Not for the release SUNFLUIDH_EDU
• 3: Partial diagonalisation of the Laplacian operator. BEWARE : the problem must be separable.
Not for the release SUNFLUIDH_EDU
• 4 : SOR iterative method coupled with a multigrid method in order to accelerate the convergence. The matrix elements depend on the cell size and the density, the source term is defined from the divergence of the velocity.
Not for the release SUNFLUIDH_EDU
• 5 : Poisson's equation is solved by the HYPRE library tools. The matrix elements are constants. The parameters of the HYPRE library are set in the namelist

### Iterative_Method_Selection (only if the SOR method is used)

• Type : Integer value
• Select the algorithm used for solving the Poisson equation from an SOR method. These options are :
• 1 : The SOR method is based on the Jacobi's algorithm
• 2 : The SOR method is based on the Gauss-Seidel algorithm
• 3 : The SOR method is based on the Gauss-Seidel algorithm with a two-color approach (Red-Black type). This method is used in the context of parallel simulations (MPI domain decomposition, Multithreading) in order to ensure an independence of the result in respect with the distribution of the calculation over the MPI processes or the threads.
Not for the release SUNFLUIDH_EDU

### Number_max_Grid (multigrid method only)

• Type : Integer value
• Maximum number of grid levels used in the multigrid method.

### Number_max_Cycle (multigrid method only)

• Type : Integer value
• Maximum number of V-cycles permitted in the multigrid method.

### Number_Iteration (only if the SOR method is used)

• Type : integer value
• Number of iterations performed by the SOR method in order to approach the solution on each grid level.

### Number_Iteration_FineToCoarseGrid (only if the SOR method is used)

• Type : integer value
• Number of iterations performed by the SOR solver during the restriction step of each V-cycle of the multigrid procedure. For some problems, the minimization of iterations during the restriction step can improve the time-performance of the code.
BEWARE : this data is enabled only if the variable Number_Iteration= 0 or is removed from the Namelist.

### Number_Iteration_CoarsestGrid (only if the SOR method is used)

• Type : integer value
• Number of iterations performed by the SOR solver on the coarsest grid of each V-cycle of the multigrid procedure.
BEWARE : this data is enabled only if the variable Number_Iteration= 0 or is removed from the Namelist.

### Number_Iteration_CoarseToFineGrid (only if the SOR method is used)

• Type : integer value
• Number of iterations performed by the SOR solver during the prolongation step of each V-cycle of the multigrid procedure.
BEWARE : this data is enabled only if the variable Number_Iteration= 0 or is removed from the Namelist.

### Relaxation_Coefficient (only if the SOR method is used)

• Type : real value between one and two
• over-relaxation coefficient used in the SOR method.

### Convergence_Criterion (only if the SOR method is used)

• Type : real value
• The nV-cycle procedure of the multigrid method is stopped when the L2-norm of the Poisson equation's residu is lower than the criterion chosen.

### Off_Set_Poisson_Source_term

• Type : Boolean value. Not for the release SUNFLUIDH_EDU.
• The source term is shifted from its averaged value such as its integral value over the domain is zero. This could facilitate the convergence in some particuliar cases. this option must be used with caution. For expert users only.