/[MITgcm]/MITgcm_contrib/shelfice_remeshing/DIG/code/shelfice_init_varia.F
ViewVC logotype

Annotation of /MITgcm_contrib/shelfice_remeshing/DIG/code/shelfice_init_varia.F

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


Revision 1.1 - (hide annotations) (download)
Fri Apr 1 10:19:37 2016 UTC (9 years, 3 months ago) by dgoldberg
Branch: MAIN
CVS Tags: HEAD
Added rough code to dig ice shelf to make continuous ocean

1 dgoldberg 1.1 C $Header: /u/gcmpack/MITgcm_contrib/verification_other/shelfice_remeshing/code/shelfice_init_varia.F,v 1.1 2016/01/22 16:09:34 dgoldberg Exp $
2     C $Name: $
3    
4     #include "SHELFICE_OPTIONS.h"
5    
6     CBOP
7     SUBROUTINE SHELFICE_INIT_VARIA( myThid )
8     C *============================================================*
9     C | SUBROUTINE SHELFICE_INIT_VARIA
10     C | o Routine to initialize SHELFICE variables.
11     C *============================================================*
12     C | Initialize SHELFICE parameters and variables.
13     C *============================================================*
14     IMPLICIT NONE
15    
16     C === Global variables ===
17     #include "SIZE.h"
18     #include "EEPARAMS.h"
19     #include "PARAMS.h"
20     #include "GRID.h"
21     #include "SHELFICE.h"
22     #ifdef ALLOW_COST
23     # include "SHELFICE_COST.h"
24     #endif /* ALLOW_COST */
25    
26     C === Routine arguments ===
27     C myThid - Number of this instance of SHELFICE_INIT_VARIA
28     INTEGER myThid
29     CEndOfInterface
30    
31     #ifdef ALLOW_SHELFICE
32     C === Local variables ===
33     C i,j,bi,bj - Loop counters
34     INTEGER i, j, bi, bj
35     CEOP
36    
37     DO bj = myByLo(myThid), myByHi(myThid)
38     DO bi = myBxLo(myThid), myBxHi(myThid)
39     DO j = 1-OLy, sNy+OLy
40     DO i = 1-OLx, sNx+OLx
41     shelficeForcingT (i,j,bi,bj) = 0. _d 0
42     shelficeForcingS (i,j,bi,bj) = 0. _d 0
43     shelficeHeatFlux (i,j,bi,bj) = 0. _d 0
44     shelficeFreshWaterFlux(i,j,bi,bj) = 0. _d 0
45     shiTransCoeffT (i,j,bi,bj) = 0. _d 0
46     shiTransCoeffS (i,j,bi,bj) = 0. _d 0
47     shelficeMass (i,j,bi,bj) = 0. _d 0
48     EFFMASS (i,j,bi,bj) = 0. _d 0
49     SeaLevelRestore (i,j,bi,bj) = 0. _d 0
50     ENDDO
51     ENDDO
52     ENDDO
53     ENDDO
54     IF ( .NOT. SHELFICEuseGammaFrict ) THEN
55     IF ( SHELFICETransCoeffTFile .NE. ' ' ) THEN
56     CALL READ_FLD_XY_RL( SHELFICETransCoeffTFile, ' ',
57     & shiTransCoeffT, 0, myThid )
58     _EXCH_XY_RL( shiTransCoeffT, myThid )
59     DO bj = myByLo(myThid), myByHi(myThid)
60     DO bi = myBxLo(myThid), myBxHi(myThid)
61     DO j = 1-OLy, sNy+OLy
62     DO i = 1-OLx, sNx+OLx
63     shiTransCoeffS(i,j,bi,bj) = 5.05 _d -3 *
64     & shiTransCoeffT(i,j,bi,bj)
65     ENDDO
66     ENDDO
67     ENDDO
68     ENDDO
69     ELSE
70     C set coefficients to constant values
71     DO bj = myByLo(myThid), myByHi(myThid)
72     DO bi = myBxLo(myThid), myBxHi(myThid)
73     DO j = 1-OLy, sNy+OLy
74     DO i = 1-OLx, sNx+OLx
75     shiTransCoeffT(i,j,bi,bj) = SHELFICEheatTransCoeff
76     shiTransCoeffS(i,j,bi,bj) = SHELFICEsaltTransCoeff
77     ENDDO
78     ENDDO
79     ENDDO
80     ENDDO
81     ENDIF
82     ENDIF
83    
84     DO bj = myByLo(myThid), myByHi(myThid)
85     DO bi = myBxLo(myThid), myBxHi(myThid)
86     DO j = 1-OLy, sNy+OLy
87     DO i = 1-OLx, sNx+OLx
88     shelficeMass(i,j,bi,bj) = shelficeMassInit(i,j,bi,bj)
89     ENDDO
90     ENDDO
91     ENDDO
92     ENDDO
93    
94     IF (shelficeMassStepping) THEN
95    
96     IF ( .NOT. ( startTime .EQ. baseTime .AND. nIter0 .EQ. 0
97     & .AND. pickupSuff .EQ. ' ') ) THEN
98    
99     CALL SHELFICE_READ_PICKUP ( myThid )
100    
101     ENDIF
102    
103     ENDIF
104    
105    
106     #ifdef ALLOW_COST
107     DO bj = myByLo(myThid), myByHi(myThid)
108     DO bi = myBxLo(myThid), myBxHi(myThid)
109     DO j = 1-OLy, sNy+OLy
110     DO i = 1-OLx, sNx+OLx
111     cMeanSHIforT (i,j,bi,bj) = 0. _d 0
112     cMeanSHIforS (i,j,bi,bj) = 0. _d 0
113     ENDDO
114     ENDDO
115     ENDDO
116     ENDDO
117     c--
118     DO bj = myByLo(myThid), myByHi(myThid)
119     DO bi = myBxLo(myThid), myBxHi(myThid)
120     objf_shelfice(bi,bj) = 0. _d 0
121     objf_shifwflx(bi,bj) = 0. _d 0
122     num_shifwflx(bi,bj) = 0. _d 0
123     ENDDO
124     ENDDO
125     #endif /* ALLOW_COST */
126    
127     #endif /* ALLOW_SHELFICE */
128    
129     RETURN
130     END

  ViewVC Help
Powered by ViewVC 1.1.22