source: trunk/SOURCES/Hemin40_files/output_hemin40_mod.f90 @ 120

Last change on this file since 120 was 120, checked in by aquiquet, 7 years ago

Water budget outputs for the Hemin40 geometry

File size: 18.8 KB
Line 
1module  output_hemin40_mod
2
3       USE module3D_phy
4       use bilan_eau_mod
5
6implicit none
7
8real ::  bmean                        !
9real ::  accmean                      ! accumulation moyenne
10real ::  ablmean                      ! ablation moyenne
11real ::  calvmean                     ! moyenne calving
12real ::  ablbordmean                  !
13real ::  ablatotmean
14real ::  bmeltmean                    ! moyenne fusion basale
15real ::  tbmean                       ! temperature basale moyenne
16real ::  tbdotmean                    ! moyenne variation / temps temperature basale
17real ::  vsmean                       ! vitesse de surface moyenne
18!real ::  vsdotmean                    ! moyenne variation / temps vitesse de surface
19real ::  uzsmean   !!!! utilise ?     ! vitesse verticale de surface moyenne
20real ::  uzsdotmean                   ! moyenne variation / temps vitesse verticale de surface
21real ::  uzkmean                      ! moyenne vitesse verticale de surface
22real ::  hdotmean                     ! moyenne derivee / temps de H
23real ::  bdotmean                     ! moyenne bedrock derive / temps
24!real ::  pf0mean                      ! moyenne de PF0
25!real ::  pf1mean                      ! moyenne de PF1
26!real ::  evapmean                     ! moyenne de EVAP
27!real ::  pwmean                       ! moyenne PW
28!real ::  pdfmean                      ! moyenne PDF
29logical,dimension(nx,ny,13) :: mask_cal ! masque regions calotte
30integer, dimension(nx,ny) :: write_mask
31CONTAINS
32!_________________________________________________________________________
33subroutine init_outshort
34
35!ndisp sorite courte tous les ndisp
36NDISP=100
37mask_cal(:,:,:)=.false.
38mask_cal(:,:,1)=.true.
39! calcul d'un masque pour les regions des calottes
40do j=1,ny
41   do i=1,nx
42! -- Laurentide
43      IF( (((xlong(i,j).ge.190).AND.(xlong(i,j).lt.210)).AND. &
44           ((ylat(i,j).ge.50).AND.(ylat(i,j).le.70))).OR.      &
45           (((xlong(i,j).ge.210).AND.(xlong(i,j).lt.220)).AND. &
46           ((ylat(i,j).ge.55).AND.(ylat(i,j).le.75))).OR.      &
47           (((xlong(i,j).ge.220).AND.(xlong(i,j).lt.250)).AND. & 
48           ((ylat(i,j).ge.40).AND.(ylat(i,j).le.85))).OR.      &
49           (((xlong(i,j).ge.250).AND.(xlong(i,j).lt.290)).AND. &
50           ((ylat(i,j).ge.35).AND.(ylat(i,j).le.85))).OR.      &
51           (((xlong(i,j).ge.290).AND.(xlong(i,j).lt.300)).AND. &
52           ((ylat(i,j).ge.35).AND.(ylat(i,j).le.75))).OR.      &
53           (((xlong(i,j).ge.300).AND.(xlong(i,j).le.310)).AND. &
54           ((ylat(i,j).ge.35).AND.(ylat(i,j).lt.60))) ) mask_cal(i,j,2)=.true.
55! -- Groenland
56
57! -- Labrador Sector
58        IF((((xlong(i,j).ge.285).AND.(xlong(i,j).le.300)).AND.  &
59            ((ylat(i,j).ge.35).AND.(ylat(i,j).le.70))).OR.      &
60            (((xlong(i,j).ge.300).AND.(xlong(i,j).lt.310)).AND. &
61            ((ylat(i,j).ge.35).AND.(ylat(i,j).lt.60)))) mask_cal(i,j,5)=.true.
62! -- Keewatin Sector
63        IF(  ((xlong(i,j).gt.240).AND.(xlong(i,j).lt.285)).AND. &
64             ((ylat(i,j).ge.35).AND.(ylat(i,j).le.70)) ) mask_cal(i,j,6)=.true.
65! -- Innuitian Ice Sheet
66        IF( ((xlong(i,j).gt.230).AND.(xlong(i,j).lt.290)).AND. &
67            ((ylat(i,j).gt.70).AND.(ylat(i,j).le.85))) mask_cal(i,j,7)=.true.
68! -- Cordilleran Ice Sheet
69        IF( (((xlong(i,j).ge.190).AND.(xlong(i,j).lt.210)).AND. &
70            ((ylat(i,j).ge.50).AND.(ylat(i,j).le.70))).OR.      &
71            (((xlong(i,j).ge.210).AND.(xlong(i,j).lt.220)).AND. &
72            ((ylat(i,j).ge.55).AND.(ylat(i,j).le.75))).OR.      &
73            (((xlong(i,j).ge.210).AND.(xlong(i,j).lt.220)).AND. &
74             ((ylat(i,j).ge.55).AND.(ylat(i,j).le.75))).OR.     &
75            (((xlong(i,j).ge.220).AND.(xlong(i,j).le.240)).AND. &
76             ((ylat(i,j).ge.40).AND.(ylat(i,j).le.70))) ) mask_cal(i,j,8)=.true.
77! -- Groenland
78        IF( (((xlong(i,j).ge.290).AND.(xlong(i,j).le.310)).AND. &
79            ((ylat(i,j).ge.75).AND.(ylat(i,j).le.85))).OR.      &
80            (((xlong(i,j).ge.300).AND.(xlong(i,j).lt.310)).AND. &
81            ((ylat(i,j).ge.60).AND.(ylat(i,j).le.75))).OR.      &
82!           (((xlong(i,j).ge.310).AND.(xlong(i,j).le.350)).AND. &
83!           ((ylat(i,j).ge.40).AND.(ylat(i,j).le.85))) ) THEN
84            (((xlong(i,j).ge.310).AND.(xlong(i,j).le.345)).AND. &
85            ((ylat(i,j).ge.54).AND.(ylat(i,j).le.85))) ) mask_cal(i,j,3)=.true.
86! -- Fennoscandie
87        IF( (((xlong(i,j).ge.345).AND.(xlong(i,j).lt.360)).AND. & !British
88            ((ylat(i,j).ge.50).AND.(ylat(i,j).le.60))).OR.      &
89            (((xlong(i,j).ge.0).AND.(xlong(i,j).le.40)).AND.    & !Scand
90            ((ylat(i,j).ge.50).AND.(ylat(i,j).le.70))).OR.      &
91!            (((xlong(i,j).ge.50).AND.(xlong(i,j).le.120)).AND.  &
92            (((xlong(i,j).ge.10).AND.(xlong(i,j).le.122)).AND.  & !BK
93            ((ylat(i,j).ge.65).AND.(ylat(i,j).le.85))) ) mask_cal(i,j,4)=.true.
94!! -- Scandinavian Ice Sheet Pauline
95        IF( ((xlong(i,j).gt.0.).AND.(xlong(i,j).le.40)).AND. &
96             ((ylat(i,j).ge.50).AND.(ylat(i,j).le.70))) mask_cal(i,j,9)=.true.
97! -- Barents Ice Sheet Pauline
98        IF ( (((xlong(i,j).gt.10.).AND.(xlong(i,j).le.60.)).AND. &
99             ((ylat(i,j).gt.70).AND.(ylat(i,j).le.85.))).OR.    &
100             (((xlong(i,j).gt.40.).AND.(xlong(i,j).le.60.)).AND. &
101              ((ylat(i,j).ge.65.).AND.(ylat(i,j).lt.70.)))) mask_cal(i,j,10)=.true.
102! -- Kara Ice Sheet Pauline
103        IF( (((xlong(i,j).gt.60.).AND.(xlong(i,j).le.122)).AND. &
104             ((ylat(i,j).ge.70).AND.(ylat(i,j).le.85))).OR.    &
105             (((xlong(i,j).gt.60.).AND.(xlong(i,j).le.80.)).AND. &
106              ((ylat(i,j).ge.65.).AND.(ylat(i,j).lt.70.))))  mask_cal(i,j,11)=.true.
107! -- British Ice Sheet Pauline
108        IF( ((xlong(i,j).gt.350.).AND.(xlong(i,j).le.360)).AND. &
109             ((ylat(i,j).ge.50).AND.(ylat(i,j).le.60))) mask_cal(i,j,13)=.true.
110! -- Siberian Ice Sheet
111        IF( ((xlong(i,j).gt.122.).AND.(xlong(i,j).lt.190)).AND. &
112             ((ylat(i,j).ge.60).AND.(ylat(i,j).le.85))) mask_cal(i,j,12)=.true.
113       enddo
114    enddo
115!        open (UNIT=7777,file='mask_hemin40-02.dat')
116!   do j=1,ny
117!        do i=1,nx
118!        if (mask_cal(i,j,2)) then
119!                write_mask(i,j)=2
120!        else
121!                write_mask(i,j)=0
122!        endif   
123!        write(7777,*) i,j,write_mask(i,j)
124!        enddo     
125!   enddo
126!   close(UNIT=7777)
127!   stop
128
129! ecriture entete avec les colonnes du fichier short :
130WRITE(num_ritz, '(a91)')"! hemin40    : time,isvol,deltavol,inp,isvolf,inf,isacc,isabl,ISABLBORD,ABLATOT,ISCALV,ISBM"
131WRITE(num_ritz, '(a90)')"! colonne    :  1    2      3       4    5     6    7     8      9        10      11    12"
132WRITE(num_ritz,'(a157)')"! calotte    : Laurentide Groenland Fennoscandie LabradorSector KeewatinSector InnuitianIS CordilleranIS ScandinavianIS BarentsIS KaraIS SiberianIS BritishIS"
133WRITE(num_ritz,'(a153)')"! isvol      :    13        26          39            52            65             78           91            104         117      130      143       156"
134WRITE(num_ritz,'(a153)')"! inp        :    14        27          40            53            66             79           92            105         118      131      144       157"
135WRITE(num_ritz,'(a153)')"! isvolf     :    15        28          41            54            67             80           93            106         119      132      145       158"
136WRITE(num_ritz,'(a153)')"! inf        :    16        29          42            55            68             81           94            107         120      133      146       159"
137WRITE(num_ritz,'(a153)')"! isacc      :    17        30          43            56            69             82           95            108         121      134      147       160"
138WRITE(num_ritz,'(a153)')"! isabl      :    18        31          44            57            70             83           96            109         122      135      148       161"
139WRITE(num_ritz,'(a153)')"! isablbord  :    19        32          45            58            71             84           97            110         123      136      149       162"
140WRITE(num_ritz,'(a153)')"! ablatot    :    20        33          46            59            72             85           98            111         124      137      150       163"
141WRITE(num_ritz,'(a153)')"! iscalv     :    21        34          47            60            73             86           99            112         125      138      151       164"
142WRITE(num_ritz,'(a153)')"! isbm       :    22        35          48            61            74             87          100            113         126      139      152       165"
143WRITE(num_ritz,'(a153)')"! itjjamean_ :    23        36          49            62            75             88          101            114         127      140      153       166"
144WRITE(num_ritz,'(a153)')"! hmean_     :    24        37          50            63            76             89          102            115         128      141      154       167"
145WRITE(num_ritz,'(a153)')"! Hmax_      :    25        38          51            64            77             90          103            116         129      142      155       168"
146WRITE(num_ritz,*)
147end subroutine init_outshort
148
149!_________________________________________________________________________
150subroutine shortoutput
151
152! 1_initialization
153!------------------
154      integer KK
155!     integer inpl, INPG, INPF
156!     integer inplab,inpkeew,inpinn,inpcord
157!     integer inpscaN,inpbar,inpkara,inpsib,inpbrit
158     integer inp(13) ! Surface posee (nb de noeuds)
159     integer inf(13) ! surface flottante
160
161!Variables pour sommer     
162      real isvol(13),isvolf(13) ! volume posé et flottants
163      REAL ISCALV(13),ISACC(13),ISBM(13),ISABL(13)
164      REAL ISABLBORD(13),ABLATOT(13),TACC(13),TBM(13)
165      REAL ITJJA(13)
166!      REAL ABLAMEAN
167!moyennes utilisées en output
168      REAL HMAX_(13) , HMEAN_(13) 
169      REAL BMEAN_(13) , ACCMEAN_(13) , ABLMEAN_(13) , ABLBORDMEAN_(13)
170      REAL ABLATOTMEAN_(13) , CALVMEAN_(13) , ITJJAMEAN_(13)
171
172
173
174!     REAL ITJJAMEAN_L, ITJJAMEAN_G, ITJJAMEAN_F ...
175!     REAL ITJJAMEAN_LAB,ITJJAMEAN_KEEW,ITJJAMEAN_INN,ITJJAMEAN_CORD
176!     REAL ITJJAMEAN_SCAN,ITJJAMEAN_BAR,ITJJAMEAN_KARA,ITJJAMEAN_SIB,ITJJAMEAN_BRIT
177
178      REAL HDOTMEAN_G
179!      REAL ABLA(NX,NY)
180      REAL DELTAVOL
181
182
183!     open(unit=4145,file='reg_output_nord.dat')
184
185      BMELTMEAN=0.
186      TBMEAN=0.
187      TBDOTMEAN=0.
188      VSMEAN=0.
189      UZSMEAN=0.
190      UZSDOTMEAN=0.
191      UZKMEAN=0.
192      HDOTMEAN=0.
193      HDOTMEAN_G = 0.
194      BDOTMEAN=0.
195
196      DO kk = 1,13
197        INP(kk) = 0
198        INF(kk) = 0
199        ISVOL(kk) = 0.
200        ISVOLF(kk) = 0.
201        ISBM(kk) = 0.
202        ISACC(kk) = 0.
203        ISCALV(kk) = 0.
204        ISABL(kk) = 0.
205        ISABLBORD(kk) = 0.
206        ABLATOT(kk)= 0.
207        TACC(kk) = 0.
208        TBM(kk) = 0.
209        ITJJA(kk) = 0.
210       
211! nouveau tof mai 2009
212!        where (mask_cal(:,:,kk).and.H(:,:).gt.2..and.flot(:,:)) ISVOLF(kk) = ISVOLF(kk) + H(I,J)
213        isvolf(kk) = sum(H(:,:),mask=(mask_cal(:,:,kk).and.(H(:,:).gt.2.).and.flot(:,:)))
214        INF(kk) = count(mask_cal(:,:,kk).and.(H(:,:).gt.2.).and.flot(:,:))
215
216        INP(kk) = count(mask_cal(:,:,kk).and.(H(:,:).gt.2.).and..not.flot(:,:))
217        isvol(kk) = sum(H(:,:),mask=(mask_cal(:,:,kk).and.(H(:,:).gt.2.).and..not.flot(:,:)))
218        isacc(kk) = sum(Acc(:,:),mask=(mask_cal(:,:,kk).and.(H(:,:).gt.2.).and..not.flot(:,:)))
219        isabl(kk) = sum(Abl(:,:),mask=(mask_cal(:,:,kk).and.(H(:,:).gt.2.).and..not.flot(:,:)))
220        itjja(kk) = sum(Tjuly(:,:),mask=(mask_cal(:,:,kk).and.(H(:,:).gt.2.).and..not.flot(:,:)))
221        Hmax_(kk) = maxval(H(:,:),mask=(mask_cal(:,:,kk).and.(H(:,:).gt.2.).and..not.flot(:,:)))
222        Tacc(kk) = sum(Acc(:,:),mask=(mask_cal(:,:,kk).and.(H(:,:).gt.2.)))
223        isablbord(kk) = sum(ablbord(:,:),mask=(mask_cal(:,:,kk)))
224        iscalv(kk) =  sum(calv(:,:),mask=(mask_cal(:,:,kk).and.(H(:,:).gt.2.)))/dt
225
226        ablatot(kk) = isabl(kk) + isablbord(kk)
227        isbm(kk) = isacc(kk)+isabl(kk)+iscalv(kk)+isablbord(kk)
228        Tbm(kk) = Tacc(kk)+isabl(kk)+iscalv(kk)+isablbord(kk)
229
230
231     enddo
232
233
234!!$
235!!$
236!!$            IF(H(i,j).gt.2.)  THEN
237!!$             if (mk(i,j).eq.1) then
238!!$               INF(2) = INF(2) + 1
239!!$               ISVOLF(2) = ISVOLF(2) + H(I,J)
240!!$             else
241!!$               INP(2) = INP(2) + 1
242!!$               ISVOL(2) = ISVOL(2) + H(I,J)
243!!$               ISACC(2) = ISACC(2) + ACC(I,J)
244!!$               ISABL(2) = ISABL(2) + ABL(I,J)
245!!$               ITJJA(2) = ITJJA(2) + TJULY(I,J)
246!!$               if (H(I,J).gt.HMAX_(2)) HMAX_(2)=H(I,J)
247!!$             endif
248!!$            ENDIF
249!!$            TACC(2) = TACC(2) + ACC(I,J)
250!!$             ISABLBORD(2) = ISABLBORD(2) + ABLBORD(I,J)
251!!$             ABLATOT(2) = ISABL(2) + ISABLBORD(2)
252!!$             ISCALV(2) = ISCALV(2) + CALV(I,J)
253!!$             ISBM(2) = ISACC(2)+ISABL(2)+ISCALV(2)+ISABLBORD(2)
254!!$             TBM(2) = TACC(2)+ISABL(2)+ISCALV(2)+ISABLBORD(2)
255!!$        ENDIF
256!!$
257!!$
258!!$      END DO 
259
260
261 
262do K=1,13
263
264! == Les moyennes     
265      IF(INP(K).ne.0)THEN
266          HMEAN_(K) = ISVOL(K)   /INP(K) ! /(DX*DY*INP(K))
267          BMEAN_(K) = ISBM(K)    /INP(K)
268          ACCMEAN_(K) = ISACC(K) /INP(K)
269          ABLMEAN_(K) = ISABL(K) /INP(K)
270          ABLBORDMEAN_(K) = ISABLBORD(K) /INP(K)
271          CALVMEAN_(K)    = ISCALV(K)    /INP(K)
272          ABLATOTMEAN_(K) = ABLATOT(K)   /INP(K)
273          ITJJAMEAN_(K)   = ITJJA(K)     /INP(K)
274       ENDIF
275! == Les volmes intergrées (3D)
276      ISVOL(K) = ISVOL(K)*DX*DY     
277              isacc(k)=isacc(k)*dx*dy
278              isabl(k)=isabl(k)*dx*dy
279              isablbord(k)=isablbord(k)*dx*dy
280              ablatot(k)=ablatot(k)*dx*dy
281              iscalv(k)=iscalv(k)*dx*dy
282              isbm(k)=isbm(k)*dx*dy
283              tacc(k)=tacc(k)*dx*dy
284              tbm(k)=tbm(k)*dx*dy
285enddo
286!nom_table='abl'
287!call printtable_r(abl,nom_table)
288
289!====================================================
290! -- Hemin40                : : 1   
291
292      if (NP.ne.0) then 
293!        HMEAN=VOL/NP
294!        VOL=VOL*DX*DY
295!        ISVOL(1) = VOL
296!        BMEAN=BMEAN/NP
297!        ACCMEAN=ACCMEAN/NP
298!        ITJJAMEAN = ITJJA(1)/NP
299!        ABLMEAN=BMEAN-ACCMEAN
300!!!     ABLMEAN = ABLMEAN/NP
301!        CALVMEAN=CALVMEAN/NP
302!!!     BMELTMEAN=BMELTMEAN/NP
303!!!     ABLBORDMEAN=ABLBORDMEAN/NP
304!!!     ABLAMEAN = ABLAMEAN/NP
305        TBMEAN=TBMEAN/NP
306        TBDOTMEAN=TBDOTMEAN/NP
307        VSMEAN=VSMEAN/NP
308!       VSDOTMEAN=VSDOTMEAN/NP
309        UZSMEAN=UZSMEAN/NP
310        UZSDOTMEAN=UZSDOTMEAN/NP
311        UZKMEAN=UZKMEAN/NP
312        DELTAVOL = HDOTMEAN*DX*DY
313        HDOTMEAN=HDOTMEAN/NP 
314    ELSE
315        TBMEAN=0.
316        TBDOTMEAN=0.
317        VSMEAN=0.
318        UZSMEAN=0.
319        UZSDOTMEAN=0.
320        UZKMEAN=0.
321        DELTAVOL = 0.
322        HDOTMEAN=0.
323      endif
324
325      BDOTMEAN=BDOTMEAN/NX/NY 
326
327! 2_writing outputs
328!------------------
329
330!         WRITE(35,904)TIME,VOL,DELTAVOL,NP,ISACC(1),ISABL(1),      &
331!          ISABLBORD(1),ABLATOT(1),ISCALV(1),ISBM(1),               &
332!          ISVOL(2),INPL,ISACC(2),                                  &
333!          ISABL(2),ISABLBORD(2),ABLATOT(2),ISCALV(2),ISBM(2),      &
334!          ISVOL(3),INPG,ISACC(3),ISABL(3),ISABLBORD(3),            &
335!          ABLATOT(3),ISCALV(3),ISBM(3),ISVOL(4),INPF,ISACC(4),     &
336!          ISABL(4),ISABLBORD(4),ABLATOT(4),ISCALV(4),ISBM(4),      &
337!          nint(HMEAN),nint(HMAX),BMEAN,TBMEAN,nint(VSMEAN),        &
338!          TBDOTMEAN,HDOTMEAN,BDOTMEAN,BMELTMEAN,NPAB,    &
339!!          TBDOTMEAN,VSDOTMEAN,HDOTMEAN,BDOTMEAN,BMELTMEAN,NPAB,    &
340!          NPCAL,HDOTMEAN_G,TACC(1),TBM(1),TACC(2),TBM(2),          &
341!          TACC(3),TBM(3),TACC(4),TBM(4),                           &
342!           ITJJAMEAN,ITJJAMEAN_L,ITJJAMEAN_G,ITJJAMEAN_F,          &
343!           ISVOL(5),INPLAB,ISACC(5),ABLATOT(5),ITJJAMEAN_LAB,      &
344!           ISVOL(6),INPKEEW,ISACC(6),ABLATOT(6),ITJJAMEAN_KEEW,    &
345!           ISVOL(7),INPINN,ISACC(7),ABLATOT(7),ITJJAMEAN_INN,      &
346!           ISVOL(8),INPCORD,ISACC(8),ABLATOT(8),ITJJAMEAN_CORD,    &
347!           ISVOL(9),INPSCAN,ISACC(9),ABLATOT(9),ITJJAMEAN_SCAN,    &
348!           ISVOL(10),INPBAR,ISACC(10),ABLATOT(10),ITJJAMEAN_BAR,   &
349!           ISVOL(11),INPKARA,ISACC(11),ABLATOT(11),ITJJAMEAN_KARA, &     
350!           ISVOL(12),INPSIB,ISACC(12),ABLATOT(12),ITJJAMEAN_SIB,   &     
351!           ISVOL(13),INPBRIT,ISACC(13),ABLATOT(13),ITJJAMEAN_BRIT, &
352!           HMEAN,HMEAN_L,HMEAN_G,HMEAN_F,HMEAN_LAB,HMEAN_KEEW,     &
353!           HMEAN_INN,HMEAN_CORD,HMEAN_SCAN,HMEAN_BAR,HMEAN_KARA,   &
354!           HMEAN_SIB,HMEAN_BRIT,                                   &
355!           HMAX,HMAX_L,HMAX_G,HMAX_F,HMAX_LAB,HMAX_KEEW,HMAX_INN,  &
356!           HMAX_CORD, HMAX_SCAN,HMAX_BAR,HMAX_KARA,HMAX_SIB,HMAX_BRIT     
357
358
359
360
361!print*,'========================='
362!print*,'ecrit short, time = ',time,dt
363!print*,'hdot ISABLBORD',hdot(30:40,100),ISABLBORD(2)
364
365          write(num_ritz,905)   time,isvol(1),deltavol,inp(1),isvolf(1),inf(1),isacc(1),isabl(1),    &   ! 8
366              ISABLBORD(1),ABLATOT(1),ISCALV(1),ISBM(1),     &                                     ! 4
367  isvol(2),inp(2),isvolf(2),inf(2),isacc(2),isabl(2),isablbord(2),ablatot(2),iscalv(2),isbm(2),itjjamean_(2),hmean_(2),Hmax_(2), & ! 13
368  isvol(3),inp(3),isvolf(3),inf(3),isacc(3),isabl(3),isablbord(3),ablatot(3),iscalv(3),isbm(3),itjjamean_(3),hmean_(3),hmax_(3), & ! 13
369  isvol(4),inp(4),isvolf(4),inf(4),isacc(4),isabl(4),isablbord(4),ablatot(4),iscalv(4),isbm(4),itjjamean_(4),hmean_(4),hmax_(4), & ! 13
370  isvol(5),inp(5),isvolf(5),inf(5),isacc(5),isabl(5),isablbord(5),ablatot(5),iscalv(5),isbm(5),itjjamean_(5),hmean_(5),hmax_(5), & ! 13
371  isvol(6),inp(6),isvolf(6),inf(6),isacc(6),isabl(6),isablbord(6),ablatot(6),iscalv(6),isbm(6),itjjamean_(6),hmean_(6),hmax_(6), & ! 13
372  isvol(7),inp(7),isvolf(7),inf(7),isacc(7),isabl(7),isablbord(7),ablatot(7),iscalv(7),isbm(7),itjjamean_(7),hmean_(7),hmax_(7), & ! 13
373  isvol(8),inp(8),isvolf(8),inf(8),isacc(8),isabl(8),isablbord(8),ablatot(8),iscalv(8),isbm(8),itjjamean_(8),hmean_(8),hmax_(8), & ! 13
374  isvol(9),inp(9),isvolf(9),inf(9),isacc(9),isabl(9),isablbord(9),ablatot(9),iscalv(9),isbm(9),itjjamean_(9),hmean_(9),hmax_(9), & ! 13
375  isvol(10),inp(10),isvolf(10),inf(10),isacc(10),isabl(10),isablbord(10),ablatot(10),iscalv(10),isbm(10),itjjamean_(10),hmean_(10),hmax_(10), & ! 13
376  isvol(11),inp(11),isvolf(11),inf(11),isacc(11),isabl(11),isablbord(11),ablatot(11),iscalv(11),isbm(11),itjjamean_(11),hmean_(11),hmax_(11), & ! 13
377  isvol(12),inp(12),isvolf(12),inf(12),isacc(12),isabl(12),isablbord(12),ablatot(12),iscalv(12),isbm(12),itjjamean_(12),hmean_(12),hmax_(12), & ! 13
378  isvol(13),inp(13),isvolf(13),inf(13),isacc(13),isabl(13),isablbord(13),ablatot(13),iscalv(13),isbm(13),itjjamean_(13),hmean_(13),hmax_(13), & ! 13
379  diff_H, water_bilan, sum(calv_dtt(:,:))/dtt, sum(ablbord_dtt(:,:))/dtt, sum(Bm_dtt(:,:))/dtt, sum(bmelt_dtt(:,:))/dtt !6
380
381 
382! !! format 900 faux, a reprendre
383
384905 format(f9.1,1x, e11.4,1x,e11.5, 1x,i5, 1x,e10.4,1x,i5 , 6(1x,e12.5), &
385         12(2(1x,e10.4,1x,i5), 9(1x,e11.4) ) , 6(1x,e15.8)) 
386 
387   
388940   format('%%%% ',a,'   time=',f8.0,' %%%%')
389end subroutine shortoutput
390
391
392end module output_hemin40_mod
Note: See TracBrowser for help on using the repository browser.