Implicit advection schemes of a scalar equation defined on cells. More...
Namespaces | |
module | mod_apply_cell_advection_scheme |
Set line coefficients of the matrix associated to the discretization of the advection term \( \varrho * \nabla \cdot (\mathbf{u}_{n+1} S_{n+1}) \) with various schemes: | |
Functions | |
subroutine | mod_add_cell_advection_div_u_term::add_cell_advection_div_u_term (matrix, coefficient, divergence, stencil_size, equation_ls_map) |
Add to the matrix diagonal the second part of the cell advection term. | |
subroutine | mod_apply_cell_advection_scheme::apply_flux_scheme_to_system (coefficient, velocity, matrix, equation_stencil, equation_ls_map, apply_cell_advection_scheme) |
Modify the matrix by applying the fluxes to all cells/faces. | |
subroutine | mod_apply_cell_advection_scheme::apply_cell_advection_houc3_scheme (coefficient, velocity, matrix_line, ns, i, j, k) |
Cell fluxes with HOUC3 reconstruction scheme (wrapper) | |
subroutine | mod_apply_cell_advection_scheme::apply_cell_advection_generic_reconstruction_scheme (coefficient, velocity, matrix_line, rec_fast_scheme_backward, rec_fast_scheme_forward, ns, i, j, k) |
Generic face flux with reconstruction scheme. | |
Implicit advection schemes of a scalar equation defined on cells.
subroutine mod_add_cell_advection_div_u_term::add_cell_advection_div_u_term | ( | double precision, dimension(:), intent(inout) | matrix, |
double precision, dimension(:,:,:), intent(in) | coefficient, | ||
double precision, dimension(:,:,:), intent(in) | divergence, | ||
integer, intent(in) | stencil_size, | ||
type(t_ls_map), intent(in) | equation_ls_map ) |
Add to the matrix diagonal the second part of the cell advection term.
The term writes \( \varrho S^{n+1} \nabla \cdot \mathbf{u^{n+1}} \). It is usually neglected since velocity field is solenoidal. But it may not be the case up to computer precision in some cases, so this term is kept.