27 |
USE paramet_m, ONLY: iip1, ip1jm, ip1jmp1, jjp1 |
USE paramet_m, ONLY: iip1, ip1jm, ip1jmp1, jjp1 |
28 |
USE pression_m, ONLY: pression |
USE pression_m, ONLY: pression |
29 |
USE pressure_var, ONLY: p3d |
USE pressure_var, ONLY: p3d |
30 |
USE temps, ONLY: dt, itau_dyn |
USE temps, ONLY: itau_dyn |
31 |
|
|
32 |
! Variables dynamiques: |
! Variables dynamiques: |
33 |
REAL vcov(ip1jm, llm), ucov(ip1jmp1, llm) ! vents covariants |
REAL vcov(ip1jm, llm), ucov(ip1jmp1, llm) ! vents covariants |
91 |
REAL dtetaecdt(ip1jmp1, llm) |
REAL dtetaecdt(ip1jmp1, llm) |
92 |
REAL vcont(ip1jm, llm), ucont(ip1jmp1, llm) |
REAL vcont(ip1jm, llm), ucont(ip1jmp1, llm) |
93 |
logical forward, leapf |
logical forward, leapf |
94 |
|
REAL dt |
95 |
|
|
96 |
!--------------------------------------------------- |
!--------------------------------------------------- |
97 |
|
|
141 |
! integrations dynamique et traceurs: |
! integrations dynamique et traceurs: |
142 |
CALL integrd(2, vcovm1, ucovm1, tetam1, psm1, massem1, dv, du, & |
CALL integrd(2, vcovm1, ucovm1, tetam1, psm1, massem1, dv, du, & |
143 |
dteta, dq, dp, vcov, ucov, teta, q, ps, masse, phis, & |
dteta, dq, dp, vcov, ucov, teta, q, ps, masse, phis, & |
144 |
finvmaold, leapf) |
finvmaold, leapf, dt) |
145 |
|
|
146 |
IF (MOD(itau + 1, iphysiq) == 0 .AND. iflag_phys /= 0) THEN |
IF (MOD(itau + 1, iphysiq) == 0 .AND. iflag_phys /= 0) THEN |
147 |
! calcul des tendances physiques: |
! calcul des tendances physiques: |
178 |
ucov=ucov + dudis |
ucov=ucov + dudis |
179 |
vcov=vcov + dvdis |
vcov=vcov + dvdis |
180 |
|
|
181 |
! On rajoute la tendance due a la transform. Ec -> E |
! On rajoute la tendance due à la transformation Ec -> E |
182 |
! therm. cree lors de la dissipation |
! thermique créée lors de la dissipation |
183 |
call covcont(llm, ucov, vcov, ucont, vcont) |
call covcont(llm, ucov, vcov, ucont, vcont) |
184 |
call enercin(vcov, ucov, vcont, ucont, ecin) |
call enercin(vcov, ucov, vcont, ucont, ecin) |
185 |
dtetaecdt= (ecin0 - ecin) / pk |
dtetaecdt= (ecin0 - ecin) / pk |
186 |
dtetadis=dtetadis + dtetaecdt |
dtetadis=dtetadis + dtetaecdt |
187 |
teta=teta + dtetadis |
teta=teta + dtetadis |
188 |
|
|
189 |
! Calcul de la valeur moyenne, unique de h aux poles ..... |
! Calcul de la valeur moyenne unique de h aux pôles |
190 |
DO l = 1, llm |
DO l = 1, llm |
191 |
DO ij = 1, iim |
DO ij = 1, iim |
192 |
tppn(ij) = aire(ij) * teta(ij, l) |
tppn(ij) = aire(ij) * teta(ij, l) |