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

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

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


Revision 1.4 - (show annotations) (download)
Wed Jul 8 21:58:30 2009 UTC (14 years, 11 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint62, checkpoint61v, checkpoint61w, checkpoint61t, checkpoint61u, checkpoint61z, checkpoint61x, checkpoint61y
Changes since 1.3: +15 -8 lines
move MNC calls from _readparms.F to _init_fixed.F (called after ini_model_io)

1 C $Header: /u/gcmpack/MITgcm/pkg/shelfice/shelfice_init_fixed.F,v 1.3 2009/04/30 13:42:30 dimitri Exp $
2 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 #ifdef ALLOW_MNC
39 C Initialize MNC variable information for SHELFICE
40 IF ( useMNC .AND. (shelfice_tave_mnc.OR.shelfice_dump_mnc)
41 & ) THEN
42 CALL SHELFICE_MNC_INIT( myThid )
43 ENDIF
44 #endif /* ALLOW_MNC */
45
46 C-----------------------------------------------------------------------
47 C-- Initialize SHELFICE variables kTopC
48 C-- kTopC is the same as kSurfC, except for places over land.
49 C-- Over land (completely dry cells), kTop = 0, while kSurfC = Nr+1
50 C-----------------------------------------------------------------------
51
52 DO bj = myByLo(myThid), myByHi(myThid)
53 DO bi = myBxLo(myThid), myBxHi(myThid)
54 DO J = 1-OLy, sNy+OLy
55 DO I = 1-OLx, sNx+OLx
56 kTopC(i,j,bi,bj) = 0
57 DO K = Nr, 1, -1
58 IF ( maskC(I,J,K,bi,bj) .NE. 0. _d 0 )
59 & kTopC(I,J,bi,bj) = K
60 ENDDO
61 ENDDO
62 ENDDO
63 ENDDO
64 ENDDO
65
66 #ifdef ALLOW_DIAGNOSTICS
67 IF ( useDiagnostics ) THEN
68 diagName = 'SHIfwFlx'
69 diagTitle = 'Ice shelf fresh water flux (positive upward)'
70 diagUnits = 'kg/m^2/s '
71 diagCode = 'SM MS '
72 CALL DIAGNOSTICS_ADD2LIST( diagNum,
73 I diagName, diagCode, diagUnits, diagTitle, myThid )
74
75 diagName = 'SHIhtFlx'
76 diagTitle = 'Ice shelf heat flux (positive upward)'
77 diagUnits = 'W/m^2 '
78 diagCode = 'SM MS '
79 CALL DIAGNOSTICS_ADD2LIST( diagNum,
80 I diagName, diagCode, diagUnits, diagTitle, myThid )
81
82 diagName = 'SHIUDrag'
83 diagTitle = 'U momentum tendency from ice shelf drag'
84 diagUnits = 'm/s^2 '
85 WRITE(diagCode,'(A,I3.3,A)') 'UU ',diagNum+2,'MR '
86 CALL DIAGNOSTICS_ADD2LIST( diagNum,
87 I diagName, diagCode, diagUnits, diagTitle, myThid )
88
89 diagName = 'SHIVDrag'
90 diagTitle = 'V momentum tendency from ice shelf drag'
91 diagUnits = 'm/s^2 '
92 WRITE(diagCode,'(A,I3.3,A)') 'VV ', diagNum, 'MR '
93 CALL DIAGNOSTICS_ADD2LIST( diagNum,
94 I diagName, diagCode, diagUnits, diagTitle, myThid )
95
96 diagName = 'SHIForcT'
97 diagTitle = 'Ice shelf forcing for theta, >0 increases theta'
98 diagUnits = 'W/m^2 '
99 diagCode = 'SM MS '
100 CALL DIAGNOSTICS_ADD2LIST( diagNum,
101 I diagName, diagCode, diagUnits, diagTitle, myThid )
102
103 diagName = 'SHIForcS'
104 diagTitle = 'Ice shelf forcing for salt, >0 increases salt'
105 diagUnits = 'g/m^2/s '
106 diagCode = 'SM MS '
107 CALL DIAGNOSTICS_ADD2LIST( diagNum,
108 I diagName, diagCode, diagUnits, diagTitle, myThid )
109 ENDIF
110 #endif /* ALLOW_DIAGNOSTICS */
111 #endif /* ALLOW_SHELFICE */
112
113 RETURN
114 END

  ViewVC Help
Powered by ViewVC 1.1.22