1 |
C $Header: $ |
2 |
C $Name: $ |
3 |
|
4 |
#include "ctrparam.h" |
5 |
#include "ATM2D_OPTIONS.h" |
6 |
|
7 |
C !INTERFACE: |
8 |
SUBROUTINE SUM_YR_END_DIAGS( myTime, myIter, myThid ) |
9 |
C *==========================================================* |
10 |
C | Tabulate year-end annual mean diagnostics | |
11 |
c | Called at top of coupled period, after seaice growth/melt| |
12 |
C *==========================================================* |
13 |
IMPLICIT NONE |
14 |
|
15 |
C === Global Atmosphere Variables === |
16 |
#include "ATMSIZE.h" |
17 |
#include "SIZE.h" |
18 |
#include "GRID.h" |
19 |
#include "EEPARAMS.h" |
20 |
#include "THSICE_VARS.h" |
21 |
#include "ATM2D_VARS.h" |
22 |
|
23 |
|
24 |
C !INPUT/OUTPUT PARAMETERS: |
25 |
C === Routine arguments === |
26 |
C myTime - current simulation time (ocean model time) |
27 |
C myIter - iteration number (ocean model) |
28 |
C myThid - Thread no. that called this routine. |
29 |
_RL myTime |
30 |
INTEGER myIter |
31 |
INTEGER myThid |
32 |
|
33 |
C LOCAL VARIABLES: |
34 |
INTEGER i,j |
35 |
_RL iceArea |
36 |
|
37 |
iceArea = 0. _d 0 |
38 |
DO j=1,int(sNy/2) |
39 |
DO i=1,sNx |
40 |
IF (iceMask(i,j,1,1).GT. 0. _d 0) |
41 |
& iceArea = iceArea + rA(i,j,1,1)*iceMask(i,j,1,1) |
42 |
ENDDO |
43 |
ENDDO |
44 |
SHice_min=min(SHice_min,iceArea) |
45 |
SHice_max=max(SHice_max,iceArea) |
46 |
|
47 |
iceArea = 0. _d 0 |
48 |
DO j=int(sNy/2),sNy |
49 |
DO i=1,sNx |
50 |
IF (iceMask(i,j,1,1).GT. 0. _d 0) |
51 |
& iceArea = iceArea + rA(i,j,1,1)*iceMask(i,j,1,1) |
52 |
ENDDO |
53 |
ENDDO |
54 |
NHice_min=min(NHice_min,iceArea) |
55 |
NHice_max=max(NHice_max,iceArea) |
56 |
|
57 |
DO j=1,sNy |
58 |
DO i=1,sNx |
59 |
|
60 |
IF (maskC(i,j,1,1,1) .EQ. 1.) THEN |
61 |
sst_tave= sst_tave + rA(i,j,1,1)*sstFromOcn(i,j) |
62 |
sss_tave= sss_tave + rA(i,j,1,1)*sssFromOcn(i,j) |
63 |
HF2ocn_tave = HF2ocn_tave + rA(i,j,1,1)*pass_qnet(i,j) |
64 |
FW2ocn_tave = FW2ocn_tave + rA(i,j,1,1)* |
65 |
& (pass_precip(i,j) + pass_evap(i,j) + pass_runoff(i,j)) |
66 |
|
67 |
CO2flx_tave = CO2flx_tave + rA(i,j,1,1)*oFluxCO2(i,j) |
68 |
ENDIF |
69 |
|
70 |
ENDDO |
71 |
ENDDO |
72 |
|
73 |
RETURN |
74 |
END |
75 |
|