1 !vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvC 2 ! C 3 ! Subroutine: SET_CONSTANTS C 4 ! Purpose: This module sets all the constants C 5 ! C 6 ! Author: M. Syamlal Date: 30-JAN-92 C 7 ! Reviewer: P. Nicoletti, W. Rogers, S. Venkatesan Date: 31-JAN-92 C 8 ! C 9 ! Revision Number: 1 C 10 ! Purpose: compute constants for plastic_flow stress terms C 11 ! Author: M. Syamlal Date: 11-FEB-93 C 12 ! C 13 ! Revision Number: 2 C 14 ! Purpose: Add K_scale C 15 ! Author: W. Sams Date: 03-MAY-93 C 16 ! C 17 ! Revision Number: 3 C 18 ! Purpose: Add to_SI to change from CGS to SI in some routines C 19 ! Author: S. Dartevelle Date: 03-MAY-02 C 20 ! C 21 ! Literature/Document References: C 22 ! C 23 ! Variables referenced: UNITS C 24 ! Variables modified: GRAVITY, GAS_CONST, K_scale, Pi, SQRT_Pi, C 25 ! ETA, tan_phi_w, sin_phi, sin2_phi, f_phi C 26 ! lam_hys C 27 ! C 28 ! Local variables: C 29 ! C 30 !^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^C 31 32 SUBROUTINE SET_CONSTANTS 33 34 !----------------------------------------------- 35 ! Modules 36 !----------------------------------------------- 37 USE param 38 USE param1 39 USE fldvar 40 USE visc_s 41 USE energy 42 USE geometry 43 USE indices 44 USE physprop 45 USE constant 46 USE run 47 USE funits 48 USE drag 49 USE compar 50 IMPLICIT NONE 51 !----------------------------------------------- 52 ! Local variables 53 !----------------------------------------------- 54 55 !----------------------------------------------- 56 57 ! Note that the cell flags are not set when this routine is called. 58 59 ! Dimensionless constants 60 K_SCALE = .08D0 ! this actually isn't used anywhere... 61 62 ! Enter the value of all constants in various units (CGS or SI) 63 IF (UNITS == 'SI') THEN 64 IF (GRAVITY == UNDEFINED) GRAVITY = 9.80665D0 ! m/s2 65 GAS_CONST = 8314.56D0 !Pa.m3/kmol.K, or kg m2/s2 kmol K (Perry and Green, 1984) 66 to_SI = 0.1D0 !to convert dyne/cm2 to Pa, see s_pr2.inc, see calc_mu_g.f 67 IF (LAM_HYS == UNDEFINED) LAM_HYS = 0.000001d0 ! m 68 ELSEIF (UNITS == 'CGS') THEN 69 IF (GRAVITY == UNDEFINED) GRAVITY = 980.665D0 !cm/s2 70 GAS_CONST = 8314.56D4 !g.cm2/s2.mol.K 71 to_SI = ONE !does not do anything in CGS, see s_pr2.inc, see calc_mu_g.f 72 IF (LAM_HYS == UNDEFINED) LAM_HYS = 0.0001d0 ! cm 73 ELSE 74 IF(DMP_LOG)WRITE (UNIT_LOG, 1000) UNITS 75 CALL MFIX_EXIT(myPE) 76 ENDIF 77 78 ! If the gravitational acceleration vector is undefined, then used default value in negative y-direction 79 ! This ensured backward compatibility with the old (legacy) GRAVITY keyword. 80 ! At this point GRAVITY is defined,either from mfix.dat or by default above 81 IF(GRAVITY_X==ZERO.AND.GRAVITY_Y==ZERO.AND.GRAVITY_Z==ZERO) THEN 82 GRAVITY_X = ZERO 83 GRAVITY_Y = - GRAVITY 84 GRAVITY_Z = ZERO 85 ENDIF 86 87 88 89 RETURN 90 1000 FORMAT(/1X,70('*')//'From: SET_CONSTANTS',/& 91 ' Message: Unknown UNITS: ',1A16,/1X,70('*')/) 92 93 END SUBROUTINE SET_CONSTANTS 94