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 3488 for branches/2012/dev_r3385_NOCS04_HAMF/NEMOGCM/NEMO/OPA_SRC/DOM – NEMO

Ignore:
Timestamp:
2012-10-04T18:31:06+02:00 (12 years ago)
Author:
acc
Message:

Branch: dev_r3385_NOCS04_HAMF; #665. Stage 3 of 2012 development: Rationalisation of code. Added LIM3 changes, corrected coupled changes and highlighted areas of concern in CICE interface

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2012/dev_r3385_NOCS04_HAMF/NEMOGCM/NEMO/OPA_SRC/DOM/closea.F90

    r3402 r3488  
    178178      ! 
    179179      INTEGER                     ::   ji, jj, jc, jn   ! dummy loop indices 
    180       REAL(wp)                    ::   zze2 
     180      REAL(wp)                    ::   zze2, zcoef, zcoef1 
    181181      REAL(wp), DIMENSION (jpncs) ::   zfwf  
    182182      !!---------------------------------------------------------------------- 
     
    235235         IF( ncstt(jc) == 0 ) THEN  
    236236            ! water/evap excess is shared by all open ocean 
    237             emp (:,:) = emp (:,:) + zfwf(jc) / surf(jpncs+1) 
     237            zcoef  = zfwf(jc) / surf(jpncs+1) 
     238            zcoef1 = rcp * zcoef 
     239            emp(:,:) = emp(:,:) + zcoef 
     240            qns(:,:) = qns(:,:) - zcoef1 * sst_m(:,:) 
    238241         ELSEIF( ncstt(jc) == 1 ) THEN  
    239242            ! Excess water in open sea, at outflow location, excess evap shared 
     
    244247                  IF (      ji > 1 .AND. ji < jpi   & 
    245248                      .AND. jj > 1 .AND. jj < jpj ) THEN  
    246                       emp (ji,jj) = emp (ji,jj) + zfwf(jc) /   & 
    247                          (FLOAT(ncsnr(jc)) * e1t(ji,jj) * e2t(ji,jj)) 
     249                      zcoef  = zfwf(jc) / ( REAL(ncsnr(jc), wp) * e1t(ji,jj) * e2t(ji,jj) ) 
     250                      zcoef1 = rcp * zcoef 
     251                      emp(ji,jj) = emp(ji,jj) + zcoef 
     252                      qns(ji,jj) = qns(ji,jj) - zcoef1 * sst_m(ji,jj) 
    248253                  END IF  
    249254                END DO  
    250255            ELSE  
    251                 emp (:,:) = emp (:,:) + zfwf(jc) / surf(jpncs+1) 
     256                zcoef  = zfwf(jc) / surf(jpncs+1) 
     257                zcoef1 = rcp * zcoef 
     258                emp(:,:) = emp(:,:) + zcoef 
     259                qns(:,:) = qns(:,:) - zcoef1 * sst_m(:,:) 
    252260            ENDIF 
    253261         ELSEIF( ncstt(jc) == 2 ) THEN  
     
    258266                  ji = mi0(ncsir(jc,jn)) 
    259267                  jj = mj0(ncsjr(jc,jn)) ! Location of outflow in open ocean 
    260                   emp (ji,jj) = emp (ji,jj) + zfwf(jc)   & 
    261                       / (FLOAT(ncsnr(jc)) *  e1t(ji,jj) * e2t(ji,jj) ) 
     268                  zcoef  = zfwf(jc) / ( REAL(ncsnr(jc), wp) * e1t(ji,jj) * e2t(ji,jj) ) 
     269                  zcoef1 = rcp * zcoef 
     270                  emp(ji,jj) = emp(ji,jj) + zcoef 
     271                  qns(ji,jj) = qns(ji,jj) - zcoef1 * sst_m(ji,jj) 
    262272                END DO  
    263273            ENDIF  
     
    266276         DO jj = ncsj1(jc), ncsj2(jc) 
    267277            DO ji = ncsi1(jc), ncsi2(jc) 
    268                emp (ji,jj) = emp (ji,jj) - zfwf(jc) / surf(jc) 
     278               zcoef  = zfwf(jc) / surf(jc) 
     279               zcoef1 = rcp * zcoef 
     280               emp(ji,jj) = emp(ji,jj) - zcoef 
     281               qns(ji,jj) = qns(ji,jj) + zcoef1 * sst_m(ji,jj) 
    269282            END DO   
    270283         END DO  
Note: See TracChangeset for help on using the changeset viewer.