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 1230 for trunk/NEMO/OPA_SRC/SBC/sbc_oce.F90 – NEMO

Ignore:
Timestamp:
2008-12-01T08:10:47+01:00 (16 years ago)
Author:
smasson
Message:

new coupling inteface: compute wind speed from tau, see ticket:155

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/NEMO/OPA_SRC/SBC/sbc_oce.F90

    r1226 r1230  
    1111   IMPLICIT NONE 
    1212   PRIVATE 
     13    
     14   PUBLIC sbc_tau2wnd   ! compute wind speed based on the wind stress 
    1315    
    1416   !!---------------------------------------------------------------------- 
     
    6769   !! Software governed by the CeCILL licence (modipsl/doc/NEMO_CeCILL.txt) 
    6870   !!====================================================================== 
     71CONTAINS 
     72 
     73   SUBROUTINE sbc_tau2wnd 
     74      !!--------------------------------------------------------------------- 
     75      !!                    ***  ROUTINE sbc_tau2wnd  *** 
     76      !!                    
     77      !! ** Purpose : Estimation of wind speed as a function of wind stress    
     78      !! 
     79      !! ** Method  : |tau|=rhoa*Cd*|U|^2 
     80      !!--------------------------------------------------------------------- 
     81      USE dom_oce         ! ocean space and time domain 
     82      USE lbclnk          ! ocean lateral boundary conditions (or mpp link) 
     83      REAL(wp) ::   zrhoa  = 1.22         ! Air density kg/m3 
     84      REAL(wp) ::   zcdrag = 1.5e-3       ! drag coefficient 
     85      REAL(wp) ::   ztx, zty, ztau, zcoef ! temporary variables 
     86      INTEGER  ::   ji, jj                ! dummy indices 
     87      !! * Substitutions 
     88#  include "vectopt_loop_substitute.h90" 
     89      !!--------------------------------------------------------------------- 
     90      zcoef = 0.5 / ( zrhoa * zcdrag )  
     91!CDIR NOVERRCHK 
     92      DO jj = 2, jpjm1 
     93!CDIR NOVERRCHK 
     94         DO ji = fs_2, fs_jpim1   ! vect. opt. 
     95            ztx = utau(ji-1,jj  ) + utau(ji,jj)  
     96            zty = vtau(ji  ,jj-1) + vtau(ji,jj)  
     97            ztau = SQRT( ztx * ztx + zty * zty ) 
     98            wndm(ji,jj) = SQRT ( ztau * zcoef ) * tmask(ji,jj,1) 
     99         END DO 
     100      END DO 
     101      CALL lbc_lnk( wndm(:,:) , 'T', 1. ) 
     102 
     103   END SUBROUTINE sbc_tau2wnd 
     104 
    69105END MODULE sbc_oce 
Note: See TracChangeset for help on using the changeset viewer.