Ignore:
Timestamp:
2015-12-21T12:35:23+01:00 (5 years ago)
Author:
timgraham
Message:

Merge of branches/2015/dev_merge_2015 back into trunk. Merge excludes NEMOGCM/TOOLS/OBSTOOLS/ for now due to issues with the change of file type. Will sort these manually with further commits.

Branch merged as follows:
In the working copy of branch ran:
svn merge svn+ssh://forge.ipsl.jussieu.fr/ipsl/forge/projets/nemo/svn/trunk@HEAD
Small conflicts due to bug fixes applied to trunk since the dev_merge_2015 was copied. Bug fixes were applied to the branch as well so these were easy to resolve.
Branch committed at this stage

In working copy run:
svn switch svn+ssh://forge.ipsl.jussieu.fr/ipsl/forge/projets/nemo/svn/trunk
to switch working copy

Run:
svn merge —reintegrate svn+ssh://forge.ipsl.jussieu.fr/ipsl/forge/projets/nemo/svn/branches/2015/dev_merge_2015
to merge the branch into the trunk and then commit - no conflicts at this stage.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/NEMOGCM/NEMO/OPA_SRC/BDY/bdyvol.F90

    r5930 r6140  
    1010   !!            3.4  !  2011     (D. Storkey) rewrite in preparation for OBC-BDY merge 
    1111   !!---------------------------------------------------------------------- 
    12 #if   defined key_bdy 
     12#if defined key_bdy 
    1313   !!---------------------------------------------------------------------- 
    14    !!   'key_bdy'      unstructured open boundary conditions 
     14   !!   'key_bdy'                     unstructured open boundary conditions 
    1515   !!---------------------------------------------------------------------- 
    16    USE oce             ! ocean dynamics and tracers  
    17    USE bdy_oce         ! ocean open boundary conditions 
    18    USE sbc_oce         ! ocean surface boundary conditions 
    19    USE dom_oce         ! ocean space and time domain  
    20    USE phycst          ! physical constants 
    21    USE sbcisf          ! ice shelf 
     16   USE oce            ! ocean dynamics and tracers  
     17   USE bdy_oce        ! ocean open boundary conditions 
     18   USE sbc_oce        ! ocean surface boundary conditions 
     19   USE dom_oce        ! ocean space and time domain  
     20   USE phycst         ! physical constants 
     21   USE sbcisf         ! ice shelf 
    2222   ! 
    23    USE in_out_manager  ! I/O manager 
    24    USE lib_mpp         ! for mppsum 
    25    USE timing          ! Timing 
    26    USE lib_fortran     ! Fortran routines library 
     23   USE in_out_manager ! I/O manager 
     24   USE lib_mpp        ! for mppsum 
     25   USE timing         ! Timing 
     26   USE lib_fortran    ! Fortran routines library 
    2727 
    2828   IMPLICIT NONE 
    2929   PRIVATE 
    3030 
    31    PUBLIC bdy_vol       
     31   PUBLIC   bdy_vol    ! called by ??? 
    3232 
    33    !! * Substitutions 
    34 #  include "domzgr_substitute.h90" 
    3533   !!---------------------------------------------------------------------- 
    36    !! NEMO/OPA 3.6 , NEMO Consortium (2014) 
     34   !! NEMO/OPA 3.7 , NEMO Consortium (2015) 
    3735   !! $Id$  
    3836   !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) 
     
    4543      !! 
    4644      !! ** Purpose :   This routine controls the volume of the system.  
    47       !!      A correction velocity is calculated 
    48       !!      to correct the total transport through the unstructured OBC.  
     45      !!      A correction velocity is calculated to correct the total transport  
     46      !!      through the unstructured OBC.  
    4947      !!      The total depth used is constant (H0) to be consistent with the  
    50       !!      linear free surface coded in OPA 8.2 
     48      !!      linear free surface coded in OPA 8.2    <<<=== !!gm  ???? true ???? 
    5149      !! 
    5250      !! ** Method  :   The correction velocity (zubtpecor here) is defined calculating 
     
    7270      !!            (set nn_volctl to 1 in tne namelist for this option) 
    7371      !!---------------------------------------------------------------------- 
    74       INTEGER, INTENT( in ) ::   kt   ! ocean time-step index 
    75       !! 
     72      INTEGER, INTENT(in) ::   kt   ! ocean time-step index 
     73      ! 
    7674      INTEGER  ::   ji, jj, jk, jb, jgrd 
    7775      INTEGER  ::   ib_bdy, ii, ij 
     
    9391      ! ----------------------------------------------------------------------- 
    9492!!gm replace these lines : 
    95       z_cflxemp = SUM ( ( emp(:,:)-rnf(:,:)+fwfisf(:,:) ) * bdytmask(:,:) * e1e2t(:,:) ) / rau0 
     93      z_cflxemp = SUM ( ( emp(:,:) - rnf(:,:) + fwfisf(:,:) ) * bdytmask(:,:) * e1e2t(:,:) ) / rau0 
    9694      IF( lk_mpp )   CALL mpp_sum( z_cflxemp )     ! sum over the global domain 
    9795!!gm   by : 
     
    110108               ii = idx%nbi(jb,jgrd) 
    111109               ij = idx%nbj(jb,jgrd) 
    112                zubtpecor = zubtpecor + idx%flagu(jb,jgrd) * ua(ii,ij, jk) * e2u(ii,ij) * fse3u(ii,ij,jk) 
     110               zubtpecor = zubtpecor + idx%flagu(jb,jgrd) * ua(ii,ij, jk) * e2u(ii,ij) * e3u_n(ii,ij,jk) 
    113111            END DO 
    114112         END DO 
     
    118116               ii = idx%nbi(jb,jgrd) 
    119117               ij = idx%nbj(jb,jgrd) 
    120                zubtpecor = zubtpecor + idx%flagv(jb,jgrd) * va(ii,ij, jk) * e1v(ii,ij) * fse3v(ii,ij,jk)  
     118               zubtpecor = zubtpecor + idx%flagv(jb,jgrd) * va(ii,ij, jk) * e1v(ii,ij) * e3v_n(ii,ij,jk)  
    121119            END DO 
    122120         END DO 
     
    127125      ! The normal velocity correction 
    128126      ! ------------------------------ 
    129       IF( nn_volctl==1 ) THEN   ;   zubtpecor = ( zubtpecor - z_cflxemp) / bdysurftot  
    130       ELSE                      ;   zubtpecor =   zubtpecor             / bdysurftot 
     127      IF( nn_volctl==1 ) THEN   ;   zubtpecor = ( zubtpecor - z_cflxemp ) / bdysurftot  
     128      ELSE                      ;   zubtpecor =   zubtpecor               / bdysurftot 
    131129      END IF 
    132130 
     
    143141               ij = idx%nbj(jb,jgrd) 
    144142               ua(ii,ij,jk) = ua(ii,ij,jk) - idx%flagu(jb,jgrd) * zubtpecor * umask(ii,ij,jk) 
    145                ztranst = ztranst + idx%flagu(jb,jgrd) * ua(ii,ij,jk) * e2u(ii,ij) * fse3u(ii,ij,jk) 
     143               ztranst = ztranst + idx%flagu(jb,jgrd) * ua(ii,ij,jk) * e2u(ii,ij) * e3u_n(ii,ij,jk) 
    146144            END DO 
    147145         END DO 
     
    152150               ij = idx%nbj(jb,jgrd) 
    153151               va(ii,ij,jk) = va(ii,ij,jk) -idx%flagv(jb,jgrd) * zubtpecor * vmask(ii,ij,jk) 
    154                ztranst = ztranst + idx%flagv(jb,jgrd) * va(ii,ij,jk) * e1v(ii,ij) * fse3v(ii,ij,jk) 
     152               ztranst = ztranst + idx%flagv(jb,jgrd) * va(ii,ij,jk) * e1v(ii,ij) * e3v_n(ii,ij,jk) 
    155153            END DO 
    156154         END DO 
     
    161159      ! Check the cumulated transport through unstructured OBC once barotropic velocities corrected 
    162160      ! ------------------------------------------------------ 
    163       IF( lwp .AND. MOD( kt, nwrite ) == 0) THEN 
     161      IF( lwp .AND. MOD( kt, nwrite ) == 0 ) THEN 
    164162         IF(lwp) WRITE(numout,*) 
    165163         IF(lwp) WRITE(numout,*)'bdy_vol : time step :', kt 
     
    171169      END IF  
    172170      ! 
    173       IF( nn_timing == 1 ) CALL timing_stop('bdy_vol') 
     171      IF( nn_timing == 1 )   CALL timing_stop('bdy_vol') 
    174172      ! 
    175173      END IF ! ln_vol 
Note: See TracChangeset for help on using the changeset viewer.