My Project
programmer's documentation
Macros | Enumerations | Functions | Variables
cs_convection_diffusion.h File Reference
#include "cs_defs.h"
#include "cs_base.h"
#include "cs_halo.h"
#include "cs_math.h"
#include "cs_mesh_quantities.h"
#include "cs_parameters.h"
Include dependency graph for cs_convection_diffusion.h:

Go to the source code of this file.

Macros

#define CS_ISOTROPIC_DIFFUSION   (1 << 0)
 
#define CS_ORTHOTROPIC_DIFFUSION   (1 << 1)
 
#define CS_ANISOTROPIC_LEFT_DIFFUSION   (1 << 2)
 
#define CS_ANISOTROPIC_RIGHT_DIFFUSION   (1 << 3)
 
#define CS_ANISOTROPIC_DIFFUSION   ((1 << 2) + (1 << 3))
 

Enumerations

enum  cs_nvd_type_t {
  CS_NVD_GAMMA = 0, CS_NVD_SMART = 1, CS_NVD_CUBISTA = 2, CS_NVD_SUPERBEE = 3,
  CS_NVD_MUSCL = 4, CS_NVD_MINMOD = 5, CS_NVD_CLAM = 6, CS_NVD_STOIC = 7,
  CS_NVD_OSHER = 8, CS_NVD_WASEB = 9, CS_NVD_VOF_HRIC = 10, CS_NVD_VOF_CICSAM = 11,
  CS_NVD_VOF_STACS = 12, CS_NVD_N_TYPES = 13
}
 

Functions

static cs_real_t cs_nvd_scheme_scalar (const cs_nvd_type_t limiter, const cs_real_t nvf_p_c, const cs_real_t nvf_r_f, const cs_real_t nvf_r_c)
 Compute the normalised face scalar using the specified NVD scheme. More...
 
static cs_real_t cs_nvd_vof_scheme_scalar (const cs_nvd_type_t limiter, const cs_real_3_t i_face_normal, const cs_real_t nvf_p_c, const cs_real_t nvf_r_f, const cs_real_t nvf_r_c, const cs_real_3_t gradv_c, const cs_real_t c_courant)
 Compute the normalised face scalar using the specified NVD scheme for the case of a Volume-of-Fluid (VOF) transport equation. More...
 
static void cs_slope_test (const cs_real_t pi, const cs_real_t pj, const cs_real_t distf, const cs_real_t srfan, const cs_real_t i_face_normal[3], const cs_real_t gradi[3], const cs_real_t gradj[3], const cs_real_t grdpai[3], const cs_real_t grdpaj[3], const cs_real_t i_massflux, cs_real_t *testij, cs_real_t *tesqck)
 Compute slope test criteria at internal face between cell i and j. More...
 
static void cs_slope_test_vector (const cs_real_t pi[3], const cs_real_t pj[3], const cs_real_t distf, const cs_real_t srfan, const cs_real_t i_face_normal[3], const cs_real_t gradi[3][3], const cs_real_t gradj[3][3], const cs_real_t gradsti[3][3], const cs_real_t gradstj[3][3], const cs_real_t i_massflux, cs_real_t *testij, cs_real_t *tesqck)
 Compute slope test criteria at internal face between cell i and j. More...
 
static void cs_slope_test_vector_old (const cs_real_3_t pi, const cs_real_3_t pj, const cs_real_t distf, const cs_real_t srfan, const cs_real_3_t i_face_normal, const cs_real_33_t gradi, const cs_real_33_t gradj, const cs_real_33_t grdpai, const cs_real_33_t grdpaj, const cs_real_t i_massflux, cs_real_t testij[3], cs_real_t tesqck[3])
 DEPRECATED Compute slope test criteria at internal face between cell i and j. More...
 
static void cs_slope_test_tensor (const cs_real_t pi[6], const cs_real_t pj[6], const cs_real_t distf, const cs_real_t srfan, const cs_real_t i_face_normal[3], const cs_real_t gradi[6][3], const cs_real_t gradj[6][3], const cs_real_t gradsti[6][3], const cs_real_t gradstj[6][3], const cs_real_t i_massflux, cs_real_t *testij, cs_real_t *tesqck)
 Compute slope test criteria at internal face between cell i and j. More...
 
static void cs_i_compute_quantities (const int ircflp, const cs_real_3_t diipf, const cs_real_3_t djjpf, const cs_real_3_t gradi, const cs_real_3_t gradj, const cs_real_t pi, const cs_real_t pj, cs_real_t *recoi, cs_real_t *recoj, cs_real_t *pip, cs_real_t *pjp)
 Reconstruct values in I' and J'. More...
 
static void cs_i_compute_quantities_vector (const int ircflp, const cs_real_3_t diipf, const cs_real_3_t djjpf, const cs_real_33_t gradi, const cs_real_33_t gradj, const cs_real_3_t pi, const cs_real_3_t pj, cs_real_t recoi[3], cs_real_t recoj[3], cs_real_t pip[3], cs_real_t pjp[3])
 Reconstruct values in I' and J'. More...
 
static void cs_i_compute_quantities_tensor (const int ircflp, const cs_real_3_t diipf, const cs_real_3_t djjpf, const cs_real_63_t gradi, const cs_real_63_t gradj, const cs_real_6_t pi, const cs_real_6_t pj, cs_real_t recoi[6], cs_real_t recoj[6], cs_real_t pip[6], cs_real_t pjp[6])
 Reconstruct values in I' and J'. More...
 
static void cs_i_relax_c_val (const double relaxp, const cs_real_t pia, const cs_real_t pja, const cs_real_t recoi, const cs_real_t recoj, const cs_real_t pi, const cs_real_t pj, cs_real_t *pir, cs_real_t *pjr, cs_real_t *pipr, cs_real_t *pjpr)
 Compute relaxed values at cell i and j. More...
 
static void cs_i_relax_c_val_vector (const double relaxp, const cs_real_3_t pia, const cs_real_3_t pja, const cs_real_3_t recoi, const cs_real_3_t recoj, const cs_real_3_t pi, const cs_real_3_t pj, cs_real_t pir[3], cs_real_t pjr[3], cs_real_t pipr[3], cs_real_t pjpr[3])
 Compute relaxed values at cell i and j. More...
 
static void cs_i_relax_c_val_tensor (const cs_real_t relaxp, const cs_real_t pia[6], const cs_real_t pja[6], const cs_real_t recoi[6], const cs_real_t recoj[6], const cs_real_t pi[6], const cs_real_t pj[6], cs_real_t pir[6], cs_real_t pjr[6], cs_real_t pipr[6], cs_real_t pjpr[6])
 Compute relaxed values at cell i and j. More...
 
static void cs_upwind_f_val (const cs_real_t p, cs_real_t *pf)
 Prepare value at face ij by using an upwind scheme. More...
 
static void cs_upwind_f_val_vector (const cs_real_3_t p, cs_real_t pf[3])
 Prepare value at face ij by using an upwind scheme. More...
 
static void cs_upwind_f_val_tensor (const cs_real_6_t p, cs_real_t pf[6])
 Prepare value at face ij by using an upwind scheme. More...
 
static void cs_centered_f_val (const double pnd, const cs_real_t pip, const cs_real_t pjp, cs_real_t *pf)
 Prepare value at face ij by using a centered scheme. More...
 
static void cs_centered_f_val_vector (const double pnd, const cs_real_3_t pip, const cs_real_3_t pjp, cs_real_t pf[3])
 Prepare value at face ij by using a centered scheme. More...
 
static void cs_centered_f_val_tensor (const double pnd, const cs_real_6_t pip, const cs_real_6_t pjp, cs_real_t pf[6])
 Prepare value at face ij by using a centered scheme. More...
 
static void cs_solu_f_val (const cs_real_3_t cell_cen, const cs_real_3_t i_face_cog, const cs_real_3_t grad, const cs_real_t p, cs_real_t *pf)
 Prepare value at face ij by using a Second Order Linear Upwind scheme. More...
 
static void cs_solu_f_val_vector (const cs_real_3_t cell_cen, const cs_real_3_t i_face_cog, const cs_real_33_t grad, const cs_real_3_t p, cs_real_t pf[3])
 Prepare value at face ij by using a Second Order Linear Upwind scheme. More...
 
static void cs_solu_f_val_tensor (const cs_real_3_t cell_cen, const cs_real_3_t i_face_cog, const cs_real_63_t grad, const cs_real_6_t p, cs_real_t pf[6])
 Prepare value at face ij by using a Second Order Linear Upwind scheme. More...
 
static void cs_blend_f_val (const double blencp, const cs_real_t p, cs_real_t *pf)
 Blend face values for a centered or SOLU scheme with face values for an upwind scheme. More...
 
static void cs_blend_f_val_vector (const double blencp, const cs_real_3_t p, cs_real_t pf[3])
 Blend face values for a centered or SOLU scheme with face values for an upwind scheme. More...
 
static void cs_blend_f_val_tensor (const double blencp, const cs_real_6_t p, cs_real_t pf[6])
 Blend face values for a centered or SOLU scheme with face values for an upwind scheme. More...
 
static void cs_i_conv_flux (const int iconvp, const cs_real_t thetap, const int imasac, const cs_real_t pi, const cs_real_t pj, const cs_real_t pifri, const cs_real_t pifrj, const cs_real_t pjfri, const cs_real_t pjfrj, const cs_real_t i_massflux, const cs_real_t xcppi, const cs_real_t xcppj, cs_real_2_t fluxij)
 Add convective fluxes (substracting the mass accumulation from them) to fluxes at face ij. More...
 
static void cs_i_conv_flux_vector (const int iconvp, const cs_real_t thetap, const int imasac, const cs_real_t pi[3], const cs_real_t pj[3], const cs_real_t pifri[3], const cs_real_t pifrj[3], const cs_real_t pjfri[3], const cs_real_t pjfrj[3], const cs_real_t i_massflux, cs_real_t fluxi[3], cs_real_t fluxj[3])
 Add convective fluxes (substracting the mass accumulation from them) to fluxes at face ij. More...
 
static void cs_i_conv_flux_tensor (const int iconvp, const cs_real_t thetap, const int imasac, const cs_real_t pi[6], const cs_real_t pj[6], const cs_real_t pifri[6], const cs_real_t pifrj[6], const cs_real_t pjfri[6], const cs_real_t pjfrj[6], const cs_real_t i_massflux, cs_real_t fluxi[6], cs_real_t fluxj[6])
 Add convective fluxes (substracting the mass accumulation from them) to fluxes at face ij. More...
 
static void cs_i_diff_flux (const int idiffp, const cs_real_t thetap, const cs_real_t pip, const cs_real_t pjp, const cs_real_t pipr, const cs_real_t pjpr, const cs_real_t i_visc, cs_real_2_t fluxij)
 Add diffusive fluxes to fluxes at face ij. More...
 
static void cs_i_diff_flux_vector (const int idiffp, const cs_real_t thetap, const cs_real_t pip[3], const cs_real_t pjp[3], const cs_real_t pipr[3], const cs_real_t pjpr[3], const cs_real_t i_visc, cs_real_t fluxi[3], cs_real_t fluxj[3])
 Add diffusive fluxes to fluxes at face ij. More...
 
static void cs_i_diff_flux_tensor (const int idiffp, const cs_real_t thetap, const cs_real_t pip[6], const cs_real_t pjp[6], const cs_real_t pipr[6], const cs_real_t pjpr[6], const cs_real_t i_visc, cs_real_t fluxi[6], cs_real_t fluxj[6])
 Add diffusive fluxes to fluxes at face ij. More...
 
static void cs_i_cd_steady_upwind (const int ircflp, const cs_real_t relaxp, const cs_real_t diipf[3], const cs_real_t djjpf[3], const cs_real_t gradi[3], const cs_real_t gradj[3], const cs_real_t pi, const cs_real_t pj, const cs_real_t pia, const cs_real_t pja, cs_real_t *pifri, cs_real_t *pifrj, cs_real_t *pjfri, cs_real_t *pjfrj, cs_real_t *pip, cs_real_t *pjp, cs_real_t *pipr, cs_real_t *pjpr)
 Handle preparation of internal face values for the fluxes computation in case of a steady algorithm and a pure upwind flux. More...
 
static void cs_i_cd_steady_upwind_vector (const int ircflp, const cs_real_t relaxp, const cs_real_t diipf[3], const cs_real_t djjpf[3], const cs_real_t gradi[3][3], const cs_real_t gradj[3][3], const cs_real_t pi[3], const cs_real_t pj[3], const cs_real_t pia[3], const cs_real_t pja[3], cs_real_t pifri[3], cs_real_t pifrj[3], cs_real_t pjfri[3], cs_real_t pjfrj[3], cs_real_t pip[3], cs_real_t pjp[3], cs_real_t pipr[3], cs_real_t pjpr[3])
 Handle preparation of internal face values for the fluxes computation in case of a steady algorithm and a pure upwind flux. More...
 
static void cs_i_cd_steady_upwind_tensor (const int ircflp, const cs_real_t relaxp, const cs_real_t diipf[3], const cs_real_t djjpf[3], const cs_real_t gradi[6][3], const cs_real_t gradj[6][3], const cs_real_t pi[6], const cs_real_t pj[6], const cs_real_t pia[6], const cs_real_t pja[6], cs_real_t pifri[6], cs_real_t pifrj[6], cs_real_t pjfri[6], cs_real_t pjfrj[6], cs_real_t pip[6], cs_real_t pjp[6], cs_real_t pipr[6], cs_real_t pjpr[6])
 Handle preparation of internal face values for the fluxes computation in case of a steady algorithm and a pure upwind flux. More...
 
static void cs_i_cd_unsteady_upwind (const int ircflp, const cs_real_t diipf[3], const cs_real_t djjpf[3], const cs_real_t gradi[3], const cs_real_t gradj[3], const cs_real_t pi, const cs_real_t pj, cs_real_t *pif, cs_real_t *pjf, cs_real_t *pip, cs_real_t *pjp)
 Handle preparation of internal face values for the fluxes computation in case of an unsteady algorithm and a pure upwind flux. More...
 
static void cs_i_cd_unsteady_upwind_vector (const int ircflp, const cs_real_t diipf[3], const cs_real_t djjpf[3], const cs_real_t gradi[3][3], const cs_real_t gradj[3][3], const cs_real_t pi[3], const cs_real_t pj[3], cs_real_t pif[3], cs_real_t pjf[3], cs_real_t pip[3], cs_real_t pjp[3])
 Handle preparation of internal face values for the fluxes computation in case of an unsteady algorithm and a pure upwind flux. More...
 
static void cs_i_cd_unsteady_upwind_tensor (const int ircflp, const cs_real_t diipf[3], const cs_real_t djjpf[3], const cs_real_t gradi[6][3], const cs_real_t gradj[6][3], const cs_real_t pi[6], const cs_real_t pj[6], cs_real_t pif[6], cs_real_t pjf[6], cs_real_t pip[6], cs_real_t pjp[6])
 Handle preparation of internal face values for the fluxes computation in case of an unsteady algorithm and a pure upwind flux. More...
 
static void cs_i_cd_steady (const int ircflp, const int ischcp, const double relaxp, const double blencp, const cs_real_t weight, const cs_real_t cell_ceni[3], const cs_real_t cell_cenj[3], const cs_real_t i_face_cog[3], const cs_real_t diipf[3], const cs_real_t djjpf[3], const cs_real_t gradi[3], const cs_real_t gradj[3], const cs_real_t gradupi[3], const cs_real_t gradupj[3], const cs_real_t pi, const cs_real_t pj, const cs_real_t pia, const cs_real_t pja, cs_real_t *pifri, cs_real_t *pifrj, cs_real_t *pjfri, cs_real_t *pjfrj, cs_real_t *pip, cs_real_t *pjp, cs_real_t *pipr, cs_real_t *pjpr)
 Handle preparation of internal face values for the fluxes computation in case of a steady algorithm and without enabling slope tests. More...
 
static void cs_i_cd_steady_vector (const int ircflp, const int ischcp, const double relaxp, const double blencp, const cs_real_t weight, const cs_real_3_t cell_ceni, const cs_real_3_t cell_cenj, const cs_real_3_t i_face_cog, const cs_real_3_t diipf, const cs_real_3_t djjpf, const cs_real_33_t gradi, const cs_real_33_t gradj, const cs_real_3_t pi, const cs_real_3_t pj, const cs_real_3_t pia, const cs_real_3_t pja, cs_real_t pifri[3], cs_real_t pifrj[3], cs_real_t pjfri[3], cs_real_t pjfrj[3], cs_real_t pip[3], cs_real_t pjp[3], cs_real_t pipr[3], cs_real_t pjpr[3])
 Handle preparation of internal face values for the fluxes computation in case of a steady algorithm and without enabling slope tests. More...
 
static void cs_i_cd_steady_tensor (const int ircflp, const int ischcp, const double relaxp, const double blencp, const cs_real_t weight, const cs_real_3_t cell_ceni, const cs_real_3_t cell_cenj, const cs_real_3_t i_face_cog, const cs_real_3_t diipf, const cs_real_3_t djjpf, const cs_real_63_t gradi, const cs_real_63_t gradj, const cs_real_6_t pi, const cs_real_6_t pj, const cs_real_6_t pia, const cs_real_6_t pja, cs_real_t pifri[6], cs_real_t pifrj[6], cs_real_t pjfri[6], cs_real_t pjfrj[6], cs_real_t pip[6], cs_real_t pjp[6], cs_real_t pipr[6], cs_real_t pjpr[6])
 Handle preparation of internal face values for the fluxes computation in case of a steady algorithm and without enabling slope tests. More...
 
static void cs_i_cd_unsteady (const int ircflp, const int ischcp, const double blencp, const cs_real_t weight, const cs_real_3_t cell_ceni, const cs_real_3_t cell_cenj, const cs_real_3_t i_face_cog, const cs_real_t hybrid_blend_i, const cs_real_t hybrid_blend_j, const cs_real_3_t diipf, const cs_real_3_t djjpf, const cs_real_3_t gradi, const cs_real_3_t gradj, const cs_real_3_t gradupi, const cs_real_3_t gradupj, const cs_real_t pi, const cs_real_t pj, cs_real_t *pif, cs_real_t *pjf, cs_real_t *pip, cs_real_t *pjp)
 Handle preparation of internal face values for the fluxes computation in case of a unsteady algorithm and without enabling slope tests. More...
 
static void cs_i_cd_unsteady_vector (const int ircflp, const int ischcp, const double blencp, const cs_real_t weight, const cs_real_3_t cell_ceni, const cs_real_3_t cell_cenj, const cs_real_3_t i_face_cog, const cs_real_t hybrid_blend_i, const cs_real_t hybrid_blend_j, const cs_real_3_t diipf, const cs_real_3_t djjpf, const cs_real_33_t gradi, const cs_real_33_t gradj, const cs_real_3_t pi, const cs_real_3_t pj, cs_real_t pif[3], cs_real_t pjf[3], cs_real_t pip[3], cs_real_t pjp[3])
 Handle preparation of internal face values for the fluxes computation in case of an unsteady algorithm and without enabling slope tests. More...
 
static void cs_i_cd_unsteady_tensor (const int ircflp, const int ischcp, const double blencp, const cs_real_t weight, const cs_real_3_t cell_ceni, const cs_real_3_t cell_cenj, const cs_real_3_t i_face_cog, const cs_real_3_t diipf, const cs_real_3_t djjpf, const cs_real_63_t gradi, const cs_real_63_t gradj, const cs_real_6_t pi, const cs_real_6_t pj, cs_real_t pif[6], cs_real_t pjf[6], cs_real_t pip[6], cs_real_t pjp[6])
 Handle preparation of internal face values for the fluxes computation in case of an unsteady algorithm and without enabling slope tests. More...
 
static void cs_i_cd_steady_slope_test (bool *upwind_switch, const int iconvp, const int ircflp, const int ischcp, const double relaxp, const double blencp, const double blend_st, const cs_real_t weight, const cs_real_t i_dist, const cs_real_t i_face_surf, const cs_real_3_t cell_ceni, const cs_real_3_t cell_cenj, const cs_real_3_t i_face_normal, const cs_real_3_t i_face_cog, const cs_real_3_t diipf, const cs_real_3_t djjpf, const cs_real_t i_massflux, const cs_real_3_t gradi, const cs_real_3_t gradj, const cs_real_3_t gradupi, const cs_real_3_t gradupj, const cs_real_3_t gradsti, const cs_real_3_t gradstj, const cs_real_t pi, const cs_real_t pj, const cs_real_t pia, const cs_real_t pja, cs_real_t *pifri, cs_real_t *pifrj, cs_real_t *pjfri, cs_real_t *pjfrj, cs_real_t *pip, cs_real_t *pjp, cs_real_t *pipr, cs_real_t *pjpr)
 Handle preparation of internal face values for the fluxes computation in case of a steady algorithm and using slope tests. More...
 
static void cs_i_cd_steady_slope_test_vector_old (bool *upwind_switch, const int iconvp, const int ircflp, const int ischcp, const double relaxp, const double blencp, const cs_real_t weight, const cs_real_t i_dist, const cs_real_t i_face_surf, const cs_real_3_t cell_ceni, const cs_real_3_t cell_cenj, const cs_real_3_t i_face_normal, const cs_real_3_t i_face_cog, const cs_real_3_t diipf, const cs_real_3_t djjpf, const cs_real_t i_massflux, const cs_real_33_t gradi, const cs_real_33_t gradj, const cs_real_33_t grdpai, const cs_real_33_t grdpaj, const cs_real_3_t pi, const cs_real_3_t pj, const cs_real_3_t pia, const cs_real_3_t pja, cs_real_t pifri[3], cs_real_t pifrj[3], cs_real_t pjfri[3], cs_real_t pjfrj[3], cs_real_t pip[3], cs_real_t pjp[3], cs_real_t pipr[3], cs_real_t pjpr[3])
 Handle preparation of internal face values for the fluxes computation in case of a steady algorithm and using slope tests. More...
 
static void cs_i_cd_steady_slope_test_vector (bool *upwind_switch, const int iconvp, const int ircflp, const int ischcp, const double relaxp, const double blencp, const double blend_st, const cs_real_t weight, const cs_real_t i_dist, const cs_real_t i_face_surf, const cs_real_3_t cell_ceni, const cs_real_3_t cell_cenj, const cs_real_3_t i_face_normal, const cs_real_3_t i_face_cog, const cs_real_3_t diipf, const cs_real_3_t djjpf, const cs_real_t i_massflux, const cs_real_33_t gradi, const cs_real_33_t gradj, const cs_real_33_t grdpai, const cs_real_33_t grdpaj, const cs_real_3_t pi, const cs_real_3_t pj, const cs_real_3_t pia, const cs_real_3_t pja, cs_real_t pifri[3], cs_real_t pifrj[3], cs_real_t pjfri[3], cs_real_t pjfrj[3], cs_real_t pip[3], cs_real_t pjp[3], cs_real_t pipr[3], cs_real_t pjpr[3])
 Handle preparation of internal face values for the fluxes computation in case of a steady algorithm and using slope tests. More...
 
