6 |
|
|
7 |
SUBROUTINE dynredem0(fichnom, iday_end, phis) |
SUBROUTINE dynredem0(fichnom, iday_end, phis) |
8 |
|
|
9 |
! From dyn3d/dynredem.F, version 1.2 2004/06/22 11:45:30 |
! From dyn3d/dynredem.F, version 1.2, 2004/06/22 11:45:30 |
10 |
! Ecriture du fichier de redémarrage au format NetCDF (initialisation) |
! \'Ecriture du fichier de red\'emarrage au format NetCDF (initialisation) |
11 |
|
|
12 |
USE comconst, ONLY: cpp, daysec, dtvr, g, kappa, omeg, rad |
USE comconst, ONLY: cpp, daysec, dtvr, g, kappa, omeg, rad |
13 |
USE comgeom, ONLY: aire_2d, cu_2d, cv_2d, rlatu, rlatv, rlonu, rlonv |
USE comgeom, ONLY: aire_2d, cu_2d, cv_2d, rlatu, rlatv, rlonu, rlonv |
14 |
USE dimens_m, ONLY: iim, jjm, llm, nqmx |
USE dimens_m, ONLY: iim, jjm, llm, nqmx |
15 |
USE disvert_m, ONLY: ap, bp, pa, preff, presnivs |
USE disvert_m, ONLY: ap, bp, pa, preff, presnivs |
16 |
|
use dynetat0_m, only: day_ref, annee_ref |
17 |
USE ener, ONLY: ang0, etot0, ptot0, stot0, ztot0 |
USE ener, ONLY: ang0, etot0, ptot0, stot0, ztot0 |
18 |
USE iniadvtrac_m, ONLY: tname, ttext |
USE iniadvtrac_m, ONLY: tname, ttext |
19 |
USE ju2ymds_m, ONLY: ju2ymds |
USE ju2ymds_m, ONLY: ju2ymds |
23 |
USE paramet_m, ONLY: iip1, jjp1, llmp1 |
USE paramet_m, ONLY: iip1, jjp1, llmp1 |
24 |
USE serre, ONLY: clat, clon, dzoomx, dzoomy, grossismx, grossismy, taux, & |
USE serre, ONLY: clat, clon, dzoomx, dzoomy, grossismx, grossismy, taux, & |
25 |
tauy |
tauy |
|
USE temps, ONLY: annee_ref, day_ref |
|
26 |
use ymds2ju_m, only: ymds2ju |
use ymds2ju_m, only: ymds2ju |
27 |
|
|
28 |
CHARACTER(len=*), INTENT(IN):: fichnom |
CHARACTER(len=*), INTENT(IN):: fichnom |
33 |
|
|
34 |
INTEGER iq, l |
INTEGER iq, l |
35 |
INTEGER, PARAMETER:: length = 100 |
INTEGER, PARAMETER:: length = 100 |
36 |
REAL tab_cntrl(length) ! tableau des paramètres du run |
REAL tab_cntrl(length) ! tableau des param\`etres du run |
37 |
|
|
38 |
! Pour NetCDF : |
! Pour NetCDF : |
39 |
INTEGER idim_index |
INTEGER idim_index |
53 |
CALL ymds2ju(annee_ref, 1, iday_end, 0., zjulian) |
CALL ymds2ju(annee_ref, 1, iday_end, 0., zjulian) |
54 |
CALL ju2ymds(zjulian, yyears0, mmois0, jjour0, hours) |
CALL ju2ymds(zjulian, yyears0, mmois0, jjour0, hours) |
55 |
|
|
56 |
DO l = 1, length |
tab_cntrl(1) = iim |
57 |
tab_cntrl(l) = 0. |
tab_cntrl(2) = jjm |
58 |
END DO |
tab_cntrl(3) = llm |
59 |
tab_cntrl(1) = real(iim) |
tab_cntrl(4) = day_ref |
60 |
tab_cntrl(2) = real(jjm) |
tab_cntrl(5) = annee_ref |
|
tab_cntrl(3) = real(llm) |
|
|
tab_cntrl(4) = real(day_ref) |
|
|
tab_cntrl(5) = real(annee_ref) |
|
61 |
tab_cntrl(6) = rad |
tab_cntrl(6) = rad |
62 |
tab_cntrl(7) = omeg |
tab_cntrl(7) = omeg |
63 |
tab_cntrl(8) = g |
tab_cntrl(8) = g |
73 |
tab_cntrl(18) = pa |
tab_cntrl(18) = pa |
74 |
tab_cntrl(19) = preff |
tab_cntrl(19) = preff |
75 |
|
|
76 |
! Paramètres pour le zoom : |
! Param\`etres pour le zoom : |
|
|
|
77 |
tab_cntrl(20) = clon |
tab_cntrl(20) = clon |
78 |
tab_cntrl(21) = clat |
tab_cntrl(21) = clat |
79 |
tab_cntrl(22) = grossismx |
tab_cntrl(22) = grossismx |
85 |
tab_cntrl(28) = taux |
tab_cntrl(28) = taux |
86 |
tab_cntrl(29) = tauy |
tab_cntrl(29) = tauy |
87 |
|
|
88 |
tab_cntrl(30) = real(iday_end) |
tab_cntrl(30) = iday_end |
89 |
|
tab_cntrl(31:) = 0. |
90 |
|
|
91 |
CALL nf95_create(fichnom, nf90_clobber, ncid) |
CALL nf95_create(fichnom, nf90_clobber, ncid) |
92 |
CALL nf95_put_att(ncid, nf90_global, 'title', & |
CALL nf95_put_att(ncid, nf90_global, 'title', & |
93 |
'Fichier de démarrage dynamique') |
'start file for the dynamics code') |
94 |
|
|
95 |
! Definir les dimensions du fichiers: |
! Definir les dimensions du fichiers: |
96 |
|
|