/[MITgcm]/MITgcm/model/src/calc_3d_diffusivity.F
ViewVC logotype

Diff of /MITgcm/model/src/calc_3d_diffusivity.F

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

revision 1.7 by dimitri, Wed Apr 11 00:00:47 2007 UTC revision 1.8 by jmc, Wed Apr 11 15:05:58 2007 UTC
# Line 62  C     i, j, k    :: Loop counters Line 62  C     i, j, k    :: Loop counters
62  C     iTr        :: passive tracer index  C     iTr        :: passive tracer index
63  C     msgBuf     :: message buffer  C     msgBuf     :: message buffer
64        INTEGER i,j,k        INTEGER i,j,k
65        _RL KbryanLewis79, KbryanLewisHL, KbryanLewisEQ        _RL KbryanLewis79
66        CHARACTER*(MAX_LEN_MBUF) msgBuf        CHARACTER*(MAX_LEN_MBUF) msgBuf
67  #ifdef ALLOW_PTRACERS  #ifdef ALLOW_PTRACERS
68        INTEGER iTr        INTEGER iTr
# Line 72  CEOP Line 72  CEOP
72        IF ( trIdentity.EQ.GAD_TEMPERATURE) THEN        IF ( trIdentity.EQ.GAD_TEMPERATURE) THEN
73    
74         DO k = 1,Nr         DO k = 1,Nr
75          KbryanLewisHL=diffKrBL79surf+(diffKrBL79deep-diffKrBL79surf)          KbryanLewis79=diffKrBL79surf+(diffKrBL79deep-diffKrBL79surf)
76       &   *( atan( -( rF(k)-diffKrBL79Ho )/diffKrBL79scl )/PI+0.5 _d 0)       &  *( atan( -( rF(k)-diffKrBL79Ho )/diffKrBL79scl )/PI+0.5 _d 0)
         KbryanLewisEQ=diffKrBLEQsurf+(diffKrBLEQdeep-diffKrBLEQsurf)  
      &   *( atan( -( rF(k)-diffKrBLEQHo )/diffKrBLEQscl )/PI+0.5 _d 0)  
77          DO j = 1-Oly,sNy+Oly          DO j = 1-Oly,sNy+Oly
          IF ( abs(YC(i,j,bi,bj)) .GT. KbryanLewisLatTransition ) THEN  
           KbryanLewis79 = KbryanLewisHL  
          ELSE  
           KbryanLewis79 = KbryanLewisHL-(KbryanLewisHL-KbryanLewisEQ)*  
      &         (1+cos(YC(i,j,bi,bj)*pi/KbryanLewisLatTransition)) / 2  
          ENDIF  
78           DO i = 1-Olx,sNx+Olx           DO i = 1-Olx,sNx+Olx
79            KappaRTr(i,j,k) =            KappaRTr(i,j,k) =
80       &         IVDConvCount(i,j,k,bi,bj)*ivdc_kappa       &         IVDConvCount(i,j,k,bi,bj)*ivdc_kappa
# Line 100  CEOP Line 92  CEOP
92        ELSEIF ( trIdentity.EQ.GAD_SALINITY) THEN        ELSEIF ( trIdentity.EQ.GAD_SALINITY) THEN
93    
94         DO k = 1,Nr         DO k = 1,Nr
95          KbryanLewisHL=diffKrBL79surf+(diffKrBL79deep-diffKrBL79surf)          KbryanLewis79=diffKrBL79surf+(diffKrBL79deep-diffKrBL79surf)
96       &   *( atan( -( rF(k)-diffKrBL79Ho )/diffKrBL79scl )/PI+0.5 _d 0)       &  *( atan( -( rF(k)-diffKrBL79Ho )/diffKrBL79scl )/PI+0.5 _d 0)
         KbryanLewisEQ=diffKrBLEQsurf+(diffKrBLEQdeep-diffKrBLEQsurf)  
      &   *( atan( -( rF(k)-diffKrBLEQHo )/diffKrBLEQscl )/PI+0.5 _d 0)  
97          DO j = 1-Oly, sNy+Oly          DO j = 1-Oly, sNy+Oly
          IF ( abs(YC(i,j,bi,bj)) .GT. KbryanLewisLatTransition ) THEN  
           KbryanLewis79 = KbryanLewisHL  
          ELSE  
           KbryanLewis79 = KbryanLewisHL-(KbryanLewisHL-KbryanLewisEQ)*  
      &         (1+cos(YC(i,j,bi,bj)*pi/KbryanLewisLatTransition)) / 2  
          ENDIF  
98           DO i = 1-Olx, sNx+Olx           DO i = 1-Olx, sNx+Olx
99            KappaRTr(i,j,k) =            KappaRTr(i,j,k) =
100       &         IVDConvCount(i,j,k,bi,bj)*ivdc_kappa       &         IVDConvCount(i,j,k,bi,bj)*ivdc_kappa
# Line 131  CEOP Line 115  CEOP
115    
116         iTr = trIdentity - GAD_TR1 + 1         iTr = trIdentity - GAD_TR1 + 1
117         DO k = 1,Nr         DO k = 1,Nr
118          KbryanLewisHL=diffKrBL79surf+(diffKrBL79deep-diffKrBL79surf)          KbryanLewis79=diffKrBL79surf+(diffKrBL79deep-diffKrBL79surf)
119       &   *( atan( -( rF(k)-diffKrBL79Ho )/diffKrBL79scl )/PI+0.5 _d 0)       &  *( atan( -( rF(k)-diffKrBL79Ho )/diffKrBL79scl )/PI+0.5 _d 0)
         KbryanLewisEQ=diffKrBLEQsurf+(diffKrBLEQdeep-diffKrBLEQsurf)  
      &   *( atan( -( rF(k)-diffKrBLEQHo )/diffKrBLEQscl )/PI+0.5 _d 0)  
120          DO j = 1-Oly, sNy+Oly          DO j = 1-Oly, sNy+Oly
          IF ( abs(YC(i,j,bi,bj)) .GT. KbryanLewisLatTransition ) THEN  
           KbryanLewis79 = KbryanLewisHL  
          ELSE  
           KbryanLewis79 = KbryanLewisHL-(KbryanLewisHL-KbryanLewisEQ)*  
      &         (1+cos(YC(i,j,bi,bj)*pi/KbryanLewisLatTransition)) / 2  
          ENDIF  
121           DO i = 1-Olx, sNx+Olx           DO i = 1-Olx, sNx+Olx
122            KappaRTr(i,j,k) =            KappaRTr(i,j,k) =
123       &         IVDConvCount(i,j,k,bi,bj)*ivdc_kappa       &         IVDConvCount(i,j,k,bi,bj)*ivdc_kappa

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

  ViewVC Help
Powered by ViewVC 1.1.22