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 6253 for branches/2015/dev_r5936_INGV1_WAVE/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfqiao.F90 – NEMO

Ignore:
Timestamp:
2016-01-14T19:22:56+01:00 (8 years ago)
Author:
emanuelaclementi
Message:

#1643 : Changes after review phase, thanks to Rachid Benshila

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2015/dev_r5936_INGV1_WAVE/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfqiao.F90

    r5983 r6253  
    5353      !!--------------------------------------------------------------------- 
    5454      INTEGER, INTENT( in  ) ::  kt   ! ocean time step 
    55       INTEGER                ::  ierror   ! return error code 
    56       INTEGER                ::  jj,ji,jk 
     55      ! 
     56      INTEGER                ::  jj, ji, jk 
    5757      !!--------------------------------------------------------------------- 
    58       !!---------------------------------------------------------------------- 
    5958      ! 
    6059      ! 
    6160      !                                         ! -------------------- ! 
    6261      IF( kt == nit000 ) THEN                   ! First call kt=nit000 ! 
    63       !                                         ! -------------------- ! 
    64          ALLOCATE(QBv(jpi,jpj,jpk)) 
     62         ALLOCATE(QBv(jpi,jpj,jpk))             ! -------------------- ! 
    6563         ALLOCATE(QBvu(jpi,jpj,jpk)) 
    6664         ALLOCATE(QBvv(jpi,jpj,jpk)) 
    67  
    6865      ENDIF 
    6966 
    70          QBv (:,:,:) = 0.0 
    71          QBvu(:,:,:) = 0.0 
    72          QBvv(:,:,:) = 0.0 
     67      QBv (:,:,:) = 0.0 
     68      QBvu(:,:,:) = 0.0 
     69      QBvv(:,:,:) = 0.0 
     70 
    7371      ! 
    7472      ! Compute the Qiao term Bv (QBv) to be added to 
     
    8078      IF ( ln_wave ) THEN 
    8179         DO jk = 1, jpk 
    82           DO jj = 1, jpjm1 
    83             DO ji = 1, jpim1 
    84  
    85                QBv(ji,jj,jk) = 1.0 * 0.353553 * swh(ji,jj) * tsd2d(ji,jj) *     & 
    86                &              exp(3.0 * wnum(ji,jj) *                            &                      
    87                &              (-MIN( gdept_0(ji  ,jj  ,jk) , gdept_0(ji+1,jj  ,jk),     &  
     80            DO jj = 1, jpjm1 
     81               DO ji = 1, jpim1 
     82                  QBv(ji,jj,jk) = 1.0 * 0.353553 * swh(ji,jj) * tsd2d(ji,jj) *       & 
     83               &              exp(3.0 * wnum(ji,jj) *                                &                      
     84               &              (-MIN( gdept_0(ji  ,jj  ,jk) , gdept_0(ji+1,jj  ,jk),  &  
    8885               &               gdept_0(ji  ,jj+1,jk),gdept_0(ji+1,jj+1,jk)))) 
    89  
    90             ENDDO 
    91           ENDDO 
    92          ENDDO 
     86               END DO 
     87            END DO 
     88         END DO 
    9389 
    9490         QBv(jpi,:,:)=QBv(jpim1,:,:) 
     
    9894         ! Interpolate Qiao parameter QBv into the grid_U and grid_V 
    9995         !------------------------------------------------- 
    100  
     96         ! 
    10197         DO jk = 1, jpk 
    102            DO jj = 1, jpjm1 
    103             DO ji = 1, jpim1 
    104  
    105                QBvu(ji,jj,jk)=0.5 * ( 2. - umask(ji,jj,jk) ) *                 & 
    106                &           ( QBv(ji,jj,jk) * tmask(ji,jj,jk)                   &  
     98            DO jj = 1, jpjm1 
     99               DO ji = 1, jpim1 
     100                  QBvu(ji,jj,jk)=0.5 * ( 2. - umask(ji,jj,jk) ) *                 & 
     101               &           ( QBv(ji,jj,jk) * tmask(ji,jj,jk)                      &  
    107102               &           + QBv(ji+1,jj,jk) * tmask(ji+1,jj,jk) )                
    108                QBvv(ji,jj,jk)=0.5 * ( 2. - vmask(ji,jj,jk) ) *                 & 
    109                &           ( QBv(ji,jj,jk) * tmask(ji,jj,jk)                   & 
     103                  QBvv(ji,jj,jk)=0.5 * ( 2. - vmask(ji,jj,jk) ) *                 & 
     104               &           ( QBv(ji,jj,jk) * tmask(ji,jj,jk)                      & 
    110105               &           + QBv(ji,jj+1,jk) * tmask(ji,jj+1,jk) ) 
    111106 
    112              ENDDO 
    113             ENDDO 
    114           ENDDO 
    115 ! 
     107               END DO 
     108            END DO 
     109         END DO 
     110         !  
    116111         QBvu(jpi,:,:)=QBvu(jpim1,:,:) 
    117112         QBvu(:,jpj,:)=QBvu(:,jpjm1,:) 
    118113         QBvv(jpi,:,:)=QBvv(jpim1,:,:) 
    119114         QBvv(:,jpj,:)=QBvv(:,jpjm1,:) 
    120 ! 
     115 
    121116        ELSE 
     117           CALL ctl_stop( 'STOP', 'To use Qiao formulation you have to set: ln_wave=.true.') 
     118        ENDIF 
    122119        ! 
    123         CALL ctl_stop( 'STOP', 'To use Qiao formulation you have to set: ln_wave=.true.') 
    124         ! 
    125         ENDIF 
    126 ! 
    127120   END SUBROUTINE zdf_qiao 
    128121       
Note: See TracChangeset for help on using the changeset viewer.