#include "cs_defs.h"
#include "cs_math.h"
#include "cs_parameters.h"
#include "cs_convection_diffusion.h"
Go to the source code of this file.
Functions | |
static void | cs_sync_scalar_halo (const cs_mesh_t *m, cs_halo_type_t halo_type, cs_real_t pvar[]) |
static CS_F_HOST_DEVICE 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 normalized face scalar using the specified NVD scheme. More... | |
static CS_F_HOST_DEVICE cs_real_t | cs_nvd_vof_scheme_scalar (cs_nvd_type_t limiter, const cs_nreal_t i_face_u_normal[3], cs_real_t nvf_p_c, cs_real_t nvf_r_f, cs_real_t nvf_r_c, const cs_real_t gradv_c[3], 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 CS_F_HOST_DEVICE void | cs_slope_test (const cs_real_t pi, const cs_real_t pj, const cs_real_t distf, const cs_nreal_t i_face_u_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... | |
template<cs_lnum_t stride> | |
static CS_F_HOST_DEVICE void | cs_slope_test_strided (const cs_real_t pi[stride], const cs_real_t pj[stride], const cs_real_t distf, const cs_nreal_t i_face_u_normal[3], const cs_real_t gradi[stride][3], const cs_real_t gradj[stride][3], const cs_real_t gradsti[stride][3], const cs_real_t gradstj[stride][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 CS_F_HOST_DEVICE void | cs_i_compute_quantities (const cs_real_t bldfrp, const cs_rreal_3_t diipf, const cs_rreal_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... | |
template<cs_lnum_t stride> | |
static CS_F_HOST_DEVICE void | cs_i_compute_quantities_strided (const cs_real_t bldfrp, const cs_rreal_t diipf[3], const cs_rreal_t djjpf[3], const cs_real_t gradi[stride][3], const cs_real_t gradj[stride][3], const cs_real_t pi[stride], const cs_real_t pj[stride], cs_real_t recoi[stride], cs_real_t recoj[stride], cs_real_t pip[stride], cs_real_t pjp[stride]) |
Reconstruct values in I' and J'. More... | |
static CS_F_HOST_DEVICE 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... | |
template<cs_lnum_t stride> | |
static CS_F_HOST_DEVICE void | cs_i_relax_c_val_strided (cs_real_t relaxp, const cs_real_t pia[stride], const cs_real_t pja[stride], const cs_real_t recoi[stride], const cs_real_t recoj[stride], const cs_real_t pi[stride], const cs_real_t pj[stride], cs_real_t pir[stride], cs_real_t pjr[stride], cs_real_t pipr[stride], cs_real_t pjpr[stride]) |
Compute relaxed values at cell i and j. More... | |
static CS_F_HOST_DEVICE 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... | |
template<cs_lnum_t stride> | |
static CS_F_HOST_DEVICE void | cs_upwind_f_val_strided (const cs_real_t p[stride], cs_real_t pf[stride]) |
Prepare value at face ij by using an upwind scheme. More... | |
static CS_F_HOST_DEVICE void | cs_centered_f_val (double pnd, cs_real_t pip, cs_real_t pjp, cs_real_t *pf) |
Prepare value at face ij by using a centered scheme. More... | |
template<cs_lnum_t stride> | |
static CS_F_HOST_DEVICE void | cs_centered_f_val_strided (double pnd, const cs_real_t pip[stride], const cs_real_t pjp[stride], cs_real_t pf[stride]) |
Prepare value at face ij by using a centered scheme. More... | |
static CS_F_HOST_DEVICE void | cs_solu_f_val (const cs_real_t cell_cen[3], const cs_real_t i_face_cog[3], const cs_real_t grad[3], const cs_real_t p, cs_real_t *pf) |
Prepare value at face ij by using a Second Order Linear Upwind scheme. More... | |
template<cs_lnum_t stride> | |
static CS_F_HOST_DEVICE void | cs_solu_f_val_strided (const cs_real_t cell_cen[3], const cs_real_t i_face_cog[3], const cs_real_t grad[stride][3], const cs_real_t p[stride], cs_real_t pf[stride]) |
Prepare value at face ij by using a Second Order Linear Upwind scheme. More... | |
static CS_F_HOST_DEVICE 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... | |
template<cs_lnum_t stride> | |
static CS_F_HOST_DEVICE void | cs_blend_f_val_strided (const double blencp, const cs_real_t p[stride], cs_real_t pf[stride]) |
Blend face values for a centered or SOLU scheme with face values for an upwind scheme. More... | |
static CS_F_HOST_DEVICE 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... | |
template<cs_lnum_t stride> | |
static CS_F_HOST_DEVICE void | cs_i_conv_flux_strided (int iconvp, cs_real_t thetap, int imasac, const cs_real_t pi[stride], const cs_real_t pj[stride], const cs_real_t pifri[stride], const cs_real_t pifrj[stride], const cs_real_t pjfri[stride], const cs_real_t pjfrj[stride], cs_real_t i_massflux, cs_real_t fluxi[stride], cs_real_t fluxj[stride]) |
Add convective fluxes (substracting the mass accumulation from them) to fluxes at face ij. More... | |
static CS_F_HOST_DEVICE 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_t fluxij[2]) |
Add diffusive fluxes to fluxes at face ij. More... | |
template<cs_lnum_t stride> | |
static CS_F_HOST_DEVICE void | cs_i_diff_flux_strided (int idiffp, cs_real_t thetap, const cs_real_t pip[stride], const cs_real_t pjp[stride], const cs_real_t pipr[stride], const cs_real_t pjpr[stride], const cs_real_t i_visc, cs_real_t fluxi[stride], cs_real_t fluxj[stride]) |
Add diffusive fluxes to fluxes at face ij. More... | |
static CS_F_HOST_DEVICE void | cs_i_cd_steady_upwind (const cs_real_t bldfrp, const cs_real_t relaxp, const cs_rreal_t diipf[3], const cs_rreal_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... | |
template<cs_lnum_t stride> | |
static CS_F_HOST_DEVICE void | cs_i_cd_steady_upwind_strided (const cs_real_t bldfrp, const cs_real_t relaxp, const cs_rreal_t diipf[3], const cs_rreal_t djjpf[3], const cs_real_t gradi[stride][3], const cs_real_t gradj[stride][3], const cs_real_t pi[stride], const cs_real_t pj[stride], const cs_real_t pia[stride], const cs_real_t pja[stride], cs_real_t pifri[stride], cs_real_t pifrj[stride], cs_real_t pjfri[stride], cs_real_t pjfrj[stride], cs_real_t pip[stride], cs_real_t pjp[stride], cs_real_t pipr[stride], cs_real_t pjpr[stride]) |
Handle preparation of internal face values for the fluxes computation in case of a steady algorithm and a pure upwind flux. More... | |
static CS_F_HOST_DEVICE void | cs_i_cd_unsteady_upwind (const cs_real_t bldfrp, const cs_rreal_t diipf[3], const cs_rreal_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... | |
template<cs_lnum_t stride> | |
static CS_F_HOST_DEVICE void | cs_i_cd_unsteady_upwind_strided (const cs_real_t bldfrp, const cs_rreal_t diipf[3], const cs_rreal_t djjpf[3], const cs_real_t gradi[stride][3], const cs_real_t gradj[stride][3], const cs_real_t pi[stride], const cs_real_t pj[stride], cs_real_t pif[stride], cs_real_t pjf[stride], cs_real_t pip[stride], cs_real_t pjp[stride]) |
Handle preparation of internal face values for the fluxes computation in case of an unsteady algorithm and a pure upwind flux. More... | |
static CS_F_HOST_DEVICE void | cs_i_cd_steady (const cs_real_t bldfrp, 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_rreal_t diipf[3], const cs_rreal_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... | |
template<cs_lnum_t stride> | |
static CS_F_HOST_DEVICE void | cs_i_cd_steady_strided (cs_real_t bldfrp, int ischcp, double relaxp, double blencp, 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_rreal_t diipf[3], const cs_rreal_t djjpf[3], const cs_real_t gradi[stride][3], const cs_real_t gradj[stride][3], const cs_real_t pi[stride], const cs_real_t pj[stride], const cs_real_t pia[stride], const cs_real_t pja[stride], cs_real_t pifri[stride], cs_real_t pifrj[stride], cs_real_t pjfri[stride], cs_real_t pjfrj[stride], cs_real_t pip[stride], cs_real_t pjp[stride], cs_real_t pipr[stride], cs_real_t pjpr[stride]) |
Handle preparation of internal face values for the fluxes computation in case of a steady algorithm and without enabling slope tests. More... | |
static CS_F_HOST_DEVICE void | cs_i_cd_unsteady (const cs_real_t bldfrp, 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_rreal_3_t diipf, const cs_rreal_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... | |
template<cs_lnum_t stride> | |
static CS_F_HOST_DEVICE void | cs_i_cd_unsteady_strided (cs_real_t bldfrp, int ischcp, double blencp, 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 hybrid_blend_i, const cs_real_t hybrid_blend_j, const cs_rreal_t diipf[3], const cs_rreal_t djjpf[3], const cs_real_t gradi[stride][3], const cs_real_t gradj[stride][3], const cs_real_t pi[stride], const cs_real_t pj[stride], cs_real_t pif[stride], cs_real_t pjf[stride], cs_real_t pip[stride], cs_real_t pjp[stride]) |
Handle preparation of internal face values for the fluxes computation in case of an unsteady algorithm and without enabling slope tests. More... | |
static CS_F_HOST_DEVICE void | cs_i_cd_steady_slope_test (bool *upwind_switch, const int iconvp, const cs_real_t bldfrp, 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 cell_ceni[3], const cs_real_t cell_cenj[3], const cs_nreal_t i_face_u_normal[3], const cs_real_t i_face_cog[3], const cs_rreal_t diipf[3], const cs_rreal_t djjpf[3], const cs_real_t i_massflux, 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 gradsti[3], const cs_real_t gradstj[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 using slope tests. More... | |
template<cs_lnum_t stride> | |
static CS_F_HOST_DEVICE void | cs_i_cd_steady_slope_test_strided (bool *upwind_switch, int iconvp, cs_real_t bldfrp, int ischcp, double relaxp, double blencp, double blend_st, cs_real_t weight, cs_real_t i_dist, const cs_real_t cell_ceni[3], const cs_real_t cell_cenj[3], const cs_nreal_t i_face_u_normal[3], const cs_real_t i_face_cog[3], const cs_rreal_t diipf[3], const cs_rreal_t djjpf[3], cs_real_t i_massflux, const cs_real_t gradi[stride][3], const cs_real_t gradj[stride][3], const cs_real_t grdpai[stride][3], const cs_real_t grdpaj[stride][3], const cs_real_t pi[stride], const cs_real_t pj[stride], const cs_real_t pia[stride], const cs_real_t pja[stride], cs_real_t pifri[stride], cs_real_t pifrj[stride], cs_real_t pjfri[stride], cs_real_t pjfrj[stride], cs_real_t pip[stride], cs_real_t pjp[stride], cs_real_t pipr[stride], cs_real_t pjpr[stride]) |
Handle preparation of internal face values for the fluxes computation in case of a steady algorithm and using slope tests. More... | |
static CS_F_HOST_DEVICE void | cs_i_cd_unsteady_slope_test (bool *upwind_switch, const int iconvp, const cs_real_t bldfrp, const int ischcp, const double blencp, const double blend_st, const cs_real_t weight, const cs_real_t i_dist, const cs_real_3_t cell_ceni, const cs_real_3_t cell_cenj, const cs_nreal_3_t i_face_u_normal, const cs_real_3_t i_face_cog, const cs_rreal_3_t diipf, const cs_rreal_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 CS_F_HOST_DEVICE 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 CS_F_HOST_DEVICE void | cs_i_cd_unsteady_nvd (const cs_nvd_type_t limiter, const double beta, const cs_real_3_t cell_cen_c, const cs_real_3_t cell_cen_d, const cs_nreal_3_t i_face_u_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... | |
template<cs_lnum_t stride> | |
static CS_F_HOST_DEVICE void | cs_i_cd_unsteady_slope_test_strided (bool *upwind_switch, int iconvp, cs_real_t bldfrp, int ischcp, double blencp, double blend_st, cs_real_t weight, cs_real_t i_dist, const cs_real_t cell_ceni[3], const cs_real_t cell_cenj[3], const cs_nreal_t i_face_u_normal[3], const cs_real_t i_face_cog[3], const cs_rreal_t diipf[3], const cs_rreal_t djjpf[3], cs_real_t i_massflux, const cs_real_t gradi[stride][3], const cs_real_t gradj[stride][3], const cs_real_t grdpai[stride][3], const cs_real_t grdpaj[stride][3], const cs_real_t pi[stride], const cs_real_t pj[stride], cs_real_t pif[stride], cs_real_t pjf[stride], cs_real_t pip[stride], cs_real_t pjp[stride]) |
Handle preparation of internal face values for the fluxes computation in case of a unsteady algorithm and using slope tests. More... | |
static CS_F_HOST_DEVICE void | cs_b_compute_quantities (const cs_rreal_t diipb[3], const cs_real_t gradi[3], const cs_real_t bldfrp, cs_real_t *recoi) |
Reconstruct values in I' at boundary cell i. More... | |
template<cs_lnum_t stride> | |
static CS_F_HOST_DEVICE void | cs_b_compute_quantities_strided (const cs_rreal_t diipb[3], const cs_real_t gradi[stride][3], const cs_real_t bldfrp, cs_real_t recoi[stride]) |
Reconstruct values in I' at boundary cell i. More... | |
static CS_F_HOST_DEVICE 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... | |
template<cs_lnum_t stride> | |
static CS_F_HOST_DEVICE void | cs_b_relax_c_val_strided (const double relaxp, const cs_real_t pi[stride], const cs_real_t pia[stride], const cs_real_t recoi[stride], cs_real_t pir[stride], cs_real_t pipr[stride]) |
Compute relaxed values at boundary cell i. More... | |
static CS_F_HOST_DEVICE void | cs_b_imposed_conv_flux (int iconvp, cs_real_t thetap, int imasac, int inc, int 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... | |
template<cs_lnum_t stride> | |
static CS_F_HOST_DEVICE void | cs_b_imposed_conv_flux_strided (int iconvp, cs_real_t thetap, int imasac, int inc, int bc_type, int icvfli, const cs_real_t pi[stride], const cs_real_t pir[stride], const cs_real_t pipr[stride], const cs_real_t coefap[stride], const cs_real_t coefbp[stride][stride], const cs_real_t coface[stride], const cs_real_t cofbce[stride][stride], cs_real_t b_massflux, cs_real_t pfac[stride], cs_real_t flux[stride]) |
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 CS_F_HOST_DEVICE 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... | |
template<cs_lnum_t stride> | |
static CS_F_HOST_DEVICE void | cs_b_upwind_flux_strided (int iconvp, cs_real_t thetap, int imasac, int inc, int bc_type, const cs_real_t pi[stride], const cs_real_t pir[stride], const cs_real_t pipr[stride], const cs_real_t coefa[stride], const cs_real_t coefb[stride][stride], cs_real_t b_massflux, cs_real_t pfac[stride], cs_real_t flux[stride]) |
Add convective flux (substracting the mass accumulation from it) to flux at boundary face. The convective flux is a pure upwind flux. More... | |
static CS_F_HOST_DEVICE 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... | |
template<cs_lnum_t stride> | |
static CS_F_HOST_DEVICE void | cs_b_diff_flux_strided (int idiffp, cs_real_t thetap, int inc, const cs_real_t pipr[stride], const cs_real_t cofaf[stride], const cs_real_t cofbf[stride][stride], cs_real_t b_visc, cs_real_t flux[stride]) |
Add diffusive flux to flux at boundary face. More... | |
static CS_F_HOST_DEVICE void | cs_b_cd_steady (const cs_real_t bldfrp, const double relaxp, const cs_rreal_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... | |
template<cs_lnum_t stride> | |
static CS_F_HOST_DEVICE void | cs_b_cd_steady_strided (cs_real_t bldfrp, double relaxp, const cs_rreal_t diipb[3], const cs_real_t gradi[stride][3], const cs_real_t pi[stride], const cs_real_t pia[stride], cs_real_t pir[stride], cs_real_t pipr[stride]) |
Handle preparation of boundary face values for the flux computation in case of a steady algorithm. More... | |
static CS_F_HOST_DEVICE void | cs_b_cd_unsteady (const cs_real_t bldfrp, const cs_rreal_t diipb[3], const cs_real_t gradi[3], 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... | |
template<cs_lnum_t stride> | |
static CS_F_HOST_DEVICE void | cs_b_cd_unsteady_strided (cs_real_t bldfrp, const cs_rreal_t diipb[3], const cs_real_t gradi[stride][3], const cs_real_t pi[stride], cs_real_t pip[stride]) |
Handle preparation of boundary face values for the flux computation in case of a steady algorithm. More... | |
static CS_F_HOST_DEVICE 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... | |
template<cs_lnum_t stride> | |
static CS_F_HOST_DEVICE void | cs_b_diff_flux_coupling_strided (int idiffp, const cs_real_t pi[stride], const cs_real_t pj[stride], cs_real_t b_visc, cs_real_t fluxi[stride]) |
Add diffusive flux to flux at an internal coupling face for a vector. More... | |
|
inlinestatic |
Handle preparation of boundary face values for the flux computation in case of a steady algorithm.
[in] | bldfrp | reconstruction blending factor |
[in] | relaxp | relaxation coefficient |
[in] | diipb | distance I'I' |
[in] | gradi | gradient at cell i |
[in] | pi | value at cell i |
[in] | pia | old value at cell i |
[out] | pir | relaxed value at cell i |
[out] | pipr | relaxed reconstructed value at cell i |
|
inlinestatic |
Handle preparation of boundary face values for the flux computation in case of a steady algorithm.
template parameters: stride 1 for scalars, 3 for vectors, 6 for symmetric tensors
[in] | bldfrp | reconstruction blending factor |
[in] | relaxp | relaxation coefficient |
[in] | diipb | distance I'I' |
[in] | gradi | gradient at cell i |
[in] | pi | value at cell i |
[in] | pia | old value at cell i |
[out] | pir | relaxed value at cell i |
[out] | pipr | relaxed reconstructed value at cell i |
|
inlinestatic |
Handle preparation of boundary face values for the flux computation in case of an unsteady algorithm.
[in] | bldfrp | reconstruction blending factor |
[in] | diipb | distance I'I' |
[in] | gradi | gradient at cell i |
[in] | pi | value at cell i |
[out] | pip | reconstructed value at cell i |
|
inlinestatic |
Handle preparation of boundary face values for the flux computation in case of a steady algorithm.
template parameters: stride 1 for scalars, 3 for vectors, 6 for symmetric tensors
[in] | bldfrp | reconstruction blending factor |
[in] | diipb | distance I'I' |
[in] | gradi | gradient at cell i |
[in] | pi | value at cell i |
[out] | pip | reconstructed value at cell i |
|
inlinestatic |
Reconstruct values in I' at boundary cell i.
[in] | diipb | distance I'I' |
[in] | gradi | gradient at cell i |
[in] | bldfrp | reconstruction blending factor |
[out] | recoi | reconstruction at cell i |
|
inlinestatic |
Reconstruct values in I' at boundary cell i.
template parameters: stride 1 for scalars, 3 for vectors, 6 for symmetric tensors
[in] | diipb | distance I'I' |
[in] | gradi | gradient at cell i |
[in] | bldfrp | reconstruction blending factor |
[out] | recoi | reconstruction at cell i |
|
inlinestatic |
Add diffusive flux to flux at boundary face.
[in] | idiffp | diffusion flag |
[in] | thetap | weighting coefficient for the theta-scheme, |
[in] | inc | Not an increment flag |
[in] | pipr | relaxed reconstructed value at cell i |
[in] | cofafp | explicit boundary coefficient for diffusion operator |
[in] | cofbfp | implicit boundary coefficient for diffusion operator |
[in] | b_visc | boundary face surface |
[in,out] | flux | flux at boundary face |
|
inlinestatic |
Add diffusive flux to flux at an internal coupling face.
[in] | idiffp | diffusion flag |
[in] | pi | value at cell i |
[in] | pj | value at cell j |
[in] | b_visc | equivalent exchange coefficient at an internal coupling face |
[in,out] | fluxi | flux at internal coupling face |
|
inlinestatic |
Add diffusive flux to flux at an internal coupling face for a vector.
template parameters: stride 1 for scalars, 3 for vectors, 6 for symmetric tensors
[in] | idiffp | diffusion flag |
[in] | pi | value at cell i |
[in] | pj | value at cell j |
[in] | b_visc | equivalent exchange coefficient at an internal coupling face |
[in,out] | fluxi | flux at internal coupling face |
|
inlinestatic |
Add diffusive flux to flux at boundary face.
template parameters: stride 1 for scalars, 3 for vectors, 6 for symmetric tensors
[in] | idiffp | diffusion flag |
[in] | thetap | weighting coefficient for the theta-scheme, |
[in] | inc | Not an increment flag |
[in] | pipr | relaxed reconstructed value at cell i |
[in] | cofaf | explicit boundary coefficient for diffusion operator |
[in] | cofbf | implicit boundary coefficient for diffusion operator |
[in] | b_visc | boundary face surface |
[in,out] | flux | flux at boundary face |
|
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.
[in] | iconvp | convection flag |
[in] | thetap | weighting coefficient for the theta-scheme, |
[in] | imasac | take mass accumulation into account? |
[in] | inc | Not an increment flag |
[in] | bc_type | type of boundary face |
[in] | icvfli | imposed convective flux flag |
[in] | pi | value at cell i |
[in] | pir | relaxed value at cell i |
[in] | pipr | relaxed reconstructed value at cell i |
[in] | coefap | explicit boundary coefficient for convection operator |
[in] | coefbp | implicit boundary coefficient for convection operator |
[in] | coface | explicit imposed convective flux value (0 otherwise). |
[in] | cofbce | implicit part of imp. conv. flux value |
[in] | b_massflux | mass flux at boundary face |
[in] | xcpp | specific heat value if the scalar is the temperature, 1 otherwise |
[in,out] | flux | flux at boundary face |
|
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.
template parameters: stride 1 for scalars, 3 for vectors, 6 for symmetric tensors
[in] | iconvp | convection flag |
[in] | thetap | weighting coefficient for the theta-scheme, |
[in] | imasac | take mass accumulation into account? |
[in] | inc | Not an increment flag |
[in] | bc_type | type of boundary face |
[in] | icvfli | imposed convective flux flag |
[in] | pi | value at cell i |
[in] | pir | relaxed value at cell i |
[in] | pipr | relaxed reconstructed value at cell i |
[in] | coefap | explicit boundary coefficient for convection operator |
[in] | coefbp | implicit boundary coefficient for convection operator |
[in] | coface | explicit imposed convective flux value (0 otherwise). |
[in] | cofbce | implicit part of imp. conv. flux value |
[in] | b_massflux | mass flux at boundary face |
[in,out] | flux | flux at boundary face |
|
inlinestatic |
Compute relaxed values at boundary cell i.
[in] | relaxp | relaxation coefficient |
[in] | pi | value at cell i |
[in] | pia | old value at cell i |
[in] | recoi | reconstruction at cell i |
[out] | pir | relaxed value at cell i |
[out] | pipr | relaxed reconstructed value at cell i |
|
inlinestatic |
Compute relaxed values at boundary cell i.
template parameters: stride 1 for scalars, 3 for vectors, 6 for symmetric tensors
[in] | relaxp | relaxation coefficient |
[in] | pi | value at cell i |
[in] | pia | old value at cell i |
[in] | recoi | reconstruction at cell i |
[out] | pir | relaxed value at cell i |
[out] | pipr | relaxed reconstructed value at cell i |
|
inlinestatic |
Add convective flux (substracting the mass accumulation from it) to flux at boundary face. The convective flux is a pure upwind flux.
[in] | iconvp | convection flag |
[in] | thetap | weighting coefficient for the theta-scheme, |
[in] | imasac | take mass accumulation into account? |
[in] | inc | Not an increment flag |
[in] | bc_type | type of boundary face |
[in] | pi | value at cell i |
[in] | pir | relaxed value at cell i |
[in] | pipr | relaxed reconstructed value at cell i |
[in] | coefap | explicit boundary coefficient for convection operator |
[in] | coefbp | implicit boundary coefficient for convection operator |
[in] | b_massflux | mass flux at boundary face |
[in] | xcpp | specific heat value if the scalar is the temperature, 1 otherwise |
[in,out] | flux | flux at boundary face |
|
inlinestatic |
Add convective flux (substracting the mass accumulation from it) to flux at boundary face. The convective flux is a pure upwind flux.
template parameters: stride 1 for scalars, 3 for vectors, 6 for symmetric tensors
[in] | iconvp | convection flag |
[in] | thetap | weighting coefficient for the theta-scheme, |
[in] | imasac | take mass accumulation into account? |
[in] | inc | Not an increment flag |
[in] | bc_type | type of boundary face |
[in] | pi | value at cell i |
[in] | pir | relaxed value at cell i |
[in] | pipr | relaxed reconstructed value at cell i |
[in] | coefa | explicit boundary coefficient for convection operator |
[in] | coefb | implicit boundary coefficient for convection operator |
[in] | b_massflux | mass flux at boundary face |
[out] | pfac | contribution from BCs |
[in,out] | flux | flux at boundary face |
|
inlinestatic |
Blend face values for a centered or SOLU scheme with face values for an upwind scheme.
[in] | blencp | proportion of second order scheme, (1-blencp) is the proportion of upwind. |
[in] | p | (relaxed) value at cell |
[out] | pf | face value |
|
inlinestatic |
Blend face values for a centered or SOLU scheme with face values for an upwind scheme.
template parameters: stride 1 for scalars, 3 for vectors, 6 for symmetric tensors
[in] | blencp | proportion of second order scheme, (1-blencp) is the proportion of upwind. |
[in] | p | (relaxed) value at cell |
[out] | pf | face value |
|
inlinestatic |
Prepare value at face ij by using a centered scheme.
[in] | pnd | weight |
[in] | pip | (relaxed) reconstructed value at cell i |
[in] | pjp | (relaxed) reconstructed value at cell j |
[out] | pf | face value |
|
inlinestatic |
Prepare value at face ij by using a centered scheme.
template parameters: stride 1 for scalars, 3 for vectors, 6 for symmetric tensors
[in] | pnd | weight |
[in] | pip | (relaxed) reconstructed value at cell i |
[in] | pjp | (relaxed) reconstructed value at cell j |
[out] | pf | face value |
|
inlinestatic |
Determine the upwind and downwind sides of an internal face and matching cell indices.
[in] | ii | index of cell (0) |
[in] | jj | index of cell (1) |
[in] | i_massflux | mass flux at face ij |
[out] | ic | index of central cell (upwind w.r.t. the face) |
[out] | id | index of downwind cell |
|
inlinestatic |
Handle preparation of internal face values for the fluxes computation in case of a steady algorithm and without enabling slope tests.
[in] | bldfrp | reconstruction blending factor |
[in] | ischcp | second order convection scheme flag |
[in] | relaxp | relaxation coefficient |
[in] | blencp | proportion of second order scheme, (1-blencp) is the proportion of upwind. |
[in] | weight | geometrical weight |
[in] | cell_ceni | center of gravity coordinates of cell i |
[in] | cell_cenj | center of gravity coordinates of cell i |
[in] | i_face_cog | center of gravity coordinates of face ij |
[in] | diipf | distance II' |
[in] | djjpf | distance JJ' |
[in] | gradi | gradient at cell i |
[in] | gradj | gradient at cell j |
[in] | gradupi | gradient upwind at cell i |
[in] | gradupj | gradient upwind at cell j |
[in] | pi | value at cell i |
[in] | pj | value at cell j |
[in] | pia | old value at cell i |
[in] | pja | old value at cell j |
[out] | pifri | contribution of i to flux from i to j |
[out] | pifrj | contribution of i to flux from j to i |
[out] | pjfri | contribution of j to flux from i to j |
[out] | pjfrj | contribution of j to flux from j to i |
[out] | pip | reconstructed value at cell i |
[out] | pjp | reconstructed value at cell j |
[out] | pipr | relaxed reconstructed value at cell i |
[out] | pjpr | relaxed reconstructed value at cell j |
|
inlinestatic |
Handle preparation of internal face values for the fluxes computation in case of a steady algorithm and using slope tests.
[out] | upwind_switch | slope test result |
[in] | iconvp | convection flag |
[in] | bldfrp | reconstruction blending factor |
[in] | ischcp | second order convection scheme flag |
[in] | relaxp | relaxation coefficient |
[in] | blencp | proportion of second order scheme, (1-blencp) is the proportion of upwind. |
[in] | blend_st | proportion of centered or SOLU scheme, when the slope test is activated (1-blend_st) is the proportion of upwind. |
[in] | weight | geometrical weight |
[in] | i_dist | distance IJ.Nij |
[in] | cell_ceni | center of gravity coordinates of cell i |
[in] | cell_cenj | center of gravity coordinates of cell j |
[in] | i_face_normal | face normal |
[in] | i_face_cog | center of gravity coordinates of face ij |
[in] | diipf | distance II' |
[in] | djjpf | distance JJ' |
[in] | i_massflux | mass flux at face ij |
[in] | gradi | gradient at cell i |
[in] | gradj | gradient at cell j |
[in] | gradupi | upwind gradient at cell i |
[in] | gradupj | upwind gradient at cell j |
[in] | gradsti | slope test gradient at cell i |
[in] | gradstj | slope test gradient at cell j |
[in] | pi | value at cell i |
[in] | pj | value at cell j |
[in] | pia | old value at cell i |
[in] | pja | old value at cell j |
[out] | pifri | contribution of i to flux from i to j |
[out] | pifrj | contribution of i to flux from j to i |
[out] | pjfri | contribution of j to flux from i to j |
[out] | pjfrj | contribution of j to flux from j to i |
[out] | pip | reconstructed value at cell i |
[out] | pjp | reconstructed value at cell j |
[out] | pipr | relaxed reconstructed value at cell i |
[out] | pjpr | relaxed reconstructed value at cell j |
|
inlinestatic |
Handle preparation of internal face values for the fluxes computation in case of a steady algorithm and using slope tests.
template parameters: stride 1 for scalars, 3 for vectors, 6 for symmetric tensors
[out] | upwind_switch | slope test result |
[in] | iconvp | convection flag |
[in] | bldfrp | reconstruction blending factor |
[in] | ischcp | second order convection scheme flag |
[in] | relaxp | relaxation coefficient |
[in] | blencp | proportion of second order scheme, (1-blencp) is the proportion of upwind. |
[in] | blend_st | proportion of centered or SOLU scheme, when the slope test is activated (1-blend_st) is the proportion of upwind. |
[in] | weight | geometrical weight |
[in] | i_dist | distance IJ.Nij |
[in] | cell_ceni | center of gravity coordinates of cell i |
[in] | cell_cenj | center of gravity coordinates of cell i |
[in] | i_face_u_normal | face unit normal |
[in] | i_face_cog | center of gravity coordinates of face ij |
[in] | diipf | distance II' |
[in] | djjpf | distance JJ' |
[in] | i_massflux | mass flux at face ij |
[in] | gradi | gradient at cell i |
[in] | gradj | gradient at cell j |
[in] | grdpai | upwind gradient at cell i |
[in] | grdpaj | upwind gradient at cell j |
[in] | pi | value at cell i |
[in] | pj | value at cell j |
[in] | pia | old value at cell i |
[in] | pja | old value at cell j |
[out] | pifri | contribution of i to flux from i to j |
[out] | pifrj | contribution of i to flux from j to i |
[out] | pjfri | contribution of j to flux from i to j |
[out] | pjfrj | contribution of j to flux from j to i |
[out] | pip | reconstructed value at cell i |
[out] | pjp | reconstructed value at cell j |
[out] | pipr | relaxed reconstructed value at cell i |
[out] | pjpr | relaxed reconstructed value at cell j |
|
inlinestatic |
Handle preparation of internal face values for the fluxes computation in case of a steady algorithm and without enabling slope tests.
template parameters: stride 1 for scalars, 3 for vectors, 6 for symmetric tensors
[in] | bldfrp | reconstruction blending factor |
[in] | ischcp | second order convection scheme flag |
[in] | relaxp | relaxation coefficient |
[in] | blencp | proportion of second order scheme, (1-blencp) is the proportion of upwind. |
[in] | weight | geometrical weight |
[in] | cell_ceni | center of gravity coordinates of cell i |
[in] | cell_cenj | center of gravity coordinates of cell i |
[in] | i_face_cog | center of gravity coordinates of face ij |
[in] | diipf | distance II' |
[in] | djjpf | distance JJ' |
[in] | gradi | gradient at cell i |
[in] | gradj | gradient at cell j |
[in] | pi | value at cell i |
[in] | pj | value at cell j |
[in] | pia | old value at cell i |
[in] | pja | old value at cell j |
[out] | pifri | contribution of i to flux from i to j |
[out] | pifrj | contribution of i to flux from j to i |
[out] | pjfri | contribution of j to flux from i to j |
[out] | pjfrj | contribution of j to flux from j to i |
[out] | pip | reconstructed value at cell i |
[out] | pjp | reconstructed value at cell j |
[out] | pipr | relaxed reconstructed value at cell i |
[out] | pjpr | relaxed reconstructed value at cell j |
|
inlinestatic |
Handle preparation of internal face values for the fluxes computation in case of a steady algorithm and a pure upwind flux.
[in] | bldfrp | reconstruction blending factor |
[in] | relaxp | relaxation coefficient |
[in] | diipf | distance II' |
[in] | djjpf | distance JJ' |
[in] | gradi | gradient at cell i |
[in] | gradj | gradient at cell j |
[in] | pi | value at cell i |
[in] | pj | value at cell j |
[in] | pia | old value at cell i |
[in] | pja | old value at cell j |
[out] | pifri | contribution of i to flux from i to j |
[out] | pifrj | contribution of i to flux from j to i |
[out] | pjfri | contribution of j to flux from i to j |
[out] | pjfrj | contribution of j to flux from j to i |
[out] | pip | reconstructed value at cell i |
[out] | pjp | reconstructed value at cell j |
[out] | pipr | relaxed reconstructed value at cell i |
[out] | pjpr | relaxed reconstructed value at cell j |
|
inlinestatic |
Handle preparation of internal face values for the fluxes computation in case of a steady algorithm and a pure upwind flux.
template parameters: stride 1 for scalars, 3 for vectors, 6 for symmetric tensors
[in] | bldfrp | reconstruction blending factor |
[in] | relaxp | relaxation coefficient |
[in] | diipf | distance II' |
[in] | djjpf | distance JJ' |
[in] | gradi | gradient at cell i |
[in] | gradj | gradient at cell j |
[in] | pi | value at cell i |
[in] | pj | value at cell j |
[in] | pia | old value at cell i |
[in] | pja | old value at cell j |
[out] | pifri | contribution of i to flux from i to j |
[out] | pifrj | contribution of i to flux from j to i |
[out] | pjfri | contribution of j to flux from i to j |
[out] | pjfrj | contribution of j to flux from j to i |
[out] | pip | reconstructed value at cell i |
[out] | pjp | reconstructed value at cell j |
[out] | pipr | relaxed reconstructed value at cell i |
[out] | pjpr | relaxed reconstructed value at cell j |
|
inlinestatic |
Handle preparation of internal face values for the fluxes computation in case of a unsteady algorithm and without enabling slope tests.
[in] | bldfrp | reconstruction blending factor |
[in] | ischcp | second order convection scheme flag |
[in] | blencp | proportion of second order scheme, (1-blencp) is the proportion of upwind. |
[in] | weight | geometrical weight |
[in] | cell_ceni | center of gravity coordinates of cell i |
[in] | cell_cenj | center of gravity coordinates of cell i |
[in] | i_face_cog | center of gravity coordinates of face ij |
[in] | hybrid_blend_i | blending factor between SOLU and centered |
[in] | hybrid_blend_j | blending factor between SOLU and centered |
[in] | diipf | distance II' |
[in] | djjpf | distance JJ' |
[in] | gradi | gradient at cell i |
[in] | gradj | gradient at cell j |
[in] | gradupi | upwind gradient at cell i |
[in] | gradupj | upwind gradient at cell j |
[in] | gradi | gradient at cell i |
[in] | gradj | gradient at cell j |
[in] | pi | value at cell i |
[in] | pj | value at cell j |
[out] | pif | contribution of i to flux from i to j |
[out] | pjf | contribution of j to flux from i to j |
[out] | pip | reconstructed value at cell i |
[out] | pjp | reconstructed value at cell j |
|
inlinestatic |
Handle preparation of internal face values for the convection flux computation in case of an unsteady algorithm and using NVD schemes.
[in] | limiter | choice of the NVD scheme |
[in] | beta | proportion of second order scheme, (1-blencp) is the proportion of upwind. |
[in] | cell_cen_c | center of gravity coordinates of central cell |
[in] | cell_cen_d | center of gravity coordinates of downwind cell |
[in] | i_face_u_normal | unit normal of face ij |
[in] | i_face_cog | center of gravity coordinates of face ij |
[in] | gradv_c | gradient at central cell |
[in] | p_c | value at central cell |
[in] | p_d | value at downwind cell |
[in] | local_max_c | local maximum of variable |
[in] | local_min_c | local minimum of variable |
[in] | courant_c | central cell courant number |
[out] | pif | contribution of i to flux from i to j |
[out] | pjf | contribution of j to flux from i to j |
|
inlinestatic |
Handle preparation of internal face values for the fluxes computation in case of a steady algorithm and using slope tests.
[out] | upwind_switch | slope test result |
[in] | iconvp | convection flag |
[in] | bldfrp | reconstruction blending factor |
[in] | ischcp | second order convection scheme flag |
[in] | blencp | proportion of second order scheme, (1-blencp) is the proportion of upwind. |
[in] | blend_st | proportion of centered or SOLU scheme, when the slope test is activated (1-blend_st) is the proportion of upwind. |
[in] | weight | geometrical weight |
[in] | i_dist | distance IJ.Nij |
[in] | cell_ceni | center of gravity coordinates of cell i |
[in] | cell_cenj | center of gravity coordinates of cell i |
[in] | i_face_u_normal | face unit normal |
[in] | i_face_cog | center of gravity coordinates of face ij |
[in] | diipf | distance II' |
[in] | djjpf | distance JJ' |
[in] | i_massflux | mass flux at face ij |
[in] | gradi | gradient at cell i |
[in] | gradj | gradient at cell j |
[in] | gradupi | upwind gradient at cell i |
[in] | gradupj | upwind gradient at cell j |
[in] | gradsti | slope test gradient at cell i |
[in] | gradstj | slope test gradient at cell j |
[in] | pi | value at cell i |
[in] | pj | value at cell j |
[out] | pif | contribution of i to flux from i to j |
[out] | pjf | contribution of j to flux from i to j |
[out] | pip | reconstructed value at cell i |
[out] | pjp | reconstructed value at cell j |
|
inlinestatic |
Handle preparation of internal face values for the fluxes computation in case of a unsteady algorithm and using slope tests.
template parameters: stride 1 for scalars, 3 for vectors, 6 for symmetric tensors
[out] | upwind_switch | slope test result |
[in] | iconvp | convection flag |
[in] | bldfrp | reconstruction blending factor |
[in] | ischcp | second order convection scheme flag |
[in] | blencp | proportion of second order scheme, (1-blencp) is the proportion of upwind. |
[in] | blend_st | proportion of centered or SOLU scheme, when the slope test is activated (1-blend_st) is the proportion of upwind. |
[in] | weight | geometrical weight |
[in] | i_dist | distance IJ.Nij |
[in] | cell_ceni | center of gravity coordinates of cell i |
[in] | cell_cenj | center of gravity coordinates of cell i |
[in] | i_face_u_normal | face normal |
[in] | i_face_cog | center of gravity coordinates of face ij |
[in] | diipf | distance II' |
[in] | djjpf | distance JJ' |
[in] | i_massflux | mass flux at face ij |
[in] | gradi | gradient at cell i |
[in] | gradj | gradient at cell j |
[in] | grdpai | upwind gradient at cell i |
[in] | grdpaj | upwind gradient at cell j |
[in] | pi | value at cell i |
[in] | pj | value at cell j |
[out] | pif | contribution of i to flux from i to j |
[out] | pjf | contribution of j to flux from i to j |
[out] | pip | reconstructed value at cell i |
[out] | pjp | reconstructed value at cell j |
|
inlinestatic |
Handle preparation of internal face values for the fluxes computation in case of an unsteady algorithm and without enabling slope tests.
template parameters: stride 1 for scalars, 3 for vectors, 6 for symmetric tensors
[in] | bldfrp | reconstruction blending factor |
[in] | ischcp | second order convection scheme flag |
[in] | blencp | proportion of second order scheme, (1-blencp) is the proportion of upwind. |
[in] | weight | geometrical weight |
[in] | cell_ceni | center of gravity coordinates of cell i |
[in] | cell_cenj | center of gravity coordinates of cell i |
[in] | i_face_cog | center of gravity coordinates of face ij |
[in] | hybrid_blend_i | blending factor between SOLU and centered |
[in] | hybrid_blend_j | blending factor between SOLU and centered |
[in] | diipf | distance II' |
[in] | djjpf | distance JJ' |
[in] | gradi | gradient at cell i |
[in] | gradj | gradient at cell j |
[in] | pi | value at cell i |
[in] | pj | value at cell j |
[out] | pif | contribution of i to flux from i to j |
[out] | pjf | contribution of j to flux from i to j |
[out] | pip | reconstructed value at cell i |
[out] | pjp | reconstructed value at cell j |
|
inlinestatic |
Handle preparation of internal face values for the fluxes computation in case of an unsteady algorithm and a pure upwind flux.
[in] | bldfrp | reconstruction blending factor |
[in] | diipf | distance II' |
[in] | djjpf | distance JJ' |
[in] | gradi | gradient at cell i |
[in] | gradj | gradient at cell j |
[in] | pi | value at cell i |
[in] | pj | value at cell j |
[out] | pif | contribution of i to flux from i to j |
[out] | pjf | contribution of j to flux from i to j |
[out] | pip | reconstructed value at cell i |
[out] | pjp | reconstructed value at cell j |
|
inlinestatic |
Handle preparation of internal face values for the fluxes computation in case of an unsteady algorithm and a pure upwind flux.
template parameters: stride 1 for scalars, 3 for vectors, 6 for symmetric tensors
[in] | bldfrp | reconstruction blending factor |
[in] | diipf | distance II' |
[in] | djjpf | distance JJ' |
[in] | gradi | gradient at cell i |
[in] | gradj | gradient at cell j |
[in] | pi | value at cell i |
[in] | pj | value at cell j |
[out] | pif | contribution of i to flux from i to j |
[out] | pjf | contribution of j to flux from i to j |
[out] | pip | reconstructed value at cell i |
[out] | pjp | reconstructed value at cell j |
|
inlinestatic |
Reconstruct values in I' and J'.
[in] | bldfrp | reconstruction blending factor |
[in] | diipf | distance II' |
[in] | djjpf | distance JJ' |
[in] | gradi | gradient at cell i |
[in] | gradj | gradient at cell j |
[in] | pi | value at cell i |
[in] | pj | value at cell j |
[out] | recoi | reconstruction at cell i |
[out] | recoj | reconstruction at cell j |
[out] | pip | reconstructed value at cell i |
[out] | pjp | reconstructed value at cell j |
|
inlinestatic |
Reconstruct values in I' and J'.
template parameters: stride 1 for scalars, 3 for vectors, 6 for symmetric tensors
[in] | bldfrp | reconstruction blending factor |
[in] | diipf | distance II' |
[in] | djjpf | distance JJ' |
[in] | gradi | gradient at cell i |
[in] | gradj | gradient at cell j |
[in] | pi | value at cell i |
[in] | pj | value at cell j |
[out] | recoi | reconstruction at cell i |
[out] | recoj | reconstruction at cell j |
[out] | pip | reconstructed value at cell i |
[out] | pjp | reconstructed value at cell j |
|
inlinestatic |
Add convective fluxes (substracting the mass accumulation from them) to fluxes at face ij.
[in] | iconvp | convection flag |
[in] | thetap | weighting coefficient for the theta-scheme, |
[in] | imasac | take mass accumulation into account? |
[in] | pi | value at cell i |
[in] | pj | value at cell j |
[in] | pifri | contribution of i to flux from i to j |
[in] | pifrj | contribution of i to flux from j to i |
[in] | pjfri | contribution of j to flux from i to j |
[in] | pjfrj | contribution of j to flux from j to i |
[in] | i_massflux | mass flux at face ij |
[in] | xcppi | specific heat value if the scalar is the temperature, 1 otherwise at cell i |
[in] | xcppj | specific heat value if the scalar is the temperature, 1 otherwise at cell j |
[in,out] | fluxij | fluxes at face ij |
|
inlinestatic |
Add convective fluxes (substracting the mass accumulation from them) to fluxes at face ij.
template parameters: stride 1 for scalars, 3 for vectors, 6 for symmetric tensors
[in] | iconvp | convection flag |
[in] | thetap | weighting coefficient for the theta-scheme, |
[in] | imasac | take mass accumulation into account? |
[in] | pi | value at cell i |
[in] | pj | value at cell j |
[out] | pifri | contribution of i to flux from i to j |
[out] | pifrj | contribution of i to flux from j to i |
[out] | pjfri | contribution of j to flux from i to j |
[out] | pjfrj | contribution of j to flux from j to i |
[in] | i_massflux | mass flux at face ij |
[in,out] | fluxi | fluxes at face i |
[in,out] | fluxj | fluxes at face j |
|
inlinestatic |
Add diffusive fluxes to fluxes at face ij.
[in] | idiffp | diffusion flag |
[in] | thetap | weighting coefficient for the theta-scheme, |
[in] | pip | reconstructed value at cell i |
[in] | pjp | reconstructed value at cell j |
[in] | pipr | relaxed reconstructed value at cell i |
[in] | pjpr | relaxed reconstructed value at cell j |
[in] | i_visc | diffusion coefficient (divided by IJ) at face ij |
[in,out] | fluxij | fluxes at face ij |
|
inlinestatic |
Add diffusive fluxes to fluxes at face ij.
template parameters: stride 1 for scalars, 3 for vectors, 6 for symmetric tensors
[in] | idiffp | diffusion flag |
[in] | thetap | weighting coefficient for the theta-scheme, |
[in] | pip | reconstructed value at cell i |
[in] | pjp | reconstructed value at cell j |
[in] | pipr | relaxed reconstructed value at cell i |
[in] | pjpr | relaxed reconstructed value at cell j |
[in] | i_visc | diffusion coefficient (divided by IJ) at face ij |
[in,out] | fluxi | fluxes at face i |
[in,out] | fluxj | fluxes at face j |
|
inlinestatic |
Compute relaxed values at cell i and j.
[in] | relaxp | relaxation coefficient |
[in] | pia | old value at cell i |
[in] | pja | old value at cell j |
[in] | recoi | reconstruction at cell i |
[in] | recoj | reconstruction at cell j |
[in] | pi | value at cell i |
[in] | pj | value at cell j |
[out] | pir | relaxed value at cell i |
[out] | pjr | relaxed value at cell j |
[out] | pipr | relaxed reconstructed value at cell i |
[out] | pjpr | relaxed reconstructed value at cell j |
|
inlinestatic |
Compute relaxed values at cell i and j.
template parameters: stride 1 for scalars, 3 for vectors, 6 for symmetric tensors
[in] | relaxp | relaxation coefficient |
[in] | pia | old value at cell i |
[in] | pja | old value at cell j |
[in] | recoi | reconstruction at cell i |
[in] | recoj | reconstruction at cell j |
[in] | pi | value at cell i |
[in] | pj | value at cell j |
[out] | pir | relaxed value at cell i |
[out] | pjr | relaxed value at cell j |
[out] | pipr | relaxed reconstructed value at cell i |
[out] | pjpr | relaxed reconstructed value at cell j |
|
inlinestatic |
Compute the normalized face scalar using the specified NVD scheme.
[in] | limiter | choice of the NVD scheme |
[in] | nvf_p_c | normalised property of the current cell |
[in] | nvf_r_f | normalised distance from the face |
[in] | nvf_r_c | normalised distance from the current cell |
|
inlinestatic |
Compute the normalised face scalar using the specified NVD scheme for the case of a Volume-of-Fluid (VOF) transport equation.
[in] | limiter | choice of the NVD scheme |
[in] | i_face_u_normal | unit normal of face ij |
[in] | face_id | the current cell face |
[in] | nvf_p_c | normalised property of the current cell |
[in] | nvf_r_f | normalised distance from the face |
[in] | nvf_r_c | normalised distance from the current cell |
[in] | gradv_c | gradient at central cell |
[in] | courant_c | courant at central cell |
|
inlinestatic |
Compute slope test criteria at internal face between cell i and j.
[in] | pi | value at cell i |
[in] | pj | value at cell j |
[in] | distf | distance IJ.Nij |
[in] | i_face_u_normal | face unit normal |
[in] | gradi | gradient at cell i |
[in] | gradj | gradient at cell j |
[in] | grdpai | upwind gradient at cell i |
[in] | grdpaj | upwind gradient at cell j |
[in] | i_massflux | mass flux at face (from i to j) |
[out] | testij | value of slope test first criterion |
[out] | tesqck | value of slope test second criterion |
|
inlinestatic |
Compute slope test criteria at internal face between cell i and j.
template parameters: stride 1 for scalars, 3 for vectors, 6 for symmetric tensors
[in] | pi | value at cell i |
[in] | pj | value at cell j |
[in] | distf | distance IJ.Nij |
[in] | i_face_u_normal | face unit normal |
[in] | gradi | gradient at cell i |
[in] | gradj | gradient at cell j |
[in] | grdpai | upwind gradient at cell i |
[in] | grdpaj | upwind gradient at cell j |
[in] | i_massflux | mass flux at face (from i to j) |
[out] | testij | value of slope test first criterion |
[out] | tesqck | value of slope test second criterion |
|
inlinestatic |
Prepare value at face ij by using a Second Order Linear Upwind scheme.
[in] | cell_cen | center of gravity coordinates of cell |
[in] | i_face_cog | center of gravity coordinates of face |
[in] | grad | gradient at cell |
[in] | p | (relaced) value at cell |
[out] | pf | face value |
|
inlinestatic |
Prepare value at face ij by using a Second Order Linear Upwind scheme.
template parameters: stride 1 for scalars, 3 for vectors, 6 for symmetric tensors
[in] | cell_cen | center of gravity coordinates of cell |
[in] | i_face_cog | center of gravity coordinates of face |
[in] | grad | gradient at cell |
[in] | p | (relaced) value at cell |
[out] | pf | face value |
|
inlinestatic |
|
inlinestatic |
Prepare value at face ij by using an upwind scheme.
[in] | p | value at cell |
[out] | pf | value at face |
|
inlinestatic |
Prepare value at face ij by using an upwind scheme.
template parameters: stride 1 for scalars, 3 for vectors, 6 for symmetric tensors
[in] | p | value at cell |
[out] | pf | value at face |