/[lmdze]/trunk/Sources/phylmd/phyredem.f
ViewVC logotype

Annotation of /trunk/Sources/phylmd/phyredem.f

Parent Directory Parent Directory | Revision Log Revision Log


Revision 175 - (hide annotations)
Fri Feb 5 16:02:34 2016 UTC (8 years, 3 months ago) by guez
File size: 6411 byte(s)
Added argument itau_phy to ini_histins, phyetat0, phytrac and
phyredem0. Removed variable itau_phy of module temps. Avoiding side
effect in etat0 and phyetat0. The procedures ini_histins, phyetat0,
phytrac and phyredem0 are all called by physiq so there is no
cascading variable penalty.

In procedure inifilr, made the condition on colat0 weaker to allow for
rounding error.

Removed arguments flux_o, flux_g and t_slab of clmain, flux_o and
flux_g of clqh and interfsurf_hq, tslab and seaice of phyetat0 and
phyredem. NetCDF variables TSLAB and SEAICE no longer in
restartphy.nc. All these variables were related to the not-implemented
slab ocean. seaice and tslab were just set to 0 in phyetat0 and never
used nor changed. flux_o and flux_g were computed in clmain but never
used in physiq.

Removed argument swnet of clqh. Was used only to compute a local
variable, swdown, which was not used.

