4 |
|
|
5 |
contains |
contains |
6 |
|
|
7 |
subroutine writehist(vcov, ucov, teta, pk, phi, q, masse, ps, time) |
subroutine writehist(vcov, ucov, teta, pk, phi, q, masse, ps, itau_w) |
8 |
|
|
9 |
! From writehist.F, revision 1403, 2010-07-01 09:02:53 |
! From writehist.F, revision 1403, 2010-07-01 09:02:53 |
10 |
! Écriture du fichier histoire au format IOIPSL |
! Écriture du fichier histoire au format IOIPSL |
19 |
use inithist_m, only: histid, histvid, histuid |
use inithist_m, only: histid, histvid, histuid |
20 |
use nr_util, only: assert |
use nr_util, only: assert |
21 |
use paramet_m, only: ip1jm, ip1jmp1 |
use paramet_m, only: ip1jm, ip1jmp1 |
|
use temps, only: itau_dyn |
|
22 |
|
|
23 |
! Vent covariant : |
! Vent covariant : |
24 |
REAL, intent(in):: vcov(:, :, :) ! (iim + 1, jjm, llm) |
REAL, intent(in):: vcov(:, :, :) ! (iim + 1, jjm, llm) |
32 |
REAL, intent(in):: q(:, :, :, :) ! (iim + 1, jjm + 1, llm, nqmx) traceurs |
REAL, intent(in):: q(:, :, :, :) ! (iim + 1, jjm + 1, llm, nqmx) traceurs |
33 |
real, intent(in):: masse(:, :, :) ! (iim + 1, jjm + 1, llm) |
real, intent(in):: masse(:, :, :) ! (iim + 1, jjm + 1, llm) |
34 |
REAL, intent(in):: ps(:, :) ! (iim + 1, jjm + 1) pression au sol |
REAL, intent(in):: ps(:, :) ! (iim + 1, jjm + 1) pression au sol |
35 |
integer, intent(in):: time ! temps de l'ecriture |
integer, intent(in):: itau_w ! temps de l'ecriture |
36 |
|
|
37 |
! Local: |
! Local: |
38 |
integer iq, itau_w |
integer iq |
39 |
REAL vnat(ip1jm, llm), unat(ip1jmp1, llm) |
REAL vnat(ip1jm, llm), unat(ip1jmp1, llm) |
40 |
|
|
41 |
!--------------------------------------------------------------------- |
!--------------------------------------------------------------------- |
49 |
call assert([size(vcov, 3), size(ucov, 3), size(teta, 3), size(phi, 3), & |
call assert([size(vcov, 3), size(ucov, 3), size(teta, 3), size(phi, 3), & |
50 |
size(pk, 3), size(masse, 3), size(q, 3)] == llm, "writehist llm") |
size(pk, 3), size(masse, 3), size(q, 3)] == llm, "writehist llm") |
51 |
|
|
|
itau_w = itau_dyn + time |
|
52 |
call covnat(llm, ucov, vcov, unat, vnat) |
call covnat(llm, ucov, vcov, unat, vnat) |
53 |
|
|
54 |
call histwrite(histuid, 'u', itau_w, unat) |
call histwrite(histuid, 'u', itau_w, unat) |