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 9385 for branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/TOP_SRC/MEDUSA/air_sea.F90 – NEMO

Ignore:
Timestamp:
2018-03-08T12:36:19+01:00 (6 years ago)
Author:
marc
Message:

GMED ticket 380. Merge changes from Julien's branches/NERC/dev_r5518_GO6_CO2_cmip.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/TOP_SRC/MEDUSA/air_sea.F90

    r9257 r9385  
    6767# endif 
    6868      USE in_out_manager,    ONLY: lwp, numout 
    69       USE oce,               ONLY: PCO2a_in_cpl 
    7069      USE par_kind,          ONLY: wp 
    7170      USE par_oce,           ONLY: jpi, jpim1, jpj, jpjm1 
    72       USE sbc_oce,           ONLY: fr_i, lk_oasis, qsr, wndm 
     71      USE sbc_oce,           ONLY: fr_i, qsr, wndm 
    7372      USE sms_medusa,        ONLY: jdms, jdms_input, jdms_model,          & 
    7473                                   jriver_alk, jriver_c,                  & 
     
    152151            !! OPEN wet point IF..THEN loop 
    153152            IF (tmask(ji,jj,1) == 1) then 
    154                IF (lk_oasis) THEN 
    155                   !! use 2D atm xCO2 from atm coupling 
    156                   f_xco2a(ji,jj) = PCO2a_in_cpl(ji,jj) 
    157                   !!!  
    158                   !!! Jpalm test on atm xCO2 
    159                   IF ( (f_xco2a(ji,jj) > 1500.0 ).OR.(f_xco2a(ji,jj) < 100.0 ) ) THEN 
    160                     IF(lwp) THEN  
    161                        WRITE(numout,*) ' atm xCO2 = ',f_xco2a(ji,jj),          & 
    162                                        ' -- ji =', mig(ji),' jj = ', mjg(jj) 
    163                     ENDIF 
    164                     CALL ctl_stop( 'MEDUSA - Air-Sea :', 'unrealistic atm xCO2 ' ) 
    165                  ENDIF  
    166                ENDIF 
    167153               !! 
    168154               !! AXY (23/06/15): as part of an effort to update the  
     
    261247               !!          must be associated to air-sea flux or air xCO2... 
    262248               !!          Check MOCSY outputs 
    263               IF ( (f_pco2w(ji,jj) > 1.E4 ).OR.(f_pco2w(ji,jj) < 0.0 ) .OR.     & 
    264                    (f_fco2w(ji,jj) > 1.E4 ).OR.(f_fco2w(ji,jj) < 0.0 ) .OR.     &    
    265                    (f_fco2atm(ji,jj) > 1.E4 ).OR.(f_fco2atm(ji,jj) < 0.0 ) .OR.     & 
    266                    (f_co2flux(ji,jj) > 1.E-2 ).OR.(f_co2flux(ji,jj) < -1.E-2 ) .OR.     & 
    267                    (f_dpco2(ji,jj) > 1.E4 ).OR.(f_dpco2(ji,jj) < -1.E4 ) ) THEN 
    268                  IF(lwp) THEN  
    269                      WRITE(numout,*) ' surface T = ',ztmp(ji,jj) 
    270                      WRITE(numout,*) ' surface S = ',zsal(ji,jj) 
    271                      WRITE(numout,*) ' surface ALK = ',zalk(ji,jj) 
    272                      WRITE(numout,*) ' surface DIC = ',zdic(ji,jj) 
    273                      WRITE(numout,*) ' KW660 = ',f_kw660(ji,jj) 
    274                      WRITE(numout,*) ' atm xCO2 = ',f_xco2a(ji,jj)    
    275                      WRITE(numout,*) ' surface pco2w  = ',f_pco2w(ji,jj) 
    276                      WRITE(numout,*) ' surface fco2w  = ',f_fco2w(ji,jj) 
    277                      WRITE(numout,*) ' surface fco2a  = ',f_fco2atm(ji,jj) 
    278                      WRITE(numout,*) ' surface co2flx = ',f_co2flux(ji,jj) 
    279                      WRITE(numout,*) ' surface dpco2  = ',f_dpco2(ji,jj) 
    280                      WRITE(numout,*) ' MOCSY output: ji =', mig(ji),' jj = ', mjg(jj),  & 
    281                                        ' kt = ', kt      
    282                      WRITE(numout,*) 'MEDUSA - Air-Sea OUTPUT: unrealistic surface Carb. Chemistry' 
    283                  ENDIF      
    284                  CALL ctl_stop( 'MEDUSA - Air-Sea OUTPUT: ',            & 
    285                                 'unrealistic surface Carb. Chemistry -- OUTPUTS' ) 
    286               ENDIF      
     249               !!=================== 
     250               !! Jpalm -- 19-02-2018 -- remove the cap - only check MOCSY inputs 
     251               !!       because of specific area in arabic sea where strangely 
     252               !!       with core 2 forcing, ALK is lower than DIC and result in  
     253               !!       Enormous dpco2 - even if all carb chem caract are OK. 
     254               !!       and this check stops the model. 
     255               !!       --Input checks are already more than enough to stop the 
     256               !!       model if carb chem goes crazy.  
     257               !!       we remove the mocsy output checks 
     258               !!=================== 
     259               !!IF ( (f_pco2w(ji,jj) > 1.E4 ).OR.(f_pco2w(ji,jj) < 0.0 ) .OR.     & 
     260               !!    (f_fco2w(ji,jj) > 1.E4 ).OR.(f_fco2w(ji,jj) < 0.0 ) .OR.     &    
     261               !!    (f_fco2atm(ji,jj) > 1.E4 ).OR.(f_fco2atm(ji,jj) < 0.0 ) .OR.     & 
     262               !!    (f_co2flux(ji,jj) > 1.E-1 ).OR.(f_co2flux(ji,jj) < -1.E-1 ) .OR.     & 
     263               !!    (f_dpco2(ji,jj) > 1.E4 ).OR.(f_dpco2(ji,jj) < -1.E4 ) ) THEN 
     264               !!  IF(lwp) THEN  
     265               !!      WRITE(numout,*) ' surface T = ',ztmp(ji,jj) 
     266               !!      WRITE(numout,*) ' surface S = ',zsal(ji,jj) 
     267               !!      WRITE(numout,*) ' surface ALK = ',zalk(ji,jj) 
     268               !!      WRITE(numout,*) ' surface DIC = ',zdic(ji,jj) 
     269               !!      WRITE(numout,*) ' KW660 = ',f_kw660(ji,jj) 
     270               !!      WRITE(numout,*) ' atm xCO2 = ',f_xco2a(ji,jj)    
     271               !!      WRITE(numout,*) ' surface pco2w  = ',f_pco2w(ji,jj) 
     272               !!      WRITE(numout,*) ' surface fco2w  = ',f_fco2w(ji,jj) 
     273               !!      WRITE(numout,*) ' surface fco2a  = ',f_fco2atm(ji,jj) 
     274               !!      WRITE(numout,*) ' surface co2flx = ',f_co2flux(ji,jj) 
     275               !!      WRITE(numout,*) ' surface dpco2  = ',f_dpco2(ji,jj) 
     276               !!      WRITE(numout,*) ' MOCSY output: ji =', mig(ji),' jj = ', mjg(jj),  & 
     277               !!                        ' kt = ', kt      
     278               !!      WRITE(numout,*) 'MEDUSA - Air-Sea OUTPUT: unrealistic surface Carb. Chemistry' 
     279               !!  ENDIF      
     280               !!  CALL ctl_stop( 'MEDUSA - Air-Sea OUTPUT: ',            & 
     281               !!                 'unrealistic surface Carb. Chemistry -- OUTPUTS' ) 
     282               !!ENDIF      
    287283            ENDIF 
    288284         ENDDO 
Note: See TracChangeset for help on using the changeset viewer.