28 use functions, only: im_of, ip_of, jm_of, jp_of, km_of, kp_of
30 use functions, only: is_on_mype_plus2layers
38 INTEGER,
INTENT(IN) :: L
43 INTEGER :: I, J, K, IJK
50 bc_out_n(l) = bc_out_n(l) + 1
51 DO k = bc_k_b(l), bc_k_t(l)
52 DO j = bc_j_s(l), bc_j_n(l)
53 DO i = bc_i_w(l), bc_i_e(l)
55 IF (.NOT.is_on_mype_plus2layers(i,j,k)) cycle
58 SELECT CASE (trim(bc_plane(l)))
61 bc_mout_g(l) = bc_mout_g(l) + dy(j)*
x_e(i-1)*dz(k)*&
63 bc_vout_g(l) = bc_vout_g(l) + dy(j)*
x_e(i-1)*dz(k)*&
67 bc_mout_g(l) = bc_mout_g(l) + dy(j)*
x_e(i)*dz(k)*&
69 bc_vout_g(l) = bc_vout_g(l) + dy(j)*
x_e(i)*dz(k)*&
73 bc_mout_g(l) = bc_mout_g(l) + dx(i)*
x(i)*dz(k)*&
75 bc_vout_g(l) = bc_vout_g(l) + dx(i)*
x(i)*dz(k)*&
79 bc_mout_g(l) = bc_mout_g(l) + dx(i)*
x(i)*dz(k)*&
81 bc_vout_g(l) = bc_vout_g(l) + dx(i)*
x(i)*dz(k)*&
85 bc_mout_g(l) = bc_mout_g(l) + dx(i)*dy(j)*&
87 bc_vout_g(l)=bc_vout_g(l)+dx(i)*dy(j)*&
91 bc_mout_g(l)=bc_mout_g(l)+dx(i)*dy(j)*&
93 bc_vout_g(l) = bc_vout_g(l) + dx(i)*dy(j)*&
98 SELECT CASE (trim(bc_plane(l)))
102 dz(k)*u_s(ijk2,m)*
rop_s(ijk2,m)
104 dz(k)*u_s(ijk2,m)*
ep_s(ijk2,m)
108 dz(k)*u_s(ijk,m)*
rop_s(ijk2,m)
110 dz(k)*u_s(ijk,m)*
ep_s(ijk2,m)
114 dz(k)*v_s(ijk2,m)*
rop_s(ijk2,m)
116 dz(k)*v_s(ijk2,m)*
ep_s(ijk2,m)
120 dz(k)*v_s(ijk,m)*
rop_s(ijk2,m)
122 dz(k)*v_s(ijk,m)*
ep_s(ijk2,m)
126 w_s(ijk2,m)*
rop_s(ijk2,m)
128 w_s(ijk2,m)*
ep_s(ijk2,m)
132 w_s(ijk,m)*
rop_s(ijk2,m)
134 w_s(ijk,m)*
ep_s(ijk2,m)
integer, dimension(dimension_bc) bc_k_b
double precision, dimension(dimension_bc) bc_mout_g
double precision, dimension(:,:), allocatable v_s
double precision, dimension(dimension_bc, dim_m) bc_mout_s
double precision, dimension(:), allocatable ep_g
integer, dimension(dimension_bc) bc_i_w
double precision, dimension(:,:), allocatable w_s
double precision, dimension(:), allocatable x_e
integer, dimension(dimension_bc) bc_j_n
double precision, dimension(0:dim_j) dy
double precision, dimension(0:dim_k) dz
double precision, dimension(:,:), allocatable u_s
character, dimension(dimension_bc) bc_plane
integer, dimension(dimension_bc) bc_k_t
logical, dimension(:,:,:), allocatable dead_cell_at
double precision, dimension(dimension_bc, dim_m) bc_vout_s
integer, dimension(dimension_bc) bc_j_s
double precision, dimension(:), allocatable v_g
double precision, dimension(0:dim_i) dx
double precision, dimension(:), allocatable w_g
integer, dimension(dimension_bc) bc_out_n
double precision, dimension(:), allocatable u_g
double precision function ep_s(IJK, xxM)
double precision, dimension(dimension_bc) bc_vout_g
double precision, dimension(:,:), allocatable rop_s
double precision, dimension(:), allocatable rop_g
subroutine calc_outflow(L)
integer, dimension(dimension_bc) bc_i_e
double precision, dimension(:), allocatable x