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 32 for trunk/NEMO/OPA_SRC/LDF/ldfdyn_c2d.h90 – NEMO

Ignore:
Timestamp:
2004-02-17T10:20:15+01:00 (20 years ago)
Author:
opalod
Message:

CT : UPDATE001 : First major NEMO update

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/NEMO/OPA_SRC/LDF/ldfdyn_c2d.h90

    r3 r32  
    1717      !! 
    1818      !! ** Method : 
    19       !!                   **** W A R N I N G **** 
    20       !!                     ORCA OCEAN VERSION 
    21       !!    This method is relevant ONLY for the grid build by the method 
    22       !!               given in the 'Reference' section. 
    23       !!                   **** W A R N I N G **** 
    24       !! 
    2519      !!      2D eddy viscosity coefficients ( longitude, latitude ) 
    2620      !! 
     
    5549 
    5650         zdx_max = MAXVAL( e1t(:,:) ) 
    57 #if defined key_mpp 
    58          CALL mpp_max( zdx_max ) 
    59 #endif 
     51         IF( lk_mpp )   CALL mpp_max( zdx_max )   ! max over the global domain 
     52 
    6053         IF(lwp) WRITE(numout,*) '              laplacian operator: ahm proportional to e1' 
    6154         IF(lwp) WRITE(numout,*) '              Caution, here we assume your mesh is isotropic ...' 
     
    9689 
    9790         zdx_max = MAXVAL( e1u(:,:) ) 
    98 #if defined key_mpp 
    99          CALL mpp_max( zdx_max ) 
    100 #endif 
     91         IF( lk_mpp )   CALL mpp_max( zdx_max )   ! max over the global domain 
     92 
    10193         IF(lwp) WRITE(numout,*) '              bi-laplacian operator: ahm proportional to e1**3 ' 
    10294         IF(lwp) WRITE(numout,*) '              Caution, here we assume your mesh is isotropic ...' 
     
    141133 
    142134      !! * Arguments 
    143       LOGICAL, INTENT (in) :: ld_print   ! If true, output arrays on numout 
     135      LOGICAL, INTENT (in) ::   ld_print   ! If true, output arrays on numout 
    144136 
    145137      !! * Local variables 
    146       INTEGER :: ji, jj      ! dummy loop indices 
    147       INTEGER :: inumcf, iost, iim, ijm 
    148       INTEGER :: jn 
    149       INTEGER :: ifreq, il1, il2, ij, ii, inorth, isouth 
    150       INTEGER :: ipi, ipj, iumout, iwork, icompt, ibtest, ikmax 
    151       INTEGER :: ijpt0, ijpt1, iipt0, iipt1 
    152       INTEGER ,DIMENSION(jpidta,jpidta) :: idata 
    153       INTEGER ,DIMENSION(jpi   ,jpj   ) :: icof 
     138      INTEGER ::   ji, jj, jn      ! dummy loop indices 
     139      INTEGER ::   inum = 11       ! temporary logical unit 
     140      INTEGER ::   iost, iim, ijm 
     141      INTEGER ::   ifreq, il1, il2, ij, ii 
     142      INTEGER, DIMENSION(jpidta,jpidta) ::   idata 
     143      INTEGER, DIMENSION(jpi   ,jpj   ) ::   icof 
    154144 
    155145      REAL(wp) ::   zahmeq, zcoft, zcoff, zmsk 
     
    173163      ! ===================== equatorial strip (20N-20S) defined at t-points 
    174164 
    175       inumcf = 15 
    176       OPEN( UNIT=inumcf,FILE='ahmcoef',STATUS='OLD',   & 
    177             FORM='FORMATTED', ACCESS='SEQUENTIAL', ERR=111 ,   & 
    178             IOSTAT= iost)  
     165      OPEN( UNIT=inum, FILE='ahmcoef', STATUS='OLD',   & 
     166         &  FORM='FORMATTED', ACCESS='SEQUENTIAL', ERR=111 ,   & 
     167         &  IOSTAT= iost )  
    179168      IF( iost == 0 ) THEN 
    180169         IF(lwp) WRITE(numout,*) '     file   : ahmcoef open ok' 
    181          IF(lwp) WRITE(numout,*) '     unit   = ', inumcf 
     170         IF(lwp) WRITE(numout,*) '     unit   = ', inum 
    182171         IF(lwp) WRITE(numout,*) '     status = OLD' 
    183172         IF(lwp) WRITE(numout,*) '     form   = FORMATTED' 
     
    195184      ENDIF 
    196185 
    197       REWIND inumcf 
    198       READ(inumcf,9101) clexp, iim, ijm 
    199       READ(inumcf,'(/)') 
     186      REWIND inum 
     187      READ(inum,9101) clexp, iim, ijm 
     188      READ(inum,'(/)') 
    200189      ifreq = 40 
    201190      il1 = 1 
    202191      DO jn = 1, jpidta/ifreq+1 
    203          READ(inumcf,'(/)') 
     192         READ(inum,'(/)') 
    204193         il2 = MIN( jpidta, il1+ifreq-1 ) 
    205          READ(inumcf,9201) ( ii, ji = il1, il2, 5 ) 
    206          READ(inumcf,'(/)') 
     194         READ(inum,9201) ( ii, ji = il1, il2, 5 ) 
     195         READ(inum,'(/)') 
    207196         DO jj = jpjdta, 1, -1 
    208             READ(inumcf,9202) ij, ( idata(ji,jj), ji = il1, il2 ) 
     197            READ(inum,9202) ij, ( idata(ji,jj), ji = il1, il2 ) 
    209198         END DO 
    210199         il1 = il1 + ifreq 
Note: See TracChangeset for help on using the changeset viewer.