Modules | |
| module | type_scalar_field_bc_initializer |
Functions/Subroutines | |
| subroutine | type_scalar_field_bc_initializer::set_bc_u (scalar_initializer, i, b, bctype, last_coef) |
| subroutine | type_scalar_field_bc_initializer::set_bc_v (scalar_initializer, j, b, bctype, last_coef) |
| subroutine | type_scalar_field_bc_initializer::set_bc_w (scalar_initializer, k, b, bctype, last_coef) |
| subroutine | type_scalar_field_bc_initializer::initialize_scalar (scalar_initializer, region, boundary_condition, bctype, last_coef) |
| subroutine | type_scalar_field_bc_initializer::set_bc_u_shape (shape_initializer, i, b, bctype, last_coef) |
| subroutine | type_scalar_field_bc_initializer::set_bc_v_shape (shape_initializer, j, b, bctype, last_coef) |
| subroutine | type_scalar_field_bc_initializer::set_bc_w_shape (shape_initializer, k, b, bctype, last_coef) |
| subroutine | type_scalar_field_bc_initializer::initialize_shape (shape_initializer, region, boundary_condition, bctype, last_coef) |
| subroutine | type_scalar_field_bc_initializer::initialize_vector (vector_initializer, region, boundary_condition, bctype) |
| subroutine | set_bc_vector (point_index, side_coord, coords_j, coords_k, dj, dk, type, sampling, side) |
Set the side with adequate vector (Robin) boundary condition. | |
| subroutine | type_scalar_field_bc_initializer::set_bc_uniform (bctype, region, boundary_condition, coef) |
| recursive subroutine | type_scalar_field_bc_initializer::initialize_dirichlet_bc (bc_initializer, boundary_condition) |
| recursive subroutine | type_scalar_field_bc_initializer::initialize_neumann_bc (bc_initializer, boundary_condition) |
| recursive subroutine | type_scalar_field_bc_initializer::initialize_flux_bc (bc_initializer, boundary_condition) |
| recursive subroutine | type_scalar_field_bc_initializer::initialize_robin_bc (bc_initializer, boundary_condition) |
| recursive subroutine | type_scalar_field_bc_initializer::initialize_wall_bc (bc_initializer, boundary_condition) |
| recursive subroutine | type_scalar_field_bc_initializer::finalize_bc_dirichlet (bc_initializer) |
| recursive subroutine | type_scalar_field_bc_initializer::finalize_bc_neumann (bc_initializer) |
| recursive subroutine | type_scalar_field_bc_initializer::finalize_bc_flux (bc_initializer) |
| recursive subroutine | type_scalar_field_bc_initializer::finalize_bc_robin (bc_initializer) |
| recursive subroutine | type_scalar_field_bc_initializer::finalize_bc_wall (bc_initializer) |
| subroutine initialize_vector::set_bc_vector | ( | integer, dimension(3), intent(in) | point_index, |
| double precision, intent(in) | side_coord, | ||
| double precision, dimension(:), intent(in) | coords_j, | ||
| double precision, dimension(:), intent(in) | coords_k, | ||
| double precision, dimension(:), intent(in) | dj, | ||
| double precision, dimension(:), intent(in) | dk, | ||
| integer, intent(in) | type, | ||
| integer, intent(in) | sampling, | ||
| class(t_boundary_condition_side), intent(inout) | side ) |
Set the side with adequate vector (Robin) boundary condition.
This function is a generic function based on the algorithm for a left side (regarding its arguments' names). It ressembles to set_bc_u and others, but in a more compact form It is based on variations of the variable point_index that is used as a trick to generate the boundary cells' barycenter. point_index(1) stands for the side axis (1, 2 or 3). point_index(2) stands for the first axis (1, 2 or 3), i.e. the first index of sidecoef. point_index(3) stands for the second axis (1, 2 or 3), i.e. the second index of sidecoef. Regarding barycenter position:
point(1) = coord_x_u(isu)point(1) = coord_x_u(ieu)point(2) = coord_y_v(jsv)point(2) = coord_y_v(jev)point(3) = coord_z_w(ksw)point(3) = coord_z_w(kew)point(point_index(2)) = coords_j(jj) is the position of the jj cell of the first axispoint(point_index(3)) = coords_k(kk) is the position of the kk cell of the second axis| [in] |
point_index: the indices of the axis: (1): side, (2) first axis, (3) second axis
| [in] |
side_coord: the coordinate of the size (e.g. coord_x_u(isu) for left)
| [in] |
coords_j: the cell coordinates of the first axis
| [in] |
coords_k: the cell coordinates of the second axis
| [in] |
dj: the cell sizes along the first axis (may be dx, dy or dz)
| [in] |
dk: the cell sizes along the second axis (may be dx, dy or dz)
| [in] |
type: the given boundary type
| [in] |
sampling: the sampling level (1=2nd order, 2=4th order)
| [in,out] |
side: the resulting filled boundary condition side