/[MITgcm]/MITgcm_contrib/verification_other/shelfice_remeshing/code/shelfice_step_icemass.F
ViewVC logotype

Annotation of /MITgcm_contrib/verification_other/shelfice_remeshing/code/shelfice_step_icemass.F

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


Revision 1.1 - (hide annotations) (download)
Fri Dec 11 19:48:32 2015 UTC (9 years, 7 months ago) by dgoldberg
Branch: MAIN
CVS Tags: checkpoint65r, checkpoint65s, checkpoint65v, checkpoint65u
shelfice_remeshing verification

1 dgoldberg 1.1 C $Header: /u/gcmpack/MITgcm_contrib/shelfice_remeshing/CLEAN/code/shelfice_step_icemass.F,v 1.1 2015/12/07 17:08:44 dgoldberg 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