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/SAO/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/SAO/nemogcm.F90

    r12960 r13176  
    2929   USE sao_intp 
    3030   ! 
     31   USE prtctl         ! Print control 
    3132   USE in_out_manager ! I/O manager 
    3233   USE lib_mpp        ! distributed memory computing 
     
    9394      INTEGER ::   ios, ilocal_comm   ! local integer 
    9495      ! 
    95       NAMELIST/namctl/ sn_cfctl,  nn_print, nn_ictls, nn_ictle,             & 
    96          &             nn_isplt , nn_jsplt, nn_jctls, nn_jctle,             & 
    97          &             ln_timing, ln_diacfl 
     96      NAMELIST/namctl/ sn_cfctl, ln_timing, ln_diacfl,                                & 
     97         &             nn_isplt,  nn_jsplt,  nn_ictls, nn_ictle, nn_jctls, nn_jctle             
    9898      NAMELIST/namcfg/ ln_read_cfg, cn_domcfg, ln_closea, ln_write_cfg, cn_domcfg_out, ln_use_jattr 
    9999      !!---------------------------------------------------------------------- 
     
    270270         WRITE(numout,*) '                              sn_cfctl%procincr  = ', sn_cfctl%procincr  
    271271         WRITE(numout,*) '                              sn_cfctl%ptimincr  = ', sn_cfctl%ptimincr  
    272          WRITE(numout,*) '      level of print                  nn_print   = ', nn_print 
    273          WRITE(numout,*) '      Start i indice for SUM control  nn_ictls   = ', nn_ictls 
    274          WRITE(numout,*) '      End i indice for SUM control    nn_ictle   = ', nn_ictle 
    275          WRITE(numout,*) '      Start j indice for SUM control  nn_jctls   = ', nn_jctls 
    276          WRITE(numout,*) '      End j indice for SUM control    nn_jctle   = ', nn_jctle 
    277          WRITE(numout,*) '      number of proc. following i     nn_isplt   = ', nn_isplt 
    278          WRITE(numout,*) '      number of proc. following j     nn_jsplt   = ', nn_jsplt 
    279272         WRITE(numout,*) '      timing by routine               ln_timing  = ', ln_timing 
    280273         WRITE(numout,*) '      CFL diagnostics                 ln_diacfl  = ', ln_diacfl 
    281274      ENDIF 
    282275      ! 
    283       nprint    = nn_print          ! convert DOCTOR namelist names into OLD names 
    284       nictls    = nn_ictls 
    285       nictle    = nn_ictle 
    286       njctls    = nn_jctls 
    287       njctle    = nn_jctle 
    288       isplt     = nn_isplt 
    289       jsplt     = nn_jsplt 
    290  
     276      IF( .NOT.ln_read_cfg )   ln_closea = .false.   ! dealing possible only with a domcfg file 
    291277      IF(lwp) THEN                  ! control print 
    292278         WRITE(numout,*) 
     
    298284         WRITE(numout,*) '         filename to be written                        cn_domcfg_out = ', TRIM(cn_domcfg_out) 
    299285         WRITE(numout,*) '      use file attribute if exists as i/p j-start   ln_use_jattr     = ', ln_use_jattr 
    300       ENDIF 
    301       IF( .NOT.ln_read_cfg )   ln_closea = .false.   ! dealing possible only with a domcfg file 
    302       ! 
    303       !                             ! Parameter control 
    304       ! 
    305       IF( sn_cfctl%l_prtctl .OR. sn_cfctl%l_prttrc ) THEN              ! sub-domain area indices for the control prints 
    306          IF( lk_mpp .AND. jpnij > 1 ) THEN 
    307             isplt = jpni   ;   jsplt = jpnj   ;   ijsplt = jpni*jpnj   ! the domain is forced to the real split domain 
    308          ELSE 
    309             IF( isplt == 1 .AND. jsplt == 1  ) THEN 
    310                CALL ctl_warn( ' - isplt & jsplt are equal to 1',   & 
    311                   &           ' - the print control will be done over the whole domain' ) 
    312             ENDIF 
    313             ijsplt = isplt * jsplt            ! total number of processors ijsplt 
    314          ENDIF 
    315          IF(lwp) WRITE(numout,*)'          - The total number of processors over which the' 
    316          IF(lwp) WRITE(numout,*)'            print control will be done is ijsplt : ', ijsplt 
    317          ! 
    318          !                              ! indices used for the SUM control 
    319          IF( nictls+nictle+njctls+njctle == 0 )   THEN    ! print control done over the default area 
    320             lsp_area = .FALSE. 
    321          ELSE                                             ! print control done over a specific  area 
    322             lsp_area = .TRUE. 
    323             IF( nictls < 1 .OR. nictls > jpiglo )   THEN 
    324                CALL ctl_warn( '          - nictls must be 1<=nictls>=jpiglo, it is forced to 1' ) 
    325                nictls = 1 
    326             ENDIF 
    327             IF( nictle < 1 .OR. nictle > jpiglo )   THEN 
    328                CALL ctl_warn( '          - nictle must be 1<=nictle>=jpiglo, it is forced to jpiglo' ) 
    329                nictle = jpiglo 
    330             ENDIF 
    331             IF( njctls < 1 .OR. njctls > jpjglo )   THEN 
    332                CALL ctl_warn( '          - njctls must be 1<=njctls>=jpjglo, it is forced to 1' ) 
    333                njctls = 1 
    334             ENDIF 
    335             IF( njctle < 1 .OR. njctle > jpjglo )   THEN 
    336                CALL ctl_warn( '          - njctle must be 1<=njctle>=jpjglo, it is forced to jpjglo' ) 
    337                njctle = jpjglo 
    338             ENDIF 
    339          ENDIF 
    340286      ENDIF 
    341287      ! 
Note: See TracChangeset for help on using the changeset viewer.