- Timestamp:
- 2020-07-01T15:42:06+02:00 (4 years ago)
- Location:
- NEMO/branches/2020/dev_r12377_KERNEL-06_techene_e3
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2020/dev_r12377_KERNEL-06_techene_e3
- Property svn:externals
-
old new 8 8 9 9 # SETTE 10 ^/utils/CI/sette@ HEADsette10 ^/utils/CI/sette@12931 sette
-
- Property svn:externals
-
NEMO/branches/2020/dev_r12377_KERNEL-06_techene_e3/src/OFF/nemogcm.F90
r12779 r13193 31 31 USE domqco ! tools for scale factor (dom_qco_r3c routine) 32 32 #endif 33 USE bdy_oce, ONLY : ln_bdy 34 USE bdyini ! open boundary cond. setting (bdy_init routine) 33 35 ! ! ocean physics 34 36 USE ldftra ! lateral diffusivity setting (ldf_tra_init routine) … … 93 95 !! Madec, 2008, internal report, IPSL. 94 96 !!---------------------------------------------------------------------- 95 INTEGER :: istp , indic! time step index97 INTEGER :: istp ! time step index 96 98 !!---------------------------------------------------------------------- 97 99 … … 145 147 # endif 146 148 #endif 147 CALL stp_ctl ( istp , indic )! Time loop: control and print149 CALL stp_ctl ( istp ) ! Time loop: control and print 148 150 istp = istp + 1 149 151 END DO … … 160 162 IF( nstop /= 0 .AND. lwp ) THEN ! error print 161 163 WRITE(ctmp1,*) ' ==>>> nemo_gcm: a total of ', nstop, ' errors have been found' 162 CALL ctl_stop( ctmp1 ) 164 WRITE(ctmp2,*) ' Look for "E R R O R" messages in all existing ocean_output* files' 165 CALL ctl_stop( ' ', ctmp1, ' ', ctmp2 ) 163 166 ENDIF 164 167 ! … … 242 245 ! 243 246 ! finalize the definition of namctl variables 244 IF( sn_cfctl%l_allon ) THEN 245 ! Turn on all options. 246 CALL nemo_set_cfctl( sn_cfctl, .TRUE., .TRUE. ) 247 ! Ensure all processors are active 248 sn_cfctl%procmin = 0 ; sn_cfctl%procmax = 1000000 ; sn_cfctl%procincr = 1 249 ELSEIF( sn_cfctl%l_config ) THEN 250 ! Activate finer control of report outputs 251 ! optionally switch off output from selected areas (note this only 252 ! applies to output which does not involve global communications) 253 IF( ( narea < sn_cfctl%procmin .OR. narea > sn_cfctl%procmax ) .OR. & 254 & ( MOD( narea - sn_cfctl%procmin, sn_cfctl%procincr ) /= 0 ) ) & 255 & CALL nemo_set_cfctl( sn_cfctl, .FALSE., .FALSE. ) 256 ELSE 257 ! turn off all options. 258 CALL nemo_set_cfctl( sn_cfctl, .FALSE., .TRUE. ) 259 ENDIF 247 IF( narea < sn_cfctl%procmin .OR. narea > sn_cfctl%procmax .OR. MOD( narea - sn_cfctl%procmin, sn_cfctl%procincr ) /= 0 ) & 248 & CALL nemo_set_cfctl( sn_cfctl, .FALSE. ) 260 249 ! 261 250 lwp = (narea == 1) .OR. sn_cfctl%l_oceout ! control of all listing output print … … 322 311 ! Initialise time level indices 323 312 Nbb = 1; Nnn = 2; Naa = 3; Nrhs = Naa 324 325 313 326 314 ! !-------------------------------! … … 344 332 345 333 CALL sbc_init( Nbb, Nnn, Naa ) ! Forcings : surface module 334 CALL bdy_init ! Open boundaries initialisation 346 335 347 336 ! ! Tracer physics … … 386 375 WRITE(numout,*) '~~~~~~~~' 387 376 WRITE(numout,*) ' Namelist namctl' 388 WRITE(numout,*) ' sn_cfctl%l_glochk = ', sn_cfctl%l_glochk389 WRITE(numout,*) ' sn_cfctl%l_allon = ', sn_cfctl%l_allon390 WRITE(numout,*) ' finer control over o/p sn_cfctl%l_config = ', sn_cfctl%l_config391 377 WRITE(numout,*) ' sn_cfctl%l_runstat = ', sn_cfctl%l_runstat 392 378 WRITE(numout,*) ' sn_cfctl%l_trcstat = ', sn_cfctl%l_trcstat … … 507 493 USE zdf_oce, ONLY : zdf_oce_alloc 508 494 USE trc_oce, ONLY : trc_oce_alloc 495 USE bdy_oce, ONLY : bdy_oce_alloc 509 496 ! 510 497 INTEGER :: ierr … … 516 503 ierr = ierr + zdf_oce_alloc() ! ocean vertical physics 517 504 ierr = ierr + trc_oce_alloc() ! shared TRC / TRA arrays 505 ierr = ierr + bdy_oce_alloc() ! bdy masks (incl. initialization) 518 506 ! 519 507 CALL mpp_sum( 'nemogcm', ierr ) … … 522 510 END SUBROUTINE nemo_alloc 523 511 524 SUBROUTINE nemo_set_cfctl(sn_cfctl, setto , for_all)512 SUBROUTINE nemo_set_cfctl(sn_cfctl, setto ) 525 513 !!---------------------------------------------------------------------- 526 514 !! *** ROUTINE nemo_set_cfctl *** 527 515 !! 528 516 !! ** Purpose : Set elements of the output control structure to setto. 529 !! for_all should be .false. unless all areas are to be 530 !! treated identically. 531 !! 517 !! 532 518 !! ** Method : Note this routine can be used to switch on/off some 533 !! types of output for selected areas but any output types 534 !! that involve global communications (e.g. mpp_max, glob_sum) 535 !! should be protected from selective switching by the 536 !! for_all argument 537 !!---------------------------------------------------------------------- 538 LOGICAL :: setto, for_all 539 TYPE(sn_ctl) :: sn_cfctl 540 !!---------------------------------------------------------------------- 541 IF( for_all ) THEN 542 sn_cfctl%l_runstat = setto 543 sn_cfctl%l_trcstat = setto 544 ENDIF 519 !! types of output for selected areas. 520 !!---------------------------------------------------------------------- 521 TYPE(sn_ctl), INTENT(inout) :: sn_cfctl 522 LOGICAL , INTENT(in ) :: setto 523 !!---------------------------------------------------------------------- 524 sn_cfctl%l_runstat = setto 525 sn_cfctl%l_trcstat = setto 545 526 sn_cfctl%l_oceout = setto 546 527 sn_cfctl%l_layout = setto … … 572 553 573 554 574 SUBROUTINE stp_ctl( kt , kindic)555 SUBROUTINE stp_ctl( kt ) 575 556 !!---------------------------------------------------------------------- 576 557 !! *** ROUTINE stp_ctl *** … … 583 564 !!---------------------------------------------------------------------- 584 565 INTEGER, INTENT(in ) :: kt ! ocean time-step index 585 INTEGER, INTENT(inout) :: kindic ! indicator of solver convergence586 566 !!---------------------------------------------------------------------- 587 567 !
Note: See TracChangeset
for help on using the changeset viewer.