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 12928 for NEMO/branches/2019/dev_r11078_OSMOSIS_IMMERSE_Nurser/src/OCE/SBC/cpl_oasis3.F90 – NEMO

Ignore:
Timestamp:
2020-05-14T21:46:00+02:00 (4 years ago)
Author:
smueller
Message:

Synchronizing with /NEMO/trunk@12925 (ticket #2170)

Location:
NEMO/branches/2019/dev_r11078_OSMOSIS_IMMERSE_Nurser
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2019/dev_r11078_OSMOSIS_IMMERSE_Nurser

    • Property svn:externals
      •  

        old new  
        66^/vendors/FCM@HEAD            ext/FCM 
        77^/vendors/IOIPSL@HEAD         ext/IOIPSL 
         8 
         9# SETTE 
         10^/utils/CI/sette@HEAD         sette 
  • NEMO/branches/2019/dev_r11078_OSMOSIS_IMMERSE_Nurser/src/OCE/SBC/cpl_oasis3.F90

    r10582 r12928  
    114114      !------------------------------------------------------------------ 
    115115      CALL oasis_init_comp ( ncomp_id, TRIM(cd_modname), nerror ) 
    116       IF ( nerror /= OASIS_Ok ) & 
     116      IF( nerror /= OASIS_Ok ) & 
    117117         CALL oasis_abort (ncomp_id, 'cpl_init', 'Failure in oasis_init_comp') 
    118118 
     
    122122 
    123123      CALL oasis_get_localcomm ( kl_comm, nerror ) 
    124       IF ( nerror /= OASIS_Ok ) & 
     124      IF( nerror /= OASIS_Ok ) & 
    125125         CALL oasis_abort (ncomp_id, 'cpl_init','Failure in oasis_get_localcomm' ) 
    126126      ! 
     
    149149 
    150150      ! patch to restore wraparound rows in cpl_send, cpl_rcv, cpl_define 
    151       IF ( ltmp_wapatch ) THEN 
     151      IF( ltmp_wapatch ) THEN 
    152152         nldi_save = nldi   ;   nlei_save = nlei 
    153153         nldj_save = nldj   ;   nlej_save = nlej 
     
    203203      paral(5) = jpiglo                                         ! global extent in x 
    204204       
    205       IF( ln_ctl ) THEN 
     205      IF( sn_cfctl%l_oasout ) THEN 
    206206         WRITE(numout,*) ' multiexchg: paral (1:5)', paral 
    207207         WRITE(numout,*) ' multiexchg: jpi, jpj =', jpi, jpj 
     
    217217      ! 
    218218      DO ji = 1, ksnd 
    219          IF ( ssnd(ji)%laction ) THEN 
     219         IF( ssnd(ji)%laction ) THEN 
    220220 
    221221            IF( ssnd(ji)%nct > nmaxcat ) THEN 
     
    228228               DO jm = 1, kcplmodel 
    229229 
    230                   IF ( ssnd(ji)%nct .GT. 1 ) THEN 
     230                  IF( ssnd(ji)%nct .GT. 1 ) THEN 
    231231                     WRITE(cli2,'(i2.2)') jc 
    232232                     zclname = TRIM(ssnd(ji)%clname)//'_cat'//cli2 
     
    234234                     zclname = ssnd(ji)%clname 
    235235                  ENDIF 
    236                   IF ( kcplmodel  > 1 ) THEN 
     236                  IF( kcplmodel  > 1 ) THEN 
    237237                     WRITE(cli2,'(i2.2)') jm 
    238238                     zclname = 'model'//cli2//'_'//TRIM(zclname) 
     
    241241                  IF( agrif_fixed() /= 0 ) THEN  
    242242                     zclname=TRIM(Agrif_CFixed())//'_'//TRIM(zclname) 
    243                   END IF 
    244 #endif 
    245                   IF( ln_ctl ) WRITE(numout,*) "Define", ji, jc, jm, " "//TRIM(zclname), " for ", OASIS_Out 
     243                  ENDIF 
     244#endif 
     245                  IF( sn_cfctl%l_oasout ) WRITE(numout,*) "Define", ji, jc, jm, " "//TRIM(zclname), " for ", OASIS_Out 
    246246                  CALL oasis_def_var (ssnd(ji)%nid(jc,jm), zclname, id_part   , (/ 2, 1 /),   & 
    247247                     &                OASIS_Out          , ishape , OASIS_REAL, nerror ) 
    248                   IF ( nerror /= OASIS_Ok ) THEN 
     248                  IF( nerror /= OASIS_Ok ) THEN 
    249249                     WRITE(numout,*) 'Failed to define transient ', ji, jc, jm, " "//TRIM(zclname) 
    250250                     CALL oasis_abort ( ssnd(ji)%nid(jc,jm), 'cpl_define', 'Failure in oasis_def_var' ) 
    251251                  ENDIF 
    252                   IF( ln_ctl .AND. ssnd(ji)%nid(jc,jm) /= -1 ) WRITE(numout,*) "variable defined in the namcouple" 
    253                   IF( ln_ctl .AND. ssnd(ji)%nid(jc,jm) == -1 ) WRITE(numout,*) "variable NOT defined in the namcouple" 
     252                  IF( sn_cfctl%l_oasout .AND. ssnd(ji)%nid(jc,jm) /= -1 ) WRITE(numout,*) "variable defined in the namcouple" 
     253                  IF( sn_cfctl%l_oasout .AND. ssnd(ji)%nid(jc,jm) == -1 ) WRITE(numout,*) "variable NOT defined in the namcouple" 
    254254               END DO 
    255255            END DO 
     
    262262      ! 
    263263      DO ji = 1, krcv 
    264          IF ( srcv(ji)%laction ) THEN  
     264         IF( srcv(ji)%laction ) THEN  
    265265             
    266266            IF( srcv(ji)%nct > nmaxcat ) THEN 
     
    273273               DO jm = 1, kcplmodel 
    274274                   
    275                   IF ( srcv(ji)%nct .GT. 1 ) THEN 
     275                  IF( srcv(ji)%nct .GT. 1 ) THEN 
    276276                     WRITE(cli2,'(i2.2)') jc 
    277277                     zclname = TRIM(srcv(ji)%clname)//'_cat'//cli2 
     
    279279                     zclname = srcv(ji)%clname 
    280280                  ENDIF 
    281                   IF ( kcplmodel  > 1 ) THEN 
     281                  IF( kcplmodel  > 1 ) THEN 
    282282                     WRITE(cli2,'(i2.2)') jm 
    283283                     zclname = 'model'//cli2//'_'//TRIM(zclname) 
     
    286286                  IF( agrif_fixed() /= 0 ) THEN  
    287287                     zclname=TRIM(Agrif_CFixed())//'_'//TRIM(zclname) 
    288                   END IF 
    289 #endif 
    290                   IF( ln_ctl ) WRITE(numout,*) "Define", ji, jc, jm, " "//TRIM(zclname), " for ", OASIS_In 
     288                  ENDIF 
     289#endif 
     290                  IF( sn_cfctl%l_oasout ) WRITE(numout,*) "Define", ji, jc, jm, " "//TRIM(zclname), " for ", OASIS_In 
    291291                  CALL oasis_def_var (srcv(ji)%nid(jc,jm), zclname, id_part   , (/ 2, 1 /),   & 
    292292                     &                OASIS_In           , ishape , OASIS_REAL, nerror ) 
    293                   IF ( nerror /= OASIS_Ok ) THEN 
     293                  IF( nerror /= OASIS_Ok ) THEN 
    294294                     WRITE(numout,*) 'Failed to define transient ', ji, jc, jm, " "//TRIM(zclname) 
    295295                     CALL oasis_abort ( srcv(ji)%nid(jc,jm), 'cpl_define', 'Failure in oasis_def_var' ) 
    296296                  ENDIF 
    297                   IF( ln_ctl .AND. srcv(ji)%nid(jc,jm) /= -1 ) WRITE(numout,*) "variable defined in the namcouple" 
    298                   IF( ln_ctl .AND. srcv(ji)%nid(jc,jm) == -1 ) WRITE(numout,*) "variable NOT defined in the namcouple" 
     297                  IF( sn_cfctl%l_oasout .AND. srcv(ji)%nid(jc,jm) /= -1 ) WRITE(numout,*) "variable defined in the namcouple" 
     298                  IF( sn_cfctl%l_oasout .AND. srcv(ji)%nid(jc,jm) == -1 ) WRITE(numout,*) "variable NOT defined in the namcouple" 
    299299 
    300300               END DO 
     
    306306      ! End of definition phase 
    307307      !------------------------------------------------------------------ 
    308        
     308      !      
     309#if defined key_agrif 
     310      IF( agrif_fixed() == Agrif_Nb_Fine_Grids() ) THEN 
     311#endif 
    309312      CALL oasis_enddef(nerror) 
    310313      IF( nerror /= OASIS_Ok )   CALL oasis_abort ( ncomp_id, 'cpl_define', 'Failure in oasis_enddef') 
    311       ! 
    312       IF ( ltmp_wapatch ) THEN 
     314#if defined key_agrif 
     315      ENDIF 
     316#endif 
     317      ! 
     318      IF( ltmp_wapatch ) THEN 
    313319         nldi = nldi_save   ;   nlei = nlei_save 
    314320         nldj = nldj_save   ;   nlej = nlej_save 
     
    332338      !!-------------------------------------------------------------------- 
    333339      ! patch to restore wraparound rows in cpl_send, cpl_rcv, cpl_define 
    334       IF ( ltmp_wapatch ) THEN 
     340      IF( ltmp_wapatch ) THEN 
    335341         nldi_save = nldi   ;   nlei_save = nlei 
    336342         nldj_save = nldj   ;   nlej_save = nlej 
     
    349355               CALL oasis_put ( ssnd(kid)%nid(jc,jm), kstep, pdata(nldi:nlei, nldj:nlej,jc), kinfo ) 
    350356                
    351                IF ( ln_ctl ) THEN         
     357               IF ( sn_cfctl%l_oasout ) THEN         
    352358                  IF ( kinfo == OASIS_Sent     .OR. kinfo == OASIS_ToRest .OR.   & 
    353359                     & kinfo == OASIS_SentOut  .OR. kinfo == OASIS_ToRestOut ) THEN 
     
    357363                     WRITE(numout,*) 'oasis_put:  kstep ', kstep 
    358364                     WRITE(numout,*) 'oasis_put:   info ', kinfo 
    359                      WRITE(numout,*) '     - Minimum value is ', MINVAL(pdata(:,:,jc)) 
    360                      WRITE(numout,*) '     - Maximum value is ', MAXVAL(pdata(:,:,jc)) 
    361                      WRITE(numout,*) '     -     Sum value is ', SUM(pdata(:,:,jc)) 
     365                     WRITE(numout,*) '     - Minimum value is ', MINVAL(pdata(nldi:nlei,nldj:nlej,jc)) 
     366                     WRITE(numout,*) '     - Maximum value is ', MAXVAL(pdata(nldi:nlei,nldj:nlej,jc)) 
     367                     WRITE(numout,*) '     -     Sum value is ',    SUM(pdata(nldi:nlei,nldj:nlej,jc)) 
    362368                     WRITE(numout,*) '****************' 
    363369                  ENDIF 
     
    368374         ENDDO 
    369375      ENDDO 
    370       IF ( ltmp_wapatch ) THEN 
     376      IF( ltmp_wapatch ) THEN 
    371377         nldi = nldi_save   ;   nlei = nlei_save 
    372378         nldj = nldj_save   ;   nlej = nlej_save 
     
    393399      !!-------------------------------------------------------------------- 
    394400      ! patch to restore wraparound rows in cpl_send, cpl_rcv, cpl_define 
    395       IF ( ltmp_wapatch ) THEN 
     401      IF( ltmp_wapatch ) THEN 
    396402         nldi_save = nldi   ;   nlei_save = nlei 
    397403         nldj_save = nldj   ;   nlej_save = nlej 
     
    403409      ! 
    404410      DO jc = 1, srcv(kid)%nct 
    405          IF ( ltmp_wapatch ) THEN 
     411         IF( ltmp_wapatch ) THEN 
    406412            IF( nimpp           ==      1 ) nldi = 1 
    407413            IF( nimpp + jpi - 1 == jpiglo ) nlei = jpi 
     
    420426                  &        kinfo == OASIS_RecvOut .OR. kinfo == OASIS_FromRestOut 
    421427                
    422                IF ( ln_ctl )   WRITE(numout,*) "llaction, kinfo, kstep, ivarid: " , llaction, kinfo, kstep, srcv(kid)%nid(jc,jm) 
     428               IF ( sn_cfctl%l_oasout )   WRITE(numout,*) "llaction, kinfo, kstep, ivarid: " , llaction, kinfo, kstep, srcv(kid)%nid(jc,jm) 
    423429                
    424                IF ( llaction ) THEN 
     430               IF( llaction ) THEN 
    425431                   
    426432                  kinfo = OASIS_Rcv 
     
    432438                  ENDIF 
    433439                   
    434                   IF ( ln_ctl ) THEN         
     440                  IF ( sn_cfctl%l_oasout ) THEN         
    435441                     WRITE(numout,*) '****************' 
    436442                     WRITE(numout,*) 'oasis_get: Incoming ', srcv(kid)%clname 
     
    438444                     WRITE(numout,*) 'oasis_get:   kstep', kstep 
    439445                     WRITE(numout,*) 'oasis_get:   info ', kinfo 
    440                      WRITE(numout,*) '     - Minimum value is ', MINVAL(pdata(:,:,jc)) 
    441                      WRITE(numout,*) '     - Maximum value is ', MAXVAL(pdata(:,:,jc)) 
    442                      WRITE(numout,*) '     -     Sum value is ', SUM(pdata(:,:,jc)) 
     446                     WRITE(numout,*) '     - Minimum value is ', MINVAL(pdata(nldi:nlei,nldj:nlej,jc)) 
     447                     WRITE(numout,*) '     - Maximum value is ', MAXVAL(pdata(nldi:nlei,nldj:nlej,jc)) 
     448                     WRITE(numout,*) '     -     Sum value is ',    SUM(pdata(nldi:nlei,nldj:nlej,jc)) 
    443449                     WRITE(numout,*) '****************' 
    444450                  ENDIF 
     
    450456         ENDDO 
    451457 
    452          IF ( ltmp_wapatch ) THEN 
     458         IF( ltmp_wapatch ) THEN 
    453459            nldi = nldi_save   ;   nlei = nlei_save 
    454460            nldj = nldj_save   ;   nlej = nlej_save 
     
    483489      ! 
    484490      DO ji = 1, nsnd 
    485          IF (ssnd(ji)%laction ) THEN 
     491         IF(ssnd(ji)%laction ) THEN 
    486492            DO jm = 1, ncplmodel 
    487493               IF( ssnd(ji)%nid(1,jm) /= -1 ) THEN 
     
    495501      ENDDO 
    496502      DO ji = 1, nrcv 
    497          IF (srcv(ji)%laction ) THEN 
     503         IF(srcv(ji)%laction ) THEN 
    498504            DO jm = 1, ncplmodel 
    499505               IF( srcv(ji)%nid(1,jm) /= -1 ) THEN 
     
    529535      ! 
    530536      DEALLOCATE( exfld ) 
    531       IF (nstop == 0) THEN 
     537      IF(nstop == 0) THEN 
    532538         CALL oasis_terminate( nerror )          
    533539      ELSE 
Note: See TracChangeset for help on using the changeset viewer.