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 2142 for branches – NEMO

Changeset 2142 for branches


Ignore:
Timestamp:
2010-10-01T12:04:53+02:00 (14 years ago)
Author:
sga
Message:

NEMO branch DEV_r1924_nocs_latphys. George Nurser.

DOC/NEMO_book.tex:

Removed local additions

NEMO/OPA_SRC/LDF/ldfslp.F90:

Calculate triad volumes as quarter of u- & v-volumes
Include tapering factor into zsxe, so now terms in wslp2
are implicitly multiplied by tapering factor2

Location:
branches/DEV_r1924_nocs_latphys
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/DEV_r1924_nocs_latphys/DOC/NEMO_book.tex

    r2078 r2142  
    131131%% agn use maths shortcuts 
    132132\usepackage{math_abbrev} 
    133  
    134 %% agn give footer with commit hash 
    135 %%    need to call (pdf)latex with --enable-write18 
    136 \immediate\write18{sh ./vc -m} 
    137 \input{vc} 
    138 \fancyfoot[LE,LO]{\textcolor{gray}{\small{Rev: \VCRevisionMod}}} 
    139 \fancyfoot[RE,RO]{\textcolor{gray}{\small{Time: \VCDateISO~\VCTime}}} 
    140133 
    141134%%% essai commande 
  • branches/DEV_r1924_nocs_latphys/NEMO/OPA_SRC/LDF/ldfslp.F90

    r2061 r2142  
    383383          zdnds, zddds, znum, zden,       &  !     "        " 
    384384          zsxe, za_sxe, zslopec, zdsloper,&  !     "        " 
    385           zfact, zepsln, zdx, zdy, zatempw,zatempu,zatempv, &   !     "        " 
    386           ze1ur,ze2vr,ze3wr,zdxt,zdxs,zdyt,zdys,zdzt,zdzs,zarea,zvolf 
     385          zfact, zepsln, zatempw,zatempu,zatempv, &   !     "        " 
     386          ze1ur,ze2vr,ze3wr,zdxt,zdxs,zdyt,zdys,zdzt,zdzs,zvolf 
    387387     REAL(wp), DIMENSION(jpi,jpj,jpk) ::   & 
    388388          zdkt,zdks 
    389      REAL(wp), DIMENSION(jpi,jpj,jpk,2) ::   & 
    390           zdelta2 
    391389     !!---------------------------------------------------------------------- 
    392390 
     
    556554        zdks(:,:,1) = 0.0 
    557555 
    558         DO jk = 1, jpkm1 
    559            DO ji = 1, fs_jpim1   ! vector opt. 
    560               zdelta2(ji,:,jk,1)=MIN((fsdept(ji,:,jk)-fsdepw(ji,:,jk)),(fsdept(ji+1,:,jk)-fsdepw(ji+1,:,jk))) 
    561               zdelta2(ji,:,jk,2)=MIN((fsdepw(ji,:,jk+1)-fsdept(ji,:,jk)),(fsdepw(ji+1,:,jk+1)-fsdept(ji+1,:,jk))) 
    562            END DO 
    563         END DO 
    564  
    565556        ! interior (1=<jk=<jpk-1) 
    566557        DO ip=0,1 
     
    577568                       zdxs=zdis(ji,jj,jk)*ze1ur 
    578569 
    579                        zdx=(e1t(ji+ip,jj)+e1u(ji,jj))/4 
    580570                       ze3wr=1.0/fse3w(ji+ip,jj,jk+kp) 
    581571                       zdzt=zdkt(ji+ip,jj,jk+kp)*ze3wr 
     
    588578                       za_sxe = MAX(-1.0,za_sxe) 
    589579                       zfact = 0.5*(1.0-za_sxe)*umask(ji,jj,jk)*tmask(ji+ip,jj,jk+kp) 
    590  
    591                        zarea=zdx*zdelta2(ji,jj,jk,kp+1) 
    592                        zvolf=zarea*e2t(ji+ip,jj)*zfact 
     580                       zsxe = zsxe*zfact 
     581 
     582                       zvolf = 0.25_wp*e1u(ji,jj)*e2u(ji,jj)*fse3u(ji,jj,jk) 
    593583 
    594584                       ftu(ji,jj,jk)= ftu(ji,jj,jk)+zsxe*zdzt*zvolf*ze1ur 
     
    598588                       tfw(ji+ip,jj,jk+kp)=tfw(ji+ip,jj,jk+kp)+(zvolf*ze3wr)*zsxe*zdxt 
    599589                       sfw(ji+ip,jj,jk+kp)=sfw(ji+ip,jj,jk+kp)+(zvolf*ze3wr)*zsxe*zdxs 
    600                        wslp2(ji+ip,jj,jk+kp)=wslp2(ji+ip,jj,jk+kp)+(zarea*ze3wr/e1t(ji+ip,jj))*zfact*(zsxe)**2 
     590                       wslp2(ji+ip,jj,jk+kp)=wslp2(ji+ip,jj,jk+kp)+ & 
     591                            & ((zvolf*ze3wr)/(e1t(ji+ip,jj)*e2t(ji+ip,jj)))*(zsxe)**2 
    601592 
    602593                    END DO 
     
    607598        END DO 
    608599 
    609         DO jk = 1, jpkm1 
    610            DO jj = 1, jpjm1 
    611               zdelta2(:,jj,jk,1)=MIN((fsdept(:,jj,jk)-fsdepw(:,jj,jk)),(fsdept(:,jj+1,jk)-fsdepw(:,jj+1,jk))) 
    612               zdelta2(:,jj,jk,2)=MIN((fsdepw(:,jj,jk+1)-fsdept(:,jj,jk)),(fsdepw(:,jj+1,jk+1)-fsdept(:,jj+1,jk))) 
    613            END DO 
    614         END DO 
    615  
    616600        DO jp=0,1 
    617601           DO kp=0,1 
     
    625609                       zdys=zdjs(ji,jj,jk)*ze2vr 
    626610 
    627                        zdy=(e2t(ji,jj+jp)+e2v(ji,jj))/4 
    628611                       ze3wr=1.0/fse3w(ji,jj+jp,jk+kp) 
    629612                       zdzt=zdkt(ji,jj+jp,jk+kp)*ze3wr 
     
    636619                       za_sxe = MAX(-1.0,za_sxe) 
    637620                       zfact = 0.5*(1.0-za_sxe)*vmask(ji,jj,jk)*tmask(ji,jj+jp,jk+kp) 
    638  
    639                        zarea=zdy*zdelta2(ji,jj,jk,kp+1) 
    640                        zvolf=zarea*e1t(ji,jj+jp)*zfact 
     621                       zsxe = zsxe*zfact 
     622 
     623                       zvolf = 0.25_wp*e1v(ji,jj)*e2v(ji,jj)*fse3v(ji,jj,jk) 
    641624 
    642625                       ftv(ji,jj,jk)= ftv(ji,jj,jk)+zsxe*zdzt*zvolf*ze2vr 
     
    646629                       tfw(ji,jj+jp,jk+kp)=tfw(ji,jj+jp,jk+kp)+(zvolf*ze3wr)*zsxe*zdyt 
    647630                       sfw(ji,jj+jp,jk+kp)=sfw(ji,jj+jp,jk+kp)+(zvolf*ze3wr)*zsxe*zdys 
    648                        wslp2(ji,jj+jp,jk+kp)=wslp2(ji,jj+jp,jk+kp)+(zarea*ze3wr/e2t(ji,jj+jp))*zfact*(zsxe)**2 
     631                       wslp2(ji,jj+jp,jk+kp)=wslp2(ji,jj+jp,jk+kp)+ & 
     632                            & ((zvolf*ze3wr)/(e1t(ji,jj+jp)*e2t(ji,jj+jp)))*(zsxe)**2 
    649633 
    650634                    END DO 
Note: See TracChangeset for help on using the changeset viewer.