static void cs_i_cd_steady_slope_test_tensor (bool *upwind_switch, const int iconvp, const int ircflp, const int ischcp, const double relaxp, const double blencp, const double blend_st, const cs_real_t weight, const cs_real_t i_dist, const cs_real_t i_face_surf, const cs_real_3_t cell_ceni, const cs_real_3_t cell_cenj, const cs_real_3_t i_face_normal, const cs_real_3_t i_face_cog, const cs_real_3_t diipf, const cs_real_3_t djjpf, const cs_real_t i_massflux, const cs_real_63_t gradi, const cs_real_63_t gradj, const cs_real_63_t grdpai, const cs_real_63_t grdpaj, const cs_real_6_t pi, const cs_real_6_t pj, const cs_real_6_t pia, const cs_real_6_t pja, cs_real_t pifri[6], cs_real_t pifrj[6], cs_real_t pjfri[6], cs_real_t pjfrj[6], cs_real_t pip[6], cs_real_t pjp[6], cs_real_t pipr[6], cs_real_t pjpr[6])
 Handle preparation of internal face values for the fluxes computation in case of a steady algorithm and using slope tests. More...
 
static void cs_i_cd_unsteady_slope_test (bool *upwind_switch, const int iconvp, const int ircflp, const int ischcp, const double blencp, const double blend_st, const cs_real_t weight, const cs_real_t i_dist, const cs_real_t i_face_surf, const cs_real_3_t cell_ceni, const cs_real_3_t cell_cenj, const cs_real_3_t i_face_normal, const cs_real_3_t i_face_cog, const cs_real_3_t diipf, const cs_real_3_t djjpf, const cs_real_t i_massflux, const cs_real_3_t gradi, const cs_real_3_t gradj, const cs_real_3_t gradupi, const cs_real_3_t gradupj, const cs_real_3_t gradsti, const cs_real_3_t gradstj, const cs_real_t pi, const cs_real_t pj, cs_real_t *pif, cs_real_t *pjf, cs_real_t *pip, cs_real_t *pjp)
 Handle preparation of internal face values for the fluxes computation in case of a steady algorithm and using slope tests. More...
 
static void cs_central_downwind_cells (const cs_lnum_t ii, const cs_lnum_t jj, const cs_real_t i_massflux, cs_lnum_t *ic, cs_lnum_t *id)
 Determine the upwind and downwind sides of an internal face and matching cell indices. More...
 
static void cs_i_cd_unsteady_nvd (const cs_nvd_type_t limiter, const cs_real_3_t cell_cen_c, const cs_real_3_t cell_cen_d, const cs_real_3_t i_face_normal, const cs_real_3_t i_face_cog, const cs_real_3_t gradv_c, const cs_real_t p_c, const cs_real_t p_d, const cs_real_t local_max_c, const cs_real_t local_min_c, const cs_real_t courant_c, cs_real_t *pif, cs_real_t *pjf)
 Handle preparation of internal face values for the convection flux computation in case of an unsteady algorithm and using NVD schemes. More...
 
static void cs_i_cd_unsteady_slope_test_vector_old (bool *upwind_switch, const int iconvp, const int ircflp, const int ischcp, const double blencp, const cs_real_t weight, const cs_real_t i_dist, const cs_real_t i_face_surf, const cs_real_3_t cell_ceni, const cs_real_3_t cell_cenj, const cs_real_3_t i_face_normal, const cs_real_3_t i_face_cog, const cs_real_3_t diipf, const cs_real_3_t djjpf, const cs_real_t i_massflux, const cs_real_33_t gradi, const cs_real_33_t gradj, const cs_real_33_t grdpai, const cs_real_33_t grdpaj, const cs_real_3_t pi, const cs_real_3_t pj, cs_real_t pif[3], cs_real_t pjf[3], cs_real_t pip[3], cs_real_t pjp[3])
 DEPRECATED Handle preparation of internal face values for the fluxes computation in case of a unsteady algorithm and using slope tests. More...
 
static void cs_i_cd_unsteady_slope_test_vector (bool *upwind_switch, const int iconvp, const int ircflp, const int ischcp, const double blencp, const double blend_st, const cs_real_t weight, const cs_real_t i_dist, const cs_real_t i_face_surf, const cs_real_3_t cell_ceni, const cs_real_3_t cell_cenj, const cs_real_3_t i_face_normal, const cs_real_3_t i_face_cog, const cs_real_3_t diipf, const cs_real_3_t djjpf, const cs_real_t i_massflux, const cs_real_33_t gradi, const cs_real_33_t gradj, const cs_real_33_t grdpai, const cs_real_33_t grdpaj, const cs_real_3_t pi, const cs_real_3_t pj, cs_real_t pif[3], cs_real_t pjf[3], cs_real_t pip[3], cs_real_t pjp[3])
 Handle preparation of internal face values for the fluxes computation in case of a unsteady algorithm and using slope tests. More...
 
static void cs_i_cd_unsteady_slope_test_tensor (bool *upwind_switch, const int iconvp, const int ircflp, const int ischcp, const double blencp, const double blend_st, const cs_real_t weight, const cs_real_t i_dist, const cs_real_t i_face_surf, const cs_real_3_t cell_ceni, const cs_real_3_t cell_cenj, const cs_real_3_t i_face_normal, const cs_real_3_t i_face_cog, const cs_real_3_t diipf, const cs_real_3_t djjpf, const cs_real_t i_massflux, const cs_real_63_t gradi, const cs_real_63_t gradj, const cs_real_63_t grdpai, const cs_real_63_t grdpaj, const cs_real_6_t pi, const cs_real_6_t pj, cs_real_t pif[6], cs_real_t pjf[6], cs_real_t pip[6], cs_real_t pjp[6])
 Handle preparation of internal face values for the fluxes computation in case of a unsteady algorithm and using slope tests. More...
 
static void cs_b_compute_quantities (const cs_real_3_t diipb, const cs_real_3_t gradi, const int ircflp, cs_real_t *recoi)
 Reconstruct values in I' at boundary cell i. More...
 
static void cs_b_compute_quantities_vector (const cs_real_3_t diipb, const cs_real_33_t gradi, const int ircflp, cs_real_t recoi[3])
 Reconstruct values in I' at boundary cell i. More...
 
static void cs_b_compute_quantities_tensor (const cs_real_3_t diipb, const cs_real_63_t gradi, const int ircflp, cs_real_t recoi[6])
 Reconstruct values in I' at boundary cell i. More...
 
static void cs_b_relax_c_val (const double relaxp, const cs_real_t pi, const cs_real_t pia, const cs_real_t recoi, cs_real_t *pir, cs_real_t *pipr)
 Compute relaxed values at boundary cell i. More...
 
static void cs_b_relax_c_val_vector (const double relaxp, const cs_real_3_t pi, const cs_real_3_t pia, const cs_real_3_t recoi, cs_real_t pir[3], cs_real_t pipr[3])
 Compute relaxed values at boundary cell i. More...
 
static void cs_b_relax_c_val_tensor (const double relaxp, const cs_real_6_t pi, const cs_real_6_t pia, const cs_real_6_t recoi, cs_real_t pir[6], cs_real_t pipr[6])
 Compute relaxed values at boundary cell i. More...
 
static void cs_b_imposed_conv_flux (int iconvp, cs_real_t thetap, int imasac, int inc, cs_int_t bc_type, int icvfli, cs_real_t pi, cs_real_t pir, cs_real_t pipr, cs_real_t coefap, cs_real_t coefbp, cs_real_t coface, cs_real_t cofbce, cs_real_t b_massflux, cs_real_t xcpp, cs_real_t *flux)
 Add convective flux (substracting the mass accumulation from it) to flux at boundary face. The convective flux can be either an upwind flux or an imposed value. More...
 
static void cs_b_imposed_conv_flux_vector (int iconvp, cs_real_t thetap, int imasac, int inc, cs_int_t bc_type, int icvfli, const cs_real_t pi[restrict 3], const cs_real_t pir[restrict 3], const cs_real_t pipr[restrict 3], const cs_real_t coefap[restrict 3], const cs_real_t coefbp[restrict 3][3], const cs_real_t coface[restrict 3], const cs_real_t cofbce[restrict 3][3], cs_real_t b_massflux, cs_real_t flux[restrict 3])
 Add convective flux (substracting the mass accumulation from it) to flux at boundary face. The convective flux can be either an upwind flux or an imposed value. More...
 
static void cs_b_upwind_flux (const int iconvp, const cs_real_t thetap, const int imasac, const int inc, const int bc_type, const cs_real_t pi, const cs_real_t pir, const cs_real_t pipr, const cs_real_t coefap, const cs_real_t coefbp, const cs_real_t b_massflux, const cs_real_t xcpp, cs_real_t *flux)
 Add convective flux (substracting the mass accumulation from it) to flux at boundary face. The convective flux is a pure upwind flux. More...
 
static void cs_b_upwind_flux_vector (const int iconvp, const cs_real_t thetap, const int imasac, const int inc, const int bc_type, const cs_real_3_t pi, const cs_real_3_t pir, const cs_real_3_t pipr, const cs_real_3_t coefa, const cs_real_33_t coefb, const cs_real_t b_massflux, cs_real_t flux[3])
 Add convective flux (substracting the mass accumulation from it) to flux at boundary face. The convective flux is a pure upwind flux. More...
 
static void cs_b_upwind_flux_tensor (const int iconvp, const cs_real_t thetap, const int imasac, const int inc, const int bc_type, const cs_real_6_t pi, const cs_real_6_t pir, const cs_real_6_t pipr, const cs_real_6_t coefa, const cs_real_66_t coefb, const cs_real_t b_massflux, cs_real_t flux[6])
 Add convective flux (substracting the mass accumulation from it) to flux at boundary face. The convective flux is a pure upwind flux. More...
 
static void cs_b_diff_flux (const int idiffp, const cs_real_t thetap, const int inc, const cs_real_t pipr, const cs_real_t cofafp, const cs_real_t cofbfp, const cs_real_t b_visc, cs_real_t *flux)
 Add diffusive flux to flux at boundary face. More...
 
static void cs_b_diff_flux_vector (const int idiffp, const cs_real_t thetap, const int inc, const cs_real_3_t pipr, const cs_real_3_t cofaf, const cs_real_33_t cofbf, const cs_real_t b_visc, cs_real_t flux[3])
 Add diffusive flux to flux at boundary face. More...
 
static void cs_b_diff_flux_tensor (const int idiffp, const cs_real_t thetap, const int inc, const cs_real_6_t pipr, const cs_real_6_t cofaf, const cs_real_66_t cofbf, const cs_real_t b_visc, cs_real_t flux[6])
 Add diffusive flux to flux at boundary face. More...
 
static void cs_b_cd_steady (const int ircflp, const double relaxp, const cs_real_3_t diipb, const cs_real_3_t gradi, const cs_real_t pi, const cs_real_t pia, cs_real_t *pir, cs_real_t *pipr)
 Handle preparation of boundary face values for the flux computation in case of a steady algorithm. More...
 
static void cs_b_cd_steady_vector (const int ircflp, const double relaxp, const cs_real_3_t diipb, const cs_real_33_t gradi, const cs_real_3_t pi, const cs_real_3_t pia, cs_real_t pir[3], cs_real_t pipr[3])
 Handle preparation of boundary face values for the flux computation in case of a steady algorithm. More...
 
static void cs_b_cd_steady_tensor (const int ircflp, const double relaxp, const cs_real_3_t diipb, const cs_real_63_t gradi, const cs_real_6_t pi, const cs_real_6_t pia, cs_real_t pir[6], cs_real_t pipr[6])
 Handle preparation of boundary face values for the flux computation in case of a steady algorithm. More...
 
static void cs_b_cd_unsteady (const int ircflp, const cs_real_3_t diipb, const cs_real_3_t gradi, const cs_real_t pi, cs_real_t *pip)
 Handle preparation of boundary face values for the flux computation in case of an unsteady algorithm. More...
 
static void cs_b_cd_unsteady_vector (const int ircflp, const cs_real_3_t diipb, const cs_real_33_t gradi, const cs_real_3_t pi, cs_real_t pip[3])
 Handle preparation of boundary face values for the flux computation in case of a steady algorithm. More...
 
static void cs_b_cd_unsteady_tensor (const int ircflp, const cs_real_3_t diipb, const cs_real_63_t gradi, const cs_real_6_t pi, cs_real_t pip[6])
 Handle preparation of boundary face values for the flux computation in case of a steady algorithm. More...
 
static void cs_b_diff_flux_coupling (int idiffp, cs_real_t pi, cs_real_t pj, cs_real_t b_visc, cs_real_t *fluxi)
 Add diffusive flux to flux at an internal coupling face. More...
 
static void cs_b_diff_flux_coupling_vector (int idiffp, const cs_real_t pi[3], const cs_real_t pj[3], cs_real_t b_visc, cs_real_t fluxi[3])
 Add diffusive flux to flux at an internal coupling face for a vector. More...
 
