41 LOGICAL,
intent(IN) :: SHIFT
42 LOGICAL,
external :: COMPARE
53 CALL check_axis(imax, imax3, xlength, dx,
'X',
'I', no_i, shift)
54 CALL check_axis(jmax, jmax3, ylength, dy,
'Y',
'J', no_j, shift)
55 CALL check_axis(kmax, kmax3, zlength, dz,
'Z',
'K', no_k, shift)
60 IF(cyclic_x .OR. cyclic_x_pd)
THEN 61 IF(dx(imin1) /= dx(imax1))
THEN 62 WRITE(
err_msg,1100)
'DX(IMIN1)',dx(imin1),
'DX(IMAX1)',dx(imax1
67 IF(cyclic_y .OR. cyclic_y_pd)
THEN 68 IF(dy(jmin1) /= dy(jmax1))
THEN 69 WRITE(
err_msg,1100)
'DY(JMIN1)',dy(jmin1),
'DY(JMAX1)',dy(jmax1
75 IF (dz(kmin1) /= dz(kmax1))
THEN 76 WRITE(
err_msg,1100)
'DZ(KMIN1)',dz(kmin1),
'DZ(KMAX1)',dz(kmax1
81 1100
FORMAT(
'Error 1100: Cells adjacent to cyclic boundaries must ', &
82 'be of same size:',/2x,a,
' = ',g12.5,/2x,a,
' = ',g12.5,/ &
83 'Please correct the mfix.dat file.')
106 use discretelement
, only: desgridsearch_imax
107 use discretelement
, only: desgridsearch_jmax
108 use discretelement
, only: desgridsearch_kmax
112 use discretelement
, only: max_radius
130 DOUBLE PRECISION :: MAX_DIAM
132 DOUBLE PRECISION :: WIDTH
139 max_diam = 2.0d0*max_radius
140 width = 3.0d0*(max_diam)
144 desgridsearch_imax = max(int(
xlength/width), 1)
145 ELSEIF((
xlength/dble(desgridsearch_imax)) < max_diam)
THEN 146 WRITE(
err_msg, 1100)
'X', max_diam, &
147 xlength/dble(desgridsearch_imax)
153 desgridsearch_jmax = max(int(
ylength/width), 1)
154 ELSEIF((
ylength/dble(desgridsearch_jmax)) < max_diam)
THEN 155 WRITE(
err_msg, 1100)
'Y', max_diam, &
156 ylength/dble(desgridsearch_jmax)
162 desgridsearch_kmax = 1
164 desgridsearch_kmax = max(int(
zlength/width), 1)
165 ELSEIF((
zlength/dble(desgridsearch_kmax)) < max_diam)
THEN 166 WRITE(
err_msg, 1100)
'Z', max_diam, &
167 zlength/dble(desgridsearch_kmax)
173 1100
FORMAT(
'Error 1100: The des search grid is too fine in the ',a1, &
174 '-direction. The',/
'maximum particle diameter is larger than',&
175 ' the cell width:',/2x,
'MAX DIAM: ',g12.5,/2x,
'CELL ', &
176 'WIDTH: ',g12.5,/
'Decrease the values for DESGRIDSEARCH in ', &
177 'the mfix.dat file.')
subroutine check_axis(NA, DIMEN, ALENGTH, DA, AXIS, AXIS_INDEX, NO_IJK, SHIFT)
double precision, dimension(0:dim_j) dy
double precision, dimension(0:dim_k) dz
subroutine init_err_msg(CALLER)
subroutine get_dxyz_from_control_points
double precision, dimension(0:dim_i) dx
integer, parameter undefined_i
character(len=line_length), dimension(line_count) err_msg
subroutine check_geometry(SHIFT)
subroutine check_geometry_des
subroutine flush_err_msg(DEBUG, HEADER, FOOTER, ABORT, LOG, CALL_TREE)