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

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

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


Revision 1.5 - (show annotations) (download)
Wed Apr 22 21:33:58 2015 UTC (9 years ago) by dgoldberg
Branch: MAIN
CVS Tags: checkpoint66g, checkpoint66f, checkpoint66e, checkpoint66d, checkpoint66c, checkpoint66b, checkpoint66a, checkpoint66o, checkpoint66n, checkpoint66m, checkpoint66l, checkpoint66k, checkpoint66j, checkpoint66i, checkpoint66h, checkpoint65z, checkpoint65x, checkpoint65y, checkpoint65r, checkpoint65s, checkpoint65p, checkpoint65q, checkpoint65v, checkpoint65w, checkpoint65t, checkpoint65u, checkpoint65n, checkpoint65o, checkpoint65l, checkpoint65m, HEAD
Changes since 1.4: +3 -1 lines
flag to limit uncoupled ice mass stepping to tendency file

1 C $Header: /u/gcmpack/MITgcm/pkg/shelfice/shelfice_step_icemass.F,v 1.4 2015/01/12 17:35:30 jmc Exp $
2 C $Name: $
3
4 #include "SHELFICE_OPTIONS.h"
5 #ifdef ALLOW_STREAMICE
6 # include "STREAMICE_OPTIONS.h"
7 #endif
8
9 CBOP
10 C !ROUTINE: SHELFICE_U_DRAG
11
12 C !INTERFACE: ==========================================================
13 SUBROUTINE SHELFICE_STEP_ICEMASS(
14 I myTime, myIter, myThid )
15
16 ! myTime, myIter, myThid
17
18 C !DESCRIPTION:
19 C Serves as a "stub" for ice dynamics
20 C will later be used to
21
22 C !USES: ===============================================================
23 IMPLICIT NONE
24 #include "SIZE.h"
25 #include "EEPARAMS.h"
26 #include "PARAMS.h"
27 #include "GRID.h"
28 #include "SHELFICE.h"
29 #ifdef ALLOW_STREAMICE
30 # include "STREAMICE.h"
31 #endif
32
33 C !INPUT/OUTPUT PARAMETERS:
34 C === Routine arguments ===
35 C myIter :: iteration counter for this thread
36 C myTime :: time counter for this thread
37 C myThid :: thread number for this instance of the routine.
38 _RL myTime
39 INTEGER myIter
40 INTEGER myThid
41 CEOP
42
43 #ifdef ALLOW_SHELFICE
44 C !LOCAL VARIABLES : ====================================================
45 C i,j :: loop indices
46 INTEGER bi,bj,i,j
47
48 IF ( SHELFICEMassStepping ) THEN
49
50 #ifdef ALLOW_STREAMICE
51 IF (useStreamIce) THEN
52 DO bj = myByLo(myThid), myByHi(myThid)
53 DO bi = myBxLo(myThid), myBxHi(myThid)
54 DO j=1-OLy,sNy+OLy-1
55 DO i=1-OLx+1,sNx+OLx-1
56 if (streamice_hmask(i,j,bi,bj).eq.1 .or.
57 & streamice_hmask(i,j,bi,bj).eq.2) then
58
59 shelficeMass(i,j,bi,bj) =
60 & H_streamice(I,J,bi,bj) * streamice_density
61
62 endif
63 ENDDO
64 ENDDO
65 ENDDO
66 ENDDO
67 ENDIF
68 #endif /* ALLOW_STREAMICE */
69
70 IF (.NOT.useStreamIce) THEN
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
76 IF (.NOT. SHELFICEDynMassOnly) then
77 shelficeMass(i,j,bi,bj) = shelficeMass(i,j,bi,bj)
78 & + shelfIceFreshWaterFlux(I,J,bi,bj) * deltaT
79 ENDIF
80
81 shelficeMass(i,j,bi,bj) = shelficeMass(i,j,bi,bj)
82 & + shelfIceMassDynTendency(I,J,bi,bj)*deltaT
83
84 ENDDO
85 ENDDO
86 ENDDO
87 ENDDO
88 ENDIF
89
90 _EXCH_XY_RL( shelficeMass, myThid )
91
92 ENDIF
93
94 #ifdef ALLOW_DIAGNOSTICS
95 IF (useDiagnostics) THEN
96 CALL DIAGNOSTICS_FILL( shelficeMass, 'SHI_mass',
97 I 0, 1, 0, 1, 1, myThid )
98 ENDIF
99 #endif /* ALLOW_DIAGNOSTICS */
100 #endif /* ALLOW_SHELFICE */
101
102 RETURN
103 END

  ViewVC Help
Powered by ViewVC 1.1.22