5 |
contains |
contains |
6 |
|
|
7 |
SUBROUTINE caldyn(itau, ucov, vcov, teta, ps, masse, pk, pkf, phis, phi, & |
SUBROUTINE caldyn(itau, ucov, vcov, teta, ps, masse, pk, pkf, phis, phi, & |
8 |
dudyn, dv, dteta, dp, w, pbaru, pbarv, conser) |
du, dv, dteta, dp, w, pbaru, pbarv, conser) |
9 |
|
|
10 |
! From dyn3d/caldyn.F, version 1.1.1.1, 2004/05/19 12:53:06 |
! From dyn3d/caldyn.F, version 1.1.1.1, 2004/05/19 12:53:06 |
11 |
! Author: P. Le Van |
! Author: P. Le Van |
44 |
REAL, INTENT(IN):: pkf(ip1jmp1, llm) |
REAL, INTENT(IN):: pkf(ip1jmp1, llm) |
45 |
REAL, INTENT(IN):: phis(ip1jmp1) |
REAL, INTENT(IN):: phis(ip1jmp1) |
46 |
REAL, INTENT(IN):: phi(iim + 1, jjm + 1, llm) |
REAL, INTENT(IN):: phi(iim + 1, jjm + 1, llm) |
47 |
REAL dudyn(:, :, :) ! (iim + 1, jjm + 1, llm) |
REAL du(:, :, :) ! (iim + 1, jjm + 1, llm) |
48 |
real dv((iim + 1) * jjm, llm) |
real dv((iim + 1) * jjm, llm) |
49 |
REAL, INTENT(out):: dteta(:, :, :) ! (iim + 1, jjm + 1, llm) |
REAL, INTENT(out):: dteta(:, :, :) ! (iim + 1, jjm + 1, llm) |
50 |
real, INTENT(out):: dp(:, :) ! (iim + 1, jjm + 1) |
real, INTENT(out):: dp(:, :) ! (iim + 1, jjm + 1) |
78 |
dp = convm(:, :, 1) / airesurg_2d |
dp = convm(:, :, 1) / airesurg_2d |
79 |
w = vitvert(convm) |
w = vitvert(convm) |
80 |
CALL tourpot(vcov, ucov, massebxy, vorpot) |
CALL tourpot(vcov, ucov, massebxy, vorpot) |
81 |
CALL dudv1(vorpot, pbaru, pbarv, dudyn(:, 2: jjm, :), dv) |
CALL dudv1(vorpot, pbaru, pbarv, du(:, 2: jjm, :), dv) |
82 |
CALL enercin(vcov, ucov, vcont, ucont, ecin) |
CALL enercin(vcov, ucov, vcont, ucont, ecin) |
83 |
bern = bernoui(phi, ecin) |
bern = bernoui(phi, ecin) |
84 |
CALL dudv2(teta, pkf, bern, dudyn, dv) |
CALL dudv2(teta, pkf, bern, du, dv) |
85 |
|
|
86 |
forall (l = 1: llm) ang_3d(:, :, l) = ucov(:, :, l) + constang_2d |
forall (l = 1: llm) ang_3d(:, :, l) = ucov(:, :, l) + constang_2d |
87 |
CALL advect(ang_3d, vcov, teta, w, massebx, masseby, dudyn, dv, dteta) |
CALL advect(ang_3d, vcov, teta, w, massebx, masseby, du, dv, dteta) |
88 |
|
|
89 |
! Warning problème de périodicité de dv sur les PC Linux. Problème |
! Warning problème de périodicité de dv sur les PC Linux. Problème |
90 |
! d'arrondi probablement. Observé sur le code compilé avec pgf90 |
! d'arrondi probablement. Observé sur le code compilé avec pgf90 |