6 |
|
|
7 |
SUBROUTINE dynredem0(fichnom, iday_end, phis) |
SUBROUTINE dynredem0(fichnom, iday_end, phis) |
8 |
|
|
9 |
! From dyn3d/dynredem.F, v 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émarrage au format NetCDF (initialisation) |
11 |
|
|
|
USE ioipsl, ONLY : ju2ymds, ymds2ju |
|
|
USE dimens_m, ONLY : iim, jjm, llm, nqmx |
|
|
USE paramet_m, ONLY : iip1, jjp1, llmp1 |
|
12 |
USE comconst, ONLY : cpp, daysec, dtvr, g, kappa, omeg, rad |
USE comconst, ONLY : cpp, daysec, dtvr, g, kappa, omeg, rad |
13 |
USE comvert, ONLY : ap, bp, nivsig, nivsigs, pa, preff, presnivs |
USE comvert, ONLY : ap, bp, nivsig, nivsigs, pa, preff, presnivs |
|
USE logic, ONLY : fxyhypb, ysinus |
|
14 |
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 |
15 |
USE serre, ONLY : clat, clon, dzoomx, dzoomy, grossismx, grossismy, & |
USE dimens_m, ONLY : iim, jjm, llm, nqmx |
|
taux, tauy |
|
|
USE temps, ONLY : annee_ref, day_ref, itaufin, itau_dyn |
|
16 |
USE ener, ONLY : ang0, etot0, ptot0, stot0, ztot0 |
USE ener, ONLY : ang0, etot0, ptot0, stot0, ztot0 |
17 |
|
USE calendar, ONLY : ju2ymds, ymds2ju |
18 |
USE iniadvtrac_m, ONLY : tname, ttext |
USE iniadvtrac_m, ONLY : tname, ttext |
19 |
|
USE logic, ONLY : fxyhypb, ysinus |
20 |
USE netcdf95, ONLY : nf95_close, nf95_create, nf95_def_dim, & |
USE netcdf95, ONLY : nf95_close, nf95_create, nf95_def_dim, & |
21 |
nf95_def_var, nf95_enddef, nf95_inq_varid, nf95_put_att, & |
nf95_def_var, nf95_enddef, nf95_inq_varid, nf95_put_att, & |
22 |
nf95_put_var |
nf95_put_var |
23 |
USE netcdf, ONLY : nf90_clobber, nf90_float, nf90_global, & |
USE netcdf, ONLY : nf90_clobber, nf90_float, nf90_global, & |
24 |
nf90_unlimited |
nf90_unlimited |
25 |
|
USE paramet_m, ONLY : iip1, jjp1, llmp1 |
26 |
|
USE serre, ONLY : clat, clon, dzoomx, dzoomy, grossismx, grossismy, & |
27 |
|
taux, tauy |
28 |
|
USE temps, ONLY : annee_ref, day_ref |
29 |
|
|
30 |
CHARACTER (len=*), INTENT (IN) :: fichnom |
CHARACTER (len=*), INTENT (IN) :: fichnom |
31 |
INTEGER, INTENT (IN) :: iday_end |
INTEGER, INTENT (IN) :: iday_end |
34 |
! Local: |
! Local: |
35 |
|
|
36 |
INTEGER :: iq, l |
INTEGER :: iq, l |
37 |
INTEGER :: length |
INTEGER, PARAMETER:: length = 100 |
|
PARAMETER (length=100) |
|
38 |
REAL :: tab_cntrl(length) ! tableau des parametres du run |
REAL :: tab_cntrl(length) ! tableau des parametres du run |
39 |
|
|
40 |
! Variables locales pour NetCDF: |
! Variables locales pour NetCDF: |
54 |
|
|
55 |
PRINT *, 'Call sequence information: dynredem0' |
PRINT *, 'Call sequence information: dynredem0' |
56 |
|
|
57 |
CALL ymds2ju(annee_ref, 1, iday_end, 0.0, zjulian) |
CALL ymds2ju(annee_ref, 1, iday_end, 0., zjulian) |
58 |
CALL ju2ymds(zjulian, yyears0, mmois0, jjour0, hours) |
CALL ju2ymds(zjulian, yyears0, mmois0, jjour0, hours) |
59 |
|
|
60 |
DO l = 1, length |
DO l = 1, length |
105 |
END IF |
END IF |
106 |
|
|
107 |
tab_cntrl(30) = real(iday_end) |
tab_cntrl(30) = real(iday_end) |
|
tab_cntrl(31) = real(itau_dyn+itaufin) |
|
108 |
|
|
109 |
CALL nf95_create(fichnom, nf90_clobber, nid) |
CALL nf95_create(fichnom, nf90_clobber, nid) |
110 |
CALL nf95_put_att(nid, nf90_global, 'title', & |
CALL nf95_put_att(nid, nf90_global, 'title', & |