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 10417 for NEMO/branches/2018/dev_r10164_HPC09_ESIWACE_PREP_MERGE/src/OCE/BDY – NEMO

Ignore:
Timestamp:
2018-12-19T15:14:45+01:00 (5 years ago)
Author:
smasson
Message:

dev_r10164_HPC09_ESIWACE_PREP_MERGE: suppress the use of nstop out of ctl_stop, see #2133

File:
1 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2018/dev_r10164_HPC09_ESIWACE_PREP_MERGE/src/OCE/BDY/bdyini.F90

    r10402 r10417  
    12031203            END DO 
    12041204            IF( icount /= 0 ) THEN 
    1205                IF(lwp) WRITE(numout,*) 
    1206                IF(lwp) WRITE(numout,*) ' E R R O R : Some ',cgrid(igrd),' grid points,',   & 
     1205               WRITE(ctmp1,*) ' E R R O R : Some ',cgrid(igrd),' grid points,',   & 
    12071206                  ' are not boundary points (flagu calculation). Check nbi, nbj, indices for boundary set ',ib_bdy 
    1208                IF(lwp) WRITE(numout,*) ' ========== ' 
    1209                IF(lwp) WRITE(numout,*) 
    1210                nstop = nstop + 1 
     1207               WRITE(ctmp2,*) ' ========== ' 
     1208               CALL ctl_stop( ' ', ctmp1, ctmp2, ' ' ) 
    12111209            ENDIF  
    12121210         END DO 
     
    12381236            END DO 
    12391237            IF( icount /= 0 ) THEN 
    1240                IF(lwp) WRITE(numout,*) 
    1241                IF(lwp) WRITE(numout,*) ' E R R O R : Some ',cgrid(igrd),' grid points,',   & 
     1238               WRITE(ctmp1,*) ' E R R O R : Some ',cgrid(igrd),' grid points,',   & 
    12421239                  ' are not boundary points (flagv calculation). Check nbi, nbj, indices for boundary set ',ib_bdy 
    1243                IF(lwp) WRITE(numout,*) ' ========== ' 
    1244                IF(lwp) WRITE(numout,*) 
    1245                nstop = nstop + 1 
     1240               WRITE(ctmp2,*) ' ========== ' 
     1241               CALL ctl_stop( ' ', ctmp1, ctmp2, ' ' ) 
    12461242            ENDIF  
    12471243         END DO 
     
    13761372                     icorns(ib2,1) = npckgw(ib1) 
    13771373                  ELSEIF ((jpisft(ib2)==jpiwob(ib1)).AND.(jpjwft(ib1)==jpjsob(ib2))) THEN 
    1378                      IF(lwp) WRITE(numout,*) 
    1379                      IF(lwp) WRITE(numout,*) ' E R R O R : Found an acute open boundary corner at point (i,j)= ', & 
    1380                      &                                     jpisft(ib2), jpjwft(ib1) 
    1381                      IF(lwp) WRITE(numout,*) ' ==========  Not allowed yet' 
    1382                      IF(lwp) WRITE(numout,*) '             Crossing problem with West segment: ',npckgw(ib1), &  
    1383                      &                                                    ' and South segment: ',npckgs(ib2) 
    1384                      IF(lwp) WRITE(numout,*) 
    1385                      nstop = nstop + 1 
     1374                     WRITE(ctmp1,*) ' E R R O R : Found an acute open boundary corner at point (i,j)= ', & 
     1375                        &                                     jpisft(ib2), jpjwft(ib1) 
     1376                     WRITE(ctmp2,*) ' ==========  Not allowed yet' 
     1377                     WRITE(ctmp3,*) '             Crossing problem with West segment: ',npckgw(ib1), &  
     1378                        &                                        ' and South segment: ',npckgs(ib2) 
     1379                     CALL ctl_stop( ' ', ctmp1, ctmp2, ctmp3, ' ' ) 
    13861380                  ELSE 
    1387                      IF(lwp) WRITE(numout,*) 
    1388                      IF(lwp) WRITE(numout,*) ' E R R O R : Check South and West Open boundary indices' 
    1389                      IF(lwp) WRITE(numout,*) ' ==========  Crossing problem with West segment: ',npckgw(ib1) , & 
    1390                      &                                                    ' and South segment: ',npckgs(ib2) 
    1391                      IF(lwp) WRITE(numout,*) 
    1392                      nstop = nstop+1 
     1381                     WRITE(ctmp1,*) ' E R R O R : Check South and West Open boundary indices' 
     1382                     WRITE(ctmp2,*) ' ==========  Crossing problem with West segment: ',npckgw(ib1) , & 
     1383                        &                                         ' and South segment: ',npckgs(ib2) 
     1384                     CALL ctl_stop( ' ', ctmp1, ctmp2, ' ' ) 
    13931385                  END IF 
    13941386               END IF 
     
    14121404                     icorns(ib2,2) = npckge(ib1) 
    14131405                  ELSEIF ((jpjeft(ib1)==jpjsob(ib2)).AND.(jpisdt(ib2)==jpieob(ib1)+1)) THEN 
    1414                      IF(lwp) WRITE(numout,*) 
    1415                      IF(lwp) WRITE(numout,*) ' E R R O R : Found an acute open boundary corner at point (i,j)= ', & 
    1416                      &                                     jpisdt(ib2), jpjeft(ib1) 
    1417                      IF(lwp) WRITE(numout,*) ' ==========  Not allowed yet' 
    1418                      IF(lwp) WRITE(numout,*) '             Crossing problem with East segment: ',npckge(ib1), & 
    1419                      &                                                    ' and South segment: ',npckgs(ib2) 
    1420                      IF(lwp) WRITE(numout,*) 
    1421                      nstop = nstop + 1 
     1406                     WRITE(ctmp1,*) ' E R R O R : Found an acute open boundary corner at point (i,j)= ', & 
     1407                        &                                     jpisdt(ib2), jpjeft(ib1) 
     1408                     WRITE(ctmp2,*) ' ==========  Not allowed yet' 
     1409                     WRITE(ctmp3,*) '             Crossing problem with East segment: ',npckge(ib1), & 
     1410                        &                                        ' and South segment: ',npckgs(ib2) 
     1411                     CALL ctl_stop( ' ', ctmp1, ctmp2, ctmp3, ' ' ) 
    14221412                  ELSE 
    1423                      IF(lwp) WRITE(numout,*) 
    1424                      IF(lwp) WRITE(numout,*) ' E R R O R : Check South and East Open boundary indices' 
    1425                      IF(lwp) WRITE(numout,*) ' ==========  Crossing problem with East segment: ',npckge(ib1), & 
    1426                      &                                                    ' and South segment: ',npckgs(ib2) 
    1427                      IF(lwp) WRITE(numout,*) 
    1428                      nstop = nstop + 1 
     1413                     WRITE(ctmp1,*) ' E R R O R : Check South and East Open boundary indices' 
     1414                     WRITE(ctmp2,*) ' ==========  Crossing problem with East segment: ',npckge(ib1), & 
     1415                     &                                           ' and South segment: ',npckgs(ib2) 
     1416                     CALL ctl_stop( ' ', ctmp1, ctmp2, ' ' ) 
    14291417                  END IF 
    14301418               END IF 
     
    14481436                     icornn(ib2,1) = npckgw(ib1) 
    14491437                  ELSEIF ((jpjwdt(ib1)==jpjnob(ib2)+1).AND.(jpinft(ib2)==jpiwob(ib1))) THEN 
    1450                      IF(lwp) WRITE(numout,*) 
    1451                      IF(lwp) WRITE(numout,*) ' E R R O R : Found an acute open boundary corner at point (i,j)= ', & 
     1438                     WRITE(ctmp1,*) ' E R R O R : Found an acute open boundary corner at point (i,j)= ', & 
    14521439                     &                                     jpinft(ib2), jpjwdt(ib1) 
    1453                      IF(lwp) WRITE(numout,*) ' ==========  Not allowed yet' 
    1454                      IF(lwp) WRITE(numout,*) '             Crossing problem with West segment: ',npckgw(ib1), & 
     1440                     WRITE(ctmp2,*) ' ==========  Not allowed yet' 
     1441                     WRITE(ctmp3,*) '             Crossing problem with West segment: ',npckgw(ib1), & 
    14551442                     &                                                    ' and North segment: ',npckgn(ib2) 
    1456                      IF(lwp) WRITE(numout,*) 
    1457                      nstop = nstop + 1 
     1443                     CALL ctl_stop( ' ', ctmp1, ctmp2, ctmp3, ' ' ) 
    14581444                  ELSE 
    1459                      IF(lwp) WRITE(numout,*) 
    1460                      IF(lwp) WRITE(numout,*) ' E R R O R : Check North and West Open boundary indices' 
    1461                      IF(lwp) WRITE(numout,*) ' ==========  Crossing problem with West segment: ',npckgw(ib1), & 
     1445                     WRITE(ctmp1,*) ' E R R O R : Check North and West Open boundary indices' 
     1446                     WRITE(ctmp2,*) ' ==========  Crossing problem with West segment: ',npckgw(ib1), & 
    14621447                     &                                                    ' and North segment: ',npckgn(ib2) 
    1463                      IF(lwp) WRITE(numout,*) 
    1464                      nstop = nstop + 1 
     1448                     CALL ctl_stop( ' ', ctmp1, ctmp2, ' ' ) 
    14651449                  END IF 
    14661450               END IF 
     
    14841468                     icornn(ib2,2) = npckge(ib1) 
    14851469                  ELSEIF ((jpjedt(ib1)==jpjnob(ib2)+1).AND.(jpindt(ib2)==jpieob(ib1)+1)) THEN 
    1486                      IF(lwp) WRITE(numout,*) 
    1487                      IF(lwp) WRITE(numout,*) ' E R R O R : Found an acute open boundary corner at point (i,j)= ', & 
     1470                     WRITE(ctmp1,*) ' E R R O R : Found an acute open boundary corner at point (i,j)= ', & 
    14881471                     &                                     jpindt(ib2), jpjedt(ib1) 
    1489                      IF(lwp) WRITE(numout,*) ' ==========  Not allowed yet' 
    1490                      IF(lwp) WRITE(numout,*) '             Crossing problem with East segment: ',npckge(ib1), & 
    1491                      &                                                    ' and North segment: ',npckgn(ib2) 
    1492                      IF(lwp) WRITE(numout,*) 
    1493                      nstop = nstop + 1 
     1472                     WRITE(ctmp2,*) ' ==========  Not allowed yet' 
     1473                     WRITE(ctmp3,*) '             Crossing problem with East segment: ',npckge(ib1), & 
     1474                     &                                           ' and North segment: ',npckgn(ib2) 
     1475                     CALL ctl_stop( ' ', ctmp1, ctmp2, ctmp3, ' ' ) 
    14941476                  ELSE 
    1495                      IF(lwp) WRITE(numout,*) 
    1496                      IF(lwp) WRITE(numout,*) ' E R R O R : Check North and East Open boundary indices' 
    1497                      IF(lwp) WRITE(numout,*) ' ==========  Crossing problem with East segment: ',npckge(ib1), & 
    1498                      &                                                    ' and North segment: ',npckgn(ib2) 
    1499                      IF(lwp) WRITE(numout,*) 
    1500                      nstop = nstop + 1 
     1477                     WRITE(ctmp1,*) ' E R R O R : Check North and East Open boundary indices' 
     1478                     WRITE(ctmp2,*) ' ==========  Crossing problem with East segment: ',npckge(ib1), & 
     1479                     &                                           ' and North segment: ',npckgn(ib2) 
     1480                     CALL ctl_stop( ' ', ctmp1, ctmp2, ' ' ) 
    15011481                  END IF 
    15021482               END IF 
     
    15241504         IF (ztestmask(1)==1) THEN  
    15251505            IF (icornw(ib,1)==0) THEN 
    1526                IF(lwp) WRITE(numout,*) 
    1527                IF(lwp) WRITE(numout,*) ' E R R O R : Open boundary segment ', npckgw(ib) 
    1528                IF(lwp) WRITE(numout,*) ' ==========  does not start on land or on a corner'                                                   
    1529                IF(lwp) WRITE(numout,*) 
    1530                nstop = nstop + 1 
     1506               WRITE(ctmp1,*) ' E R R O R : Open boundary segment ', npckgw(ib) 
     1507               WRITE(ctmp2,*) ' ==========  does not start on land or on a corner'                                                   
     1508               CALL ctl_stop( ' ', ctmp1, ctmp2, ' ' ) 
    15311509            ELSE 
    15321510               ! This is a corner 
     
    15381516         IF (ztestmask(2)==1) THEN 
    15391517            IF (icornw(ib,2)==0) THEN 
    1540                IF(lwp) WRITE(numout,*) 
    1541                IF(lwp) WRITE(numout,*) ' E R R O R : Open boundary segment ', npckgw(ib) 
    1542                IF(lwp) WRITE(numout,*) ' ==========  does not end on land or on a corner'                                                   
    1543                IF(lwp) WRITE(numout,*) 
    1544                nstop = nstop + 1 
     1518               WRITE(ctmp1,*) ' E R R O R : Open boundary segment ', npckgw(ib) 
     1519               WRITE(ctmp2,*) ' ==========  does not end on land or on a corner'                                                   
     1520               CALL ctl_stop( ' ', ctmp1, ctmp2, ' ' ) 
    15451521            ELSE 
    15461522               ! This is a corner 
     
    15681544         IF (ztestmask(1)==1) THEN 
    15691545            IF (icorne(ib,1)==0) THEN 
    1570                IF(lwp) WRITE(numout,*) 
    1571                IF(lwp) WRITE(numout,*) ' E R R O R : Open boundary segment ', npckge(ib) 
    1572                IF(lwp) WRITE(numout,*) ' ==========  does not start on land or on a corner'                                                   
    1573                IF(lwp) WRITE(numout,*) 
    1574                nstop = nstop + 1  
     1546               WRITE(ctmp1,*) ' E R R O R : Open boundary segment ', npckge(ib) 
     1547               WRITE(ctmp2,*) ' ==========  does not start on land or on a corner'                                                   
     1548               CALL ctl_stop( ' ', ctmp1, ctmp2, ' ' ) 
    15751549            ELSE 
    15761550               ! This is a corner 
     
    15821556         IF (ztestmask(2)==1) THEN 
    15831557            IF (icorne(ib,2)==0) THEN 
    1584                IF(lwp) WRITE(numout,*) 
    1585                IF(lwp) WRITE(numout,*) ' E R R O R : Open boundary segment ', npckge(ib) 
    1586                IF(lwp) WRITE(numout,*) ' ==========  does not end on land or on a corner'                                                   
    1587                IF(lwp) WRITE(numout,*) 
    1588                nstop = nstop + 1 
     1558               WRITE(ctmp1,*) ' E R R O R : Open boundary segment ', npckge(ib) 
     1559               WRITE(ctmp2,*) ' ==========  does not end on land or on a corner'                                                   
     1560               CALL ctl_stop( ' ', ctmp1, ctmp2, ' ' ) 
    15891561            ELSE 
    15901562               ! This is a corner 
     
    16111583 
    16121584         IF ((ztestmask(1)==1).AND.(icorns(ib,1)==0)) THEN 
    1613             IF(lwp) WRITE(numout,*) 
    1614             IF(lwp) WRITE(numout,*) ' E R R O R : Open boundary segment ', npckgs(ib) 
    1615             IF(lwp) WRITE(numout,*) ' ==========  does not start on land or on a corner'                                                   
    1616             IF(lwp) WRITE(numout,*) 
    1617             nstop = nstop + 1 
     1585            WRITE(ctmp1,*) ' E R R O R : Open boundary segment ', npckgs(ib) 
     1586            WRITE(ctmp2,*) ' ==========  does not start on land or on a corner'                                                   
     1587            CALL ctl_stop( ' ', ctmp1, ctmp2, ' ' ) 
    16181588         ENDIF 
    16191589         IF ((ztestmask(2)==1).AND.(icorns(ib,2)==0)) THEN 
    1620             IF(lwp) WRITE(numout,*) 
    1621             IF(lwp) WRITE(numout,*) ' E R R O R : Open boundary segment ', npckgs(ib) 
    1622             IF(lwp) WRITE(numout,*) ' ==========  does not end on land or on a corner'                                                   
    1623             IF(lwp) WRITE(numout,*) 
    1624             nstop = nstop + 1 
     1590            WRITE(ctmp1,*) ' E R R O R : Open boundary segment ', npckgs(ib) 
     1591            WRITE(ctmp2,*) ' ==========  does not end on land or on a corner'                                                   
     1592            CALL ctl_stop( ' ', ctmp1, ctmp2, ' ' ) 
    16251593         ENDIF 
    16261594      END DO 
     
    16411609 
    16421610         IF ((ztestmask(1)==1).AND.(icornn(ib,1)==0)) THEN 
    1643             IF(lwp) WRITE(numout,*) 
    1644             IF(lwp) WRITE(numout,*) ' E R R O R : Open boundary segment ', npckgn(ib) 
    1645             IF(lwp) WRITE(numout,*) ' ==========  does not start on land'                                                   
    1646             IF(lwp) WRITE(numout,*) 
    1647             nstop = nstop + 1 
     1611            WRITE(ctmp1,*) ' E R R O R : Open boundary segment ', npckgn(ib) 
     1612            WRITE(ctmp2,*) ' ==========  does not start on land'                                                   
     1613            CALL ctl_stop( ' ', ctmp1, ctmp2, ' ' ) 
    16481614         ENDIF 
    16491615         IF ((ztestmask(2)==1).AND.(icornn(ib,2)==0)) THEN 
    1650             IF(lwp) WRITE(numout,*) 
    1651             IF(lwp) WRITE(numout,*) ' E R R O R : Open boundary segment ', npckgn(ib) 
    1652             IF(lwp) WRITE(numout,*) ' ==========  does not end on land'                                                   
    1653             IF(lwp) WRITE(numout,*) 
    1654             nstop = nstop + 1 
     1616            WRITE(ctmp1,*) ' E R R O R : Open boundary segment ', npckgn(ib) 
     1617            WRITE(ctmp2,*) ' ==========  does not end on land'                                                   
     1618            CALL ctl_stop( ' ', ctmp1, ctmp2, ' ' ) 
    16551619         ENDIF 
    16561620      END DO 
     
    16911655      ! 
    16921656      IF( itest>0 ) THEN 
    1693          IF(lwp) WRITE(numout,*) ' E R R O R : Segments ', ib1, 'and ', ib2 
    1694          IF(lwp) WRITE(numout,*) ' ==========  have different open bdy schemes'                                                   
    1695          IF(lwp) WRITE(numout,*) 
    1696          nstop = nstop + 1 
     1657         WRITE(ctmp1,*) ' E R R O R : Segments ', ib1, 'and ', ib2 
     1658         WRITE(ctmp2,*) ' ==========  have different open bdy schemes'                                                   
     1659         CALL ctl_stop( ' ', ctmp1, ctmp2, ' ' ) 
    16971660      ENDIF 
    16981661      ! 
Note: See TracChangeset for help on using the changeset viewer.