/[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.1 - (show annotations) (download)
Wed Sep 10 09:18:35 2008 UTC (15 years, 8 months ago) by mlosch
Branch: MAIN
CVS Tags: checkpoint61f, checkpoint61g, checkpoint61d, checkpoint61e
 - move code for reading ice shelf topography and modifying hFacC into separate
   subroutines of the shelfice package
 - separate initialisation of "fixed" and "variable" variables

1 C $Header: $
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 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 diagTitle = 'SHELFICE fresh water flux (positive upward)'
62 diagUnits = 'kg/m^2/s '
63 diagCode = 'SM M1 '
64 CALL DIAGNOSTICS_ADD2LIST( diagNum,
65 I diagName, diagCode, diagUnits, diagTitle, myThid )
66
67 diagName = 'SHIhtFlx'
68 diagTitle = 'SHELFICE heat flux (positive upward)'
69 diagUnits = 'W/m^2 '
70 diagCode = 'SM M1 '
71 CALL DIAGNOSTICS_ADD2LIST( diagNum,
72 I diagName, diagCode, diagUnits, diagTitle, myThid )
73
74 diagName = 'USHIDrag'
75 diagTitle = 'U momentum tendency from Shelfice Drag'
76 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 diagName = 'VSHIDrag'
82 diagTitle = 'V momentum tendency from Shelfice Drag'
83 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 ENDIF
88 #endif /* ALLOW_DIAGNOSTICS */
89 #endif /* ALLOW_SHELFICE */
90
91 RETURN
92 END
93

  ViewVC Help
Powered by ViewVC 1.1.22