|
static void | _hydrostatic_pressure_compute (const cs_mesh_t *m, cs_mesh_quantities_t *mq, int *indhyd, int iterns, const cs_real_t frcxt[][3], const cs_real_t dfrcxt[][3], cs_real_t cvar_hydro_pres[], cs_real_t iflux[], cs_real_t bflux[], cs_real_t i_visc[], cs_real_t b_visc[], cs_real_t dam[], cs_real_t xam[], cs_real_t dphi[], cs_real_t rhs[]) |
| Poisson equation resolution for hydrostatic pressure: \( \divs ( \grad P ) = \divs ( f ) \). More...
|
|
static void | _pressure_correction_fv (int iterns, cs_lnum_t nfbpcd, cs_lnum_t ncmast, cs_lnum_t ifbpcd[], cs_lnum_t ltmast[], const int isostd[], cs_real_t vel[restrict][3], cs_real_t da_uu[restrict][6], cs_field_bc_coeffs_t *bc_coeffs_v, cs_field_bc_coeffs_t *bc_coeffs_dp, cs_real_t spcond[restrict], cs_real_t svcond[restrict], cs_real_t frcxt[restrict][3], cs_real_t dfrcxt[restrict][3], cs_real_t i_visc[restrict], cs_real_t b_visc[restrict]) |
| Perform the pressure correction step of the Navier-Stokes equations for incompressible or slightly compressible flows. More...
|
|
static void | _pressure_correction_cdo (cs_real_t vel[restrict][3], cs_field_bc_coeffs_t *bc_coeffs_v) |
| Perform the pressure correction step of the Navier-Stokes equations for incompressible or slightly compressible flows. More...
|
|
static cs_pressure_correction_cdo_t * | _pressure_correction_cdo_create (void) |
| Create and initialize a cs_pressure_correction_cdo_t structure. More...
|
|
void | cs_pressure_correction_fv_activate (void) |
| Activate the pressure increment solving with Legacy FV. More...
|
|
void | cs_pressure_correction_cdo_activate (void) |
| Activate the pressure increment solving with CDO. More...
|
|
void | cs_pressure_correction_model_activate (void) |
| Activate the pressure increment, either FV or CDO. More...
|
|
bool | cs_pressure_correction_cdo_is_activated (void) |
| Test if pressure solving with CDO is activated. More...
|
|
void | cs_pressure_correction_cdo_init_setup (void) |
| Start setting-up the pressure increment equation At this stage, numerical settings should be completely determined but connectivity and geometrical information is not yet available. More...
|
|
void | cs_pressure_correction_cdo_finalize_setup (const cs_domain_t *domain) |
| Finalize setting-up the pressure increment equation At this stage, numerical settings should be completely determined. More...
|
|
void | cs_pressure_correction_cdo_destroy_all (void) |
| Free the main structure related to the pressure correction. More...
|
|
void | cs_pressure_correction (int iterns, cs_lnum_t nfbpcd, cs_lnum_t ncmast, cs_lnum_t ifbpcd[], cs_lnum_t ltmast[], const int isostd[], cs_real_t vel[restrict][3], cs_real_t da_uu[restrict][6], cs_field_bc_coeffs_t *bc_coeffs_v, cs_field_bc_coeffs_t *bc_coeffs_dp, cs_real_t spcond[restrict], cs_real_t svcond[restrict], cs_real_t frcxt[restrict][3], cs_real_t dfrcxt[restrict][3], cs_real_t i_visc[restrict], cs_real_t b_visc[restrict]) |
| Perform the pressure correction step of the Navier-Stokes equations for incompressible or slightly compressible flows. More...
|
|
static void _pressure_correction_fv |
( |
int |
iterns, |
|
|
cs_lnum_t |
nfbpcd, |
|
|
cs_lnum_t |
ncmast, |
|
|
cs_lnum_t |
ifbpcd[], |
|
|
cs_lnum_t |
ltmast[], |
|
|
const int |
isostd[], |
|
|
cs_real_t |
vel[restrict][3], |
|
|
cs_real_t |
da_uu[restrict][6], |
|
|
cs_field_bc_coeffs_t * |
bc_coeffs_v, |
|
|
cs_field_bc_coeffs_t * |
bc_coeffs_dp, |
|
|
cs_real_t |
spcond[restrict], |
|
|
cs_real_t |
svcond[restrict], |
|
|
cs_real_t |
frcxt[restrict][3], |
|
|
cs_real_t |
dfrcxt[restrict][3], |
|
|
cs_real_t |
i_visc[restrict], |
|
|
cs_real_t |
b_visc[restrict] |
|
) |
| |
|
static |
Perform the pressure correction step of the Navier-Stokes equations for incompressible or slightly compressible flows.
This function solves the following Poisson equation on the pressure:
\[ D \left( \Delta t, \delta p \right) = \divs \left( \rho \vect{\widetilde{u}}\right) - \Gamma^n + \dfrac{\rho^n - \rho^{n-1}}{\Delta t} \]
The mass flux is then updated as follows:
\[ \dot{m}^{n+1}_\ij = \dot{m}^{n}_\ij - \Delta t \grad_\fij \delta p \cdot \vect{S}_\ij \]
Please refer to the resopv section of the theory guide for more information.
- Parameters
-
[in] | iterns | Navier-Stokes iteration number |
[in] | nfbpcd | number of faces with condensation source term |
[in] | ncmast | number of cells with condensation source terms |
[in] | ifbpcd | index of faces with condensation source term |
[in] | ltmast | list of cells with condensation source terms (1 to n numbering) |
[in] | isostd | indicator of standard outlet and index of the reference outlet face |
[in] | vel | velocity |
[in,out] | da_uu | velocity matrix |
[in] | bc_coeffs_v | boundary condition structure for the variable |
[in] | bc_coeffs_dp | boundary conditions structure for the pressure increment |
[in] | spcond | variable value associated to the condensation source term (for ivar=ipr, spcond is the flow rate \( \Gamma_{s,cond}^n \)) |
[in] | svcond | variable value associated to the condensation source term (for ivar=ipr, svcond is the flow rate \( \Gamma_{v, cond}^n \)) |
[in] | frcxt | external forces making hydrostatic pressure |
[in] | dfrcxt | variation of the external forces composing the hydrostatic pressure |
[in] | i_visc | visc*surface/dist aux faces internes |
[in] | b_visc | visc*surface/dist aux faces de bord |
void cs_pressure_correction |
( |
int |
iterns, |
|
|
cs_lnum_t |
nfbpcd, |
|
|
cs_lnum_t |
ncmast, |
|
|
cs_lnum_t |
ifbpcd[], |
|
|
cs_lnum_t |
ltmast[], |
|
|
const int |
isostd[], |
|
|
cs_real_t |
vel[restrict][3], |
|
|
cs_real_t |
da_uu[restrict][6], |
|
|
cs_field_bc_coeffs_t * |
bc_coeffs_v, |
|
|
cs_field_bc_coeffs_t * |
bc_coeffs_dp, |
|
|
cs_real_t |
spcond[restrict], |
|
|
cs_real_t |
svcond[restrict], |
|
|
cs_real_t |
frcxt[restrict][3], |
|
|
cs_real_t |
dfrcxt[restrict][3], |
|
|
cs_real_t |
i_visc[restrict], |
|
|
cs_real_t |
b_visc[restrict] |
|
) |
| |
Perform the pressure correction step of the Navier-Stokes equations for incompressible or slightly compressible flows.
This function solves the following Poisson equation on the pressure:
\[ D \left( \Delta t, \delta p \right) = \divs \left( \rho \vect{\widetilde{u}}\right) - \Gamma^n + \dfrac{\rho^n - \rho^{n-1}}{\Delta t} \]
Either the legacy FV method or a CDO face-based scheme is used.
For the legacy case, the mass flux is updated as follows:
\[ \dot{m}^{n+1}_\ij = \dot{m}^{n}_\ij - \Delta t \grad_\fij \delta p \cdot \vect{S}_\ij \]
Please refer to the resopv section of the theory guide for more information.
- Parameters
-
[in] | iterns | Navier-Stokes iteration number |
[in] | nfbpcd | number of faces with condensation source term |
[in] | ncmast | number of cells with condensation source terms |
[in] | ifbpcd | index of faces with condensation source term |
[in] | ltmast | list of cells with condensation source terms (1 to n numbering) |
[in] | isostd | indicator of standard outlet and index of the reference outlet face |
[in] | vel | velocity |
[in,out] | da_uu | velocity matrix |
[in] | bc_coeffs_v | boundary condition structure for the variable |
[in] | bc_coeffs_dp | boundary conditions structure for the pressure increment |
[in] | spcond | variable value associated to the condensation source term (for ivar=ipr, spcond is the flow rate \( \Gamma_{s,cond}^n \)) |
[in] | svcond | variable value associated to the condensation source term (for ivar=ipr, svcond is the flow rate \( \Gamma_{v, cond}^n \)) |
[in] | frcxt | external forces making hydrostatic pressure |
[in] | dfrcxt | variation of the external forces composing the hydrostatic pressure |
[in] | i_visc | visc*surface/dist aux faces internes |
[in] | b_visc | visc*surface/dist aux faces de bord |