source: trunk/libf/phytitan/suphec.F @ 6

Last change on this file since 6 was 3, checked in by slebonnois, 15 years ago

Creation de repertoires:

  • chantiers : pour communiquer sur nos projets de modifs
  • documentation : pour stocker les docs

Ajout de:

  • libf/phytitan : physique de Titan
  • libf/chimtitan: chimie de Titan
  • libf/phyvenus : physique de Venus
File size: 7.2 KB
Line 
1!
2! $Header: /home/cvsroot/LMDZ4/libf/phylmd/suphec.F,v 1.1.1.1 2004/05/19 12:53:08 lmdzadmin Exp $
3!
4      SUBROUTINE suphec
5C
6#include "YOMCST.h"
7cIM cf. JLD
8       LOGICAL firstcall
9       SAVE firstcall
10       DATA firstcall /.TRUE./
11       IF (firstcall) THEN
12         PRINT*, 'suphec initialise les constantes du GCM'
13         firstcall = .FALSE.
14       ELSE
15         PRINT*, 'suphec DEJA APPELE '
16         RETURN
17       ENDIF
18C      -----------------------------------------------------------------
19C
20C*       1.    DEFINE FUNDAMENTAL CONSTANTS.
21C              -----------------------------
22C
23      WRITE(UNIT=6,FMT='(''0*** Constants of the ICM   ***'')')
24      RPI=2.*ASIN(1.)
25      RCLUM=299792458.
26      RHPLA=6.6260755E-34
27      RKBOL=1.380658E-23
28      RNAVO=6.0221367E+23
29      WRITE(UNIT=6,FMT='('' *** Fundamental constants ***'')')
30      WRITE(UNIT=6,FMT='(''           PI = '',E13.7,'' -'')')RPI
31      WRITE(UNIT=6,FMT='(''            c = '',E13.7,''m s-1'')')
32     S RCLUM
33      WRITE(UNIT=6,FMT='(''            h = '',E13.7,''J s'')')
34     S RHPLA
35      WRITE(UNIT=6,FMT='(''            K = '',E13.7,''J K-1'')')
36     S RKBOL
37      WRITE(UNIT=6,FMT='(''            N = '',E13.7,''mol-1'')')
38     S RNAVO
39C
40C     ----------------------------------------------------------------
41C
42C*       2.    DEFINE ASTRONOMICAL CONSTANTS.
43C              ------------------------------
44C
45c TERRE
46c     RDAY=86400.
47c     REA=149597870000.
48c     REPSM=0.409093
49C
50c     RSIYEA=365.25*RDAY*2.*RPI/6.283076
51c 1/(duree du jour) = 1/(periode rotation) - 1/(periode revolution)
52c     RSIDAY=RDAY/(1.+RDAY/RSIYEA)
53c     ROMEGA=2.*RPI/RSIDAY
54
55c TITAN
56      RSIYEA=9.28e8      ! 673 jTitan
57      RSIDAY=1.37889e6   ! 15.96 j
58      ROMEGA=2.*RPI/RSIDAY
59c 1/(duree du jour) = 1/(periode rotation) - 1/(periode revolution)
60      RDAY=RSIDAY/(1.-RSIDAY/RSIYEA) ! 116.748 j
61      REA=1.5e12
62      REPSM=0.  ! 0. veut dire qu'on commence au point vernal
63c
64cIM on mets R_ecc, R_peri, R_incl dans conf_phys.F90
65
66      WRITE(UNIT=6,FMT='('' *** Astronomical constants ***'')')
67      WRITE(UNIT=6,FMT='(''          day = '',E13.7,'' s'')')RDAY
68      WRITE(UNIT=6,FMT='('' half g. axis = '',E13.7,'' m'')')REA
69      WRITE(UNIT=6,FMT='('' mean anomaly = '',E13.7,'' -'')')REPSM
70      WRITE(UNIT=6,FMT='('' sideral year = '',E13.7,'' s'')')RSIYEA
71      WRITE(UNIT=6,FMT='(''  sideral day = '',E13.7,'' s'')')RSIDAY
72      WRITE(UNIT=6,FMT='(''        omega = '',E13.7,'' s-1'')')
73     S                  ROMEGA
74C
75C     ------------------------------------------------------------------
76C
77C*       3.    DEFINE GEOIDE.
78C              --------------
79C
80c TERRE
81c     RG=9.80665
82c     RA=6371229.
83
84c VENUS
85c     RG=8.87
86c     RA=6051300.
87
88c TITAN
89      RG=1.35
90      RA=2575000.
91
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='('' Planet radius = '',E13.7,'' m'')')RA
97      WRITE(UNIT=6,FMT='(''  Inverse P.R. = '',E13.7,'' m-1'')')R1SA
98C
99C     -----------------------------------------------------------------
100C
101C*       4.    DEFINE RADIATION CONSTANTS.
102C              ---------------------------
103C
104c 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.
106cIM 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
110cIM init. dans conf_phys.F90   WRITE(UNIT=6,FMT='('' Solar const. = '',E13.7,'' W m-2'')')
111cIM init. dans conf_phys.F90  S      RI0
112C
113C     -----------------------------------------------------------------
114C
115C*       5.    DEFINE THERMODYNAMIC CONSTANTS, GAS PHASE.
116C              ------------------------------------------
117C
118      R=RNAVO*RKBOL
119c TERRE
120c     RMD=28.9644
121      RMV=18.0153
122
123c VENUS
124      RMD=43.44
125
126c TITAN
127      RMD=28.
128
129      RD=1000.*R/RMD
130      RV=1000.*R/RMV
131c TERRE
132c     RCPD=3.5*RD
133      RCPV=4. *RV
134c VENUS
135! ADAPTATION GCM POUR CP(T)
136! VENUS: Cp(T) = RCPD*(T/T0)^nu (RCPD phys = cpp dyn)
137! avec RCPD=1000., T0=460. et nu=0.35
138!     RCPD=1.0e3
139!     RCPD=9.0e2  ! Version constante
140c TITAN     
141      RCPD=1.039e3
142      RCVD=RCPD-RD
143      RCVV=RCPV-RV
144      RKAPPA=RD/RCPD
145      RETV=RV/RD-1.
146      WRITE(UNIT=6,FMT='('' *** Thermodynamic, gas     ***'')')
147      WRITE(UNIT=6,FMT='('' Perfect gas  = '',e13.7)') R
148      WRITE(UNIT=6,FMT='('' Dry air mass = '',e13.7)') RMD
149      WRITE(UNIT=6,FMT='('' Vapour  mass = '',e13.7)') RMV
150      WRITE(UNIT=6,FMT='('' Dry air cst. = '',e13.7)') RD
151      WRITE(UNIT=6,FMT='('' Vapour  cst. = '',e13.7)') RV
152      WRITE(UNIT=6,FMT='(''        Cpd0  = '',e13.7)') RCPD
153      WRITE(UNIT=6,FMT='(''         Cvd  = '',e13.7)') RCVD
154      WRITE(UNIT=6,FMT='(''         Cpv  = '',e13.7)') RCPV
155      WRITE(UNIT=6,FMT='(''         Cvv  = '',e13.7)') RCVV
156      WRITE(UNIT=6,FMT='(''     Rd/Cpd0  = '',e13.7)') RKAPPA
157      WRITE(UNIT=6,FMT='(''     Rv/Rd-1  = '',e13.7)') RETV
158C
159C     ----------------------------------------------------------------
160C
161C*       6.    DEFINE THERMODYNAMIC CONSTANTS, LIQUID PHASE.
162C              ---------------------------------------------
163C
164      RCW=RCPV
165      WRITE(UNIT=6,FMT='('' *** Thermodynamic, liquid  ***'')')
166      WRITE(UNIT=6,FMT='(''         Cw   = '',E13.7)') RCW
167C
168C     ----------------------------------------------------------------
169C
170C*       7.    DEFINE THERMODYNAMIC CONSTANTS, SOLID PHASE.
171C              --------------------------------------------
172C
173      RCS=RCPV
174      WRITE(UNIT=6,FMT='('' *** thermodynamic, solid   ***'')')
175      WRITE(UNIT=6,FMT='(''         Cs   = '',E13.7)') RCS
176C
177C     ----------------------------------------------------------------
178C
179C*       8.    DEFINE THERMODYNAMIC CONSTANTS, TRANSITION OF PHASE.
180C              ----------------------------------------------------
181C
182c valeurs TERRE
183      RTT=273.16
184      RLVTT=2.5008E+6
185      RLSTT=2.8345E+6
186      RLMLT=RLSTT-RLVTT
187      RATM=100000.
188      WRITE(UNIT=6,FMT='('' *** Thermodynamic, trans.  ***'')')
189      WRITE(UNIT=6,FMT='('' Fusion point  = '',E13.7)') RTT
190      WRITE(UNIT=6,FMT='(''        RLvTt  = '',E13.7)') RLVTT
191      WRITE(UNIT=6,FMT='(''        RLsTt  = '',E13.7)') RLSTT
192      WRITE(UNIT=6,FMT='(''        RLMlt  = '',E13.7)') RLMLT
193      WRITE(UNIT=6,FMT='('' Normal press. = '',E13.7)') RATM
194      WRITE(UNIT=6,FMT='('' Latent heat :  '')')
195C
196C     ----------------------------------------------------------------
197C
198C*       9.    SATURATED VAPOUR PRESSURE.
199C              --------------------------
200C
201c valeurs TERRE
202      RESTT=611.14
203      RGAMW=(RCW-RCPV)/RV
204      RBETW=RLVTT/RV+RGAMW*RTT
205      RALPW=LOG(RESTT)+RBETW/RTT+RGAMW*LOG(RTT)
206      RGAMS=(RCS-RCPV)/RV
207      RBETS=RLSTT/RV+RGAMS*RTT
208      RALPS=LOG(RESTT)+RBETS/RTT+RGAMS*LOG(RTT)
209      RGAMD=RGAMS-RGAMW
210      RBETD=RBETS-RBETW
211      RALPD=RALPS-RALPW
212C
213C     ------------------------------------------------------------------
214c
215c calculer les constantes pour les fonctions thermodynamiques
216c
217c valeurs TERRE
218      RVTMP2=RCPV/RCPD-1.
219      RHOH2O=RATM/100.
220      R2ES=RESTT*RD/RV
221      R3LES=17.269
222      R3IES=21.875
223      R4LES=35.86
224      R4IES=7.66
225      R5LES=R3LES*(RTT-R4LES)
226      R5IES=R3IES*(RTT-R4IES)
227C
228      RETURN
229      END
Note: See TracBrowser for help on using the repository browser.