/[MITgcm]/MITgcm/pkg/kpp/kpp_calc.F
ViewVC logotype

Diff of /MITgcm/pkg/kpp/kpp_calc.F

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

revision 1.35 by mlosch, Thu Apr 19 15:49:11 2007 UTC revision 1.36 by dimitri, Mon Apr 23 20:46:49 2007 UTC
# Line 104  C !USES: =============================== Line 104  C !USES: ===============================
104  #include "KPP_PARAMS.h"  #include "KPP_PARAMS.h"
105  #include "FFIELDS.h"  #include "FFIELDS.h"
106  #include "GRID.h"  #include "GRID.h"
107    #include "GAD.h"
108  #ifdef ALLOW_SHELFICE  #ifdef ALLOW_SHELFICE
109  # include "SHELFICE.h"  # include "SHELFICE.h"
110  #endif /* ALLOW_SHELFICE */  #endif /* ALLOW_SHELFICE */
# Line 689  c--------------------------------------- Line 690  c---------------------------------------
690  c     solve for viscosity, diffusivity, ghat, and hbl on "t-grid"  c     solve for viscosity, diffusivity, ghat, and hbl on "t-grid"
691  c-----------------------------------------------------------------------  c-----------------------------------------------------------------------
692    
693    c     precompute background vertical diffusivities, which are needed for
694    c     matching diffusivities at bottom of KPP PBL
695          CALL CALC_3D_DIFFUSIVITY(
696         I        bi,bj,1-Olx,sNx+OLx,1-Oly,sNy+OLy,
697         I        GAD_SALINITY, .FALSE., .FALSE.,
698         O        KPPdiffKzS(1-Olx,1-Oly,1,bi,bj),
699         I        myThid)
700          CALL CALC_3D_DIFFUSIVITY(
701         I        bi,bj,1-Olx,sNx+OLx,1-Oly,sNy+OLy,
702         I        GAD_TEMPERATURE, .FALSE., .FALSE.,
703         O        KPPdiffKzT(1-Olx,1-Oly,1,bi,bj),
704         I        myThid)
705    
706        DO j = 1-OLy, sNy+OLy        DO j = 1-OLy, sNy+OLy
707           DO i = 1-OLx, sNx+OLx           DO i = 1-OLx, sNx+OLx
708              work1(i,j) = nzmax(i,j,bi,bj)              work1(i,j) = nzmax(i,j,bi,bj)
# Line 700  c--------------------------------------- Line 714  c---------------------------------------
714       I       mytime, mythid       I       mytime, mythid
715       I     , work1, shsq, dVsq, ustar       I     , work1, shsq, dVsq, ustar
716       I     , bo, bosol, dbloc, Ritop, work2       I     , bo, bosol, dbloc, Ritop, work2
717         I     , KPPdiffKzS(1-Olx,1-Oly,1,bi,bj)
718         I     , KPPdiffKzT(1-Olx,1-Oly,1,bi,bj)
719       I     , ikppkey       I     , ikppkey
720       O     , vddiff       O     , vddiff
721       U     , ghat       U     , ghat
722       O     , hbl )       O     , hbl )
   
723        CALL TIMER_STOP ('KPPMIX [KPP_CALC]', myThid)        CALL TIMER_STOP ('KPPMIX [KPP_CALC]', myThid)
724    
725  c-----------------------------------------------------------------------  c-----------------------------------------------------------------------
# Line 804  C     \================================= Line 819  C     \=================================
819  #include "KPP.h"  #include "KPP.h"
820  #include "KPP_PARAMS.h"  #include "KPP_PARAMS.h"
821  #include "GRID.h"  #include "GRID.h"
822    #include "GAD.h"
823    
824  c Routine arguments  c Routine arguments
825  c     bi, bj - array indices on which to apply calculations  c     bi, bj - array indices on which to apply calculations
# Line 825  c Local constants Line 841  c Local constants
841              DO k = 1,Nr              DO k = 1,Nr
842                 KPPghat   (i,j,k,bi,bj) = 0.0                 KPPghat   (i,j,k,bi,bj) = 0.0
843                 KPPviscAz (i,j,k,bi,bj) = viscAr                 KPPviscAz (i,j,k,bi,bj) = viscAr
                KPPdiffKzT(i,j,k,bi,bj) = diffKrNrT(k)  
                KPPdiffKzS(i,j,k,bi,bj) = diffKrNrS(k)  
844              ENDDO              ENDDO
845           ENDDO           ENDDO
846        ENDDO        ENDDO
847          
848          CALL CALC_3D_DIFFUSIVITY(
849         I     bi,bj,1-Olx,sNx+OLx,1-Oly,sNy+OLy,
850         I     GAD_SALINITY, .FALSE., .FALSE.,
851         O     KPPdiffKzS(1-Olx,1-Oly,1,bi,bj),
852         I     myThid)
853          CALL CALC_3D_DIFFUSIVITY(
854         I     bi,bj,1-Olx,sNx+OLx,1-Oly,sNy+OLy,
855         I     GAD_TEMPERATURE, .FALSE., .FALSE.,
856         O     KPPdiffKzT(1-Olx,1-Oly,1,bi,bj),
857         I     myThid)
858    
859  #endif  #endif
860        RETURN        RETURN
861        END        END

Legend:
Removed from v.1.35  
changed lines
  Added in v.1.36

  ViewVC Help
Powered by ViewVC 1.1.22