/[MITgcm]/MITgcm/pkg/thsice/thsice_step_fwd.F
ViewVC logotype

Diff of /MITgcm/pkg/thsice/thsice_step_fwd.F

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

revision 1.22 by jmc, Thu Apr 19 04:31:28 2007 UTC revision 1.23 by jscott, Fri Apr 20 19:24:47 2007 UTC
# Line 2  C $Header$ Line 2  C $Header$
2  C $Name$  C $Name$
3    
4  #include "THSICE_OPTIONS.h"  #include "THSICE_OPTIONS.h"
5    #ifdef ALLOW_ATM2D
6    # include "ctrparam.h"
7    #endif
8    
9  CBOP  CBOP
10  C     !ROUTINE: THSICE_STEP_FWD  C     !ROUTINE: THSICE_STEP_FWD
# Line 25  C     === Global variables === Line 28  C     === Global variables ===
28  #include "EEPARAMS.h"  #include "EEPARAMS.h"
29  #include "PARAMS.h"  #include "PARAMS.h"
30  #include "FFIELDS.h"  #include "FFIELDS.h"
31    #ifdef  ALLOW_ATM2D
32    # include "ATMSIZE.h"
33    # include "ATM2D_VARS.h"
34    #endif
35  #include "THSICE_SIZE.h"  #include "THSICE_SIZE.h"
36  #include "THSICE_PARAMS.h"  #include "THSICE_PARAMS.h"
37  #include "THSICE_VARS.h"  #include "THSICE_VARS.h"
# Line 120  C-    Initialise Line 127  C-    Initialise
127        DO j = 1-OLy, sNy+OLy        DO j = 1-OLy, sNy+OLy
128          DO i = 1-OLx, sNx+OLx          DO i = 1-OLx, sNx+OLx
129            isIceFree(i,j) = .FALSE.            isIceFree(i,j) = .FALSE.
130    #ifdef ALLOW_ATM2D
131              sFluxFromIce(i,j) = 0. _d 0
132    #else
133            saltFlux(i,j,bi,bj) = 0. _d 0            saltFlux(i,j,bi,bj) = 0. _d 0
134    #endif
135  #ifdef ALLOW_AUTODIFF_TAMC  #ifdef ALLOW_AUTODIFF_TAMC
136            iceFrac(i,j) = 0.            iceFrac(i,j) = 0.
137  #endif  #endif
# Line 250  CADJ STORE  icemask(i,j,bi,bj) = comlev1 Line 261  CADJ STORE  icemask(i,j,bi,bj) = comlev1
261  #endif  #endif
262            icFrac = iceMask(i,j,bi,bj)            icFrac = iceMask(i,j,bi,bj)
263            opFrac= 1. _d 0-icFrac            opFrac= 1. _d 0-icFrac
264    #ifdef ALLOW_ATM2D
265              pass_qnet(i,j) = pass_qnet(i,j) - icFrac*flx2oc(i,j)
266              pass_evap(i,j) = pass_evap(i,j) - icFrac*frw2oc(i,j)/rhofw
267              sFluxFromIce(i,j) = -icFrac*fsalt(i,j)
268    #else
269            icFlxAtm(i,j,bi,bj) = icFrac*icFlxAtm(i,j,bi,bj)            icFlxAtm(i,j,bi,bj) = icFrac*icFlxAtm(i,j,bi,bj)
270       &                        - opFrac*Qnet(i,j,bi,bj)       &                        - opFrac*Qnet(i,j,bi,bj)
271            icFrwAtm(i,j,bi,bj) = icFrac*icFrwAtm(i,j,bi,bj)            icFrwAtm(i,j,bi,bj) = icFrac*icFrwAtm(i,j,bi,bj)
# Line 258  CADJ STORE  icemask(i,j,bi,bj) = comlev1 Line 274  CADJ STORE  icemask(i,j,bi,bj) = comlev1
274            EmPmR(i,j,bi,bj)= -icFrac*frw2oc(i,j)/rhofw            EmPmR(i,j,bi,bj)= -icFrac*frw2oc(i,j)/rhofw
275       &                    +  opFrac*EmPmR(i,j,bi,bj)       &                    +  opFrac*EmPmR(i,j,bi,bj)
276            saltFlux(i,j,bi,bj) = -icFrac*fsalt(i,j)            saltFlux(i,j,bi,bj) = -icFrac*fsalt(i,j)
277    #endif
278    
279  #ifdef ALLOW_DBUG_THSICE  #ifdef ALLOW_DBUG_THSICE
280            IF (dBug(i,j,bi,bj)) WRITE(6,1010)            IF (dBug(i,j,bi,bj)) WRITE(6,1010)
# Line 300  CADJ &     comlev1_bibj, key=iicekey, by Line 317  CADJ &     comlev1_bibj, key=iicekey, by
317         DO i = iMin, iMax         DO i = iMin, iMax
318          IF (frzmltMxL(i,j).GT.0. _d 0) THEN          IF (frzmltMxL(i,j).GT.0. _d 0) THEN
319  C--    Net fluxes :  C--    Net fluxes :
320    #ifdef ALLOW_ATM2D
321              pass_qnet(i,j) = pass_qnet(i,j) - flx2oc(i,j)
322              pass_evap(i,j) = pass_evap(i,j) - frw2oc(i,j)/rhofw
323              sFluxFromIce(i,j)= sFluxFromIce(i,j) - fsalt(i,j)
324    #else
325            Qnet(i,j,bi,bj) = Qnet(i,j,bi,bj) - flx2oc(i,j)            Qnet(i,j,bi,bj) = Qnet(i,j,bi,bj) - flx2oc(i,j)
326            EmPmR(i,j,bi,bj)= EmPmR(i,j,bi,bj)- frw2oc(i,j)/rhofw            EmPmR(i,j,bi,bj)= EmPmR(i,j,bi,bj)- frw2oc(i,j)/rhofw
327            saltFlux(i,j,bi,bj)=saltFlux(i,j,bi,bj) - fsalt(i,j)            saltFlux(i,j,bi,bj)=saltFlux(i,j,bi,bj) - fsalt(i,j)
328    #endif
329    
330  #ifdef ALLOW_DBUG_THSICE  #ifdef ALLOW_DBUG_THSICE
331            IF (dBug(i,j,bi,bj)) WRITE(6,1010)            IF (dBug(i,j,bi,bj)) WRITE(6,1010)

Legend:
Removed from v.1.22  
changed lines
  Added in v.1.23

  ViewVC Help
Powered by ViewVC 1.1.22