void CS_PROCF (itrmas, ITRMAS)(const cs_int_t *const f_id
 
void CS_PROCF (itrmav, ITRMAV)(const cs_int_t *const f_id
 
void CS_PROCF (itrgrp, ITRGRP)(const cs_int_t *const f_id
 
void CS_PROCF (itrgrv, ITRGRV)(const cs_int_t *const f_id
 
void cs_slope_test_gradient (int f_id, int inc, cs_halo_type_t halo_type, const cs_real_3_t *grad, cs_real_3_t *grdpa, const cs_real_t *pvar, const cs_real_t *coefap, const cs_real_t *coefbp, const cs_real_t *i_massflux)
 Compute the upwind gradient used in the slope tests. More...
 
void cs_upwind_gradient (const int f_id, const int inc, const cs_halo_type_t halo_type, const cs_real_t coefap[], const cs_real_t coefbp[], const cs_real_t i_massflux[], const cs_real_t b_massflux[], const cs_real_t *restrict pvar, cs_real_3_t *restrict grdpa)
 Compute the upwind gradient in order to cope with SOLU schemes observed in the litterature. More...
 
void cs_slope_test_gradient_vector (const int inc, const cs_halo_type_t halo_type, const cs_real_33_t *grad, cs_real_33_t *grdpa, const cs_real_3_t *pvar, const cs_real_3_t *coefa, const cs_real_33_t *coefb, const cs_real_t *i_massflux)
 Compute the upwind gradient used in the slope tests. More...
 
void cs_slope_test_gradient_tensor (const int inc, const cs_halo_type_t halo_type, const cs_real_63_t *grad, cs_real_63_t *grdpa, const cs_real_6_t *pvar, const cs_real_6_t *coefa, const cs_real_66_t *coefb, const cs_real_t *i_massflux)
 Compute the upwind gradient used in the slope tests. More...
 
void cs_max_limiter_building (int f_id, int inc, const cs_real_t rovsdt[])
 Compute a coefficient for blending that ensures the positivity of the scalar. More...
 
void cs_convection_diffusion_scalar (int idtvar, int f_id, const cs_var_cal_opt_t var_cal_opt, int icvflb, int inc, int iccocg, int imasac, cs_real_t *restrict pvar, const cs_real_t *restrict pvara, const cs_int_t icvfli[], const cs_real_t coefap[], const cs_real_t coefbp[], const cs_real_t cofafp[], const cs_real_t cofbfp[], const cs_real_t i_massflux[], const cs_real_t b_massflux[], const cs_real_t i_visc[], const cs_real_t b_visc[], cs_real_t *restrict rhs)
 Add the explicit part of the convection/diffusion terms of a standard transport equation of a scalar field $ \varia $. More...
 
void cs_face_convection_scalar (int idtvar, int f_id, const cs_var_cal_opt_t var_cal_opt, int icvflb, int inc, int iccocg, int imasac, cs_real_t *restrict pvar, const cs_real_t *restrict pvara, const cs_int_t icvfli[], const cs_real_t coefap[], const cs_real_t coefbp[], const cs_real_t i_massflux[], const cs_real_t b_massflux[], cs_real_2_t i_conv_flux[], cs_real_t b_conv_flux[])
 Update face flux with convection contribution of a standard transport equation of a scalar field $ \varia $. More...
 
void cs_convection_diffusion_vector (int idtvar, int f_id, const cs_var_cal_opt_t var_cal_opt, int icvflb, int inc, int ivisep, int imasac, cs_real_3_t *restrict pvar, const cs_real_3_t *restrict pvara, const cs_int_t icvfli[], const cs_real_3_t coefav[], const cs_real_33_t coefbv[], const cs_real_3_t cofafv[], const cs_real_33_t cofbfv[], const cs_real_t i_massflux[], const cs_real_t b_massflux[], const cs_real_t i_visc[], const cs_real_t b_visc[], const cs_real_t secvif[], const cs_real_t secvib[], cs_real_3_t *restrict rhs)
 Add the explicit part of the convection/diffusion terms of a transport equation of a vector field $ \vect{\varia} $. More...
 
void cs_convection_diffusion_tensor (int idtvar, int f_id, const cs_var_cal_opt_t var_cal_opt, int icvflb, int inc, int imasac, cs_real_6_t *restrict pvar, const cs_real_6_t *restrict pvara, const cs_real_6_t coefa[], const cs_real_66_t coefb[], const cs_real_6_t cofaf[], const cs_real_66_t cofbf[], const cs_real_t i_massflux[], const cs_real_t b_massflux[], const cs_real_t i_visc[], const cs_real_t b_visc[], cs_real_6_t *restrict rhs)
 Add the explicit part of the convection/diffusion terms of a transport equation of a vector field $ \vect{\varia} $. More...
 
void cs_convection_diffusion_thermal (int idtvar, int f_id, const cs_var_cal_opt_t var_cal_opt, int inc, int iccocg, int imasac, cs_real_t *restrict pvar, const cs_real_t *restrict pvara, const cs_real_t coefap[], const cs_real_t coefbp[], const cs_real_t cofafp[], const cs_real_t cofbfp[], const cs_real_t i_massflux[], const cs_real_t b_massflux[], const cs_real_t i_visc[], const cs_real_t b_visc[], const cs_real_t xcpp[], cs_real_t *restrict rhs)
 Add the explicit part of the convection/diffusion terms of a transport equation of a scalar field $ \varia $ such as the temperature. More...
 
void cs_anisotropic_diffusion_scalar (int idtvar, int f_id, const cs_var_cal_opt_t var_cal_opt, int inc, int iccocg, cs_real_t *restrict pvar, const cs_real_t *restrict pvara, const cs_real_t coefap[], const cs_real_t coefbp[], const cs_real_t cofafp[], const cs_real_t cofbfp[], const cs_real_t i_visc[], const cs_real_t b_visc[], cs_real_6_t *restrict viscel, const cs_real_2_t weighf[], const cs_real_t weighb[], cs_real_t *restrict rhs)
 Add the explicit part of the diffusion terms with a symmetric tensor diffusivity for a transport equation of a scalar field $ \varia $. More...
 
void cs_anisotropic_left_diffusion_vector (int idtvar, int f_id, const cs_var_cal_opt_t var_cal_opt, int inc, int ivisep, cs_real_3_t *restrict pvar, const cs_real_3_t *restrict pvara, const cs_real_3_t coefav[], const cs_real_33_t coefbv[], const cs_real_3_t cofafv[], const cs_real_33_t cofbfv[], const cs_real_33_t i_visc[], const cs_real_t b_visc[], const cs_real_t secvif[], cs_real_3_t *restrict rhs)
 Add explicit part of the terms of diffusion by a left-multiplying symmetric tensorial diffusivity for a transport equation of a vector field $ \vect{\varia} $. More...
 
void cs_anisotropic_right_diffusion_vector (int idtvar, int f_id, const cs_var_cal_opt_t var_cal_opt, int inc, cs_real_3_t *restrict pvar, const cs_real_3_t *restrict pvara, const cs_real_3_t coefav[], const cs_real_33_t coefbv[], const cs_real_3_t cofafv[], const cs_real_33_t cofbfv[], const cs_real_t i_visc[], const cs_real_t b_visc[], cs_real_6_t *restrict viscel, const cs_real_2_t weighf[], const cs_real_t weighb[], cs_real_3_t *restrict rhs)
 Add explicit part of the terms of diffusion by a right-multiplying symmetric tensorial diffusivity for a transport equation of a vector field $ \vect{\varia} $. More...
 
void cs_anisotropic_diffusion_tensor (int idtvar, int f_id, const cs_var_cal_opt_t var_cal_opt, int inc, cs_real_6_t *restrict pvar, const cs_real_6_t *restrict pvara, const cs_real_6_t coefa[], const cs_real_66_t coefb[], const cs_real_6_t cofaf[], const cs_real_66_t cofbf[], const cs_real_t i_visc[], const cs_real_t b_visc[], cs_real_6_t *restrict viscel, const cs_real_2_t weighf[], const cs_real_t weighb[], cs_real_6_t *restrict rhs)
 Add the explicit part of the diffusion terms with a symmetric tensor diffusivity for a transport equation of a scalar field $ \varia $. More...
 
void cs_face_diffusion_potential (const int f_id, const cs_mesh_t *m, cs_mesh_quantities_t *fvq, int init, int inc, int imrgra, int iccocg, int nswrgp, int imligp, int iphydp, int iwgrp, int iwarnp, double epsrgp, double climgp, double extrap, cs_real_3_t *restrict frcxt, cs_real_t *restrict pvar, const cs_real_t coefap[], const cs_real_t coefbp[], const cs_real_t cofafp[], const cs_real_t cofbfp[], const cs_real_t i_visc[], const cs_real_t b_visc[], cs_real_t *restrict visel, cs_real_t *restrict i_massflux, cs_real_t *restrict b_massflux)
 Update the face mass flux with the face pressure (or pressure increment, or pressure double increment) gradient. More...
 
void cs_face_anisotropic_diffusion_potential (const int f_id, const cs_mesh_t *m, cs_mesh_quantities_t *fvq, int init, int inc, int imrgra, int iccocg, int nswrgp, int imligp, int ircflp, int iphydp, int iwgrp, int iwarnp, double epsrgp, double climgp, double extrap, cs_real_3_t *restrict frcxt, cs_real_t *restrict pvar, const cs_real_t coefap[], const cs_real_t coefbp[], const cs_real_t cofafp[], const cs_real_t cofbfp[], const cs_real_t i_visc[], const cs_real_t b_visc[], cs_real_6_t *restrict viscel, const cs_real_2_t weighf[], const cs_real_t weighb[], cs_real_t *restrict i_massflux, cs_real_t *restrict b_massflux)
 Add the explicit part of the pressure gradient term to the mass flux in case of anisotropic diffusion of the pressure field $ P $. More...
 
void cs_diffusion_potential (const int f_id, const cs_mesh_t *m, cs_mesh_quantities_t *fvq, int init, int inc, int imrgra, int iccocg, int nswrgp, int imligp, int iphydp, int iwarnp, double epsrgp, double climgp, double extrap, cs_real_3_t *restrict frcxt, cs_real_t *restrict pvar, const cs_real_t coefap[], const cs_real_t coefbp[], const cs_real_t cofafp[], const cs_real_t cofbfp[], const cs_real_t i_visc[], const cs_real_t b_visc[], cs_real_t visel[], cs_real_t *restrict diverg)
 Update the cell mass flux divergence with the face pressure (or pressure increment, or pressure double increment) gradient. More...
 
void cs_anisotropic_diffusion_potential (const int f_id, const cs_mesh_t *m, cs_mesh_quantities_t *fvq, int init, int inc, int imrgra, int iccocg, int nswrgp, int imligp, int ircflp, int iphydp, int iwarnp, double epsrgp, double climgp, double extrap, cs_real_3_t *restrict frcxt, cs_real_t *restrict pvar, const cs_real_t coefap[], const cs_real_t coefbp[], const cs_real_t cofafp[], const cs_real_t cofbfp[], const cs_real_t i_visc[], const cs_real_t b_visc[], cs_real_6_t *restrict viscel, const cs_real_2_t weighf[], const cs_real_t weighb[], cs_real_t *restrict diverg)
 Add the explicit part of the divergence of the mass flux due to the pressure gradient (routine analog to cs_anisotropic_diffusion_scalar). More...
 

Variables

void const cs_int_t *const init
 
void const cs_int_t *const const cs_int_t *const inc
 
void const cs_int_t *const const cs_int_t *const const cs_int_t *const imrgra
 
void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const iccocg
 
void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const nswrgp
 
void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const imligp
 
void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const iphydp
 
void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const iwgrp
 
void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const iwarnp
 
void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_real_t *const epsrgp
 
void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_real_t *const const cs_real_t *const climgp
 
void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_real_t *const const cs_real_t *const const cs_real_t *const extrap
 
void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_real_t *const const cs_real_t *const const cs_real_t *const cs_real_3_t frcxt []
 
void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_real_t *const const cs_real_t *const const cs_real_t *const cs_real_3_t cs_real_t pvar []
 
void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_real_t *const const cs_real_t *const const cs_real_t *const cs_real_3_t cs_real_t const cs_real_t coefap []
 
void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_real_t *const const cs_real_t *const const cs_real_t *const cs_real_3_t cs_real_t const cs_real_t const cs_real_t coefbp []
 
void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_real_t *const const cs_real_t *const const cs_real_t *const cs_real_3_t cs_real_t const cs_real_t const cs_real_t const cs_real_t cofafp []
 
void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_real_t *const const cs_real_t *const const cs_real_t *const cs_real_3_t cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t cofbfp []
 
void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_real_t *const const cs_real_t *const const cs_real_t *const cs_real_3_t cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t i_visc []
 
void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_real_t *const const cs_real_t *const const cs_real_t *const cs_real_3_t cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t b_visc []
 
void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_real_t *const const cs_real_t *const const cs_real_t *const cs_real_3_t cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t cs_real_t visel []
 
void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_real_t *const const cs_real_t *const const cs_real_t *const cs_real_3_t cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t cs_real_t cs_real_t i_massflux []
 
void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_real_t *const const cs_real_t *const const cs_real_t *const cs_real_3_t cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t cs_real_t cs_real_t cs_real_t b_massflux []
 
void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const ircflp
 
void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_real_t *const const cs_real_t *const const cs_real_t *const cs_real_3_t cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t cs_real_6_t viscel []
 
void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_real_t *const const cs_real_t *const const cs_real_t *const cs_real_3_t cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t cs_real_6_t const cs_real_2_t weighf []
 
void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_real_t *const const cs_real_t *const const cs_real_t *const cs_real_3_t cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t cs_real_6_t const cs_real_2_t const cs_real_t weighb []
 
void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_real_t *const const cs_real_t *const const cs_real_t *const cs_real_3_t cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t cs_real_t cs_real_t diverg []
 

Enumeration Type Documentation

◆ cs_nvd_type_t

Enumerator
CS_NVD_GAMMA 
CS_NVD_SMART 
CS_NVD_CUBISTA 
CS_NVD_SUPERBEE 
CS_NVD_MUSCL 
CS_NVD_MINMOD 
CS_NVD_CLAM 
CS_NVD_STOIC 
CS_NVD_OSHER 
CS_NVD_WASEB 
CS_NVD_VOF_HRIC 
CS_NVD_VOF_CICSAM 
CS_NVD_VOF_STACS 
CS_NVD_N_TYPES 

Function Documentation

◆ cs_anisotropic_diffusion_potential()

void cs_anisotropic_diffusion_potential ( const int  f_id,
const cs_mesh_t m,
cs_mesh_quantities_t fvq,
int  init,
int  inc,
int  imrgra,
int  iccocg,
int  nswrgp,
int  imligp,
int  ircflp,
int  iphydp,
int  iwarnp,
double  epsrgp,
double  climgp,
double  extrap,
cs_real_3_t *restrict  frcxt,
cs_real_t *restrict  pvar,
const cs_real_t  coefap[],
const cs_real_t  coefbp[],
const cs_real_t  cofafp[],
const cs_real_t  cofbfp[],
const cs_real_t  i_visc[],
const cs_real_t  b_visc[],
cs_real_6_t *restrict  viscel,
const cs_real_2_t  weighf[],
const cs_real_t  weighb[],
cs_real_t *restrict  diverg 
)

Add the explicit part of the divergence of the mass flux due to the pressure gradient (routine analog to cs_anisotropic_diffusion_scalar).

More precisely, the divergence of the mass flux side $ \sum_{\fij \in \Facei{\celli}} \dot{m}_\fij $ is updated as follows:

\[ \sum_{\fij \in \Facei{\celli}} \dot{m}_\fij = \sum_{\fij \in \Facei{\celli}} \dot{m}_\fij - \sum_{\fij \in \Facei{\celli}} \left( \tens{\mu}_\fij \gradv_\fij P \cdot \vect{S}_\ij \right) \]

Parameters
[in]f_idfield id (or -1)
[in]mpointer to mesh
[in]fvqpointer to finite volume quantities
[in]initindicator
  • 1 initialize the mass flux to 0
  • 0 otherwise
[in]incindicator
  • 0 when solving an increment
  • 1 otherwise
[in]imrgraindicator
  • 0 iterative gradient
  • 1 least square gradient
[in]iccocgindicator
  • 1 re-compute cocg matrix (for iterativ gradients)
  • 0 otherwise
[in]nswrgpnumber of reconstruction sweeps for the gradients
[in]imligpclipping gradient method
  • < 0 no clipping
  • = 0 thank to neighbooring gradients
  • = 1 thank to the mean gradient
[in]ircflpindicator
  • 1 flux reconstruction,
  • 0 otherwise
[in]iphydpindicator
  • 1 hydrostatic pressure taken into account
  • 0 otherwise
[in]iwarnpverbosity
[in]epsrgprelative precision for the gradient reconstruction
[in]climgpclipping coeffecient for the computation of the gradient
[in]extrapcoefficient for extrapolation of the gradient
[in]frcxtbody force creating the hydrostatic pressure
[in]pvarsolved variable (pressure)
[in]coefapboundary condition array for the variable (explicit part)
[in]coefbpboundary condition array for the variable (implicit part)
[in]cofafpboundary condition array for the diffusion of the variable (explicit part)
[in]cofbfpboundary condition array for the diffusion of the variable (implicit part)
[in]i_visc$ \mu_\fij \dfrac{S_\fij}{\ipf \jpf} $ at interior faces for the r.h.s.
[in]b_visc$ \mu_\fib \dfrac{S_\fib}{\ipf \centf} $ at border faces for the r.h.s.
[in]viscelsymmetric cell tensor $ \tens{\mu}_\celli $
[in]weighfinternal face weight between cells i j in case of tensor diffusion
[in]weighbboundary face weight for cells i in case of tensor diffusion
[in,out]divergdivergence of the mass flux

Add the explicit part of the divergence of the mass flux due to the pressure gradient (routine analog to cs_anisotropic_diffusion_scalar).

More precisely, the divergence of the mass flux side $ \sum_{\fij \in \Facei{\celli}} \dot{m}_\fij $ is updated as follows:

\[ \sum_{\fij \in \Facei{\celli}} \dot{m}_\fij = \sum_{\fij \in \Facei{\celli}} \dot{m}_\fij - \sum_{\fij \in \Facei{\celli}} \left( \tens{\mu}_\fij \gradv_\fij P \cdot \vect{S}_\ij \right) \]

Parameters
[in]f_idfield id (or -1)
[in]mpointer to mesh
[in]fvqpointer to finite volume quantities
[in]initindicator
  • 1 initialize the mass flux to 0
  • 0 otherwise
[in]incindicator
  • 0 when solving an increment
  • 1 otherwise
[in]imrgraindicator
  • 0 iterative gradient
  • 1 least squares gradient
[in]iccocgindicator
  • 1 re-compute cocg matrix (for iterative gradients)
  • 0 otherwise
[in]nswrgpnumber of reconstruction sweeps for the gradients
[in]imligpclipping gradient method
  • < 0 no clipping
  • = 0 thank to neighbooring gradients
  • = 1 thank to the mean gradient
[in]ircflpindicator
  • 1 flux reconstruction,
  • 0 otherwise
[in]iphydpindicator
  • 1 hydrostatic pressure taken into account
  • 0 otherwise
[in]iwarnpverbosity
[in]epsrgprelative precision for the gradient reconstruction
[in]climgpclipping coeffecient for the computation of the gradient
[in]extrapcoefficient for extrapolation of the gradient
[in]frcxtbody force creating the hydrostatic pressure
[in]pvarsolved variable (pressure)
[in]coefapboundary condition array for the variable (explicit part)
[in]coefbpboundary condition array for the variable (implicit part)
[in]cofafpboundary condition array for the diffusion of the variable (explicit part)
[in]cofbfpboundary condition array for the diffusion of the variable (implicit part)
[in]i_visc$ \mu_\fij \dfrac{S_\fij}{\ipf \jpf} $ at interior faces for the r.h.s.
[in]b_visc$ \mu_\fib \dfrac{S_\fib}{\ipf \centf} $ at border faces for the r.h.s.
[in]viscelsymmetric cell tensor $ \tens{\mu}_\celli $
[in]weighfinternal face weight between cells i j in case of tensor diffusion
[in]weighbboundary face weight for cells i in case of tensor diffusion
[in,out]divergdivergence of the mass flux

◆ cs_anisotropic_diffusion_scalar()

void cs_anisotropic_diffusion_scalar ( int  idtvar,
int  f_id,
const cs_var_cal_opt_t  var_cal_opt,
int  inc,
int  iccocg,
cs_real_t *restrict  pvar,
const cs_real_t *restrict  pvara,
const cs_real_t  coefap[],
const cs_real_t  coefbp[],
const cs_real_t  cofafp[],
const cs_real_t  cofbfp[],
const cs_real_t  i_visc[],
const cs_real_t  b_visc[],
cs_real_6_t *restrict  viscel,
const cs_real_2_t  weighf[],
const cs_real_t  weighb[],
cs_real_t *restrict  rhs 
)

Add the explicit part of the diffusion terms with a symmetric tensor diffusivity for a transport equation of a scalar field $ \varia $.

More precisely, the right hand side $ Rhs $ is updated as follows:

\[ Rhs = Rhs - \sum_{\fij \in \Facei{\celli}} \left( - \tens{\mu}_\fij \gradv_\fij \varia \cdot \vect{S}_\ij \right) \]

Warning:

  • $ Rhs $ has already been initialized before calling cs_anisotropic_diffusion_scalar!
  • mind the sign minus
Parameters
[in]idtvarindicator of the temporal scheme
[in]f_idindex of the current variable
[in]var_cal_optvariable calculation options
[in]incindicator
  • 0 when solving an increment
  • 1 otherwise
[in]iccocgindicator
  • 1 re-compute cocg matrix (for iterativ gradients)
  • 0 otherwise
[in]pvarsolved variable (current time step)
[in]pvarasolved variable (previous time step)
[in]coefapboundary condition array for the variable (explicit part)
[in]coefbpboundary condition array for the variable (implicit part)
[in]cofafpboundary condition array for the diffusion of the variable (explicit part)
[in]cofbfpboundary condition array for the diffusion of the variable (implicit part)
[in]i_visc$ \mu_\fij \dfrac{S_\fij}{\ipf \jpf} $ at interior faces for the r.h.s.
[in]b_visc$ \mu_\fib \dfrac{S_\fib}{\ipf \centf} $ at border faces for the r.h.s.
[in]viscelsymmetric cell tensor $ \tens{\mu}_\celli $
[in]weighfinternal face weight between cells i j in case of tensor diffusion
[in]weighbboundary face weight for cells i in case of tensor diffusion
[in,out]rhsright hand side $ \vect{Rhs} $

◆ cs_anisotropic_diffusion_tensor()

void cs_anisotropic_diffusion_tensor ( int  idtvar,
int  f_id,
const cs_var_cal_opt_t  var_cal_opt,
int  inc,
cs_real_6_t *restrict  pvar,
const cs_real_6_t *restrict  pvara,
const cs_real_6_t  coefa[],
const cs_real_66_t  coefb[],
const cs_real_6_t  cofaf[],
const cs_real_66_t  cofbf[],
const cs_real_t  i_visc[],
const cs_real_t  b_visc[],
cs_real_6_t *restrict  viscel,
const cs_real_2_t  weighf[],
const cs_real_t  weighb[],
cs_real_6_t *restrict  rhs 
)

Add the explicit part of the diffusion terms with a symmetric tensor diffusivity for a transport equation of a scalar field $ \varia $.

More precisely, the right hand side $ Rhs $ is updated as follows:

\[ Rhs = Rhs - \sum_{\fij \in \Facei{\celli}} \left( - \tens{\mu}_\fij \gradv_\fij \varia \cdot \vect{S}_\ij \right) \]

Warning:

  • $ Rhs $ has already been initialized before calling cs_anisotropic_diffusion_scalar!
  • mind the sign minus
Parameters
[in]idtvarindicator of the temporal scheme
[in]f_idindex of the current variable
[in]var_cal_optvariable calculation options
[in]incindicator
  • 0 when solving an increment
  • 1 otherwise
[in]pvarsolved variable (current time step)
[in]pvarasolved variable (previous time step)
[in]coefaboundary condition array for the variable (explicit part)
[in]coefbboundary condition array for the variable (implicit part)
[in]cofafboundary condition array for the diffusion of the variable (explicit part)
[in]cofbfboundary condition array for the diffusion of the variable (implicit part)
[in]i_visc$ \mu_\fij \dfrac{S_\fij}{\ipf \jpf} $ at interior faces for the r.h.s.
[in]b_visc$ \mu_\fib \dfrac{S_\fib}{\ipf \centf} $ at border faces for the r.h.s.
[in]viscelsymmetric cell tensor $ \tens{\mu}_\celli $
[in]weighfinternal face weight between cells i j in case of tensor diffusion
[in]weighbboundary face weight for cells i in case of tensor diffusion
[in,out]rhsright hand side $ \vect{Rhs} $

◆ cs_anisotropic_left_diffusion_vector()

void cs_anisotropic_left_diffusion_vector ( int  idtvar,
int  f_id,
const cs_var_cal_opt_t  var_cal_opt,
int  inc,
int  ivisep,
cs_real_3_t *restrict  pvar,
const cs_real_3_t *restrict  pvara,
const cs_real_3_t  coefav[],
const cs_real_33_t  coefbv[],
const cs_real_3_t  cofafv[],
const cs_real_33_t  cofbfv[],
const cs_real_33_t  i_visc[],
const cs_real_t  b_visc[],
const cs_real_t  i_secvis[],
cs_real_3_t *restrict  rhs 
)

Add explicit part of the terms of diffusion by a left-multiplying symmetric tensorial diffusivity for a transport equation of a vector field $ \vect{\varia} $.

More precisely, the right hand side $ \vect{Rhs} $ is updated as follows:

\[ \vect{Rhs} = \vect{Rhs} - \sum_{\fij \in \Facei{\celli}} \left( - \gradt_\fij \vect{\varia} \tens{\mu}_\fij \cdot \vect{S}_\ij \right) \]

Remark: if ivisep = 1, then we also take $ \mu \transpose{\gradt\vect{\varia}} + \lambda \trace{\gradt\vect{\varia}} $, where $ \lambda $ is the secondary viscosity, i.e. usually $ -\frac{2}{3} \mu $.

Warning:

  • $ \vect{Rhs} $ has already been initialized before calling the present function
  • mind the sign minus
Parameters
[in]idtvarindicator of the temporal scheme
[in]f_idindex of the current variable
[in]var_cal_optvariable calculation options
[in]incindicator
  • 0 when solving an increment
  • 1 otherwise
[in]ivisepindicator to take $ \divv \left(\mu \gradt \transpose{\vect{a}} \right) -2/3 \grad\left( \mu \dive \vect{a} \right)$
  • 1 take into account,
[in]pvarsolved variable (current time step)
[in]pvarasolved variable (previous time step)
[in]coefavboundary condition array for the variable (explicit part)
[in]coefbvboundary condition array for the variable (implicit part)
[in]cofafvboundary condition array for the diffusion of the variable (explicit part)
[in]cofbfvboundary condition array for the diffusion of the variable (implicit part)
[in]i_visc$ \tens{\mu}_\fij \dfrac{S_\fij}{\ipf\jpf} $ at interior faces for the r.h.s.
[in]b_visc$ \dfrac{S_\fib}{\ipf \centf} $ at border faces for the r.h.s.
[in]secvifsecondary viscosity at interior faces
[in,out]rhsright hand side $ \vect{Rhs} $

More precisely, the right hand side $ \vect{Rhs} $ is updated as follows:

\[ \vect{Rhs} = \vect{Rhs} - \sum_{\fij \in \Facei{\celli}} \left( - \gradt_\fij \vect{\varia} \tens{\mu}_\fij \cdot \vect{S}_\ij \right) \]

Remark: if ivisep = 1, then we also take $ \mu \transpose{\gradt\vect{\varia}} + \lambda \trace{\gradt\vect{\varia}} $, where $ \lambda $ is the secondary viscosity, i.e. usually $ -\frac{2}{3} \mu $.

Warning:

  • $ \vect{Rhs} $ has already been initialized before calling the present function
  • mind the sign minus
Parameters
[in]idtvarindicator of the temporal scheme
[in]f_idindex of the current variable
[in]var_cal_optvariable calculation options
[in]incindicator
  • 0 when solving an increment
  • 1 otherwise
[in]ivisepindicator to take $ \divv \left(\mu \gradt \transpose{\vect{a}} \right) -2/3 \grad\left( \mu \dive \vect{a} \right)$
  • 1 take into account,
[in]pvarsolved variable (current time step)
[in]pvarasolved variable (previous time step)
[in]coefavboundary condition array for the variable (explicit part)
[in]coefbvboundary condition array for the variable (implicit part)
[in]cofafvboundary condition array for the diffusion of the variable (explicit part)
[in]cofbfvboundary condition array for the diffusion of the variable (implicit part)
[in]i_visc$ \tens{\mu}_\fij \dfrac{S_\fij}{\ipf\jpf} $ at interior faces for the r.h.s.
[in]b_visc$ \dfrac{S_\fib}{\ipf \centf} $ at border faces for the r.h.s.
[in]i_secvissecondary viscosity at interior faces
[in,out]rhsright hand side $ \vect{Rhs} $

◆ cs_anisotropic_right_diffusion_vector()

void cs_anisotropic_right_diffusion_vector ( int  idtvar,
int  f_id,
const cs_var_cal_opt_t  var_cal_opt,
int  inc,
cs_real_3_t *restrict  pvar,
const cs_real_3_t *restrict  pvara,
const cs_real_3_t  coefav[],
const cs_real_33_t  coefbv[],
const cs_real_3_t  cofafv[],
const cs_real_33_t  cofbfv[],
const cs_real_t  i_visc[],
const cs_real_t  b_visc[],
cs_real_6_t *restrict  viscel,
const cs_real_2_t  weighf[],
const cs_real_t  weighb[],
cs_real_3_t *restrict  rhs 
)

Add explicit part of the terms of diffusion by a right-multiplying symmetric tensorial diffusivity for a transport equation of a vector field $ \vect{\varia} $.

More precisely, the right hand side $ \vect{Rhs} $ is updated as follows:

\[ \vect{Rhs} = \vect{Rhs} - \sum_{\fij \in \Facei{\celli}} \left( - \gradt_\fij \vect{\varia} \tens{\mu}_\fij \cdot \vect{S}_\ij \right) \]

Warning:

  • $ \vect{Rhs} $ has already been initialized before calling the present function
  • mind the sign minus
Parameters
[in]idtvarindicator of the temporal scheme
[in]f_idindex of the current variable
[in]var_cal_optvariable calculation options
[in]incindicator
  • 0 when solving an increment
  • 1 otherwise
[in]pvarsolved variable (current time step)
[in]pvarasolved variable (previous time step)
[in]coefavboundary condition array for the variable (explicit part)
[in]coefbvboundary condition array for the variable (implicit part)
[in]cofafvboundary condition array for the diffusion of the variable (explicit part)
[in]cofbfvboundary condition array for the diffusion of the variable (implicit part)
[in]i_visc$ \tens{\mu}_\fij \dfrac{S_\fij}{\ipf\jpf} $ at interior faces for the r.h.s.
[in]b_visc$ \dfrac{S_\fib}{\ipf \centf} $ at border faces for the r.h.s.
[in]viscelsymmetric cell tensor $ \tens{\mu}_\celli $
[in]weighfinternal face weight between cells i j in case of tensor diffusion
[in]weighbboundary face weight for cells i in case of tensor diffusion
[in,out]rhsright hand side $ \vect{Rhs} $

◆ cs_b_cd_steady()

static void cs_b_cd_steady ( const int  ircflp,
const double  relaxp,
const cs_real_3_t  diipb,
const cs_real_3_t  gradi,
const cs_real_t  pi,
const cs_real_t  pia,
cs_real_t pir,
cs_real_t pipr 
)
inlinestatic

Handle preparation of boundary face values for the flux computation in case of a steady algorithm.

Parameters
[in]ircflprecontruction flag
[in]relaxprelaxation coefficient
[in]diipbdistance I'I'
[in]gradigradient at cell i
[in]pivalue at cell i
[in]piaold value at cell i
[out]pirrelaxed value at cell i
[out]piprrelaxed reconstructed value at cell i

◆ cs_b_cd_steady_tensor()

static void cs_b_cd_steady_tensor ( const int  ircflp,
const double  relaxp,
const cs_real_3_t  diipb,
const cs_real_63_t  gradi,
const cs_real_6_t  pi,
const cs_real_6_t  pia,
cs_real_t  pir[6],
cs_real_t  pipr[6] 
)
inlinestatic

Handle preparation of boundary face values for the flux computation in case of a steady algorithm.

Parameters
[in]ircflprecontruction flag
[in]relaxprelaxation coefficient
[in]diipbdistance I'I'
[in]gradigradient at cell i
[in]pivalue at cell i
[in]piaold value at cell i
[out]pirrelaxed value at cell i
[out]piprrelaxed reconstructed value at cell i

◆ cs_b_cd_steady_vector()

static void cs_b_cd_steady_vector ( const int  ircflp,
const double  relaxp,
const cs_real_3_t  diipb,
const cs_real_33_t  gradi,
const cs_real_3_t  pi,
const cs_real_3_t  pia,
cs_real_t  pir[3],
cs_real_t  pipr[3] 
)
inlinestatic

Handle preparation of boundary face values for the flux computation in case of a steady algorithm.

Parameters
[in]ircflprecontruction flag
[in]relaxprelaxation coefficient
[in]diipbdistance I'I'
[in]gradigradient at cell i
[in]pivalue at cell i
[in]piaold value at cell i
[out]pirrelaxed value at cell i
[out]piprrelaxed reconstructed value at cell i

◆ cs_b_cd_unsteady()

static void cs_b_cd_unsteady ( const int  ircflp,
const cs_real_3_t  diipb,
const cs_real_3_t  gradi,
const cs_real_t  pi,
cs_real_t pip 
)
inlinestatic

Handle preparation of boundary face values for the flux computation in case of an unsteady algorithm.

Parameters
[in]ircflprecontruction flag
[in]diipbdistance I'I'
[in]gradigradient at cell i
[in]pivalue at cell i
[out]pipreconstructed value at cell i

◆ cs_b_cd_unsteady_tensor()

static void cs_b_cd_unsteady_tensor ( const int  ircflp,
const cs_real_3_t  diipb,
const cs_real_63_t  gradi,
const cs_real_6_t  pi,
cs_real_t  pip[6] 
)
inlinestatic

Handle preparation of boundary face values for the flux computation in case of a steady algorithm.

Parameters
[in]ircflprecontruction flag
[in]diipbdistance I'I'
[in]gradigradient at cell i
[in]pivalue at cell i
[out]pipreconstructed value at cell i

◆ cs_b_cd_unsteady_vector()

static void cs_b_cd_unsteady_vector ( const int  ircflp,
const cs_real_3_t  diipb,
const cs_real_33_t  gradi,
const cs_real_3_t  pi,
cs_real_t  pip[3] 
)
inlinestatic

Handle preparation of boundary face values for the flux computation in case of a steady algorithm.

Parameters
[in]ircflprecontruction flag
[in]diipbdistance I'I'
[in]gradigradient at cell i
[in]pivalue at cell i
[out]pipreconstructed value at cell i

◆ cs_b_compute_quantities()

static void cs_b_compute_quantities ( const cs_real_3_t  diipb,
const cs_real_3_t  gradi,
const int  ircflp,
cs_real_t recoi 
)
inlinestatic

Reconstruct values in I' at boundary cell i.

Parameters
[in]diipbdistance I'I'
[in]gradigradient at cell i
[in]ircflprecontruction flag
[out]recoireconstruction at cell i

◆ cs_b_compute_quantities_tensor()

static void cs_b_compute_quantities_tensor ( const cs_real_3_t  diipb,
const cs_real_63_t  gradi,
const int  ircflp,
cs_real_t  recoi[6] 
)
inlinestatic

Reconstruct values in I' at boundary cell i.

Parameters
[in]diipbdistance I'I'
[in]gradigradient at cell i
[in]ircflprecontruction flag
[out]recoireconstruction at cell i

◆ cs_b_compute_quantities_vector()

static void cs_b_compute_quantities_vector ( const cs_real_3_t  diipb,
const cs_real_33_t  gradi,
const int  ircflp,
cs_real_t  recoi[3] 
)
inlinestatic

Reconstruct values in I' at boundary cell i.

Parameters
[in]diipbdistance I'I'
[in]gradigradient at cell i
[in]ircflprecontruction flag
[out]recoireconstruction at cell i

◆ cs_b_diff_flux()

static void cs_b_diff_flux ( const int  idiffp,
const cs_real_t  thetap,
const int  inc,
const cs_real_t  pipr,
const cs_real_t  cofafp,
const cs_real_t  cofbfp,
const cs_real_t  b_visc,
cs_real_t flux 
)
inlinestatic

Add diffusive flux to flux at boundary face.

Parameters
[in]idiffpdiffusion flag
[in]thetapweighting coefficient for the theta-schema,
[in]incNot an increment flag
[in]piprrelaxed reconstructed value at cell i
[in]cofafpexplicit boundary coefficient for diffusion operator
[in]cofbfpimplicit boundary coefficient for diffusion operator
[in]b_viscboundary face surface
[in,out]fluxflux at boundary face

◆ cs_b_diff_flux_coupling()

static void cs_b_diff_flux_coupling ( int  idiffp,
cs_real_t  pi,
cs_real_t  pj,
cs_real_t  b_visc,
cs_real_t fluxi 
)
inlinestatic

Add diffusive flux to flux at an internal coupling face.

Parameters
[in]idiffpdiffusion flag
[in]pivalue at cell i
[in]pjvalue at cell j
[in]b_viscequivalent exchange coefficient at an internal coupling face
[in,out]fluxiflux at internal coupling face

◆ cs_b_diff_flux_coupling_vector()

static void cs_b_diff_flux_coupling_vector ( int  idiffp,
const cs_real_t  pi[3],
const cs_real_t  pj[3],
cs_real_t  b_visc,
cs_real_t  fluxi[3] 
)
inlinestatic

Add diffusive flux to flux at an internal coupling face for a vector.

Parameters
[in]idiffpdiffusion flag
[in]pivalue at cell i
[in]pjvalue at cell j
[in]b_viscequivalent exchange coefficient at an internal coupling face
[in,out]fluxiflux at internal coupling face

◆ cs_b_diff_flux_tensor()

static void cs_b_diff_flux_tensor ( const int  idiffp,
const cs_real_t  thetap,
const int  inc,
const cs_real_6_t  pipr,
const cs_real_6_t  cofaf,
const cs_real_66_t  cofbf,
const cs_real_t  b_visc,
cs_real_t  flux[6] 
)
inlinestatic

Add diffusive flux to flux at boundary face.

Parameters
[in]idiffpdiffusion flag
[in]thetapweighting coefficient for the theta-schema,
[in]incNot an increment flag
[in]piprrelaxed reconstructed value at cell i
[in]cofafexplicit boundary coefficient for diffusion operator
[in]cofbfimplicit boundary coefficient for diffusion operator
[in]b_viscboundary face surface
[in,out]fluxflux at boundary face

◆ cs_b_diff_flux_vector()

static void cs_b_diff_flux_vector ( const int  idiffp,
const cs_real_t  thetap,
const int  inc,
const cs_real_3_t  pipr,
const cs_real_3_t  cofaf,
const cs_real_33_t  cofbf,
const cs_real_t  b_visc,
cs_real_t  flux[3] 
)
inlinestatic

Add diffusive flux to flux at boundary face.

Parameters
[in]idiffpdiffusion flag
[in]thetapweighting coefficient for the theta-schema,
[in]incNot an increment flag
[in]piprrelaxed reconstructed value at cell i
[in]cofafexplicit boundary coefficient for diffusion operator
[in]cofbfimplicit boundary coefficient for diffusion operator
[in]b_viscboundary face surface
[in,out]fluxflux at boundary face

◆ cs_b_imposed_conv_flux()

static void cs_b_imposed_conv_flux ( int  iconvp,
cs_real_t  thetap,
int  imasac,
int  inc,
cs_int_t  bc_type,
int  icvfli,
cs_real_t  pi,
cs_real_t  pir,
cs_real_t  pipr,
cs_real_t  coefap,
cs_real_t  coefbp,
cs_real_t  coface,
cs_real_t  cofbce,
cs_real_t  b_massflux,
cs_real_t  xcpp,
cs_real_t flux 
)
inlinestatic

Add convective flux (substracting the mass accumulation from it) to flux at boundary face. The convective flux can be either an upwind flux or an imposed value.

Parameters
[in]iconvpconvection flag
[in]thetapweighting coefficient for the theta-schema,
[in]imasactake mass accumulation into account?
[in]incNot an increment flag
[in]bc_typetype of boundary face
[in]icvfliimposed convective flux flag
[in]pivalue at cell i
[in]pirrelaxed value at cell i
[in]piprrelaxed reconstructed value at cell i
[in]coefapexplicit boundary coefficient for convection operator
[in]coefbpimplicit boundary coefficient for convection operator
[in]cofaceexplicit imposed convective flux value (0 otherwise).
[in]cofbceimplicit part of imp. conv. flux value
[in]b_massfluxmass flux at boundary face
[in]xcppspecific heat value if the scalar is the temperature, 1 otherwise
[in,out]fluxflux at boundary face

◆ cs_b_imposed_conv_flux_vector()

static void cs_b_imposed_conv_flux_vector ( int  iconvp,
cs_real_t  thetap,
int  imasac,
int  inc,
cs_int_t  bc_type,
int  icvfli,
const cs_real_t  pi[restrict 3],
const cs_real_t  pir[restrict 3],
const cs_real_t  pipr[restrict 3],
const cs_real_t  coefap[restrict 3],
const cs_real_t  coefbp[restrict 3][3],
const cs_real_t  coface[restrict 3],
const cs_real_t  cofbce[restrict 3][3],
cs_real_t  b_massflux,
cs_real_t  flux[restrict 3] 
)
inlinestatic

Add convective flux (substracting the mass accumulation from it) to flux at boundary face. The convective flux can be either an upwind flux or an imposed value.

Parameters
[in]iconvpconvection flag
[in]thetapweighting coefficient for the theta-schema,
[in]imasactake mass accumulation into account?
[in]incNot an increment flag
[in]bc_typetype of boundary face
[in]icvfliimposed convective flux flag
[in]pivalue at cell i
[in]pirrelaxed value at cell i
[in]piprrelaxed reconstructed value at cell i
[in]coefapexplicit boundary coefficient for convection operator
[in]coefbpimplicit boundary coefficient for convection operator
[in]cofaceexplicit imposed convective flux value (0 otherwise).
[in]cofbceimplicit part of imp. conv. flux value
[in]b_massfluxmass flux at boundary face
[in,out]fluxflux at boundary face

◆ cs_b_relax_c_val()

static void cs_b_relax_c_val ( const double  relaxp,
const cs_real_t  pi,
const cs_real_t  pia,
const cs_real_t  recoi,
cs_real_t pir,
cs_real_t pipr 
)
inlinestatic

Compute relaxed values at boundary cell i.

Parameters
[in]relaxprelaxation coefficient
[in]pivalue at cell i
[in]piaold value at cell i
[in]recoireconstruction at cell i
[out]pirrelaxed value at cell i
[out]piprrelaxed reconstructed value at cell i

◆ cs_b_relax_c_val_tensor()

static void cs_b_relax_c_val_tensor ( const double  relaxp,
const cs_real_6_t  pi,
const cs_real_6_t  pia,
const cs_real_6_t  recoi,
cs_real_t  pir[6],
cs_real_t  pipr[6] 
)
inlinestatic

Compute relaxed values at boundary cell i.

Parameters
[in]relaxprelaxation coefficient
[in]pivalue at cell i
[in]piaold value at cell i
[in]recoireconstruction at cell i
[out]pirrelaxed value at cell i
[out]piprrelaxed reconstructed value at cell i

◆ cs_b_relax_c_val_vector()

static void cs_b_relax_c_val_vector ( const double  relaxp,
const cs_real_3_t  pi,
const cs_real_3_t  pia,
const cs_real_3_t  recoi,
cs_real_t  pir[3],
cs_real_t  pipr[3] 
)
inlinestatic

Compute relaxed values at boundary cell i.

Parameters
[in]relaxprelaxation coefficient
[in]pivalue at cell i
[in]piaold value at cell i
[in]recoireconstruction at cell i
[out]pirrelaxed value at cell i
[out]piprrelaxed reconstructed value at cell i

◆ cs_b_upwind_flux()

static void cs_b_upwind_flux ( const int  iconvp,
const cs_real_t  thetap,
const int  imasac,
const int  inc,
const int  bc_type,
const cs_real_t  pi,
const cs_real_t  pir,
const cs_real_t  pipr,
const cs_real_t  coefap,
const cs_real_t  coefbp,
const cs_real_t  b_massflux,
const cs_real_t  xcpp,
cs_real_t flux 
)
inlinestatic

Add convective flux (substracting the mass accumulation from it) to flux at boundary face. The convective flux is a pure upwind flux.

Parameters
[in]iconvpconvection flag
[in]thetapweighting coefficient for the theta-schema,
[in]imasactake mass accumulation into account?
[in]incNot an increment flag
[in]bc_typetype of boundary face
[in]pivalue at cell i
[in]pirrelaxed value at cell i
[in]piprrelaxed reconstructed value at cell i
[in]coefapexplicit boundary coefficient for convection operator
[in]coefbpimplicit boundary coefficient for convection operator
[in]b_massfluxmass flux at boundary face
[in]xcppspecific heat value if the scalar is the temperature, 1 otherwise
[in,out]fluxflux at boundary face

◆ cs_b_upwind_flux_tensor()

static void cs_b_upwind_flux_tensor ( const int  iconvp,
const cs_real_t  thetap,
const int  imasac,
const int  inc,
const int  bc_type,
const cs_real_6_t  pi,
const cs_real_6_t  pir,
const cs_real_6_t  pipr,
const cs_real_6_t  coefa,
const cs_real_66_t  coefb,
const cs_real_t  b_massflux,
cs_real_t  flux[6] 
)
inlinestatic

Add convective flux (substracting the mass accumulation from it) to flux at boundary face. The convective flux is a pure upwind flux.

Parameters
[in]iconvpconvection flag
[in]thetapweighting coefficient for the theta-schema,
[in]imasactake mass accumulation into account?
[in]incNot an increment flag
[in]bc_typetype of boundary face
[in]pivalue at cell i
[in]pirrelaxed value at cell i
[in]piprrelaxed reconstructed value at cell i
[in]coefaexplicit boundary coefficient for convection operator
[in]coefbimplicit boundary coefficient for convection operator
[in]b_massfluxmass flux at boundary face
[in,out]fluxflux at boundary face

◆ cs_b_upwind_flux_vector()

static void cs_b_upwind_flux_vector ( const int  iconvp,
const cs_real_t  thetap,
const int  imasac,
const int  inc,
const int  bc_type,
const cs_real_3_t  pi,
const cs_real_3_t  pir,
const cs_real_3_t  pipr,
const cs_real_3_t  coefa,
const cs_real_33_t  coefb,
const cs_real_t  b_massflux,
cs_real_t  flux[3] 
)
inlinestatic

Add convective flux (substracting the mass accumulation from it) to flux at boundary face. The convective flux is a pure upwind flux.

Parameters
[in]iconvpconvection flag
[in]thetapweighting coefficient for the theta-schema,
[in]imasactake mass accumulation into account?
[in]incNot an increment flag
[in]bc_typetype of boundary face
[in]pivalue at cell i
[in]pirrelaxed value at cell i
[in]piprrelaxed reconstructed value at cell i
[in]coefaexplicit boundary coefficient for convection operator
[in]coefbimplicit boundary coefficient for convection operator
[in]b_massfluxmass flux at boundary face
[in,out]fluxflux at boundary face

◆ cs_blend_f_val()

static void cs_blend_f_val ( const double  blencp,
const cs_real_t  p,
cs_real_t pf 
)
inlinestatic

Blend face values for a centered or SOLU scheme with face values for an upwind scheme.

Parameters
[in]blencpproportion of centered or SOLU scheme, (1-blencp) is the proportion of upwind.
[in]p(relaxed) value at cell
[out]pfface value

◆ cs_blend_f_val_tensor()

static void cs_blend_f_val_tensor ( const double  blencp,
const cs_real_6_t  p,
cs_real_t  pf[6] 
)
inlinestatic

Blend face values for a centered or SOLU scheme with face values for an upwind scheme.

Parameters
[in]blencpproportion of centered or SOLU scheme, (1-blencp) is the proportion of upwind.
[in]p(relaxed) value at cell
[out]pfface value

◆ cs_blend_f_val_vector()

static void cs_blend_f_val_vector ( const double  blencp,
const cs_real_3_t  p,
cs_real_t  pf[3] 
)
inlinestatic

Blend face values for a centered or SOLU scheme with face values for an upwind scheme.

Parameters
[in]blencpproportion of centered or SOLU scheme, (1-blencp) is the proportion of upwind.
[in]p(relaxed) value at cell
[in,out]pfface value

◆ cs_centered_f_val()

static void cs_centered_f_val ( const double  pnd,
const cs_real_t  pip,
const cs_real_t  pjp,
cs_real_t pf 
)
inlinestatic

Prepare value at face ij by using a centered scheme.

Parameters
[in]pndweight
[in]pip(relaxed) reconstructed value at cell i
[in]pjp(relaxed) reconstructed value at cell j
[out]pfface value

◆ cs_centered_f_val_tensor()

static void cs_centered_f_val_tensor ( const double  pnd,
const cs_real_6_t  pip,
const cs_real_6_t  pjp,
cs_real_t  pf[6] 
)
inlinestatic

Prepare value at face ij by using a centered scheme.

Parameters
[in]pndweight
[in]pip(relaxed) reconstructed value at cell i
[in]pjp(relaxed) reconstructed value at cell j
[out]pfface value

◆ cs_centered_f_val_vector()

static void cs_centered_f_val_vector ( const double  pnd,
const cs_real_3_t  pip,
const cs_real_3_t  pjp,
cs_real_t  pf[3] 
)
inlinestatic

Prepare value at face ij by using a centered scheme.

Parameters
[in]pndweight
[in]pip(relaxed) reconstructed value at cell i
[in]pjp(relaxed) reconstructed value at cell j
[out]pfface value

◆ cs_central_downwind_cells()

static void cs_central_downwind_cells ( const cs_lnum_t  ii,
const cs_lnum_t  jj,
const cs_real_t  i_massflux,
cs_lnum_t ic,
cs_lnum_t id 
)
inlinestatic

Determine the upwind and downwind sides of an internal face and matching cell indices.

Parameters
[in]iiindex of cell (0)
[in]jjindex of cell (1)
[in]i_massfluxmass flux at face ij
[out]icindex of central cell (upwind w.r.t. the face)
[out]idindex of downwind cell

◆ cs_convection_diffusion_scalar()

void cs_convection_diffusion_scalar ( int  idtvar,
int  f_id,
const cs_var_cal_opt_t  var_cal_opt,
int  icvflb,
int  inc,
int  iccocg,
int  imasac,
cs_real_t *restrict  pvar,
const cs_real_t *restrict  pvara,
const cs_int_t  icvfli[],
const cs_real_t  coefap[],
const cs_real_t  coefbp[],
const cs_real_t  cofafp[],
const cs_real_t  cofbfp[],
const cs_real_t  i_massflux[],
const cs_real_t  b_massflux[],
const cs_real_t  i_visc[],
const cs_real_t  b_visc[],
cs_real_t *restrict  rhs 
)

Add the explicit part of the convection/diffusion terms of a standard transport equation of a scalar field $ \varia $.

More precisely, the right hand side $ Rhs $ is updated as follows:

\[ Rhs = Rhs - \sum_{\fij \in \Facei{\celli}} \left( \dot{m}_\ij \left( \varia_\fij - \varia_\celli \right) - \mu_\fij \gradv_\fij \varia \cdot \vect{S}_\ij \right) \]

Warning:

  • $ Rhs $ has already been initialized before calling bilsc2!
  • mind the sign minus
Parameters
[in]idtvarindicator of the temporal scheme
[in]f_idfield id (or -1)
[in]var_cal_optvariable calculation options
[in]icvflbglobal indicator of boundary convection flux
  • 0 upwind scheme at all boundary faces
  • 1 imposed flux at some boundary faces
[in]incindicator
  • 0 when solving an increment
  • 1 otherwise
[in]iccocgindicator
  • 1 re-compute cocg matrix (for iterative gradients)
  • 0 otherwise
[in]imasactake mass accumulation into account?
[in]pvarsolved variable (current time step)
[in]pvarasolved variable (previous time step)
[in]icvfliboundary face indicator array of convection flux
  • 0 upwind scheme
  • 1 imposed flux
[in]coefapboundary condition array for the variable (explicit part)
[in]coefbpboundary condition array for the variable (implicit part)
[in]cofafpboundary condition array for the diffusion of the variable (explicit part)
[in]cofbfpboundary condition array for the diffusion of the variable (implicit part)
[in]i_massfluxmass flux at interior faces
[in]b_massfluxmass flux at boundary faces
[in]i_visc$ \mu_\fij \dfrac{S_\fij}{\ipf \jpf} $ at interior faces for the r.h.s.
[in]b_visc$ \mu_\fib \dfrac{S_\fib}{\ipf \centf} $ at border faces for the r.h.s.
[in,out]rhsright hand side $ \vect{Rhs} $

More precisely, the right hand side $ Rhs $ is updated as follows:

\[ Rhs = Rhs - \sum_{\fij \in \Facei{\celli}} \left( \dot{m}_\ij \left( \varia_\fij - \varia_\celli \right) - \mu_\fij \gradv_\fij \varia \cdot \vect{S}_\ij \right) \]

Warning:

  • $ Rhs $ has already been initialized before calling bilsc2!
  • mind the sign minus

Please refer to the bilsc2 section of the theory guide for more informations.

Parameters
[in]idtvarindicator of the temporal scheme
[in]f_idfield id (or -1)
[in]var_cal_optvariable calculation options
[in]icvflbglobal indicator of boundary convection flux
  • 0 upwind scheme at all boundary faces
  • 1 imposed flux at some boundary faces
[in]incindicator
  • 0 when solving an increment
  • 1 otherwise
[in]iccocgindicator
  • 1 re-compute cocg matrix (for iterative gradients)
  • 0 otherwise
[in]imasactake mass accumulation into account?
[in]pvarsolved variable (current time step)
[in]pvarasolved variable (previous time step)
[in]icvfliboundary face indicator array of convection flux
  • 0 upwind scheme
  • 1 imposed flux
[in]coefapboundary condition array for the variable (explicit part)
[in]coefbpboundary condition array for the variable (implicit part)
[in]cofafpboundary condition array for the diffusion of the variable (explicit part)
[in]cofbfpboundary condition array for the diffusion of the variable (implicit part)
[in]i_massfluxmass flux at interior faces
[in]b_massfluxmass flux at boundary faces
[in]i_visc$ \mu_\fij \dfrac{S_\fij}{\ipf \jpf} $ at interior faces for the r.h.s.
[in]b_visc$ \mu_\fib \dfrac{S_\fib}{\ipf \centf} $ at border faces for the r.h.s.
[in,out]rhsright hand side $ \vect{Rhs} $

◆ cs_convection_diffusion_tensor()

void cs_convection_diffusion_tensor ( int  idtvar,
int  f_id,
const cs_var_cal_opt_t  var_cal_opt,
int  icvflb,
int  inc,
int  imasac,
cs_real_6_t *restrict  pvar,
const cs_real_6_t *restrict  pvara,
const cs_real_6_t  coefa[],
const cs_real_66_t  coefb[],
const cs_real_6_t  cofaf[],
const cs_real_66_t  cofbf[],
const cs_real_t  i_massflux[],
const cs_real_t  b_massflux[],
const cs_real_t  i_visc[],
const cs_real_t  b_visc[],
cs_real_6_t *restrict  rhs 
)

Add the explicit part of the convection/diffusion terms of a transport equation of a vector field $ \vect{\varia} $.

More precisely, the right hand side $ \vect{Rhs} $ is updated as follows:

\[ \vect{Rhs} = \vect{Rhs} - \sum_{\fij \in \Facei{\celli}} \left( \dot{m}_\ij \left( \vect{\varia}_\fij - \vect{\varia}_\celli \right) - \mu_\fij \gradt_\fij \vect{\varia} \cdot \vect{S}_\ij \right) \]

Warning:

  • $ \vect{Rhs} $ has already been initialized before calling bilsc!
  • mind the sign minus
Parameters
[in]idtvarindicator of the temporal scheme
[in]f_idindex of the current variable
[in]var_cal_optvariable calculation options
[in]icvflbglobal indicator of boundary convection flux
  • 0 upwind scheme at all boundary faces
  • 1 imposed flux at some boundary faces
[in]incindicator
  • 0 when solving an increment
  • 1 otherwise
[in]imasactake mass accumulation into account?
[in]pvarsolved velocity (current time step)
[in]pvarasolved velocity (previous time step)
[in]coefaboundary condition array for the variable (Explicit part)
[in]coefbboundary condition array for the variable (Implicit part)
[in]cofafboundary condition array for the diffusion of the variable (Explicit part)
[in]cofbfboundary condition array for the diffusion of the variable (Implicit part)
[in]i_massfluxmass flux at interior faces
[in]b_massfluxmass flux at boundary faces
[in]i_visc$ \mu_\fij \dfrac{S_\fij}{\ipf \jpf} $ at interior faces for the r.h.s.
[in]b_visc$ \mu_\fib \dfrac{S_\fib}{\ipf \centf} $ at border faces for the r.h.s.
[in,out]rhsright hand side $ \vect{Rhs} $

◆ cs_convection_diffusion_thermal()

void cs_convection_diffusion_thermal ( int  idtvar,
int  f_id,
const cs_var_cal_opt_t  var_cal_opt,
int  inc,
int  iccocg,
int  imasac,
cs_real_t *restrict  pvar,
const cs_real_t *restrict  pvara,
const cs_real_t  coefap[],
const cs_real_t  coefbp[],
const cs_real_t  cofafp[],
const cs_real_t  cofbfp[],
const cs_real_t  i_massflux[],
const cs_real_t  b_massflux[],
const cs_real_t  i_visc[],
const cs_real_t  b_visc[],
const cs_real_t  xcpp[],
cs_real_t *restrict  rhs 
)

Add the explicit part of the convection/diffusion terms of a transport equation of a scalar field $ \varia $ such as the temperature.

More precisely, the right hand side $ Rhs $ is updated as follows:

\[ Rhs = Rhs + \sum_{\fij \in \Facei{\celli}} \left( C_p\dot{m}_\ij \varia_\fij - \lambda_\fij \gradv_\fij \varia \cdot \vect{S}_\ij \right) \]

Warning: $ Rhs $ has already been initialized before calling bilsct!

Parameters
[in]idtvarindicator of the temporal scheme
[in]f_idindex of the current variable
[in]var_cal_optvariable calculation options
[in]incindicator
  • 0 when solving an increment
  • 1 otherwise
[in]iccocgindicator
  • 1 re-compute cocg matrix (for iterative gradients)
  • 0 otherwise
[in]imasactake mass accumulation into account?
[in]pvarsolved variable (current time step)
[in]pvarasolved variable (previous time step)
[in]coefapboundary condition array for the variable (explicit part)
[in]coefbpboundary condition array for the variable (implicit part)
[in]cofafpboundary condition array for the diffusion of the variable (explicit part)
[in]cofbfpboundary condition array for the diffusion of the variable (implicit part)
[in]i_massfluxmass flux at interior faces
[in]b_massfluxmass flux at boundary faces
[in]i_visc$ \mu_\fij \dfrac{S_\fij}{\ipf \jpf} $ at interior faces for the r.h.s.
[in]b_visc$ \mu_\fib \dfrac{S_\fib}{\ipf \centf} $ at border faces for the r.h.s.
[in]xcpparray of specific heat ( $ C_p $)
[in,out]rhsright hand side $ \vect{Rhs} $

◆ cs_convection_diffusion_vector()

void cs_convection_diffusion_vector ( int  idtvar,
int  f_id,
const cs_var_cal_opt_t  var_cal_opt,
int  icvflb,
int  inc,
int  ivisep,
int  imasac,
cs_real_3_t *restrict  pvar,
const cs_real_3_t *restrict  pvara,
const cs_int_t  icvfli[],
const cs_real_3_t  coefav[],
const cs_real_33_t  coefbv[],
const cs_real_3_t  cofafv[],
const cs_real_33_t  cofbfv[],
const cs_real_t  i_massflux[],
const cs_real_t  b_massflux[],
const cs_real_t  i_visc[],
const cs_real_t  b_visc[],
const cs_real_t  i_secvis[],
const cs_real_t  b_secvis[],
cs_real_3_t *restrict  rhs 
)

Add the explicit part of the convection/diffusion terms of a transport equation of a vector field $ \vect{\varia} $.

More precisely, the right hand side $ \vect{Rhs} $ is updated as follows:

\[ \vect{Rhs} = \vect{Rhs} - \sum_{\fij \in \Facei{\celli}} \left( \dot{m}_\ij \left( \vect{\varia}_\fij - \vect{\varia}_\celli \right) - \mu_\fij \gradt_\fij \vect{\varia} \cdot \vect{S}_\ij \right) \]

Remark: if ivisep = 1, then we also take $ \mu \transpose{\gradt\vect{\varia}} + \lambda \trace{\gradt\vect{\varia}} $, where $ \lambda $ is the secondary viscosity, i.e. usually $ -\frac{2}{3} \mu $.

Warning:

  • $ \vect{Rhs} $ has already been initialized before calling bilsc!
  • mind the sign minus
Parameters
[in]idtvarindicator of the temporal scheme
[in]f_idindex of the current variable
[in]var_cal_optvariable calculation options
[in]icvflbglobal indicator of boundary convection flux
  • 0 upwind scheme at all boundary faces
  • 1 imposed flux at some boundary faces
[in]incindicator
  • 0 when solving an increment
  • 1 otherwise
[in]ivisepindicator to take $ \divv \left(\mu \gradt \transpose{\vect{a}} \right) -2/3 \grad\left( \mu \dive \vect{a} \right)$
  • 1 take into account,
  • 0 otherwise
[in]imasactake mass accumulation into account?
[in]pvarsolved velocity (current time step)
[in]pvarasolved velocity (previous time step)
[in]icvfliboundary face indicator array of convection flux
  • 0 upwind scheme
  • 1 imposed flux
[in]coefavboundary condition array for the variable (explicit part)
[in]coefbvboundary condition array for the variable (implicit part)
[in]cofafvboundary condition array for the diffusion of the variable (explicit part)
[in]cofbfvboundary condition array for the diffusion of the variable (implicit part)
[in]i_massfluxmass flux at interior faces
[in]b_massfluxmass flux at boundary faces
[in]i_visc$ \mu_\fij \dfrac{S_\fij}{\ipf \jpf} $ at interior faces for the r.h.s.
[in]b_visc$ \mu_\fib \dfrac{S_\fib}{\ipf \centf} $ at border faces for the r.h.s.
[in]secvifsecondary viscosity at interior faces
[in]secvibsecondary viscosity at boundary faces
[in,out]rhsright hand side $ \vect{Rhs} $

More precisely, the right hand side $ \vect{Rhs} $ is updated as follows:

\[ \vect{Rhs} = \vect{Rhs} - \sum_{\fij \in \Facei{\celli}} \left( \dot{m}_\ij \left( \vect{\varia}_\fij - \vect{\varia}_\celli \right) - \mu_\fij \gradt_\fij \vect{\varia} \cdot \vect{S}_\ij \right) \]

Remark: if ivisep = 1, then we also take $ \mu \transpose{\gradt\vect{\varia}} + \lambda \trace{\gradt\vect{\varia}} $, where $ \lambda $ is the secondary viscosity, i.e. usually $ -\frac{2}{3} \mu $.

Warning:

  • $ \vect{Rhs} $ has already been initialized before calling bilsc!
  • mind the sign minus
Parameters
[in]idtvarindicator of the temporal scheme
[in]f_idindex of the current variable
[in]var_cal_optvariable calculation options
[in]icvflbglobal indicator of boundary convection flux
  • 0 upwind scheme at all boundary faces
  • 1 imposed flux at some boundary faces
[in]incindicator
  • 0 when solving an increment
  • 1 otherwise
[in]ivisepindicator to take $ \divv \left(\mu \gradt \transpose{\vect{a}} \right) -2/3 \grad\left( \mu \dive \vect{a} \right)$
  • 1 take into account,
  • 0 otherwise
[in]imasactake mass accumulation into account?
[in]pvarsolved velocity (current time step)
[in]pvarasolved velocity (previous time step)
[in]icvfliboundary face indicator array of convection flux
  • 0 upwind scheme
  • 1 imposed flux
[in]coefavboundary condition array for the variable (explicit part)
[in]coefbvboundary condition array for the variable (implicit part)
[in]cofafvboundary condition array for the diffusion of the variable (explicit part)
[in]cofbfvboundary condition array for the diffusion of the variable (implicit part)
[in]i_massfluxmass flux at interior faces
[in]b_massfluxmass flux at boundary faces
[in]i_visc$ \mu_\fij \dfrac{S_\fij}{\ipf \jpf} $ at interior faces for the r.h.s.
[in]b_visc$ \mu_\fib \dfrac{S_\fib}{\ipf \centf} $ at border faces for the r.h.s.
[in]i_secvissecondary viscosity at interior faces
[in]b_secvissecondary viscosity at boundary faces
[in,out]rhsright hand side $ \vect{Rhs} $

◆ cs_diffusion_potential()

void cs_diffusion_potential ( const int  f_id,
const cs_mesh_t m,
cs_mesh_quantities_t fvq,
int  init,
int  inc,
int  imrgra,
int  iccocg,
int  nswrgp,
int  imligp,
int  iphydp,
int  iwarnp,
double  epsrgp,
double  climgp,
double  extrap,
cs_real_3_t *restrict  frcxt,
cs_real_t *restrict  pvar,
const cs_real_t  coefap[],
const cs_real_t  coefbp[],
const cs_real_t  cofafp[],
const cs_real_t  cofbfp[],
const cs_real_t  i_visc[],
const cs_real_t  b_visc[],
cs_real_t  visel[],
cs_real_t *restrict  diverg 
)

Update the cell mass flux divergence with the face pressure (or pressure increment, or pressure double increment) gradient.

\[ \dot{m}_\ij = \dot{m}_\ij - \sum_j \Delta t \grad_\fij p \cdot \vect{S}_\ij \]

Parameters
[in]f_idfield id (or -1)
[in]mpointer to mesh
[in]fvqpointer to finite volume quantities
[in]initindicator
  • 1 initialize the mass flux to 0
  • 0 otherwise
[in]incindicator
  • 0 when solving an increment
  • 1 otherwise
[in]imrgraindicator
  • 0 iterative gradient
  • 1 least square gradient
[in]iccocgindicator
  • 1 re-compute cocg matrix (for iterative gradients)
  • 0 otherwise
[in]nswrgpnumber of reconstruction sweeps for the gradients
[in]imligpclipping gradient method
  • < 0 no clipping
  • = 0 thank to neighbooring gradients
  • = 1 thank to the mean gradient
[in]iphydphydrostatic pressure indicator
[in]iwarnpverbosity
[in]epsrgprelative precision for the gradient reconstruction
[in]climgpclipping coeffecient for the computation of the gradient
[in]extrapcoefficient for extrapolation of the gradient
[in]frcxtbody force creating the hydrostatic pressure
[in]pvarsolved variable (current time step)
[in]coefapboundary condition array for the variable (explicit part)
[in]coefbpboundary condition array for the variable (implicit part)
[in]cofafpboundary condition array for the diffusion of the variable (explicit part)
[in]cofbfpboundary condition array for the diffusion of the variable (implicit part)
[in]i_visc$ \mu_\fij \dfrac{S_\fij}{\ipf \jpf} $ at interior faces for the r.h.s.
[in]b_visc$ \mu_\fib \dfrac{S_\fib}{\ipf \centf} $ at border faces for the r.h.s.
[in]viselviscosity by cell
[in,out]divergmass flux divergence

\[ \dot{m}_\ij = \dot{m}_\ij - \sum_j \Delta t \grad_\fij p \cdot \vect{S}_\ij \]

Parameters
[in]f_idfield id (or -1)
[in]mpointer to mesh
[in]fvqpointer to finite volume quantities
[in]initindicator
  • 1 initialize the mass flux to 0
  • 0 otherwise
[in]incindicator
  • 0 when solving an increment
  • 1 otherwise
[in]imrgraindicator
  • 0 iterative gradient
  • 1 least squares gradient
[in]iccocgindicator
  • 1 re-compute cocg matrix (for iterative gradients)
  • 0 otherwise
[in]nswrgpnumber of reconstruction sweeps for the gradients
[in]imligpclipping gradient method
  • < 0 no clipping
  • = 0 thank to neighbooring gradients
  • = 1 thank to the mean gradient
[in]iphydphydrostatic pressure indicator
[in]iwarnpverbosity
[in]epsrgprelative precision for the gradient reconstruction
[in]climgpclipping coeffecient for the computation of the gradient
[in]extrapcoefficient for extrapolation of the gradient
[in]frcxtbody force creating the hydrostatic pressure
[in]pvarsolved variable (current time step)
[in]coefapboundary condition array for the variable (explicit part)
[in]coefbpboundary condition array for the variable (implicit part)
[in]cofafpboundary condition array for the diffusion of the variable (explicit part)
[in]cofbfpboundary condition array for the diffusion of the variable (implicit part)
[in]i_visc$ \mu_\fij \dfrac{S_\fij}{\ipf \jpf} $ at interior faces for the r.h.s.
[in]b_visc$ \mu_\fib \dfrac{S_\fib}{\ipf \centf} $ at border faces for the r.h.s.
[in]viselviscosity by cell
[in,out]divergmass flux divergence

◆ cs_face_anisotropic_diffusion_potential()

void cs_face_anisotropic_diffusion_potential ( const int  f_id,
const cs_mesh_t m,
cs_mesh_quantities_t fvq,
int  init,
int  inc,
int  imrgra,
int  iccocg,
int  nswrgp,
int  imligp,
int  ircflp,
int  iphydp,
int  iwgrp,
int  iwarnp,
double  epsrgp,
double  climgp,
double  extrap,
cs_real_3_t *restrict  frcxt,
cs_real_t *restrict  pvar,
const cs_real_t  coefap[],
const cs_real_t  coefbp[],
const cs_real_t  cofafp[],
const cs_real_t  cofbfp[],
const cs_real_t  i_visc[],
const cs_real_t  b_visc[],
cs_real_6_t *restrict  viscel,
const cs_real_2_t  weighf[],
const cs_real_t  weighb[],
cs_real_t *restrict  i_massflux,
cs_real_t *restrict  b_massflux 
)

Add the explicit part of the pressure gradient term to the mass flux in case of anisotropic diffusion of the pressure field $ P $.

More precisely, the mass flux side $ \dot{m}_\fij $ is updated as follows:

\[ \dot{m}_\fij = \dot{m}_\fij - \left( \tens{\mu}_\fij \gradv_\fij P \cdot \vect{S}_\ij \right) \]

Parameters
[in]f_idfield id (or -1)
[in]mpointer to mesh
[in]fvqpointer to finite volume quantities
[in]initindicator
  • 1 initialize the mass flux to 0
  • 0 otherwise
[in]incindicator
  • 0 when solving an increment
  • 1 otherwise
[in]imrgraindicator
  • 0 iterative gradient
  • 1 least square gradient
[in]iccocgindicator
  • 1 re-compute cocg matrix (for iterativ gradients)
  • 0 otherwise
[in]nswrgpnumber of reconstruction sweeps for the gradients
[in]imligpclipping gradient method
  • < 0 no clipping
  • = 0 thank to neighbooring gradients
  • = 1 thank to the mean gradient
[in]ircflpindicator
  • 1 flux reconstruction,
  • 0 otherwise
[in]iphydpindicator
  • 1 hydrostatic pressure taken into account
  • 0 otherwise
[in]iwgrpindicator
  • 1 weight gradient by vicosity*porosity
  • weighting determined by field options
[in]iwarnpverbosity
[in]epsrgprelative precision for the gradient reconstruction
[in]climgpclipping coeffecient for the computation of the gradient
[in]extrapcoefficient for extrapolation of the gradient
[in]frcxtbody force creating the hydrostatic pressure
[in]pvarsolved variable (pressure)
[in]coefapboundary condition array for the variable (explicit part)
[in]coefbpboundary condition array for the variable (implicit part)
[in]cofafpboundary condition array for the diffusion of the variable (explicit part)
[in]cofbfpboundary condition array for the diffusion of the variable (implicit part)
[in]i_visc$ \mu_\fij \dfrac{S_\fij}{\ipf \jpf} $ at interior faces for the r.h.s.
[in]b_visc$ \mu_\fib \dfrac{S_\fib}{\ipf \centf} $ at border faces for the r.h.s.
[in]viscelsymmetric cell tensor $ \tens{\mu}_\celli $
[in]weighfinternal face weight between cells i j in case of tensor diffusion
[in]weighbboundary face weight for cells i in case of tensor diffusion
[in,out]i_massfluxmass flux at interior faces
[in,out]b_massfluxmass flux at boundary faces

More precisely, the mass flux side $ \dot{m}_\fij $ is updated as follows:

\[ \dot{m}_\fij = \dot{m}_\fij - \left( \tens{\mu}_\fij \gradv_\fij P \cdot \vect{S}_\ij \right) \]

Parameters
[in]f_idfield id (or -1)
[in]mpointer to mesh
[in]fvqpointer to finite volume quantities
[in]initindicator
  • 1 initialize the mass flux to 0
  • 0 otherwise
[in]incindicator
  • 0 when solving an increment
  • 1 otherwise
[in]imrgraindicator
  • 0 iterative gradient
  • 1 least squares gradient
[in]iccocgindicator
  • 1 re-compute cocg matrix (for iterativ gradients)
  • 0 otherwise
[in]nswrgpnumber of reconstruction sweeps for the gradients
[in]imligpclipping gradient method
  • < 0 no clipping
  • = 0 thank to neighbooring gradients
  • = 1 thank to the mean gradient
[in]ircflpindicator
  • 1 flux reconstruction,
  • 0 otherwise
[in]iphydpindicator
  • 1 hydrostatic pressure taken into account
  • 0 otherwise
[in]iwgrpindicator
  • 1 weight gradient by vicosity*porosity
  • weighting determined by field options
[in]iwarnpverbosity
[in]epsrgprelative precision for the gradient reconstruction
[in]climgpclipping coeffecient for the computation of the gradient
[in]extrapcoefficient for extrapolation of the gradient
[in]frcxtbody force creating the hydrostatic pressure
[in]pvarsolved variable (pressure)
[in]coefapboundary condition array for the variable (explicit part)
[in]coefbpboundary condition array for the variable (implicit part)
[in]cofafpboundary condition array for the diffusion of the variable (explicit part)
[in]cofbfpboundary condition array for the diffusion of the variable (implicit part)
[in]i_visc$ \mu_\fij \dfrac{S_\fij}{\ipf \jpf} $ at interior faces for the r.h.s.
[in]b_visc$ \mu_\fib \dfrac{S_\fib}{\ipf \centf} $ at border faces for the r.h.s.
[in]viscelsymmetric cell tensor $ \tens{\mu}_\celli $
[in]weighfinternal face weight between cells i j in case of tensor diffusion
[in]weighbboundary face weight for cells i in case of tensor diffusion
[in,out]i_massfluxmass flux at interior faces
[in,out]b_massfluxmass flux at boundary faces

◆ cs_face_convection_scalar()

void cs_face_convection_scalar ( int  idtvar,
int  f_id,
const cs_var_cal_opt_t  var_cal_opt,
int  icvflb,
int  inc,
int  iccocg,
int  imasac,
cs_real_t *restrict  pvar,
const cs_real_t *restrict  pvara,
const cs_int_t  icvfli[],
const cs_real_t  coefap[],
const cs_real_t  coefbp[],
const cs_real_t  i_massflux[],
const cs_real_t  b_massflux[],
cs_real_2_t  i_conv_flux[],
cs_real_t  b_conv_flux[] 
)

Update face flux with convection contribution of a standard transport equation of a scalar field $ \varia $.

\[ C_\ij = \dot{m}_\ij \left( \varia_\fij - \varia_\celli \right) \]

Parameters
[in]idtvarindicator of the temporal scheme
[in]f_idfield id (or -1)
[in]var_cal_optvariable calculation options
[in]icvflbglobal indicator of boundary convection flux
  • 0 upwind scheme at all boundary faces
  • 1 imposed flux at some boundary faces
[in]incindicator
  • 0 when solving an increment
  • 1 otherwise
[in]iccocgindicator
  • 1 re-compute cocg matrix (for iterative gradients)
  • 0 otherwise
[in]imasactake mass accumulation into account?
[in]pvarsolved variable (current time step)
[in]pvarasolved variable (previous time step)
[in]icvfliboundary face indicator array of convection flux
  • 0 upwind scheme
  • 1 imposed flux
[in]coefapboundary condition array for the variable (explicit part)
[in]coefbpboundary condition array for the variable (implicit part)
[in]i_massfluxmass flux at interior faces
[in]b_massfluxmass flux at boundary faces
[in,out]i_conv_fluxscalar convection flux at interior faces
[in,out]b_conv_fluxscalar convection flux at boundary faces

◆ cs_face_diffusion_potential()

void cs_face_diffusion_potential ( const int  f_id,
const cs_mesh_t m,
cs_mesh_quantities_t fvq,
int  init,
int  inc,
int  imrgra,
int  iccocg,
int  nswrgp,
int  imligp,
int  iphydp,
int  iwgrp,
int  iwarnp,
double  epsrgp,
double  climgp,
double  extrap,
cs_real_3_t *restrict  frcxt,
cs_real_t *restrict  pvar,
const cs_real_t  coefap[],
const cs_real_t  coefbp[],
const cs_real_t  cofafp[],
const cs_real_t  cofbfp[],
const cs_real_t  i_visc[],
const cs_real_t  b_visc[],
cs_real_t *restrict  visel,
cs_real_t *restrict  i_massflux,
cs_real_t *restrict  b_massflux 
)

Update the face mass flux with the face pressure (or pressure increment, or pressure double increment) gradient.

\[ \dot{m}_\ij = \dot{m}_\ij - \Delta t \grad_\fij \delta p \cdot \vect{S}_\ij \]

Parameters
[in]f_idfield id (or -1)
[in]mpointer to mesh
[in]fvqpointer to finite volume quantities
[in]initindicator
  • 1 initialize the mass flux to 0
  • 0 otherwise
[in]incindicator
  • 0 when solving an increment
  • 1 otherwise
[in]imrgraindicator
  • 0 iterative gradient
  • 1 least square gradient
[in]iccocgindicator
  • 1 re-compute cocg matrix (for iterative gradients)
  • 0 otherwise
[in]nswrgpnumber of reconstruction sweeps for the gradients
[in]imligpclipping gradient method
  • < 0 no clipping
  • = 0 thank to neighbooring gradients
  • = 1 thank to the mean gradient
[in]iphydphydrostatic pressure indicator
[in]iwgrpindicator
  • 1 weight gradient by vicosity*porosity
  • weighting determined by field options
[in]iwarnpverbosity
[in]epsrgprelative precision for the gradient reconstruction
[in]climgpclipping coeffecient for the computation of the gradient
[in]extrapcoefficient for extrapolation of the gradient
[in]frcxtbody force creating the hydrostatic pressure
[in]pvarsolved variable (current time step)
[in]coefapboundary condition array for the variable (explicit part)
[in]coefbpboundary condition array for the variable (implicit part)
[in]cofafpboundary condition array for the diffusion of the variable (explicit part)
[in]cofbfpboundary condition array for the diffusion of the variable (implicit part)
[in]i_visc$ \mu_\fij \dfrac{S_\fij}{\ipf \jpf} $ at interior faces for the r.h.s.
[in]b_visc$ \mu_\fib \dfrac{S_\fib}{\ipf \centf} $ at border faces for the r.h.s.
[in]viselviscosity by cell
[in,out]i_massfluxmass flux at interior faces
[in,out]b_massfluxmass flux at boundary faces

\[ \dot{m}_\ij = \dot{m}_\ij - \Delta t \grad_\fij \delta p \cdot \vect{S}_\ij \]

Please refer to the itrmas/itrgrp section of the theory guide for more informations.

Parameters
[in]f_idfield id (or -1)
[in]mpointer to mesh
[in]fvqpointer to finite volume quantities
[in]initindicator
  • 1 initialize the mass flux to 0
  • 0 otherwise
[in]incindicator
  • 0 when solving an increment
  • 1 otherwise
[in]imrgraindicator
  • 0 iterative gradient
  • 1 least squares gradient
[in]iccocgindicator
  • 1 re-compute cocg matrix (for iterative gradients)
  • 0 otherwise
[in]nswrgpnumber of reconstruction sweeps for the gradients
[in]imligpclipping gradient method
  • < 0 no clipping
  • = 0 thank to neighbooring gradients
  • = 1 thank to the mean gradient
[in]iphydphydrostatic pressure indicator
[in]iwgrpindicator
  • 1 weight gradient by vicosity*porosity
  • weighting determined by field options
[in]iwarnpverbosity
[in]epsrgprelative precision for the gradient reconstruction
[in]climgpclipping coeffecient for the computation of the gradient
[in]extrapcoefficient for extrapolation of the gradient
[in]frcxtbody force creating the hydrostatic pressure
[in]pvarsolved variable (current time step)
[in]coefapboundary condition array for the variable (explicit part)
[in]coefbpboundary condition array for the variable (implicit part)
[in]cofafpboundary condition array for the diffusion of the variable (explicit part)
[in]cofbfpboundary condition array for the diffusion of the variable (implicit part)
[in]i_visc$ \mu_\fij \dfrac{S_\fij}{\ipf \jpf} $ at interior faces for the r.h.s.
[in]b_visc$ \mu_\fib \dfrac{S_\fib}{\ipf \centf} $ at border faces for the r.h.s.
[in]viselviscosity by cell
[in,out]i_massfluxmass flux at interior faces
[in,out]b_massfluxmass flux at boundary faces

◆ cs_i_cd_steady()

static void cs_i_cd_steady ( const int  ircflp,
const int  ischcp,
const double  relaxp,
const double  blencp,
const cs_real_t  weight,
const cs_real_t  cell_ceni[3],
const cs_real_t  cell_cenj[3],
const cs_real_t  i_face_cog[3],
const cs_real_t  diipf[3],
const cs_real_t  djjpf[3],
const cs_real_t  gradi[3],
const cs_real_t  gradj[3],
const cs_real_t  gradupi[3],
const cs_real_t  gradupj[3],
const cs_real_t  pi,
const cs_real_t  pj,
const cs_real_t  pia,
const cs_real_t  pja,
cs_real_t pifri,
cs_real_t pifrj,
cs_real_t pjfri,
cs_real_t pjfrj,
cs_real_t pip,
cs_real_t pjp,
cs_real_t pipr,
cs_real_t pjpr 
)
inlinestatic

Handle preparation of internal face values for the fluxes computation in case of a steady algorithm and without enabling slope tests.

Parameters
[in]ircflprecontruction flag
[in]ischcpsecond order convection scheme flag
[in]relaxprelaxation coefficient
[in]blencpproportion of centered or SOLU scheme, (1-blencp) is the proportion of upwind.
[in]weightgeometrical weight
[in]cell_cenicenter of gravity coordinates of cell i
[in]cell_cenjcenter of gravity coordinates of cell i
[in]i_face_cogcenter of gravity coordinates of face ij
[in]diipfdistance II'
[in]djjpfdistance JJ'
[in]gradigradient at cell i
[in]gradjgradient at cell j
[in]gradupigradient upwind at cell i
[in]gradupjgradient upwind at cell j
[in]pivalue at cell i
[in]pjvalue at cell j
[in]piaold value at cell i
[in]pjaold value at cell j
[out]pifricontribution of i to flux from i to j
[out]pifrjcontribution of i to flux from j to i
[out]pjfricontribution of j to flux from i to j
[out]pjfrjcontribution of j to flux from j to i
[out]pipreconstructed value at cell i
[out]pjpreconstructed value at cell j
[out]piprrelaxed reconstructed value at cell i
[out]pjprrelaxed reconstructed value at cell j

◆ cs_i_cd_steady_slope_test()

static void cs_i_cd_steady_slope_test ( bool *  upwind_switch,
const int  iconvp,
const int  ircflp,
const int  ischcp,
const double  relaxp,
const double  blencp,
const double  blend_st,
const cs_real_t  weight,
const cs_real_t  i_dist,
const cs_real_t  i_face_surf,
const cs_real_3_t  cell_ceni,
const cs_real_3_t  cell_cenj,
const cs_real_3_t  i_face_normal,
const cs_real_3_t  i_face_cog,
const cs_real_3_t  diipf,
const cs_real_3_t  djjpf,
const cs_real_t  i_massflux,
const cs_real_3_t  gradi,
const cs_real_3_t  gradj,
const cs_real_3_t  gradupi,
const cs_real_3_t  gradupj,
const cs_real_3_t  gradsti,
const cs_real_3_t  gradstj,
const cs_real_t  pi,
const cs_real_t  pj,
const cs_real_t  pia,
const cs_real_t  pja,
cs_real_t pifri,
cs_real_t pifrj,
cs_real_t pjfri,
cs_real_t pjfrj,
cs_real_t pip,
cs_real_t pjp,
cs_real_t pipr,
cs_real_t pjpr 
)
inlinestatic

Handle preparation of internal face values for the fluxes computation in case of a steady algorithm and using slope tests.

Parameters
[out]upwind_switchslope test result
[in]iconvpconvection flag
[in]ircflprecontruction flag
[in]ischcpsecond order convection scheme flag
[in]relaxprelaxation coefficient
[in]blencpproportion of centered or SOLU scheme, (1-blencp) is the proportion of upwind.
[in]blend_stproportion of centered or SOLU scheme, when the slope test is activated (1-blend_st) is the proportion of upwind.
[in]weightgeometrical weight
[in]i_distdistance IJ.Nij
[in]i_face_surfface surface
[in]cell_cenicenter of gravity coordinates of cell i
[in]cell_cenjcenter of gravity coordinates of cell j
[in]i_face_normalface normal
[in]i_face_cogcenter of gravity coordinates of face ij
[in]diipfdistance II'
[in]djjpfdistance JJ'
[in]i_massfluxmass flux at face ij
[in]gradigradient at cell i
[in]gradjgradient at cell j
[in]gradupiupwind gradient at cell i
[in]gradupjupwind gradient at cell j
[in]gradstislope test gradient at cell i
[in]gradstjslope test gradient at cell j
[in]pivalue at cell i
[in]pjvalue at cell j
[in]piaold value at cell i
[in]pjaold value at cell j
[out]pifricontribution of i to flux from i to j
[out]pifrjcontribution of i to flux from j to i
[out]pjfricontribution of j to flux from i to j
[out]pjfrjcontribution of j to flux from j to i
[out]pipreconstructed value at cell i
[out]pjpreconstructed value at cell j
[out]piprrelaxed reconstructed value at cell i
[out]pjprrelaxed reconstructed value at cell j

◆ cs_i_cd_steady_slope_test_tensor()

static void cs_i_cd_steady_slope_test_tensor ( bool *  upwind_switch,
const int  iconvp,
const int  ircflp,
const int  ischcp,
const double  relaxp,
const double  blencp,
const double  blend_st,
const cs_real_t  weight,
const cs_real_t  i_dist,
const cs_real_t  i_face_surf,
const cs_real_3_t  cell_ceni,
const cs_real_3_t  cell_cenj,
const cs_real_3_t  i_face_normal,
const cs_real_3_t  i_face_cog,
const cs_real_3_t  diipf,
const cs_real_3_t  djjpf,
const cs_real_t  i_massflux,
const cs_real_63_t  gradi,
const cs_real_63_t  gradj,
const cs_real_63_t  grdpai,
const cs_real_63_t  grdpaj,
const cs_real_6_t  pi,
const cs_real_6_t  pj,
const cs_real_6_t  pia,
const cs_real_6_t  pja,
cs_real_t  pifri[6],
cs_real_t  pifrj[6],
cs_real_t  pjfri[6],
cs_real_t  pjfrj[6],
cs_real_t  pip[6],
cs_real_t  pjp[6],
cs_real_t  pipr[6],
cs_real_t  pjpr[6] 
)
inlinestatic

Handle preparation of internal face values for the fluxes computation in case of a steady algorithm and using slope tests.

Parameters
[out]upwind_switchslope test result
[in]iconvpconvection flag
[in]ircflprecontruction flag
[in]ischcpsecond order convection scheme flag
[in]relaxprelaxation coefficient
[in]blencpproportion of centered or SOLU scheme, (1-blencp) is the proportion of upwind.
[in]blend_stproportion of centered or SOLU scheme, when the slope test is activated (1-blend_st) is the proportion of upwind.
[in]weightgeometrical weight
[in]i_distdistance IJ.Nij
[in]i_face_surfface surface
[in]cell_cenicenter of gravity coordinates of cell i
[in]cell_cenjcenter of gravity coordinates of cell i
[in]i_face_normalface normal
[in]i_face_cogcenter of gravity coordinates of face ij
[in]diipfdistance II'
[in]djjpfdistance JJ'
[in]i_massfluxmass flux at face ij
[in]gradigradient at cell i
[in]gradjgradient at cell j
[in]grdpaiupwind gradient at cell i
[in]grdpajupwind gradient at cell j
[in]pivalue at cell i
[in]pjvalue at cell j
[in]piaold value at cell i
[in]pjaold value at cell j
[out]pifricontribution of i to flux from i to j
[out]pifrjcontribution of i to flux from j to i
[out]pjfricontribution of j to flux from i to j
[out]pjfrjcontribution of j to flux from j to i
[out]pipreconstructed value at cell i
[out]pjpreconstructed value at cell j
[out]piprrelaxed reconstructed value at cell i
[out]pjprrelaxed reconstructed value at cell j

◆ cs_i_cd_steady_slope_test_vector()

static void cs_i_cd_steady_slope_test_vector ( bool *  upwind_switch,
const int  iconvp,
const int  ircflp,
const int  ischcp,
const double  relaxp,
const double  blencp,
const double  blend_st,
const cs_real_t  weight,
const cs_real_t  i_dist,
const cs_real_t  i_face_surf,
const cs_real_3_t  cell_ceni,
const cs_real_3_t  cell_cenj,
const cs_real_3_t  i_face_normal,
const cs_real_3_t  i_face_cog,
const cs_real_3_t  diipf,
const cs_real_3_t  djjpf,
const cs_real_t  i_massflux,
const cs_real_33_t  gradi,
const cs_real_33_t  gradj,
const cs_real_33_t  grdpai,
const cs_real_33_t  grdpaj,
const cs_real_3_t  pi,
const cs_real_3_t  pj,
const cs_real_3_t  pia,
const cs_real_3_t  pja,
cs_real_t  pifri[3],
cs_real_t  pifrj[3],
cs_real_t  pjfri[3],
cs_real_t  pjfrj[3],
cs_real_t  pip[3],
cs_real_t  pjp[3],
cs_real_t  pipr[3],
cs_real_t  pjpr[3] 
)
inlinestatic

Handle preparation of internal face values for the fluxes computation in case of a steady algorithm and using slope tests.

Parameters
[out]upwind_switchslope test result
[in]iconvpconvection flag
[in]ircflprecontruction flag
[in]ischcpsecond order convection scheme flag
[in]relaxprelaxation coefficient
[in]blencpproportion of centered or SOLU scheme, (1-blencp) is the proportion of upwind.
[in]blend_stproportion of centered or SOLU scheme, when the slope test is activated (1-blend_st) is the proportion of upwind.
[in]weightgeometrical weight
[in]i_distdistance IJ.Nij
[in]i_face_surfface surface
[in]cell_cenicenter of gravity coordinates of cell i
[in]cell_cenjcenter of gravity coordinates of cell i
[in]i_face_normalface normal
[in]i_face_cogcenter of gravity coordinates of face ij
[in]diipfdistance II'
[in]djjpfdistance JJ'
[in]i_massfluxmass flux at face ij
[in]gradigradient at cell i
[in]gradjgradient at cell j
[in]grdpaiupwind gradient at cell i
[in]grdpajupwind gradient at cell j
[in]pivalue at cell i
[in]pjvalue at cell j
[in]piaold value at cell i
[in]pjaold value at cell j
[out]pifricontribution of i to flux from i to j
[out]pifrjcontribution of i to flux from j to i
[out]pjfricontribution of j to flux from i to j
[out]pjfrjcontribution of j to flux from j to i
[out]pipreconstructed value at cell i
[out]pjpreconstructed value at cell j
[out]piprrelaxed reconstructed value at cell i
[out]pjprrelaxed reconstructed value at cell j

◆ cs_i_cd_steady_slope_test_vector_old()

static void cs_i_cd_steady_slope_test_vector_old ( bool *  upwind_switch,
const int  iconvp,
const int  ircflp,
const int  ischcp,
const double  relaxp,
const double  blencp,
const cs_real_t  weight,
const cs_real_t  i_dist,
const cs_real_t  i_face_surf,
const cs_real_3_t  cell_ceni,
const cs_real_3_t  cell_cenj,
const cs_real_3_t  i_face_normal,
const cs_real_3_t  i_face_cog,
const cs_real_3_t  diipf,
const cs_real_3_t  djjpf,
const cs_real_t  i_massflux,
const cs_real_33_t  gradi,
const cs_real_33_t  gradj,
const cs_real_33_t  grdpai,
const cs_real_33_t  grdpaj,
const cs_real_3_t  pi,
const cs_real_3_t  pj,
const cs_real_3_t  pia,
const cs_real_3_t  pja,
cs_real_t  pifri[3],
cs_real_t  pifrj[3],
cs_real_t  pjfri[3],
cs_real_t  pjfrj[3],
cs_real_t  pip[3],
cs_real_t  pjp[3],
cs_real_t  pipr[3],
cs_real_t  pjpr[3] 
)
inlinestatic

Handle preparation of internal face values for the fluxes computation in case of a steady algorithm and using slope tests.

Parameters
[out]upwind_switchslope test result
[in]iconvpconvection flag
[in]ircflprecontruction flag
[in]ischcpsecond order convection scheme flag
[in]relaxprelaxation coefficient
[in]blencpproportion of centered or SOLU scheme, (1-blencp) is the proportion of upwind.
[in]weightgeometrical weight
[in]i_distdistance IJ.Nij
[in]i_face_surfface surface
[in]cell_cenicenter of gravity coordinates of cell i
[in]cell_cenjcenter of gravity coordinates of cell i
[in]i_face_normalface normal
[in]i_face_cogcenter of gravity coordinates of face ij
[in]diipfdistance II'
[in]djjpfdistance JJ'
[in]i_massfluxmass flux at face ij
[in]gradigradient at cell i
[in]gradjgradient at cell j
[in]grdpaiupwind gradient at cell i
[in]grdpajupwind gradient at cell j
[in]pivalue at cell i
[in]pjvalue at cell j
[in]piaold value at cell i
[in]pjaold value at cell j
[out]pifricontribution of i to flux from i to j
[out]pifrjcontribution of i to flux from j to i
[out]pjfricontribution of j to flux from i to j
[out]pjfrjcontribution of j to flux from j to i
[out]pipreconstructed value at cell i
[out]pjpreconstructed value at cell j
[out]piprrelaxed reconstructed value at cell i
[out]pjprrelaxed reconstructed value at cell j

◆ cs_i_cd_steady_tensor()

static void cs_i_cd_steady_tensor ( const int  ircflp,
const int  ischcp,
const double  relaxp,
const double  blencp,
const cs_real_t  weight,
const cs_real_3_t  cell_ceni,
const cs_real_3_t  cell_cenj,
const cs_real_3_t  i_face_cog,
const cs_real_3_t  diipf,
const cs_real_3_t  djjpf,
const cs_real_63_t  gradi,
const cs_real_63_t  gradj,
const cs_real_6_t  pi,
const cs_real_6_t  pj,
const cs_real_6_t  pia,
const cs_real_6_t  pja,
cs_real_t  pifri[6],
cs_real_t  pifrj[6],
cs_real_t  pjfri[6],
cs_real_t  pjfrj[6],
cs_real_t  pip[6],
cs_real_t  pjp[6],
cs_real_t  pipr[6],
cs_real_t  pjpr[6] 
)
inlinestatic

Handle preparation of internal face values for the fluxes computation in case of a steady algorithm and without enabling slope tests.

Parameters
[in]ircflprecontruction flag
[in]ischcpsecond order convection scheme flag
[in]relaxprelaxation coefficient
[in]blencpproportion of centered or SOLU scheme, (1-blencp) is the proportion of upwind.
[in]weightgeometrical weight
[in]cell_cenicenter of gravity coordinates of cell i
[in]cell_cenjcenter of gravity coordinates of cell i
[in]i_face_cogcenter of gravity coordinates of face ij
[in]diipfdistance II'
[in]djjpfdistance JJ'
[in]gradigradient at cell i
[in]gradjgradient at cell j
[in]pivalue at cell i
[in]pjvalue at cell j
[in]piaold value at cell i
[in]pjaold value at cell j
[out]pifricontribution of i to flux from i to j
[out]pifrjcontribution of i to flux from j to i
[out]pjfricontribution of j to flux from i to j
[out]pjfrjcontribution of j to flux from j to i
[out]pipreconstructed value at cell i
[out]pjpreconstructed value at cell j
[out]piprrelaxed reconstructed value at cell i
[out]pjprrelaxed reconstructed value at cell j

◆ cs_i_cd_steady_upwind()

static void cs_i_cd_steady_upwind ( const int  ircflp,
const cs_real_t  relaxp,
const cs_real_t  diipf[3],
const cs_real_t  djjpf[3],
const cs_real_t  gradi[3],
const cs_real_t  gradj[3],
const cs_real_t  pi,
const cs_real_t  pj,
const cs_real_t  pia,
const cs_real_t  pja,
cs_real_t pifri,
cs_real_t pifrj,
cs_real_t pjfri,
cs_real_t pjfrj,
cs_real_t pip,
cs_real_t pjp,
cs_real_t pipr,
cs_real_t pjpr 
)
inlinestatic

Handle preparation of internal face values for the fluxes computation in case of a steady algorithm and a pure upwind flux.

Parameters
[in]ircflprecontruction flag
[in]relaxprelaxation coefficient
[in]diipfdistance II'
[in]djjpfdistance JJ'
[in]gradigradient at cell i
[in]gradjgradient at cell j
[in]pivalue at cell i
[in]pjvalue at cell j
[in]piaold value at cell i
[in]pjaold value at cell j
[out]pifricontribution of i to flux from i to j
[out]pifrjcontribution of i to flux from j to i
[out]pjfricontribution of j to flux from i to j
[out]pjfrjcontribution of j to flux from j to i
[out]pipreconstructed value at cell i
[out]pjpreconstructed value at cell j
[out]piprrelaxed reconstructed value at cell i
[out]pjprrelaxed reconstructed value at cell j

◆ cs_i_cd_steady_upwind_tensor()

static void cs_i_cd_steady_upwind_tensor ( const int  ircflp,
const cs_real_t  relaxp,
const cs_real_t  diipf[3],
const cs_real_t  djjpf[3],
const cs_real_t  gradi[6][3],
const cs_real_t  gradj[6][3],
const cs_real_t  pi[6],
const cs_real_t  pj[6],
const cs_real_t  pia[6],
const cs_real_t  pja[6],
cs_real_t  pifri[6],
cs_real_t  pifrj[6],
cs_real_t  pjfri[6],
cs_real_t  pjfrj[6],
cs_real_t  pip[6],
cs_real_t  pjp[6],
cs_real_t  pipr[6],
cs_real_t  pjpr[6] 
)
inlinestatic

Handle preparation of internal face values for the fluxes computation in case of a steady algorithm and a pure upwind flux.

Parameters
[in]ircflprecontruction flag
[in]relaxprelaxation coefficient
[in]diipfdistance II'
[in]djjpfdistance JJ'
[in]gradigradient at cell i
[in]gradjgradient at cell j
[in]pivalue at cell i
[in]pjvalue at cell j
[in]piaold value at cell i
[in]pjaold value at cell j
[out]pifricontribution of i to flux from i to j
[out]pifrjcontribution of i to flux from j to i
[out]pjfricontribution of j to flux from i to j
[out]pjfrjcontribution of j to flux from j to i
[out]pipreconstructed value at cell i
[out]pjpreconstructed value at cell j
[out]piprrelaxed reconstructed value at cell i
[out]pjprrelaxed reconstructed value at cell j

◆ cs_i_cd_steady_upwind_vector()

static void cs_i_cd_steady_upwind_vector ( const int  ircflp,
const cs_real_t  relaxp,
const cs_real_t  diipf[3],
const cs_real_t  djjpf[3],
const cs_real_t  gradi[3][3],
const cs_real_t  gradj[3][3],
const cs_real_t  pi[3],
const cs_real_t  pj[3],
const cs_real_t  pia[3],
const cs_real_t  pja[3],
cs_real_t  pifri[3],
cs_real_t  pifrj[3],
cs_real_t  pjfri[3],
cs_real_t  pjfrj[3],
cs_real_t  pip[3],
cs_real_t  pjp[3],
cs_real_t  pipr[3],
cs_real_t  pjpr[3] 
)
inlinestatic

Handle preparation of internal face values for the fluxes computation in case of a steady algorithm and a pure upwind flux.

Parameters
[in]ircflprecontruction flag
[in]relaxprelaxation coefficient
[in]diipfdistance II'
[in]djjpfdistance JJ'
[in]gradigradient at cell i
[in]gradjgradient at cell j
[in]pivalue at cell i
[in]pjvalue at cell j
[in]piaold value at cell i
[in]pjaold value at cell j
[out]pifricontribution of i to flux from i to j
[out]pifrjcontribution of i to flux from j to i
[out]pjfricontribution of j to flux from i to j
[out]pjfrjcontribution of j to flux from j to i
[out]pipreconstructed value at cell i
[out]pjpreconstructed value at cell j
[out]piprrelaxed reconstructed value at cell i
[out]pjprrelaxed reconstructed value at cell j

◆ cs_i_cd_steady_vector()

static void cs_i_cd_steady_vector ( const int  ircflp,
const int  ischcp,
const double  relaxp,
const double  blencp,
const cs_real_t  weight,
const cs_real_3_t  cell_ceni,
const cs_real_3_t  cell_cenj,
const cs_real_3_t  i_face_cog,
const cs_real_3_t  diipf,
const cs_real_3_t  djjpf,
const cs_real_33_t  gradi,
const cs_real_33_t  gradj,
const cs_real_3_t  pi,
const cs_real_3_t  pj,
const cs_real_3_t  pia,
const cs_real_3_t  pja,
cs_real_t  pifri[3],
cs_real_t  pifrj[3],
cs_real_t  pjfri[3],
cs_real_t  pjfrj[3],
cs_real_t  pip[3],
cs_real_t  pjp[3],
cs_real_t  pipr[3],
cs_real_t  pjpr[3] 
)
inlinestatic

Handle preparation of internal face values for the fluxes computation in case of a steady algorithm and without enabling slope tests.

Parameters
[in]ircflprecontruction flag
[in]ischcpsecond order convection scheme flag
[in]relaxprelaxation coefficient
[in]blencpproportion of centered or SOLU scheme, (1-blencp) is the proportion of upwind.
[in]weightgeometrical weight
[in]cell_cenicenter of gravity coordinates of cell i
[in]cell_cenjcenter of gravity coordinates of cell i
[in]i_face_cogcenter of gravity coordinates of face ij
[in]diipfdistance II'
[in]djjpfdistance JJ'
[in]gradigradient at cell i
[in]gradjgradient at cell j
[in]pivalue at cell i
[in]pjvalue at cell j
[in]piaold value at cell i
[in]pjaold value at cell j
[out]pifricontribution of i to flux from i to j
[out]pifrjcontribution of i to flux from j to i
[out]pjfricontribution of j to flux from i to j
[out]pjfrjcontribution of j to flux from j to i
[out]pipreconstructed value at cell i
[out]pjpreconstructed value at cell j
[out]piprrelaxed reconstructed value at cell i
[out]pjprrelaxed reconstructed value at cell j

◆ cs_i_cd_unsteady()

static void cs_i_cd_unsteady ( const int  ircflp,
const int  ischcp,
const double  blencp,
const cs_real_t  weight,
const cs_real_3_t  cell_ceni,
const cs_real_3_t  cell_cenj,
const cs_real_3_t  i_face_cog,
const cs_real_t  hybrid_blend_i,
const cs_real_t  hybrid_blend_j,
const cs_real_3_t  diipf,
const cs_real_3_t  djjpf,
const cs_real_3_t  gradi,
const cs_real_3_t  gradj,
const cs_real_3_t  gradupi,
const cs_real_3_t  gradupj,
const cs_real_t  pi,
const cs_real_t  pj,
cs_real_t pif,
cs_real_t pjf,
cs_real_t pip,
cs_real_t pjp 
)
inlinestatic

Handle preparation of internal face values for the fluxes computation in case of a unsteady algorithm and without enabling slope tests.

Parameters
[in]ircflprecontruction flag
[in]ischcpsecond order convection scheme flag
[in]blencpproportion of centered or SOLU scheme, (1-blencp) is the proportion of upwind.
[in]weightgeometrical weight
[in]cell_cenicenter of gravity coordinates of cell i
[in]cell_cenjcenter of gravity coordinates of cell i
[in]i_face_cogcenter of gravity coordinates of face ij
[in]hybrid_blend_iblending factor between SOLU and centered
[in]hybrid_blend_jblending factor between SOLU and centered
[in]diipfdistance II'
[in]djjpfdistance JJ'
[in]gradigradient at cell i
[in]gradjgradient at cell j
[in]gradupiupwind gradient at cell i
[in]gradupjupwind gradient at cell j
[in]gradigradient at cell i
[in]gradjgradient at cell j
[in]pivalue at cell i
[in]pjvalue at cell j
[out]pifcontribution of i to flux from i to j
[out]pjfcontribution of j to flux from i to j
[out]pipreconstructed value at cell i
[out]pjpreconstructed value at cell j

◆ cs_i_cd_unsteady_nvd()

static void cs_i_cd_unsteady_nvd ( const cs_nvd_type_t  limiter,
const cs_real_3_t  cell_cen_c,
const cs_real_3_t  cell_cen_d,
const cs_real_3_t  i_face_normal,
const cs_real_3_t  i_face_cog,
const cs_real_3_t  gradv_c,
const cs_real_t  p_c,
const cs_real_t  p_d,
const cs_real_t  local_max_c,
const cs_real_t  local_min_c,
const cs_real_t  courant_c,
cs_real_t pif,
cs_real_t pjf 
)
inlinestatic

Handle preparation of internal face values for the convection flux computation in case of an unsteady algorithm and using NVD schemes.

Parameters
[in]limiterchoice of the NVD scheme
[in]cell_cen_ccenter of gravity coordinates of central cell
[in]cell_cen_dcenter of gravity coordinates of downwind cell
[in]i_face_normalnormal of face ij
[in]i_face_cogcenter of gravity coordinates of face ij
[in]i_massfluxmass flux at face ij
[in]gradv_cgradient at central cell
[in]p_cvalue at central cell
[in]p_dvalue at downwind cell
[in]local_max_clocal maximum of variable
[in]local_min_clocal minimum of variable
[in]courant_ccentral cell courant number
[out]pifcontribution of i to flux from i to j
[out]pjfcontribution of j to flux from i to j

◆ cs_i_cd_unsteady_slope_test()

static void cs_i_cd_unsteady_slope_test ( bool *  upwind_switch,
const int  iconvp,
const int  ircflp,
const int  ischcp,
const double  blencp,
const double  blend_st,
const cs_real_t  weight,
const cs_real_t  i_dist,
const cs_real_t  i_face_surf,
const cs_real_3_t  cell_ceni,
const cs_real_3_t  cell_cenj,
const cs_real_3_t  i_face_normal,
const cs_real_3_t  i_face_cog,
const cs_real_3_t  diipf,
const cs_real_3_t  djjpf,
const cs_real_t  i_massflux,
const cs_real_3_t  gradi,
const cs_real_3_t  gradj,
const cs_real_3_t  gradupi,
const cs_real_3_t  gradupj,
const cs_real_3_t  gradsti,
const cs_real_3_t  gradstj,
const cs_real_t  pi,
const cs_real_t  pj,
cs_real_t pif,
cs_real_t pjf,
cs_real_t pip,
cs_real_t pjp 
)
inlinestatic

Handle preparation of internal face values for the fluxes computation in case of a steady algorithm and using slope tests.

Parameters
[out]upwind_switchslope test result
[in]iconvpconvection flag
[in]ircflprecontruction flag
[in]ischcpsecond order convection scheme flag
[in]blencpproportion of centered or SOLU scheme, (1-blencp) is the proportion of upwind.
[in]blend_stproportion of centered or SOLU scheme, when the slope test is activated (1-blend_st) is the proportion of upwind.
[in]weightgeometrical weight
[in]i_distdistance IJ.Nij
[in]i_face_surfface surface
[in]cell_cenicenter of gravity coordinates of cell i
[in]cell_cenjcenter of gravity coordinates of cell i
[in]i_face_normalface normal
[in]i_face_cogcenter of gravity coordinates of face ij
[in]diipfdistance II'
[in]djjpfdistance JJ'
[in]i_massfluxmass flux at face ij
[in]gradigradient at cell i
[in]gradjgradient at cell j
[in]gradupiupwind gradient at cell i
[in]gradupjupwind gradient at cell j
[in]gradstislope test gradient at cell i
[in]gradstjslope test gradient at cell j
[in]pivalue at cell i
[in]pjvalue at cell j
[out]pifcontribution of i to flux from i to j
[out]pjfcontribution of j to flux from i to j
[out]pipreconstructed value at cell i
[out]pjpreconstructed value at cell j

◆ cs_i_cd_unsteady_slope_test_tensor()

static void cs_i_cd_unsteady_slope_test_tensor ( bool *  upwind_switch,
const int  iconvp,
const int  ircflp,
const int  ischcp,
const double  blencp,
const double  blend_st,
const cs_real_t  weight,
const cs_real_t  i_dist,
const cs_real_t  i_face_surf,
const cs_real_3_t  cell_ceni,
const cs_real_3_t  cell_cenj,
const cs_real_3_t  i_face_normal,
const cs_real_3_t  i_face_cog,
const cs_real_3_t  diipf,
const cs_real_3_t  djjpf,
const cs_real_t  i_massflux,
const cs_real_63_t  gradi,
const cs_real_63_t  gradj,
const cs_real_63_t  grdpai,
const cs_real_63_t  grdpaj,
const cs_real_6_t  pi,
const cs_real_6_t  pj,
cs_real_t  pif[6],
cs_real_t  pjf[6],
cs_real_t  pip[6],
cs_real_t  pjp[6] 
)
inlinestatic

Handle preparation of internal face values for the fluxes computation in case of a unsteady algorithm and using slope tests.

Parameters
[out]upwind_switchslope test result
[in]iconvpconvection flag
[in]ircflprecontruction flag
[in]ischcpsecond order convection scheme flag
[in]blencpproportion of centered or SOLU scheme, (1-blencp) is the proportion of upwind.
[in]blend_stproportion of centered or SOLU scheme, when the slope test is activated (1-blend_st) is the proportion of upwind.
[in]weightgeometrical weight
[in]i_distdistance IJ.Nij
[in]i_face_surfface surface
[in]cell_cenicenter of gravity coordinates of cell i
[in]cell_cenjcenter of gravity coordinates of cell i
[in]i_face_normalface normal
[in]i_face_cogcenter of gravity coordinates of face ij
[in]diipfdistance II'
[in]djjpfdistance JJ'
[in]i_massfluxmass flux at face ij
[in]gradigradient at cell i
[in]gradjgradient at cell j
[in]grdpaiupwind gradient at cell i
[in]grdpajupwind gradient at cell j
[in]pivalue at cell i
[in]pjvalue at cell j
[out]pifcontribution of i to flux from i to j
[out]pjfcontribution of j to flux from i to j
[out]pipreconstructed value at cell i
[out]pjpreconstructed value at cell j

◆ cs_i_cd_unsteady_slope_test_vector()

static void cs_i_cd_unsteady_slope_test_vector ( bool *  upwind_switch,
const int  iconvp,
const int  ircflp,
const int  ischcp,
const double  blencp,
const double  blend_st,
const cs_real_t  weight,
const cs_real_t  i_dist,
const cs_real_t  i_face_surf,
const cs_real_3_t  cell_ceni,
const cs_real_3_t  cell_cenj,
const cs_real_3_t  i_face_normal,
const cs_real_3_t  i_face_cog,
const cs_real_3_t  diipf,
const cs_real_3_t  djjpf,
const cs_real_t  i_massflux,
const cs_real_33_t  gradi,
const cs_real_33_t  gradj,
const cs_real_33_t  grdpai,
const cs_real_33_t  grdpaj,
const cs_real_3_t  pi,
const cs_real_3_t  pj,
cs_real_t  pif[3],
cs_real_t  pjf[3],
cs_real_t  pip[3],
cs_real_t  pjp[3] 
)
inlinestatic

Handle preparation of internal face values for the fluxes computation in case of a unsteady algorithm and using slope tests.

Parameters
[out]upwind_switchslope test result
[in]iconvpconvection flag
[in]ircflprecontruction flag
[in]ischcpsecond order convection scheme flag
[in]blencpproportion of centered or SOLU scheme, (1-blencp) is the proportion of upwind.
[in]blend_stproportion of centered or SOLU scheme, when the slope test is activated (1-blend_st) is the proportion of upwind.
[in]weightgeometrical weight
[in]i_distdistance IJ.Nij
[in]i_face_surfface surface
[in]cell_cenicenter of gravity coordinates of cell i
[in]cell_cenjcenter of gravity coordinates of cell i
[in]i_face_normalface normal
[in]i_face_cogcenter of gravity coordinates of face ij
[in]diipfdistance II'
[in]djjpfdistance JJ'
[in]i_massfluxmass flux at face ij
[in]gradigradient at cell i
[in]gradjgradient at cell j
[in]grdpaiupwind gradient at cell i
[in]grdpajupwind gradient at cell j
[in]pivalue at cell i
[in]pjvalue at cell j
[out]pifcontribution of i to flux from i to j
[out]pjfcontribution of j to flux from i to j
[out]pipreconstructed value at cell i
[out]pjpreconstructed value at cell j

◆ cs_i_cd_unsteady_slope_test_vector_old()

static void cs_i_cd_unsteady_slope_test_vector_old ( bool *  upwind_switch,
const int  iconvp,
const int  ircflp,
const int  ischcp,
const double  blencp,
const cs_real_t  weight,
const cs_real_t  i_dist,
const cs_real_t  i_face_surf,
const cs_real_3_t  cell_ceni,
const cs_real_3_t  cell_cenj,
const cs_real_3_t  i_face_normal,
const cs_real_3_t  i_face_cog,
const cs_real_3_t  diipf,
const cs_real_3_t  djjpf,
const cs_real_t  i_massflux,
const cs_real_33_t  gradi,
const cs_real_33_t  gradj,
const cs_real_33_t  grdpai,
const cs_real_33_t  grdpaj,
const cs_real_3_t  pi,
const cs_real_3_t  pj,
cs_real_t  pif[3],
cs_real_t  pjf[3],
cs_real_t  pip[3],
cs_real_t  pjp[3] 
)
inlinestatic

DEPRECATED Handle preparation of internal face values for the fluxes computation in case of a unsteady algorithm and using slope tests.

Parameters
[out]upwind_switchslope test result
[in]iconvpconvection flag
[in]ircflprecontruction flag
[in]ischcpsecond order convection scheme flag
[in]blencpproportion of centered or SOLU scheme, (1-blencp) is the proportion of upwind.
[in]weightgeometrical weight
[in]i_distdistance IJ.Nij
[in]i_face_surfface surface
[in]cell_cenicenter of gravity coordinates of cell i
[in]cell_cenjcenter of gravity coordinates of cell i
[in]i_face_normalface normal
[in]i_face_cogcenter of gravity coordinates of face ij
[in]diipfdistance II'
[in]djjpfdistance JJ'
[in]i_massfluxmass flux at face ij
[in]gradigradient at cell i
[in]gradjgradient at cell j
[in]grdpaiupwind gradient at cell i
[in]grdpajupwind gradient at cell j
[in]pivalue at cell i
[in]pjvalue at cell j
[out]pifcontribution of i to flux from i to j
[out]pjfcontribution of j to flux from i to j
[out]pipreconstructed value at cell i
[out]pjpreconstructed value at cell j

◆ cs_i_cd_unsteady_tensor()

static void cs_i_cd_unsteady_tensor ( const int  ircflp,
const int  ischcp,
const double  blencp,
const cs_real_t  weight,
const cs_real_3_t  cell_ceni,
const cs_real_3_t  cell_cenj,
const cs_real_3_t  i_face_cog,
const cs_real_3_t  diipf,
const cs_real_3_t  djjpf,
const cs_real_63_t  gradi,
const cs_real_63_t  gradj,
const cs_real_6_t  pi,
const cs_real_6_t  pj,
cs_real_t  pif[6],
cs_real_t  pjf[6],
cs_real_t  pip[6],
cs_real_t  pjp[6] 
)
inlinestatic

Handle preparation of internal face values for the fluxes computation in case of an unsteady algorithm and without enabling slope tests.

Parameters
[in]ircflprecontruction flag
[in]ischcpsecond order convection scheme flag
[in]blencpproportion of centered or SOLU scheme, (1-blencp) is the proportion of upwind.
[in]weightgeometrical weight
[in]cell_cenicenter of gravity coordinates of cell i
[in]cell_cenjcenter of gravity coordinates of cell i
[in]i_face_cogcenter of gravity coordinates of face ij
[in]diipfdistance II'
[in]djjpfdistance JJ'
[in]gradigradient at cell i
[in]gradjgradient at cell j
[in]pivalue at cell i
[in]pjvalue at cell j
[out]pifcontribution of i to flux from i to j
[out]pjfcontribution of j to flux from i to j
[out]pipreconstructed value at cell i
[out]pjpreconstructed value at cell j

◆ cs_i_cd_unsteady_upwind()

static void cs_i_cd_unsteady_upwind ( const int  ircflp,
const cs_real_t  diipf[3],
const cs_real_t  djjpf[3],
const cs_real_t  gradi[3],
const cs_real_t  gradj[3],
const cs_real_t  pi,
const cs_real_t  pj,
cs_real_t pif,
cs_real_t pjf,
cs_real_t pip,
cs_real_t pjp 
)
inlinestatic

Handle preparation of internal face values for the fluxes computation in case of an unsteady algorithm and a pure upwind flux.

Parameters
[in]ircflprecontruction flag
[in]diipfdistance II'
[in]djjpfdistance JJ'
[in]gradigradient at cell i
[in]gradjgradient at cell j
[in]pivalue at cell i
[in]pjvalue at cell j
[out]pifcontribution of i to flux from i to j
[out]pjfcontribution of j to flux from i to j
[out]pipreconstructed value at cell i
[out]pjpreconstructed value at cell j

◆ cs_i_cd_unsteady_upwind_tensor()

static void cs_i_cd_unsteady_upwind_tensor ( const int  ircflp,
const cs_real_t  diipf[3],
const cs_real_t  djjpf[3],
const cs_real_t  gradi[6][3],
const cs_real_t  gradj[6][3],
const cs_real_t  pi[6],
const cs_real_t  pj[6],
cs_real_t  pif[6],
cs_real_t  pjf[6],
cs_real_t  pip[6],
cs_real_t  pjp[6] 
)
inlinestatic

Handle preparation of internal face values for the fluxes computation in case of an unsteady algorithm and a pure upwind flux.

Parameters
[in]ircflprecontruction flag
[in]diipfdistance II'
[in]djjpfdistance JJ'
[in]gradigradient at cell i
[in]gradjgradient at cell j
[in]pivalue at cell i
[in]pjvalue at cell j
[out]pifcontribution of i to flux from i to j
[out]pjfcontribution of j to flux from i to j
[out]pipreconstructed value at cell i
[out]pjpreconstructed value at cell j

◆ cs_i_cd_unsteady_upwind_vector()

static void cs_i_cd_unsteady_upwind_vector ( const int  ircflp,
const cs_real_t  diipf[3],
const cs_real_t  djjpf[3],
const cs_real_t  gradi[3][3],
const cs_real_t  gradj[3][3],
const cs_real_t  pi[3],
const cs_real_t  pj[3],
cs_real_t  pif[3],
cs_real_t  pjf[3],
cs_real_t  pip[3],
cs_real_t  pjp[3] 
)
inlinestatic

Handle preparation of internal face values for the fluxes computation in case of an unsteady algorithm and a pure upwind flux.

Parameters
[in]ircflprecontruction flag
[in]diipfdistance II'
[in]djjpfdistance JJ'
[in]gradigradient at cell i
[in]gradjgradient at cell j
[in]pivalue at cell i
[in]pjvalue at cell j
[out]pifcontribution of i to flux from i to j
[out]pjfcontribution of j to flux from i to j
[out]pipreconstructed value at cell i
[out]pjpreconstructed value at cell j

◆ cs_i_cd_unsteady_vector()

static void cs_i_cd_unsteady_vector ( const int  ircflp,
const int  ischcp,
const double  blencp,
const cs_real_t  weight,
const cs_real_3_t  cell_ceni,
const cs_real_3_t  cell_cenj,
const cs_real_3_t  i_face_cog,
const cs_real_t  hybrid_blend_i,
const cs_real_t  hybrid_blend_j,
const cs_real_3_t  diipf,
const cs_real_3_t  djjpf,
const cs_real_33_t  gradi,
const cs_real_33_t  gradj,
const cs_real_3_t  pi,
const cs_real_3_t  pj,
cs_real_t  pif[3],
cs_real_t  pjf[3],
cs_real_t  pip[3],
cs_real_t  pjp[3] 
)
inlinestatic

Handle preparation of internal face values for the fluxes computation in case of an unsteady algorithm and without enabling slope tests.

Parameters
[in]ircflprecontruction flag
[in]ischcpsecond order convection scheme flag
[in]blencpproportion of centered or SOLU scheme, (1-blencp) is the proportion of upwind.
[in]weightgeometrical weight
[in]cell_cenicenter of gravity coordinates of cell i
[in]cell_cenjcenter of gravity coordinates of cell i
[in]i_face_cogcenter of gravity coordinates of face ij
[in]hybrid_blend_iblending factor between SOLU and centered
[in]hybrid_blend_jblending factor between SOLU and centered
[in]diipfdistance II'
[in]djjpfdistance JJ'
[in]gradigradient at cell i
[in]gradjgradient at cell j
[in]pivalue at cell i
[in]pjvalue at cell j
[out]pifcontribution of i to flux from i to j
[out]pjfcontribution of j to flux from j to i
[out]pipreconstructed value at cell i
[out]pjpreconstructed value at cell j

◆ cs_i_compute_quantities()

static void cs_i_compute_quantities ( const int  ircflp,
const cs_real_3_t  diipf,
const cs_real_3_t  djjpf,
const cs_real_3_t  gradi,
const cs_real_3_t  gradj,
const cs_real_t  pi,
const cs_real_t  pj,
cs_real_t recoi,
cs_real_t recoj,
cs_real_t pip,
cs_real_t pjp 
)
inlinestatic

Reconstruct values in I' and J'.

Parameters
[in]ircflprecontruction flag
[in]diipfdistance II'
[in]djjpfdistance JJ'
[in]gradigradient at cell i
[in]gradjgradient at cell j
[in]pivalue at cell i
[in]pjvalue at cell j
[out]recoireconstruction at cell i
[out]recojreconstruction at cell j
[out]pipreconstructed value at cell i
[out]pjpreconstructed value at cell j

◆ cs_i_compute_quantities_tensor()

static void cs_i_compute_quantities_tensor ( const int  ircflp,
const cs_real_3_t  diipf,
const cs_real_3_t  djjpf,
const cs_real_63_t  gradi,
const cs_real_63_t  gradj,
const cs_real_6_t  pi,
const cs_real_6_t  pj,
cs_real_t  recoi[6],
cs_real_t  recoj[6],
cs_real_t  pip[6],
cs_real_t  pjp[6] 
)
inlinestatic

Reconstruct values in I' and J'.

Parameters
[in]ircflprecontruction flag
[in]diipfdistance II'
[in]djjpfdistance JJ'
[in]gradigradient at cell i
[in]gradjgradient at cell j
[in]pivalue at cell i
[in]pjvalue at cell j
[out]recoireconstruction at cell i
[out]recojreconstruction at cell j
[out]pipreconstructed value at cell i
[out]pjpreconstructed value at cell j

◆ cs_i_compute_quantities_vector()

static void cs_i_compute_quantities_vector ( const int  ircflp,
const cs_real_3_t  diipf,
const cs_real_3_t  djjpf,
const cs_real_33_t  gradi,
const cs_real_33_t  gradj,
const cs_real_3_t  pi,
const cs_real_3_t  pj,
cs_real_t  recoi[3],
cs_real_t  recoj[3],
cs_real_t  pip[3],
cs_real_t  pjp[3] 
)
inlinestatic

Reconstruct values in I' and J'.

Parameters
[in]ircflprecontruction flag
[in]diipfdistance II'
[in]djjpfdistance JJ'
[in]gradigradient at cell i
[in]gradjgradient at cell j
[in]pivalue at cell i
[in]pjvalue at cell j
[out]recoireconstruction at cell i
[out]recojreconstruction at cell j
[out]pipreconstructed value at cell i
[out]pjpreconstructed value at cell j

◆ cs_i_conv_flux()

static void cs_i_conv_flux ( const int  iconvp,
const cs_real_t  thetap,
const int  imasac,
const cs_real_t  pi,
const cs_real_t  pj,
const cs_real_t  pifri,
const cs_real_t  pifrj,
const cs_real_t  pjfri,
const cs_real_t  pjfrj,
const cs_real_t  i_massflux,
const cs_real_t  xcppi,
const cs_real_t  xcppj,
cs_real_2_t  fluxij 
)
inlinestatic

Add convective fluxes (substracting the mass accumulation from them) to fluxes at face ij.

Parameters
[in]iconvpconvection flag
[in]thetapweighting coefficient for the theta-schema,
[in]imasactake mass accumulation into account?
[in]pivalue at cell i
[in]pjvalue at cell j
[in]pifricontribution of i to flux from i to j
[in]pifrjcontribution of i to flux from j to i
[in]pjfricontribution of j to flux from i to j
[in]pjfrjcontribution of j to flux from j to i
[in]i_massfluxmass flux at face ij
[in]xcppispecific heat value if the scalar is the temperature, 1 otherwise at cell i
[in]xcppjspecific heat value if the scalar is the temperature, 1 otherwise at cell j
[in,out]fluxijfluxes at face ij

◆ cs_i_conv_flux_tensor()

static void cs_i_conv_flux_tensor ( const int  iconvp,
const cs_real_t  thetap,
const int  imasac,
const cs_real_t  pi[6],
const cs_real_t  pj[6],
const cs_real_t  pifri[6],
const cs_real_t  pifrj[6],
const cs_real_t  pjfri[6],
const cs_real_t  pjfrj[6],
const cs_real_t  i_massflux,
cs_real_t  fluxi[6],
cs_real_t  fluxj[6] 
)
inlinestatic

Add convective fluxes (substracting the mass accumulation from them) to fluxes at face ij.

Parameters
[in]iconvpconvection flag
[in]thetapweighting coefficient for the theta-schema,
[in]imasactake mass accumulation into account?
[in]pivalue at cell i
[in]pjvalue at cell j
[out]pifricontribution of i to flux from i to j
[out]pifrjcontribution of i to flux from j to i
[out]pjfricontribution of j to flux from i to j
[out]pjfrjcontribution of j to flux from j to i
[in]i_massfluxmass flux at face ij
[in,out]fluxifluxes at face i
[in,out]fluxjfluxes at face j

◆ cs_i_conv_flux_vector()

static void cs_i_conv_flux_vector ( const int  iconvp,
const cs_real_t  thetap,
const int  imasac,
const cs_real_t  pi[3],
const cs_real_t  pj[3],
const cs_real_t  pifri[3],
const cs_real_t  pifrj[3],
const cs_real_t  pjfri[3],
const cs_real_t  pjfrj[3],
const cs_real_t  i_massflux,
cs_real_t  fluxi[3],
cs_real_t  fluxj[3] 
)
inlinestatic

Add convective fluxes (substracting the mass accumulation from them) to fluxes at face ij.

Parameters
[in]iconvpconvection flag
[in]thetapweighting coefficient for the theta-schema,
[in]imasactake mass accumulation into account?
[in]pivalue at cell i
[in]pjvalue at cell j
[out]pifricontribution of i to flux from i to j
[out]pifrjcontribution of i to flux from j to i
[out]pjfricontribution of j to flux from i to j
[out]pjfrjcontribution of j to flux from j to i
[in]i_massfluxmass flux at face ij
[in,out]fluxifluxes at face i
[in,out]fluxjfluxes at face j

◆ cs_i_diff_flux()

static void cs_i_diff_flux ( const int  idiffp,
const cs_real_t  thetap,
const cs_real_t  pip,
const cs_real_t  pjp,
const cs_real_t  pipr,
const cs_real_t  pjpr,
const cs_real_t  i_visc,
cs_real_2_t  fluxij 
)
inlinestatic

Add diffusive fluxes to fluxes at face ij.

Parameters
[in]idiffpdiffusion flag
[in]thetapweighting coefficient for the theta-schema,
[in]pipreconstructed value at cell i
[in]pjpreconstructed value at cell j
[in]piprrelaxed reconstructed value at cell i
[in]pjprrelaxed reconstructed value at cell j
[in]i_viscdiffusion coefficient (divided by IJ) at face ij
[in,out]fluxijfluxes at face ij

◆ cs_i_diff_flux_tensor()

static void cs_i_diff_flux_tensor ( const int  idiffp,
const cs_real_t  thetap,
const cs_real_t  pip[6],
const cs_real_t  pjp[6],
const cs_real_t  pipr[6],
const cs_real_t  pjpr[6],
const cs_real_t  i_visc,
cs_real_t  fluxi[6],
cs_real_t  fluxj[6] 
)
inlinestatic

Add diffusive fluxes to fluxes at face ij.

Parameters
[in]idiffpdiffusion flag
[in]thetapweighting coefficient for the theta-schema,
[in]pipreconstructed value at cell i
[in]pjpreconstructed value at cell j
[in]piprrelaxed reconstructed value at cell i
[in]pjprrelaxed reconstructed value at cell j
[in]i_viscdiffusion coefficient (divided by IJ) at face ij
[in,out]fluxifluxes at face i
[in,out]fluxjfluxes at face j

◆ cs_i_diff_flux_vector()

static void cs_i_diff_flux_vector ( const int  idiffp,
const cs_real_t  thetap,
const cs_real_t  pip[3],
const cs_real_t  pjp[3],
const cs_real_t  pipr[3],
const cs_real_t  pjpr[3],
const cs_real_t  i_visc,
cs_real_t  fluxi[3],
cs_real_t  fluxj[3] 
)
inlinestatic

Add diffusive fluxes to fluxes at face ij.

Parameters
[in]idiffpdiffusion flag
[in]thetapweighting coefficient for the theta-schema,
[in]pipreconstructed value at cell i
[in]pjpreconstructed value at cell j
[in]piprrelaxed reconstructed value at cell i
[in]pjprrelaxed reconstructed value at cell j
[in]i_viscdiffusion coefficient (divided by IJ) at face ij
[in,out]fluxifluxes at face i
[in,out]fluxjfluxes at face j

◆ cs_i_relax_c_val()

static void cs_i_relax_c_val ( const double  relaxp,
const cs_real_t  pia,
const cs_real_t  pja,
const cs_real_t  recoi,
const cs_real_t  recoj,
const cs_real_t  pi,
const cs_real_t  pj,
cs_real_t pir,
cs_real_t pjr,
cs_real_t pipr,
cs_real_t pjpr 
)
inlinestatic

Compute relaxed values at cell i and j.

Parameters
[in]relaxprelaxation coefficient
[in]piaold value at cell i
[in]pjaold value at cell j
[in]recoireconstruction at cell i
[in]recojreconstruction at cell j
[in]pivalue at cell i
[in]pjvalue at cell j
[out]pirrelaxed value at cell i
[out]pjrrelaxed value at cell j
[out]piprrelaxed reconstructed value at cell i
[out]pjprrelaxed reconstructed value at cell j

◆ cs_i_relax_c_val_tensor()

static void cs_i_relax_c_val_tensor ( const cs_real_t  relaxp,
const cs_real_t  pia[6],
const cs_real_t  pja[6],
const cs_real_t  recoi[6],
const cs_real_t  recoj[6],
const cs_real_t  pi[6],
const cs_real_t  pj[6],
cs_real_t  pir[6],
cs_real_t  pjr[6],
cs_real_t  pipr[6],
cs_real_t  pjpr[6] 
)
inlinestatic

Compute relaxed values at cell i and j.

Parameters
[in]relaxprelaxation coefficient
[in]piaold value at cell i
[in]pjaold value at cell j
[in]recoireconstruction at cell i
[in]recojreconstruction at cell j
[in]pivalue at cell i
[in]pjvalue at cell j
[out]pirrelaxed value at cell i
[out]pjrrelaxed value at cell j
[out]piprrelaxed reconstructed value at cell i
[out]pjprrelaxed reconstructed value at cell j

◆ cs_i_relax_c_val_vector()

static void cs_i_relax_c_val_vector ( const double  relaxp,
const cs_real_3_t  pia,
const cs_real_3_t  pja,
const cs_real_3_t  recoi,
const cs_real_3_t  recoj,
const cs_real_3_t  pi,
const cs_real_3_t  pj,
cs_real_t  pir[3],
cs_real_t  pjr[3],
cs_real_t  pipr[3],
cs_real_t  pjpr[3] 
)
inlinestatic

Compute relaxed values at cell i and j.

Parameters
[in]relaxprelaxation coefficient
[in]piaold value at cell i
[in]pjaold value at cell j
[in]recoireconstruction at cell i
[in]recojreconstruction at cell j
[in]pivalue at cell i
[in]pjvalue at cell j
[out]pirrelaxed value at cell i
[out]pjrrelaxed value at cell j
[out]piprrelaxed reconstructed value at cell i
[out]pjprrelaxed reconstructed value at cell j

◆ cs_max_limiter_building()

void cs_max_limiter_building ( int  f_id,
int  inc,
const cs_real_t  rovsdt[] 
)

Compute a coefficient for blending that ensures the positivity of the scalar.

Parameters
[in]f_idfield id
[in]inc"not an increment" flag
[in]rovsdtrho * volume / dt

◆ cs_nvd_scheme_scalar()

static cs_real_t cs_nvd_scheme_scalar ( const cs_nvd_type_t  limiter,
const cs_real_t  nvf_p_c,
const cs_real_t  nvf_r_f,
const cs_real_t  nvf_r_c 
)
inlinestatic

Compute the normalised face scalar using the specified NVD scheme.

Parameters
[in]schemechoice of the NVD scheme
[in]nvf_p_cnormalised property of the current cell
[in]nvf_r_fnormalised distance from the face
[in]nvf_r_cnormalised distance from the current cell
Returns
normalised face scalar value

◆ cs_nvd_vof_scheme_scalar()

static cs_real_t cs_nvd_vof_scheme_scalar ( const cs_nvd_type_t  limiter,
const cs_real_3_t  i_face_normal,
const cs_real_t  nvf_p_c,
const cs_real_t  nvf_r_f,
const cs_real_t  nvf_r_c,
const cs_real_3_t  gradv_c,
const cs_real_t  c_courant 
)
inlinestatic

Compute the normalised face scalar using the specified NVD scheme for the case of a Volume-of-Fluid (VOF) transport equation.

Parameters
[in]limiterchoice of the NVD scheme
[in]i_face_normalnormal of face ij
[in]face_idthe current cell face
[in]nvf_p_cnormalised property of the current cell
[in]nvf_r_fnormalised distance from the face
[in]nvf_r_cnormalised distance from the current cell
[in]gradv_cgradient at central cell
[in]courant_ccourant at central cell
Returns
normalised face scalar

◆ CS_PROCF() [1/4]

void CS_PROCF ( itrgrp  ,
ITRGRP   
) const

◆ CS_PROCF() [2/4]

void CS_PROCF ( itrgrv  ,
ITRGRV   
) const

◆ CS_PROCF() [3/4]

void CS_PROCF ( itrmas  ,
ITRMAS   
) const

◆ CS_PROCF() [4/4]

void CS_PROCF ( itrmav  ,
ITRMAV   
) const

◆ cs_slope_test()

static void cs_slope_test ( const cs_real_t  pi,
const cs_real_t  pj,
const cs_real_t  distf,
const cs_real_t  srfan,
const cs_real_t  i_face_normal[3],
const cs_real_t  gradi[3],
const cs_real_t  gradj[3],
const cs_real_t  grdpai[3],
const cs_real_t  grdpaj[3],
const cs_real_t  i_massflux,
cs_real_t testij,
cs_real_t tesqck 
)
inlinestatic

Compute slope test criteria at internal face between cell i and j.

Parameters
[in]pivalue at cell i
[in]pjvalue at cell j
[in]distfdistance IJ.Nij
[in]srfanface surface
[in]i_face_normalface normal
[in]gradigradient at cell i
[in]gradjgradient at cell j
[in]grdpaiupwind gradient at cell i
[in]grdpajupwind gradient at cell j
[in]i_massfluxmass flux at face (from i to j)
[out]testijvalue of slope test first criterion
[out]tesqckvalue of slope test second criterion

◆ cs_slope_test_gradient()

void cs_slope_test_gradient ( int  f_id,
int  inc,
cs_halo_type_t  halo_type,
const cs_real_3_t grad,
cs_real_3_t grdpa,
const cs_real_t pvar,
const cs_real_t coefap,
const cs_real_t coefbp,
const cs_real_t i_massflux 
)

Compute the upwind gradient used in the slope tests.

This function assumes the input gradient and pvar values have already been synchronized.

Parameters
[in]f_idfield id
[in]incNot an increment flag
[in]halo_typehalo type
[in]gradstandard gradient
[out]grdpaupwind gradient
[in]pvarvalues
[in]coefapboundary condition array for the variable (explicit part)
[in]coefbpboundary condition array for the variable (implicit part)
[in]i_massfluxmass flux at interior faces

◆ cs_slope_test_gradient_tensor()

void cs_slope_test_gradient_tensor ( const int  inc,
const cs_halo_type_t  halo_type,
const cs_real_63_t grad,
cs_real_63_t grdpa,
const cs_real_6_t pvar,
const cs_real_6_t coefa,
const cs_real_66_t coefb,
const cs_real_t i_massflux 
)

Compute the upwind gradient used in the slope tests.

This function assumes the input gradient and pvar values have already been synchronized.

Parameters
[in]incNot an increment flag
[in]halo_typehalo type
[in]gradstandard gradient
[out]grdpaupwind gradient
[in]pvarvalues
[in]coefaboundary condition array for the variable (explicit part)
[in]coefbboundary condition array for the variable (implicit part)
[in]i_massfluxmass flux at interior faces

This function assumes the input gradient and pvar values have already been synchronized.

Parameters
[in]incNot an increment flag
[in]halo_typehalo type
[in]gradstandard gradient
[out]grdpaupwind gradient
[in]pvarvalues
[in]coefaboundary condition array for the variable (Explicit part)
[in]coefbboundary condition array for the variable (Implicit part)
[in]i_massfluxmass flux at interior faces

◆ cs_slope_test_gradient_vector()

void cs_slope_test_gradient_vector ( const int  inc,
const cs_halo_type_t  halo_type,
const cs_real_33_t grad,
cs_real_33_t grdpa,
const cs_real_3_t pvar,
const cs_real_3_t coefa,
const cs_real_33_t coefb,
const cs_real_t i_massflux 
)

Compute the upwind gradient used in the slope tests.

This function assumes the input gradient and pvar values have already been synchronized.

Parameters
[in]incNot an increment flag
[in]halo_typehalo type
[in]gradstandard gradient
[out]grdpaupwind gradient
[in]pvarvalues
[in]coefaboundary condition array for the variable (explicit part)
[in]coefbboundary condition array for the variable (implicit part)
[in]i_massfluxmass flux at interior faces

This function assumes the input gradient and pvar values have already been synchronized.

Parameters
[in]incNot an increment flag
[in]halo_typehalo type
[in]gradstandard gradient
[out]grdpaupwind gradient
[in]pvarvalues
[in]coefaboundary condition array for the variable (Explicit part)
[in]coefbboundary condition array for the variable (Implicit part)
[in]i_massfluxmass flux at interior faces

◆ cs_slope_test_tensor()

static void cs_slope_test_tensor ( const cs_real_t  pi[6],
const cs_real_t  pj[6],
const cs_real_t  distf,
const cs_real_t  srfan,
const cs_real_t  i_face_normal[3],
const cs_real_t  gradi[6][3],
const cs_real_t  gradj[6][3],
const cs_real_t  gradsti[6][3],
const cs_real_t  gradstj[6][3],
const cs_real_t  i_massflux,
cs_real_t testij,
cs_real_t tesqck 
)
inlinestatic

Compute slope test criteria at internal face between cell i and j.

Parameters
[in]pivalue at cell i
[in]pjvalue at cell j
[in]distfdistance IJ.Nij
[in]srfanface surface
[in]i_face_normalface normal
[in]gradigradient at cell i
[in]gradjgradient at cell j
[in]grdpaiupwind gradient at cell i
[in]grdpajupwind gradient at cell j
[in]i_massfluxmass flux at face (from i to j)
[out]testijvalue of slope test first criterion
[out]tesqckvalue of slope test second criterion

◆ cs_slope_test_vector()

static void cs_slope_test_vector ( const cs_real_t  pi[3],
const cs_real_t  pj[3],
const cs_real_t  distf,
const cs_real_t  srfan,
const cs_real_t  i_face_normal[3],
const cs_real_t  gradi[3][3],
const cs_real_t  gradj[3][3],
const cs_real_t  gradsti[3][3],
const cs_real_t  gradstj[3][3],
const cs_real_t  i_massflux,
cs_real_t testij,
cs_real_t tesqck 
)
inlinestatic

Compute slope test criteria at internal face between cell i and j.

Parameters
[in]pivalue at cell i
[in]pjvalue at cell j
[in]distfdistance IJ.Nij
[in]srfanface surface
[in]i_face_normalface normal
[in]gradigradient at cell i
[in]gradjgradient at cell j
[in]grdpaiupwind gradient at cell i
[in]grdpajupwind gradient at cell j
[in]i_massfluxmass flux at face (from i to j)
[out]testijvalue of slope test first criterion
[out]tesqckvalue of slope test second criterion

◆ cs_slope_test_vector_old()

static void cs_slope_test_vector_old ( const cs_real_3_t  pi,
const cs_real_3_t  pj,
const cs_real_t  distf,
const cs_real_t  srfan,
const cs_real_3_t  i_face_normal,
const cs_real_33_t  gradi,
const cs_real_33_t  gradj,
const cs_real_33_t  grdpai,
const cs_real_33_t  grdpaj,
const cs_real_t  i_massflux,
cs_real_t  testij[3],
cs_real_t  tesqck[3] 
)
inlinestatic

DEPRECATED Compute slope test criteria at internal face between cell i and j.

Parameters
[in]pivalue at cell i
[in]pjvalue at cell j
[in]distfdistance IJ.Nij
[in]srfanface surface
[in]i_face_normalface normal
[in]gradigradient at cell i
[in]gradjgradient at cell j
[in]grdpaiupwind gradient at cell i
[in]grdpajupwind gradient at cell j
[in]i_massfluxmass flux at face (from i to j)
[out]testijvalue of slope test first criterion
[out]tesqckvalue of slope test second criterion

◆ cs_solu_f_val()

static void cs_solu_f_val ( const cs_real_3_t  cell_cen,
const cs_real_3_t  i_face_cog,
const cs_real_3_t  grad,
const cs_real_t  p,
cs_real_t pf 
)
inlinestatic

Prepare value at face ij by using a Second Order Linear Upwind scheme.

Parameters
[in]cell_cencenter of gravity coordinates of cell
[in]i_face_cogcenter of gravity coordinates of face
[in]gradgradient at cell
[in]p(relaced) value at cell
[out]pfface value

◆ cs_solu_f_val_tensor()

static void cs_solu_f_val_tensor ( const cs_real_3_t  cell_cen,
const cs_real_3_t  i_face_cog,
const cs_real_63_t  grad,
const cs_real_6_t  p,
cs_real_t  pf[6] 
)
inlinestatic

Prepare value at face ij by using a Second Order Linear Upwind scheme.

Parameters
[in]cell_cencenter of gravity coordinates of cell
[in]i_face_cogcenter of gravity coordinates of face
[in]gradgradient at cell
[in]p(relaced) value at cell
[out]pfface value

◆ cs_solu_f_val_vector()

static void cs_solu_f_val_vector ( const cs_real_3_t  cell_cen,
const cs_real_3_t  i_face_cog,
const cs_real_33_t  grad,
const cs_real_3_t  p,
cs_real_t  pf[3] 
)
inlinestatic

Prepare value at face ij by using a Second Order Linear Upwind scheme.

Parameters
[in]cell_cencenter of gravity coordinates of cell
[in]i_face_cogcenter of gravity coordinates of face
[in]gradgradient at cell
[in]p(relaced) value at cell
[out]pfface value

◆ cs_upwind_f_val()

static void cs_upwind_f_val ( const cs_real_t  p,
cs_real_t pf 
)
inlinestatic

Prepare value at face ij by using an upwind scheme.

Parameters
[in]pvalue at cell
[out]pfvalue at face

◆ cs_upwind_f_val_tensor()

static void cs_upwind_f_val_tensor ( const cs_real_6_t  p,
cs_real_t  pf[6] 
)
inlinestatic

Prepare value at face ij by using an upwind scheme.

Parameters
[in]pvalue at cell
[out]pfvalue at face

◆ cs_upwind_f_val_vector()

static void cs_upwind_f_val_vector ( const cs_real_3_t  p,
cs_real_t  pf[3] 
)
inlinestatic

Prepare value at face ij by using an upwind scheme.

Parameters
[in]pvalue at cell
[out]pfvalue at face

◆ cs_upwind_gradient()

void cs_upwind_gradient ( const int  f_id,
const int  inc,
const cs_halo_type_t  halo_type,
const cs_real_t  coefap[],
const cs_real_t  coefbp[],
const cs_real_t  i_massflux[],
const cs_real_t  b_massflux[],
const cs_real_t *restrict  pvar,
cs_real_3_t *restrict  grdpa 
)

Compute the upwind gradient in order to cope with SOLU schemes observed in the litterature.

Parameters
[in]f_idfield index
[in]incNot an increment flag
[in]halo_typehalo type
[out]grdpaupwind gradient
[in]pvarvalues
[in]coefapboundary condition array for the variable (explicit part)
[in]coefbpboundary condition array for the variable (implicit part)
[in]i_massfluxmass flux at interior faces
[in]f_idfield index
[in]incNot an increment flag
[in]halo_typehalo type
[in]coefapboundary condition array for the variable (explicit part)
[in]coefbpboundary condition array for the variable (implicit part)
[in]i_massfluxmass flux at interior faces
[in]b_massfluxmass flux at boundary faces
[in]pvarvalues
[out]grdpaupwind gradient

Variable Documentation

◆ b_massflux

void const cs_int_t *const const cs_int_t *const const cs_real_t const cs_real_t const cs_real_t const cs_real_t b_massflux

◆ b_visc

void const cs_int_t *const const cs_int_t *const const cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t b_visc

◆ climgp

void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_real_t *const const cs_real_t *const climgp

◆ coefap

void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_real_t *const const cs_real_t *const const cs_real_t *const cs_real_3_t cs_real_t const cs_real_t coefap

◆ coefbp

void const cs_int_t *const const cs_int_t *const const cs_real_t coefbp

◆ cofafp

void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_real_t *const const cs_real_t *const const cs_real_t *const cs_real_3_t cs_real_t const cs_real_t const cs_real_t const cs_real_t cofafp

◆ cofbfp

void const cs_int_t *const const cs_int_t *const const cs_real_t const cs_real_t cofbfp

◆ diverg

void const cs_real_3_t const cs_real_3_t cs_real_3_t diverg

◆ epsrgp

void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_real_t *const epsrgp

◆ extrap

void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_real_t *const const cs_real_t *const const cs_real_t *const extrap

◆ frcxt

void const cs_int_t *const const cs_int_t *const const cs_real_3_t frcxt

◆ i_massflux

void const cs_int_t *const const cs_int_t *const const cs_real_t const cs_real_t const cs_real_t i_massflux

◆ i_visc

void const cs_int_t *const const cs_int_t *const const cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t i_visc

◆ iccocg

void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const iccocg

◆ imligp

void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const imligp

◆ imrgra

void const cs_int_t *const imrgra

◆ inc

void const cs_int_t *const const cs_int_t *const inc

◆ init

void const cs_int_t *const const cs_int_t *const const cs_int_t *const init

◆ iphydp

void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const iphydp

◆ ircflp

void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const ircflp

◆ iwarnp

void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const iwarnp

◆ iwgrp

void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const iwgrp

◆ nswrgp

void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const nswrgp

◆ pvar

void const cs_real_t *restrict pvar

◆ viscel

void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_real_t *const const cs_real_t *const const cs_real_t *const cs_real_3_t cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t cs_real_6_t viscel

◆ visel

void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_real_t *const const cs_real_t *const const cs_real_t *const cs_real_3_t cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t cs_real_t visel

◆ weighb

void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_real_t *const const cs_real_t *const const cs_real_t *const cs_real_3_t cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t cs_real_6_t const cs_real_2_t const cs_real_t weighb

◆ weighf

void const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_int_t *const const cs_real_t *const const cs_real_t *const const cs_real_t *const cs_real_3_t cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t const cs_real_t cs_real_6_t const cs_real_2_t weighf