The Examples function is required to compute a volume exchange coefficient for SYRTHES coupling.
Examples
The following code blocks show two examples of computation of a volume exchange coefficient.
Example 1
The first example corresponds to a constant volume exchange coefficient:
h_vol[i] = hvol_cst;
}
double cs_real_t
Floating-point value.
Definition: cs_defs.h:319
int cs_lnum_t
local mesh entity id
Definition: cs_defs.h:313
Example 2
The second example corresponds to a variable volume exchange coefficient defined as follows :
with S is the surface area where exchanges take place by unit of volume and
First, the values of the different fields that will be needed for the computation of the volume exchange coefficient are retrieved.
const cs_real_t *cpro_cp = NULL, *cpro_viscls = NULL;
cp_step = 1;
}
else {
}
if (viscl_id > -1) {
viscls_step = 1;
}
else {
cpro_viscls = &visls_0;
}
const int is_temperature
cs_real_t cs_real_3_t[3]
vector of 3 floating-point values
Definition: cs_defs.h:334
cs_field_t * cs_field_by_id(int id)
Return a pointer to a field based on its id.
Definition: cs_field.c:2320
int cs_field_get_key_int(const cs_field_t *f, int key_id)
Return a integer value for a given key associated with a field.
Definition: cs_field.c:3068
double cs_field_get_key_double(const cs_field_t *f, int key_id)
Return a floating point value for a given key associated with a field.
Definition: cs_field.c:3248
int cs_field_key_id(const char *name)
Return an id associated with a given key name.
Definition: cs_field.c:2574
@ mu
Definition: cs_field_pointer.h:103
@ vel
Definition: cs_field_pointer.h:68
@ cp
Definition: cs_field_pointer.h:100
@ rho
Definition: cs_field_pointer.h:97
#define CS_F_(e)
Macro used to return a field pointer by its enumerated value.
Definition: cs_field_pointer.h:51
const cs_fluid_properties_t * cs_glob_fluid_properties
Definition: cs_physical_constants.c:424
cs_field_t * cs_thermal_model_field(void)
Definition: cs_thermal_model.c:216
real(c_double), pointer, save cp0
reference specific heat.
Definition: cstphy.f90:236
Field descriptor.
Definition: cs_field.h:131
cs_real_t * val
Definition: cs_field.h:152
double cp0
Definition: cs_physical_constants.h:81
Then the coefficient can be computed and assigned to all cells.
if (is_temperature) {
lambda = cpro_viscls[c_id*viscls_step];
}
else {
lambda_over_cp = cpro_viscls[c_id*viscls_step];
}
cs_real_t nu = 0.023 * pow(re, 0.8) * pow(pr, 1./3.);
h_vol[i] = h_corr * sexcvo;
}
@ lambda
Definition: cs_field_pointer.h:106
static cs_real_t cs_math_3_norm(const cs_real_t v[3])
Compute the euclidean norm of a vector of dimension 3.
Definition: cs_math.h:440
double precision, save fmax
Definition: coincl.f90:184
Not that in this example, no test is done on the coupling id or Syrthes instance name. The corresponding arguments can be used to apply specific computations in cas of multiple couplings.
Also, although a test is done to check if the scalar behaves as a temperature regarding multiplication by Cp for more generality, the Syrthes volume coupling currently only handles the temperature variable.