76 use functions, only: is_on_mype_plus2layers
84 INTEGER,
INTENT(IN) :: BCV
89 INTEGER :: I, J, K, IJK
94 IF (
time + 0.1d0*
dt>=bc_time(bcv) .AND. &
97 IF (bc_jet_g(bcv) == bc_jet_gh(bcv))
THEN 100 ELSEIF (bc_jet_g(bcv) ==
bc_jet_gl(bcv))
THEN 101 bc_jet_g(bcv) = bc_jet_gh(bcv)
102 bc_time(bcv) =
time + bc_dt_h(bcv)
104 bc_jet_g(bcv) = bc_jet_gh(bcv)
105 bc_time(bcv) =
time + bc_dt_h(bcv)
108 DO k = bc_k_b(bcv), bc_k_t(bcv)
109 DO j = bc_j_s(bcv), bc_j_n(bcv)
110 DO i = bc_i_w(bcv), bc_i_e(bcv)
111 IF (.NOT.is_on_mype_plus2layers(i,j,k)) cycle
117 SELECT CASE (trim(bc_plane(bcv)))
120 u_g(ijk2) = bc_jet_g(bcv)
122 u_g(ijk) = bc_jet_g(bcv)
125 v_g(ijk2) = bc_jet_g(bcv)
127 v_g(ijk) = bc_jet_g(bcv)
130 w_g(ijk2) = bc_jet_g(bcv)
132 w_g(ijk) = bc_jet_g(bcv)
166 INTEGER,
INTENT(IN) :: BCV
178 IF (
time + 0.1d0*
dt>=bc_time(bcv) .OR. &
180 bc_time(bcv) =
time + bc_dt_0(bcv)
183 bc_mout_g(bcv) = abs(bc_mout_g(bcv))/bc_out_n(bcv)
189 bc_mout_g(bcv) =
zero 192 bc_mout_s(bcv,m) = abs(bc_mout_s(bcv,m))/bc_out_n(bcv)
196 bc_mout_s(bcv,m) =
zero 203 1000
FORMAT(/,1x,
'Average outflow rates at BC No. ',i2,
' At Time = ',g12
204 FORMAT(3x,
'Gas : Mass flow = ',g12.5,
' Volumetric flow = ',g12
205 FORMAT(3x,
'Solids-',i1,
' : Mass flow = ',g12.5,&
206 ' Volumetric flow = ',g12.5)
240 use functions, only: is_on_mype_plus2layers
245 use run, only: kt_type_enum, ghd_2007
252 INTEGER,
INTENT(IN) :: BCV
257 INTEGER :: I, J, K, IJK
263 DOUBLE PRECISION :: lvel_s
269 IF (
time + 0.1d0*
dt>=bc_time(bcv) .OR. &
271 bc_time(bcv) =
time + bc_dt_0(bcv)
274 bc_mout_g(bcv) = abs(bc_mout_g(bcv))/bc_out_n(bcv)
281 bc_mout_s(bcv,m) = abs(bc_mout_s(bcv,m))/bc_out_n(bcv)
291 IF (bc_massflow_g(bcv) /=
undefined)
THEN 293 SELECT CASE (trim(bc_plane(bcv)))
295 bc_u_g(bcv) = bc_u_g(bcv)*bc_massflow_g(bcv)/&
298 bc_v_g(bcv) = bc_v_g(bcv)*bc_massflow_g(bcv)/&
301 bc_w_g(bcv) = bc_w_g(bcv)*bc_massflow_g(bcv)/&
305 ELSEIF (bc_volflow_g(bcv) /=
undefined)
THEN 307 SELECT CASE (trim(bc_plane(bcv)))
309 bc_u_g(bcv) = bc_u_g(bcv)*bc_volflow_g(bcv)/&
312 bc_v_g(bcv) = bc_v_g(bcv)*bc_volflow_g(bcv)/&
315 bc_w_g(bcv) = bc_w_g(bcv)*bc_volflow_g(bcv)/&
321 bc_mout_g(bcv) =
zero 327 IF (bc_massflow_s(bcv,m) /=
undefined)
THEN 329 SELECT CASE (trim(bc_plane(bcv)))
331 bc_u_s(bcv,m) = bc_u_s(bcv,m)*&
332 bc_massflow_s(bcv,m)/bc_mout_s(bcv,m)
334 bc_v_s(bcv,m) = bc_v_s(bcv,m)*&
335 bc_massflow_s(bcv,m)/bc_mout_s(bcv,m)
337 bc_w_s(bcv,m) = bc_w_s(bcv,m)*&
338 bc_massflow_s(bcv,m)/bc_mout_s(bcv,m)
341 ELSEIF (bc_volflow_s(bcv,m) /=
undefined)
THEN 343 SELECT CASE (trim(bc_plane(bcv)))
345 bc_u_s(bcv,m) = bc_u_s(bcv,m)*&
348 bc_v_s(bcv,m) = bc_v_s(bcv,m)*&
351 bc_w_s(bcv,m) = bc_w_s(bcv,m)*&
357 bc_mout_s(bcv,m) =
zero 370 DO k = bc_k_b(bcv), bc_k_t(bcv)
371 DO j = bc_j_s(bcv), bc_j_n(bcv)
372 DO i = bc_i_w(bcv), bc_i_e(bcv)
373 IF (.NOT.is_on_mype_plus2layers(i,j,k)) cycle
376 SELECT CASE (trim(bc_plane(bcv)))
379 u_g(ijk2) = bc_u_g(bcv)
381 u_g(ijk) = bc_u_g(bcv)
384 v_g(ijk2) = bc_v_g(bcv)
386 v_g(ijk) = bc_v_g(bcv)
389 w_g(ijk2) = bc_w_g(bcv)
391 w_g(ijk) = bc_w_g(bcv)
394 SELECT CASE (trim(bc_plane(bcv)))
397 u_s(ijk2,m) = bc_u_s(bcv,m)
399 u_s(ijk,m) = bc_u_s(bcv,m)
402 v_s(ijk2,m) = bc_v_s(bcv,m)
404 v_s(ijk,m) = bc_v_s(bcv,m)
407 w_s(ijk2,m) = bc_w_s(bcv,m)
409 w_s(ijk,m) = bc_w_s(bcv,m)
414 IF(kt_type_enum == ghd_2007)
THEN 421 SELECT CASE (trim(bc_plane(bcv)))
424 bc_u_s(bcv,m)*
rop_s(ijk,m)
427 bc_v_s(bcv,m)*
rop_s(ijk,m)
430 bc_w_s(bcv,m)*
rop_s(ijk,m)
440 SELECT CASE (trim(bc_plane(bcv)))
464 1000
FORMAT(/,1x,
'Average outflow rates at BC No. ',i2,
' At Time = ',g12
465 FORMAT(3x,
'Gas : Mass flow = ',g12.5,
' Volumetric flow = ',g12
466 FORMAT(3x,
'Solids-',i1,
' : Mass flow = ',g12.5,&
467 ' Volumetric flow = ',g12.5)
integer, dimension(dimension_bc) bc_k_b
double precision, dimension(dimension_bc) bc_mout_g
double precision, dimension(dimension_bc) bc_time
double precision, dimension(:,:), allocatable v_s
double precision, dimension(dimension_bc) bc_dt_0
double precision, dimension(dimension_bc) bc_volflow_g
double precision, dimension(dimension_bc, dim_m) bc_mout_s
double precision, dimension(dimension_bc) bc_dt_l
subroutine set_bc1_report_outflow(BCV)
integer, dimension(dimension_bc) bc_i_w
double precision, dimension(:,:), allocatable w_s
integer, dimension(dimension_bc) bc_j_n
double precision, dimension(dimension_bc, dim_m) bc_w_s
double precision, dimension(dimension_bc) bc_jet_gh
integer, parameter dimension_bc
integer, dimension(dimension_bc) bc_type_enum
double precision, parameter undefined
double precision, dimension(dimension_bc) bc_v_g
double precision, dimension(:,:), allocatable u_s
character, dimension(dimension_bc) bc_plane
double precision, dimension(dimension_bc, dim_m) bc_volflow_s
subroutine set_bc1_jet(BCV)
integer, dimension(dimension_bc) bc_k_t
logical, dimension(:,:,:), allocatable dead_cell_at
double precision, dimension(dimension_bc, dim_m) bc_vout_s
double precision, parameter small_number
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
integer, parameter unit_log
double precision, dimension(dimension_bc) bc_dt_h
double precision, dimension(dimension_bc, dim_m) bc_v_s
integer, dimension(dimension_bc) bc_out_n
double precision, dimension(dimension_bc) bc_massflow_g
double precision, dimension(dimension_bc, dim_m) bc_massflow_s
double precision, dimension(dimension_bc) bc_u_g
double precision, dimension(dimension_bc, dim_m) bc_u_s
double precision, dimension(:), allocatable u_g
double precision, dimension(dimension_bc) bc_vout_g
subroutine set_bc1_adjust_outflow(BCV)
double precision, dimension(:,:), allocatable rop_s
double precision, dimension(dimension_bc) bc_jet_gl
double precision, dimension(dimension_bc) bc_jet_g
subroutine set_outflow(BCV)
double precision, dimension(dimension_bc) bc_w_g
subroutine calc_outflow(L)
integer, dimension(dimension_bc) bc_i_e
double precision, parameter zero