File: N:\mfix\model\energy_mod.f
1
2 MODULE energy
3
4
5
6 DOUBLE PRECISION, DIMENSION(:), ALLOCATABLE :: HOR_g
7
8
9 DOUBLE PRECISION, DIMENSION(:, :), ALLOCATABLE :: HOR_s
10
11
12 DOUBLE PRECISION, DIMENSION(:, :), ALLOCATABLE :: GAMA_gs
13
14
15 DOUBLE PRECISION, DIMENSION(:), ALLOCATABLE :: GAMA_Rg
16
17
18 DOUBLE PRECISION, DIMENSION(:, :), ALLOCATABLE :: GAMA_Rs
19
20
21 DOUBLE PRECISION, DIMENSION(:), ALLOCATABLE :: T_Rg
22
23
24 DOUBLE PRECISION, DIMENSION(:, :), ALLOCATABLE :: T_Rs
25
26 CONTAINS
27
28
29
30
31
32
33
34
35
36 DOUBLE PRECISION FUNCTION S_Rpg(IJK)
37 USE fldvar, only: t_g
38 IMPLICIT NONE
39 INTEGER IJK
40 S_Rpg = 4.d0 * GAMA_Rg(IJK) * T_g(IJK)**3
41 END FUNCTION S_Rpg
42
43
44 DOUBLE PRECISION FUNCTION S_Rcg(IJK)
45 USE fldvar, only: t_g
46 IMPLICIT NONE
47 INTEGER IJK
48 S_Rcg = GAMA_Rg(IJK) * ( T_Rg(IJK)**4 + 3.d0 * T_g(IJK)**4 )
49 END FUNCTION S_Rcg
50
51
52 DOUBLE PRECISION FUNCTION S_Rps(IJK, M)
53 USE fldvar, only: t_s
54 IMPLICIT NONE
55 INTEGER IJK, M
56 S_Rps = 4.d0 * GAMA_Rs(IJK, M) * T_s(IJK, M)**3
57 END FUNCTION S_Rps
58
59
60 DOUBLE PRECISION FUNCTION S_Rcs(IJK, M)
61 USE fldvar, only: t_s
62 IMPLICIT NONE
63 INTEGER IJK, M
64 S_Rcs = GAMA_Rs(IJK, M) * ( T_Rs(IJK, M)**4 &
65 + 3.d0 * T_s(IJK, M)**4 )
66 END FUNCTION S_Rcs
67
68 END MODULE energy
69