User subroutine dedicated the use of ALE (Arbitrary Lagrangian Eulerian) Method:
ale_bc_type
, impale
) and codes(icodcl
, rcodcl
) for mesh velocity.Here one defines boundary conditions for the deforming mesh on a per-face basis.
Detailed explanations will be found in the theory guide.
Boundary conditions may be assigned in two ways.
One defines a code in the ale_bc_type
array (of dimensions number of boundary faces). The available codes are:
ale_bc_type
[face_id] = CS_BOUNDARY_ALE_FIXED: the face face_id
is considered to be motionless. A zero Dirichlet boundary condition is automatically imposed on the mesh velocity. Moreover the displacement of corresponding vertices will automatically be set to 0, unless the user has modified the icodcl
condition of the mesh velocity component.ale_bc_type
[face_id] = CS_BOUNDARY_ALE_SLIDING: The mesh slides on the corresponding face face_id
. The normal component of the mesh velocity is automatically set to 0. A homogeneous Neumann condition is automatically prescribed for the other components, as is the case for "Symmetry" fluid condition.ale_bc_type
[face_id] = CS_BOUNDARY_ALE_IMPOSED_VEL: the mesh velocity is imposed on face face_id
. Thus, the mesh velocity's bc_coeffs->rcodcl1
values arrays need to be set.The value of icodcl
for the "mesh_velocity" field's bc_coeffs
structure is taken from the following:
The values of the 3 rcodcl
components are:
rcodcl1
[face_id]: Dirichlet for the variable if icodcl
[face_id] = 1 The dimension of rcodcl1
[face_id] is in rcodcl2
[face_id]: "exterior" exchange coefficient; mmake no sense for the mesh velocity, so can be ignored.rcodcl3
[face_id]: Flux density (in rcodcl3
[face_id] = 0. enables one to specify a homogeneous Neuman condition on mesh velocity. Any other value make no sense in this context.If the user assigns a value to ale_bc_type
equal to CS_BOUNDARY_ALE_FIXED, CS_BOUNDARY_ALE_SLIDING, or CS_BOUNDARY_ALE_IMPOSED_VEL and does not modify icodcl
(zero value by default), ale_bc_type
will define the boundary condition type.
To the contrary, if the user prescribes icodcl
[face_id] (nonzero) for the mesh velocity, the values assigned to rcodcl* will be used for the considered face.
The Boundary conditions for ALE section of the user guide provides additional details.
Here is the list of examples: