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 290 for trunk/NEMO/OPA_SRC/mppini_2.h90 – NEMO

Ignore:
Timestamp:
2005-09-22T12:46:33+02:00 (19 years ago)
Author:
opalod
Message:

nemo_v1_bugfix_007 : CT : - one bug when reading the bathymetry inthe case jpizoom, jpjzoom different from one

  • one bug in the criterion to eliminate processors
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/NEMO/OPA_SRC/mppini_2.h90

    r247 r290  
    7474         imask                                ! temporary global workspace 
    7575 
    76       REAL(wp), DIMENSION(jpiglo,jpjglo) ::   & 
     76      REAL(wp), DIMENSION(jpidta,jpjdta) ::   & 
    7777         zlamt, zphit, zdta                   ! temporary data workspace 
    7878      REAL(wp), DIMENSION(jpk) ::   &    
     
    126126      IF( llbon ) THEN 
    127127            IF(lwp) WRITE(numout,*) 
    128             IF(lwp) WRITE(numout,*) '         read level bathymetry in ', clname 
     128            IF(lwp) WRITE(numout,*) '         read bathymetry in ', clname 
    129129            IF(lwp) WRITE(numout,*) 
    130130            itime = 1 
     
    134134            zdt = rdt 
    135135 
    136             CALL flinopen( clname, jpizoom, jpiglo, jpjzoom, jpjglo, .FALSE.,   & 
     136            CALL flinopen( clname, 1, jpidta, 1, jpjdta, .FALSE.,   & 
    137137                           ipi, ipj, ipk, zlamt, zphit, zdept, itime, istep, zdate0, zdt, inum ) 
    138             CALL flinget( inum, clvar, jpiglo, jpjglo, 1,   & 
    139                           itime, 1, 1, jpizoom, jpiglo, jpjzoom, jpjglo, zdta(:,:) ) 
     138            CALL flinget( inum, clvar, jpidta, jpjdta, 1,   & 
     139                          itime, 1, 1, 1, jpidta, 1, jpjdta, zdta(:,:) ) 
    140140            CALL flinclo( inum ) 
    141141      ELSE 
     
    148148 
    149149      imask(:,:)=1 
    150       WHERE ( zdta(:,:) <= 0. ) imask = 0 
     150      WHERE ( zdta(jpizoom:(jpizoom+jpiglo-1),jpjzoom:(jpjglo+jpjzoom-1)) <= 0. ) imask = 0 
    151151 
    152152      !  1. Dimension arrays for subdomains 
     
    321321 
    322322         isurf = 0 
    323          DO jj = 1, ilj 
    324             DO  ji = 1, ili 
     323         DO jj = 1+jprecj, ilj-jprecj 
     324            DO  ji = 1+jpreci, ili-jpreci 
    325325               IF( imask(ji+iimppt(ii,ij)-1, jj+ijmppt(ii,ij)-1) == 1) isurf = isurf+1 
    326326            END DO 
     
    560560      ENDIF 
    561561 
    562       ! Periodicity : no corner if nbondi = 2 and nperio != 1 
    563  
    564       IF(lwp) WRITE(numout,*) ' nproc=  ',nproc 
    565       IF(lwp) WRITE(numout,*) ' nowe=   ',nowe 
    566       IF(lwp) WRITE(numout,*) ' noea=   ',noea 
    567       IF(lwp) WRITE(numout,*) ' nono=   ',nono 
    568       IF(lwp) WRITE(numout,*) ' noso=   ',noso 
    569       IF(lwp) WRITE(numout,*) ' nbondi= ',nbondi 
    570       IF(lwp) WRITE(numout,*) ' nbondj= ',nbondj 
    571       IF(lwp) WRITE(numout,*) ' npolj=  ',npolj 
    572       IF(lwp) WRITE(numout,*) ' nperio= ',nperio 
    573       IF(lwp) WRITE(numout,*) ' nlci=   ',nlci 
    574       IF(lwp) WRITE(numout,*) ' nlcj=   ',nlcj 
    575       IF(lwp) WRITE(numout,*) ' nimpp=  ',nimpp 
    576       IF(lwp) WRITE(numout,*) ' njmpp=  ',njmpp 
    577       IF(lwp) WRITE(numout,*) ' nbse=   ',nbse,' npse= ',npse 
    578       IF(lwp) WRITE(numout,*) ' nbsw=   ',nbsw,' npsw= ',npsw 
    579       IF(lwp) WRITE(numout,*) ' nbne=   ',nbne,' npne= ',npne 
    580       IF(lwp) WRITE(numout,*) ' nbnw=   ',nbnw,' npnw= ',npnw 
    581  
    582562      IF( nperio == 1 .AND.jpni /= 1 ) THEN 
    583563         IF(lwp) WRITE(numout,cform_err) 
     
    588568      ! Prepare mpp north fold 
    589569 
    590       IF (jperio >= 3 .AND. jperio <= 6 .AND. jpni > 1 ) THEN 
     570      IF( jperio >= 3 .AND. jperio <= 6 .AND. jpni > 1 ) THEN 
    591571         CALL mpp_ini_north 
    592572         IF(lwp) WRITE(numout,*) ' mpp_init2 : North fold boundary prepared for jpni >1' 
    593       END IF 
     573      ENDIF 
    594574 
    595575      ! Defined npolj, either 0, 3 , 4 , 5 , 6 
     
    601581      ij = ijn(narea) 
    602582 
    603       IF (jperio == 3 .OR. jperio == 4 ) THEN 
    604          IF ( ij == jpnj ) npolj = 3 
     583      IF( jperio == 3 .OR. jperio == 4 ) THEN 
     584         IF( ij == jpnj ) npolj = 3 
    605585      ENDIF 
    606586 
    607587      IF( jperio == 5 .OR. jperio == 6 ) THEN 
    608          IF ( ij == jpnj ) npolj = 5 
    609       ENDIF 
    610  
     588         IF( ij == jpnj ) npolj = 5 
     589      ENDIF 
     590       
     591      ! Prepare NetCDF output file (if necessary) 
     592      CALL mpp_init_ioipsl 
     593 
     594      ! Periodicity : no corner if nbondi = 2 and nperio != 1 
     595 
     596      IF(lwp) THEN 
     597         WRITE(numout,*) ' nproc=  ',nproc 
     598         WRITE(numout,*) ' nowe=   ',nowe 
     599         WRITE(numout,*) ' noea=   ',noea 
     600         WRITE(numout,*) ' nono=   ',nono 
     601         WRITE(numout,*) ' noso=   ',noso 
     602         WRITE(numout,*) ' nbondi= ',nbondi 
     603         WRITE(numout,*) ' nbondj= ',nbondj 
     604         WRITE(numout,*) ' npolj=  ',npolj 
     605         WRITE(numout,*) ' nperio= ',nperio 
     606         WRITE(numout,*) ' nlci=   ',nlci 
     607         WRITE(numout,*) ' nlcj=   ',nlcj 
     608         WRITE(numout,*) ' nimpp=  ',nimpp 
     609         WRITE(numout,*) ' njmpp=  ',njmpp 
     610         WRITE(numout,*) ' nbse=   ',nbse,' npse= ',npse 
     611         WRITE(numout,*) ' nbsw=   ',nbsw,' npsw= ',npsw 
     612         WRITE(numout,*) ' nbne=   ',nbne,' npne= ',npne 
     613         WRITE(numout,*) ' nbnw=   ',nbnw,' npnw= ',npnw 
     614      ENDIF 
    611615 
    612616   END SUBROUTINE mpp_init2 
Note: See TracChangeset for help on using the changeset viewer.