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 8643 – NEMO

Changeset 8643


Ignore:
Timestamp:
2017-10-19T18:41:56+02:00 (7 years ago)
Author:
jpalmier
Message:

JPALM -- 19-10-17 -- Add ctl_warn for master node output

Location:
branches/NERC/dev_r5518_GO6_Carb_Debug/NEMOGCM/NEMO/TOP_SRC/MEDUSA
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/NERC/dev_r5518_GO6_Carb_Debug/NEMOGCM/NEMO/TOP_SRC/MEDUSA/air_sea.F90

    r8642 r8643  
    157157                  !!!  
    158158                  !!! Jpalm test on atm xCO2 
    159                   IF ( (f_xco2a(ji,jj) > 1000 ).OR.(f_xco2a(ji,jj) < 100 ) ) THEN 
     159                  IF ( (f_xco2a(ji,jj) > 1500 ).OR.(f_xco2a(ji,jj) < 100 ) ) THEN 
    160160                     IF(lwp) WRITE(numout,*) ' atm xCO2 = ',f_xco2a(ji,jj),   & 
    161161                                             ' -- ji =', mig(ji),' jj = ', mjg(jj) 
     
    207207               !!          must be associated to air-sea flux or air xCO2...i 
    208208               !!          Check MOCSY inputs 
    209                IF ( (zsal(ji,jj) > 75.0 ).OR.(zsal(ji,jj) < 0.0 ) .OR.     & 
    210                     (ztmp(ji,jj) > 50.0 ).OR.(ztmp(ji,jj) < -20.0 ) .OR.     & 
     209               IF ( (zsal(ji,jj) > 75.0 ).OR.(zsal(ji,jj) < 0.0 ) .OR.        & 
     210                    (ztmp(ji,jj) > 50.0 ).OR.(ztmp(ji,jj) < -20.0 ) .OR.      & 
    211211                    (zalk(ji,jj) > 35.0E2 ).OR.(zalk(ji,jj) <= 0.0 ) .OR.     & 
    212212                    (zdic(ji,jj) > 35.0E2 ).OR.(zdic(ji,jj) <= 0.0 ) .OR.     & 
     
    226226                      WRITE(numout,*) ' MOCSY input: ji =', mig(ji),' jj = ', mjg(jj),  & 
    227227                                       ' kt = ', kt  
    228                       WRITE(numout,*) 'MEDUSA - Air-Sea : unrealistic surface Carb. Chemistry' 
    229                       CALL ctl_stop( 'MEDUSA - Air-Sea :', 'unrealistic surface Carb. Chemistry -- INPUTS' ) 
     228                      WRITE(numout,*) 'MEDUSA - Air-Sea INPUT: unrealistic surface Carb. Chemistry' 
     229                      CALL ctl_stop( 'MEDUSA - Air-Sea INPUT: ',             & 
     230                                     'unrealistic surface Carb. Chemistry -- INPUTS' ) 
    230231                  ENDIF      
    231232               ENDIF      
     
    277278                     WRITE(numout,*) ' MOCSY output: ji =', mig(ji),' jj = ', mjg(jj),  & 
    278279                                       ' kt = ', kt      
    279                      WRITE(numout,*) 'MEDUSA - Air-Sea : unrealistic surface Carb. Chemistry' 
    280                      CALL ctl_stop( 'MEDUSA - Air-Sea :', 'unrealistic surface Carb. Chemistry -- OUTPUTS' ) 
     280                     WRITE(numout,*) 'MEDUSA - Air-Sea OUTPUT: unrealistic surface Carb. Chemistry' 
     281                     CALL ctl_stop( 'MEDUSA - Air-Sea OUTPUT: ',            & 
     282                                    'unrealistic surface Carb. Chemistry -- OUTPUTS' ) 
    281283                 ENDIF      
    282284              ENDIF      
  • branches/NERC/dev_r5518_GO6_Carb_Debug/NEMOGCM/NEMO/TOP_SRC/MEDUSA/trcbio_medusa.F90

    r8642 r8643  
    8181                                            gdepw_0, gdepw_n,               & 
    8282                                            nday_year, nsec_day, nyear,     & 
    83                                             rdt, tmask 
     83                                            rdt, tmask, mig, mjg 
    8484      USE in_out_manager,             ONLY: lwp, numout, nn_date0 
    8585# if defined key_iomput 
     
    8787# endif 
    8888      USE lbclnk,                     ONLY: lbc_lnk 
    89       USE lib_mpp,                    ONLY: ctl_stop 
     89      USE lib_mpp,                    ONLY: ctl_stop, ctl_warn 
    9090      USE oce,                        ONLY: tsb, tsn 
    9191      USE par_kind,                   ONLY: wp 
     
    477477             !! AXY (28/02/14): check input fields 
    478478                  if (ztmp(ji,jj) .lt. -3.0 .or. ztmp(ji,jj) .gt. 40.0 ) then 
    479                      IF(lwp) WRITE(numout,*)                                 & 
    480                         ' trc_bio_medusa: T WARNING 3D, ',                   & 
    481                         tsb(ji,jj,jk,jp_tem), tsn(ji,jj,jk,jp_tem),          & 
    482                         ' at (', ji, ',', jj, ',', jk, ') at time', kt 
     479                     Call ctl_warn(' trc_bio_medusa: T WARNING 3D : ',       & 
     480                                   tsn(ji,jj,jk,jp_tem), 'at I, J, K, kt :', &  
     481                                   mig(ji), mjg(jj), jk, kt ) 
     482# if defined key_debug_medusa 
    483483                     !! temperature 
    484484                     ztmp(ji,jj) = tsb(ji,jj,jk,jp_tem) 
     
    491491                      IF(lwp) WRITE(numout,*)                                 & 
    492492                     tsn(ji-1,jj-1,jk,jp_tem), tsn(ji,jj-1,jk,jp_tem), tsn(ji+1,jj-1,jk,jp_tem) 
    493                      sumtsn = ( tmask(ji-1,jj+1,jk) * tsn(ji-1,jj+1,jk,jp_tem) ) + &  
    494                               ( tmask(ji  ,jj+1,jk) * tsn(ji  ,jj+1,jk,jp_tem) ) + &  
    495                               ( tmask(ji+1,jj+1,jk) * tsn(ji+1,jj+1,jk,jp_tem) ) + &  
    496                               ( tmask(ji-1,jj  ,jk) * tsn(ji-1,jj  ,jk,jp_tem) ) + &  
    497                               ( tmask(ji+1,jj  ,jk) * tsn(ji+1,jj  ,jk,jp_tem) ) + &  
    498                               ( tmask(ji-1,jj-1,jk) * tsn(ji-1,jj-1,jk,jp_tem) ) + &  
    499                               ( tmask(ji  ,jj-1,jk) * tsn(ji  ,jj-1,jk,jp_tem) ) + &  
    500                               ( tmask(ji+1,jj-1,jk) * tsn(ji+1,jj-1,jk,jp_tem) ) 
    501493                      IF(lwp) WRITE(numout,*)                                 & 
    502494                     ' trc_bio_medusa: Abnormal T suroundings Sal' 
     
    532524                      IF(lwp) WRITE(numout,*)                                 & 
    533525                     tmask(ji-1,jj-1,jk), tmask(ji,jj-1,jk), tmask(ji+1,jj-1,jk) 
     526# endif 
     527                     !! Correct out of range values 
     528                     sumtsn = ( tmask(ji-1,jj+1,jk) * tsn(ji-1,jj+1,jk,jp_tem) ) + & 
     529                              ( tmask(ji  ,jj+1,jk) * tsn(ji  ,jj+1,jk,jp_tem) ) + & 
     530                              ( tmask(ji+1,jj+1,jk) * tsn(ji+1,jj+1,jk,jp_tem) ) + & 
     531                              ( tmask(ji-1,jj  ,jk) * tsn(ji-1,jj  ,jk,jp_tem) ) + & 
     532                              ( tmask(ji+1,jj  ,jk) * tsn(ji+1,jj  ,jk,jp_tem) ) + & 
     533                              ( tmask(ji-1,jj-1,jk) * tsn(ji-1,jj-1,jk,jp_tem) ) + & 
     534                              ( tmask(ji  ,jj-1,jk) * tsn(ji  ,jj-1,jk,jp_tem) ) + & 
     535                              ( tmask(ji+1,jj-1,jk) * tsn(ji+1,jj-1,jk,jp_tem) ) 
    534536                     summask = tmask(ji-1,jj+1,jk) + tmask(ji  ,jj+1,jk)   +  & 
    535537                               tmask(ji+1,jj+1,jk) + tmask(ji-1,jj  ,jk)   +  & 
    536                                tmask(ji+1,jj  ,jk) + tmask(ji-1,jj-1,jk)   +  &  
    537                                tmask(ji  ,jj-1,jk) + tmask(ji+1,jj-1,jk)  
     538                               tmask(ji+1,jj  ,jk) + tmask(ji-1,jj-1,jk)   +  & 
     539                               tmask(ji  ,jj-1,jk) + tmask(ji+1,jj-1,jk) 
    538540                     tsnavg = ( sumtsn / summask ) 
    539                      !! Correct out of range values 
     541                     !! 
    540542                     IF ( ( summask .EQ. 0.0 ) .OR. (tsnavg .LT. -3.0 ) .OR.   & 
    541543                          ( tsnavg .GT. 40.0 ) ) THEN     
    542544                        IF (ztmp(ji,jj) .LT. -3.0 ) THEN 
    543                            IF(lwp) WRITE(numout,*)                           & 
     545                           CALL ctl_warn(                                    & 
    544546                           ' trc_bio_medusa: T SWITCHING 3D, ',              & 
    545                            tsn(ji,jj,jk,jp_tem), ' -> -3.0 ' 
     547                           tsn(ji,jj,jk,jp_tem), ' -> -3.0 ' ) 
    546548                           ztmp(ji,jj) = -3.0 
    547549                        ENDIF 
    548550                        IF (ztmp(ji,jj) .GT. 40.0 ) THEN 
    549                            IF(lwp) WRITE(numout,*)                           & 
     551                           CALL ctl_warn(                                    & 
    550552                           ' trc_bio_medusa: T SWITCHING 3D, ',              & 
    551                            tsn(ji,jj,jk,jp_tem), ' -> 40.0 ' 
     553                           tsn(ji,jj,jk,jp_tem), ' -> 40.0 ' ) 
    552554                           ztmp(ji,jj) = 40.0 
    553555                        ENDIF 
    554556                     ELSE  
    555                         IF(lwp) WRITE(numout,*)                              & 
     557                        CALL ctl_warn(                                       & 
    556558                        ' trc_bio_medusa: T SWITCHING 3D, ',                 & 
    557                         tsn(ji,jj,jk,jp_tem), ' -> surounding avg : ', tsnavg 
     559                        tsn(ji,jj,jk,jp_tem), ' -> surounding avg : ', tsnavg ) 
    558560                        ztmp(ji,jj) = tsnavg 
    559561                     ENDIF 
     
    561563                  !! end T chack 
    562564                  if (zsal(ji,jj) .lt. 1.0 .or. zsal(ji,jj) .gt. 47.0 ) then 
    563                      IF(lwp) WRITE(numout,*)                                 & 
     565                        CALL ctl_warn(                                       & 
    564566                        ' trc_bio_medusa: S WARNING 2D, ',                   & 
    565                         tsb(ji,jj,jk,jp_sal), tsn(ji,jj,jk,jp_sal),          & 
    566                         ' at (', ji, ',', jj, ',', jk, ') at time', kt 
     567                        tsn(ji,jj,jk,jp_sal),                                & 
     568                        ' at I, J, K, kt : ', mig(ji), mjg(jj), jk, kt) 
    567569                     !! Correct out of range values 
    568570                     IF (zsal(ji,jj) .LT. 1.0 ) THEN 
    569                         IF(lwp) WRITE(numout,*)                              & 
     571                        CALL ctl_warn(                                       & 
    570572                        ' trc_bio_medusa: S SWITCHING 3D, ',                 & 
    571                         tsn(ji,jj,jk,jp_sal), ' -> 1.0 ' 
     573                        tsn(ji,jj,jk,jp_sal), ' -> 1.0 ') 
    572574                        zsal(ji,jj) = 1.0 
    573575                     ENDIF 
    574576                     IF (zsal(ji,jj) .GT. 47.0 ) THEN 
    575                         IF(lwp) WRITE(numout,*)                              & 
     577                        CALL ctl_warn(                                       & 
    576578                        ' trc_bio_medusa: T SWITCHING 3D, ',                 & 
    577                         tsn(ji,jj,jk,jp_sal), ' -> 47.0 ' 
     579                        tsn(ji,jj,jk,jp_sal), ' -> 47.0 ') 
    578580                        zsal(ji,jj) = 47.0 
    579581                     ENDIF 
Note: See TracChangeset for help on using the changeset viewer.