Changeset 13189 for NEMO/branches/2020/dev_r12472_ASINTER-05_Masson_CurrentFeedback/src/SAS/nemogcm.F90
- Timestamp:
- 2020-07-01T11:27:25+02:00 (4 years ago)
- Location:
- NEMO/branches/2020/dev_r12472_ASINTER-05_Masson_CurrentFeedback
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2020/dev_r12472_ASINTER-05_Masson_CurrentFeedback
- 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_r12472_ASINTER-05_Masson_CurrentFeedback/src/SAS/nemogcm.F90
r12495 r13189 35 35 USE step_diu ! diurnal bulk SST timestepping (called from here if run offline) 36 36 ! 37 USE in_out_manager ! I/O manager 37 38 USE lib_mpp ! distributed memory computing 38 39 USE mppini ! shared/distributed memory setting (mpp_init routine) … … 125 126 END DO 126 127 ! 127 IF( .NOT. Agrif_Root() ) THEN128 CALL Agrif_ParentGrid_To_ChildGrid()129 IF( ln_timing ) CALL timing_finalize130 CALL Agrif_ChildGrid_To_ParentGrid()131 ENDIF132 !133 128 #else 134 129 ! … … 165 160 IF( nstop /= 0 .AND. lwp ) THEN ! error print 166 161 WRITE(ctmp1,*) ' ==>>> nemo_gcm: a total of ', nstop, ' errors have been found' 167 CALL ctl_stop( ctmp1 ) 162 IF( ngrdstop > 0 ) THEN 163 WRITE(ctmp9,'(i2)') ngrdstop 164 WRITE(ctmp2,*) ' E R R O R detected in Agrif grid '//TRIM(ctmp9) 165 WRITE(ctmp3,*) ' Look for "E R R O R" messages in all existing '//TRIM(ctmp9)//'_ocean_output* files' 166 CALL ctl_stop( ' ', ctmp1, ' ', ctmp2, ' ', ctmp3 ) 167 ELSE 168 WRITE(ctmp2,*) ' Look for "E R R O R" messages in all existing ocean_output* files' 169 CALL ctl_stop( ' ', ctmp1, ' ', ctmp2 ) 170 ENDIF 168 171 ENDIF 169 172 ! … … 256 259 ENDIF 257 260 ! open /dev/null file to be able to supress output write easily 261 IF( Agrif_Root() ) THEN 258 262 CALL ctl_opn( numnul, '/dev/null', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, -1, .FALSE. ) 263 #ifdef key_agrif 264 ELSE 265 numnul = Agrif_Parent(numnul) 266 #endif 267 ENDIF 259 268 ! 260 269 ! !--------------------! … … 268 277 ! 269 278 ! finalize the definition of namctl variables 270 IF( sn_cfctl%l_allon ) THEN 271 ! Turn on all options. 272 CALL nemo_set_cfctl( sn_cfctl, .TRUE., .TRUE. ) 273 ! Ensure all processors are active 274 sn_cfctl%procmin = 0 ; sn_cfctl%procmax = 1000000 ; sn_cfctl%procincr = 1 275 ELSEIF( sn_cfctl%l_config ) THEN 276 ! Activate finer control of report outputs 277 ! optionally switch off output from selected areas (note this only 278 ! applies to output which does not involve global communications) 279 IF( ( narea < sn_cfctl%procmin .OR. narea > sn_cfctl%procmax ) .OR. & 280 & ( MOD( narea - sn_cfctl%procmin, sn_cfctl%procincr ) /= 0 ) ) & 281 & CALL nemo_set_cfctl( sn_cfctl, .FALSE., .FALSE. ) 282 ELSE 283 ! turn off all options. 284 CALL nemo_set_cfctl( sn_cfctl, .FALSE., .TRUE. ) 285 ENDIF 279 IF( narea < sn_cfctl%procmin .OR. narea > sn_cfctl%procmax .OR. MOD( narea - sn_cfctl%procmin, sn_cfctl%procincr ) /= 0 ) & 280 & CALL nemo_set_cfctl( sn_cfctl, .FALSE. ) 286 281 ! 287 282 lwp = (narea == 1) .OR. sn_cfctl%l_oceout ! control of all listing output print … … 401 396 WRITE(numout,*) '~~~~~~~~' 402 397 WRITE(numout,*) ' Namelist namctl' 403 WRITE(numout,*) ' sn_cfctl%l_glochk = ', sn_cfctl%l_glochk404 WRITE(numout,*) ' sn_cfctl%l_allon = ', sn_cfctl%l_allon405 WRITE(numout,*) ' finer control over o/p sn_cfctl%l_config = ', sn_cfctl%l_config406 398 WRITE(numout,*) ' sn_cfctl%l_runstat = ', sn_cfctl%l_runstat 407 399 WRITE(numout,*) ' sn_cfctl%l_trcstat = ', sn_cfctl%l_trcstat … … 545 537 END SUBROUTINE nemo_alloc 546 538 547 SUBROUTINE nemo_set_cfctl(sn_cfctl, setto , for_all)539 SUBROUTINE nemo_set_cfctl(sn_cfctl, setto ) 548 540 !!---------------------------------------------------------------------- 549 541 !! *** ROUTINE nemo_set_cfctl *** 550 542 !! 551 543 !! ** Purpose : Set elements of the output control structure to setto. 552 !! for_all should be .false. unless all areas are to be553 !! treated identically.554 544 !! 555 545 !! ** Method : Note this routine can be used to switch on/off some 556 !! types of output for selected areas but any output types 557 !! that involve global communications (e.g. mpp_max, glob_sum) 558 !! should be protected from selective switching by the 559 !! for_all argument 560 !!---------------------------------------------------------------------- 561 LOGICAL :: setto, for_all 562 TYPE(sn_ctl) :: sn_cfctl 563 !!---------------------------------------------------------------------- 564 IF( for_all ) THEN 565 sn_cfctl%l_runstat = setto 566 sn_cfctl%l_trcstat = setto 567 ENDIF 546 !! types of output for selected areas. 547 !!---------------------------------------------------------------------- 548 TYPE(sn_ctl), INTENT(inout) :: sn_cfctl 549 LOGICAL , INTENT(in ) :: setto 550 !!---------------------------------------------------------------------- 551 sn_cfctl%l_runstat = setto 552 sn_cfctl%l_trcstat = setto 568 553 sn_cfctl%l_oceout = setto 569 554 sn_cfctl%l_layout = setto
Note: See TracChangeset
for help on using the changeset viewer.