New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 1362 for branches/dev_004_VVL/NEMO/OPA_SRC/DOM/domvvl.F90 – NEMO

Ignore:
Timestamp:
2009-03-31T19:52:23+02:00 (15 years ago)
Author:
rblod
Message:

dev_004_VVL: introduce definition of scale factors for vvl, see ticket #390

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/dev_004_VVL/NEMO/OPA_SRC/DOM/domvvl.F90

    r1146 r1362  
    8181#endif 
    8282 
    83       fsvdept (:,:,:) = gdept (:,:,:) 
    84       fsvdepw (:,:,:) = gdepw (:,:,:) 
    85       fsvde3w (:,:,:) = gdep3w(:,:,:) 
    86       fsve3t (:,:,:) = e3t   (:,:,:) 
    87       fsve3u (:,:,:) = e3u   (:,:,:) 
    88       fsve3v (:,:,:) = e3v   (:,:,:) 
    89       fsve3f (:,:,:) = e3f   (:,:,:) 
    90       fsve3w (:,:,:) = e3w   (:,:,:) 
    91       fsve3uw (:,:,:) = e3uw  (:,:,:) 
    92       fsve3vw (:,:,:) = e3vw  (:,:,:) 
     83      fsdept_0(:,:,:) = gdept (:,:,:) 
     84      fsdepw_0(:,:,:) = gdepw (:,:,:) 
     85      fsde3w_0(:,:,:) = gdep3w(:,:,:) 
     86      fse3t_0 (:,:,:) = e3t   (:,:,:) 
     87      fse3u_0 (:,:,:) = e3u   (:,:,:) 
     88      fse3v_0 (:,:,:) = e3v   (:,:,:) 
     89      fse3f_0 (:,:,:) = e3f   (:,:,:) 
     90      fse3w_0 (:,:,:) = e3w   (:,:,:) 
     91      fse3uw_0(:,:,:) = e3uw  (:,:,:) 
     92      fse3vw_0(:,:,:) = e3vw  (:,:,:) 
    9393 
    9494      ! mu computation 
     
    106106            zpk = mbathy(ji,jj) - 1 
    107107            DO jk = 1, zpk 
    108                zmut(ji,jj) = zmut(ji,jj) + fsve3t(ji,jj,jk) * SUM( fsve3t(ji,jj,jk:zpk) ) 
    109                zmuu(ji,jj) = zmuu(ji,jj) + fsve3u(ji,jj,jk) * SUM( fsve3u(ji,jj,jk:zpk) ) 
    110                zmuv(ji,jj) = zmuv(ji,jj) + fsve3v(ji,jj,jk) * SUM( fsve3v(ji,jj,jk:zpk) ) 
    111                zmuf(ji,jj) = zmuf(ji,jj) + fsve3f(ji,jj,jk) * SUM( fsve3f(ji,jj,jk:zpk) ) 
     108               zmut(ji,jj) = zmut(ji,jj) + fse3t_0(ji,jj,jk) * SUM( fse3t_0(ji,jj,jk:zpk) ) 
     109               zmuu(ji,jj) = zmuu(ji,jj) + fse3u_0(ji,jj,jk) * SUM( fse3u_0(ji,jj,jk:zpk) ) 
     110               zmuv(ji,jj) = zmuv(ji,jj) + fse3v_0(ji,jj,jk) * SUM( fse3v_0(ji,jj,jk:zpk) ) 
     111               zmuf(ji,jj) = zmuf(ji,jj) + fse3f_0(ji,jj,jk) * SUM( fse3f_0(ji,jj,jk:zpk) ) 
    112112            END DO 
    113113         END DO 
     
    119119            DO jk = 1, zpk 
    120120#if defined key_sigma_vvl 
    121                mut(ji,jj,jk) = 1./SUM( fsve3t(ji,jj,1:zpk) )  
    122                muu(ji,jj,jk) = 1./SUM( fsve3u(ji,jj,1:zpk) )  
    123                muv(ji,jj,jk) = 1./SUM( fsve3v(ji,jj,1:zpk) )  
    124                muf(ji,jj,jk) = 1./SUM( fsve3f(ji,jj,1:zpk) )  
     121               mut(ji,jj,jk) = 1./SUM( fse3t_0(ji,jj,1:zpk) )  
     122               muu(ji,jj,jk) = 1./SUM( fse3u_0(ji,jj,1:zpk) )  
     123               muv(ji,jj,jk) = 1./SUM( fse3v_0(ji,jj,1:zpk) )  
     124               muf(ji,jj,jk) = 1./SUM( fse3f_0(ji,jj,1:zpk) )  
    125125#else 
    126                mut(ji,jj,jk) = SUM( fsve3t(ji,jj,jk:zpk) ) / zmut(ji,jj) 
    127                muu(ji,jj,jk) = SUM( fsve3u(ji,jj,jk:zpk) ) / zmuu(ji,jj) 
    128                muv(ji,jj,jk) = SUM( fsve3v(ji,jj,jk:zpk) ) / zmuv(ji,jj) 
    129                muf(ji,jj,jk) = SUM( fsve3f(ji,jj,jk:zpk) ) / zmuf(ji,jj) 
     126               mut(ji,jj,jk) = SUM( fse3t_0(ji,jj,jk:zpk) ) / zmut(ji,jj) 
     127               muu(ji,jj,jk) = SUM( fse3u_0(ji,jj,jk:zpk) ) / zmuu(ji,jj) 
     128               muv(ji,jj,jk) = SUM( fse3v_0(ji,jj,jk:zpk) ) / zmuv(ji,jj) 
     129               muf(ji,jj,jk) = SUM( fse3f_0(ji,jj,jk:zpk) ) / zmuf(ji,jj) 
    130130#endif 
    131131            END DO 
     
    174174      ! Scale factors at T levels 
    175175      DO jk = 1, jpkm1 
    176          fse3t(:,:,jk) = fsve3t(:,:,jk) * ( 1 + sshn(:,:)  * mut(:,:,jk) ) 
    177          fse3u(:,:,jk) = fsve3u(:,:,jk) * ( 1 + sshu(:,:)  * muu(:,:,jk) ) 
    178          fse3v(:,:,jk) = fsve3v(:,:,jk) * ( 1 + sshv(:,:)  * muv(:,:,jk) ) 
    179          fse3f(:,:,jk) = fsve3f(:,:,jk) * ( 1 + zsshf(:,:) * muf(:,:,jk) ) 
     176         fse3t(:,:,jk) = fse3t_0(:,:,jk) * ( 1 + sshn(:,:)  * mut(:,:,jk) ) 
     177         fse3u(:,:,jk) = fse3u_0(:,:,jk) * ( 1 + sshu(:,:)  * muu(:,:,jk) ) 
     178         fse3v(:,:,jk) = fse3v_0(:,:,jk) * ( 1 + sshv(:,:)  * muv(:,:,jk) ) 
     179         fse3f(:,:,jk) = fse3f_0(:,:,jk) * ( 1 + zsshf(:,:) * muf(:,:,jk) ) 
    180180      END DO 
    181181 
     
    339339         ! 
    340340         DO jk = 1, jpk 
    341             sfe3(:,:,jk)  = fsve3u(:,:,jk) * ( 1 + zssh(:,:) * muu(:,:,jk) ) 
     341            sfe3(:,:,jk)  = fve3u_0(:,:,jk) * ( 1 + zssh(:,:) * muu(:,:,jk) ) 
    342342         ENDDO 
    343343 
     
    345345         ! 
    346346         DO jk = 1, jpk 
    347             sfe3(:,:,jk)  = fsve3v(:,:,jk) * ( 1 + zssh(:,:) * muv(:,:,jk) ) 
     347            sfe3(:,:,jk)  = fse3v_0(:,:,jk) * ( 1 + zssh(:,:) * muv(:,:,jk) ) 
    348348         ENDDO 
    349349 
     
    351351         ! 
    352352         DO jk = 1, jpk 
    353             sfe3(:,:,jk)  = fsve3t(:,:,jk) * ( 1 + zssh(:,:) * mut(:,:,jk) ) 
     353            sfe3(:,:,jk)  = fse3t_0(:,:,jk) * ( 1 + zssh(:,:) * mut(:,:,jk) ) 
    354354         ENDDO 
    355355 
Note: See TracChangeset for help on using the changeset viewer.