My Project
 All Classes Files Functions Variables Macros
suphel.F
Go to the documentation of this file.
1 !
2 ! $Header$
3 !
4  SUBROUTINE suphel
5 C
6 #include "YOMCST.h"
7 #include "YOETHF.h"
8 cIM cf. JLD
9  LOGICAL firstcall
10  SAVE firstcall
11 c$OMP THREADPRIVATE(firstcall)
12  DATA firstcall /.true./
13 
14  IF (firstcall) THEN
15  print*, 'suphel initialise les constantes du GCM'
16  firstcall = .false.
17  ELSE
18  print*, 'suphel DEJA APPELE '
19  RETURN
20  ENDIF
21 C -----------------------------------------------------------------
22 C
23 C* 1. DEFINE FUNDAMENTAL CONSTANTS.
24 C -----------------------------
25 C
26  WRITE(unit=6,fmt='(''0*** Constants of the ICM ***'')')
27  rpi=2.*asin(1.)
28  rclum=299792458.
29  rhpla=6.6260755e-34
30  rkbol=1.380658e-23
31  rnavo=6.0221367e+23
32  WRITE(unit=6,fmt='('' *** Fundamental constants ***'')')
33  WRITE(unit=6,fmt='('' PI = '',E13.7,'' -'')')rpi
34  WRITE(unit=6,fmt='('' c = '',E13.7,''m s-1'')')
35  s rclum
36  WRITE(unit=6,fmt='('' h = '',E13.7,''J s'')')
37  s rhpla
38  WRITE(unit=6,fmt='('' K = '',E13.7,''J K-1'')')
39  s rkbol
40  WRITE(unit=6,fmt='('' N = '',E13.7,''mol-1'')')
41  s rnavo
42 C
43 C ----------------------------------------------------------------
44 C
45 C* 2. DEFINE ASTRONOMICAL CONSTANTS.
46 C ------------------------------
47 C
48  rday=86400.
49  rea=149597870000.
50  repsm=0.409093
51 C
52  rsiyea=365.25*rday*2.*rpi/6.283076
53  rsiday=rday/(1.+rday/rsiyea)
54  romega=2.*rpi/rsiday
55 c
56 c exp1 R_ecc = 0.05
57 c exp1 R_peri = 102.04
58 c exp1 R_incl = 22.5
59 c exp1 print*, 'Parametres orbitaux modifies'
60 c ref R_ecc = 0.016724
61 c ref R_peri = 102.04
62 c ref R_incl = 23.5
63 c
64 cIM 161002 : pour avoir les ctes AMIP II
65 cIM 161002 R_ecc = 0.016724
66 cIM 161002 R_peri = 102.04
67 cIM 161002 R_incl = 23.5
68 cIM on mets R_ecc, R_peri, R_incl dans conf_phys.F90
69 c R_ecc = 0.016715
70 c R_peri = 102.7
71 c R_incl = 23.441
72 c
73  WRITE(unit=6,fmt='('' *** Astronomical constants ***'')')
74  WRITE(unit=6,fmt='('' day = '',E13.7,'' s'')')rday
75  WRITE(unit=6,fmt='('' half g. axis = '',E13.7,'' m'')')rea
76  WRITE(unit=6,fmt='('' mean anomaly = '',E13.7,'' -'')')repsm
77  WRITE(unit=6,fmt='('' sideral year = '',E13.7,'' s'')')rsiyea
78  WRITE(unit=6,fmt='('' sideral day = '',E13.7,'' s'')')rsiday
79  WRITE(unit=6,fmt='('' omega = '',E13.7,'' s-1'')')
80  s romega
81 c write(unit=6,fmt='('' excentricite = '',e13.7,''-'')')R_ecc
82 c write(unit=6,fmt='('' equinoxe = '',e13.7,''-'')')R_peri
83 c write(unit=6,fmt='('' inclinaison = '',e13.7,''-'')')R_incl
84 C
85 C ------------------------------------------------------------------
86 C
87 C* 3. DEFINE GEOIDE.
88 C --------------
89 C
90  rg=9.80665
91  ra=6371229.
92  r1sa=sngl(1.d0/dble(ra))
93  WRITE(unit=6,fmt='('' *** Geoide ***'')')
94  WRITE(unit=6,fmt='('' Gravity = '',E13.7,'' m s-2'')')
95  s rg
96  WRITE(unit=6,fmt='('' Earth radius = '',E13.7,'' m'')')ra
97  WRITE(unit=6,fmt='('' Inverse E.R. = '',E13.7,'' m'')')r1sa
98 C
99 C -----------------------------------------------------------------
100 C
101 C* 4. DEFINE RADIATION CONSTANTS.
102 C ---------------------------
103 C
104 c z.x.li RSIGMA=2. * RPI**5 * RKBOL**4 /(15.* RCLUM**2 * RHPLA**3)
105  rsigma = 2.*rpi**5 * (rkbol/rhpla)**3 * rkbol/rclum/rclum/15.
106 cIM init. dans conf_phys.F90 RI0=1365.
107  WRITE(unit=6,fmt='('' *** Radiation ***'')')
108  WRITE(unit=6,fmt='('' Stefan-Bol. = '',E13.7,'' W m-2 K-4'
109 ' S )') rsigma
110 cIM init. dans conf_phys.F90 WRITE(UNIT=6,FMT='('' Solar const. = '',E13.7,'' W m-2'')')
111 cIM init. dans conf_phys.F90 S RI0
112 C
113 C -----------------------------------------------------------------
114 C
115 C* 5. DEFINE THERMODYNAMIC CONSTANTS, GAS PHASE.
116 C ------------------------------------------
117 C
118  r=rnavo*rkbol
119  rmd=28.9644
120  rmo3=47.9942
121  rmv=18.0153
122  rd=1000.*r/rmd
123  rv=1000.*r/rmv
124  rcpd=3.5*rd
125  rcvd=rcpd-rd
126  rcpv=4. *rv
127  rcvv=rcpv-rv
128  rkappa=rd/rcpd
129  retv=rv/rd-1.
130  WRITE(unit=6,fmt='('' *** Thermodynamic, gas ***'')')
131  WRITE(unit=6,fmt='('' Perfect gas = '',e13.7)') r
132  WRITE(unit=6,fmt='('' Dry air mass = '',e13.7)') rmd
133  WRITE(unit=6,fmt='('' Ozone mass = '',e13.7)') rmo3
134  WRITE(unit=6,fmt='('' Vapour mass = '',e13.7)') rmv
135  WRITE(unit=6,fmt='('' Dry air cst. = '',e13.7)') rd
136  WRITE(unit=6,fmt='('' Vapour cst. = '',e13.7)') rv
137  WRITE(unit=6,fmt='('' Cpd = '',e13.7)') rcpd
138  WRITE(unit=6,fmt='('' Cvd = '',e13.7)') rcvd
139  WRITE(unit=6,fmt='('' Cpv = '',e13.7)') rcpv
140  WRITE(unit=6,fmt='('' Cvv = '',e13.7)') rcvv
141  WRITE(unit=6,fmt='('' Rd/Cpd = '',e13.7)') rkappa
142  WRITE(unit=6,fmt='('' Rv/Rd-1 = '',e13.7)') retv
143 C
144 C ----------------------------------------------------------------
145 C
146 C* 6. DEFINE THERMODYNAMIC CONSTANTS, LIQUID PHASE.
147 C ---------------------------------------------
148 C
149  rcw=rcpv
150  WRITE(unit=6,fmt='('' *** Thermodynamic, liquid ***'')')
151  WRITE(unit=6,fmt='('' Cw = '',E13.7)') rcw
152 C
153 C ----------------------------------------------------------------
154 C
155 C* 7. DEFINE THERMODYNAMIC CONSTANTS, SOLID PHASE.
156 C --------------------------------------------
157 C
158  rcs=rcpv
159  WRITE(unit=6,fmt='('' *** thermodynamic, solid ***'')')
160  WRITE(unit=6,fmt='('' Cs = '',E13.7)') rcs
161 C
162 C ----------------------------------------------------------------
163 C
164 C* 8. DEFINE THERMODYNAMIC CONSTANTS, TRANSITION OF PHASE.
165 C ----------------------------------------------------
166 C
167  rtt=273.16
168  rlvtt=2.5008e+6
169  rlstt=2.8345e+6
170  rlmlt=rlstt-rlvtt
171  ratm=100000.
172  WRITE(unit=6,fmt='('' *** Thermodynamic, trans. ***'')')
173  WRITE(unit=6,fmt='('' Fusion point = '',E13.7)') rtt
174  WRITE(unit=6,fmt='('' RLvTt = '',E13.7)') rlvtt
175  WRITE(unit=6,fmt='('' RLsTt = '',E13.7)') rlstt
176  WRITE(unit=6,fmt='('' RLMlt = '',E13.7)') rlmlt
177  WRITE(unit=6,fmt='('' Normal press. = '',E13.7)') ratm
178  WRITE(unit=6,fmt='('' Latent heat : '')')
179 C
180 C ----------------------------------------------------------------
181 C
182 C* 9. SATURATED VAPOUR PRESSURE.
183 C --------------------------
184 C
185  restt=611.14
186  rgamw=(rcw-rcpv)/rv
187  rbetw=rlvtt/rv+rgamw*rtt
188  ralpw=log(restt)+rbetw/rtt+rgamw*log(rtt)
189  rgams=(rcs-rcpv)/rv
190  rbets=rlstt/rv+rgams*rtt
191  ralps=log(restt)+rbets/rtt+rgams*log(rtt)
192  rgamd=rgams-rgamw
193  rbetd=rbets-rbetw
194  ralpd=ralps-ralpw
195 C
196 C ------------------------------------------------------------------
197 c
198 c calculer les constantes pour les fonctions thermodynamiques
199 c
200  rvtmp2=rcpv/rcpd-1.
201  rhoh2o=ratm/100.
202  r2es=restt*rd/rv
203  r3les=17.269
204  r3ies=21.875
205  r4les=35.86
206  r4ies=7.66
207  r5les=r3les*(rtt-r4les)
208  r5ies=r3ies*(rtt-r4ies)
209 C
210  RETURN
211  END