1 guez 15 module phyredem_m
2 guez 3
3 guez 15 IMPLICIT NONE
4 guez 3
5 guez 15 contains
6 guez 3
7 guez 175 SUBROUTINE phyredem(pctsrf, tsol, tsoil, qsurf, qsol, snow, albedo, evap, &
8     rain_fall, snow_fall, solsw, sollw, fder, radsol, frugs, agesno, zmea, &
9     zstd, zsig, zgam, zthe, zpic, zval, t_ancien, q_ancien, rnebcon, &
10     ratqs, clwcon, run_off_lic_0, sig1, w01)
11 guez 3
12 guez 138 ! From phylmd/phyredem.F, version 1.3, 2005/05/25 13:10:09
13 guez 72 ! Author: Z. X. Li (LMD/CNRS)
14 guez 73 ! Date: 1993/08/18
15 guez 12
16 guez 138 ! Objet : \'ecriture de l'\'etat de d\'emarrage ou red\'emarrage
17     ! pour la physique
18    
19 guez 72 USE dimphy, ONLY: klev, klon, zmasq
20     USE indicesol, ONLY: is_lic, is_oce, is_sic, is_ter, nbsrf
21 guez 157 USE netcdf95, ONLY: nf95_inq_varid, nf95_put_var, nf95_close
22     use phyredem0_m, only: ncid_restartphy
23 guez 12
24 guez 138 REAL, INTENT(IN):: pctsrf(:, :) ! (klon, nbsrf)
25 guez 99 REAL, INTENT(IN):: tsol(:, :) ! (klon, nbsrf)
26     REAL, INTENT(IN):: tsoil(:, :, :) ! (klon, nsoilmx, nbsrf)
27     REAL, INTENT(IN):: qsurf(:, :) ! (klon, nbsrf)
28 guez 101
29 guez 99 REAL, intent(in):: qsol(:) ! (klon)
30 guez 101 ! column-density of water in soil, in kg m-2
31    
32 guez 99 REAL, INTENT(IN):: snow(klon, nbsrf)
33     REAL, INTENT(IN):: albedo(klon, nbsrf)
34     REAL, INTENT(IN):: evap(klon, nbsrf)
35 guez 62 REAL, INTENT(IN):: rain_fall(klon)
36 guez 99 REAL, INTENT(IN):: snow_fall(klon)
37     REAL, INTENT(IN):: solsw(klon)
38 guez 72 REAL, INTENT(IN):: sollw(klon)
39 guez 99 REAL, INTENT(IN):: fder(klon)
40     REAL, INTENT(IN):: radsol(klon)
41     REAL, INTENT(IN):: frugs(klon, nbsrf)
42     REAL, INTENT(IN):: agesno(klon, nbsrf)
43 guez 78 REAL, INTENT(IN):: zmea(klon)
44 guez 15 REAL, intent(in):: zstd(klon)
45     REAL, intent(in):: zsig(klon)
46 guez 99 REAL, intent(in):: zgam(klon)
47     REAL, intent(in):: zthe(klon)
48     REAL, intent(in):: zpic(klon)
49     REAL, intent(in):: zval(klon)
50     REAL, intent(in):: t_ancien(klon, klev), q_ancien(klon, klev)
51     REAL, intent(in):: rnebcon(klon, klev), ratqs(klon, klev)
52     REAL, intent(in):: clwcon(klon, klev)
53     REAL, intent(in):: run_off_lic_0(klon)
54 guez 72 real, intent(in):: sig1(klon, klev) ! section adiabatic updraft
55 guez 12
56 guez 72 real, intent(in):: w01(klon, klev)
57     ! vertical velocity within adiabatic updraft
58 guez 12
59 guez 72 ! Local:
60 guez 157 integer varid
61 guez 12
62 guez 15 !------------------------------------------------------------
63 guez 12
64 guez 15 PRINT *, 'Call sequence information: phyredem'
65 guez 12
66 guez 157 call nf95_inq_varid(ncid_restartphy, "masque", varid)
67     call nf95_put_var(ncid_restartphy, varid, zmasq)
68 guez 12
69 guez 157 call nf95_inq_varid(ncid_restartphy, "FTER", varid)
70     call nf95_put_var(ncid_restartphy, varid, pctsrf(:, is_ter))
71 guez 12
72 guez 157 call nf95_inq_varid(ncid_restartphy, "FLIC", varid)
73     call nf95_put_var(ncid_restartphy, varid, pctsrf(:, is_lic))
74 guez 12
75 guez 157 call nf95_inq_varid(ncid_restartphy, "FOCE", varid)
76     call nf95_put_var(ncid_restartphy, varid, pctsrf(:, is_oce))
77 guez 12
78 guez 157 call nf95_inq_varid(ncid_restartphy, "FSIC", varid)
79     call nf95_put_var(ncid_restartphy, varid, pctsrf(:, is_sic))
80 guez 12
81 guez 157 call nf95_inq_varid(ncid_restartphy, "TS", varid)
82     call nf95_put_var(ncid_restartphy, varid, tsol)
83 guez 12
84 guez 157 call nf95_inq_varid(ncid_restartphy, "Tsoil", varid)
85     call nf95_put_var(ncid_restartphy, varid, tsoil)
86 guez 12
87 guez 157 call nf95_inq_varid(ncid_restartphy, "QS", varid)
88     call nf95_put_var(ncid_restartphy, varid, qsurf)
89 guez 140
90 guez 157 call nf95_inq_varid(ncid_restartphy, "QSOL", varid)
91     call nf95_put_var(ncid_restartphy, varid, qsol)
92 guez 140
93 guez 157 call nf95_inq_varid(ncid_restartphy, "ALBE", varid)
94     call nf95_put_var(ncid_restartphy, varid, albedo)
95 guez 12
96 guez 157 call nf95_inq_varid(ncid_restartphy, "EVAP", varid)
97     call nf95_put_var(ncid_restartphy, varid, evap)
98 guez 12
99 guez 157 call nf95_inq_varid(ncid_restartphy, "SNOW", varid)
100     call nf95_put_var(ncid_restartphy, varid, snow)
101 guez 12
102 guez 157 call nf95_inq_varid(ncid_restartphy, "RADS", varid)
103     call nf95_put_var(ncid_restartphy, varid, radsol)
104 guez 12
105 guez 157 call nf95_inq_varid(ncid_restartphy, "solsw", varid)
106     call nf95_put_var(ncid_restartphy, varid, solsw)
107 guez 12
108 guez 157 call nf95_inq_varid(ncid_restartphy, "sollw", varid)
109     call nf95_put_var(ncid_restartphy, varid, sollw)
110 guez 12
111 guez 157 call nf95_inq_varid(ncid_restartphy, "fder", varid)
112     call nf95_put_var(ncid_restartphy, varid, fder)
113 guez 12
114 guez 157 call nf95_inq_varid(ncid_restartphy, "rain_f", varid)
115     call nf95_put_var(ncid_restartphy, varid, rain_fall)
116 guez 12
117 guez 157 call nf95_inq_varid(ncid_restartphy, "snow_f", varid)
118     call nf95_put_var(ncid_restartphy, varid, snow_fall)
119 guez 12
120 guez 157 call nf95_inq_varid(ncid_restartphy, "RUG", varid)
121     call nf95_put_var(ncid_restartphy, varid, frugs)
122 guez 12
123 guez 157 call nf95_inq_varid(ncid_restartphy, "AGESNO", varid)
124     call nf95_put_var(ncid_restartphy, varid, agesno)
125 guez 12
126 guez 157 call nf95_inq_varid(ncid_restartphy, "ZMEA", varid)
127     call nf95_put_var(ncid_restartphy, varid, zmea)
128 guez 12
129 guez 157 call nf95_inq_varid(ncid_restartphy, "ZSTD", varid)
130     call nf95_put_var(ncid_restartphy, varid, zstd)
131 guez 12
132 guez 157 call nf95_inq_varid(ncid_restartphy, "ZSIG", varid)
133     call nf95_put_var(ncid_restartphy, varid, zsig)
134 guez 12
135 guez 157 call nf95_inq_varid(ncid_restartphy, "ZGAM", varid)
136     call nf95_put_var(ncid_restartphy, varid, zgam)
137 guez 12
138 guez 157 call nf95_inq_varid(ncid_restartphy, "ZTHE", varid)
139     call nf95_put_var(ncid_restartphy, varid, zthe)
140 guez 12
141 guez 157 call nf95_inq_varid(ncid_restartphy, "ZPIC", varid)
142     call nf95_put_var(ncid_restartphy, varid, zpic)
143 guez 12
144 guez 157 call nf95_inq_varid(ncid_restartphy, "ZVAL", varid)
145     call nf95_put_var(ncid_restartphy, varid, zval)
146 guez 12
147 guez 157 call nf95_inq_varid(ncid_restartphy, "TANCIEN", varid)
148     call nf95_put_var(ncid_restartphy, varid, t_ancien)
149 guez 12
150 guez 157 call nf95_inq_varid(ncid_restartphy, "QANCIEN", varid)
151     call nf95_put_var(ncid_restartphy, varid, q_ancien)
152 guez 15
153 guez 157 call nf95_inq_varid(ncid_restartphy, "RUGMER", varid)
154     call nf95_put_var(ncid_restartphy, varid, frugs(:, is_oce))
155 guez 15
156 guez 157 call nf95_inq_varid(ncid_restartphy, "CLWCON", varid)
157     call nf95_put_var(ncid_restartphy, varid, clwcon(:, 1))
158 guez 15
159 guez 157 call nf95_inq_varid(ncid_restartphy, "RNEBCON", varid)
160     call nf95_put_var(ncid_restartphy, varid, rnebcon(:, 1))
161 guez 15
162 guez 157 call nf95_inq_varid(ncid_restartphy, "RATQS", varid)
163     call nf95_put_var(ncid_restartphy, varid, ratqs(:, 1))
164 guez 72
165 guez 157 call nf95_inq_varid(ncid_restartphy, "RUNOFFLIC0", varid)
166     call nf95_put_var(ncid_restartphy, varid, run_off_lic_0)
167 guez 72
168 guez 157 call nf95_inq_varid(ncid_restartphy, "sig1", varid)
169     call nf95_put_var(ncid_restartphy, varid, sig1)
170 guez 72
171 guez 157 call nf95_inq_varid(ncid_restartphy, "w01", varid)
172     call nf95_put_var(ncid_restartphy, varid, w01)
173    
174     call nf95_close(ncid_restartphy)
175    
176 guez 15 END SUBROUTINE phyredem
177    
178     end module phyredem_m

  ViewVC Help
Powered by ViewVC 1.1.21