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 13176 for NEMO/branches/2020/dev_r12558_HPC-08_epico_Extra_Halo/src/OCE/nemogcm.F90 – NEMO

Ignore:
Timestamp:
2020-06-29T18:02:13+02:00 (4 years ago)
Author:
smasson
Message:

Extra_Halo: rewrite prtctl, supress nn_print, see #2366

File:
1 edited

Legend:

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

    r13065 r13176  
    8484#endif 
    8585   ! 
     86   USE prtctl         ! Print control 
    8687   USE in_out_manager ! I/O manager 
    8788   USE lib_mpp        ! distributed memory computing 
     
    272273      INTEGER ::   ios, ilocal_comm   ! local integers 
    273274      !! 
    274       NAMELIST/namctl/ sn_cfctl,  nn_print, nn_ictls, nn_ictle,             & 
    275          &             nn_isplt , nn_jsplt, nn_jctls, nn_jctle,             & 
    276          &             ln_timing, ln_diacfl 
     275      NAMELIST/namctl/ sn_cfctl, ln_timing, ln_diacfl,                                & 
     276         &             nn_isplt,  nn_jsplt,  nn_ictls, nn_ictle, nn_jctls, nn_jctle             
    277277      NAMELIST/namcfg/ ln_read_cfg, cn_domcfg, ln_closea, ln_write_cfg, cn_domcfg_out, ln_use_jattr 
    278278      !!---------------------------------------------------------------------- 
     
    534534         WRITE(numout,*) '                              sn_cfctl%procincr  = ', sn_cfctl%procincr  
    535535         WRITE(numout,*) '                              sn_cfctl%ptimincr  = ', sn_cfctl%ptimincr  
    536          WRITE(numout,*) '      level of print                  nn_print   = ', nn_print 
    537          WRITE(numout,*) '      Start i indice for SUM control  nn_ictls   = ', nn_ictls 
    538          WRITE(numout,*) '      End i indice for SUM control    nn_ictle   = ', nn_ictle 
    539          WRITE(numout,*) '      Start j indice for SUM control  nn_jctls   = ', nn_jctls 
    540          WRITE(numout,*) '      End j indice for SUM control    nn_jctle   = ', nn_jctle 
    541          WRITE(numout,*) '      number of proc. following i     nn_isplt   = ', nn_isplt 
    542          WRITE(numout,*) '      number of proc. following j     nn_jsplt   = ', nn_jsplt 
    543536         WRITE(numout,*) '      timing by routine               ln_timing  = ', ln_timing 
    544537         WRITE(numout,*) '      CFL diagnostics                 ln_diacfl  = ', ln_diacfl 
    545538      ENDIF 
    546539      ! 
    547       nprint    = nn_print          ! convert DOCTOR namelist names into OLD names 
    548       nictls    = nn_ictls 
    549       nictle    = nn_ictle 
    550       njctls    = nn_jctls 
    551       njctle    = nn_jctle 
    552       isplt     = nn_isplt 
    553       jsplt     = nn_jsplt 
    554  
     540      IF( .NOT.ln_read_cfg )   ln_closea = .false.   ! dealing possible only with a domcfg file 
    555541      IF(lwp) THEN                  ! control print 
    556542         WRITE(numout,*) 
     
    563549         WRITE(numout,*) '      use file attribute if exists as i/p j-start   ln_use_jattr     = ', ln_use_jattr 
    564550      ENDIF 
    565       IF( .NOT.ln_read_cfg )   ln_closea = .false.   ! dealing possible only with a domcfg file 
    566       ! 
    567       !                             ! Parameter control 
    568       ! 
    569       IF( sn_cfctl%l_prtctl .OR. sn_cfctl%l_prttrc ) THEN              ! sub-domain area indices for the control prints 
    570          IF( lk_mpp .AND. jpnij > 1 ) THEN 
    571             isplt = jpni   ;   jsplt = jpnj   ;   ijsplt = jpni*jpnj   ! the domain is forced to the real split domain 
    572          ELSE 
    573             IF( isplt == 1 .AND. jsplt == 1  ) THEN 
    574                CALL ctl_warn( ' - isplt & jsplt are equal to 1',   & 
    575                   &           ' - the print control will be done over the whole domain' ) 
    576             ENDIF 
    577             ijsplt = isplt * jsplt            ! total number of processors ijsplt 
    578          ENDIF 
    579          IF(lwp) WRITE(numout,*)'          - The total number of processors over which the' 
    580          IF(lwp) WRITE(numout,*)'            print control will be done is ijsplt : ', ijsplt 
    581          ! 
    582          !                              ! indices used for the SUM control 
    583          IF( nictls+nictle+njctls+njctle == 0 )   THEN    ! print control done over the default area 
    584             lsp_area = .FALSE. 
    585          ELSE                                             ! print control done over a specific  area 
    586             lsp_area = .TRUE. 
    587             IF( nictls < 1 .OR. nictls > jpiglo )   THEN 
    588                CALL ctl_warn( '          - nictls must be 1<=nictls>=jpiglo, it is forced to 1' ) 
    589                nictls = 1 
    590             ENDIF 
    591             IF( nictle < 1 .OR. nictle > jpiglo )   THEN 
    592                CALL ctl_warn( '          - nictle must be 1<=nictle>=jpiglo, it is forced to jpiglo' ) 
    593                nictle = jpiglo 
    594             ENDIF 
    595             IF( njctls < 1 .OR. njctls > jpjglo )   THEN 
    596                CALL ctl_warn( '          - njctls must be 1<=njctls>=jpjglo, it is forced to 1' ) 
    597                njctls = 1 
    598             ENDIF 
    599             IF( njctle < 1 .OR. njctle > jpjglo )   THEN 
    600                CALL ctl_warn( '          - njctle must be 1<=njctle>=jpjglo, it is forced to jpjglo' ) 
    601                njctle = jpjglo 
    602             ENDIF 
    603          ENDIF 
    604       ENDIF 
    605551      ! 
    606552      IF( 1._wp /= SIGN(1._wp,-0._wp)  )   CALL ctl_stop( 'nemo_ctl: The intrinsec SIGN function follows f2003 standard.',  & 
Note: See TracChangeset for help on using the changeset viewer.