Changeset 12236 for NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE
- Timestamp:
- 2019-12-13T10:19:48+01:00 (4 years ago)
- Location:
- NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE
- Files:
-
- 42 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/C1D/dyncor_c1d.F90
r11949 r12236 97 97 98 98 ! 99 IF( ln_ctl) CALL prt_ctl( tab3d_1=puu(:,:,:,Krhs), clinfo1=' cor - Ua: ', mask1=umask, &100 & tab3d_2=pvv(:,:,:,Krhs), clinfo2=' Va: ' , mask2=vmask )99 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab3d_1=puu(:,:,:,Krhs), clinfo1=' cor - Ua: ', mask1=umask, & 100 & tab3d_2=pvv(:,:,:,Krhs), clinfo2=' Va: ' , mask2=vmask ) 101 101 ! 102 102 END SUBROUTINE dyn_cor_c1d -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/C1D/dyndmp.F90
r11960 r12236 219 219 ! 220 220 ! ! Control print 221 IF( ln_ctl ) CALL prt_ctl( tab3d_1=puu(:,:,:,Krhs), clinfo1=' dmp - Ua: ', mask1=umask, &222 & tab3d_2=pvv(:,:,:,Krhs), clinfo2= ' Va: ', mask2=vmask, clinfo3='dyn' )221 IF( sn_cfctl%l_prtctl ) CALL prt_ctl( tab3d_1=puu(:,:,:,Krhs), clinfo1=' dmp - Ua: ', mask1=umask, & 222 & tab3d_2=pvv(:,:,:,Krhs), clinfo2= ' Va: ', mask2=vmask, clinfo3='dyn' ) 223 223 ! 224 224 ! -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/DOM/daymod.F90
r10068 r12236 277 277 IF( nsec_week > 7*nsecd ) nsec_week = ndt05 ! New week 278 278 279 IF( ln_ctl) THEN279 IF(sn_cfctl%l_prtctl) THEN 280 280 WRITE(charout,FMT="('kt =', I4,' d/m/y =',I2,I2,I4)") kt, nday, nmonth, nyear 281 281 CALL prt_ctl_info(charout) -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/DYN/dynadv_cen2.F90
r11949 r12236 141 141 ENDIF 142 142 ! ! Control print 143 IF( ln_ctl) CALL prt_ctl( tab3d_1=puu(:,:,:,Krhs), clinfo1=' cen2 adv - Ua: ', mask1=umask, &144 & tab3d_2=pvv(:,:,:,Krhs), clinfo2= ' Va: ', mask2=vmask, clinfo3='dyn' )143 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab3d_1=puu(:,:,:,Krhs), clinfo1=' cen2 adv - Ua: ', mask1=umask, & 144 & tab3d_2=pvv(:,:,:,Krhs), clinfo2= ' Va: ', mask2=vmask, clinfo3='dyn' ) 145 145 ! 146 146 END SUBROUTINE dyn_adv_cen2 -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/DYN/dynadv_ubs.F90
r11949 r12236 234 234 ENDIF 235 235 ! ! Control print 236 IF( ln_ctl) CALL prt_ctl( tab3d_1=puu(:,:,:,Krhs), clinfo1=' ubs2 adv - Ua: ', mask1=umask, &237 & tab3d_2=pvv(:,:,:,Krhs), clinfo2= ' Va: ', mask2=vmask, clinfo3='dyn' )236 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab3d_1=puu(:,:,:,Krhs), clinfo1=' ubs2 adv - Ua: ', mask1=umask, & 237 & tab3d_2=pvv(:,:,:,Krhs), clinfo2= ' Va: ', mask2=vmask, clinfo3='dyn' ) 238 238 ! 239 239 END SUBROUTINE dyn_adv_ubs -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/DYN/dynatf.F90
r12150 r12236 328 328 ENDIF 329 329 ! 330 IF( ln_ctl) CALL prt_ctl( tab3d_1=puu(:,:,:,Kaa), clinfo1=' nxt - puu(:,:,:,Kaa): ', mask1=umask, &331 & tab3d_2=pvv(:,:,:,Kaa), clinfo2=' pvv(:,:,:,Kaa): ' , mask2=vmask )330 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab3d_1=puu(:,:,:,Kaa), clinfo1=' nxt - puu(:,:,:,Kaa): ', mask1=umask, & 331 & tab3d_2=pvv(:,:,:,Kaa), clinfo2=' pvv(:,:,:,Kaa): ' , mask2=vmask ) 332 332 ! 333 333 IF( ln_dynspg_ts ) DEALLOCATE( zue, zve ) -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/DYN/dynhpg.F90
r12150 r12236 124 124 ENDIF 125 125 ! 126 IF( ln_ctl) CALL prt_ctl( tab3d_1=puu(:,:,:,Krhs), clinfo1=' hpg - Ua: ', mask1=umask, &127 & tab3d_2=pvv(:,:,:,Krhs), clinfo2= ' Va: ', mask2=vmask, clinfo3='dyn' )126 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab3d_1=puu(:,:,:,Krhs), clinfo1=' hpg - Ua: ', mask1=umask, & 127 & tab3d_2=pvv(:,:,:,Krhs), clinfo2= ' Va: ', mask2=vmask, clinfo3='dyn' ) 128 128 ! 129 129 IF( ln_timing ) CALL timing_stop('dyn_hpg') -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/DYN/dynkeg.F90
r11949 r12236 149 149 ENDIF 150 150 ! 151 IF( ln_ctl) CALL prt_ctl( tab3d_1=puu(:,:,:,Krhs), clinfo1=' keg - Ua: ', mask1=umask, &152 & tab3d_2=pvv(:,:,:,Krhs), clinfo2= ' Va: ', mask2=vmask, clinfo3='dyn' )151 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab3d_1=puu(:,:,:,Krhs), clinfo1=' keg - Ua: ', mask1=umask, & 152 & tab3d_2=pvv(:,:,:,Krhs), clinfo2= ' Va: ', mask2=vmask, clinfo3='dyn' ) 153 153 ! 154 154 IF( ln_timing ) CALL timing_stop('dyn_keg') -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/DYN/dynldf.F90
r11949 r12236 82 82 ENDIF 83 83 ! ! print sum trends (used for debugging) 84 IF( ln_ctl) CALL prt_ctl( tab3d_1=puu(:,:,:,Krhs), clinfo1=' ldf - Ua: ', mask1=umask, &85 & tab3d_2=pvv(:,:,:,Krhs), clinfo2= ' Va: ', mask2=vmask, clinfo3='dyn' )84 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab3d_1=puu(:,:,:,Krhs), clinfo1=' ldf - Ua: ', mask1=umask, & 85 & tab3d_2=pvv(:,:,:,Krhs), clinfo2= ' Va: ', mask2=vmask, clinfo3='dyn' ) 86 86 ! 87 87 IF( ln_timing ) CALL timing_stop('dyn_ldf') -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/DYN/dynldf_iso.F90
r11949 r12236 288 288 289 289 ! print sum trends (used for debugging) 290 IF( ln_ctl) CALL prt_ctl( tab3d_1=puu(:,:,:,Krhs), clinfo1=' ldfh - Ua: ', mask1=umask, &291 & tab3d_2=pvv(:,:,:,Krhs), clinfo2= ' Va: ', mask2=vmask, clinfo3='dyn' )290 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab3d_1=puu(:,:,:,Krhs), clinfo1=' ldfh - Ua: ', mask1=umask, & 291 & tab3d_2=pvv(:,:,:,Krhs), clinfo2= ' Va: ', mask2=vmask, clinfo3='dyn' ) 292 292 293 293 -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/DYN/dynspg.F90
r12205 r12236 178 178 ENDIF 179 179 ! ! print mean trends (used for debugging) 180 IF( ln_ctl) CALL prt_ctl( tab3d_1=puu(:,:,:,Krhs), clinfo1=' spg - Ua: ', mask1=umask, &181 & tab3d_2=pvv(:,:,:,Krhs), clinfo2= ' Va: ', mask2=vmask, clinfo3='dyn' )180 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab3d_1=puu(:,:,:,Krhs), clinfo1=' spg - Ua: ', mask1=umask, & 181 & tab3d_2=pvv(:,:,:,Krhs), clinfo2= ' Va: ', mask2=vmask, clinfo3='dyn' ) 182 182 ! 183 183 IF( ln_timing ) CALL timing_stop('dyn_spg') -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/DYN/dynvor.F90
r11960 r12236 181 181 ! 182 182 ! ! print sum trends (used for debugging) 183 IF( ln_ctl) CALL prt_ctl( tab3d_1=puu(:,:,:,Krhs), clinfo1=' vor - Ua: ', mask1=umask, &184 & tab3d_2=pvv(:,:,:,Krhs), clinfo2= ' Va: ', mask2=vmask, clinfo3='dyn' )183 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab3d_1=puu(:,:,:,Krhs), clinfo1=' vor - Ua: ', mask1=umask, & 184 & tab3d_2=pvv(:,:,:,Krhs), clinfo2= ' Va: ', mask2=vmask, clinfo3='dyn' ) 185 185 ! 186 186 IF( ln_timing ) CALL timing_stop('dyn_vor') -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/DYN/dynzad.F90
r11949 r12236 116 116 ENDIF 117 117 ! ! Control print 118 IF( ln_ctl) CALL prt_ctl( tab3d_1=puu(:,:,:,Krhs), clinfo1=' zad - Ua: ', mask1=umask, &119 & tab3d_2=pvv(:,:,:,Krhs), clinfo2= ' Va: ', mask2=vmask, clinfo3='dyn' )118 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab3d_1=puu(:,:,:,Krhs), clinfo1=' zad - Ua: ', mask1=umask, & 119 & tab3d_2=pvv(:,:,:,Krhs), clinfo2= ' Va: ', mask2=vmask, clinfo3='dyn' ) 120 120 ! 121 121 IF( ln_timing ) CALL timing_stop('dyn_zad') -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/DYN/dynzdf.F90
r12150 r12236 494 494 ENDIF 495 495 ! ! print mean trends (used for debugging) 496 IF( ln_ctl) CALL prt_ctl( tab3d_1=puu(:,:,:,Kaa), clinfo1=' zdf - Ua: ', mask1=umask, &497 & tab3d_2=pvv(:,:,:,Kaa), clinfo2= ' Va: ', mask2=vmask, clinfo3='dyn' )496 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab3d_1=puu(:,:,:,Kaa), clinfo1=' zdf - Ua: ', mask1=umask, & 497 & tab3d_2=pvv(:,:,:,Kaa), clinfo2= ' Va: ', mask2=vmask, clinfo3='dyn' ) 498 498 ! 499 499 IF( ln_timing ) CALL timing_stop('dyn_zdf') -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/DYN/sshwzv.F90
r12150 r12236 125 125 ! !------------------------------! 126 126 ! 127 IF( ln_ctl) CALL prt_ctl( tab2d_1=pssh(:,:,Kaa), clinfo1=' pssh(:,:,Kaa) - : ', mask1=tmask )127 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab2d_1=pssh(:,:,Kaa), clinfo1=' pssh(:,:,Kaa) - : ', mask1=tmask ) 128 128 ! 129 129 IF( ln_timing ) CALL timing_stop('ssh_nxt') … … 267 267 ENDIF 268 268 ! 269 IF( ln_ctl) CALL prt_ctl( tab2d_1=pssh(:,:,Kmm), clinfo1=' pssh(:,:,Kmm) - : ', mask1=tmask )269 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab2d_1=pssh(:,:,Kmm), clinfo1=' pssh(:,:,Kmm) - : ', mask1=tmask ) 270 270 ! 271 271 IF( ln_timing ) CALL timing_stop('ssh_atf') -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/IOM/in_out_manager.F90
r12182 r12236 99 99 !! output monitoring 100 100 !!---------------------------------------------------------------------- 101 LOGICAL :: ln_ctl !: run control for debugging 102 TYPE :: sn_ctl !: optional use structure for finer control over output selection 101 TYPE :: sn_ctl !: structure for control over output selection 102 LOGICAL :: l_glochk = .FALSE. !: range sanity checks are local (F) or global (T) 103 ! Use global setting for debugging only; 104 ! local breaches will still be reported 105 ! and stop the code in most cases. 106 LOGICAL :: l_allon = .FALSE. !: overall control; activate all following output options 103 107 LOGICAL :: l_config = .FALSE. !: activate/deactivate finer control 104 ! Note if l_config is True then ln_ctl is ignored. 105 ! Otherwise setting ln_ctl True is equivalent to setting 106 ! all the following logicals in this structure True 108 ! Note if l_config is True then sn_cfctl%l_allon is ignored. 109 ! Otherwise setting sn_cfctl%l_allon T/F is equivalent to 110 ! setting all the following logicals in this structure T/F 111 ! and disabling subsetting of processors 107 112 LOGICAL :: l_runstat = .FALSE. !: Produce/do not produce run.stat file (T/F) 108 113 LOGICAL :: l_trcstat = .FALSE. !: Produce/do not produce tracer.stat file (T/F) 109 114 LOGICAL :: l_oceout = .FALSE. !: Produce all ocean.outputs (T) or just one (F) 110 115 LOGICAL :: l_layout = .FALSE. !: Produce all layout.dat files (T) or just one (F) 111 LOGICAL :: l_mppout = .FALSE. !: Produce/do not produce mpp.output_XXXX files (T/F) 112 LOGICAL :: l_mpptop = .FALSE. !: Produce/do not produce mpp.top.output_XXXX files (T/F) 116 LOGICAL :: l_prtctl = .FALSE. !: Produce/do not produce mpp.output_XXXX files (T/F) 117 LOGICAL :: l_prttrc = .FALSE. !: Produce/do not produce mpp.top.output_XXXX files (T/F) 118 LOGICAL :: l_oasout = .FALSE. !: Produce/do not write oasis setup info to ocean.output (T/F) 113 119 ! Optional subsetting of processor report files 114 120 ! Default settings of 0/1000000/1 should ensure all areas report. … … 169 175 CHARACTER(lc) :: ctmp10 !: temporary character 10 170 176 LOGICAL :: lwm = .FALSE. !: boolean : true on the 1st processor only (always) 171 LOGICAL :: lwp = .FALSE. !: boolean : true on the 1st processor only .OR. ln_ctl177 LOGICAL :: lwp = .FALSE. !: boolean : true on the 1st processor only .OR. sn_cfctl%l_oceout=T 172 178 LOGICAL :: lsp_area = .TRUE. !: to make a control print over a specific area 173 179 CHARACTER(lc) :: cxios_context !: context name used in xios -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/IOM/prtctl.F90
r10068 r12236 50 50 !! debugging a new parametrization in mono or mpp. 51 51 !! 52 !! ** Method : 2 possibilities exist when setting the ln_ctl parameter to52 !! ** Method : 2 possibilities exist when setting the sn_cfctl%prtctl parameter to 53 53 !! .true. in the ocean namelist: 54 54 !! - to debug a MPI run .vs. a mono-processor one; … … 64 64 !! name must be explicitly typed if used. For instance if the 3D 65 65 !! array tn(:,:,:) must be passed through the prt_ctl subroutine, 66 !! it must look slike: CALL prt_ctl(tab3d_1=tn).66 !! it must look like: CALL prt_ctl(tab3d_1=tn). 67 67 !! 68 68 !! tab2d_1 : first 2D array -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/LBC/mppini.F90
r11960 r12236 171 171 !!---------------------------------------------------------------------- 172 172 ! 173 llwrtlay = lw p .OR. ln_ctl.OR. sn_cfctl%l_layout173 llwrtlay = lwm .OR. sn_cfctl%l_layout 174 174 ! 175 175 ! 0. read namelists parameters -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/LDF/ldfslp.F90
r12150 r12236 367 367 CALL lbc_lnk_multi( 'ldfslp', uslp , 'U', -1. , vslp , 'V', -1. , wslpi, 'W', -1., wslpj, 'W', -1. ) 368 368 369 IF( ln_ctl) THEN369 IF(sn_cfctl%l_prtctl) THEN 370 370 CALL prt_ctl(tab3d_1=uslp , clinfo1=' slp - u : ', tab3d_2=vslp, clinfo2=' v : ', kdim=jpk) 371 371 CALL prt_ctl(tab3d_1=wslpi, clinfo1=' slp - wi: ', tab3d_2=wslpj, clinfo2=' wj: ', kdim=jpk) -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/SBC/cpl_oasis3.F90
r12182 r12236 203 203 paral(5) = jpiglo ! global extent in x 204 204 205 IF( ln_ctl) THEN205 IF( sn_cfctl%l_oasout ) THEN 206 206 WRITE(numout,*) ' multiexchg: paral (1:5)', paral 207 207 WRITE(numout,*) ' multiexchg: jpi, jpj =', jpi, jpj … … 243 243 ENDIF 244 244 #endif 245 IF( ln_ctl) WRITE(numout,*) "Define", ji, jc, jm, " "//TRIM(zclname), " for ", OASIS_Out245 IF( sn_cfctl%l_oasout ) WRITE(numout,*) "Define", ji, jc, jm, " "//TRIM(zclname), " for ", OASIS_Out 246 246 CALL oasis_def_var (ssnd(ji)%nid(jc,jm), zclname, id_part , (/ 2, 1 /), & 247 247 & OASIS_Out , ishape , OASIS_REAL, nerror ) … … 250 250 CALL oasis_abort ( ssnd(ji)%nid(jc,jm), 'cpl_define', 'Failure in oasis_def_var' ) 251 251 ENDIF 252 IF( ln_ctl.AND. ssnd(ji)%nid(jc,jm) /= -1 ) WRITE(numout,*) "variable defined in the namcouple"253 IF( ln_ctl.AND. ssnd(ji)%nid(jc,jm) == -1 ) WRITE(numout,*) "variable NOT defined in the namcouple"252 IF( sn_cfctl%l_oasout .AND. ssnd(ji)%nid(jc,jm) /= -1 ) WRITE(numout,*) "variable defined in the namcouple" 253 IF( sn_cfctl%l_oasout .AND. ssnd(ji)%nid(jc,jm) == -1 ) WRITE(numout,*) "variable NOT defined in the namcouple" 254 254 END DO 255 255 END DO … … 288 288 ENDIF 289 289 #endif 290 IF( ln_ctl) WRITE(numout,*) "Define", ji, jc, jm, " "//TRIM(zclname), " for ", OASIS_In290 IF( sn_cfctl%l_oasout ) WRITE(numout,*) "Define", ji, jc, jm, " "//TRIM(zclname), " for ", OASIS_In 291 291 CALL oasis_def_var (srcv(ji)%nid(jc,jm), zclname, id_part , (/ 2, 1 /), & 292 292 & OASIS_In , ishape , OASIS_REAL, nerror ) … … 295 295 CALL oasis_abort ( srcv(ji)%nid(jc,jm), 'cpl_define', 'Failure in oasis_def_var' ) 296 296 ENDIF 297 IF( ln_ctl.AND. srcv(ji)%nid(jc,jm) /= -1 ) WRITE(numout,*) "variable defined in the namcouple"298 IF( ln_ctl.AND. srcv(ji)%nid(jc,jm) == -1 ) WRITE(numout,*) "variable NOT defined in the namcouple"297 IF( sn_cfctl%l_oasout .AND. srcv(ji)%nid(jc,jm) /= -1 ) WRITE(numout,*) "variable defined in the namcouple" 298 IF( sn_cfctl%l_oasout .AND. srcv(ji)%nid(jc,jm) == -1 ) WRITE(numout,*) "variable NOT defined in the namcouple" 299 299 300 300 END DO … … 349 349 CALL oasis_put ( ssnd(kid)%nid(jc,jm), kstep, pdata(nldi:nlei, nldj:nlej,jc), kinfo ) 350 350 351 IF ( ln_ctl) THEN352 IF ( kinfo == OASIS_Sent .OR. kinfo == OASIS_ToRest .OR. &351 IF ( sn_cfctl%l_oasout ) THEN 352 IF ( kinfo == OASIS_Sent .OR. kinfo == OASIS_ToRest .OR. & 353 353 & kinfo == OASIS_SentOut .OR. kinfo == OASIS_ToRestOut ) THEN 354 354 WRITE(numout,*) '****************' … … 420 420 & kinfo == OASIS_RecvOut .OR. kinfo == OASIS_FromRestOut 421 421 422 IF ( ln_ctl) WRITE(numout,*) "llaction, kinfo, kstep, ivarid: " , llaction, kinfo, kstep, srcv(kid)%nid(jc,jm)422 IF ( sn_cfctl%l_oasout ) WRITE(numout,*) "llaction, kinfo, kstep, ivarid: " , llaction, kinfo, kstep, srcv(kid)%nid(jc,jm) 423 423 424 424 IF( llaction ) THEN … … 432 432 ENDIF 433 433 434 IF ( ln_ctl) THEN434 IF ( sn_cfctl%l_oasout ) THEN 435 435 WRITE(numout,*) '****************' 436 436 WRITE(numout,*) 'oasis_get: Incoming ', srcv(kid)%clname -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/SBC/sbcblk.F90
r12200 r12236 178 178 ! 179 179 ! !** read bulk namelist 180 !REWIND( numnam_ref ) !* Namelist namsbc_blk in reference namelist : bulk parameters181 180 READ ( numnam_ref, namsbc_blk, IOSTAT = ios, ERR = 901) 182 181 901 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_blk in reference namelist' ) 183 182 ! 184 !REWIND( numnam_cfg ) !* Namelist namsbc_blk in configuration namelist : bulk parameters185 183 READ ( numnam_cfg, namsbc_blk, IOSTAT = ios, ERR = 902 ) 186 184 902 IF( ios > 0 ) CALL ctl_nam ( ios , 'namsbc_blk in configuration namelist' ) … … 703 701 CALL lbc_lnk_multi( 'sbcblk', utau, 'U', -1., vtau, 'V', -1. ) 704 702 705 IF( ln_ctl) THEN703 IF(sn_cfctl%l_prtctl) THEN 706 704 CALL prt_ctl( tab2d_1=wndm , clinfo1=' blk_oce_1: wndm : ') 707 705 CALL prt_ctl( tab2d_1=utau , clinfo1=' blk_oce_1: utau : ', mask1=umask, & … … 718 716 ENDIF 719 717 720 IF( ln_ctl) THEN718 IF(sn_cfctl%l_prtctl) THEN 721 719 CALL prt_ctl( tab2d_1=pevp , clinfo1=' blk_oce_1: pevp : ' ) 722 720 CALL prt_ctl( tab2d_1=psen , clinfo1=' blk_oce_1: psen : ' ) … … 762 760 ! local scalars ( place there for vector optimisation purposes) 763 761 762 764 763 ztskk(:,:) = ptsk(:,:) + rt0 ! => ptsk in Kelvin rather than Celsius 765 764 … … 782 781 ENDDO 783 782 784 IF( ln_ctl) THEN783 IF(sn_cfctl%l_prtctl) THEN 785 784 CALL prt_ctl( tab2d_1=zqla , clinfo1=' blk_oce_2: zqla : ' ) 786 785 CALL prt_ctl( tab2d_1=zqlw , clinfo1=' blk_oce_2: zqlw : ', tab2d_2=qsr, clinfo2=' qsr : ' ) … … 826 825 ENDIF 827 826 ! 828 IF( ln_ctl) THEN827 IF(sn_cfctl%l_prtctl) THEN 829 828 CALL prt_ctl(tab2d_1=zqlw , clinfo1=' blk_oce_2: zqlw : ') 830 829 CALL prt_ctl(tab2d_1=zqla , clinfo1=' blk_oce_2: zqla : ', tab2d_2=qsr , clinfo2=' qsr : ') … … 927 926 CALL lbc_lnk_multi( 'sbcblk', putaui, 'U', -1., pvtaui, 'V', -1. ) 928 927 ! 929 IF( ln_ctl)CALL prt_ctl( tab2d_1=putaui , clinfo1=' blk_ice: putaui : ' &930 & , tab2d_2=pvtaui , clinfo2=' pvtaui : ' )928 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab2d_1=putaui , clinfo1=' blk_ice: putaui : ' & 929 & , tab2d_2=pvtaui , clinfo2=' pvtaui : ' ) 931 930 ELSE 932 931 zztmp1 = 11637800.0_wp … … 943 942 ENDIF 944 943 ! 945 IF( ln_ctl) CALL prt_ctl(tab2d_1=wndm_ice , clinfo1=' blk_ice: wndm_ice : ')944 IF(sn_cfctl%l_prtctl) CALL prt_ctl(tab2d_1=wndm_ice , clinfo1=' blk_ice: wndm_ice : ') 946 945 ! 947 946 END SUBROUTINE blk_ice_1 … … 1129 1128 ENDIF 1130 1129 ! 1131 IF( ln_ctl) THEN1130 IF(sn_cfctl%l_prtctl) THEN 1132 1131 CALL prt_ctl(tab3d_1=qla_ice , clinfo1=' blk_ice: qla_ice : ', tab3d_2=z_qsb , clinfo2=' z_qsb : ', kdim=jpl) 1133 1132 CALL prt_ctl(tab3d_1=z_qlw , clinfo1=' blk_ice: z_qlw : ', tab3d_2=dqla_ice, clinfo2=' dqla_ice : ', kdim=jpl) -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/SBC/sbcmod.F90
r12193 r12236 574 574 CALL iom_put( "vtau", vtau ) ! j-wind stress 575 575 ! 576 IF( ln_ctl) THEN! print mean trends (used for debugging)576 IF(sn_cfctl%l_prtctl) THEN ! print mean trends (used for debugging) 577 577 CALL prt_ctl(tab2d_1=fr_i , clinfo1=' fr_i - : ', mask1=tmask ) 578 578 CALL prt_ctl(tab2d_1=(emp-rnf) , clinfo1=' emp-rnf - : ', mask1=tmask ) -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/TRA/eosbn2.F90
r12150 r12236 296 296 END SELECT 297 297 ! 298 IF( ln_ctl) CALL prt_ctl( tab3d_1=prd, clinfo1=' eos-insitu : ', kdim=jpk )298 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab3d_1=prd, clinfo1=' eos-insitu : ', kdim=jpk ) 299 299 ! 300 300 IF( ln_timing ) CALL timing_stop('eos-insitu') … … 463 463 END SELECT 464 464 ! 465 IF( ln_ctl) CALL prt_ctl( tab3d_1=prd, clinfo1=' eos-pot: ', tab3d_2=prhop, clinfo2=' pot : ', kdim=jpk )465 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab3d_1=prd, clinfo1=' eos-pot: ', tab3d_2=prhop, clinfo2=' pot : ', kdim=jpk ) 466 466 ! 467 467 IF( ln_timing ) CALL timing_stop('eos-pot') … … 558 558 END SELECT 559 559 ! 560 IF( ln_ctl) CALL prt_ctl( tab2d_1=prd, clinfo1=' eos2d: ' )560 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab2d_1=prd, clinfo1=' eos2d: ' ) 561 561 ! 562 562 IF( ln_timing ) CALL timing_stop('eos2d') … … 671 671 END SELECT 672 672 ! 673 IF( ln_ctl) CALL prt_ctl( tab3d_1=pab(:,:,:,jp_tem), clinfo1=' rab_3d_t: ', &674 & tab3d_2=pab(:,:,:,jp_sal), clinfo2=' rab_3d_s : ', kdim=jpk )673 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab3d_1=pab(:,:,:,jp_tem), clinfo1=' rab_3d_t: ', & 674 & tab3d_2=pab(:,:,:,jp_sal), clinfo2=' rab_3d_s : ', kdim=jpk ) 675 675 ! 676 676 IF( ln_timing ) CALL timing_stop('rab_3d') … … 786 786 END SELECT 787 787 ! 788 IF( ln_ctl) CALL prt_ctl( tab2d_1=pab(:,:,jp_tem), clinfo1=' rab_2d_t: ', &789 & tab2d_2=pab(:,:,jp_sal), clinfo2=' rab_2d_s : ' )788 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab2d_1=pab(:,:,jp_tem), clinfo1=' rab_2d_t: ', & 789 & tab2d_2=pab(:,:,jp_sal), clinfo2=' rab_2d_s : ' ) 790 790 ! 791 791 IF( ln_timing ) CALL timing_stop('rab_2d') … … 932 932 END DO 933 933 ! 934 IF( ln_ctl) CALL prt_ctl( tab3d_1=pn2, clinfo1=' bn2 : ', kdim=jpk )934 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab3d_1=pn2, clinfo1=' bn2 : ', kdim=jpk ) 935 935 ! 936 936 IF( ln_timing ) CALL timing_stop('bn2') -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/TRA/traadv.F90
r12193 r12236 171 171 ENDIF 172 172 ! ! print mean trends (used for debugging) 173 IF( ln_ctl) CALL prt_ctl( tab3d_1=pts(:,:,:,jp_tem,Krhs), clinfo1=' adv - Ta: ', mask1=tmask, &174 & tab3d_2=pts(:,:,:,jp_sal,Krhs), clinfo2= ' Sa: ', mask2=tmask, clinfo3='tra' )173 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab3d_1=pts(:,:,:,jp_tem,Krhs), clinfo1=' adv - Ta: ', mask1=tmask, & 174 & tab3d_2=pts(:,:,:,jp_sal,Krhs), clinfo2= ' Sa: ', mask2=tmask, clinfo3='tra' ) 175 175 ! 176 176 IF( ln_timing ) CALL timing_stop( 'tra_adv' ) -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/TRA/traatf.F90
r12156 r12236 178 178 ! 179 179 ! ! control print 180 IF( ln_ctl) CALL prt_ctl( tab3d_1=pts(:,:,:,jp_tem,Kmm), clinfo1=' nxt - Tn: ', mask1=tmask, &181 & tab3d_2=pts(:,:,:,jp_sal,Kmm), clinfo2= ' Sn: ', mask2=tmask )180 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab3d_1=pts(:,:,:,jp_tem,Kmm), clinfo1=' nxt - Tn: ', mask1=tmask, & 181 & tab3d_2=pts(:,:,:,jp_sal,Kmm), clinfo2= ' Sn: ', mask2=tmask ) 182 182 ! 183 183 IF( ln_timing ) CALL timing_stop('tra_atf') -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/TRA/trabbc.F90
r12193 r12236 103 103 ! 104 104 CALL iom_put ( "hfgeou" , rau0_rcp * qgh_trd0(:,:) ) 105 IF( ln_ctl) CALL prt_ctl( tab3d_1=pts(:,:,:,jp_tem,Krhs), clinfo1=' bbc - Ta: ', mask1=tmask, clinfo3='tra-ta' )105 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab3d_1=pts(:,:,:,jp_tem,Krhs), clinfo1=' bbc - Ta: ', mask1=tmask, clinfo3='tra-ta' ) 106 106 ! 107 107 IF( ln_timing ) CALL timing_stop('tra_bbc') -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/TRA/trabbl.F90
r11960 r12236 121 121 ! 122 122 CALL tra_bbl_dif( pts(:,:,:,:,Kbb), pts(:,:,:,:,Krhs), jpts, Kmm ) 123 IF( ln_ctl ) &123 IF( sn_cfctl%l_prtctl ) & 124 124 CALL prt_ctl( tab3d_1=pts(:,:,:,jp_tem,Krhs), clinfo1=' bbl_ldf - Ta: ', mask1=tmask, & 125 125 & tab3d_2=pts(:,:,:,jp_sal,Krhs), clinfo2= ' Sa: ', mask2=tmask, clinfo3='tra' ) … … 134 134 ! 135 135 CALL tra_bbl_adv( pts(:,:,:,:,Kbb), pts(:,:,:,:,Krhs), jpts, Kmm ) 136 IF( ln_ctl) &136 IF(sn_cfctl%l_prtctl) & 137 137 CALL prt_ctl( tab3d_1=pts(:,:,:,jp_tem,Krhs), clinfo1=' bbl_adv - Ta: ', mask1=tmask, & 138 138 & tab3d_2=pts(:,:,:,jp_sal,Krhs), clinfo2= ' Sa: ', mask2=tmask, clinfo3='tra' ) -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/TRA/tradmp.F90
r11960 r12236 159 159 ENDIF 160 160 ! ! Control print 161 IF( ln_ctl) CALL prt_ctl( tab3d_1=pts(:,:,:,jp_tem,Krhs), clinfo1=' dmp - Ta: ', mask1=tmask, &162 & tab3d_2=pts(:,:,:,jp_sal,Krhs), clinfo2= ' Sa: ', mask2=tmask, clinfo3='tra' )161 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab3d_1=pts(:,:,:,jp_tem,Krhs), clinfo1=' dmp - Ta: ', mask1=tmask, & 162 & tab3d_2=pts(:,:,:,jp_sal,Krhs), clinfo2= ' Sa: ', mask2=tmask, clinfo3='tra' ) 163 163 ! 164 164 IF( ln_timing ) CALL timing_stop('tra_dmp') -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/TRA/traldf.F90
r11949 r12236 87 87 ENDIF 88 88 ! !* print mean trends (used for debugging) 89 IF( ln_ctl) CALL prt_ctl( tab3d_1=pts(:,:,:,jp_tem,Krhs), clinfo1=' ldf - Ta: ', mask1=tmask, &90 & tab3d_2=pts(:,:,:,jp_sal,Krhs), clinfo2= ' Sa: ', mask2=tmask, clinfo3='tra' )89 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab3d_1=pts(:,:,:,jp_tem,Krhs), clinfo1=' ldf - Ta: ', mask1=tmask, & 90 & tab3d_2=pts(:,:,:,jp_sal,Krhs), clinfo2= ' Sa: ', mask2=tmask, clinfo3='tra' ) 91 91 ! 92 92 IF( ln_timing ) CALL timing_stop('tra_ldf') -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/TRA/traqsr.F90
r11960 r12236 302 302 ENDIF 303 303 ! ! print mean trends (used for debugging) 304 IF( ln_ctl) CALL prt_ctl( tab3d_1=pts(:,:,:,jp_tem,Krhs), clinfo1=' qsr - Ta: ', mask1=tmask, clinfo3='tra-ta' )304 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab3d_1=pts(:,:,:,jp_tem,Krhs), clinfo1=' qsr - Ta: ', mask1=tmask, clinfo3='tra-ta' ) 305 305 ! 306 306 IF( ln_timing ) CALL timing_stop('tra_qsr') -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/TRA/trasbc.F90
r12150 r12236 217 217 ENDIF 218 218 ! 219 IF( ln_ctl) CALL prt_ctl( tab3d_1=pts(:,:,:,jp_tem,Krhs), clinfo1=' sbc - Ta: ', mask1=tmask, &220 & tab3d_2=pts(:,:,:,jp_sal,Krhs), clinfo2= ' Sa: ', mask2=tmask, clinfo3='tra' )219 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab3d_1=pts(:,:,:,jp_tem,Krhs), clinfo1=' sbc - Ta: ', mask1=tmask, & 220 & tab3d_2=pts(:,:,:,jp_sal,Krhs), clinfo2= ' Sa: ', mask2=tmask, clinfo3='tra' ) 221 221 ! 222 222 IF( ln_timing ) CALL timing_stop('tra_sbc') -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/TRA/trazdf.F90
r11949 r12236 101 101 ENDIF 102 102 ! ! print mean trends (used for debugging) 103 IF( ln_ctl) CALL prt_ctl( tab3d_1=pts(:,:,:,jp_tem,Kaa), clinfo1=' zdf - Ta: ', mask1=tmask, &104 & tab3d_2=pts(:,:,:,jp_sal,Kaa), clinfo2= ' Sa: ', mask2=tmask, clinfo3='tra' )103 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab3d_1=pts(:,:,:,jp_tem,Kaa), clinfo1=' zdf - Ta: ', mask1=tmask, & 104 & tab3d_2=pts(:,:,:,jp_sal,Kaa), clinfo2= ' Sa: ', mask2=tmask, clinfo3='tra' ) 105 105 ! 106 106 IF( ln_timing ) CALL timing_stop('tra_zdf') -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/TRD/trdmxl.F90
r11960 r12236 372 372 hmxlbn(:,:) = hmxl(:,:) 373 373 374 IF( ln_ctl ) THEN374 IF( sn_cfctl%l_prtctl ) THEN 375 375 WRITE(numout,*) ' we reach kt == nit000 + 1 = ', nit000+1 376 376 CALL prt_ctl(tab2d_1=tmlbb , clinfo1=' tmlbb - : ', mask1=tmask) … … 381 381 END IF 382 382 383 IF( ( ln_rstart ) .AND. ( kt == nit000 ) .AND. ( ln_ctl )) THEN383 IF( ( ln_rstart ) .AND. ( kt == nit000 ) .AND. sn_cfctl%l_prtctl ) THEN 384 384 IF( ln_trdmxl_instant ) THEN 385 385 WRITE(numout,*) ' restart from kt == nit000 = ', nit000 … … 549 549 hmxlbn (:,:) = hmxl (:,:) 550 550 551 IF( ln_ctl ) THEN551 IF( sn_cfctl%l_prtctl ) THEN 552 552 IF( ln_trdmxl_instant ) THEN 553 553 CALL prt_ctl(tab2d_1=tmlbb , clinfo1=' tmlbb - : ', mask1=tmask) -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/ZDF/zdfddm.F90
r11949 r12236 164 164 ! ! =============== 165 165 ! 166 IF( ln_ctl) THEN166 IF(sn_cfctl%l_prtctl) THEN 167 167 CALL prt_ctl(tab3d_1=avt , clinfo1=' ddm - t: ', tab3d_2=avs , clinfo2=' s: ', kdim=jpk) 168 168 ENDIF -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/ZDF/zdfdrg.F90
r11960 r12236 140 140 ENDIF 141 141 ! 142 IF( ln_ctl) CALL prt_ctl( tab2d_1=pCdU, clinfo1=' Cd*U ')142 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab2d_1=pCdU, clinfo1=' Cd*U ') 143 143 ! 144 144 END SUBROUTINE zdf_drg … … 215 215 ENDIF 216 216 ! ! print mean trends (used for debugging) 217 IF( ln_ctl) CALL prt_ctl( tab3d_1=pua, clinfo1=' bfr - Ua: ', mask1=umask, &218 & tab3d_2=pva, clinfo2= ' Va: ', mask2=vmask, clinfo3='dyn' )217 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab3d_1=pua, clinfo1=' bfr - Ua: ', mask1=umask, & 218 & tab3d_2=pva, clinfo2= ' Va: ', mask2=vmask, clinfo3='dyn' ) 219 219 ! 220 220 END SUBROUTINE zdf_drg_exp -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/ZDF/zdfgls.F90
r11960 r12236 825 825 p_avt(:,:,1) = 0._wp 826 826 ! 827 IF( ln_ctl) THEN827 IF(sn_cfctl%l_prtctl) THEN 828 828 CALL prt_ctl( tab3d_1=en , clinfo1=' gls - e: ', tab3d_2=p_avt, clinfo2=' t: ', kdim=jpk) 829 829 CALL prt_ctl( tab3d_1=p_avm, clinfo1=' gls - m: ', kdim=jpk ) -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/ZDF/zdfiwm.F90
r12182 r12236 384 384 CALL iom_put( "emix_iwm", zemx_iwm ) 385 385 386 IF( ln_ctl) CALL prt_ctl(tab3d_1=zav_wave , clinfo1=' iwm - av_wave: ', tab3d_2=avt, clinfo2=' avt: ', kdim=jpk)386 IF(sn_cfctl%l_prtctl) CALL prt_ctl(tab3d_1=zav_wave , clinfo1=' iwm - av_wave: ', tab3d_2=avt, clinfo2=' avt: ', kdim=jpk) 387 387 ! 388 388 END SUBROUTINE zdf_iwm -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/ZDF/zdfmxl.F90
r12150 r12236 139 139 ENDIF 140 140 ! 141 IF( ln_ctl) CALL prt_ctl( tab2d_1=REAL(nmln,wp), clinfo1=' nmln : ', tab2d_2=hmlp, clinfo2=' hmlp : ' )141 IF(sn_cfctl%l_prtctl) CALL prt_ctl( tab2d_1=REAL(nmln,wp), clinfo1=' nmln : ', tab2d_2=hmlp, clinfo2=' hmlp : ' ) 142 142 ! 143 143 END SUBROUTINE zdf_mxl -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/ZDF/zdfosm.F90
r11960 r12236 1664 1664 ENDIF 1665 1665 1666 IF( ln_ctl) THEN1666 IF(sn_cfctl%l_prtctl) THEN 1667 1667 CALL prt_ctl( tab3d_1=pts(:,:,:,jp_tem,Krhs), clinfo1=' osm - Ta: ', mask1=tmask, & 1668 1668 & tab3d_2=pts(:,:,:,jp_sal,Krhs), clinfo2= ' Sa: ', mask2=tmask, clinfo3='tra' ) -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/ZDF/zdftke.F90
r11960 r12236 622 622 ENDIF 623 623 ! 624 IF( ln_ctl) THEN624 IF(sn_cfctl%l_prtctl) THEN 625 625 CALL prt_ctl( tab3d_1=en , clinfo1=' tke - e: ', tab3d_2=p_avt, clinfo2=' t: ', kdim=jpk) 626 626 CALL prt_ctl( tab3d_1=p_avm, clinfo1=' tke - m: ', kdim=jpk ) -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/nemogcm.F90
r12205 r12236 267 267 INTEGER :: ios, ilocal_comm ! local integers 268 268 !! 269 NAMELIST/namctl/ ln_ctl , sn_cfctl, nn_print, nn_ictls, nn_ictle,&269 NAMELIST/namctl/ sn_cfctl, nn_print, nn_ictls, nn_ictle, & 270 270 & nn_isplt , nn_jsplt, nn_jctls, nn_jctle, & 271 271 & ln_timing, ln_diacfl … … 318 318 ! 319 319 ! !--------------------! 320 ! ! Open listing units ! -> need ln_ctl from namctl to define lwp320 ! ! Open listing units ! -> need sn_cfctl from namctl to define lwp 321 321 ! !--------------------! 322 322 ! … … 326 326 902 IF( ios > 0 ) CALL ctl_nam ( ios , 'namctl in configuration namelist' ) 327 327 ! 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 329 347 ! 330 348 IF(lwp) THEN ! open listing units … … 358 376 ENDIF 359 377 ! 360 ! finalize the definition of namctl variables361 IF( sn_cfctl%l_config ) THEN362 ! Activate finer control of report outputs363 ! optionally switch off output from selected areas (note this only364 ! 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 ELSE369 ! Use ln_ctl to turn on or off all options.370 CALL nemo_set_cfctl( sn_cfctl, ln_ctl, .TRUE. )371 ENDIF372 !373 378 IF(lwm) WRITE( numond, namctl ) 374 379 ! … … 417 422 CALL dom_init( Nbb, Nnn, Naa, "OPA") ! Domain 418 423 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 420 426 421 CALL diurnal_sst_bulk_init! diurnal sst427 CALL diurnal_sst_bulk_init ! diurnal sst 422 428 IF( ln_diurnal ) CALL diurnal_sst_coolskin_init ! cool skin 423 429 ! 424 IF( ln_diurnal_only ) THEN ! diurnal only: a subset of the initialisation routines425 CALL istate_init( Nbb, Nnn, Naa ) 426 CALL sbc_init( Nbb, Nnn, Naa ) 427 CALL tra_qsr_init 428 IF( ln_diaobs ) THEN 429 CALL dia_obs_init( Nnn ) 430 CALL dia_obs( nit000 - 1, Nnn ) 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 431 437 ENDIF 432 438 IF( lk_asminc ) CALL asm_inc_init( Nbb, Nnn, Nrhs ) ! Assimilation increments … … 521 527 WRITE(numout,*) '~~~~~~~~' 522 528 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 524 531 WRITE(numout,*) ' finer control over o/p sn_cfctl%l_config = ', sn_cfctl%l_config 525 532 WRITE(numout,*) ' sn_cfctl%l_runstat = ', sn_cfctl%l_runstat … … 527 534 WRITE(numout,*) ' sn_cfctl%l_oceout = ', sn_cfctl%l_oceout 528 535 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 531 539 WRITE(numout,*) ' sn_cfctl%procmin = ', sn_cfctl%procmin 532 540 WRITE(numout,*) ' sn_cfctl%procmax = ', sn_cfctl%procmax … … 566 574 ! ! Parameter control 567 575 ! 568 IF( ln_ctl ) THEN! sub-domain area indices for the control prints576 IF( sn_cfctl%l_prtctl .OR. sn_cfctl%l_prttrc ) THEN ! sub-domain area indices for the control prints 569 577 IF( lk_mpp .AND. jpnij > 1 ) THEN 570 578 isplt = jpni ; jsplt = jpnj ; ijsplt = jpni*jpnj ! the domain is forced to the real split domain … … 692 700 sn_cfctl%l_oceout = setto 693 701 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 696 705 END SUBROUTINE nemo_set_cfctl 697 706 -
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/stpctl.F90
r11949 r12236 73 73 ! 74 74 ll_wrtstp = ( MOD( kt, sn_cfctl%ptimincr ) == 0 ) .OR. ( kt == nitend ) 75 ll_colruns = ll_wrtstp .AND. ( ln_ctl .OR.sn_cfctl%l_runstat )75 ll_colruns = ll_wrtstp .AND. ( sn_cfctl%l_runstat ) 76 76 ll_wrtruns = ll_colruns .AND. lwm 77 77 IF( kt == nit000 .AND. lwp ) THEN … … 83 83 ! ! open run.stat file(s) at start whatever 84 84 ! ! the value of sn_cfctl%ptimincr 85 IF( lwm .AND. ( ln_ctl .OR.sn_cfctl%l_runstat ) ) THEN85 IF( lwm .AND. ( sn_cfctl%l_runstat ) ) THEN 86 86 CALL ctl_opn( numrun, 'run.stat', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp, narea ) 87 87 clname = 'run.stat.nc' … … 148 148 END IF 149 149 ! !== error handling ==! 150 IF( ( ln_ctl .OR. lsomeoce ) .AND. ( & ! have use mpp_max (because ln_ctl=.T.) or contains some ocean points150 IF( ( sn_cfctl%l_glochk .OR. lsomeoce ) .AND. ( & ! domain contains some ocean points, check for sensible ranges 151 151 & zmax(1) > 20._wp .OR. & ! too large sea surface height ( > 20 m ) 152 152 & zmax(2) > 10._wp .OR. & ! too large velocity ( > 10 m/s) … … 155 155 & zmax(4) < 0._wp .OR. & ! too large sea surface salinity (keep this line for sea-ice) 156 156 & ISNAN( zmax(1) + zmax(2) + zmax(3) ) ) ) THEN ! NaN encounter in the tests 157 IF( lk_mpp .AND. ln_ctl ) THEN 157 IF( lk_mpp .AND. sn_cfctl%l_glochk ) THEN 158 ! have use mpp_max (because sn_cfctl%l_glochk=.T. and distributed) 158 159 CALL mpp_maxloc( 'stpctl', ABS(ssh(:,:,Kmm)) , ssmask(:,:) , zzz, ih ) 159 160 CALL mpp_maxloc( 'stpctl', ABS(uu(:,:,:,Kmm)) , umask (:,:,:), zzz, iu ) … … 161 162 CALL mpp_maxloc( 'stpctl', ts(:,:,:,jp_sal,Kmm), tmask (:,:,:), zzz, is2 ) 162 163 ELSE 164 ! find local min and max locations 163 165 ih(:) = MAXLOC( ABS( ssh(:,:,Kmm) ) ) + (/ nimpp - 1, njmpp - 1 /) 164 166 iu(:) = MAXLOC( ABS( uu (:,:,:,Kmm) ) ) + (/ nimpp - 1, njmpp - 1, 0 /) … … 176 178 CALL dia_wri_state( Kmm, 'output.abort' ) ! create an output.abort file 177 179 178 IF( .NOT. ln_ctl) THEN180 IF( .NOT. sn_cfctl%l_glochk ) THEN 179 181 WRITE(ctmp8,*) 'E R R O R message from sub-domain: ', narea 180 182 CALL ctl_stop( 'STOP', ctmp1, ' ', ctmp8, ' ', ctmp2, ctmp3, ctmp4, ctmp5, ctmp6 )
Note: See TracChangeset
for help on using the changeset viewer.