1 !vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvC 2 ! C 3 ! Module: constant C 4 ! Purpose: Common block containing physical constants and constants C 5 ! used in the numerical technique C 6 ! C 7 ! Author: M. Syamlal Date: 5-FEB-92 C 8 ! Reviewer: Date: dd-mmm-yy C 9 ! C 10 ! Literature/Document References: C 11 ! Gera, D., Syamlal, M., and O'Brien, T. J., "Hydrodynamics of C 12 ! particle segregation in fluidized beds", Int. J. of Multiphase C 13 ! Flow, Vol 30, 2004, pp. 419-428. C 14 ! Johnson, P. C., and Jackson, R., "Frictional-collisional C 15 ! constitutive relations for granluar materials, with application C 16 ! to plane shearing", JFM, Vol. 176, 1987, pp. 67-93. C 17 ! C 18 !^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^C 19 20 MODULE constant 21 22 23 ! Modules 24 !---------------------------------------------------------------------// 25 Use param, only: dim_m, dimension_c 26 !---------------------------------------------------------------------// 27 28 ! Packed bed (close packed) void fraction 29 DOUBLE PRECISION :: EP_star 30 31 ! parameters used in the correlation to calculate the local maximum 32 ! solids volume fraction for a polydisperse powder: ep_s_max_ratio, 33 ! d_p_ratio and ep_s_max, m_max 34 DOUBLE PRECISION :: ep_s_max_ratio(DIM_M, DIM_M), & 35 d_p_ratio(DIM_M, DIM_M) 36 ! maximum packing volume fraction for indicate particulate phase 37 ! its value will default to 1-ep_star 38 DOUBLE PRECISION :: ep_s_max(DIM_M) 39 ! Index to rearrange particles from coarsest to finest for use in 40 ! function CALC_ep_star(IJK,IER) 41 INTEGER :: M_MAX(DIM_M) 42 43 ! SWITCH enables us to turn on/off modifications to certain kinetic 44 ! theory models for granular solids (i.e. no gas) that have been 45 ! adjusted to account for the presence of a fluid phase. If one wants 46 ! to simulate gas-particle flow then set SWITCH=1. As a result, the 47 ! effects of drag on particle viscosity/conductivity will be 48 ! incorporated. Additional gas-solids terms may also have been 49 ! introduced into the granular energy balance depending on the KT 50 ! model (see source_granular_energy for details). If we want to 51 ! simulate pure granular flow without the effects of an interstitial 52 ! gas, set SWITCH=0. 53 DOUBLE PRECISION, PARAMETER :: SWITCH=1.d0 54 55 ! ALPHA is a parameter introduced into the theory of Lun_1984 for 56 ! calculating solids viscosity. It also appears when invoking the 57 ! solids frictional model FRICTION, which uses the Lun et al. 58 ! theory. The factor (2+alpha)/3 was eliminated in the complete 59 ! analysis of Lun et al. but was introduced as an adjustable 60 ! parameter. To recover the original theory alpha should be set to 61 ! 1. For details see Johnson and Jackson, 1987. 62 DOUBLE PRECISION, PARAMETER :: ALPHA = 1.6d0 63 64 65 ! parameter used in the solids-solids drag model invoked in the 66 ! default KT (Lun_1984). For details see Gera et al., 2004 67 DOUBLE PRECISION :: SEGREGATION_SLOPE_COEFFICIENT 68 69 ! SWITCH_IA enforces consistency in the solids viscosity and 70 ! conductivity so that the results using 2 or more identical 71 ! solids phases are the same as an equivalent single solids 72 ! phase. Set to false to use original (published) theory of 73 ! Iddir-Arastoopour. 74 LOGICAL, PARAMETER :: SWITCH_IA = .TRUE. 75 76 77 ! PHIP = Specularity coefficient associated with particle wall 78 ! collisions 79 DOUBLE PRECISION :: PHIP 80 ! PHIP0 specularity coefficient for r->0 81 double precision :: phip0 82 ! k4phi k=7/2*mu*(1+e_w) 83 double precision :: k4phi 84 ! e_w = particle-wall coefficient of restitution 85 DOUBLE PRECISION :: e_w 86 87 ! Parameters used in the solids frictional model FRICTION: 88 ! - Fr, N_Pc, D_Pc, and EPS_F_min are all used in the equation for 89 ! Pc, the critical solids pressure: 90 ! Fr = Constant with dyne/cm2 units of pressure. It will be 91 ! automatically converted to Pa in calc_mu_s.f 92 ! N_Pc = exponent in numerator 93 ! D_Pc = exponent in denominator 94 ! EPS_f_min = minimum solids fraction above which friction 95 ! kicks in 96 ! - N_Pf appears as an exponent in the equation of state for Pf, the 97 ! frictional pressure: 98 ! - delta is a small deviation in void fraction near packing where 99 ! Pc and dPc/deps are calculated. 100 DOUBLE PRECISION :: EPS_f_min 101 DOUBLE PRECISION :: Fr, N_Pc, D_Pc, N_Pf, delta 102 PARAMETER(Fr = 0.5d0, N_Pc=2d0, D_Pc=5d0, N_Pf=1.03d0, delta=1d-2) 103 104 ! Coefficient of restitution 105 DOUBLE PRECISION :: C_e 106 107 ! (1+C_e)/2. 108 DOUBLE PRECISION :: eta 109 110 ! particle-type dependent rest. coef. for use in GHD theory 111 DOUBLE PRECISION :: r_p(DIM_M, DIM_M) 112 113 ! Coeficient of friction 114 DOUBLE PRECISION :: C_f 115 116 ! Angle of internal friction (degrees) 117 DOUBLE PRECISION :: Phi 118 119 ! Angle of wall-particle friction (degrees) 120 DOUBLE PRECISION :: Phi_w 121 122 ! (k=) Sin(PHI) in frictional-flow stress formulation 123 DOUBLE PRECISION :: Sin_Phi 124 125 ! Sin^2(PHI) in plastic-flow stress formulation 126 DOUBLE PRECISION :: Sin2_Phi 127 128 ! (3-2k^2)/6k^2 in Plastic-flow stress formulation 129 DOUBLE PRECISION :: F_Phi 130 131 ! tan(PHI_w) 132 DOUBLE PRECISION :: tan_Phi_w 133 134 ! Excluded volume (Boyle-Massoudi stress tensor) 135 DOUBLE PRECISION :: V_ex 136 137 ! Coefficients for calibrating Syamlal-O'Brien drag correlation with 138 ! Umf data 139 DOUBLE PRECISION :: drag_c1, drag_d1 140 141 ! success-factor for aggregation and breakage 142 DOUBLE PRECISION :: AGGREGATION_EFF 143 DOUBLE PRECISION :: BREAKAGE_EFF 144 145 ! UNIT conversion factor for pressure (Barye to Pa if SI) 146 DOUBLE PRECISION :: to_SI 147 148 ! Gravitational acceleration 149 DOUBLE PRECISION :: GRAVITY, GRAVITY_X, GRAVITY_Y, GRAVITY_Z 150 151 ! Universal gas constant 152 DOUBLE PRECISION :: GAS_CONST 153 154 ! Universal gas constant in cal/mol.K 155 DOUBLE PRECISION, PARAMETER :: GAS_CONST_cal = 1.987207D0 156 157 ! Pi, the ubiquitous irrational number 158 DOUBLE PRECISION, PARAMETER :: Pi = 4.D0*ATAN(1.D0) 159 160 ! Square root of Pi 161 DOUBLE PRECISION, PARAMETER :: SQRT_Pi = 2.D0*SQRT(ATAN(1.D0)) 162 163 ! Maximum pressure correction allowed in one iteration 164 DOUBLE PRECISION :: MAX_DELP 165 166 ! User defined constants 167 DOUBLE PRECISION :: C (DIMENSION_C) 168 169 ! Names of user defined constants (for output file only) 170 CHARACTER(LEN=20) :: C_NAME (DIMENSION_C) 171 172 ! Move these to turb at some point: 173 ! Scale factor for gas turbulence length scale 174 DOUBLE PRECISION :: K_scale 175 176 ! Default value for characteristic length for turbulence 177 DOUBLE PRECISION :: L_scale0 178 179 ! Maximum value of turbulent viscosity 180 DOUBLE PRECISION :: MU_gmax 181 182 183 END MODULE constant 184