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 4317 for branches/2013/dev_MERGE_2013 – NEMO

Ignore:
Timestamp:
2013-11-26T17:47:17+01:00 (10 years ago)
Author:
cbricaud
Message:

Deallocate some arrays. see ticket #1190

Location:
branches/2013/dev_MERGE_2013/NEMOGCM/NEMO/OPA_SRC/BDY
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/2013/dev_MERGE_2013/NEMOGCM/NEMO/OPA_SRC/BDY/bdydyn.F90

    r4292 r4317  
    9797       
    9898      IF (lk_vvl) THEN 
    99          phur1(:,:) = 0. 
    100          phvr1(:,:) = 0. 
     99         phur(:,:) = 0. 
     100         phvr(:,:) = 0. 
    101101         DO jk = 1, jpkm1 
    102             phur1(:,:) = phur1(:,:) + fse3u_a(:,:,jk) * umask(:,:,jk) 
    103             phvr1(:,:) = phvr1(:,:) + fse3v_a(:,:,jk) * vmask(:,:,jk) 
     102            phur(:,:) = phur(:,:) + fse3u_a(:,:,jk) * umask(:,:,jk) 
     103            phvr(:,:) = phvr(:,:) + fse3v_a(:,:,jk) * vmask(:,:,jk) 
    104104            pua2d(:,:) = pua2d(:,:) + fse3u_a(:,:,jk) * umask(:,:,jk) * ua(:,:,jk) 
    105105            pva2d(:,:) = pva2d(:,:) + fse3v_a(:,:,jk) * vmask(:,:,jk) * va(:,:,jk) 
    106106         END DO 
    107          phur1(:,:) = umask(:,:,1) / ( phur1(:,:) + 1. - umask(:,:,1) ) 
    108          phvr1(:,:) = vmask(:,:,1) / ( phvr1(:,:) + 1. - vmask(:,:,1) ) 
    109          pua2d(:,:) = pua2d(:,:) * phur1(:,:) 
    110          pva2d(:,:) = pva2d(:,:) * phvr1(:,:) 
     107         phur(:,:) = umask(:,:,1) / ( phur(:,:) + 1. - umask(:,:,1) ) 
     108         phvr(:,:) = vmask(:,:,1) / ( phvr(:,:) + 1. - vmask(:,:,1) ) 
     109         pua2d(:,:) = pua2d(:,:) * phur(:,:) 
     110         pva2d(:,:) = pva2d(:,:) * phvr(:,:) 
    111111      ELSE 
    112112         DO jk = 1, jpkm1 
     
    119119 
    120120      DO jk = 1 , jpkm1 
    121          ua(:,:,jk) = ua(:,:,jk) - pua2d(:,:) 
    122          va(:,:,jk) = va(:,:,jk) - pva2d(:,:) 
     121         ua(:,:,jk) = (ua(:,:,jk) - pua2d(:,:)) * umask(:,:,jk) 
     122         va(:,:,jk) = (va(:,:,jk) - pva2d(:,:)) * vmask(:,:,jk) 
    123123      END DO 
    124124 
     
    152152 
    153153         DO jk = 1 , jpkm1 
    154             ub(:,:,jk) = ub(:,:,jk) - pub2d(:,:) 
    155             vb(:,:,jk) = vb(:,:,jk) - pvb2d(:,:) 
     154            ub(:,:,jk) = (ub(:,:,jk) - pub2d(:,:)) * umask(:,:,jk) 
     155            vb(:,:,jk) = (vb(:,:,jk) - pvb2d(:,:)) * vmask(:,:,jk) 
    156156         END DO 
    157157      END IF 
     
    183183 
    184184      CALL wrk_dealloc(jpi,jpj,pua2d,pva2d)  
    185       IF ( ll_orlanski ) CALL wrk_dealloc(jpi,jpj,pub2d,pvb2d)  
     185      IF ( ll_orlanski ) CALL wrk_dealloc(jpi,jpj,pub2d,pvb2d,phur1,phvr1)  
    186186 
    187187      IF( nn_timing == 1 ) CALL timing_stop('bdy_dyn') 
  • branches/2013/dev_MERGE_2013/NEMOGCM/NEMO/OPA_SRC/BDY/bdydyn3d.F90

    r4292 r4317  
    288288         pvb2d(:,:) = pvb2d(:,:) + fse3v_b(:,:,jk)* vb(:,:,jk)   *vmask(:,:,jk) 
    289289#else 
    290          pub2d(:,:) = pub2d(:,:) + fse3u_0(:,:,jk) * ub(:,:,jk)  * umask(:,:,jk) 
    291          pvb2d(:,:) = pvb2d(:,:) + fse3v_0(:,:,jk) * vb(:,:,jk)  * vmask(:,:,jk) 
     290         pub2d(:,:) = pub2d(:,:) + fse3u(:,:,jk) * ub(:,:,jk)  * umask(:,:,jk) 
     291         pvb2d(:,:) = pvb2d(:,:) + fse3v(:,:,jk) * vb(:,:,jk)  * vmask(:,:,jk) 
    292292#endif 
    293293      END DO 
     
    329329      ENDDO 
    330330      ! 
    331       CALL wrk_dealloc(jpi,jpj,pub2d,pvb2d)  
     331      CALL wrk_dealloc(jpi,jpj,pub2d,pvb2d,phur1,phvr1)  
    332332      ! 
    333333      CALL lbc_lnk( ua, 'U', -1. )   ;   CALL lbc_lnk( va, 'V', -1. )   ! Boundary points should be updated 
Note: See TracChangeset for help on using the changeset viewer.