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

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