/[MITgcm]/MITgcm/pkg/shelfice/shelfice_init_fixed.F
ViewVC logotype

Annotation of /MITgcm/pkg/shelfice/shelfice_init_fixed.F

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.3 - (hide annotations) (download)
Thu Apr 30 13:42:30 2009 UTC (15 years, 1 month ago) by dimitri
Branch: MAIN
CVS Tags: checkpoint61n, checkpoint61o, checkpoint61r, checkpoint61s, checkpoint61p, checkpoint61q
Changes since 1.2: +15 -1 lines
Adding diagnostics SHIForcT and SHIForcS, the ice shelf forcing for T and S.

1 dimitri 1.3 C $Header: /u/gcmpack/MITgcm/pkg/shelfice/shelfice_init_fixed.F,v 1.2 2009/01/15 10:15:20 mlosch Exp $
2 mlosch 1.1 C $Name: $
3    
4     #include "SHELFICE_OPTIONS.h"
5    
6     SUBROUTINE SHELFICE_INIT_FIXED( myThid )
7     C /============================================================\
8     C | SUBROUTINE SHELFICE_INIT_FIXED |
9     C | o Routine to initialize SHELFICE parameters and variables. |
10     C |============================================================|
11     C | Initialize SHELFICE parameters and variables. |
12     C \============================================================/
13     IMPLICIT NONE
14    
15     C === Global variables ===
16     #include "SIZE.h"
17     #include "EEPARAMS.h"
18     #include "PARAMS.h"
19     #include "GRID.h"
20     #include "SHELFICE.h"
21    
22     C === Routine arguments ===
23     C myThid - Number of this instance of SHELFICE_INIT_FIXED
24     INTEGER myThid
25    
26     #ifdef ALLOW_SHELFICE
27     C === Local variables ===
28     C I,J,K,bi,bj - Loop counters
29     INTEGER I, J, K, bi, bj
30     #ifdef ALLOW_DIAGNOSTICS
31     INTEGER diagNum
32     CHARACTER*8 diagName
33     CHARACTER*16 diagCode
34     CHARACTER*16 diagUnits
35     CHARACTER*(80) diagTitle
36     #endif /* ALLOW_DIAGNOSTICS */
37    
38     C-----------------------------------------------------------------------
39     C-- Initialize SHELFICE variables kTopC
40     C-- kTopC is the same as kSurfC, except for places over land.
41     C-- Over land (completely dry cells), kTop = 0, while kSurfC = Nr+1
42     C-----------------------------------------------------------------------
43    
44     DO bj = myByLo(myThid), myByHi(myThid)
45     DO bi = myBxLo(myThid), myBxHi(myThid)
46     DO J = 1-OLy, sNy+OLy
47     DO I = 1-OLx, sNx+OLx
48     kTopC(i,j,bi,bj) = 0
49     DO K = Nr, 1, -1
50     IF ( maskC(I,J,K,bi,bj) .NE. 0. _d 0 )
51     & kTopC(I,J,bi,bj) = K
52     ENDDO
53     ENDDO
54     ENDDO
55     ENDDO
56     ENDDO
57    
58     #ifdef ALLOW_DIAGNOSTICS
59     IF ( useDiagnostics ) THEN
60     diagName = 'SHIfwFlx'
61 mlosch 1.2 diagTitle = 'Ice shelf fresh water flux (positive upward)'
62 mlosch 1.1 diagUnits = 'kg/m^2/s '
63 mlosch 1.2 diagCode = 'SM MS '
64 mlosch 1.1 CALL DIAGNOSTICS_ADD2LIST( diagNum,
65     I diagName, diagCode, diagUnits, diagTitle, myThid )
66    
67     diagName = 'SHIhtFlx'
68 mlosch 1.2 diagTitle = 'Ice shelf heat flux (positive upward)'
69 mlosch 1.1 diagUnits = 'W/m^2 '
70 mlosch 1.2 diagCode = 'SM MS '
71 mlosch 1.1 CALL DIAGNOSTICS_ADD2LIST( diagNum,
72     I diagName, diagCode, diagUnits, diagTitle, myThid )
73    
74 mlosch 1.2 diagName = 'SHIUDrag'
75     diagTitle = 'U momentum tendency from ice shelf drag'
76 mlosch 1.1 diagUnits = 'm/s^2 '
77     WRITE(diagCode,'(A,I3.3,A)') 'UU ',diagNum+2,'MR '
78     CALL DIAGNOSTICS_ADD2LIST( diagNum,
79     I diagName, diagCode, diagUnits, diagTitle, myThid )
80    
81 mlosch 1.2 diagName = 'SHIVDrag'
82     diagTitle = 'V momentum tendency from ice shelf drag'
83 mlosch 1.1 diagUnits = 'm/s^2 '
84     WRITE(diagCode,'(A,I3.3,A)') 'VV ', diagNum, 'MR '
85     CALL DIAGNOSTICS_ADD2LIST( diagNum,
86     I diagName, diagCode, diagUnits, diagTitle, myThid )
87 dimitri 1.3
88     diagName = 'SHIForcT'
89     diagTitle = 'Ice shelf forcing for theta, >0 increases theta'
90     diagUnits = 'W/m^2 '
91     diagCode = 'SM MS '
92     CALL DIAGNOSTICS_ADD2LIST( diagNum,
93     I diagName, diagCode, diagUnits, diagTitle, myThid )
94    
95     diagName = 'SHIForcS'
96     diagTitle = 'Ice shelf forcing for salt, >0 increases salt'
97     diagUnits = 'g/m^2/s '
98     diagCode = 'SM MS '
99     CALL DIAGNOSTICS_ADD2LIST( diagNum,
100     I diagName, diagCode, diagUnits, diagTitle, myThid )
101 mlosch 1.1 ENDIF
102     #endif /* ALLOW_DIAGNOSTICS */
103     #endif /* ALLOW_SHELFICE */
104    
105     RETURN
106     END
107    

  ViewVC Help
Powered by ViewVC 1.1.22