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 12236 for NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/nemogcm.F90 – NEMO

Ignore:
Timestamp:
2019-12-13T10:19:48+01:00 (4 years ago)
Author:
acc
Message:

Branch 2019/dev_r11943_MERGE_2019. Merge in changes from 2019/fix_sn_cfctl_ticket2328. Fully SETTE tested

File:
1 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/nemogcm.F90

    r12205 r12236  
    267267      INTEGER ::   ios, ilocal_comm   ! local integers 
    268268      !! 
    269       NAMELIST/namctl/ ln_ctl   , sn_cfctl, nn_print, nn_ictls, nn_ictle,   & 
     269      NAMELIST/namctl/ sn_cfctl,  nn_print, nn_ictls, nn_ictle,             & 
    270270         &             nn_isplt , nn_jsplt, nn_jctls, nn_jctle,             & 
    271271         &             ln_timing, ln_diacfl 
     
    318318      ! 
    319319      !                             !--------------------! 
    320       !                             ! Open listing units !  -> need ln_ctl from namctl to define lwp 
     320      !                             ! Open listing units !  -> need sn_cfctl from namctl to define lwp 
    321321      !                             !--------------------! 
    322322      ! 
     
    326326902   IF( ios >  0 )   CALL ctl_nam ( ios , 'namctl in configuration namelist' ) 
    327327      ! 
    328       lwp = (narea == 1) .OR. ln_ctl    ! control of all listing output print 
     328      ! finalize the definition of namctl variables 
     329      IF( sn_cfctl%l_allon ) THEN 
     330         ! Turn on all options. 
     331         CALL nemo_set_cfctl( sn_cfctl, .TRUE., .TRUE. ) 
     332         ! Ensure all processors are active 
     333         sn_cfctl%procmin = 0 ; sn_cfctl%procmax = 1000000 ; sn_cfctl%procincr = 1 
     334      ELSEIF( sn_cfctl%l_config ) THEN 
     335         ! Activate finer control of report outputs 
     336         ! optionally switch off output from selected areas (note this only 
     337         ! applies to output which does not involve global communications) 
     338         IF( ( narea < sn_cfctl%procmin .OR. narea > sn_cfctl%procmax  ) .OR. & 
     339           & ( MOD( narea - sn_cfctl%procmin, sn_cfctl%procincr ) /= 0 ) )    & 
     340           &   CALL nemo_set_cfctl( sn_cfctl, .FALSE., .FALSE. ) 
     341      ELSE 
     342         ! turn off all options. 
     343         CALL nemo_set_cfctl( sn_cfctl, .FALSE., .TRUE. ) 
     344      ENDIF 
     345      ! 
     346      lwp = (narea == 1) .OR. sn_cfctl%l_oceout    ! control of all listing output print 
    329347      ! 
    330348      IF(lwp) THEN                      ! open listing units 
     
    358376      ENDIF 
    359377      ! 
    360       ! finalize the definition of namctl variables 
    361       IF( sn_cfctl%l_config ) THEN 
    362          ! Activate finer control of report outputs 
    363          ! optionally switch off output from selected areas (note this only 
    364          ! applies to output which does not involve global communications) 
    365          IF( ( narea < sn_cfctl%procmin .OR. narea > sn_cfctl%procmax  ) .OR. & 
    366            & ( MOD( narea - sn_cfctl%procmin, sn_cfctl%procincr ) /= 0 ) )    & 
    367            &   CALL nemo_set_cfctl( sn_cfctl, .FALSE., .FALSE. ) 
    368       ELSE 
    369          ! Use ln_ctl to turn on or off all options. 
    370          CALL nemo_set_cfctl( sn_cfctl, ln_ctl, .TRUE. ) 
    371       ENDIF 
    372       ! 
    373378      IF(lwm) WRITE( numond, namctl ) 
    374379      ! 
     
    417422                           CALL     dom_init( Nbb, Nnn, Naa, "OPA") ! Domain 
    418423      IF( ln_crs       )   CALL     crs_init(      Nnn )       ! coarsened grid: domain initialization  
    419       IF( ln_ctl       )   CALL prt_ctl_init        ! Print control 
     424      IF( sn_cfctl%l_prtctl )   & 
     425         &                 CALL prt_ctl_init        ! Print control 
    420426       
    421       CALL diurnal_sst_bulk_init                ! diurnal sst 
     427                           CALL diurnal_sst_bulk_init       ! diurnal sst 
    422428      IF( ln_diurnal   )   CALL diurnal_sst_coolskin_init   ! cool skin    
    423429      !                             
    424       IF( ln_diurnal_only ) THEN                   ! diurnal only: a subset of the initialisation routines 
    425          CALL  istate_init( Nbb, Nnn, Naa )           ! ocean initial state (Dynamics and tracers) 
    426          CALL     sbc_init( Nbb, Nnn, Naa )           ! Forcings : surface module 
    427          CALL tra_qsr_init                            ! penetrative solar radiation qsr 
    428          IF( ln_diaobs ) THEN                         ! Observation & model comparison 
    429             CALL dia_obs_init( Nnn )                     ! Initialize observational data 
    430             CALL dia_obs( nit000 - 1, Nnn )              ! Observation operator for restart 
     430      IF( ln_diurnal_only ) THEN                    ! diurnal only: a subset of the initialisation routines 
     431         CALL  istate_init( Nbb, Nnn, Naa )         ! ocean initial state (Dynamics and tracers) 
     432         CALL     sbc_init( Nbb, Nnn, Naa )         ! Forcings : surface module 
     433         CALL tra_qsr_init                          ! penetrative solar radiation qsr 
     434         IF( ln_diaobs ) THEN                       ! Observation & model comparison 
     435            CALL dia_obs_init( Nnn )                ! Initialize observational data 
     436            CALL dia_obs( nit000 - 1, Nnn )         ! Observation operator for restart 
    431437         ENDIF      
    432438         IF( lk_asminc )   CALL asm_inc_init( Nbb, Nnn, Nrhs )   ! Assimilation increments 
     
    521527         WRITE(numout,*) '~~~~~~~~' 
    522528         WRITE(numout,*) '   Namelist namctl' 
    523          WRITE(numout,*) '      run control (for debugging)     ln_ctl     = ', ln_ctl 
     529         WRITE(numout,*) '                              sn_cfctl%l_glochk  = ', sn_cfctl%l_glochk 
     530         WRITE(numout,*) '                              sn_cfctl%l_allon   = ', sn_cfctl%l_allon 
    524531         WRITE(numout,*) '       finer control over o/p sn_cfctl%l_config  = ', sn_cfctl%l_config 
    525532         WRITE(numout,*) '                              sn_cfctl%l_runstat = ', sn_cfctl%l_runstat 
     
    527534         WRITE(numout,*) '                              sn_cfctl%l_oceout  = ', sn_cfctl%l_oceout 
    528535         WRITE(numout,*) '                              sn_cfctl%l_layout  = ', sn_cfctl%l_layout 
    529          WRITE(numout,*) '                              sn_cfctl%l_mppout  = ', sn_cfctl%l_mppout 
    530          WRITE(numout,*) '                              sn_cfctl%l_mpptop  = ', sn_cfctl%l_mpptop 
     536         WRITE(numout,*) '                              sn_cfctl%l_prtctl  = ', sn_cfctl%l_prtctl 
     537         WRITE(numout,*) '                              sn_cfctl%l_prttrc  = ', sn_cfctl%l_prttrc 
     538         WRITE(numout,*) '                              sn_cfctl%l_oasout  = ', sn_cfctl%l_oasout 
    531539         WRITE(numout,*) '                              sn_cfctl%procmin   = ', sn_cfctl%procmin   
    532540         WRITE(numout,*) '                              sn_cfctl%procmax   = ', sn_cfctl%procmax   
     
    566574      !                             ! Parameter control 
    567575      ! 
    568       IF( ln_ctl ) THEN                 ! sub-domain area indices for the control prints 
     576      IF( sn_cfctl%l_prtctl .OR. sn_cfctl%l_prttrc ) THEN              ! sub-domain area indices for the control prints 
    569577         IF( lk_mpp .AND. jpnij > 1 ) THEN 
    570578            isplt = jpni   ;   jsplt = jpnj   ;   ijsplt = jpni*jpnj   ! the domain is forced to the real split domain 
     
    692700      sn_cfctl%l_oceout  = setto 
    693701      sn_cfctl%l_layout  = setto 
    694       sn_cfctl%l_mppout  = setto 
    695       sn_cfctl%l_mpptop  = setto 
     702      sn_cfctl%l_prtctl  = setto 
     703      sn_cfctl%l_prttrc  = setto 
     704      sn_cfctl%l_oasout  = setto 
    696705   END SUBROUTINE nemo_set_cfctl 
    697706 
Note: See TracChangeset for help on using the changeset viewer.