C $Header: /u/gcmpack/MITgcm/pkg/shelfice/shelfice_step_icemass.F,v 1.5 2015/04/22 21:33:58 dgoldberg Exp $
C $Name: $
#include "SHELFICE_OPTIONS.h"
#ifdef ALLOW_STREAMICE
# include "STREAMICE_OPTIONS.h"
#endif
CBOP
C !ROUTINE: SHELFICE_U_DRAG
C !INTERFACE: ==========================================================
SUBROUTINE SHELFICE_STEP_ICEMASS(
I myTime, myIter, myThid )
! myTime, myIter, myThid
C !DESCRIPTION:
C Serves as a "stub" for ice dynamics
C will later be used to
C !USES: ===============================================================
IMPLICIT NONE
#include "SIZE.h"
#include "EEPARAMS.h"
#include "PARAMS.h"
#include "GRID.h"
#include "SHELFICE.h"
#ifdef ALLOW_STREAMICE
# include "STREAMICE.h"
#endif
C !INPUT/OUTPUT PARAMETERS:
C === Routine arguments ===
C myIter :: iteration counter for this thread
C myTime :: time counter for this thread
C myThid :: thread number for this instance of the routine.
_RL myTime
INTEGER myIter
INTEGER myThid
CEOP
#ifdef ALLOW_SHELFICE
C !LOCAL VARIABLES : ====================================================
C i,j :: loop indices
INTEGER bi,bj,i,j
IF ( SHELFICEMassStepping ) THEN
#ifdef ALLOW_STREAMICE
IF (useStreamIce) THEN
DO bj = myByLo(myThid), myByHi(myThid)
DO bi = myBxLo(myThid), myBxHi(myThid)
DO j=1-OLy,sNy+OLy-1
DO i=1-OLx+1,sNx+OLx-1
if (streamice_hmask(i,j,bi,bj).eq.1 .or.
& streamice_hmask(i,j,bi,bj).eq.2) then
shelficeMass(i,j,bi,bj) =
& H_streamice(I,J,bi,bj) * streamice_density
endif
ENDDO
ENDDO
ENDDO
ENDDO
ENDIF
#endif /* ALLOW_STREAMICE */
IF (.NOT.useStreamIce) THEN
DO bj = myByLo(myThid), myByHi(myThid)
DO bi = myBxLo(myThid), myBxHi(myThid)
DO j=1-OLy,sNy+OLy
DO i=1-OLx,sNx+OLx
IF (.NOT. SHELFICEDynMassOnly) then
shelficeMass(i,j,bi,bj) = shelficeMass(i,j,bi,bj)
& + shelfIceFreshWaterFlux(I,J,bi,bj) * deltaT
ENDIF
shelficeMass(i,j,bi,bj) = shelficeMass(i,j,bi,bj)
& + shelfIceMassDynTendency(I,J,bi,bj)*deltaT
ENDDO
ENDDO
ENDDO
ENDDO
ENDIF
_EXCH_XY_RL( shelficeMass, myThid )
ENDIF
#ifdef ALLOW_DIAGNOSTICS
IF (useDiagnostics) THEN
CALL DIAGNOSTICS_FILL( shelficeMass, 'SHI_mass',
I 0, 1, 0, 1, 1, myThid )
ENDIF
#endif /* ALLOW_DIAGNOSTICS */
#endif /* ALLOW_SHELFICE */
RETURN
END