14 INTEGER,
INTENT (OUT) :: ierr
17 REAL,
DIMENSION (llm) :: sig_s
18 INTEGER :: idim_lat, idim_lon, idim_llm, idim_llmp1, idim_time
19 REAL,
DIMENSION (istime) :: lt
23 WRITE (*, *)
' || STATS ||'
25 WRITE (*, *)
'daysec',
daysec
26 WRITE (*, *)
'dtphys',
dtphys
28 WRITE (*, *)
'nsteppd=', nsteppd
30 stop .ne.
'Dans Instat: 1jour n pas physiques'
32 IF (mod(nsteppd,istime)/=0) stop &
33 .ne.
'Dans Instat: 1jour n*istime pas physiques'
35 istats = nsteppd/istime
36 WRITE (*, *)
'istats=', istats
37 WRITE (*, *)
'Storing ', istime,
'times per day'
38 WRITE (*, *)
'thus every ', istats,
'physical timestep '
45 ierr = nf_create(
'stats.nc', nf_clobber, nid)
46 IF (ierr/=nf_noerr)
THEN
47 WRITE (*, *) nf_strerror(ierr)
51 ierr = nf_def_dim(nid,
'latitude',
jjp1, idim_lat)
52 ierr = nf_def_dim(nid,
'longitude', iip1, idim_lon)
53 ierr = nf_def_dim(nid,
'altitude',
llm, idim_llm)
54 ierr = nf_def_dim(nid,
'llmp1',
llm+1, idim_llmp1)
55 ierr = nf_def_dim(nid,
'Time', nf_unlimited, idim_time)
58 CALL def_var_stats(nid,
'Time',
'Time',
'hours since 0000-00-0 00:00:00', &
59 1, idim_time, nvarid, ierr)
62 CALL def_var_stats(nid,
'latitude',
'latitude',
'degrees_north', 1, &
63 idim_lat, nvarid, ierr)
65 ierr = nf_put_var_double(nid, nvarid,
rlatu/
pi*180)
67 ierr = nf_put_var_real(nid, nvarid,
rlatu/
pi*180)
69 CALL def_var_stats(nid,
'longitude',
'East longitude',
'degrees_east', 1, &
70 idim_lon, nvarid, ierr)
72 ierr = nf_put_var_double(nid, nvarid,
rlonv/
pi*180)
74 ierr = nf_put_var_real(nid, nvarid,
rlonv/
pi*180)
81 ierr = nf_def_var(nid,
'presnivs', nf_double, 1, idim_llm, nvarid)
83 ierr = nf_def_var(nid,
'presnivs', nf_float, 1, idim_llm, nvarid)
85 ierr = nf_put_att_text(nid, nvarid,
'long_name', 15,
'Vertical levels')
86 ierr = nf_put_att_text(nid, nvarid,
'units', 2,
'Pa')
87 ierr = nf_put_att_text(nid, nvarid,
'positive', 4,
'down')
90 ierr = nf_put_var_double(nid, nvarid,
presnivs(1:
llm))
92 ierr = nf_put_var_real(nid, nvarid,
presnivs(1:
llm))
96 ierr = nf_def_var(nid,
'altitude', nf_double, 1, idim_llm, nvarid)
98 ierr = nf_def_var(nid,
'altitude', nf_float, 1, idim_llm, nvarid)
100 ierr = nf_put_att_text(nid, nvarid,
'long_name', 8,
'altitude')
101 ierr = nf_put_att_text(nid, nvarid,
'units', 2,
'km')
102 ierr = nf_put_att_text(nid, nvarid,
'positive', 2,
'up')
103 ierr = nf_enddef(nid)
105 ierr = nf_put_var_double(nid, nvarid,
pseudoalt)
107 ierr = nf_put_var_real(nid, nvarid,
pseudoalt)
!$Id Turb_fcg_gcssold get_uvd hqturb_gcssold endif!large scale llm day day1 day day1 *dt_toga endif!time annee_ref dt_toga u_toga vq_toga w_prof vq_prof llm day day1 day day1 *dt_dice endif!time annee_ref dt_dice swup_dice vg_dice omega_dice tg_prof vg_profd w_profd omega_profd!do llm!print llm l llm
!$Id mode_top_bound COMMON comconstr && pi
!$Header!CDK comgeom COMMON comgeom rlatu
!$Id mode_top_bound COMMON comconstr dtphys
!$Id mode_top_bound COMMON comconstr daysec
real, dimension(:), allocatable, save ap
subroutine inistats(ierr)
subroutine def_var_stats(nid, name, title, units, nbdim, dimids, nvarid, ierr)
real, dimension(:), allocatable, save bp
real, dimension(:), allocatable, save pseudoalt
real, dimension(:), allocatable, save presnivs
!$Header!CDK comgeom COMMON comgeom rlonv