File: /nfs/home/0/users/jenkins/mfix.git/model/des/particle_filter_mod.f

1     !vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv!
2     !                                                                      !
3     !   Module name: DISCRETELEMENT                                        !
4     !   Purpose: DES mod file                                              !
5     !                                                                      !
6     !^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^!
7           MODULE PARTICLE_FILTER
8     
9           IMPLICIT NONE
10     
11     ! Switch to decide whether to call drag_gs or to call des_drag_gs via
12     ! drag_fgs to calculate the gas-solids drag coefficient.  if false
13     ! then drag_gs is used, otherwise des_drag_gs via drag_fgs is used
14     ! At a more fundamental level, when des_interp_on is true, then the
15     ! drag on particle is obtained by interpolating the carrier flow
16     ! velocity at the particle location. Similarly the drag force on the
17     ! Eulerian grid is obtained by backward of interpolaiton of the above
18     ! calculated drag force. See the DEM doc for more details.
19           LOGICAL DES_INTERP_ON
20     
21     ! Switch to decide if the mean fields (such as solids volume fraction
22     ! and mean solids velocity) are obtained by interpolation or by the more
23     ! crude cell artihmetic averages. For MPPIC, this will switch will always
24     ! be true.
25           LOGICAL DES_INTERP_MEAN_FIELDS
26     
27     ! Flag to check if mass is conserved between discrete and continuum
28     ! representations when mean fields are computed by backward interpolation.
29     ! Critical for cut-cells.
30           LOGICAL DES_REPORT_MASS_INTERP
31     
32     
33           LOGICAL :: DES_DIFFUSE_MEAN_FIELDS
34           DOUBLE PRECISION :: DES_DIFFUSE_WIDTH
35     
36           DOUBLE PRECISION :: DES_INTERP_WIDTH
37           DOUBLE PRECISION :: FILTER_WIDTH_INTERP
38     
39           CHARACTER(len=32) :: DES_INTERP_SCHEME
40     
41           INTEGER :: DES_INTERP_SCHEME_ENUM
42           INTEGER, PARAMETER :: DES_INTERP_NONE  = 0
43           INTEGER, PARAMETER :: DES_INTERP_GARG  = 1
44           INTEGER, PARAMETER :: DES_INTERP_DPVM  = 2
45           INTEGER, PARAMETER :: DES_INTERP_GAUSS = 3
46     
47     
48           DOUBLE PRECISION :: FILTER_WIDTH_INTERPx3, OoFILTER_VOL
49     
50           INTEGER :: FILTER_SIZE = 0
51           INTEGER, DIMENSION(:,:), ALLOCATABLE :: FILTER_CELL
52           DOUBLE PRECISION, DIMENSION(:,:), ALLOCATABLE :: FILTER_WEIGHT
53     
54     
55           END MODULE PARTICLE_FILTER
56