19 use discretelement
, only: des_continuum_coupled
21 use discretelement
, only: des_mmax
23 use discretelement
, only: iglobal_id
25 use discretelement
, only: des_pos_new
29 use discretelement
, only: pinc
68 DOUBLE PRECISION :: SUM_EPS
70 DOUBLE PRECISION :: PACKED_EPS
82 packed_eps = merge(0.9d0,
one,
mppic)
90 DO ijk = ijkstart3, ijkend3
92 IF(.NOT.fluid_at(ijk)) cycle
98 DO m = 1, des_mmax+
mmax 99 sum_eps = sum_eps +
ep_s(ijk,m)
103 ep_g(ijk) =
one - min(packed_eps, sum_eps)
106 rop_g(ijk) = ro_g(ijk) * ep_g(ijk)
108 IF(des_continuum_coupled)
THEN 109 IF(ep_g(ijk) <=
zero .OR. ep_g(ijk) >
one) ier = ier + 1
127 1100
FORMAT(
'Error 1100: Unphysical gas phase volume fraction ', &
128 'calculated. A .vtp',/
'file will be written and the code ', &
129 'will exit. Fluid cell details:')
131 DO ijk=ijkstart3, ijkend3
132 IF(.NOT.fluid_at(ijk)) cycle
133 IF(ep_g(ijk) >
zero .AND. ep_g(ijk) <=
one) cycle
145 des_pos_new(m,1))), trim(
ival(des_pos_new(m,2))), &
146 trim(
ival(des_pos_new(m,3)))
151 1101
FORMAT(/3x,
'Fluid Cell IJK: ',a,6x,
'I/J/K: (',a,
',',a,
',',a,
')',/&
152 t6,
'EP_G = ',g11.4,t30,
'CUT_CELL_AT = ',l1,/t6,
'PINC: ',a,t30,&
155 1102
FORMAT(/t6,
'Global ID',t30,
'Position')
157 1103
FORMAT(t6,i9,3x,
'(',a,
', ',a,
', ',a,
')')
161 1104
FORMAT(
'This is a fatal error. A particle output file (vtp) ', &
162 'will be written',/
'to aid debugging.')
integer, dimension(:), allocatable i_of
subroutine write_des_data
double precision, dimension(:), allocatable ep_g
double precision, parameter one
subroutine init_err_msg(CALLER)
integer, dimension(:), allocatable k_of
integer, dimension(:), allocatable j_of
logical, dimension(:), allocatable cut_cell_at
character(len=line_length), dimension(line_count) err_msg
double precision function ep_s(IJK, xxM)
type(iap1), dimension(:), allocatable pic
double precision, dimension(:), allocatable vol
subroutine open_pe_log(IER)
double precision, dimension(:), allocatable ro_g
double precision, dimension(:), allocatable rop_g
double precision, parameter zero
subroutine flush_err_msg(DEBUG, HEADER, FOOTER, ABORT, LOG, CALL_TREE)