source: LMDZ4/trunk/libf/phylmd/phys_state_var_mod.F90 @ 959

Last change on this file since 959 was 959, checked in by lsce, 16 years ago
  • Ajoute du parametre config_inca dans conf_gcm.F config_inca='none'(sans INCA, par defaut) config_inca='chem'(avec INCA config chemie) config_inca='aero'(avec INCA config aerosol)
  • Menage parmis les cles CPP INCA
  • Enleve le calcul d'omega dans calfis.F et active le calcul correspondant dans advtrac.F(avant uniquement pour INCA).
  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 16.0 KB
Line 
1      MODULE phys_state_var_mod
2! Variables sauvegardees pour le startphy.nc
3!======================================================================
4!
5!
6!======================================================================
7! Declaration des variables
8      USE dimphy
9      INTEGER, PARAMETER :: nlevSTD=17
10      INTEGER, PARAMETER :: nout=3
11      INTEGER, PARAMETER :: napisccp=1
12      REAL, SAVE :: dtime, co2_ppm_etat0, solaire_etat0
13      REAL, ALLOCATABLE, SAVE :: rlat(:), rlon(:), pctsrf(:,:)
14      REAL, ALLOCATABLE, SAVE :: ftsol(:,:)
15      character(len=6), SAVE :: ocean
16      logical, SAVE :: ok_veget
17      REAL, ALLOCATABLE, SAVE :: falb1(:,:), falb2(:,:)
18      REAL, ALLOCATABLE, SAVE :: rain_fall(:), snow_fall(:)
19      REAL, ALLOCATABLE, SAVE :: solsw(:), sollw(:)
20      REAL, ALLOCATABLE, SAVE :: radsol(:)
21!clesphy0 param physiq
22!
23! Parametres de l'Orographie a l'Echelle Sous-Maille (OESM):
24!
25      REAL, ALLOCATABLE, SAVE :: zmea(:), zstd(:), zsig(:), zgam(:)
26      REAL, ALLOCATABLE, SAVE :: zthe(:), zpic(:), zval(:)
27!     REAL tabcntr0(100)
28      REAL, ALLOCATABLE, SAVE :: rugoro(:)
29      REAL, ALLOCATABLE, SAVE :: t_ancien(:,:), q_ancien(:,:)
30      LOGICAL, SAVE :: ancien_ok
31      REAL, ALLOCATABLE, SAVE :: clwcon(:,:),rnebcon(:,:)
32      REAL, ALLOCATABLE, SAVE :: ratqs(:,:)
33      REAL, ALLOCATABLE, SAVE :: pbl_tke(:,:,:) ! turb kinetic energy
34      REAL, ALLOCATABLE, SAVE :: zmax0(:), f0(:) !
35      REAL, ALLOCATABLE, SAVE :: ema_work1(:,:), ema_work2(:,:)
36      REAL, ALLOCATABLE, SAVE :: entr_therm(:,:), fm_therm(:,:)
37      REAL, ALLOCATABLE, SAVE :: detr_therm(:,:)
38!IM 150408
39!     pour phsystoke avec thermiques
40      REAL,ALLOCATABLE,SAVE :: clwcon0th(:,:),rnebcon0th(:,:)
41! radiation outputs
42      REAL,ALLOCATABLE,SAVE :: swdn0(:,:), swdn(:,:)
43      REAL,ALLOCATABLE,SAVE :: swup0(:,:), swup(:,:)
44      REAL,ALLOCATABLE,SAVE :: SWdn200clr(:), SWdn200(:)
45      REAL,ALLOCATABLE,SAVE :: SWup200clr(:), SWup200(:)
46      REAL,ALLOCATABLE,SAVE :: lwdn0(:,:), lwdn(:,:)
47      REAL,ALLOCATABLE,SAVE :: lwup0(:,:), lwup(:,:)
48      REAL,ALLOCATABLE,SAVE :: LWdn200clr(:), LWdn200(:)
49      REAL,ALLOCATABLE,SAVE :: LWup200clr(:), LWup200(:)
50      REAL,ALLOCATABLE,SAVE :: LWdnTOA(:), LWdnTOAclr(:)
51! pressure level
52      REAL,ALLOCATABLE,SAVE :: tsumSTD(:,:,:)
53      REAL,ALLOCATABLE,SAVE :: usumSTD(:,:,:), vsumSTD(:,:,:)
54      REAL,ALLOCATABLE,SAVE :: wsumSTD(:,:,:), phisumSTD(:,:,:)
55      REAL,ALLOCATABLE,SAVE :: qsumSTD(:,:,:), rhsumSTD(:,:,:)
56      REAL,ALLOCATABLE,SAVE :: tnondef(:,:,:)
57      REAL,ALLOCATABLE,SAVE :: uvsumSTD(:,:,:)
58      REAL,ALLOCATABLE,SAVE :: vqsumSTD(:,:,:)
59      REAL,ALLOCATABLE,SAVE :: vTsumSTD(:,:,:)
60      REAL,ALLOCATABLE,SAVE :: wqsumSTD(:,:,:)
61      REAL,ALLOCATABLE,SAVE :: vphisumSTD(:,:,:)
62      REAL,ALLOCATABLE,SAVE :: wTsumSTD(:,:,:)
63      REAL,ALLOCATABLE,SAVE :: u2sumSTD(:,:,:)
64      REAL,ALLOCATABLE,SAVE :: v2sumSTD(:,:,:)
65      REAL,ALLOCATABLE,SAVE :: T2sumSTD(:,:,:)
66      INTEGER,ALLOCATABLE,SAVE :: seed_old(:,:)
67      REAL,ALLOCATABLE,SAVE :: zuthe(:),zvthe(:)
68      REAL,ALLOCATABLE,SAVE :: alb_neig(:)
69!cloud base mass flux
70      REAL,ALLOCATABLE,SAVE :: ema_workcbmf(:), ema_cbmf(:)
71!cloud base pressure & cloud top pressure
72      REAL,ALLOCATABLE,SAVE :: ema_pcb(:), ema_pct(:)
73      REAL,ALLOCATABLE,SAVE :: Ma(:,:)        ! undilute upward mass flux
74      REAL,ALLOCATABLE,SAVE :: qcondc(:,:)    ! in-cld water content from convect
75      REAL,ALLOCATABLE,SAVE :: wd(:) ! sb
76      REAL,ALLOCATABLE,SAVE :: sigd(:)
77!
78      REAL,ALLOCATABLE,SAVE :: cin(:)
79! ftd : differential heating between wake and environment
80      REAL,ALLOCATABLE,SAVE :: ftd(:,:)
81! fqd : differential moistening between wake and environment
82      REAL,ALLOCATABLE,SAVE :: fqd(:,:)     
83!34EK
84! -- Variables de controle de ALE et ALP
85!ALE : Energie disponible pour soulevement : utilisee par la
86!      convection d'Emanuel pour le declenchement et la regulation
87      REAL,ALLOCATABLE,SAVE :: ALE(:)
88!ALP : Puissance  disponible pour soulevement
89      REAL,ALLOCATABLE,SAVE :: ALP(:)
90!
91! nouvelles variables pour le couplage convection-couche limite
92      REAL,ALLOCATABLE,SAVE :: Ale_bl(:)
93      REAL,ALLOCATABLE,SAVE :: Alp_bl(:)
94      INTEGER,ALLOCATABLE,SAVE :: lalim_conv(:)
95      REAL,ALLOCATABLE,SAVE :: wght_th(:,:)
96!
97! variables de la wake
98! wake_deltat : ecart de temperature avec la zone non perturbee
99! wake_deltaq : ecart d'humidite avec la zone non perturbee
100! wake_Cstar  : vitesse d'etalement de la poche
101! wake_s      : fraction surfacique occupee par la poche froide
102! wake_fip    : Gust Front Impinging power - ALP
103! dt_wake, dq_wake: LS tendencies due to wake
104      REAL,ALLOCATABLE,SAVE :: wake_deltat(:,:)
105      REAL,ALLOCATABLE,SAVE :: wake_deltaq(:,:)
106      REAL,ALLOCATABLE,SAVE :: wake_Cstar(:)
107      REAL,ALLOCATABLE,SAVE :: wake_s(:)
108      REAL,ALLOCATABLE,SAVE :: wake_fip(:)
109      REAL,ALLOCATABLE,SAVE :: dt_wake(:,:)
110      REAL,ALLOCATABLE,SAVE :: dq_wake(:,:)
111!
112! pfrac_impa : Produits des coefs lessivage impaction
113! pfrac_nucl : Produits des coefs lessivage nucleation
114! pfrac_1nucl: Produits des coefs lessi nucl (alpha = 1)
115      REAL,ALLOCATABLE,SAVE :: pfrac_impa(:,:), pfrac_nucl(:,:)
116      REAL,ALLOCATABLE,SAVE :: pfrac_1nucl(:,:)
117!
118      REAL,ALLOCATABLE,SAVE :: total_rain(:), nday_rain(:) 
119      REAL,ALLOCATABLE,SAVE :: paire_ter(:)
120! albsol1: albedo du sol total pour SW visible
121! albsol2: albedo du sol total pour SW proche IR
122      REAL,ALLOCATABLE,SAVE :: albsol1(:), albsol2(:)
123      REAL,ALLOCATABLE,SAVE :: wo(:,:)
124!
125! heat : chauffage solaire
126! heat0: chauffage solaire ciel clair
127! cool : refroidissement infrarouge
128! cool0 : refroidissement infrarouge ciel clair
129! sollwdown : downward LW flux at surface
130! sollwdownclr : downward CS LW flux at surface
131! toplwdown : downward CS LW flux at TOA
132! toplwdownclr : downward CS LW flux at TOA
133      REAL,ALLOCATABLE,SAVE :: clwcon0(:,:),rnebcon0(:,:)
134      REAL,ALLOCATABLE,SAVE :: heat(:,:)   
135      REAL,ALLOCATABLE,SAVE :: heat0(:,:)
136      REAL,ALLOCATABLE,SAVE :: cool(:,:)
137      REAL,ALLOCATABLE,SAVE :: cool0(:,:)
138      REAL,ALLOCATABLE,SAVE :: topsw(:), toplw(:)
139      REAL,ALLOCATABLE,SAVE :: sollwdown(:)
140      REAL,ALLOCATABLE,SAVE :: sollwdownclr(:)
141      REAL,ALLOCATABLE,SAVE :: toplwdown(:)
142      REAL,ALLOCATABLE,SAVE :: toplwdownclr(:)
143      REAL,ALLOCATABLE,SAVE :: topsw0(:),toplw0(:),solsw0(:),sollw0(:)
144      REAL,ALLOCATABLE,SAVE :: albpla(:)
145! pbase : cloud base pressure
146! bbase : cloud base buoyancy
147      REAL,ALLOCATABLE,SAVE :: cape(:)
148      REAL,ALLOCATABLE,SAVE :: pbase(:)
149      REAL,ALLOCATABLE,SAVE :: bbase(:)
150!
151      REAL,SAVE,ALLOCATABLE :: zqasc(:,:)
152      INTEGER,ALLOCATABLE,SAVE :: ibas_con(:), itop_con(:)
153      REAL,SAVE,ALLOCATABLE :: rain_con(:)
154      REAL,SAVE,ALLOCATABLE :: snow_con(:)
155!
156! sulfate_pi : SO4 aerosol concentration [ug/m3] (pre-industrial value)
157
158      REAL,SAVE,ALLOCATABLE :: sulfate_pi(:, :)
159      REAL,SAVE,ALLOCATABLE :: rlonPOS(:)
160      REAL,SAVE,ALLOCATABLE :: newsst(:)
161      REAL,SAVE,ALLOCATABLE :: u10m(:,:), v10m(:,:)
162!
163! ok_ade=T -ADE=topswad-topsw
164! ok_aie=T ->
165!       ok_ade=T -AIE=topswai-topswad
166!        ok_ade=F -AIE=topswai-topsw
167!
168!topswad, solswad : Aerosol direct effect
169      REAL,SAVE,ALLOCATABLE :: topswad(:), solswad(:)
170!topswai, solswai : Aerosol indirect effect
171      REAL,SAVE,ALLOCATABLE :: topswai(:), solswai(:)
172      REAL,SAVE,ALLOCATABLE :: tau_ae(:,:,:), piz_ae(:,:,:)
173      REAL,SAVE,ALLOCATABLE :: cg_ae(:,:,:)
174
175! Les variables suivants uniquement pour un configuration avec INCA
176! topswad_inca, solswad_inca : Aerosol direct effect
177      REAL,SAVE,ALLOCATABLE :: topswad_inca(:), solswad_inca(:)
178! topswad0_inca, solswad0_inca : Aerosol direct effect
179      REAL,SAVE,ALLOCATABLE :: topswad0_inca(:), solswad0_inca(:)
180! topswai_inca, solswai_inca : Aerosol indirect effect
181      REAL,SAVE,ALLOCATABLE :: topswai_inca(:), solswai_inca(:)
182      REAL,SAVE,ALLOCATABLE :: topsw_inca(:,:), solsw_inca(:,:)
183      REAL,SAVE,ALLOCATABLE :: topsw0_inca(:,:), solsw0_inca(:,:)
184      REAL,SAVE,ALLOCATABLE :: tau_inca(:,:,:,:)
185      REAL,SAVE,ALLOCATABLE :: piz_inca(:,:,:,:)
186      REAL,SAVE,ALLOCATABLE :: cg_inca(:,:,:,:)
187      REAL,SAVE,ALLOCATABLE :: ccm(:,:,:)
188
189CONTAINS
190
191!======================================================================
192SUBROUTINE phys_state_var_init
193use dimphy
194IMPLICIT NONE
195#include "indicesol.h"
196#include "control.h"
197      ALLOCATE(rlat(klon), rlon(klon))
198      ALLOCATE(pctsrf(klon,nbsrf))
199      ALLOCATE(ftsol(klon,nbsrf))
200      ALLOCATE(falb1(klon,nbsrf))
201      ALLOCATE(falb2(klon,nbsrf))
202      ALLOCATE(rain_fall(klon))
203      ALLOCATE(snow_fall(klon))
204      ALLOCATE(solsw(klon), sollw(klon))
205      ALLOCATE(radsol(klon))
206      ALLOCATE(zmea(klon), zstd(klon), zsig(klon), zgam(klon))
207      ALLOCATE(zthe(klon), zpic(klon), zval(klon))
208
209      ALLOCATE(rugoro(klon))
210      ALLOCATE(t_ancien(klon,klev), q_ancien(klon,klev))
211      ALLOCATE(clwcon(klon,klev),rnebcon(klon,klev))
212      ALLOCATE(ratqs(klon,klev))
213      ALLOCATE(pbl_tke(klon,klev+1,nbsrf))
214      ALLOCATE(zmax0(klon), f0(klon))
215      ALLOCATE(ema_work1(klon,klev), ema_work2(klon,klev))
216      ALLOCATE(entr_therm(klon,klev), fm_therm(klon,klev+1))
217      ALLOCATE(detr_therm(klon,klev))
218!     pour phsystoke avec thermiques
219      ALLOCATE(clwcon0th(klon,klev),rnebcon0th(klon,klev))
220! radiation outputs
221      ALLOCATE(swdn0(klon,klevp1), swdn(klon,klevp1))
222      ALLOCATE(swup0(klon,klevp1), swup(klon,klevp1))
223      ALLOCATE(lwdn0(klon,klevp1), lwdn(klon,klevp1))
224      ALLOCATE(lwup0(klon,klevp1), lwup(klon,klevp1))
225      ALLOCATE(SWdn200clr(klon), SWdn200(klon))
226      ALLOCATE(SWup200clr(klon), SWup200(klon))
227      ALLOCATE(LWdn200clr(klon), LWdn200(klon))
228      ALLOCATE(LWup200clr(klon), LWup200(klon))
229      ALLOCATE(LWdnTOA(klon), LWdnTOAclr(klon))
230! pressure level
231      ALLOCATE(tsumSTD(klon,nlevSTD,nout))
232      ALLOCATE(usumSTD(klon,nlevSTD,nout), vsumSTD(klon,nlevSTD,nout))
233      ALLOCATE(wsumSTD(klon,nlevSTD,nout), phisumSTD(klon,nlevSTD,nout))
234      ALLOCATE(qsumSTD(klon,nlevSTD,nout), rhsumSTD(klon,nlevSTD,nout))
235      ALLOCATE(tnondef(klon,nlevSTD,nout))
236      ALLOCATE(uvsumSTD(klon,nlevSTD,nout))
237      ALLOCATE(vqsumSTD(klon,nlevSTD,nout))
238      ALLOCATE(vTsumSTD(klon,nlevSTD,nout))
239      ALLOCATE(wqsumSTD(klon,nlevSTD,nout))
240      ALLOCATE(vphisumSTD(klon,nlevSTD,nout))
241      ALLOCATE(wTsumSTD(klon,nlevSTD,nout))
242      ALLOCATE(u2sumSTD(klon,nlevSTD,nout))
243      ALLOCATE(v2sumSTD(klon,nlevSTD,nout))
244      ALLOCATE(T2sumSTD(klon,nlevSTD,nout))
245      ALLOCATE(seed_old(klon,napisccp))
246      ALLOCATE(zuthe(klon),zvthe(klon))
247      ALLOCATE(alb_neig(klon))
248!cloud base mass flux
249      ALLOCATE(ema_workcbmf(klon), ema_cbmf(klon))
250!cloud base pressure & cloud top pressure
251      ALLOCATE(ema_pcb(klon), ema_pct(klon))
252!
253      ALLOCATE(Ma(klon,klev))
254      ALLOCATE(qcondc(klon,klev))
255      ALLOCATE(wd(klon))
256      ALLOCATE(sigd(klon))
257      ALLOCATE(cin(klon), ALE(klon), ALP(klon))
258      ALLOCATE(ftd(klon,klev), fqd(klon,klev))
259      ALLOCATE(Ale_bl(klon))
260      ALLOCATE(Alp_bl(klon))
261      ALLOCATE(lalim_conv(klon))
262      ALLOCATE(wght_th(klon,klev))
263      ALLOCATE(wake_deltat(klon,klev), wake_deltaq(klon,klev))
264      ALLOCATE(wake_Cstar(klon), wake_s(klon), wake_fip(klon))
265      ALLOCATE(dt_wake(klon,klev), dq_wake(klon,klev))
266      ALLOCATE(pfrac_impa(klon,klev), pfrac_nucl(klon,klev))
267      ALLOCATE(pfrac_1nucl(klon,klev))
268      ALLOCATE(total_rain(klon), nday_rain(klon))
269      ALLOCATE(paire_ter(klon))
270      ALLOCATE(albsol1(klon), albsol2(klon))
271      ALLOCATE(wo(klon,klev))
272      ALLOCATE(clwcon0(klon,klev),rnebcon0(klon,klev))
273      ALLOCATE(heat(klon,klev), heat0(klon,klev))
274      ALLOCATE(cool(klon,klev), cool0(klon,klev))
275      ALLOCATE(topsw(klon), toplw(klon))
276      ALLOCATE(sollwdown(klon), sollwdownclr(klon))
277      ALLOCATE(toplwdown(klon), toplwdownclr(klon))
278      ALLOCATE(topsw0(klon),toplw0(klon),solsw0(klon),sollw0(klon))
279      ALLOCATE(albpla(klon))
280      ALLOCATE(cape(klon))
281      ALLOCATE(pbase(klon),bbase(klon))
282      ALLOCATE(zqasc(klon,klev))
283      ALLOCATE(ibas_con(klon), itop_con(klon))
284      ALLOCATE(rain_con(klon), snow_con(klon))
285!
286      ALLOCATE(sulfate_pi(klon, klev))
287      ALLOCATE(rlonPOS(klon))
288      ALLOCATE(newsst(klon))
289      ALLOCATE(u10m(klon,nbsrf), v10m(klon,nbsrf))
290      ALLOCATE(topswad(klon), solswad(klon))
291      ALLOCATE(topswai(klon), solswai(klon))
292      ALLOCATE(tau_ae(klon,klev,2), piz_ae(klon,klev,2))
293      ALLOCATE(cg_ae(klon,klev,2))
294
295      IF (config_inca /= 'none') THEN
296         ALLOCATE(topswad_inca(klon), solswad_inca(klon))
297         ALLOCATE(topswad0_inca(klon), solswad0_inca(klon))
298         ALLOCATE(topswai_inca(klon), solswai_inca(klon))
299         ALLOCATE(topsw_inca(klon,9), solsw_inca(klon,9))
300         ALLOCATE(topsw0_inca(klon,9), solsw0_inca(klon,9))
301      END IF
302      ! Following 4 variables are needed only by INCA but must be
303      ! allocated as they exist in the phytrac argument list
304      ALLOCATE(tau_inca(klon,klev,9,2))
305      ALLOCATE(piz_inca(klon,klev,9,2))
306      ALLOCATE(cg_inca(klon,klev,9,2))
307      ALLOCATE(ccm(klon,klev,2))
308
309END SUBROUTINE phys_state_var_init
310
311!======================================================================
312SUBROUTINE phys_state_var_end
313use dimphy
314IMPLICIT NONE
315#include "indicesol.h"
316#include "control.h"
317
318      deallocate(rlat, rlon, pctsrf, ftsol, falb1, falb2)
319      deallocate(rain_fall, snow_fall, solsw, sollw, radsol)
320      deallocate(zmea, zstd, zsig, zgam)
321      deallocate(zthe, zpic, zval)
322      deallocate(rugoro, t_ancien, q_ancien, clwcon, rnebcon)
323      deallocate(ratqs, pbl_tke)
324      deallocate(zmax0, f0)
325      deallocate(ema_work1, ema_work2)
326      deallocate(entr_therm, fm_therm)
327      deallocate(detr_therm)
328      deallocate(clwcon0th, rnebcon0th)
329! radiation outputs
330      deallocate(swdn0, swdn)
331      deallocate(swup0, swup)
332      deallocate(lwdn0, lwdn)
333      deallocate(lwup0, lwup)
334      deallocate(SWdn200clr, SWdn200)
335      deallocate(SWup200clr, SWup200)
336      deallocate(LWdn200clr, LWdn200)
337      deallocate(LWup200clr, LWup200)
338      deallocate(LWdnTOA, LWdnTOAclr)
339! pressure level
340      deallocate(tsumSTD)
341      deallocate(usumSTD, vsumSTD)
342      deallocate(wsumSTD, phisumSTD)
343      deallocate(tnondef)
344      deallocate(uvsumSTD)
345      deallocate(vqsumSTD)
346      deallocate(vTsumSTD)
347      deallocate(wqsumSTD)
348      deallocate(vphisumSTD)
349      deallocate(wTsumSTD)
350      deallocate(u2sumSTD)
351      deallocate(v2sumSTD)
352      deallocate(T2sumSTD)
353      deallocate(seed_old)
354      deallocate(zuthe, zvthe)
355      deallocate(alb_neig)
356      deallocate(ema_workcbmf, ema_cbmf)
357      deallocate(ema_pcb, ema_pct)
358      deallocate(Ma, qcondc)
359      deallocate(wd, sigd)
360      deallocate(cin, ALE, ALP)
361      deallocate(ftd, fqd)
362      deallocate(Ale_bl, Alp_bl)
363      deallocate(lalim_conv, wght_th)
364      deallocate(wake_deltat, wake_deltaq)
365      deallocate(wake_Cstar, wake_s, wake_fip)
366      deallocate(dt_wake, dq_wake)
367      deallocate(pfrac_impa, pfrac_nucl)
368      deallocate(pfrac_1nucl)
369      deallocate(total_rain, nday_rain)
370      deallocate(paire_ter)
371      deallocate(albsol1, albsol2)
372      deallocate(wo)
373      deallocate(clwcon0,rnebcon0)
374      deallocate(heat, heat0)
375      deallocate(cool, cool0)
376      deallocate(topsw, toplw)
377      deallocate(sollwdown, sollwdownclr)
378      deallocate(toplwdown, toplwdownclr)
379      deallocate(topsw0,toplw0,solsw0,sollw0)
380      deallocate(albpla)
381      deallocate(cape)
382      deallocate(pbase,bbase)
383      deallocate(zqasc)
384      deallocate(ibas_con, itop_con)
385      deallocate(rain_con, snow_con)
386!
387      deallocate(sulfate_pi)
388      deallocate(rlonPOS)
389      deallocate(newsst)
390      deallocate(u10m, v10m)
391      deallocate(topswad, solswad)
392      deallocate(topswai, solswai)
393
394      deallocate(tau_ae, piz_ae)
395      deallocate(cg_ae)
396
397      IF (config_inca /= 'none') THEN
398         deallocate(topswad_inca, solswad_inca)
399         deallocate(topswad0_inca, solswad0_inca)
400         deallocate(topswai_inca, solswai_inca)
401         deallocate(topsw_inca, solsw_inca)
402         deallocate(topsw0_inca, solsw0_inca)
403      END IF
404      deallocate(tau_inca)
405      deallocate(piz_inca)
406      deallocate(cg_inca)
407      deallocate(ccm)
408       
409END SUBROUTINE phys_state_var_end
410
411      END MODULE phys_state_var_mod
Note: See TracBrowser for help on using the repository browser.