Ignore:
Timestamp:
2020-06-19T08:18:11+02:00 (3 months ago)
Author:
smasson
Message:

Extra_Halo: supress halos from outputs and coupling, see #2366

File:
1 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2020/dev_r12558_HPC-08_epico_Extra_Halo/src/OCE/SBC/cpl_oasis3.F90

    r12807 r13130  
    6969   INTEGER, PUBLIC, PARAMETER ::   nmaxcat=5    ! Maximum number of coupling fields 
    7070   INTEGER, PUBLIC, PARAMETER ::   nmaxcpl=5    ! Maximum number of coupling fields 
    71    LOGICAL, PARAMETER         ::   ltmp_wapatch = .TRUE.   ! patch to restore wraparound rows in cpl_send, cpl_rcv, cpl_define   
    72    INTEGER                    ::   Nis0_save, Nie0_save 
    73    INTEGER                    ::   Njs0_save, Nje0_save 
    7471    
    7572   TYPE, PUBLIC ::   FLD_CPL               !: Type for coupling field information 
     
    148145      !!-------------------------------------------------------------------- 
    149146 
    150       ! patch to restore wraparound rows in cpl_send, cpl_rcv, cpl_define 
    151       IF( ltmp_wapatch ) THEN 
    152          Nis0_save = Nis0   ;   Nie0_save = Nie0 
    153          Njs0_save = Njs0   ;   Nje0_save = Nje0 
    154          IF( nimpp           ==      1 ) Nis0 = 1 
    155          IF( nimpp + jpi - 1 == jpiglo ) Nie0 = jpi 
    156          IF( njmpp           ==      1 ) Njs0 = 1 
    157          IF( njmpp + jpj - 1 == jpjglo ) Nje0 = jpj 
    158       ENDIF  
    159147      IF(lwp) WRITE(numout,*) 
    160148      IF(lwp) WRITE(numout,*) 'cpl_define : initialization in coupled ocean/atmosphere case' 
     
    316304#endif 
    317305      ! 
    318       IF( ltmp_wapatch ) THEN 
    319          Nis0 = Nis0_save   ;   Nie0 = Nie0_save 
    320          Njs0 = Njs0_save   ;   Nje0 = Nje0_save 
    321       ENDIF 
    322306   END SUBROUTINE cpl_define 
    323307    
     
    337321      INTEGER                                   ::   jc,jm     ! local loop index 
    338322      !!-------------------------------------------------------------------- 
    339       ! patch to restore wraparound rows in cpl_send, cpl_rcv, cpl_define 
    340       IF( ltmp_wapatch ) THEN 
    341          Nis0_save = Nis0   ;   Nie0_save = Nie0 
    342          Njs0_save = Njs0   ;   Nje0_save = Nje0 
    343          IF( nimpp           ==      1 ) Nis0 = 1 
    344          IF( nimpp + jpi - 1 == jpiglo ) Nie0 = jpi 
    345          IF( njmpp           ==      1 ) Njs0 = 1 
    346          IF( njmpp + jpj - 1 == jpjglo ) Nje0 = jpj 
    347       ENDIF 
    348323      ! 
    349324      ! snd data to OASIS3 
     
    374349         ENDDO 
    375350      ENDDO 
    376       IF( ltmp_wapatch ) THEN 
    377          Nis0 = Nis0_save   ;   Nie0 = Nie0_save 
    378          Njs0 = Njs0_save   ;   Nje0 = Nje0_save 
    379       ENDIF 
    380351      ! 
    381352    END SUBROUTINE cpl_snd 
     
    396367      !! 
    397368      INTEGER                                   ::   jc,jm     ! local loop index 
    398       LOGICAL                                   ::   llaction, llfisrt 
     369      LOGICAL                                   ::   llaction, ll_1st 
    399370      !!-------------------------------------------------------------------- 
    400       ! patch to restore wraparound rows in cpl_send, cpl_rcv, cpl_define 
    401       IF( ltmp_wapatch ) THEN 
    402          Nis0_save = Nis0   ;   Nie0_save = Nie0 
    403          Njs0_save = Njs0   ;   Nje0_save = Nje0 
    404       ENDIF 
    405371      ! 
    406372      ! receive local data from OASIS3 on every process 
     
    409375      ! 
    410376      DO jc = 1, srcv(kid)%nct 
    411          IF( ltmp_wapatch ) THEN 
    412             IF( nimpp           ==      1 ) Nis0 = 1 
    413             IF( nimpp + jpi - 1 == jpiglo ) Nie0 = jpi 
    414             IF( njmpp           ==      1 ) Njs0 = 1 
    415             IF( njmpp + jpj - 1 == jpjglo ) Nje0 = jpj 
    416          ENDIF 
    417          llfisrt = .TRUE. 
     377         ll_1st = .TRUE. 
    418378 
    419379         DO jm = 1, srcv(kid)%ncplmodel 
     
    431391                   
    432392                  kinfo = OASIS_Rcv 
    433                   IF( llfisrt ) THEN  
     393                  IF( ll_1st ) THEN  
    434394                     pdata(Nis0:Nie0,Njs0:Nje0,jc) =   exfld(:,:) * pmask(Nis0:Nie0,Njs0:Nje0,jm) 
    435                      llfisrt = .FALSE. 
     395                     ll_1st = .FALSE. 
    436396                  ELSE 
    437397                     pdata(Nis0:Nie0,Njs0:Nje0,jc) = pdata(Nis0:Nie0,Njs0:Nje0,jc)   & 
     
    457417         ENDDO 
    458418 
    459          IF( ltmp_wapatch ) THEN 
    460             Nis0 = Nis0_save   ;   Nie0 = Nie0_save 
    461             Njs0 = Njs0_save   ;   Nje0 = Nje0_save 
    462          ENDIF 
    463419         !--- Fill the overlap areas and extra hallows (mpp) 
    464420         !--- check periodicity conditions (all cases) 
    465          IF( .not. llfisrt ) THEN 
     421         IF( .NOT. ll_1st ) THEN 
    466422            CALL lbc_lnk( 'cpl_oasis3', pdata(:,:,jc), srcv(kid)%clgrid, srcv(kid)%nsgn )    
    467423         ENDIF 
Note: See TracChangeset for help on using the changeset viewer.