102 IF (.NOT.is_on_mype_plus2layers(i1,j1,k1)) cycle
104 ijk = funijk(i1,j1,k1)
115 IF (.NOT.is_on_mype_plus2layers(i1,j1,k1)) cycle
117 ijk = funijk(i1,j1,k1)
128 IF (.NOT.is_on_mype_plus2layers(i1,j1,k1)) cycle
130 ijk = funijk(i1,j1,k1)
141 IF (.NOT.is_on_mype_plus2layers(i1,j1,k1)) cycle
143 ijk = funijk(i1,j1,k1)
154 IF (.NOT.is_on_mype_plus2layers(i1,j1,k1)) cycle
156 ijk = funijk(i1,j1,k1)
178 IF (.NOT.is_on_mype_plus2layers(i1,j1,k1)) cycle
180 ijk = funijk(i1,j1,k1)
189 include
'functions.inc' 240 INTEGER,
INTENT(IN) :: II1, II2
242 INTEGER,
INTENT(IN) :: JJ1, JJ2
244 INTEGER,
INTENT(IN) :: KK1, KK2
246 INTEGER,
INTENT(IN) :: BC_JJ_PSL
251 DOUBLE PRECISION :: SIGN0
254 INTEGER :: IJK, IMJK, IJMK, IJKM, IPJK, IJPK, IJKP
255 INTEGER :: I1, I2, J1, J2, K1, K2
283 IF(ns_wall_at(ijk))
THEN 291 IF (wall_at(ijk))
THEN 300 IF (.NOT.wall_at(imjk))
THEN 303 IF (wall_at(ijpk))
THEN 304 v_g(ijk) = sign0*
v_g(lfluid)
305 IF(bc_jj_psl==0)
CALL equal(
v_s,ijk,sign0,
v_s,lfluid
308 IF (wall_at(ijkp))
THEN 309 w_g(ijk) = sign0*
w_g(lfluid)
310 IF(bc_jj_psl==0)
CALL equal(
w_s,ijk,sign0,
w_s,lfluid
315 IF (.NOT.wall_at(ipjk))
THEN 318 IF (wall_at(ijpk))
THEN 319 v_g(ijk) = sign0*
v_g(lfluid)
320 IF(bc_jj_psl==0)
CALL equal(
v_s,ijk,sign0,
v_s,lfluid
323 IF (wall_at(ijkp))
THEN 324 w_g(ijk) = sign0*
w_g(lfluid)
325 IF(bc_jj_psl==0)
CALL equal(
w_s,ijk,sign0,
w_s,lfluid
331 IF (.NOT.wall_at(ijmk))
THEN 334 IF (wall_at(ipjk))
THEN 335 u_g(ijk) = sign0*
u_g(lfluid)
336 IF(bc_jj_psl==0)
CALL equal(
u_s,ijk,sign0,
u_s,lfluid
339 IF (wall_at(ijkp))
THEN 340 w_g(ijk) = sign0*
w_g(lfluid)
341 IF(bc_jj_psl==0)
CALL equal(
w_s,ijk,sign0,
w_s,lfluid
346 IF (.NOT.wall_at(ijpk))
THEN 349 IF (wall_at(ipjk))
THEN 350 u_g(ijk) = sign0*
u_g(lfluid)
351 IF(bc_jj_psl==0)
CALL equal(
u_s,ijk,sign0,
u_s,lfluid
354 IF (wall_at(ijkp))
THEN 355 w_g(ijk) = sign0*
w_g(lfluid)
356 IF(bc_jj_psl==0)
CALL equal(
w_s,ijk,sign0,
w_s,lfluid
363 IF (.NOT.wall_at(ijkm))
THEN 366 IF (wall_at(ipjk))
THEN 367 u_g(ijk) = sign0*
u_g(lfluid)
368 IF (bc_jj_psl == 0)
CALL equal(
u_s, ijk, &
372 IF (wall_at(ijpk))
THEN 373 v_g(ijk) = sign0*
v_g(lfluid)
374 IF (bc_jj_psl == 0)
CALL equal(
v_s, ijk, &
380 IF (.NOT.wall_at(ijkp))
THEN 383 IF (wall_at(ipjk))
THEN 384 u_g(ijk) = sign0*
u_g(lfluid)
385 IF (bc_jj_psl == 0)
CALL equal(
u_s, ijk, &
389 IF (wall_at(ijpk))
THEN 390 v_g(ijk) = sign0*
v_g(lfluid)
391 IF (bc_jj_psl == 0)
CALL equal(
v_s, ijk, &
406 include
'functions.inc' 419 SUBROUTINE equal(ARRAY1, IJK1, SIGN0, ARRAY2, IJK2)
426 DOUBLE PRECISION,
INTENT(OUT) :: ARRAY1 (
dimension_3, *)
428 DOUBLE PRECISION,
INTENT(IN) :: ARRAY2 (
dimension_3, *)
430 INTEGER,
INTENT(IN) :: IJK1
432 INTEGER,
INTENT(IN) :: IJK2
435 DOUBLE PRECISION,
INTENT(IN) :: SIGN0
442 array1(ijk1,:
mmax) = sign0*array2(ijk2,:
mmax)
integer, dimension(dimension_bc) bc_k_b
double precision, dimension(:,:), allocatable v_s
double precision, parameter one
integer, dimension(dimension_bc) bc_i_w
double precision, dimension(:,:), allocatable w_s
integer, dimension(dimension_bc) bc_j_n
integer, parameter dimension_bc
integer, dimension(dimension_bc) bc_type_enum
double precision, dimension(:,:), allocatable u_s
integer, dimension(dimension_bc) bc_k_t
logical, dimension(:,:,:), allocatable dead_cell_at
integer, dimension(dimension_bc) bc_j_s
double precision, dimension(:), allocatable v_g
logical, dimension(dimension_bc) bc_defined
double precision, dimension(:), allocatable w_g
subroutine set_wall_bc1(II1, II2, JJ1, JJ2, KK1, KK2, BC_JJ_PSL)
subroutine equal(ARRAY1, IJK1, SIGN0, ARRAY2, IJK2)
double precision, dimension(:), allocatable u_g
integer, dimension(dimension_bc) bc_jj_ps
integer, dimension(dimension_bc) bc_i_e
double precision, parameter zero