Initialization and finalization
Initialization and finalization is similar to that of the base examples
Example 1
For boundary faces of zone "1" assign an inlet and assign a cathode for "electric" variables.
{
rcodcl1_vel[n_b_faces*0 + face_id] = 0;
rcodcl1_vel[n_b_faces*1 + face_id] = 0;
rcodcl1_vel[n_b_faces*2 + face_id] = 0;
for(int ii = 0; ii < 3; ii++)
uref2,
dhy,
rhomoy,
viscl0);
potva->bc_coeffs->icodcl[face_id] = 3;
potva->bc_coeffs->rcodcl3[face_id] = 0;
potva->bc_coeffs->icodcl[n_b_faces + face_id] = 3;
potva->bc_coeffs->rcodcl3[n_b_faces + face_id] = 0;
potva->bc_coeffs->icodcl[n_b_faces*2 + face_id] = 3;
potva->bc_coeffs->rcodcl3[n_b_faces*2 + face_id] = 0;
}
}
}
Example 2
For boundary faces of zone "2" assign an free outlet and example of electrode for Joule Effect by direct conduction.
{
potr->bc_coeffs->icodcl[face_id] = 1;
}
else {
potr->bc_coeffs->rcodcl1[face_id] = 500.;
}
}
poti->bc_coeffs->icodcl[face_id] = 1;
poti->bc_coeffs->rcodcl1[face_id] = sqrt(3)*500*
coejou;
}
else {
poti->bc_coeffs->rcodcl1[face_id] = sqrt(3)*500.;
}
}
}
Example 3
For boundary faces of zone "2" assign a free outlet and example of anode for electric arc.
{
potr->bc_coeffs->icodcl[face_id] = 1;
else
potr->bc_coeffs->rcodcl1[face_id] = 1000.;
}
Example 4
For boundary faces of zone "2" assign a wall and example of potential vector Dirichlet condition
{
if ( (
cdgfbo[face_id][0] <= 249e-2)
|| (
cdgfbo[face_id][0] >= 249e-2)
|| (
cdgfbo[face_id][2] <= 249e-2)
|| (
cdgfbo[face_id][2] >= 249e-2)) {
const cs_lnum_t c_id = b_face_cells[face_id];
potva->bc_coeffs->icodcl[face_id] = 1;
potva->bc_coeffs->rcodcl1[face_id] = cvara_potva[c_id][0];
potva->bc_coeffs->icodcl[n_b_faces + face_id] = 1;
potva->bc_coeffs->rcodcl1[n_b_faces + face_id] = cvara_potva[c_id][1];
potva->bc_coeffs->icodcl[n_b_faces*2 + face_id] = 1;
potva->bc_coeffs->rcodcl1[n_b_faces*2 + face_id]
= cvara_potva[c_id][2];
}
}
}
Example 5
For boundary faces of zone "51" assign a wall and restriking model for electric arc (anode boundaray condition).
{
potr->bc_coeffs->icodcl[face_id] = 1;
if (z1 <= 0.0)
z1 = 0.0;
if (z2 >= 2e-2)
z2 = 2e-2;
if ((
cdgfbo[face_id][2] >= z1) && (
cdgfbo[face_id][2] <= z2)) {
}
else {
}
}
}
potva->bc_coeffs->icodcl[n_b_faces*0 + face_id] = 3;
potva->bc_coeffs->icodcl[n_b_faces*1 + face_id] = 3;
potva->bc_coeffs->icodcl[n_b_faces*2 + face_id] = 3;
potva->bc_coeffs->rcodcl3[n_b_faces*0 + face_id] = 0;
potva->bc_coeffs->rcodcl3[n_b_faces*1 + face_id] = 0;
potva->bc_coeffs->rcodcl3[n_b_faces*2 + face_id] = 0;
}
}
Example 6
For boundary faces of zone "4" assign a symmetry.
{
poti->bc_coeffs->icodcl[face_id] = 1;
poti->bc_coeffs->rcodcl1[face_id] = 0.;
}
}