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

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

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

revision 1.6 by jmc, Sun Apr 29 23:48:44 2007 UTC revision 1.7 by jmc, Mon Aug 27 13:20:57 2007 UTC
# Line 96  C     msgBuf    :: Informational/error m Line 96  C     msgBuf    :: Informational/error m
96        CHARACTER*8 diagName        CHARACTER*8 diagName
97        CHARACTER*4 THSICE_DIAG_SUFX, diagSufx        CHARACTER*4 THSICE_DIAG_SUFX, diagSufx
98        EXTERNAL    THSICE_DIAG_SUFX        EXTERNAL    THSICE_DIAG_SUFX
99          LOGICAL  DIAGNOSTICS_IS_ON
100          EXTERNAL DIAGNOSTICS_IS_ON
101          _RL tmpFac
102  #endif  #endif
103  #ifdef ALLOW_DBUG_THSICE  #ifdef ALLOW_DBUG_THSICE
104        _RL tmpVar, sumVar1, sumVar2        _RL tmpVar, sumVar1, sumVar2
# Line 274  C-      Check that updated iceVol = iceF Line 277  C-      Check that updated iceVol = iceF
277       &       'ICE_ADV: uIce=', uIce(i,j), uIce(i+1,j),       &       'ICE_ADV: uIce=', uIce(i,j), uIce(i+1,j),
278       &             ' , vIce=', vIce(i,j), vIce(i,j+1)       &             ' , vIce=', vIce(i,j), vIce(i,j+1)
279              WRITE(6,'(2(A,1P2E14.6))')              WRITE(6,'(2(A,1P2E14.6))')
280  c    &       'ICE_ADV: heff_b,a=', HEFF(i,j,2,bi,bj),HEFF(i,j,1,bi,bj)       &       'ICE_ADV: area_b,a=', iceMask(i,j,bi,bj), iceFrc(i,j),
281  c           WRITE(6,'(A,1P4E14.6)') 'ICE_ADV: mFx=', gFld(i,j)       &       ' , Heff_b,a=', oldVol(i,j)*recip_rA(i,j,bi,bj),
282         &                       iceHeight(i,j,bi,bj)*iceFrc(i,j)
283             ENDIF             ENDIF
284            ENDDO            ENDDO
285           ENDDO           ENDDO
# Line 416  C      and adjust Ice thickness and snow Line 420  C      and adjust Ice thickness and snow
420          DO j=1,sNy          DO j=1,sNy
421           DO i=1,sNx           DO i=1,sNx
422            IF ( iceFrc(i,j) .GT. 1. _d 0 ) THEN            IF ( iceFrc(i,j) .GT. 1. _d 0 ) THEN
423    c           IF ( dBug(i,j,bi,bj) )
424              iceMask(i,j,bi,bj)    = 1. _d 0              iceMask(i,j,bi,bj)    = 1. _d 0
425              iceHeight(i,j,bi,bj)  = iceHeight(i,j,bi,bj) *iceFrc(i,j)              iceHeight(i,j,bi,bj)  = iceHeight(i,j,bi,bj) *iceFrc(i,j)
426              snowHeight(i,j,bi,bj) = snowHeight(i,j,bi,bj)*iceFrc(i,j)              snowHeight(i,j,bi,bj) = snowHeight(i,j,bi,bj)*iceFrc(i,j)
427            ELSEIF ( iceFrc(i,j) .LT. iceMaskMin ) THEN            ELSEIF ( iceFrc(i,j) .LT. iceMaskMin ) THEN
428    c           IF ( dBug(i,j,bi,bj) )
429              iceMask(i,j,bi,bj)    = iceMaskMin              iceMask(i,j,bi,bj)    = iceMaskMin
430              iceHeight(i,j,bi,bj)  = iceHeight(i,j,bi,bj)              iceHeight(i,j,bi,bj)  = iceHeight(i,j,bi,bj)
431       &                             *iceFrc(i,j)*r_minArea       &                             *iceFrc(i,j)*r_minArea
# Line 450  C- - Line 456  C- -
456       &                                  *( Qice1(i,j,bi,bj)       &                                  *( Qice1(i,j,bi,bj)
457       &                                    +Qice2(i,j,bi,bj) )*0.5 _d 0       &                                    +Qice2(i,j,bi,bj) )*0.5 _d 0
458       &                            )*iceMask(i,j,bi,bj)/thSIce_deltaT       &                            )*iceMask(i,j,bi,bj)/thSIce_deltaT
459    c           IF ( dBug(i,j,bi,bj) )
460  C- -  C- -
461  c           flx2oc (i,j) = flx2oc (i,j) +  c           flx2oc (i,j) = flx2oc (i,j) +
462  c           frw2oc (i,j) = frw2oc (i,j) +  c           frw2oc (i,j) = frw2oc (i,j) +
# Line 492  C---  if not multiDimAdvection Line 499  C---  if not multiDimAdvection
499  C---  end if multiDimAdvection  C---  end if multiDimAdvection
500        ENDIF        ENDIF
501    
502    #ifdef ALLOW_DIAGNOSTICS
503          IF ( useDiagnostics ) THEN
504            CALL DIAGNOSTICS_FILL(iceMask,'SI_AdvFr',0,1,1,bi,bj,myThid)
505    C-     Ice-fraction weighted quantities:
506            tmpFac = 1. _d 0
507            CALL DIAGNOSTICS_FRACT_FILL(
508         I                   iceHeight, iceMask,tmpFac,1,'SI_AdvHi',
509         I                   0,1,1,bi,bj,myThid)
510            CALL DIAGNOSTICS_FRACT_FILL(
511         I                   snowHeight,iceMask,tmpFac,1,'SI_AdvHs',
512         I                   0,1,1,bi,bj,myThid)
513    C-     Ice-Volume weighted quantities:
514            IF ( DIAGNOSTICS_IS_ON('SI_AdvQ1',myThid) .OR.
515         &       DIAGNOSTICS_IS_ON('SI_AdvQ2',myThid) ) THEN
516             DO j=1,sNy
517              DO i=1,sNx
518               iceVol(i,j) = iceMask(i,j,bi,bj)*iceHeight(i,j,bi,bj)
519              ENDDO
520             ENDDO
521             CALL DIAGNOSTICS_FRACT_FILL(
522         I                   Qice1(1-OLx,1-OLy,bi,bj),
523         I                   iceVol,tmpFac,1,'SI_AdvQ1',
524         I                   0,1,2,bi,bj,myThid)
525             CALL DIAGNOSTICS_FRACT_FILL(
526         I                   Qice2(1-OLx,1-OLy,bi,bj),
527         I                   iceVol,tmpFac,1,'SI_AdvQ2',
528         I                   0,1,2,bi,bj,myThid)
529            ENDIF
530          ENDIF
531    #endif /* ALLOW_DIAGNOSTICS */
532    
533  #endif /* ALLOW_THSICE */  #endif /* ALLOW_THSICE */
534    
535        RETURN        RETURN

Legend:
Removed from v.1.6  
changed lines
  Added in v.1.7

  ViewVC Help
Powered by ViewVC 1.1.22