Additional right-hand side source terms for velocity components equation (Navier-Stokes)
Local variables and initialization
const cs_lnum_t n_cells = domain->mesh->n_cells;
const cs_real_t *cell_f_vol = domain->mesh_quantities->cell_vol;
const auto cpro_rom =
CS_F_(
rho)->get_val_s();
Field descriptor.
Definition: cs_field.h:275
double cs_real_t
Floating-point value.
Definition: cs_defs.h:332
int cs_lnum_t
local mesh entity id
Definition: cs_defs.h:325
cs_field_t * cs_field(int id)
Return a pointer to a field based on its id. This function requires that a field of the given id is d...
Definition: cs_field.cpp:4295
@ rho
Definition: cs_field_pointer.h:96
#define CS_F_(e)
Macro used to return a field pointer by its enumerated value.
Definition: cs_field_pointer.h:47
Example
Example of arbitrary source term for component
:
appearing in the equation under the form:

In the following example:
with:
CKP = 1.0 (in
) (return term on velocity)
MMT = 100.0 (in
) (momentum production by volume and time unit)
which yields:
st_imp[i][0][0] = volume[i] * A = - volume[i]*(rho*CKP)
st_exp[i][0] = volume[i] * B = volume[i]*(XMMT)
Body
_st_imp[i][0][0] = - cell_f_vol[i] * cpro_rom[i] * ckp;
_st_exp[i][0] = cell_f_vol[i] * mmt;
}
}
cs_real_t cs_real_3_t[3]
vector of 3 floating-point values
Definition: cs_defs.h:349
cs_real_t cs_real_33_t[3][3]
3x3 matrix of floating-point values
Definition: cs_defs.h:358
@ vel
Definition: cs_field_pointer.h:66
Example of a boussinesq momentum source term
Example to add Boussinesq source to the z component of
:
Body
const auto cvar_temperature =
CS_F_(
t)->get_val_s();
_st_exp[i][2] = cell_f_vol[i] * ro0 * beta * (cvar_temperature[i]-
t0);
}
}
@ t
Definition: cs_field_pointer.h:91
const cs_fluid_properties_t * cs_glob_fluid_properties
Definition: cs_physical_constants.cpp:462
real(c_double), pointer, save t0
reference temperature.
Definition: cstphy.f90:68
double ro0
Definition: cs_physical_constants.h:74
double t0
Definition: cs_physical_constants.h:84