8 |
|
|
9 |
! From dyn3d/leapfrog.F, version 1.6, 2005/04/13 08:58:34 revision 616 |
! From dyn3d/leapfrog.F, version 1.6, 2005/04/13 08:58:34 revision 616 |
10 |
! Authors: P. Le Van, L. Fairhead, F. Hourdin |
! Authors: P. Le Van, L. Fairhead, F. Hourdin |
11 |
! Matsuno-leapfrog scheme. |
|
12 |
|
! Intégration temporelle du modèle : Matsuno-leapfrog scheme. |
13 |
|
|
14 |
use addfi_m, only: addfi |
use addfi_m, only: addfi |
15 |
use bilan_dyn_m, only: bilan_dyn |
use bilan_dyn_m, only: bilan_dyn |
88 |
! Variables pour le fichier histoire |
! Variables pour le fichier histoire |
89 |
INTEGER itau ! index of the time step of the dynamics, starts at 0 |
INTEGER itau ! index of the time step of the dynamics, starts at 0 |
90 |
INTEGER itaufin |
INTEGER itaufin |
|
REAL time ! time of day, as a fraction of day length |
|
91 |
real finvmaold(iim + 1, jjm + 1, llm) |
real finvmaold(iim + 1, jjm + 1, llm) |
92 |
INTEGER l |
INTEGER l |
93 |
|
|
164 |
end if |
end if |
165 |
|
|
166 |
IF (MOD(itau + 1, iphysiq) == 0 .AND. iflag_phys /= 0) THEN |
IF (MOD(itau + 1, iphysiq) == 0 .AND. iflag_phys /= 0) THEN |
167 |
! Calcul des tendances physiques : |
CALL calfis(itau / day_step + day_ini, & |
168 |
time = REAL(mod(itau, day_step)) / day_step |
REAL(mod(itau, day_step)) / day_step, ucov, vcov, teta, q, pk, & |
169 |
IF (time > 1.) time = time - 1. |
phis, phi, w, dufi, dvfi, dtetafi, dqfi, & |
|
CALL calfis(itau * dtvr / daysec + day_ini, time, ucov, vcov, teta, & |
|
|
q, pk, phis, phi, w, dufi, dvfi, dtetafi, dqfi, & |
|
170 |
lafin = itau + 1 == itaufin) |
lafin = itau + 1 == itaufin) |
171 |
|
|
172 |
CALL addfi(ucov, vcov, teta, q, dufi, dvfi, dtetafi, dqfi) |
CALL addfi(ucov, vcov, teta, q, dufi, dvfi, dtetafi, dqfi) |