#include "base/cs_defs.h"
#include "bft/bft_mem.h"
#include "base/cs_array.h"
#include "base/cs_base.h"
#include "alge/cs_blas.h"
#include "base/cs_boundary_conditions.h"
#include "alge/cs_convection_diffusion.h"
#include "alge/cs_convection_diffusion_priv.h"
#include "cs_dispatch.h"
#include "alge/cs_divergence.h"
#include "cdo/cs_equation.h"
#include "base/cs_equation_iterative_solve.h"
#include "alge/cs_face_viscosity.h"
#include "base/cs_field.h"
#include "base/cs_field_default.h"
#include "base/cs_field_operator.h"
#include "base/cs_field_pointer.h"
#include "base/cs_log.h"
#include "base/cs_log_iteration.h"
#include "base/cs_math.h"
#include "mesh/cs_mesh.h"
#include "mesh/cs_mesh_location.h"
#include "mesh/cs_mesh_quantities.h"
#include "base/cs_parall.h"
#include "base/cs_physical_constants.h"
#include "base/cs_prototypes.h"
#include "base/cs_rotation.h"
#include "alge/cs_sles_default.h"
#include "base/cs_turbomachinery.h"
#include "turb/cs_turbulence_model.h"
#include "base/cs_vof.h"
Functions | |
cs_vof_parameters_t * | cs_get_glob_vof_parameters (void) |
void | cs_vof_field_create (void) |
Create VoF fields. | |
void | cs_vof_log_setup (void) |
Log setup of VoF model. | |
void | cs_vof_compute_linear_rho_mu (const cs_mesh_t *m) |
Compute the mixture density, mixture dynamic viscosity given fluid volume fractions and the reference density and dynamic viscosity ![]() ![]() | |
void | cs_vof_update_phys_prop (const cs_mesh_t *m) |
Compute the mixture density, mixture dynamic viscosity and mixture mass flux given the volumetric flux, the volume fraction and the reference density and dynamic viscosity ![]() ![]() | |
void | cs_vof_log_mass_budget (const cs_mesh_t *m, const cs_mesh_quantities_t *mq) |
Write in main log the global mixture mass budget: | |
void | cs_vof_surface_tension (const cs_mesh_t *m, const cs_mesh_quantities_t *mq, cs_real_3_t stf[]) |
Compute the surface tension momentum source term following the CSF model of Brackbill et al. (1992). | |
void | cs_vof_deshpande_drift_flux (const cs_mesh_t *m, const cs_mesh_quantities_t *mq) |
Compute a relative velocity ![]() | |
void | cs_vof_drift_term (int imrgra, int nswrgp, int imligp, int iwarnp, cs_real_t epsrgp, cs_real_t climgp, cs_real_t *restrict pvar, const cs_real_t *restrict pvara, cs_real_t *restrict rhs) |
Add the divergence of the drift velocity term in the volume fraction equation. | |
void | cs_vof_solve_void_fraction (int iterns) |
Solve the void fraction ![]() | |
cs_cavitation_parameters_t * | cs_get_glob_cavitation_parameters (void) |
void | cs_cavitation_compute_source_term (const cs_real_t pressure[], const cs_real_t voidf[]) |
Compute the vaporization source term ![]() | |
void | cs_vof_contact_angle_set (const cs_vof_contact_angle_t choice) |
Set the contact angle mode. |
VOF model data.
Compute the vaporization source term
with
Note that the r.h.s. of the void fraction transport equation is
[in] | pressure | Pressure array |
[in] | voidf | Void fraction array |
cs_cavitation_parameters_t * cs_get_glob_cavitation_parameters | ( | void | ) |
cs_vof_parameters_t * cs_get_glob_vof_parameters | ( | void | ) |
void cs_vof_compute_linear_rho_mu | ( | const cs_mesh_t * | m | ) |
Compute the mixture density, mixture dynamic viscosity given fluid volume fractions and the reference density and dynamic viscosity
Computation is done as follows on cells:
A similar linear formula is followed on boundary using fluid volume fraction value on the boundary.
[in] | m | pointer to mesh structure |
void cs_vof_contact_angle_set | ( | const cs_vof_contact_angle_t | choice | ) |
Set the contact angle mode.
[in] | choice | Contact angle model to set. |
void cs_vof_deshpande_drift_flux | ( | const cs_mesh_t * | m, |
const cs_mesh_quantities_t * | mq ) |
Compute a relative velocity
Compute the flux of the drift velocity
Using the notation:
The drift flux is computed as:
Where
[in] | m | pointer to mesh structure |
[in] | mq | pointer to mesh quantities structure |
void cs_vof_drift_term | ( | int | imrgra, |
int | nswrgp, | ||
int | imligp, | ||
int | iwarnp, | ||
cs_real_t | epsrgp, | ||
cs_real_t | climgp, | ||
cs_real_t *restrict | pvar, | ||
const cs_real_t *restrict | pvara, | ||
cs_real_t *restrict | rhs ) |
Add the divergence of the drift velocity term in the volume fraction equation.
More precisely, the right hand side
[in] | imrgra | indicator
|
[in] | nswrgp | number of reconstruction sweeps for the gradients |
[in] | imligp | clipping gradient method
|
[in] | iwarnp | verbosity |
[in] | epsrgp | relative precision for the gradient reconstruction |
[in] | climgp | clipping coefficient for the computation of the gradient |
[in] | pvar | solved variable (current time step) |
[in] | pvara | solved variable (previous time step) |
[in,out] | rhs | right hand side ![]() |
void cs_vof_field_create | ( | void | ) |
Create VoF fields.
void cs_vof_log_mass_budget | ( | const cs_mesh_t * | m, |
const cs_mesh_quantities_t * | mq ) |
Write in main log the global mixture mass budget:
[in] | m | pointer to mesh structure |
[in] | mq | pointer to mesh quantities structure |
void cs_vof_log_setup | ( | void | ) |
Log setup of VoF model.
void cs_vof_solve_void_fraction | ( | int | iterns | ) |
Solve the void fraction
This function solves:
with
[in] | iterns | Navier-Stokes iteration number |
void cs_vof_surface_tension | ( | const cs_mesh_t * | m, |
const cs_mesh_quantities_t * | mq, | ||
cs_real_3_t | stf[] ) |
Compute the surface tension momentum source term following the CSF model of Brackbill et al. (1992).
[in] | m | pointer to mesh structure |
[in] | mq | pointer to mesh quantities structure |
[out] | stf | surface tension momentum source term |
void cs_vof_update_phys_prop | ( | const cs_mesh_t * | m | ) |
Compute the mixture density, mixture dynamic viscosity and mixture mass flux given the volumetric flux, the volume fraction and the reference density and dynamic viscosity
For the computation of mixture density, mixture dynamic viscosity, see cs_vof_compute_linear_rho_mu.
Computation of mass flux is as follows:
[in] | m | pointer to mesh structure |