/[lmdze]/trunk/phylmd/phyredem0.f
ViewVC logotype

Contents of /trunk/phylmd/phyredem0.f

Parent Directory Parent Directory | Revision Log Revision Log


Revision 310 - (show annotations)
Thu Sep 27 16:29:06 2018 UTC (5 years, 6 months ago) by guez
File size: 6669 byte(s)
Read and write the whole pctsrf array in (re)startphy.nc, instead of
splitting it into FTER, FLIC, FOCE, FSIC.

1 module phyredem0_m
2
3 IMPLICIT NONE
4
5 INTEGER ncid_restartphy
6
7 contains
8
9 SUBROUTINE phyredem0
10
11 ! From phylmd/phyredem.F, version 1.3, 2005/05/25 13:10:09
12 ! Author: Z. X. Li (LMD/CNRS)
13 ! Date: 1993/08/18
14
15 ! Objet : \'ecriture de l'\'etat de d\'emarrage ou red\'emarrage
16 ! pour la physique
17
18 use conf_gcm_m, only: nday, lmt_pas
19 USE dimphy, ONLY: klev, klon
20 USE dimsoil, ONLY: nsoilmx
21 USE indicesol, ONLY: nbsrf
22 USE netcdf, ONLY: nf90_clobber, nf90_global, nf90_float
23 USE netcdf95, ONLY: nf95_create, nf95_put_att, nf95_def_dim, &
24 nf95_def_var, nf95_enddef, nf95_put_var
25 use phyetat0_m, only: rlat, rlon, itau_phy
26
27 ! Local:
28
29 INTEGER idim2, idim3, dimid_nbsrf, dimid_nsoilmx
30 integer varid, varid_rlon, varid_rlat
31
32 !------------------------------------------------------------
33
34 PRINT *, 'Call sequence information: phyredem0'
35 CALL nf95_create("restartphy.nc", nf90_clobber, ncid_restartphy)
36
37 call nf95_put_att(ncid_restartphy, nf90_global, 'title', &
38 'start file for the physics code')
39 call nf95_put_att(ncid_restartphy, nf90_global, "itau_phy", &
40 itau_phy + nday * lmt_pas)
41
42 call nf95_def_dim(ncid_restartphy, 'points_physiques', klon, idim2)
43 call nf95_def_dim(ncid_restartphy, 'klev', klev, idim3)
44 call nf95_def_dim(ncid_restartphy, 'nbsrf', nbsrf, dimid_nbsrf)
45 call nf95_def_dim(ncid_restartphy, 'nsoilmx', nsoilmx, dimid_nsoilmx)
46
47 call nf95_def_var(ncid_restartphy, 'longitude', nf90_float, idim2, &
48 varid_rlon)
49 call nf95_def_var(ncid_restartphy, 'latitude', nf90_float, idim2, &
50 varid_rlat)
51
52 call nf95_def_var(ncid_restartphy, 'masque', nf90_float, idim2, varid)
53 call nf95_put_att(ncid_restartphy, varid, 'title', 'masque terre mer')
54
55 ! Fractions de chaque sous-surface
56
57 call nf95_def_var(ncid_restartphy, 'pctsrf', nf90_float, &
58 [idim2, dimid_nbsrf], varid)
59 call nf95_put_att(ncid_restartphy, varid, 'title', 'surface fraction')
60
61 call nf95_def_var(ncid_restartphy, 'TS', nf90_float, &
62 [idim2, dimid_nbsrf], varid)
63 call nf95_put_att(ncid_restartphy, varid, 'title', 'surface temperature')
64
65 call nf95_def_var(ncid_restartphy, 'Tsoil', nf90_float, &
66 [idim2, dimid_nsoilmx, dimid_nbsrf], varid)
67 call nf95_put_att(ncid_restartphy, varid, 'title', 'soil temperature')
68
69 call nf95_def_var(ncid_restartphy, 'QS', nf90_float, &
70 [idim2, dimid_nbsrf], varid)
71 call nf95_put_att(ncid_restartphy, varid, 'title', 'Humidite de surface')
72
73 call nf95_def_var(ncid_restartphy, 'QSOL', nf90_float, idim2, varid)
74 call nf95_put_att(ncid_restartphy, varid, 'title', 'Eau dans le sol (mm)')
75
76 call nf95_def_var(ncid_restartphy, 'ALBE', nf90_float, &
77 [idim2, dimid_nbsrf], varid)
78 call nf95_put_att(ncid_restartphy, varid, 'title', 'albedo de surface')
79
80 call nf95_def_var(ncid_restartphy, 'SNOW', nf90_float, &
81 [idim2, dimid_nbsrf], varid)
82 call nf95_put_att(ncid_restartphy, varid, 'title', 'Neige de surface')
83
84 call nf95_def_var(ncid_restartphy, 'RADS', nf90_float, idim2, varid)
85 call nf95_put_att(ncid_restartphy, varid, 'title', &
86 'Rayonnement net a la surface')
87
88 call nf95_def_var(ncid_restartphy, 'solsw', nf90_float, idim2, varid)
89 call nf95_put_att(ncid_restartphy, varid, 'title', &
90 'Rayonnement solaire a la surface')
91
92 call nf95_def_var(ncid_restartphy, 'sollw', nf90_float, idim2, varid)
93 call nf95_put_att(ncid_restartphy, varid, 'title', &
94 'Rayonnement IR a la surface')
95
96 call nf95_def_var(ncid_restartphy, 'fder', nf90_float, idim2, varid)
97 call nf95_put_att(ncid_restartphy, varid, 'title', 'Derive de flux')
98
99 call nf95_def_var(ncid_restartphy, 'rain_f', nf90_float, idim2, varid)
100 call nf95_put_att(ncid_restartphy, varid, 'title', 'precipitation liquide')
101
102 call nf95_def_var(ncid_restartphy, 'snow_f', nf90_float, idim2, varid)
103 call nf95_put_att(ncid_restartphy, varid, 'title', 'precipitation solide')
104
105 call nf95_def_var(ncid_restartphy, 'RUG', nf90_float, &
106 [idim2, dimid_nbsrf], varid)
107 call nf95_put_att(ncid_restartphy, varid, 'title', 'rugosite de surface')
108
109 call nf95_def_var(ncid_restartphy, 'AGESNO', nf90_float, &
110 [idim2, dimid_nbsrf], varid)
111 call nf95_put_att(ncid_restartphy, varid, 'title', &
112 'Age de la neige surface')
113
114 call nf95_def_var(ncid_restartphy, 'ZMEA', nf90_float, idim2, varid)
115 call nf95_def_var(ncid_restartphy, 'ZSTD', nf90_float, idim2, varid)
116 call nf95_def_var(ncid_restartphy, 'ZSIG', nf90_float, idim2, varid)
117 call nf95_def_var(ncid_restartphy, 'ZGAM', nf90_float, idim2, varid)
118 call nf95_def_var(ncid_restartphy, 'ZTHE', nf90_float, idim2, varid)
119 call nf95_def_var(ncid_restartphy, 'ZPIC', nf90_float, idim2, varid)
120 call nf95_def_var(ncid_restartphy, 'ZVAL', nf90_float, idim2, varid)
121 call nf95_def_var(ncid_restartphy, 'TANCIEN', nf90_float, &
122 [idim2, idim3], varid)
123 call nf95_def_var(ncid_restartphy, 'QANCIEN', nf90_float, &
124 [idim2, idim3], varid)
125
126 call nf95_def_var(ncid_restartphy, 'RUGMER', nf90_float, idim2, varid)
127 call nf95_put_att(ncid_restartphy, varid, 'title', &
128 'Longueur de rugosite sur mer')
129
130 call nf95_def_var(ncid_restartphy, 'CLWCON', nf90_float, idim2, varid)
131 call nf95_put_att(ncid_restartphy, varid, 'title', 'Eau liquide convective')
132
133 call nf95_def_var(ncid_restartphy, 'RNEBCON', nf90_float, idim2, varid)
134 call nf95_put_att(ncid_restartphy, varid, 'title', 'Nebulosite convective')
135
136 call nf95_def_var(ncid_restartphy, 'RATQS', nf90_float, idim2, varid)
137 call nf95_put_att(ncid_restartphy, varid, 'title', 'Ratqs')
138
139 call nf95_def_var(ncid_restartphy, 'RUNOFFLIC0', nf90_float, idim2, varid)
140 call nf95_put_att(ncid_restartphy, varid, 'title', 'Runofflic0')
141
142 call nf95_def_var(ncid_restartphy, 'sig1', nf90_float, [idim2, idim3], &
143 varid)
144 call nf95_put_att(ncid_restartphy, varid, 'long_name', &
145 'section adiabatic updraft')
146
147 call nf95_def_var(ncid_restartphy, 'w01', nf90_float, [idim2, idim3], &
148 varid)
149 call nf95_put_att(ncid_restartphy, varid, 'long_name', &
150 'vertical velocity within adiabatic updraft')
151
152 call nf95_def_var(ncid_restartphy, 'trs', nf90_float, idim2, varid)
153 call nf95_put_att(ncid_restartphy, varid, 'long_name', &
154 'radon concentation in soil')
155
156 call nf95_enddef(ncid_restartphy)
157
158 call nf95_put_var(ncid_restartphy, varid_rlon, rlon)
159 call nf95_put_var(ncid_restartphy, varid_rlat, rlat)
160
161 END SUBROUTINE phyredem0
162
163 end module phyredem0_m

  ViewVC Help
Powered by ViewVC 1.1.21