Changeset 11101


Ignore:
Timestamp:
2019-06-11T16:10:28+02:00 (17 months ago)
Author:
frrh
Message:

Merge changes from Met Office GMED ticket 450 to reduce unnecessary
text output from NEMO.
This output, which is typically not switchable, is rarely of interest
in normal (non-debugging) runs and simply redunantley consumes extra
file space.
Further, the presence of this text output has been shown to
significantly degrade performance of models which are run during
Met Office HPC RAID (disk) checks.
The new code introduces switches which are configurable via the
changes made in the associated Met Office MOCI ticket 399.

Location:
branches/UKMO/dev_r5518_GO6_package/NEMOGCM
Files:
159 edited

Legend:

Unmodified
Added
Removed
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/CONFIG/SHARED/namelist_ref

    r10149 r11101  
    10801080&namctl        !   Control prints & Benchmark 
    10811081!----------------------------------------------------------------------- 
    1082    ln_ctl      = .false.   !  trends control print (expensive!) 
    1083    nn_print    =    0      !  level of print (0 no extra print) 
    1084    nn_ictls    =    0      !  start i indice of control sum (use to compare mono versus 
    1085    nn_ictle    =    0      !  end   i indice of control sum        multi processor runs 
    1086    nn_jctls    =    0      !  start j indice of control               over a subdomain) 
    1087    nn_jctle    =    0      !  end   j indice of control 
    1088    nn_isplt    =    1      !  number of processors in i-direction 
    1089    nn_jsplt    =    1      !  number of processors in j-direction 
    1090    nn_bench    =    0      !  Bench mode (1/0): CAUTION use zero except for bench 
    1091                            !     (no physical validity of the results) 
    1092    nn_timing   =    0      !  timing by routine activated (=1) creates timing.output file, or not (=0) 
     1082   ln_ctl      = .false.        !  trends control print (expensive!) 
     1083   sn_cfctl%l_config = .TRUE.   ! IF .true. then control which reports are written with the following 
     1084   sn_cfctl%l_runstat = .TRUE.  ! switches and which areas produce reports with the proc integer settings. 
     1085   sn_cfctl%l_trcstat = .FALSE. ! The default settings for the proc integers should ensure 
     1086   sn_cfctl%l_oceout  = .FALSE. ! that  all areas report. 
     1087   sn_cfctl%l_layout  = .FALSE. ! 
     1088   sn_cfctl%l_mppout  = .FALSE. ! 
     1089   sn_cfctl%l_mpptop  = .FALSE. ! 
     1090   sn_cfctl%procmin   = 0       ! Minimum area number for reporting [default:0] 
     1091   sn_cfctl%procmax   = 0       ! Maximum area number for reporting [default:0] 
     1092   sn_cfctl%procincr  = 1       ! Increment for optional subsetting of areas [default:1] 
     1093   sn_cfctl%ptimincr  = 1       ! Timestep increment for writing time step progress info/solver.stat file 
     1094   nn_print    =    0       !  level of print (0 no extra print) 
     1095   ln_flush    =    .FALSE. !  flush numout after each print. NOT recommended for production run 
     1096   nn_ictls    =    0       !  start i indice of control sum (use to compare mono versus 
     1097   nn_ictle    =    0       !  end   i indice of control sum        multi processor runs 
     1098   nn_jctls    =    0       !  start j indice of control               over a subdomain) 
     1099   nn_jctle    =    0       !  end   j indice of control 
     1100   nn_isplt    =    1       !  number of processors in i-direction 
     1101   nn_jsplt    =    1       !  number of processors in j-direction 
     1102   nn_bench    =    0       !  Bench mode (1/0): CAUTION use zero except for bench 
     1103                            !     (no physical validity of the results) 
     1104   nn_timing   =    0       !  timing by routine activated (=1) creates timing.output file, or not (=0) 
    10931105/ 
    10941106!----------------------------------------------------------------------- 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/ASM/asmbgc.F90

    r10477 r11101  
    767767            &                    TRIM( c_asmbal ) // ' at timestep = ', kt 
    768768      ENDIF 
     769 
     770      IF(lwp .AND. lflush) CALL flush(numout) 
    769771                                  
    770772   END SUBROUTINE asm_bgc_bal_wri 
     
    11401142      ENDIF 
    11411143      ! 
     1144      IF(lwp .AND. lflush) CALL flush(numout) 
    11421145   END SUBROUTINE phyto2d_asm_inc 
    11431146 
     
    13271330      ENDIF 
    13281331      ! 
     1332      IF(lwp .AND. lflush) CALL flush(numout) 
    13291333   END SUBROUTINE phyto3d_asm_inc 
    13301334 
     
    15981602      ENDIF 
    15991603      ! 
     1604      IF(lwp .AND. lflush) CALL flush(numout) 
    16001605   END SUBROUTINE pco2_asm_inc 
    16011606 
     
    18211826#endif       
    18221827      ! 
     1828      IF(lwp .AND. lflush) CALL flush(numout) 
     1829 
    18231830   END SUBROUTINE ph_asm_inc 
    18241831 
     
    21862193      ENDIF 
    21872194      ! 
     2195      IF(lwp .AND. lflush) CALL flush(numout) 
    21882196   END SUBROUTINE bgc3d_asm_inc 
    21892197 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/ASM/asmbkg.F90

    r10149 r11101  
    183183      ENDIF 
    184184      !                     
     185      IF(lwp .AND. lflush) CALL flush(numout) 
    185186   END SUBROUTINE asm_bkg_wri 
    186187 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/ASM/asminc.F90

    r10149 r11101  
    164164      READ  ( numnam_cfg, nam_asminc, IOSTAT = ios, ERR = 902 ) 
    165165902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nam_asminc in configuration namelist', lwp ) 
    166       IF(lwm) WRITE ( numond, nam_asminc ) 
     166      IF(lwm .AND. nprint > 2) WRITE ( numond, nam_asminc ) 
    167167 
    168168      ! Control print 
     
    207207         WRITE(numout,*) '      Choice of MLD for BGC assimilation                  mld_choice_bgc = ', mld_choice_bgc 
    208208         WRITE(numout,*) '      Maximum absolute chlorophyll increment (<=0 = off)    rn_maxchlinc = ', rn_maxchlinc 
     209         IF(lflush) CALL flush(numout) 
    209210      ENDIF 
    210211 
     
    242243         WRITE(numout,*) '       iitiaustr_date = ', iitiaustr_date 
    243244         WRITE(numout,*) '       iitiaufin_date = ', iitiaufin_date 
     245         IF(lflush) CALL flush(numout) 
    244246      ENDIF 
    245247       
     
    369371             WRITE(numout,*) '         Time-integrated weight = ', ztotwgt 
    370372             WRITE(numout,*) '         ===================================' 
     373             IF(lflush) CALL flush(numout) 
    371374          ENDIF 
    372375          
     
    590593      ENDIF 
    591594      ! 
     595      IF(lflush) CALL flush(numout) 
     596 
    592597   END SUBROUTINE asm_inc_init 
    593598 
     
    735740               WRITE(numout,*) 'tra_asm_inc : Tracer IAU at time step = ', kt,' with IAU weight = ', wgtiau(it) 
    736741               WRITE(numout,*) '~~~~~~~~~~~~' 
     742               IF(lflush) CALL flush(numout) 
    737743            ENDIF 
    738744 
     
    864870                  &  kt,' with IAU weight = ', wgtiau(it) 
    865871               WRITE(numout,*) '~~~~~~~~~~~~' 
     872               IF(lflush) CALL flush(numout) 
    866873            ENDIF 
    867874 
     
    940947                  &  kt,' with IAU weight = ', wgtiau(it) 
    941948               WRITE(numout,*) '~~~~~~~~~~~~' 
     949               IF(lflush) CALL flush(numout) 
    942950            ENDIF 
    943951 
     
    10301038                  &  kt,' with IAU weight = ', wgtiau(it) 
    10311039               WRITE(numout,*) '~~~~~~~~~~~~' 
     1040               IF(lflush) CALL flush(numout) 
    10321041            ENDIF 
    10331042 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/ASM/bias.F90

    r8447 r11101  
    255255      READ  ( numnam_cfg, nambias, IOSTAT = ios, ERR = 902 ) 
    256256902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambias in configuration namelist', lwp ) 
    257       IF(lwm) WRITE ( numond, nambias ) 
     257      IF(lwm .AND. nprint > 2) WRITE ( numond, nambias ) 
    258258 
    259259 
     
    320320          
    321321         WRITE(numout,*) '     time step is    = ',rdt,'you choose to write pcbias at nn_bias_itwrt  = ',nn_bias_itwrt,'and end of iau is rday/rdt=',rday/rdt  
     322         IF(lflush) call flush(numout) 
    322323      ENDIF 
    323324      IF( .NOT. ln_bias ) RETURN 
     
    561562         ENDWHERE    
    562563      ENDIF  
    563  
     564       
     565      IF(lwp .AND. lflush) call flush(numout) 
    564566 
    565567   END SUBROUTINE bias_init 
     
    895897            ENDIF 
    896898      ENDIF 
    897  
     899      IF(lwp .AND. lflush) call flush(numout) 
    898900   END SUBROUTINE tra_bias 
    899901 
     
    971973            &          rhd_pc, gru_pc , grv_pc  ) 
    972974      ENDIF 
     975 
     976      IF(lwp .AND. lflush) call flush(numout) 
    973977 
    974978   END SUBROUTINE dyn_bias 
     
    10051009      ENDIF 
    10061010      ! 
     1011      IF(lwp .AND. lflush) call flush(numout) 
     1012 
    10071013   END SUBROUTINE bias_opn 
    10081014 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/BDY/bdydta.F90

    r6487 r11101  
    532532            READ  ( numnam_cfg, nambdy_dta, IOSTAT = ios, ERR = 902 ) 
    533533902         IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambdy_dta in configuration namelist', lwp ) 
    534             IF(lwm) WRITE ( numond, nambdy_dta ) 
     534            IF(lwm .AND. nprint > 2) WRITE ( numond, nambdy_dta ) 
    535535 
    536536            cn_dir_array(ib_bdy) = cn_dir 
     
    893893 
    894894      ENDDO ! ib_bdy  
     895 
     896      IF(lwp .AND. lflush) CALL flush(numout) 
    895897 
    896898      IF( nn_timing == 1 ) CALL timing_stop('bdy_dta_init') 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/BDY/bdyini.F90

    r6487 r11101  
    110110      IF( nn_timing == 1 ) CALL timing_start('bdy_init') 
    111111 
    112       IF(lwp) WRITE(numout,*) 
    113       IF(lwp) WRITE(numout,*) 'bdy_init : initialization of open boundaries' 
    114       IF(lwp) WRITE(numout,*) '~~~~~~~~' 
     112      IF(lwp) THEN 
     113         WRITE(numout,*) 
     114         WRITE(numout,*) 'bdy_init : initialization of open boundaries' 
     115         WRITE(numout,*) '~~~~~~~~' 
     116         IF(lflush) CALL flush(numout) 
     117      ENDIF 
    115118      ! 
    116119 
     
    131134      READ  ( numnam_cfg, nambdy, IOSTAT = ios, ERR = 902 ) 
    132135902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambdy in configuration namelist', lwp ) 
    133       IF(lwm) WRITE ( numond, nambdy ) 
     136      IF(lwm .AND. nprint > 2) WRITE ( numond, nambdy ) 
    134137 
    135138      ! ----------------------------------------- 
     
    420423            READ  ( numnam_cfg, nambdy_index, IOSTAT = ios, ERR = 904 ) 
    421424904         IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambdy_index in configuration namelist', lwp ) 
    422             IF(lwm) WRITE ( numond, nambdy_index ) 
     425            IF(lwm .AND. nprint > 2) WRITE ( numond, nambdy_index ) 
    423426 
    424427            SELECT CASE ( TRIM(ctypebdy) ) 
     
    13481351      ENDIF 
    13491352 
     1353      IF(lwp .AND. lflush) CALL flush(numout) 
     1354 
    13501355      CALL wrk_dealloc(jpi,jpj,zfmask)  
    13511356 
     
    17221727      IF ((itest==0).AND.(lwp)) WRITE(numout,*) 'NO open boundary corner found' 
    17231728      ! 
     1729      IF(lwp. AND. lflush) CALL flush(numout) 
     1730      ! 
    17241731      ! Other tests TBD:  
    17251732      ! segments completly on land 
     
    17571764         IF(lwp) WRITE(numout,*) ' ==========  have different open bdy schemes'                                                   
    17581765         IF(lwp) WRITE(numout,*) 
     1766         IF(lflush) CALL flush(numout) 
    17591767         nstop = nstop + 1 
    17601768      ENDIF 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/BDY/bdytides.F90

    r9583 r11101  
    9999         IF(lwp) WRITE(numout,*) 'bdytide_init : initialization of tidal harmonic forcing at open boundaries' 
    100100         IF(lwp) WRITE(numout,*) '~~~~~~~~~~~~' 
     101         IF(lflush) CALL flush(numout) 
    101102      ENDIF 
    102103 
     
    118119            READ  ( numnam_cfg, nambdy_tide, IOSTAT = ios, ERR = 902 ) 
    119120902         IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambdy_tide in configuration namelist', lwp ) 
    120             IF(lwm) WRITE ( numond, nambdy_tide ) 
     121            IF(lwm .AND. nprint > 2) WRITE ( numond, nambdy_tide ) 
    121122            !                                               ! Parameter control and print 
    122             IF(lwp) WRITE(numout,*) '  ' 
    123             IF(lwp) WRITE(numout,*) '          Namelist nambdy_tide : tidal harmonic forcing at open boundaries' 
    124             IF(lwp) WRITE(numout,*) '             read tidal data in 2d files: ', ln_bdytide_2ddta 
    125             IF(lwp) WRITE(numout,*) '             assume complex conjugate   : ', ln_bdytide_conj 
    126             IF(lwp) WRITE(numout,*) '             Number of tidal components to read: ', nb_harmo 
    127             IF(lwp) THEN  
    128                     WRITE(numout,*) '             Tidal components: '  
     123            IF(lwp) THEN 
     124               WRITE(numout,*) '  ' 
     125               WRITE(numout,*) '          Namelist nambdy_tide : tidal harmonic forcing at open boundaries' 
     126               WRITE(numout,*) '             read tidal data in 2d files: ', ln_bdytide_2ddta 
     127               WRITE(numout,*) '             assume complex conjugate   : ', ln_bdytide_conj 
     128               WRITE(numout,*) '             Number of tidal components to read: ', nb_harmo 
     129               WRITE(numout,*) '             Tidal components: '  
    129130               DO itide = 1, nb_harmo 
    130131                  WRITE(numout,*)  '                 ', Wave(ntide(itide))%cname_tide  
    131132               END DO 
    132             ENDIF  
    133             IF(lwp) WRITE(numout,*) ' ' 
     133               WRITE(numout,*) ' ' 
     134               IF(lflush) CALL flush(numout) 
     135            ENDIF 
    134136 
    135137            ! Allocate space for tidal harmonics data - get size from OBC data arrays 
     
    333335           WRITE(numout,*) 'bdytide_update : (re)Initialization of the tidal bdy forcing at kt=',kt 
    334336           WRITE(numout,*) '~~~~~~~~~~~~~~ ' 
     337           IF(lflush) CALL flush(numout) 
    335338        ENDIF 
    336339        ! 
     
    448451               WRITE(numout,*) 'bdy_tide_dta : Refresh nodal factors for tidal open bdy data at kt=',kt 
    449452               WRITE(numout,*) '~~~~~~~~~~~~~~ ' 
     453               IF(lflush) CALL flush(numout) 
    450454               ENDIF 
    451455               ! 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/BDY/bdyvol.F90

    r9583 r11101  
    8787         IF(lwp) WRITE(numout,*)'bdy_vol : Correction of velocities along unstructured OBC' 
    8888         IF(lwp) WRITE(numout,*)'~~~~~~~' 
     89         IF(lflush) CALL flush(numout) 
    8990      END IF  
    9091 
     
    164165         IF(lwp) WRITE(numout,*)'          correction velocity zubtpecor =', zubtpecor , '(m/s)' 
    165166         IF(lwp) WRITE(numout,*)'          cumulated transport ztranst   =', ztranst   , '(m3/s)' 
     167         IF(lflush) CALL flush(numout) 
    166168      END IF  
    167169      ! 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/C1D/c1d.F90

    r6486 r11101  
    5656      READ  ( numnam_cfg, namc1d, IOSTAT = ios, ERR = 902 ) 
    5757902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namc1d in configuration namelist', lwp ) 
    58       IF(lwm) WRITE ( numond, namc1d ) 
     58      IF(lwm .AND. nprint > 2) WRITE ( numond, namc1d ) 
    5959 
    6060      ! 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/C1D/dtauvd.F90

    r6486 r11101  
    7373      READ  ( numnam_cfg, namc1d_uvd, IOSTAT = ios, ERR = 902 ) 
    7474902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namc1d_uvd in configuration namelist', lwp ) 
    75       IF(lwm) WRITE ( numond, namc1d_uvd ) 
     75      IF(lwm .AND. nprint > 2) WRITE ( numond, namc1d_uvd ) 
    7676 
    7777      !                             ! force the initialization when dyndmp is used 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/C1D/dyndmp.F90

    r6486 r11101  
    8787      READ  ( numnam_cfg, namc1d_dyndmp, IOSTAT = ios, ERR = 902 ) 
    8888902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namc1d_dyndmp in configuration namelist', lwp ) 
    89       IF(lwm) WRITE ( numond, namc1d_dyndmp ) 
     89      IF(lwm .AND. nprint > 2) WRITE ( numond, namc1d_dyndmp ) 
    9090 
    9191      IF(lwp) THEN                           ! control print 
     
    100100         WRITE(numout,*) '      Damping file name               cn_resto  = ', cn_resto 
    101101         WRITE(numout,*) 
     102         IF(lflush) CALL flush(numout) 
    102103      ENDIF 
    103104 
     
    128129         CALL iom_close( imask ) 
    129130      ENDIF 
     131      ! 
     132      IF(lwp .AND. lflush) CALL flush(numout) 
    130133      ! 
    131134   END SUBROUTINE dyn_dmp_init 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/CRS/crsini.F90

    r6486 r11101  
    9393      READ  ( numnam_cfg, namcrs, IOSTAT = ios, ERR = 902 ) 
    9494902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namcrs in configuration namelist', lwp ) 
    95       IF(lwm) WRITE ( numond, namcrs ) 
     95      IF(lwm .AND. nprint > 2) WRITE ( numond, namcrs ) 
    9696 
    9797     IF(lwp) THEN 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DIA/diadct.F90

    r9583 r11101  
    151151     READ  ( numnam_cfg, namdct, IOSTAT = ios, ERR = 902 ) 
    152152902  IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdct in configuration namelist', lwp ) 
    153      IF(lwm) WRITE ( numond, namdct ) 
     153     IF(lwm .AND. nprint >2) WRITE ( numond, namdct ) 
    154154 
    155155     IF( lwp ) THEN 
     
    185185     transports_3d(:,:,:,:)=0.0  
    186186     transports_2d(:,:,:)  =0.0  
    187  
     187     ! 
     188     IF(lwp .AND. lflush) CALL flush(numout) 
     189     ! 
    188190     IF( nn_timing == 1 )   CALL timing_stop('dia_dct_init') 
    189191     ! 
     
    301303        CALL wrk_dealloc( nb_sec_max,nb_type_class,nb_class_max , zsum  ) 
    302304     ENDIF     
    303  
     305     ! 
     306     IF(lwp .AND. lflush) CALL flush(numout) 
     307     ! 
    304308     IF( nn_timing == 1 )   CALL timing_stop('dia_dct') 
    305309     ! 
     
    503507  
    504508     nb_sec = jsec-1   !number of section read in the file 
    505  
     509     ! 
     510     IF(lwp .AND. lflush) CALL flush(numout) 
     511  
    506512     CALL wrk_dealloc( nb_point_max, directemp ) 
    507513     ! 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DIA/diaharm.F90

    r6487 r11101  
    9595      READ  ( numnam_cfg, nam_diaharm, IOSTAT = ios, ERR = 902 ) 
    9696902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nam_diaharm in configuration namelist', lwp ) 
    97       IF(lwm) WRITE ( numond, nam_diaharm ) 
     97      IF(lwm .AND. nprint > 2) WRITE ( numond, nam_diaharm ) 
    9898      ! 
    9999      IF(lwp) THEN 
     
    160160      ALLOCATE( ana_temp(jpi,jpj,2*nb_ana,3) ) 
    161161      ana_temp(:,:,:,:) = 0._wp 
     162  
     163      IF(lwp .AND. lflush) CALL flush(numout) 
    162164 
    163165   END SUBROUTINE dia_harm_init 
     
    231233      CALL wrk_alloc( jpi , jpj , jpmax_harmo , 2 , ana_amp ) 
    232234 
    233       IF(lwp) WRITE(numout,*) 
    234       IF(lwp) WRITE(numout,*) 'anharmo_end: kt=nitend_han: Perform harmonic analysis' 
    235       IF(lwp) WRITE(numout,*) '~~~~~~~~~~~~' 
     235      IF(lwp) THEN 
     236        WRITE(numout,*) 
     237        WRITE(numout,*) 'anharmo_end: kt=nitend_han: Perform harmonic analysis' 
     238        WRITE(numout,*) '~~~~~~~~~~~~' 
     239        IF(lflush) CALL flush(numout) 
     240      ENDIF 
    236241 
    237242      ztime_ini = nit000_han*rdt                 ! Initial time in seconds at the beginning of analysis 
     
    400405#endif 
    401406      IF(lwp) WRITE(numout,*) '  ' 
     407      IF(lwp .AND. lflush) CALL flush(numout) 
    402408 
    403409      ! A) Elevation 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DIA/diahsb.F90

    r9321 r11101  
    361361      READ  ( numnam_cfg, namhsb, IOSTAT = ios, ERR = 902 ) 
    362362902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namhsb in configuration namelist', lwp ) 
    363       IF(lwm) WRITE ( numond, namhsb ) 
     363      IF(lwm .AND. nprint > 2) WRITE ( numond, namhsb ) 
    364364 
    365365      ! 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DIA/diahth.F90

    r9583 r11101  
    131131         IF(lwp) WRITE(numout,*) '~~~~~~~ ' 
    132132         IF(lwp) WRITE(numout,*) 
     133         IF(lwp .AND. lflush) CALL flush(numout) 
    133134      ENDIF 
    134135 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DIA/diaptr.F90

    r9830 r11101  
    469469      READ  ( numnam_cfg, namptr, IOSTAT = ios, ERR = 902 ) 
    470470902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namptr in configuration namelist', lwp ) 
    471       IF(lwm) WRITE ( numond, namptr ) 
     471      IF(lwm .AND. nprint > 2) WRITE ( numond, namptr ) 
    472472 
    473473      IF(lwp) THEN                     ! Control print 
     
    478478         WRITE(numout,*) '      Poleward heat & salt transport (T) or not (F)      ln_diaptr  = ', ln_diaptr 
    479479         WRITE(numout,*) '      Global (F) or glo/Atl/Pac/Ind/Indo-Pac basins      ln_subbas  = ', ln_subbas 
     480         IF(lflush) CALL flush(numout) 
    480481      ENDIF 
    481482 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DIA/diawri.F90

    r10020 r11101  
    462462      INTEGER, INTENT( in ) ::   kt      ! ocean time-step index 
    463463      !! 
    464       LOGICAL ::   ll_print = .FALSE.                        ! =T print and flush numout 
    465464      CHARACTER (len=40) ::   clhstnam, clop, clmx           ! local names 
    466465      INTEGER  ::   inum = 11                                ! temporary logical unit 
     
    489488      ! ----------------- 
    490489 
    491       ! local variable for debugging 
    492       ll_print = .FALSE. 
    493       ll_print = ll_print .AND. lwp 
    494  
    495490      ! Define frequency of output and means 
    496491      zdt = rdt 
     
    532527         IF(lwp)WRITE(numout,*) ' indexes of zoom = ', iimi, iima, ijmi, ijma,   & 
    533528                                 ' limit storage in depth = ', ipk 
    534  
     529        
    535530         ! WRITE root name in date.file for use by postpro 
    536531         IF(lwp) THEN 
     
    806801         CALL histend( nid_W, snc4chunks=snc4set ) 
    807802 
    808          IF(lwp) WRITE(numout,*) 
    809          IF(lwp) WRITE(numout,*) 'End of NetCDF Initialization' 
    810          IF(ll_print) CALL FLUSH(numout ) 
     803         IF(lwp) THEN 
     804            WRITE(numout,*) 
     805            WRITE(numout,*) 'End of NetCDF Initialization' 
     806            IF(lflush) CALL flush(numout) 
     807         ENDIF 
    811808 
    812809      ENDIF 
     
    987984      ! 
    988985      IF( nn_timing == 1 )   CALL timing_stop('dia_wri') 
     986      ! 
     987      IF(lwp .AND. lflush) CALL flush(numout) 
    989988      ! 
    990989   END SUBROUTINE dia_wri 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DOM/closea.F90

    r6491 r11101  
    7878      IF(lwp) WRITE(numout,*)'dom_clo : closed seas ' 
    7979      IF(lwp) WRITE(numout,*)'~~~~~~~' 
     80      IF(lwp .AND. lflush) CALL flush(numout) 
    8081 
    8182      ! initial values 
     
    403404      CALL lbc_lnk( emp , 'T', 1._wp ) 
    404405      ! 
     406      IF(lwp .AND. lflush) CALL flush(numout) 
     407      ! 
    405408      IF( nn_timing == 1 )  CALL timing_stop('sbc_clo') 
    406409      ! 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DOM/daymod.F90

    r9321 r11101  
    130130      IF(lwp) WRITE(numout,'(a,i6,a,i2,a,i2,a,i8,a,i8)')' =======>> 1/2 time step before the start of the run DATE Y/M/D = ',   & 
    131131           &                   nyear, '/', nmonth, '/', nday, '  nsec_day:', nsec_day, '  nsec_week:', nsec_week 
     132      IF(lwp .AND. lflush) CALL flush(numout) 
    132133 
    133134      ! Up to now, calendar parameters are related to the end of previous run (nit000-1) 
     
    253254         CALL ymds2ju( nyear, 01, 01, 0.0, fjulstartyear ) 
    254255         ! 
    255          IF(lwp) WRITE(numout,'(a,i8,a,i4.4,a,i2.2,a,i2.2,a,i3.3)') '======>> time-step =', kt,   & 
     256         IF(lwp .AND. nprint > 0) THEN 
     257             WRITE(numout,'(a,i8,a,i4.4,a,i2.2,a,i2.2,a,i3.3)') '======>> time-step =', kt,   & 
    256258              &   '      New day, DATE Y/M/D = ', nyear, '/', nmonth, '/', nday, '      nday_year = ', nday_year 
    257          IF(lwp) WRITE(numout,'(a,i8,a,i7,a,i5)') '         nsec_year = ', nsec_year,   & 
     259             WRITE(numout,'(a,i8,a,i7,a,i5)') '         nsec_year = ', nsec_year,   & 
    258260              &   '   nsec_month = ', nsec_month, '   nsec_day = ', nsec_day, '   nsec_week = ', nsec_week 
     261             IF(lflush) CALL flush(numout) 
     262         ENDIF 
    259263      ENDIF 
    260264 
     
    321325               CASE ( 2 )   ;   WRITE(numout,*) ' nrstdt = 2 : calendar parameters read in restart' 
    322326               END SELECT 
    323                WRITE(numout,*) 
     327               WRITE(numout,*) ' ' 
     328               IF(lflush) CALL flush(numout) 
    324329            ENDIF 
    325330            ! Control of date 
     
    353358            WRITE(numout,*) '   number of elapsed days since the begining of run : ', adatrj 
    354359            WRITE(numout,*) 
     360            IF(lflush) CALL flush(numout) 
    355361         ENDIF 
    356362         ! 
    357363      ELSEIF( TRIM(cdrw) == 'WRITE' ) THEN 
    358364         ! 
    359          IF( kt == nitrst ) THEN 
    360             IF(lwp) WRITE(numout,*) 
    361             IF(lwp) WRITE(numout,*) 'rst_write : write oce restart file  kt =', kt 
    362             IF(lwp) WRITE(numout,*) '~~~~~~~' 
     365         IF( kt == nitrst .AND. lwp .AND. nprint > 0) THEN 
     366            WRITE(numout,*) 
     367            WRITE(numout,*) 'rst_write : write oce restart file  kt =', kt 
     368            WRITE(numout,*) '~~~~~~~' 
     369            IF(lflush) CALL flush(numout) 
    363370         ENDIF 
    364371         ! calendar control 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DOM/domain.F90

    r6491 r11101  
    7979         WRITE(numout,*) 'dom_init : domain initialization' 
    8080         WRITE(numout,*) '~~~~~~~~' 
     81         IF(lflush) CALL flush(numout) 
    8182      ENDIF 
    8283      ! 
     
    160161      READ  ( numnam_cfg, namrun, IOSTAT = ios, ERR = 902 ) 
    161162902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namrun in configuration namelist', lwp ) 
    162       IF(lwm) WRITE ( numond, namrun ) 
     163      IF(lwm .AND. nprint > 2) WRITE ( numond, namrun ) 
    163164      ! 
    164165      IF(lwp) THEN                  ! control print 
     
    193194         WRITE(numout,*) '      overwrite an existing file      ln_clobber = ', ln_clobber 
    194195         WRITE(numout,*) '      NetCDF chunksize (bytes)        nn_chunksz = ', nn_chunksz 
     196         IF(lflush) CALL flush(numout) 
    195197      ENDIF 
    196198 
     
    251253      READ  ( numnam_cfg, namdom, IOSTAT = ios, ERR = 904 ) 
    252254904   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdom in configuration namelist', lwp ) 
    253       IF(lwm) WRITE ( numond, namdom ) 
     255      IF(lwm .AND. nprint > 2) WRITE ( numond, namdom ) 
    254256 
    255257      IF(lwp) THEN 
     
    293295         WRITE(numout,*) '                                      ppkth2            = ', ppkth2 
    294296         WRITE(numout,*) '                                      ppacr2            = ', ppacr2 
     297         IF(lflush) CALL flush(numout) 
    295298      ENDIF 
    296299 
     
    313316      READ  ( numnam_cfg, namcla, IOSTAT = ios, ERR = 906 ) 
    314317906   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namcla in configuration namelist', lwp ) 
    315       IF(lwm) WRITE( numond, namcla ) 
     318      IF(lwm .AND. nprint > 2) WRITE( numond, namcla ) 
    316319 
    317320      IF(lwp) THEN 
     
    319322         WRITE(numout,*) '   Namelist namcla' 
    320323         WRITE(numout,*) '      cross land advection                 nn_cla    = ', nn_cla 
     324         IF(lflush) CALL flush(numout) 
    321325      ENDIF 
    322326      IF ( nn_cla .EQ. 1 ) THEN 
     
    337341      READ  ( numnam_cfg, namnc4, IOSTAT = ios, ERR = 908 ) 
    338342908   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namnc4 in configuration namelist', lwp ) 
    339       IF(lwm) WRITE( numond, namnc4 ) 
     343      IF(lwm .AND. nprint > 2) WRITE( numond, namnc4 ) 
    340344 
    341345      IF(lwp) THEN                        ! control print 
     
    346350         WRITE(numout,*) '      number of chunks in k-dimension      nn_nchunks_k   = ', nn_nchunks_k 
    347351         WRITE(numout,*) '      apply netcdf4/hdf5 chunking & compression ln_nc4zip = ', ln_nc4zip 
     352         IF(lflush) CALL flush(numout) 
    348353      ENDIF 
    349354 
     
    406411         WRITE(numout,"(14x,'e2t maxi: ',1f10.2,' at i = ',i5,' j= ',i5)") ze2max, iima2, ijma2 
    407412         WRITE(numout,"(14x,'e2t mini: ',1f10.2,' at i = ',i5,' j= ',i5)") ze2min, iimi2, ijmi2 
     413         IF(lflush) CALL flush(numout) 
    408414      ENDIF 
    409415      ! 
     
    467473         WRITE(numout,*) 'dom_stiff : maximum grid stiffness ratio: ', zrxmax 
    468474         WRITE(numout,*) '~~~~~~~~~' 
     475         IF(lflush) CALL flush(numout) 
    469476      ENDIF 
    470477 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DOM/domcfg.F90

    r6486 r11101  
    5656         IF( jperio == 5 )   WRITE(numout,*) '      jperio= 5, north fold with F-point pivot' 
    5757         IF( jperio == 6 )   WRITE(numout,*) '      jperio= 6, cyclic east-west and north fold with F-point pivot' 
     58         IF(lflush) CALL flush(numout) 
    5859      ENDIF 
    5960      ! 
     
    105106        mj1(jj) = MAX( 0, MIN( jj - jpjzoom + 1 - njmpp + 1, jpj   ) ) 
    106107      END DO 
    107       IF(lwp) THEN                   ! control print 
     108      IF(lwp .AND. nprint > 0) THEN                   ! control print 
    108109         WRITE(numout,*) 
    109110         WRITE(numout,*) 'dom_glo : domain: data / local ' 
     
    136137         WRITE(numout,*) '             ending index' 
    137138         WRITE(numout,25)              (mj1(jj),jj = 1,jpjdta) 
     139         IF(lflush) CALL flush(numout) 
    138140      ENDIF 
    139141 25   FORMAT( 100(10x,19i4,/) ) 
     
    195197      ENDIF 
    196198      ! 
     199      IF(lwp .AND. lflush) CALL flush(numout) 
     200      ! 
    197201   END SUBROUTINE dom_glo 
    198202 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DOM/domhgr.F90

    r6487 r11101  
    421421         gphi0 = zphi1 + zsin_alpha * ze1deg * FLOAT( jpjglo-2 ) 
    422422 
    423          IF( nprint==1 .AND. lwp )   THEN 
     423         IF( nprint > 3 .AND. lwp )   THEN 
    424424            WRITE(numout,*) '          ze1', ze1, 'cosalpha', zcos_alpha, 'sinalpha', zsin_alpha 
    425425            WRITE(numout,*) '          ze1deg', ze1deg, 'glam0', glam0, 'gphi0', gphi0 
     
    507507 
    508508       
    509       IF( nprint == 1 .AND. lwp ) THEN 
     509      IF( nprint > 3 .AND. lwp ) THEN 
    510510         WRITE(numout,*) '          e1u e2u ' 
    511511         CALL prihre( e1u,jpi,jpj,jpi-5,jpi,1,jpj-5,jpj,1,0.,numout ) 
     
    600600      ENDIF 
    601601      ! 
     602      IF(lwp .AND. lflush) CALL flush(numout) 
     603      ! 
    602604      IF( nn_timing == 1 )  CALL timing_stop('dom_hgr') 
    603605      ! 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DOM/dommsk.F90

    r9830 r11101  
    157157      READ  ( numnam_cfg, namlbc, IOSTAT = ios, ERR = 902 ) 
    158158902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namlbc in configuration namelist', lwp ) 
    159       IF(lwm) WRITE ( numond, namlbc ) 
     159      IF(lwm .AND. nprint > 2) WRITE ( numond, namlbc ) 
    160160       
    161161      IF(lwp) THEN                  ! control print 
     
    514514      ! CAUTION : The fmask may be further modified in dyn_vor_init ( dynvor.F90 ) 
    515515             
    516       IF( nprint == 1 .AND. lwp ) THEN      ! Control print 
     516      IF( nprint > 3 .AND. lwp ) THEN      ! Control print 
    517517         imsk(:,:) = INT( tmask_i(:,:) ) 
    518518         WRITE(numout,*) ' tmask_i : ' 
     
    561561      CALL wrk_dealloc( jpi, jpj, imsk ) 
    562562      CALL wrk_dealloc( jpi, jpj, zwf  ) 
     563      ! 
     564      IF(lwp .AND. lflush) CALL flush(numout) 
    563565      ! 
    564566      IF( nn_timing == 1 )  CALL timing_stop('dom_msk') 
     
    640642                  nicoa(inw,1,jk) = ji 
    641643                  njcoa(inw,1,jk) = jj 
    642                   IF( nprint == 1 ) WRITE(numout,*) ' west  : ', jk, inw, ji, jj 
     644                  IF( nprint > 3 ) WRITE(numout,*) ' west  : ', jk, inw, ji, jj 
    643645               ENDIF 
    644646               zaa = tmask(ji,jj,jk) + tmask(ji,jj+1,jk) 
     
    647649                  nicoa(ine,2,jk) = ji 
    648650                  njcoa(ine,2,jk) = jj 
    649                   IF( nprint == 1 ) WRITE(numout,*) ' east  : ', jk, ine, ji, jj 
     651                  IF( nprint > 3 ) WRITE(numout,*) ' east  : ', jk, ine, ji, jj 
    650652               ENDIF 
    651653            END DO 
     
    667669                  nicoa(ins,3,jk) = ji 
    668670                  njcoa(ins,3,jk) = jj 
    669                   IF( nprint == 1 ) WRITE(numout,*) ' south : ', jk, ins, ji, jj 
     671                  IF( nprint > 3 ) WRITE(numout,*) ' south : ', jk, ins, ji, jj 
    670672               ENDIF 
    671673               zaa = tmask(ji+1,jj,jk) + tmask(ji,jj,jk) 
     
    674676                  nicoa(inn,4,jk) = ji 
    675677                  njcoa(inn,4,jk) = jj 
    676                   IF( nprint == 1 ) WRITE(numout,*) ' north : ', jk, inn, ji, jj 
     678                  IF( nprint > 3 ) WRITE(numout,*) ' north : ', jk, inn, ji, jj 
    677679               ENDIF 
    678680            END DO 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DOM/domstp.F90

    r6486 r11101  
    105105 
    106106      END SELECT 
     107       
     108      IF(lwp .AND. lflush) CALL flush(numout) 
    107109 
    108110   END SUBROUTINE dom_stp 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DOM/domvvl.F90

    r9321 r11101  
    133133      IF(lwp) WRITE(numout,*) 'dom_vvl_init : Variable volume activated' 
    134134      IF(lwp) WRITE(numout,*) '~~~~~~~~~~~~' 
     135      IF(lwp .AND. lflush) CALL flush(numout) 
    135136 
    136137      ! choose vertical coordinate (z_star, z_tilde or layer) 
     
    292293         IF(lwp) WRITE(numout,*) 'dom_vvl_sf_nxt : compute after scale factors' 
    293294         IF(lwp) WRITE(numout,*) '~~~~~~~~~~~~~~' 
     295         IF(lflush) CALL flush(numout) 
    294296      ENDIF 
    295297 
     
    483485      IF( ln_vvl_dbg .AND. .NOT. ll_do_bclinic ) THEN   ! - ML - test: control prints for debuging 
    484486         ! 
    485          IF( lwp ) WRITE(numout, *) 'kt =', kt 
     487         IF( lwp .AND. nprint > 2) WRITE(numout, *) 'kt =', kt 
    486488         IF ( ln_vvl_ztilde .OR. ln_vvl_layer ) THEN 
    487489            z_tmax = MAXVAL( tmask(:,:,1) * tmask_i(:,:) * ABS( zht(:,:) ) ) 
     
    525527         IF( lk_mpp ) CALL mpp_max( z_tmax )                                ! max over the global domain 
    526528         IF( lwp    ) WRITE(numout, *) kt,' MAXVAL(abs(ssha))) =', z_tmax 
     529         IF(lflush) CALL flush(numout) 
    527530      END IF 
    528531 
     
    593596         IF(lwp) WRITE(numout,*) 'dom_vvl_sf_swp : - time filter and swap of scale factors' 
    594597         IF(lwp) WRITE(numout,*) '~~~~~~~~~~~~~~   - interpolate scale factors and compute depths for next time step' 
     598         IF(lflush) CALL flush(numout) 
    595599      ENDIF 
    596600 
     
    866870               neuler = 0 
    867871            ENDIF 
     872            ! 
     873            IF(lwp .AND. lflush) CALL flush(numout) 
    868874            !                             ! ----------- ! 
    869875            IF( ln_vvl_zstar ) THEN       ! z_star case ! 
     
    907913      ELSEIF( TRIM(cdrw) == 'WRITE' ) THEN   ! Create restart file 
    908914         !                                   ! =================== 
    909          IF(lwp) WRITE(numout,*) '---- dom_vvl_rst ----' 
     915         IF(lwp .AND. nprint > 0) WRITE(numout,*) '---- dom_vvl_rst ----' 
    910916         !                                           ! --------- ! 
    911917         !                                           ! all cases ! 
     
    955961      READ  ( numnam_cfg, nam_vvl, IOSTAT = ios, ERR = 902 ) 
    956962902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nam_vvl in configuration namelist', lwp ) 
    957       IF(lwm) WRITE ( numond, nam_vvl ) 
     963      IF(lwm .AND. nprint > 2) WRITE ( numond, nam_vvl ) 
    958964 
    959965      IF(lwp) THEN                    ! Namelist print 
     
    10081014         ! IF(       ln_vvl_kepe ) WRITE(numout,*) '              kinetic to potential energy transfer : option used' 
    10091015         ! IF( .NOT. ln_vvl_kepe ) WRITE(numout,*) '              kinetic to potential energy transfer : option not used' 
     1016         IF(lflush) CALL flush(numout) 
    10101017      ENDIF 
    10111018 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DOM/domwri.F90

    r9830 r11101  
    9090      IF(lwp) WRITE(numout,*) 'dom_wri : create NetCDF mesh and mask information file(s)' 
    9191      IF(lwp) WRITE(numout,*) '~~~~~~~' 
     92      IF(lwp .AND. lflush) CALL flush(numout) 
    9293       
    9394      clnam0 = 'mesh_mask'  ! filename (mesh and mask informations) 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DOM/domzgr.F90

    r6487 r11101  
    114114      READ  ( numnam_cfg, namzgr, IOSTAT = ios, ERR = 902 ) 
    115115902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzgr in configuration namelist', lwp ) 
    116       IF(lwm) WRITE ( numond, namzgr ) 
     116      IF(lwm .AND. nprint > 2) WRITE ( numond, namzgr ) 
    117117 
    118118      IF(lwp) THEN                     ! Control print 
     
    154154      END IF 
    155155      ! 
    156       IF( nprint == 1 .AND. lwp )   THEN 
     156      IF( nprint > 3 .AND. lwp )   THEN 
    157157         WRITE(numout,*) ' MIN val mbathy ', MINVAL( mbathy(:,:) ), ' MAX ', MAXVAL( mbathy(:,:) ) 
    158158         WRITE(numout,*) ' MIN val depth t ', MINVAL( gdept_0(:,:,:) ),   & 
     
    170170            &                   ' w ',   MAXVAL( e3w_0(:,:,:) ) 
    171171      ENDIF 
     172      ! 
     173      IF(lwp .AND. lflush) CALL flush(numout) 
    172174      ! 
    173175      IF( nn_timing == 1 )  CALL timing_stop('dom_zgr') 
     
    265267            ENDIF 
    266268         ENDIF 
     269         IF(lflush) CALL flush(numout) 
    267270      ENDIF 
    268271 
     
    338341         WRITE(numout, "(9x,' level  gdept_1d  gdepw_1d  e3t_1d   e3w_1d  ')" ) 
    339342         WRITE(numout, "(10x, i4, 4f9.2)" ) ( jk, gdept_1d(jk), gdepw_1d(jk), e3t_1d(jk), e3w_1d(jk), jk = 1, jpk ) 
     343         IF(lflush) CALL flush(numout) 
    340344      ENDIF 
    341345      DO jk = 1, jpk                      ! control positivity 
     
    598602      ENDIF 
    599603      ! 
     604      IF(lwp .AND. lflush) CALL flush(numout) 
     605      ! 
    600606      IF( nn_timing == 1 )  CALL timing_stop('zgr_bat') 
    601607      ! 
     
    651657         ! 
    652658      ENDIF 
     659      ! 
     660      IF(lwp .AND. lflush) CALL flush(numout) 
    653661      ! 
    654662   END SUBROUTINE zgr_bat_zoom 
     
    779787      ENDIF 
    780788 
    781       IF( lwp .AND. nprint == 1 ) THEN      ! control print 
     789      IF( lwp .AND. nprint > 3 ) THEN      ! control print 
    782790         WRITE(numout,*) 
    783791         WRITE(numout,*) ' bathymetric field :   number of non-zero T-levels ' 
     
    789797      CALL wrk_dealloc( jpi, jpj, zbathy ) 
    790798      ! 
     799      IF(lwp .AND. lflush) CALL flush(numout) 
     800      ! 
    791801      IF( nn_timing == 1 )  CALL timing_stop('zgr_bat_ctl') 
    792802      ! 
     
    818828      IF(lwp) WRITE(numout,*) '    zgr_bot_level : ocean bottom k-index of T-, U-, V- and W-levels ' 
    819829      IF(lwp) WRITE(numout,*) '    ~~~~~~~~~~~~~' 
     830      IF(lwp .AND. lflush) CALL flush(numout) 
    820831      ! 
    821832      mbkt(:,:) = MAX( mbathy(:,:) , 1 )    ! bottom k-index of T-level (=1 over land) 
     
    862873      IF(lwp) WRITE(numout,*) '    zgr_top_level : ocean top k-index of T-, U-, V- and W-levels ' 
    863874      IF(lwp) WRITE(numout,*) '    ~~~~~~~~~~~~~' 
     875      IF(lwp .AND. lflush) CALL flush(numout) 
    864876      ! 
    865877      mikt(:,:) = MAX( misfdep(:,:) , 1 )    ! top k-index of T-level (=1) 
     
    12461258         WRITE(numout,*) 
    12471259         WRITE(numout,*) 'domzgr gdep3w(mbathy)'   ;   CALL prihre(zprt(:,:,6),jpi,jpj,1,jpi,1,1,jpj,1,1.e-3,numout) 
     1260         IF(lflush) CALL flush(numout) 
    12481261      ENDIF   
    12491262      ! 
     
    12731286      INTEGER  ::   id, jd, nprocd 
    12741287      INTEGER  ::   icompt, ibtest, ibtestim1, ibtestip1, ibtestjm1, ibtestjp1   ! (ISF) 
    1275       LOGICAL  ::   ll_print         ! Allow  control print for debugging 
    12761288      REAL(wp) ::   ze3tp , ze3wp    ! Last ocean level thickness at T- and W-points 
    12771289      REAL(wp) ::   zdepwp, zdepth   ! Ajusted ocean depth to avoid too small e3t 
     
    17531765      ENDIF  
    17541766 
     1767      IF(lwp .AND. lflush) CALL flush(numout) 
     1768 
    17551769      CALL wrk_dealloc( jpi, jpj, zmask, zbathy, zrisfdep ) 
    17561770      CALL wrk_dealloc( jpi, jpj, zmisfdep, zmbathy ) 
     
    18291843      READ  ( numnam_cfg, namzgr_sco, IOSTAT = ios, ERR = 902 ) 
    18301844902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzgr_sco in configuration namelist', lwp ) 
    1831       IF(lwm) WRITE ( numond, namzgr_sco ) 
     1845      IF(lwm .AND. nprint > 2) WRITE ( numond, namzgr_sco ) 
    18321846 
    18331847      IF(lwp) THEN                           ! control print 
     
    18551869         WRITE(numout,*) '        Offset for Zb                                rn_zb_b       = ',rn_zb_b 
    18561870         WRITE(numout,*) '        Bottom cell (Zb) (m) = H*rn_zb_a + rn_zb_b' 
     1871         IF(lflush) CALL flush(numout) 
    18571872      ENDIF 
    18581873 
     
    19841999         WRITE(numout,*) 
    19852000         CALL prihre( hbatt(1,1), jpi, jpj, 1, jpi, 1, 1, jpj, 1, 0._wp, numout ) 
    1986          IF( nprint == 1 )   THEN         
     2001         IF( nprint > 3 )   THEN         
    19872002            WRITE(numout,*) ' bathy  MAX ', MAXVAL( bathy(:,:) ), ' MIN ', MINVAL( bathy(:,:) ) 
    19882003            WRITE(numout,*) ' hbatt  MAX ', MAXVAL( hbatt(:,:) ), ' MIN ', MINVAL( hbatt(:,:) ) 
     
    20452060      hiff(:,:) = MIN( hiff(:,:), hbatf(:,:) ) 
    20462061 
    2047       IF( nprint == 1 .AND. lwp )   THEN 
     2062      IF( nprint > 3 .AND. lwp )   THEN 
    20482063         WRITE(numout,*) ' MAX val hif   t ', MAXVAL( hift (:,:) ), ' f ', MAXVAL( hiff (:,:) ),  & 
    20492064            &                        ' u ',   MAXVAL( hifu (:,:) ), ' v ', MAXVAL( hifv (:,:) ) 
     
    21392154         END DO 
    21402155      END DO 
    2141       IF( nprint == 1 .AND. lwp ) WRITE(numout,*) ' MIN val mbathy h90 ', MINVAL( mbathy(:,:) ),   & 
     2156      IF( nprint > 3 .AND. lwp ) WRITE(numout,*) ' MIN val mbathy h90 ', MINVAL( mbathy(:,:) ),   & 
    21422157         &                                                       ' MAX ', MAXVAL( mbathy(:,:) ) 
    21432158 
    2144       IF( nprint == 1  .AND. lwp )   THEN         ! min max values over the local domain 
     2159      IF( nprint > 3  .AND. lwp )   THEN         ! min max values over the local domain 
    21452160         WRITE(numout,*) ' MIN val mbathy  ', MINVAL( mbathy(:,:)    ), ' MAX ', MAXVAL( mbathy(:,:) ) 
    21462161         WRITE(numout,*) ' MIN val depth t ', MINVAL( gdept_0(:,:,:) ),   & 
     
    22362251      END DO 
    22372252      ! 
     2253      IF(lwp .AND. lflush) CALL flush(numout) 
     2254      ! 
    22382255      CALL wrk_dealloc( jpi, jpj, zenv, ztmp, zmsk, zri, zrj, zhbat , ztmpi1, ztmpi2, ztmpj1, ztmpj2 ) 
    22392256      ! 
     
    25062523        z_gsigt(jk) = -fssig( REAL(jk,wp)        ) 
    25072524      END DO 
    2508       IF( nprint == 1 .AND. lwp )   WRITE(numout,*) 'z_gsigw 1 jpk    ', z_gsigw(1), z_gsigw(jpk) 
     2525      IF( nprint > 3 .AND. lwp )   WRITE(numout,*) 'z_gsigw 1 jpk    ', z_gsigw(1), z_gsigw(jpk) 
    25092526      ! 
    25102527      ! Coefficients for vertical scale factors at w-, t- levels 
     
    25462563         END DO 
    25472564      END DO 
     2565 
     2566      IF(lwp .AND. lflush) CALL flush(numout) 
    25482567 
    25492568      CALL wrk_dealloc( jpk, z_gsigw, z_gsigt, z_gsi3w                                      ) 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DOM/dtatsd.F90

    r6486 r11101  
    7777      READ  ( numnam_cfg, namtsd, IOSTAT = ios, ERR = 902 ) 
    7878902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtsd in configuration namelist', lwp ) 
    79       IF(lwm) WRITE ( numond, namtsd ) 
     79      IF(lwm .AND. nprint > 2) WRITE ( numond, namtsd ) 
    8080 
    8181      IF( PRESENT( ld_tradmp ) )   ln_tsd_tradmp = .TRUE.     ! forces the initialization when tradmp is used 
     
    9393            WRITE(numout,*) '   T & S data not used' 
    9494         ENDIF 
     95         IF(lflush) CALL flush(numout) 
    9596      ENDIF 
    9697      ! 
     
    216217            WRITE(numout,*) 
    217218            WRITE(numout,*) 'dta_tsd: interpolates T & S data onto the s- or mixed s-z-coordinate mesh' 
     219            IF(lflush) CALL flush(numout) 
    218220         ENDIF 
    219221         ! 
     
    275277      ENDIF 
    276278      ! 
    277       IF( lwp .AND. kt == nit000 ) THEN 
     279      IF( lwp .AND. kt == nit000 .AND. nprint > 1) THEN 
    278280         WRITE(numout,*) ' temperature Levitus ' 
    279281         WRITE(numout,*) 
     
    294296         CALL prihre( ptsd(:,:,jpkm1,jp_sal), jpi, jpj, 1, jpi, 20, 1, jpj, 20, 1., numout ) 
    295297         WRITE(numout,*) 
     298         IF(lflush) CALL flush(numout) 
    296299      ENDIF 
    297300      ! 
     
    299302         !                                              (data used only for initialisation) 
    300303         IF(lwp) WRITE(numout,*) 'dta_tsd: deallocte T & S arrays as they are only use to initialize the run' 
     304         IF(lwp .AND. lflush) CALL flush(numout) 
    301305                                        DEALLOCATE( sf_tsd(jp_tem)%fnow )     ! T arrays in the structure 
    302306         IF( sf_tsd(jp_tem)%ln_tint )   DEALLOCATE( sf_tsd(jp_tem)%fdta ) 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DOM/istate.F90

    r6486 r11101  
    7979      IF(lwp) WRITE(numout,*) 'istate_ini : Initialization of the dynamics and tracers' 
    8080      IF(lwp) WRITE(numout,*) '~~~~~~~~~~' 
     81      IF(lwp .AND. lflush) CALL flush(numout) 
    8182 
    8283      CALL dta_tsd_init                       ! Initialisation of T & S input data 
     
    209210      IF(lwp) WRITE(numout,*) 'istate_t_s : Philander s initial temperature profile' 
    210211      IF(lwp) WRITE(numout,*) '~~~~~~~~~~   and constant salinity (',zsal,' psu)' 
     212      IF(lwp .AND. lflush) CALL flush(numout) 
    211213      ! 
    212214      DO jk = 1, jpk 
     
    359361            ! 
    360362      END SELECT 
     363      ! 
     364      IF(lwp .AND. lflush) CALL flush(numout) 
    361365      ! 
    362366   END SUBROUTINE istate_eel 
     
    443447      ENDIF 
    444448      ! 
     449      IF(lwp .AND. lflush) CALL flush(numout) 
     450      ! 
    445451   END SUBROUTINE istate_gyre 
    446452 
     
    566572      CALL wrk_dealloc( jpi, jpj, jpk, zprn) 
    567573      ! 
     574      IF(lwp .AND. lflush) CALL flush(numout) 
     575      ! 
    568576   END SUBROUTINE istate_uvg 
    569577 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DOM/phycst.F90

    r6488 r11101  
    207207         WRITE(numout,*) 
    208208         WRITE(numout,*) '          smallest real computer value       rsmall = ', rsmall 
     209         IF(lflush) CALL flush(numout) 
    209210      ENDIF 
    210211 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DYN/divcur.F90

    r6487 r11101  
    104104         IF(lwp) WRITE(numout,*) 'div_cur : horizontal velocity divergence and relative vorticity' 
    105105         IF(lwp) WRITE(numout,*) '~~~~~~~   NOT optimal for auto-tasking case' 
     106         IF(lwp .AND. lflush) CALL flush(numout) 
    106107      ENDIF 
    107108 
     
    285286         IF(lwp) WRITE(numout,*) 'div_cur : horizontal velocity divergence and' 
    286287         IF(lwp) WRITE(numout,*) '~~~~~~~   relative vorticity' 
     288         IF(lwp .AND. lflush) CALL flush(numout) 
    287289      ENDIF 
    288290 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DYN/dynadv.F90

    r6486 r11101  
    108108      READ  ( numnam_cfg, namdyn_adv, IOSTAT = ios, ERR = 902 ) 
    109109902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_adv in configuration namelist', lwp ) 
    110       IF(lwm) WRITE ( numond, namdyn_adv ) 
     110      IF(lwm .AND. nprint > 2) WRITE ( numond, namdyn_adv ) 
    111111 
    112112      IF(lwp) THEN                    ! Namelist print 
     
    152152         IF( nadv ==  3 )   WRITE(numout,*) '         flux form   : UBS       scheme is used' 
    153153         IF( nadv == -1 )   WRITE(numout,*) '         esopa test: use all advection formulation' 
     154         IF(lflush) CALL flush(numout) 
    154155      ENDIF 
    155156      ! 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DYN/dynadv_cen2.F90

    r6486 r11101  
    6666         WRITE(numout,*) 'dyn_adv_cen2 : 2nd order flux form momentum advection' 
    6767         WRITE(numout,*) '~~~~~~~~~~~~' 
     68         IF(lflush) CALL flush(numout) 
    6869      ENDIF 
    6970      ! 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DYN/dynadv_ubs.F90

    r6486 r11101  
    9090         IF(lwp) WRITE(numout,*) 'dyn_adv_ubs : UBS flux form momentum advection' 
    9191         IF(lwp) WRITE(numout,*) '~~~~~~~~~~~' 
     92         IF(lwp .AND. lflush) CALL flush(numout) 
    9293      ENDIF 
    9394      ! 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DYN/dynhpg.F90

    r8447 r11101  
    136136         IF(lwp) THEN  
    137137         WRITE(numout,*) " ! restore original density" 
     138         IF(lflush) CALL flush(numout) 
    138139         ENDIF 
    139140         rhd(:,:,:) = z_rhd_st(:,:,:)     ! restore original density 
     
    176177      READ  ( numnam_cfg, namdyn_hpg, IOSTAT = ios, ERR = 902 ) 
    177178902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_hpg in configuration namelist', lwp ) 
    178       IF(lwm) WRITE ( numond, namdyn_hpg ) 
     179      IF(lwm .AND. nprint > 2) WRITE ( numond, namdyn_hpg ) 
    179180      ! 
    180181      IF(lwp) THEN                   ! Control print 
     
    190191         WRITE(numout,*) '      s-coord. (Pressure Jacobian: Cubic polynomial)    ln_hpg_prj    = ', ln_hpg_prj 
    191192         WRITE(numout,*) '      time stepping: centered (F) or semi-implicit (T)  ln_dynhpg_imp = ', ln_dynhpg_imp 
     193         IF(lflush) CALL flush(numout) 
    192194      ENDIF 
    193195      ! 
     
    260262         IF(lwp) WRITE(numout,*) 'dyn:hpg_zco : hydrostatic pressure gradient trend' 
    261263         IF(lwp) WRITE(numout,*) '~~~~~~~~~~~   z-coordinate case ' 
     264         IF(lwp .AND. lflush) CALL flush(numout) 
    262265      ENDIF 
    263266 
     
    325328         IF(lwp) WRITE(numout,*) 'dyn:hpg_zps : hydrostatic pressure gradient trend' 
    326329         IF(lwp) WRITE(numout,*) '~~~~~~~~~~~   z-coordinate with partial steps - vector optimization' 
     330         IF(lwp .AND. lflush) CALL flush(numout) 
    327331      ENDIF 
    328332 
     
    423427         IF(lwp) WRITE(numout,*) 'dyn:hpg_sco : hydrostatic pressure gradient trend' 
    424428         IF(lwp) WRITE(numout,*) '~~~~~~~~~~~   s-coordinate case, OPA original scheme used' 
     429         IF(lwp .AND. lflush) CALL flush(numout) 
    425430      ENDIF 
    426431 
     
    514519         IF(lwp) WRITE(numout,*) 'dyn:hpg_isf : hydrostatic pressure gradient trend for ice shelf' 
    515520         IF(lwp) WRITE(numout,*) '~~~~~~~~~~~   s-coordinate case, OPA original scheme used' 
     521         IF(lwp .AND. lflush) CALL flush(numout) 
    516522      ENDIF 
    517523 
     
    768774         IF(lwp) WRITE(numout,*) 'dyn:hpg_djc : hydrostatic pressure gradient trend' 
    769775         IF(lwp) WRITE(numout,*) '~~~~~~~~~~~   s-coordinate case, density Jacobian with cubic polynomial scheme' 
     776         IF(lwp .AND. lflush) CALL flush(numout) 
    770777      ENDIF 
    771778 
     
    10011008         IF(lwp) WRITE(numout,*) 'dyn:hpg_prj : hydrostatic pressure gradient trend' 
    10021009         IF(lwp) WRITE(numout,*) '~~~~~~~~~~~   s-coordinate case, cubic spline pressure Jacobian' 
     1010         IF(lwp .AND. lflush) CALL flush(numout) 
    10031011      ENDIF 
    10041012 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DYN/dynkeg.F90

    r6486 r11101  
    8888         IF(lwp) WRITE(numout,*) 'dyn_keg : kinetic energy gradient trend, scheme number=', kscheme 
    8989         IF(lwp) WRITE(numout,*) '~~~~~~~' 
     90         IF(lflush) CALL flush(numout) 
    9091      ENDIF 
    9192 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DYN/dynldf.F90

    r6486 r11101  
    100100            IF(lwp) WRITE(numout,*) 'dyn_ldf : no lateral diffusion on momentum setup' 
    101101            IF(lwp) WRITE(numout,*) '~~~~~~~ ' 
     102            IF(lflush) CALL flush(numout) 
    102103         ENDIF 
    103104      END SELECT 
     
    139140         WRITE(numout,*) '          horizontal (geopotential)   ln_dynldf_hor   = ', ln_dynldf_hor 
    140141         WRITE(numout,*) '          iso-neutral                 ln_dynldf_iso   = ', ln_dynldf_iso 
     142         IF(lflush) CALL flush(numout) 
    141143      ENDIF 
    142144 
     
    229231         IF( nldf ==  4 )   WRITE(numout,*) '              laplacian and bilaplacian operators' 
    230232         IF( nldf ==  5 )   WRITE(numout,*) '              rotated laplacian and bilaplacian operators' 
     233         IF(lflush) CALL flush(numout) 
    231234      ENDIF 
    232235      ! 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DYN/dynldf_bilap.F90

    r6486 r11101  
    9090         WRITE(numout,*) 'dyn_ldf_bilap : iso-level bilaplacian operator' 
    9191         WRITE(numout,*) '~~~~~~~~~~~~~' 
     92         IF(lwp .AND. lflush) CALL flush(numout) 
    9293      ENDIF 
    9394 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DYN/dynldf_bilapg.F90

    r8280 r11101  
    9898         IF(lwp) WRITE(numout,*) 'dyn_ldf_bilapg : horizontal biharmonic operator in s-coordinate' 
    9999         IF(lwp) WRITE(numout,*) '~~~~~~~~~~~~~~' 
     100         IF(lwp .AND. lflush) CALL flush(numout) 
    100101         !                                      ! allocate dyn_ldf_bilapg arrays 
    101102         IF( dyn_ldf_bilapg_alloc() /= 0 )   CALL ctl_stop('STOP', 'dyn_ldf_bilapg: failed to allocate arrays') 
     
    123124            IF(lwp) WRITE(numout,*) ' max slop: u', SQRT( MAXVAL(uslp*uslp)), ' v ', SQRT(MAXVAL(vslp)),  & 
    124125               &                             ' wi', sqrt(MAXVAL(wslpi))     , ' wj', sqrt(MAXVAL(wslpj)) 
     126            IF(lwp .AND. lflush) CALL flush(numout) 
    125127         endif 
    126128!!end 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DYN/dynldf_iso.F90

    r6486 r11101  
    127127         IF(lwp) WRITE(numout,*) '~~~~~~~~~~~   s-coordinate horizontal diffusive operator' 
    128128         !                                      ! allocate dyn_ldf_bilap arrays 
     129         IF(lflush) CALL flush(numout) 
    129130         IF( dyn_ldf_iso_alloc() /= 0 )   CALL ctl_stop('STOP', 'dyn_ldf_iso: failed to allocate arrays') 
    130131      ENDIF 
     
    151152            IF(lwp) WRITE(numout,*) ' max slop: u', SQRT( MAXVAL(uslp*uslp)), ' v ', SQRT(MAXVAL(vslp)),  & 
    152153               &                             ' wi', sqrt(MAXVAL(wslpi))     , ' wj', sqrt(MAXVAL(wslpj)) 
     154            IF(lwp .AND. lflush) CALL flush(numout) 
    153155         endif 
    154156!!end 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DYN/dynldf_lap.F90

    r6486 r11101  
    7070         IF(lwp) WRITE(numout,*) 'dyn_ldf : iso-level harmonic (laplacian) operator' 
    7171         IF(lwp) WRITE(numout,*) '~~~~~~~ ' 
     72         IF(lflush) CALL flush(numout) 
    7273      ENDIF 
    7374      !                                                ! =============== 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DYN/dynnept.F90

    r6486 r11101  
    126126      READ  ( numnam_cfg, namdyn_nept, IOSTAT = ios, ERR = 902 ) 
    127127902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_nept in configuration namelist', lwp ) 
    128       IF(lwm) WRITE ( numond, namdyn_nept ) 
     128      IF(lwm .AND. nprint > 2) WRITE ( numond, namdyn_nept ) 
    129129 
    130130      IF(lwp) THEN                      ! Control print 
     
    145145            WRITE(numout,*) 
    146146         ENDIF 
     147         IF(lflush) CALL flush(numout) 
    147148      ENDIF 
    148149      ! 
     
    304305      CALL lbc_lnk( zunep, 'U', -1.0_wp ) 
    305306      CALL lbc_lnk( zvnep, 'V', -1.0_wp ) 
    306       WRITE(numout,*) '      zunep: min, max       = ', unemin,unemax 
    307       WRITE(numout,*) '      zvnep: min, max       = ', vnemin,vnemax 
    308       WRITE(numout,*) 
     307      IF(lwp .AND. nprint > 0) THEN 
     308         WRITE(numout,*) '      zunep: min, max       = ', unemin,unemax 
     309         WRITE(numout,*) '      zvnep: min, max       = ', vnemin,vnemax 
     310         WRITE(numout,*) 
     311      ENDIF 
    309312 
    310313      !!  Compute, once and for all, the horizontal divergence (zhdivnep) 
     
    328331         END DO 
    329332      END DO 
    330       WRITE(numout,*) '   zhdivnep: min, max       = ', zhdivmin,zhdivmax 
    331       WRITE(numout,*) '   zmrotnep: min, max       = ', zmrotmin,zmrotmax 
    332       WRITE(numout,*) 
     333 
     334      IF(lwp .AND. nprint > 0) THEN 
     335         WRITE(numout,*) '   zhdivnep: min, max       = ', zhdivmin,zhdivmax 
     336         WRITE(numout,*) '   zmrotnep: min, max       = ', zmrotmin,zmrotmax 
     337         WRITE(numout,*) 
     338         IF(lflush) CALL flush(numout) 
     339      ENDIF 
    333340 
    334341!!    Deallocate temporary workspace arrays, which are all local to 
     
    384391      IF(lwp) WRITE(numout,*) 'horizontal velocity divergence and' 
    385392      IF(lwp) WRITE(numout,*) 'relative vorticity of Neptune flow' 
     393      IF(lwp .AND. lflush) CALL flush(numout) 
    386394#if defined key_noslip_accurate 
    387395   !!---------------------------------------------------------------------- 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DYN/dynnxt.F90

    r6487 r11101  
    119119         IF(lwp) WRITE(numout,*) 'dyn_nxt : time stepping' 
    120120         IF(lwp) WRITE(numout,*) '~~~~~~~' 
     121         IF(lflush) CALL flush(numout) 
    121122      ENDIF 
    122123 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DYN/dynspg.F90

    r6486 r11101  
    231231         WRITE(numout,*) '     Free surface with time splitting       lk_dynspg_ts  = ', lk_dynspg_ts 
    232232         WRITE(numout,*) '     Filtered free surface cst volume       lk_dynspg_flt = ', lk_dynspg_flt 
     233         IF(lflush) CALL flush(numout) 
    233234      ENDIF 
    234235 
     
    266267         IF( nspg ==  1 )   WRITE(numout,*) '     free surface with time splitting scheme' 
    267268         IF( nspg ==  2 )   WRITE(numout,*) '     filtered free surface' 
     269         IF(lflush) CALL flush(numout) 
    268270      ENDIF 
    269271 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DYN/dynspg_exp.F90

    r9583 r11101  
    7575         ! 
    7676         IF( lk_vvl .AND. lwp ) WRITE(numout,*) '              lk_vvl=T : spg is included in dynhpg' 
     77         IF(lflush) CALL flush(numout) 
    7778      ENDIF 
    7879 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DYN/dynspg_flt.F90

    r9321 r11101  
    120120         IF(lwp) WRITE(numout,*) 'dyn_spg_flt : surface pressure gradient trend' 
    121121         IF(lwp) WRITE(numout,*) '~~~~~~~~~~~   (free surface constant volume case)' 
     122         IF(lwp .AND. lflush) CALL flush(numout) 
    122123        
    123124         ! set to zero free surface specific arrays 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DYN/dynspg_ts.F90

    r9321 r11101  
    195195         IF(lwp) WRITE(numout,*) '~~~~~~~~~~   free surface with time splitting' 
    196196         IF(lwp) WRITE(numout,*) 
     197         IF(lflush) CALL flush(numout) 
    197198         ! 
    198199         IF (neuler==0) ll_init=.TRUE. 
     
    10881089      READ  ( numnam_cfg, namsplit, IOSTAT = ios, ERR = 902 ) 
    10891090902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsplit in configuration namelist', lwp ) 
    1090       IF(lwm) WRITE ( numond, namsplit ) 
     1091      IF(lwm .AND. nprint > 2) WRITE ( numond, namsplit ) 
    10911092      ! 
    10921093      !         ! Max courant number for ext. grav. waves 
     
    11611162      IF(lwp) WRITE(numout,*) '     Barotropic time step [s] is :', rdtbt 
    11621163      IF(lwp) WRITE(numout,*) '     Maximum Courant number is   :', zcmax 
     1164      IF(lwp .AND. lflush) CALL flush(numout) 
    11631165      ! 
    11641166      IF ((.NOT.ln_bt_av).AND.(.NOT.ln_bt_fw)) THEN 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DYN/dynvor.F90

    r8280 r11101  
    234234         IF(lwp) WRITE(numout,*) 'dyn:vor_ene : vorticity term: energy conserving scheme' 
    235235         IF(lwp) WRITE(numout,*) '~~~~~~~~~~~' 
     236         IF(lflush) CALL flush(numout) 
    236237      ENDIF 
    237238 
     
    346347         IF(lwp) WRITE(numout,*) 'dyn:vor_mix : vorticity term: mixed energy/enstrophy conserving scheme' 
    347348         IF(lwp) WRITE(numout,*) '~~~~~~~~~~~' 
     349         IF(lflush) CALL flush(numout) 
    348350      ENDIF 
    349351 
     
    463465         IF(lwp) WRITE(numout,*) 'dyn:vor_ens : vorticity term: enstrophy conserving scheme' 
    464466         IF(lwp) WRITE(numout,*) '~~~~~~~~~~~' 
     467         IF(lflush) CALL flush(numout) 
    465468      ENDIF 
    466469 
     
    587590         IF(lwp) WRITE(numout,*) 'dyn:vor_een : vorticity term: energy and enstrophy conserving scheme' 
    588591         IF(lwp) WRITE(numout,*) '~~~~~~~~~~~' 
     592         IF(lflush) CALL flush(numout) 
    589593#if ! defined key_vvl 
    590594         IF( .NOT.ALLOCATED(ze3f) ) THEN 
     
    731735      READ  ( numnam_cfg, namdyn_vor, IOSTAT = ios, ERR = 902 ) 
    732736902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_vor in configuration namelist', lwp ) 
    733       IF(lwm) WRITE ( numond, namdyn_vor ) 
     737      IF(lwm .AND. nprint >2) WRITE ( numond, namdyn_vor ) 
    734738 
    735739      IF(lwp) THEN                    ! Namelist print 
     
    743747         WRITE(numout,*) '           enstrophy and energy conserving scheme     ln_dynvor_een = ', ln_dynvor_een 
    744748         WRITE(numout,*) '           enstrophy and energy conserving scheme (old) ln_dynvor_een_old= ', ln_dynvor_een_old 
     749         IF(lflush) CALL flush(numout) 
    745750      ENDIF 
    746751 
     
    798803         IF( nvor ==  3 )   WRITE(numout,*) '         vorticity scheme : energy and enstrophy conserving scheme' 
    799804         IF( nvor == -1 )   WRITE(numout,*) '         esopa test: use all lateral physics options' 
     805         IF(lflush) CALL flush(numout) 
    800806      ENDIF 
    801807      ! 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DYN/dynzad.F90

    r6486 r11101  
    7474         IF(lwp)WRITE(numout,*) 
    7575         IF(lwp)WRITE(numout,*) 'dyn_zad : arakawa advection scheme' 
     76         IF(lwp .AND. lflush) CALL flush(numout) 
    7677      ENDIF 
    7778 
     
    188189         IF(lwp)WRITE(numout,*) 
    189190         IF(lwp)WRITE(numout,*) 'dyn_zad_zts : arakawa advection scheme with sub-timesteps' 
     191         IF(lwp .AND. lflush) CALL flush(numout) 
    190192      ENDIF 
    191193 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DYN/dynzdf.F90

    r6486 r11101  
    136136         IF( nzdf ==  0 )   WRITE(numout,*) '              Explicit time-splitting scheme' 
    137137         IF( nzdf ==  1 )   WRITE(numout,*) '              Implicit (euler backward) scheme' 
     138         IF(lflush) CALL flush(numout) 
    138139      ENDIF 
    139140      ! 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DYN/dynzdf_exp.F90

    r6486 r11101  
    7373         WRITE(numout,*) 'dyn_zdf_exp : vertical momentum diffusion - explicit operator' 
    7474         WRITE(numout,*) '~~~~~~~~~~~ ' 
     75         IF(lflush) CALL flush(numout) 
    7576      ENDIF 
    7677 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DYN/dynzdf_imp.F90

    r6795 r11101  
    8181         IF(lwp) WRITE(numout,*) 'dyn_zdf_imp : vertical momentum diffusion implicit operator' 
    8282         IF(lwp) WRITE(numout,*) '~~~~~~~~~~~ ' 
     83         IF(lwp .AND. lflush) CALL flush(numout) 
    8384         ! 
    8485         IF( lk_vvl ) THEN   ;    r_vvl = 1._wp       ! Variable volume indicator 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/DYN/sshwzv.F90

    r8400 r11101  
    8787         IF(lwp) WRITE(numout,*) 'ssh_nxt : after sea surface height' 
    8888         IF(lwp) WRITE(numout,*) '~~~~~~~ ' 
     89         IF(lwp .AND. lflush) CALL flush(numout) 
    8990         ! 
    9091      ENDIF 
     
    184185         IF(lwp) WRITE(numout,*) 'wzv : now vertical velocity ' 
    185186         IF(lwp) WRITE(numout,*) '~~~~~ ' 
     187         IF(lwp .AND. lflush) CALL flush(numout) 
    186188         ! 
    187189         wn(:,:,jpk) = 0._wp                  ! bottom boundary condition: w=0 (set once for all) 
     
    265267         IF(lwp) WRITE(numout,*) 'ssh_swp : Asselin time filter and swap of sea surface height' 
    266268         IF(lwp) WRITE(numout,*) '~~~~~~~ ' 
     269         IF(lwp .AND. lflush) CALL flush(numout) 
    267270      ENDIF 
    268271 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/FLO/floats.F90

    r9583 r11101  
    9696      READ  ( numnam_cfg, namflo, IOSTAT = ios, ERR = 902 ) 
    9797902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namflo in configuration namelist', lwp ) 
    98       IF(lwm) WRITE ( numond, namflo ) 
     98      IF(lwm .AND. nprint > 2) WRITE ( numond, namflo ) 
    9999      ! 
    100100      IF(lwp) THEN                  ! control print 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/FLO/flodom.F90

    r6486 r11101  
    6565      IF(lwp) WRITE(numout,*) '~~~~~~~~' 
    6666      IF(lwp) WRITE(numout,*) '           jpnfl = ',jpnfl 
     67      IF(lwp .AND. lflush) CALL flush(numout) 
    6768       
    6869      !-------------------------! 
     
    7273 
    7374         IF(lwp) WRITE(numout,*) '        float restart file read' 
     75         IF(lwp .AND. lflush) CALL flush(numout) 
    7476          
    7577         ! open the restart file  
     
    9395 
    9496            IF(lwp) WRITE(numout,*) '        add new floats' 
     97            IF(lwp .AND. lflush) CALL flush(numout) 
    9598 
    9699            IF( ln_ariane )THEN  !Add new floats with ariane convention 
     
    148151      DO jfl = kfl_start,kfl_end 
    149152         READ(inum,*) flxx(jfl),flyy(jfl),flzz(jfl), nisobfl(jfl),ngrpfl(jfl),itrash 
    150          if(lwp)write(numout,*)'read:',jfl,flxx(jfl),flyy(jfl),flzz(jfl), nisobfl(jfl),ngrpfl(jfl),itrash ; call flush(numout) 
     153         IF (lwp) THEN 
     154            write(numout,*)'read:',jfl,flxx(jfl),flyy(jfl),flzz(jfl), nisobfl(jfl),ngrpfl(jfl),itrash 
     155            IF(lflush) CALL flush(numout) 
     156         ENDIF 
    151157      END DO 
    152158      CLOSE(inum) 
     
    275281               IF(lwp) WRITE(numout,*)'geographical position',flxx(jfl),flyy(jfl),flzz(jfl) 
    276282               IF(lwp) WRITE(numout,*)'index position',tpifl(jfl),tpjfl(jfl),tpkfl(jfl) 
     283               IF(lwp .AND. lflush) CALL flush(numout) 
    277284            ENDIF 
    278285         END DO 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/ICB/icbclv.F90

    r8046 r11101  
    5656      INTEGER                         :: imx                           ! temporary integer for max berg class 
    5757      LOGICAL, SAVE                   :: ll_first_call = .TRUE. 
     58      LOGICAL                         :: ll_write 
    5859      !!---------------------------------------------------------------------- 
    5960      ! 
     
    6869      ! nn_coupled_iceshelf_fluxes uninitialised unless lk_oasis=true 
    6970      IF( nn_coupled_iceshelf_fluxes .gt. 0 ) THEN 
    70  
     71        ll_write = ( MOD( kt, sn_cfctl%ptimincr ) == 0 ) .OR. ( kt == nitend ) .AND. lwp 
    7172        ! Adjust total calving rates so that sum of iceberg calving and iceshelf melting in the northern 
    7273        ! and southern hemispheres equals rate of increase of mass of greenland and antarctic ice sheets 
     
    8081 
    8182         ! check 
    82          IF(lwp) WRITE(numout, *) 'Greenland iceberg calving climatology (kg/s) : ',zgreenland_calving_sum 
     83         IF(ll_write) WRITE(numout, *) 'Greenland iceberg calving climatology (kg/s) : ',zgreenland_calving_sum 
    8384         zgreenland_calving_sum = SUM( berg_grid%calving(:,:) * greenland_icesheet_mask(:,:) ) 
    8485         IF( lk_mpp ) CALL mpp_sum( zgreenland_calving_sum ) 
    85          IF(lwp) WRITE(numout, *) 'Greenland iceberg calving adjusted value (kg/s) : ',zgreenland_calving_sum 
     86         IF(ll_write) WRITE(numout, *) 'Greenland iceberg calving adjusted value (kg/s) : ',zgreenland_calving_sum 
    8687 
    8788         zantarctica_calving_sum = SUM( berg_grid%calving(:,:) * antarctica_icesheet_mask(:,:) ) 
     
    9293  
    9394         ! check 
    94          IF(lwp) WRITE(numout, *) 'Antarctica iceberg calving climatology (kg/s) : ',zantarctica_calving_sum 
     95         IF(ll_write) WRITE(numout, *) 'Antarctica iceberg calving climatology (kg/s) : ',zantarctica_calving_sum 
    9596         zantarctica_calving_sum = SUM( berg_grid%calving(:,:) * antarctica_icesheet_mask(:,:) ) 
    9697         IF( lk_mpp ) CALL mpp_sum( zantarctica_calving_sum ) 
    97          IF(lwp) WRITE(numout, *) 'Antarctica iceberg calving adjusted value (kg/s) : ',zantarctica_calving_sum 
     98         IF(ll_write) WRITE(numout, *) 'Antarctica iceberg calving adjusted value (kg/s) : ',zantarctica_calving_sum 
    9899 
    99100      ENDIF 
     
    218219      CALL lbc_lnk( berg_grid%stored_heat, 'T', 1._wp ) 
    219220      ! 
    220       IF( nn_verbose_level > 0 .AND. icntmax > 1 )   WRITE(numicb,*) 'icb_clv: icnt=', icnt,' on', narea 
     221      IF( nn_verbose_level > 0 .AND. icntmax > 1 .AND. numicb.NE.-1)   WRITE(numicb,*) 'icb_clv: icnt=', icnt,' on', narea 
    221222      ! 
    222223   END SUBROUTINE  icb_clv 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/ICB/icbdia.F90

    r6491 r11101  
    311311                                    'returned',calving_ret_net) 
    312312         ENDIF 
    313          WRITE( numicb, '("calved by class = ",i6,20(",",i6))') (nbergs_calved_by_class(ik),ik=1,nclasses) 
    314          IF ( nspeeding_tickets > 0 ) WRITE( numicb, '("speeding tickets issued = ",i6)') nspeeding_tickets 
     313         IF(numicb.NE.-1) THEN 
     314           WRITE( numicb, '("calved by class = ",i6,20(",",i6))') (nbergs_calved_by_class(ik),ik=1,nclasses) 
     315           IF ( nspeeding_tickets > 0 ) WRITE( numicb, '("speeding tickets issued = ",i6)') nspeeding_tickets 
     316         ENDIF 
    315317 
    316318         nbergs_start              = nbergs_end 
     
    418420         stored_start = SUM( berg_grid%stored_ice(:,:,:) ) 
    419421         IF( lk_mpp ) CALL mpp_sum( stored_start ) 
    420          WRITE(numicb,'(a,es13.6,a)')   'icb_dia_income: initial stored mass=',stored_start,' kg' 
     422         IF(numicb.NE.-1) WRITE(numicb,'(a,es13.6,a)')   'icb_dia_income: initial stored mass=',stored_start,' kg' 
    421423         ! 
    422424         stored_heat_start = SUM( berg_grid%stored_heat(:,:) ) 
    423425         IF( lk_mpp ) CALL mpp_sum( stored_heat_start ) 
    424          WRITE(numicb,'(a,es13.6,a)')    'icb_dia_income: initial stored heat=',stored_heat_start,' J' 
     426         IF(numicb.NE.-1) WRITE(numicb,'(a,es13.6,a)')    'icb_dia_income: initial stored heat=',stored_heat_start,' J' 
    425427      ENDIF 
    426428      ! 
     
    495497      ! 
    496498      IF ( PRESENT(kbergs) ) THEN 
    497          WRITE(numicb,100) cd_budgetstr // ' state:',                                    & 
     499         IF(numicb.NE.-1) &  
     500                     WRITE(numicb,100) cd_budgetstr // ' state:',                        & 
    498501                           cd_startstr  // ' start',  pstartval,         cd_budgetunits, & 
    499502                           cd_endstr    // ' end',    pendval,           cd_budgetunits, & 
     
    501504                           '# of bergs', kbergs 
    502505      ELSE 
    503          WRITE(numicb,100) cd_budgetstr // ' state:',                                   & 
     506         IF(numicb.NE.-1) & 
     507                     WRITE(numicb,100) cd_budgetstr // ' state:',                       & 
    504508                           cd_startstr  // ' start', pstartval,         cd_budgetunits, & 
    505509                           cd_endstr    // ' end',   pendval,           cd_budgetunits, & 
     
    517521      !!---------------------------------------------------------------------- 
    518522      ! 
    519       WRITE(numicb,200) cd_budgetstr // ' check:',                 & 
     523      IF(numicb.NE.-1) & 
     524                  WRITE(numicb,200) cd_budgetstr // ' check:',     & 
    520525                        cd_startstr,    pstartval, cd_budgetunits, & 
    521526                        cd_endstr,      pendval,   cd_budgetunits, & 
     
    538543         &   MAX( 1.e-30, MAX( abs( pendval - pstartval ) , ABS( pinval - poutval ) ) ) 
    539544 
    540       WRITE(numicb,200) cd_budgetstr // ' budget:', & 
     545      IF(numicb.NE.-1) & 
     546         &        WRITE(numicb,200) cd_budgetstr // ' budget:',                     & 
    541547         &              cd_instr     // ' in',      pinval,         cd_budgetunits, & 
    542548         &              cd_outstr    // ' out',     poutval,        cd_budgetunits, & 
     
    554560      INTEGER,       INTENT(in) :: pstartval, pendval 
    555561      ! 
    556       WRITE(numicb,100) cd_budgetstr // ' state:',           & 
     562      IF(numicb.NE.-1) & 
     563         &        WRITE(numicb,100) cd_budgetstr // ' state:',           & 
    557564         &              cd_startstr  // ' start', pstartval, & 
    558565         &              cd_endstr    // ' end',   pendval,   & 
     
    571578      !!---------------------------------------------------------------------- 
    572579      ! 
    573       WRITE(numicb,200) cd_budgetstr // ' budget:', & 
     580      IF(numicb.NE.-1) & 
     581         &        WRITE(numicb,200) cd_budgetstr // ' budget:', & 
    574582                        cd_instr     // ' in',      pinval, & 
    575583                        cd_outstr    // ' out',     poutval, & 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/ICB/icbdyn.F90

    r6486 r11101  
    371371      ENDIF 
    372372      !                                      ! check the speed and acceleration limits 
    373       IF( ABS( zuveln ) > pp_vel_lim   .OR. ABS( zvveln ) > pp_vel_lim   )   & 
    374          WRITE(numicb,'("pe=",i3,x,a)') narea,'Dump triggered by excessive velocity' 
    375       IF( ABS( pax    ) > pp_accel_lim .OR. ABS( pay    ) > pp_accel_lim )   & 
    376          WRITE(numicb,'("pe=",i3,x,a)') narea,'Dump triggered by excessive acceleration' 
     373      IF( ABS( zuveln ) > pp_vel_lim   .OR. ABS( zvveln ) > pp_vel_lim   ) THEN 
     374        IF(numicb.NE.-1) THEN 
     375           WRITE(numicb,'("pe=",i3,x,a)') narea,'Dump triggered by excessive velocity' 
     376           CALL flush(numicb) 
     377        ELSE 
     378           WRITE(*,'("pe=",i3,x,a)') narea,'Dump triggered by excessive velocity'  
     379           CALL flush(6) 
     380        ENDIF 
     381      ENDIF 
     382      IF( ABS( pax    ) > pp_accel_lim .OR. ABS( pay    ) > pp_accel_lim ) THEN 
     383         IF(numicb.NE.-1) THEN 
     384            WRITE(numicb,'("pe=",i3,x,a)') narea,'Dump triggered by excessive acceleration' 
     385            CALL flush(numicb) 
     386         ELSE 
     387            WRITE(*,'("pe=",i3,x,a)') narea,'Dump triggered by excessive acceleration' 
     388            CALL flush(6) 
     389        ENDIF 
     390      ENDIF 
    377391      ! 
    378392   END SUBROUTINE icb_accel 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/ICB/icbini.F90

    r6823 r11101  
    7878      !                          ! note that we choose to do this on all processors since we cannot 
    7979      !                          ! predict where icebergs will be ahead of time 
    80       CALL ctl_opn( numicb, 'icebergs.stat', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp, narea ) 
     80      numicb=-1 
     81      IF(nn_verbose_level>0 .AND. nprint>0) THEN 
     82        CALL ctl_opn( numicb, 'icebergs.stat', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp, narea ) 
     83      ELSE 
     84        IF(lwp) CALL ctl_opn( numicb, 'icebergs.stat', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp, narea ) 
     85      ENDIF 
    8186 
    8287      ! set parameters (mostly from namelist) 
     
    187192      ENDIF 
    188193      ! 
    189       IF( nn_verbose_level > 0) THEN 
     194      IF( nn_verbose_level > 0 .AND. numicb.NE.-1) THEN 
    190195         WRITE(numicb,*) 'processor ', narea 
    191196         WRITE(numicb,*) 'jpi, jpj   ', jpi, jpj 
     
    241246         CALL iom_close( inum )                                     ! close file 
    242247         ! 
    243          WRITE(numicb,*) 
    244          WRITE(numicb,*) '          calving read in a file' 
     248         IF(numicb.NE.-1) THEN 
     249            WRITE(numicb,*) 
     250            WRITE(numicb,*) '          calving read in a file' 
     251         ENDIF 
    245252         ALLOCATE( sf_icb(1), STAT=istat1 )         ! Create sf_icb structure (calving) 
    246253         ALLOCATE( sf_icb(1)%fnow(jpi,jpj,1), STAT=istat2 ) 
     
    336343      ibergs = icb_utl_count() 
    337344      IF( lk_mpp ) CALL mpp_sum(ibergs) 
    338       WRITE(numicb,'(a,i6,a)') 'diamonds, icb_ini_gen: ',ibergs,' were generated' 
     345      IF(numicb.NE.-1) WRITE(numicb,'(a,i6,a)') 'diamonds, icb_ini_gen: ',ibergs,' were generated' 
    339346      ! 
    340347   END SUBROUTINE icb_ini_gen 
     
    368375      READ  ( numnam_cfg, namberg, IOSTAT = ios, ERR = 902 ) 
    369376902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namberg in configuration namelist', lwp ) 
    370       IF(lwm) WRITE ( numond, namberg ) 
     377      IF(lwm .AND. nprint > 2) WRITE ( numond, namberg ) 
    371378#else 
    372379      IF(lwp) THEN 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/ICB/icblbc.F90

    r6486 r11101  
    197197      ENDIF 
    198198 
    199       IF( nn_verbose_level >= 2 ) THEN 
     199      IF( nn_verbose_level >= 2 .AND. numicb .NE. -1) THEN 
    200200         WRITE(numicb,*) 'processor west  : ', ipe_W 
    201201         WRITE(numicb,*) 'processor east  : ', ipe_E 
     
    240240               this => this%next 
    241241               ibergs_to_send_e = ibergs_to_send_e + 1 
    242                IF( nn_verbose_level >= 4 ) THEN 
     242               IF( nn_verbose_level >= 4 .AND. numicb .NE. -1) THEN 
    243243                  WRITE(numicb,*) 'bergstep ',nktberg,' packing berg ',tmpberg%number(:),' for transfer to east' 
    244244                  CALL flush( numicb ) 
     
    253253               this => this%next 
    254254               ibergs_to_send_w = ibergs_to_send_w + 1 
    255                IF( nn_verbose_level >= 4 ) THEN 
     255               IF( nn_verbose_level >= 4 .AND. numicb.NE.-1) THEN 
    256256                  WRITE(numicb,*) 'bergstep ',nktberg,' packing berg ',tmpberg%number(:),' for transfer to west' 
    257257                  CALL flush( numicb ) 
     
    267267         END DO 
    268268      ENDIF 
    269       IF( nn_verbose_level >= 3) THEN 
     269      IF( nn_verbose_level >= 3 .AND. numicb .NE. -1) THEN 
    270270         WRITE(numicb,*) 'bergstep ',nktberg,' send ew: ', ibergs_to_send_e, ibergs_to_send_w 
    271271         CALL flush(numicb) 
     
    301301         ibergs_rcvd_from_w = INT( zwebergs(2) ) 
    302302      END SELECT 
    303       IF( nn_verbose_level >= 3) THEN 
     303      IF( nn_verbose_level >= 3 .AND. numicb .NE. -1) THEN 
    304304         WRITE(numicb,*) 'bergstep ',nktberg,' recv ew: ', ibergs_rcvd_from_w, ibergs_rcvd_from_e 
    305305         CALL flush(numicb) 
     
    315315         IF( ibergs_to_send_e > 0 .AND. l_isend ) CALL mpi_wait( iml_req1, iml_stat, iml_err ) 
    316316         DO i = 1, ibergs_rcvd_from_e 
    317             IF( nn_verbose_level >= 4 ) THEN 
     317            IF( nn_verbose_level >= 4 .AND. numicb .NE. -1) THEN 
    318318               WRITE(numicb,*) 'bergstep ',nktberg,' unpacking berg ',INT(ibuffer_e%data(16,i)),' from east' 
    319319               CALL flush( numicb ) 
     
    335335         IF( ibergs_to_send_e > 0 .AND. l_isend ) CALL mpi_wait( iml_req3, iml_stat, iml_err ) 
    336336         DO i = 1, ibergs_rcvd_from_e 
    337             IF( nn_verbose_level >= 4 ) THEN 
     337            IF( nn_verbose_level >= 4 .AND. numicb .NE. -1) THEN 
    338338               WRITE(numicb,*) 'bergstep ',nktberg,' unpacking berg ',INT(ibuffer_e%data(16,i)),' from east' 
    339339               CALL flush( numicb ) 
     
    342342         END DO 
    343343         DO i = 1, ibergs_rcvd_from_w 
    344             IF( nn_verbose_level >= 4 ) THEN 
     344            IF( nn_verbose_level >= 4 .AND. numicb .NE. -1) THEN 
    345345               WRITE(numicb,*) 'bergstep ',nktberg,' unpacking berg ',INT(ibuffer_w%data(16,i)),' from west' 
    346346               CALL flush( numicb ) 
     
    356356         IF( ibergs_to_send_w > 0 .AND. l_isend ) CALL mpi_wait( iml_req4, iml_stat, iml_err ) 
    357357         DO i = 1, ibergs_rcvd_from_w 
    358             IF( nn_verbose_level >= 4 ) THEN 
     358            IF( nn_verbose_level >= 4 .AND. numicb .NE. -1) THEN 
    359359               WRITE(numicb,*) 'bergstep ',nktberg,' unpacking berg ',INT(ibuffer_w%data(16,i)),' from west' 
    360360               CALL flush( numicb ) 
     
    378378               this => this%next 
    379379               ibergs_to_send_n = ibergs_to_send_n + 1 
    380                IF( nn_verbose_level >= 4 ) THEN 
     380               IF( nn_verbose_level >= 4 .AND. numicb .NE. -1) THEN 
    381381                  WRITE(numicb,*) 'bergstep ',nktberg,' packing berg ',tmpberg%number(:),' for transfer to north' 
    382382                  CALL flush( numicb ) 
     
    388388               this => this%next 
    389389               ibergs_to_send_s = ibergs_to_send_s + 1 
    390                IF( nn_verbose_level >= 4 ) THEN 
     390               IF( nn_verbose_level >= 4 .AND. numicb .NE. -1) THEN 
    391391                  WRITE(numicb,*) 'bergstep ',nktberg,' packing berg ',tmpberg%number(:),' for transfer to south' 
    392392                  CALL flush( numicb ) 
     
    399399         END DO 
    400400      ENDIF 
    401       if( nn_verbose_level >= 3) then 
     401      if( nn_verbose_level >= 3 .AND. numicb .NE. -1) then 
    402402         write(numicb,*) 'bergstep ',nktberg,' send ns: ', ibergs_to_send_n, ibergs_to_send_s 
    403403         call flush(numicb) 
     
    432432         ibergs_rcvd_from_s = INT( zsnbergs(2) ) 
    433433      END SELECT 
    434       if( nn_verbose_level >= 3) then 
     434      if( nn_verbose_level >= 3 .AND. numicb .NE. -1) then 
    435435         write(numicb,*) 'bergstep ',nktberg,' recv ns: ', ibergs_rcvd_from_s, ibergs_rcvd_from_n 
    436436         call flush(numicb) 
     
    446446         IF( ibergs_to_send_n > 0 .AND. l_isend ) CALL mpi_wait( iml_req1, iml_stat, iml_err ) 
    447447         DO i = 1, ibergs_rcvd_from_n 
    448             IF( nn_verbose_level >= 4 ) THEN 
     448            IF( nn_verbose_level >= 4 .AND. numicb .NE. -1) THEN 
    449449               WRITE(numicb,*) 'bergstep ',nktberg,' unpacking berg ',INT(ibuffer_n%data(16,i)),' from north' 
    450450               CALL flush( numicb ) 
     
    466466         IF( ibergs_to_send_n > 0 .AND. l_isend ) CALL mpi_wait( iml_req3, iml_stat, iml_err ) 
    467467         DO i = 1, ibergs_rcvd_from_n 
    468             IF( nn_verbose_level >= 4 ) THEN 
     468            IF( nn_verbose_level >= 4 .AND. numicb .NE. -1) THEN 
    469469               WRITE(numicb,*) 'bergstep ',nktberg,' unpacking berg ',INT(ibuffer_n%data(16,i)),' from north' 
    470470               CALL flush( numicb ) 
     
    473473         END DO 
    474474         DO i = 1, ibergs_rcvd_from_s 
    475             IF( nn_verbose_level >= 4 ) THEN 
     475            IF( nn_verbose_level >= 4 .AND. numicb .NE. -1) THEN 
    476476               WRITE(numicb,*) 'bergstep ',nktberg,' unpacking berg ',INT(ibuffer_s%data(16,i)),' from south' 
    477477               CALL flush( numicb ) 
     
    487487         IF( ibergs_to_send_s > 0 .AND. l_isend ) CALL mpi_wait( iml_req4, iml_stat, iml_err ) 
    488488         DO i = 1, ibergs_rcvd_from_s 
    489             IF( nn_verbose_level >= 4 ) THEN 
     489            IF( nn_verbose_level >= 4 .AND. numicb .NE. -1) THEN 
    490490               WRITE(numicb,*) 'bergstep ',nktberg,' unpacking berg ',INT(ibuffer_s%data(16,i)),' from south' 
    491491               CALL flush( numicb ) 
     
    495495      END SELECT 
    496496 
    497       IF( nn_verbose_level > 0 ) THEN 
     497      IF( nn_verbose_level > 0 .AND. numicb .NE. -1) THEN 
    498498         ! compare the number of icebergs on this processor from the start to the end 
    499499         ibergs_end = icb_utl_count() 
     
    535535      IF( npolj /= 0 .AND. jpni > 1 ) CALL icb_lbc_mpp_nfld( ) 
    536536 
    537       IF( nn_verbose_level > 0 ) THEN 
     537      IF( nn_verbose_level > 0) THEN 
    538538         i = 0 
    539539         this => first_berg 
     
    547547                ijne .GT. mjg(nicbej)) THEN 
    548548               i = i + 1 
    549                WRITE(numicb,*) 'berg lost in halo: ', this%number(:),iine,ijne 
    550                WRITE(numicb,*) '                   ', nimpp, njmpp 
    551                WRITE(numicb,*) '                   ', nicbdi, nicbei, nicbdj, nicbej 
    552                CALL flush( numicb ) 
     549               IF(numicb .NE. -1) THEN 
     550                   WRITE(numicb,*) 'berg lost in halo: ', this%number(:),iine,ijne 
     551                   WRITE(numicb,*) '                   ', nimpp, njmpp 
     552                   WRITE(numicb,*) '                   ', nicbdi, nicbei, nicbdj, nicbej 
     553                   CALL flush( numicb ) 
     554               ENDIF 
    553555            ENDIF 
    554556            this => this%next 
     
    659661             IF( nicbfldproc(jjn) .eq. INT(znbergs(1)) ) EXIT 
    660662            END DO 
    661             IF( jjn .GT. jpni ) write(numicb,*) 'ICB ERROR' 
     663            IF( jjn .GT. jpni ) write(*,*) 'ICB ERROR' 
    662664            nicbfldexpect(jjn) = INT( znbergs(2) ) 
    663665            !IF ( nicbfldexpect(jjn) .GT. 0) write(numicb,*) 'ICB expecting ',nicbfldexpect(jjn),' from ', nicbfldproc(jjn) 
     
    714716                           tmpberg => this 
    715717                           ibergs_to_send = ibergs_to_send + 1 
    716                            IF( nn_verbose_level >= 4 ) THEN 
     718                           IF( nn_verbose_level >= 4 .AND. numicb.NE.-1) THEN 
    717719                              WRITE(numicb,*) 'bergstep ',nktberg,' packing berg ',tmpberg%number(:),' for north fold' 
    718720                              CALL flush( numicb ) 
     
    727729               END DO 
    728730            ENDIF 
    729             if( nn_verbose_level >= 3) then 
     731            if( nn_verbose_level >= 3 .AND. numicb.NE.-1) then 
    730732               write(numicb,*) 'bergstep ',nktberg,' send nfld: ', ibergs_to_send 
    731733               call flush(numicb) 
     
    758760            ! 
    759761            DO jk = 1, ibergs_to_rcv 
    760                IF( nn_verbose_level >= 4 ) THEN 
     762               IF( nn_verbose_level >= 4 .AND. numicb.NE.-1) THEN 
    761763                  WRITE(numicb,*) 'bergstep ',nktberg,' unpacking berg ',INT(ibuffer_f%data(16,jk)),' from north fold' 
    762764                  CALL flush( numicb ) 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/ICB/icbrst.F90

    r9321 r11101  
    134134      ! Sanity check 
    135135      jn = icb_utl_count() 
    136       IF (nn_verbose_level >= 0)   & 
     136      IF (nprint > 0 .AND. lwp)   & 
    137137         WRITE(numout,'(2(a,i5))') 'icebergs, read_restart_bergs: # bergs =',jn,' on PE',narea-1 
    138138      IF( lk_mpp ) THEN 
     
    141141         CALL mpp_sum(jn) 
    142142      ENDIF 
    143       IF(lwp)   WRITE(numout,'(a,i5,a,i5,a)') 'icebergs, read_restart_bergs: there were',ibergs_in_file,   & 
     143      IF(lwp .AND. nprint > 1)   & 
     144         &    WRITE(numout,'(a,i5,a,i5,a)') 'icebergs, read_restart_bergs: there were',ibergs_in_file,   & 
    144145         &                                    ' bergs in the restart file and', jn,' bergs have been read' 
    145146      ! 
     
    148149      ! 
    149150      IF(nn_timing == 2)  CALL timing_stop('iom_rstget') 
    150       IF( lwp .and. nn_verbose_level >= 0)  WRITE(numout,'(a)') 'icebergs, read_restart_bergs: completed' 
     151      IF( lwp .and. nprint >= 0)  WRITE(numout,'(a)') 'icebergs, read_restart_bergs: completed' 
    151152      ! 
    152153   END SUBROUTINE icb_rst_read 
     
    190191         WRITE(cl_filename,'(A,"_icebergs_",A,"_restart.nc")') TRIM(cexper), TRIM(ADJUSTL(clkt)) 
    191192      ENDIF 
    192       IF (nn_verbose_level >= 0) WRITE(numout,'(2a)') 'icebergs, write_restart: creating ',TRIM(cl_path)//TRIM(cl_filename) 
     193      IF (nprint > 0 .AND. lwp) & 
     194                       WRITE(numout,'(2a)') 'icebergs, write_restart: creating ',TRIM(cl_path)//TRIM(cl_filename) 
    193195 
    194196      nret = NF90_CREATE(TRIM(cl_path)//TRIM(cl_filename), NF90_CLOBBER, ncid) 
     
    324326         ENDIF 
    325327      ENDDO 
    326       IF( lwp ) WRITE(numout,*) 'file: ',TRIM(cl_path)//TRIM(cl_filename),' var: stored_ice  written' 
     328      IF( lwp .AND. nprint > 1) WRITE(numout,*) 'file: ',TRIM(cl_path)//TRIM(cl_filename),' var: stored_ice  written' 
    327329 
    328330      nret = NF90_PUT_VAR( ncid, nkountid, num_bergs(:) ) 
     
    331333      nret = NF90_PUT_VAR( ncid, nsheatid, berg_grid%stored_heat(:,:) ) 
    332334      IF (nret .ne. NF90_NOERR) CALL ctl_stop('icebergs, write_restart: nf_put_var stored_heat failed') 
    333       IF( lwp ) WRITE(numout,*) 'file: ',TRIM(cl_path)//TRIM(cl_filename),' var: stored_heat written' 
     335      IF( lwp .AND. nprint > 1) WRITE(numout,*) 'file: ',TRIM(cl_path)//TRIM(cl_filename),' var: stored_heat written' 
    334336 
    335337      nret = NF90_PUT_VAR( ncid, ncalvid , src_calving(:,:) ) 
     
    337339      nret = NF90_PUT_VAR( ncid, ncalvhid, src_calving_hflx(:,:) ) 
    338340      IF (nret .ne. NF90_NOERR) CALL ctl_stop('icebergs, write_restart: nf_put_var calving_hflx failed') 
    339       IF( lwp ) WRITE(numout,*) 'file: ',TRIM(cl_path)//TRIM(cl_filename),' var: calving written' 
     341      IF( lwp .AND. nprint > 1) WRITE(numout,*) 'file: ',TRIM(cl_path)//TRIM(cl_filename),' var: calving written' 
    340342 
    341343      IF ( ASSOCIATED(first_berg) ) THEN 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/ICB/icbstp.F90

    r6486 r11101  
    8888 
    8989      ! write out time 
    90       IF( ll_verbose ) WRITE(numicb,9100) nktberg, ndastp, nsec_day 
     90      IF( ll_verbose .AND. numicb.NE.-1) WRITE(numicb,9100) nktberg, ndastp, nsec_day 
    9191 9100 FORMAT('kt= ',i8, ' day= ',i8,' secs=',i8) 
    9292 
     
    166166      IF( nn_sample_rate .GT. 0 ) CALL icb_trj_end() 
    167167 
    168       IF(lwp)   WRITE(numout,'(a,i6)') 'icebergs: icb_end complete', narea 
    169       CALL flush( numicb ) 
    170       CLOSE( numicb ) 
     168      IF(lwp .AND. nprint>3)   WRITE(numout,'(a,i6)') 'icebergs: icb_end complete', narea 
     169      IF(numicb.NE.-1) THEN 
     170         CALL flush( numicb ) 
     171         CLOSE( numicb ) 
     172      ENDIF 
    171173      ! 
    172174   END SUBROUTINE icb_end 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/ICB/icbtrj.F90

    r7733 r11101  
    8383      ELSE                ;   WRITE(cl_filename,'("trajectory_icebergs_",A,"-",A         ,".nc")') TRIM(ADJUSTL(cldate_ini)), TRIM(ADJUSTL(cldate_end)) 
    8484      ENDIF 
    85       IF ( lwp .AND. nn_verbose_level >= 0) WRITE(numout,'(2a)') 'icebergs, icb_trj_init: creating ',TRIM(cl_filename) 
     85      IF ( lwp .AND. nprint > 2) WRITE(numout,'(2a)') 'icebergs, icb_trj_init: creating ',TRIM(cl_filename) 
    8686 
    8787      iret = NF90_CREATE(TRIM(cl_filename), NF90_CLOBBER, ntrajid) 
     
    246246         this=>this%next 
    247247      END DO 
    248       IF( lwp .and. nn_verbose_level > 0 ) WRITE(numout,*) 'trajectory write to frame ', jn 
     248      IF( lwp .AND. nprint > 0 ) WRITE(numout,*) 'trajectory write to frame ', jn 
    249249      num_traj = jn 
    250250      ! 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/ICB/icbutl.F90

    r6486 r11101  
    661661      ! 
    662662      pt => berg%current_point 
     663      IF(numicb.NE.-1) THEN 
    663664      WRITE(numicb, 9200) kt, berg%number(1), & 
    664665                   pt%xi, pt%yj, pt%lon, pt%lat, pt%uvel, pt%vvel,  & 
    665666                   pt%uo, pt%vo, pt%ua, pt%va, pt%ui, pt%vi 
    666667      CALL flush( numicb ) 
     668      ENDIF 
    667669 9200 FORMAT(5x,i5,2x,i10,6(2x,2f10.4)) 
    668670      ! 
     
    685687      ! 
    686688      this => first_berg 
    687       IF( ASSOCIATED(this) ) THEN 
    688          WRITE(numicb,'(a," pe=(",i3,")")' ) cd_label, narea 
    689          WRITE(numicb,'(a8,4x,a6,12x,a5,15x,a7,19x,a3,17x,a5,17x,a5,17x,a5)' )   & 
     689      IF(numicb.NE.-1) THEN 
     690         IF( ASSOCIATED(this) ) THEN 
     691            WRITE(numicb,'(a," pe=(",i3,")")' ) cd_label, narea 
     692            WRITE(numicb,'(a8,4x,a6,12x,a5,15x,a7,19x,a3,17x,a5,17x,a5,17x,a5)' )   & 
    690693            &         'timestep', 'number', 'xi,yj','lon,lat','u,v','uo,vo','ua,va','ui,vi' 
     694         ENDIF 
    691695      ENDIF 
    692696      DO WHILE( ASSOCIATED(this) ) 
     
    697701      inbergs = ibergs 
    698702      IF( lk_mpp )   CALL mpp_sum(inbergs) 
    699       IF( ibergs > 0 )   WRITE(numicb,'(a," there are",i5," bergs out of",i6," on PE ",i4)')   & 
     703      IF( ibergs > 0 .AND. numicb.NE.-1)   WRITE(numicb,'(a," there are",i5," bergs out of",i6," on PE ",i4)')   & 
    700704         &                                  cd_label, ibergs, inbergs, narea 
    701705      ! 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/IOM/in_out_manager.F90

    r6491 r11101  
    9999   !!---------------------------------------------------------------------- 
    100100   LOGICAL ::   ln_ctl       !: run control for debugging 
     101   TYPE :: sn_ctl                !: optional use structure for finer control over output selection 
     102      LOGICAL :: l_config  = .FALSE.  !: activate/deactivate finer control 
     103                                      !  Note if l_config is True then ln_ctl is ignored. 
     104                                      !  Otherwise setting ln_ctl True is equivalent to setting 
     105                                      !  all the following logicals in this structure True 
     106      LOGICAL :: l_runstat = .FALSE.  !: Produce/do not produce run.stat file (T/F) 
     107      LOGICAL :: l_trcstat = .FALSE.  !: Produce/do not produce tracer.stat file (T/F) 
     108      LOGICAL :: l_oceout  = .FALSE.  !: Produce all ocean.outputs    (T) or just one (F) 
     109      LOGICAL :: l_layout  = .FALSE.  !: Produce all layout.dat files (T) or just one (F) 
     110      LOGICAL :: l_mppout  = .FALSE.  !: Produce/do not produce mpp.output_XXXX files (T/F) 
     111      LOGICAL :: l_mpptop  = .FALSE.  !: Produce/do not produce mpp.top.output_XXXX files (T/F) 
     112                                      !  Optional subsetting of processor report files 
     113                                      !  Default settings of 0/1000000/1 should ensure all areas report. 
     114                                      !  Set to a more restrictive range to select specific areas 
     115      INTEGER :: procmin   = 0        !: Minimum narea to output 
     116      INTEGER :: procmax   = 1000000  !: Maximum narea to output 
     117      INTEGER :: procincr  = 1        !: narea increment to output 
     118      INTEGER :: ptimincr  = 1        !: timestep increment to output (time.step and run.stat) 
     119   END TYPE 
     120   TYPE(sn_ctl) :: sn_cfctl     !: run control structure for selective output 
    101121   INTEGER ::   nn_timing    !: run control for timing 
    102122   INTEGER ::   nn_print     !: level of print (0 no print) 
     
    109129   INTEGER ::   nn_bench     !: benchmark parameter (0/1) 
    110130   INTEGER ::   nn_bit_cmp   =    0    !: bit reproducibility  (0/1) 
    111  
     131   LOGICAL ::   ln_flush     !: namelist flush numout after write statement 
    112132   !                                           
     133   LOGICAL ::   lflush       !: flush numout after write statement 
    113134   INTEGER ::   nprint, nictls, nictle, njctls, njctle, isplt, jsplt, nbench    !: OLD namelist names 
    114135 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/IOM/iom.F90

    r9830 r11101  
    484484               iom_file(jf)%nfid       = 0          ! free the id  
    485485               IF( PRESENT(kiomid) )   kiomid = 0   ! return 0 as id to specify that the file was closed 
    486                IF(lwp) WRITE(numout,*) TRIM(clinfo)//' close file: '//TRIM(iom_file(jf)%name)//' ok' 
     486               IF(lwp .AND. nprint > 0) WRITE(numout,*) TRIM(clinfo)//' close file: '//TRIM(iom_file(jf)%name)//' ok' 
    487487            ELSEIF( PRESENT(kiomid) ) THEN 
    488488               WRITE(ctmp1,*) '--->',  kiomid 
     
    924924 
    925925         IF( istop == nstop ) THEN   ! no additional errors until this point... 
    926             IF(lwp) WRITE(numout,"(10x,' read ',a,' (rec: ',i6,') in ',a,' ok')") TRIM(cdvar), itime, TRIM(iom_file(kiomid)%name) 
     926            IF(lwp .AND. nprint > 1) & 
     927               WRITE(numout,"(10x,' read ',a,' (rec: ',i6,') in ',a,' ok')") TRIM(cdvar), itime, TRIM(iom_file(kiomid)%name) 
    927928           
    928929            !--- overlap areas and extra hallows (mpp) 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/IOM/iom_nf90.F90

    r6491 r11101  
    8484         !                 ! ============= 
    8585         IF( ldwrt ) THEN  ! ... in write mode 
    86             IF(lwp) WRITE(numout,*) TRIM(clinfo)//' open existing file: '//TRIM(cdname)//' in WRITE mode' 
     86            IF(lwp .AND. nprint > 0) THEN 
     87               WRITE(numout,*) TRIM(clinfo)//' open existing file: '//TRIM(cdname)//' in WRITE mode' 
     88               IF(lflush) CALL flush(numout) 
     89            ENDIF 
    8790            IF( snc4set%luse ) THEN 
    8891               CALL iom_nf90_check(NF90_OPEN( TRIM(cdname), NF90_WRITE  , if90id ), clinfo) 
     
    9295            CALL iom_nf90_check(NF90_SET_FILL( if90id, NF90_NOFILL, idmy                          ), clinfo) 
    9396         ELSE              ! ... in read mode 
    94             IF(lwp) WRITE(numout,*) TRIM(clinfo)//' open existing file: '//TRIM(cdname)//' in READ mode' 
     97            IF(lwp .AND. nprint > 0) THEN 
     98               WRITE(numout,*) TRIM(clinfo)//' open existing file: '//TRIM(cdname)//' in READ mode' 
     99               IF(lflush) CALL flush(numout) 
     100            ENDIF 
    95101            CALL iom_nf90_check(NF90_OPEN( TRIM(cdname), NF90_NOWRITE, if90id, chunksize = ichunk ), clinfo) 
    96102         ENDIF 
     
    103109               cdname = TRIM(cltmp) 
    104110            ENDIF 
    105             IF(lwp) WRITE(numout,*) TRIM(clinfo)//' create new file: '//TRIM(cdname)//' in WRITE mode' 
     111            IF(lwp .AND. nprint > 0) THEN 
     112               WRITE(numout,*) TRIM(clinfo)//' create new file: '//TRIM(cdname)//' in WRITE mode' 
     113               IF(lflush) CALL flush(numout) 
     114            ENDIF 
    106115 
    107116            IF( llclobber ) THEN   ;   imode = IOR( NF90_64BIT_OFFSET, NF90_CLOBBER   ) 
     
    109118            ENDIF 
    110119            IF( snc4set%luse ) THEN 
    111                IF(lwp) WRITE(numout,*) TRIM(clinfo)//' creating file: '//TRIM(cdname)//' in hdf5 (netcdf4) mode' 
     120               IF(lwp .AND. nprint > 0) THEN 
     121                  WRITE(numout,*) TRIM(clinfo)//' creating file: '//TRIM(cdname)//' in hdf5 (netcdf4) mode' 
     122                  IF(lflush) CALL flush(numout) 
     123               ENDIF 
    112124               CALL GET_NF90_SYMBOL("NF90_HDF5", ihdf5) 
    113125               IF( llclobber ) THEN   ;   imode = IOR(ihdf5, NF90_CLOBBER) 
     
    158170        &                                               len  = iom_file(kiomid)%lenuld ), clinfo ) 
    159171         ENDIF 
    160          IF(lwp) WRITE(numout,*) '                   ---> '//TRIM(cdname)//' OK' 
     172         IF(lwp .AND. nprint > 0) THEN 
     173            WRITE(numout,*) '                   ---> '//TRIM(cdname)//' OK' 
     174            IF(lflush) CALL flush(numout) 
     175         ENDIF 
    161176      ELSE 
    162177         kiomid = 0               ! return error flag 
     
    431446         ! trick: defined to 0 to say that dimension variables are defined but not yet written 
    432447         iom_file(kiomid)%dimsz(1, 1)  = 0    
    433          IF(lwp) WRITE(numout,*) TRIM(clinfo)//' define dimension variables done' 
     448         IF(lwp .AND. nprint > 1) THEN 
     449            WRITE(numout,*) TRIM(clinfo)//' define dimension variables done' 
     450            IF(lflush) CALL flush(numout) 
     451         ENDIF 
    434452      ENDIF 
    435453      ! define the data if it is not already done 
     
    498516            CALL iom_nf90_check(SET_NF90_DEF_VAR_CHUNKING(if90id, idvar, ichunkalg, ichunksz), clinfo) 
    499517            CALL iom_nf90_check(SET_NF90_DEF_VAR_DEFLATE(if90id, idvar, ishuffle, ideflate, ideflate_level), clinfo) 
    500             IF(lwp) WRITE(numout,*) TRIM(clinfo)//' chunked ok. Chunks sizes: ', ichunksz 
    501          ENDIF 
    502          IF(lwp) WRITE(numout,*) TRIM(clinfo)//' defined ok' 
     518            IF(lwp .AND. nprint > 1) WRITE(numout,*) TRIM(clinfo)//' chunked ok. Chunks sizes: ', ichunksz 
     519         ENDIF 
     520         IF(lwp .AND. nprint > 1) THEN 
     521            WRITE(numout,*) TRIM(clinfo)//' defined ok' 
     522            IF(lflush) CALL flush(numout) 
     523         ENDIF 
    503524      ELSE 
    504525         idvar = kvid 
     
    543564               CALL iom_nf90_check(NF90_INQUIRE_DIMENSION( if90id, 3, len = iom_file(kiomid)%dimsz(1,3) ), clinfo) 
    544565               iom_file(kiomid)%dimsz(1  , 4) = 1   ! unlimited dimension 
    545                IF(lwp) WRITE(numout,*) TRIM(clinfo)//' write dimension variables done' 
     566               IF(lwp .AND. nprint > 1) THEN 
     567                 WRITE(numout,*) TRIM(clinfo)//' write dimension variables done' 
     568                 IF(lflush) CALL flush(numout) 
     569               ENDIF 
    546570            ENDIF 
    547571         ENDIF 
     
    561585         IF( iom_file(kiomid)%luld(idvar) )   iom_file(kiomid)%dimsz(iom_file(kiomid)%ndims(idvar), idvar)    & 
    562586               &                            = iom_file(kiomid)%dimsz(iom_file(kiomid)%ndims(idvar), idvar) + 1 
    563          IF(lwp) WRITE(numout,*) TRIM(clinfo)//' written ok' 
     587         IF(lwp .AND. nprint > 0) THEN 
     588           WRITE(numout,*) TRIM(clinfo)//' written ok' 
     589           IF(lflush) CALL flush(numout) 
     590         ENDIF 
    564591      ENDIF 
    565592      !      
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/IOM/prtctl.F90

    r6486 r11101  
    369369         WRITE(j_id,*) 
    370370         WRITE(j_id,*) 
     371         IF(lflush) CALL flush(j_id) 
    371372 
    3723739000     FORMAT(a41,i4.4,a14) 
     
    515516      IF(lwp) WRITE(numout,*)' sum ilcitl(1,j) = ', zjdom, ' jpjglo = ', jpjglo 
    516517      IF(lwp) WRITE(numout,*) 
     518      IF(lwp .AND. lflush) CALL flush(numout) 
    517519       
    518520 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/IOM/restart.F90

    r9321 r11101  
    110110                   '             open ocean restart NetCDF file: ',TRIM(clpath)//clname 
    111111               END SELECT 
    112                IF ( snc4set%luse )      WRITE(numout,*) '             opened for NetCDF4 chunking and compression' 
    113                IF( kt == nitrst - 1 ) THEN   ;   WRITE(numout,*) '             kt = nitrst - 1 = ', kt 
    114                ELSE                          ;   WRITE(numout,*) '             kt = '             , kt 
     112               IF(nprint > 1) THEN 
     113                  IF ( snc4set%luse )      WRITE(numout,*) '             opened for NetCDF4 chunking and compression' 
     114                  IF( kt == nitrst - 1) THEN 
     115                     WRITE(numout,*) '             kt = nitrst - 1 = ', kt 
     116                  ELSE                           
     117                     WRITE(numout,*) '             kt = '             , kt 
     118                  ENDIF 
    115119               ENDIF 
     120               IF(lflush) CALL flush(numout) 
    116121            ENDIF 
    117122            ! 
     
    209214            IF ( snc4set%luse )      WRITE(numout,*) 'rst_read : configured with NetCDF4 support' 
    210215            WRITE(numout,*) '~~~~~~~~' 
     216            IF(lflush) CALL flush(numout) 
    211217         ENDIF 
    212218 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/LBC/cla.F90

    r6486 r11101  
    8383         IF(lwp) WRITE(numout,*) 'div_cla : cross land advection on hdiv ' 
    8484         IF(lwp) WRITE(numout,*) '~~~~~~~~' 
     85         IF(lflush) CALL flush(numout)  
    8586         ! 
    8687         IF( nbab == 1 )   CALL cla_bab_el_mandeb('ini')    ! Bab el Mandeb ( Red Sea - Indian ocean ) 
     
    120121         IF(lwp) WRITE(numout,*) 'tra_cla : cross land advection on tracers ' 
    121122         IF(lwp) WRITE(numout,*) '~~~~~~~~' 
     123         IF(lflush) CALL flush(numout) 
    122124      ENDIF 
    123125      ! 
     
    147149         IF(lwp) WRITE(numout,*) 'cla_dynspg : cross land advection on (ua,va) ' 
    148150         IF(lwp) WRITE(numout,*) '~~~~~~~~~~' 
     151         IF(lflush) CALL flush(numout) 
    149152      ENDIF 
    150153      ! 
     
    181184      IF(lwp) WRITE(numout,*) 'cla_init : cross land advection initialisation ' 
    182185      IF(lwp) WRITE(numout,*) '~~~~~~~~~' 
     186      IF(lwp .AND. lflush) CALL flush(numout) 
    183187      ! 
    184188      !                           ! Allocate arrays for this module 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/LBC/lib_mpp.F90

    r8356 r11101  
    319319      mynode = mpprank 
    320320 
    321       IF( mynode == 0 ) THEN 
     321      IF( mynode == 0 .AND. nprint > 2) THEN 
    322322         CALL ctl_opn( kumond, TRIM(ldname), 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', -1, 6, .FALSE. , 1 ) 
    323323         WRITE(kumond, nammpp)       
     
    39893989      IF( iost == 0 ) THEN 
    39903990         IF(ldwp) THEN 
    3991             WRITE(kout,*) '     file   : ', clfile,' open ok' 
    3992             WRITE(kout,*) '     unit   = ', knum 
    3993             WRITE(kout,*) '     status = ', cdstat 
    3994             WRITE(kout,*) '     form   = ', cdform 
    3995             WRITE(kout,*) '     access = ', cdacce 
     3991            IF(nprint > 0) WRITE(kout,*) '     file   : ', clfile,' open ok' 
     3992            IF(nprint > 2) THEN 
     3993               WRITE(kout,*) '     unit   = ', knum 
     3994               WRITE(kout,*) '     status = ', cdstat 
     3995               WRITE(kout,*) '     form   = ', cdform 
     3996               WRITE(kout,*) '     access = ', cdacce 
     3997            ENDIF 
    39963998            WRITE(kout,*) 
    39973999         ENDIF 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/LBC/mppini.F90

    r6498 r11101  
    7373         WRITE(numout,*) '         nimpp  = ', nimpp 
    7474         WRITE(numout,*) '         njmpp  = ', njmpp 
     75         IF(lflush) CALL flush(numout) 
    7576      ENDIF 
    7677 
     
    137138      IF(lwp) WRITE(numout,*) 'mpp_init : Message Passing MPI' 
    138139      IF(lwp) WRITE(numout,*) '~~~~~~~~' 
     140      IF(lflush) CALL flush(numout) 
    139141 
    140142 
     
    287289      IF(lwp) WRITE(numout,*)' sum ilcit(1,j)=', zjdom, ' jpjglo=', jpjglo 
    288290      IF(lwp) WRITE(numout,*) 
    289  
    290       IF(lwp) THEN 
     291      IF(lwp .AND. lflush) CALL flush(numout) 
     292 
     293      IF(lwp .AND. nprint>1) THEN 
    291294         ifreq = 4 
    292295         il1   = 1 
     
    305308            il1 = il1+ifreq 
    306309         END DO 
     310         IF(lflush) CALL flush(numout) 
     311      ENDIF 
    307312 9200     FORMAT('     ***',20('*************',a3)) 
    308313 9203     FORMAT('     *     ',20('         *   ',a3)) 
     
    310315 9202     FORMAT(' ',i3,' *  ',20(i3,'  x',i3,'   *   ')) 
    311316 9204     FORMAT('     *  ',20('      ',i3,'   *   ')) 
    312       ENDIF 
    313317 
    314318      ! 5. From global to local 
     
    364368 
    365369     ! Save processor layout in layout.dat file  
    366        IF (lwp) THEN 
     370       IF (lwp .AND. nprint > 1) THEN 
    367371        CALL ctl_opn( inum, 'layout.dat', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE., narea ) 
    368372        WRITE(inum,'(a)') '   jpnij     jpi     jpj     jpk  jpiglo  jpjglo' 
     
    430434      ! Periodicity : no corner if nbondi = 2 and nperio != 1 
    431435 
    432       IF(lwp) THEN 
     436      IF(lwp .and. nprint > 0) THEN 
    433437         WRITE(numout,*) ' nproc  = ', nproc 
    434438         WRITE(numout,*) ' nowe   = ', nowe  , ' noea   =  ', noea 
     
    447451         WRITE(numout,*) ' jprecj = ', jprecj , ' npnw   = ', npnw 
    448452         WRITE(numout,*) 
     453         IF(lflush) CALL flush(numout) 
    449454      ENDIF 
    450455 
     
    456461         CALL mpp_ini_north 
    457462         IF(lwp) WRITE(numout,*) ' mpp_init : North fold boundary prepared for jpni >1' 
     463         IF(lwp .AND. lflush) CALL flush(numout) 
    458464      ENDIF 
    459465 
     
    505511      idid(2) = 2 
    506512 
    507       IF(lwp) THEN 
     513      IF(lwp .AND. nprint > 0) THEN 
    508514          WRITE(numout,*) 
    509515          WRITE(numout,*) 'mpp_init_ioipsl :   iloc  = ', iloc (1), iloc (2) 
     
    511517          WRITE(numout,*) '                    ihals = ', ihals(1), ihals(2) 
    512518          WRITE(numout,*) '                    ihale = ', ihale(1), ihale(2) 
     519          IF(lflush) CALL flush(numout) 
    513520      ENDIF 
    514521      ! 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/LBC/mppini_2.h90

    r6498 r11101  
    8787      READ  ( numnam_cfg, namzgr, IOSTAT = ios, ERR = 902 ) 
    8888902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzgr in configuration namelist', lwp ) 
    89       IF(lwm) WRITE ( numond, namzgr ) 
     89      IF(lwm .AND. nprint > 2) WRITE ( numond, namzgr ) 
    9090 
    9191      IF(lwp)WRITE(numout,*) 
     
    9393      IF(lwp)WRITE(numout,*) '~~~~~~~~' 
    9494      IF(lwp)WRITE(numout,*) ' ' 
     95      IF(lwp .AND. lflush) CALL flush(numout) 
    9596 
    9697      IF( jpni*jpnj < jpnij ) CALL ctl_stop( ' jpnij > jpni x jpnj impossible' ) 
     
    184185      IF(lwp) WRITE(numout,*) ' sum ilcj(1,j)=',zjdom,' jpjglo=',jpjglo 
    185186      IF(lwp) WRITE(numout,*) 
     187      IF(lwp .AND. lflush) CALL flush(numout) 
    186188 
    187189 
     
    364366            il1 = il1+ifreq 
    365367         END DO 
     368         IF(lflush) CALL flush(numout) 
    366369 9400     FORMAT('     ***',20('*************',a3)) 
    367370 9403     FORMAT('     *     ',20('         *   ',a3)) 
     
    572575         WRITE(numout,*) ' jprecj = ', jprecj , ' npnw   = ', npnw 
    573576         WRITE(numout,*) 
     577         IF(lflush) CALL flush(numout) 
    574578      ENDIF 
    575579 
     
    581585         CALL mpp_ini_north 
    582586         IF(lwp) WRITE(numout,*) ' mpp_init2 : North fold boundary prepared for jpni >1' 
     587         IF(lwp .AND. lflush) CALL flush(numout) 
    583588      ENDIF 
    584589 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/LDF/ldfdyn.F90

    r6486 r11101  
    8181      READ  ( numnam_cfg, namdyn_ldf, IOSTAT = ios, ERR = 902 ) 
    8282902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_ldf in configuration namelist', lwp ) 
    83       IF(lwm) WRITE ( numond, namdyn_ldf ) 
     83      IF(lwm .AND. nprint > 2) WRITE ( numond, namdyn_ldf ) 
    8484 
    8585      IF(lwp) THEN                      ! Parameter print 
     
    159159     nkahm_smag = 1 
    160160#endif 
    161  
     161      ! 
     162      IF(lwp .AND. lflush) CALL flush(numout) 
    162163      ! 
    163164   END SUBROUTINE ldf_dyn_init 
     
    210211      ENDIF 
    211212      ! 
     213      IF(lwp .AND. lflush) CALL flush(numout) 
     214      ! 
    212215   END SUBROUTINE ldf_zpf_1d 
    213216 
     
    252255      ENDIF 
    253256      ! 
     257      IF(lwp .AND. lflush) CALL flush(numout) 
     258      ! 
    254259   END SUBROUTINE ldf_zpf_1d_3d 
    255260 
     
    293298      ENDIF 
    294299      ! 
     300      IF(lwp .AND. lflush) CALL flush(numout) 
     301      ! 
    295302   END SUBROUTINE ldf_zpf_3d 
    296303 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/LDF/ldfdyn_c2d.h90

    r6486 r11101  
    4141      IF(lwp) WRITE(numout,*) 'ldf_dyn_c2d : 2d lateral eddy viscosity coefficient' 
    4242      IF(lwp) WRITE(numout,*) '~~~~~~~~~~~' 
     43      IF(lwp .AND. lflush) CALL flush(numout) 
    4344 
    4445      ! harmonic operator (ahm1, ahm2) : ( T- and F- points) (used for laplacian operators 
     
    8586            CALL prihre(ahm2,jpi,jpj,1,jpi,1,1,jpj,1,1.e-3,numout) 
    8687         ENDIF 
     88         IF(lwp .AND. lflush) CALL flush(numout) 
    8789      ENDIF 
    8890 
     
    119121            CALL prihre(ahm4,jpi,jpj,1,jpi,1,1,jpj,1,1.e-3,numout) 
    120122         ENDIF 
     123         IF(lwp .AND. lflush) CALL flush(numout) 
    121124      ENDIF 
    122125      ! 
     
    160163      IF(lwp) WRITE(numout,*) '~~~~~~  --' 
    161164      IF(lwp) WRITE(numout,*) '        orca ocean configuration' 
     165      IF(lwp .AND. lflush) CALL flush(numout) 
    162166 
    163167      IF( cp_cfg == "orca" .AND. cp_cfz == "antarctic" ) THEN 
     
    316320      ENDIF 
    317321      ! 
     322      IF(lwp .AND. lflush) CALL flush(numout) 
     323      ! 
    318324      CALL wrk_dealloc( jpi   , jpj   , icof  ) 
    319325      ! 
     
    358364      IF(lwp) WRITE(numout,*) '~~~~~~  --' 
    359365      IF(lwp) WRITE(numout,*) '        orca_r1 configuration' 
     366      IF(lwp .AND. lflush) CALL flush(numout) 
    360367 
    361368      IF( cp_cfg == "orca" .AND. cp_cfz == "antarctic" ) THEN 
     
    519526      ENDIF 
    520527      ! 
     528      IF(lwp .AND. lflush) CALL flush(numout) 
     529      ! 
    521530      CALL wrk_dealloc( jpi   , jpj   , icof  ) 
    522531      ! 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/LDF/ldfdyn_c3d.h90

    r9975 r11101  
    179179         ENDIF 
    180180      ENDIF 
     181      ! 
     182      IF(lwp .AND. lflush) CALL flush(numout) 
    181183      ! 
    182184      CALL wrk_dealloc( jpk, zcoef ) 
     
    432434      ENDIF 
    433435      ! 
     436      IF(lwp .AND. lflush) CALL flush(numout) 
     437      ! 
    434438      CALL wrk_dealloc( jpi   , jpj   , icof  ) 
    435439      CALL wrk_dealloc( jpk   ,         zcoef ) 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/LDF/ldfdyn_smag.F90

    r9583 r11101  
    106106 
    107107 
    108       IF(lwp) WRITE(numout,*) 
    109       IF(lwp) WRITE(numout,*) 'ldf_dyn_smag : 3D lateral eddy viscosity coefficient' 
    110       IF(lwp) WRITE(numout,*) '~~~~~~~~~~~' 
    111       
     108         IF(lwp) THEN 
     109            WRITE(numout,*) 
     110            WRITE(numout,*) 'ldf_dyn_smag : 3D lateral eddy viscosity coefficient' 
     111            WRITE(numout,*) '~~~~~~~~~~~' 
     112            IF(lflush) CALL flush(numout) 
     113         ENDIF 
     114 
    112115      ENDIF 
    113116       
     
    172175 
    173176         ENDDO ! jpk 
    174             ahm1(:,:,jpk) = ahm1(:,:,jpkm1) 
    175             ahm2(:,:,jpk) = ahm2(:,:,jpkm1) 
    176             IF(lwp.and.kt==nit000) WRITE(numout,'(36x," ahm ", 7x)') 
     177 
     178         ahm1(:,:,jpk) = ahm1(:,:,jpkm1) 
     179         ahm2(:,:,jpk) = ahm2(:,:,jpkm1) 
     180 
     181         IF(lwp.and.kt==nit000) THEN 
     182            WRITE(numout,'(36x," ahm ", 7x)')  
     183            IF(lflush) CALL flush(numout) 
     184         ENDIF 
     185 
     186         IF(lwp.and.kt==nit000) THEN 
    177187            DO jk = 1, jpk 
    178  
    179                IF(lwp.and.kt==nit000) WRITE(numout,'(30x,E10.2,8x,i3)') ahm1(jpi/2,jpj/2,jk), jk 
     188               WRITE(numout,'(30x,E10.2,8x,i3)') ahm1(jpi/2,jpj/2,jk), jk 
    180189            END DO 
     190            IF(lflush) CALL flush(numout) 
     191         ENDIF 
     192 
    181193      CALL lbc_lnk( ahm1, 'T', 1. )   ! Lateral boundary conditions on ( ahtt ) 
    182194      CALL lbc_lnk( ahm2, 'F', 1. )   ! Lateral boundary conditions on ( ahtt ) 
     
    245257            ahm4(:,:,jpk) = ahm4(:,:,jpkm1) 
    246258 
    247       DO jk = 1, jpk 
    248       IF(  kt == nit000 ) THEN 
    249  
    250                IF(lwp) WRITE(numout,'(30x,E10.2,8x,i3)') ahm3(jpi/2,jpj/2,jk), jk 
     259      IF(  kt == nit000 .AND. lwp) THEN 
     260         DO jk = 1, jpk 
     261               WRITE(numout,'(30x,E10.2,8x,i3)') ahm3(jpi/2,jpj/2,jk), jk 
     262               IF(lflush) CALL flush(numout) 
     263         END DO 
    251264      ENDIF    
    252       END DO 
     265 
    253266      CALL lbc_lnk( ahm3, 'U', 1. )   ! Lateral boundary conditions 
    254267      CALL lbc_lnk( ahm4, 'V', 1. ) 
     
    269282      IF( lk_mpp )   CALL mpp_max( zdeltat )                 ! max over the global domain 
    270283      ! 
    271       IF( MOD( kt, nwrite ) == 1 .AND. lwp )   WRITE(numout,*) ' ==>> time-step= ',kt,'dynlap:  abs(ahm) max: ', zdeltat 
     284      IF( MOD( kt, nwrite ) == 1 .AND. lwp )  THEN 
     285         WRITE(numout,*) ' ==>> time-step= ',kt,'dynlap:  abs(ahm) max: ', zdeltat 
     286         IF(lflush) CALL flush(numout) 
     287      ENDIF 
    272288    ENDIF 
    273289    If(ln_dynldf_bilap)THEN 
     
    282298      IF( lk_mpp )   CALL mpp_max( zdeltat )                 ! max over the global domain 
    283299      ! 
    284       IF( MOD( kt, nwrite ) == 1 .AND. lwp )   WRITE(numout,*) ' ==>> time-step= ',kt,'dyn_bilap abs(ahm) max: ', zdeltat 
     300      IF( MOD( kt, nwrite ) == 1 .AND. lwp )  THEN 
     301         WRITE(numout,*) ' ==>> time-step= ',kt,'dyn_bilap abs(ahm) max: ', zdeltat 
     302         IF(lflush) CALL flush(numout) 
     303      ENDIF 
    285304      ! 
    286305   ENDIF 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/LDF/ldfslp.F90

    r6498 r11101  
    414414         IF(lwp) THEN  
    415415            WRITE(numout,*) '          Horizontal mixing in s-coordinate: slope = slope of s-surfaces'  
     416            IF(lflush) CALL flush(numout) 
    416417         ENDIF  
    417418 
     
    451452            IF(lwp) WRITE(numout,*) ' max slop: u',SQRT( MAXVAL(uslp*uslp)), ' v ', SQRT(MAXVAL(vslp)),  &  
    452453               &                             ' wi', sqrt(MAXVAL(wslpi)), ' wj', sqrt(MAXVAL(wslpj))  
     454            IF(lwp .AND. lflush) CALL flush(numout) 
    453455         endif  
    454456   
     
    842844         WRITE(numout,*) 'ldf_slp_init : direction of lateral mixing' 
    843845         WRITE(numout,*) '~~~~~~~~~~~~' 
     846         IF(lflush) CALL flush(numout) 
    844847      ENDIF 
    845848 
     
    865868         IF(ln_sco .AND.  (ln_traldf_hor .OR. ln_dynldf_hor )) THEN 
    866869            IF(lwp)   WRITE(numout,*) '          Horizontal mixing in s-coordinate: slope = slope of s-surfaces' 
     870            IF(lwp .AND. lflush) CALL flush(numout) 
    867871 
    868872            ! geopotential diffusion in s-coordinates on tracers and/or momentum 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/LDF/ldftra.F90

    r6486 r11101  
    8585      READ  ( numnam_cfg, namtra_ldf, IOSTAT = ios, ERR = 902 ) 
    8686902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtra_ldf in configuration namelist', lwp ) 
    87       IF(lwm) WRITE ( numond, namtra_ldf ) 
     87      IF(lwm .AND. nprint > 2) WRITE ( numond, namtra_ldf ) 
    8888 
    8989      IF(lwp) THEN                      ! control print 
     
    175175        IF(lwp.and.ln_traldf_bilap) CALL ctl_stop(' SMAGORINSKY + BILAPLACIAN - UNSTABLE OR NON_CONSERVATIVE' ) 
    176176#endif 
    177  
     177      ! 
     178      IF(lwp .AND. lflush) CALL flush(numout) 
    178179      ! 
    179180   END SUBROUTINE ldf_tra_init 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/LDF/ldftra_c2d.h90

    r6486 r11101  
    3636         IF(lwp) WRITE(numout,*) ' ldf_tra_c2d : 2D eddy diffusivity and eddy' 
    3737         IF(lwp) WRITE(numout,*) ' ~~~~~~~~~~~   --  induced velocity coefficients' 
     38         IF(lwp .AND. lflush) CALL flush(numout) 
    3839      ELSE 
    3940         IF(lwp) WRITE(numout,*) 
    4041         IF(lwp) WRITE(numout,*) ' ldf_tra2d : 2D eddy diffusivity coefficient' 
    4142         IF(lwp) WRITE(numout,*) ' ~~~~~~~~~~~   --' 
     43         IF(lwp .AND. lflush) CALL flush(numout) 
    4244      ENDIF 
    4345 
     
    7577            IF(lwp) WRITE(numout,*) '               Constant values used for eddy diffusivity coefficients' 
    7678            IF(lwp) WRITE(numout,*) '               Variation lat/lon only for eddy induced velocity coefficients' 
     79            IF(lwp .AND. lflush) CALL flush(numout) 
    7780         ENDIF 
    7881 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/LDF/ldftra_c3d.h90

    r6486 r11101  
    4646         IF(lwp) WRITE(numout,*) '               Coefficients set to constant' 
    4747      ENDIF 
    48  
     48    
    4949 
    5050      ! biharmonic operator   (T-point) 
     
    121121 
    122122# endif 
     123 
     124   IF(lwp .AND. lflush) CALL flush(numout) 
     125 
    123126   END SUBROUTINE ldf_tra_c3d 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/LDF/ldftra_smag.F90

    r9583 r11101  
    9999         IF(lwp) WRITE(numout,*) 
    100100         IF(lwp) WRITE(numout,*) 
     101         IF(lwp .AND. lflush) CALL flush(numout) 
    101102      ENDIF 
    102103 
     
    108109      ahtt(:,:,:) = rn_aht_0 
    109110       IF( ln_traldf_bilap ) THEN 
    110         IF( lwp .AND. kt == nit000) WRITE(numout,* )'ldf_tra_smag :no bilaplacian Smagorinsky diffusivity' 
    111         IF( lwp .AND. kt == nit000) WRITE(numout,* )'ldf_tra_smag :bilaplacian diffusivity set to constant'   
     111        IF( lwp .AND. kt == nit000) THEN 
     112          WRITE(numout,* )'ldf_tra_smag :no bilaplacian Smagorinsky diffusivity' 
     113          WRITE(numout,* )'ldf_tra_smag :bilaplacian diffusivity set to constant'   
     114          IF(lflush) CALL flush(numout) 
     115        ENDIF 
    112116       ENDIF 
    113117 
     
    190194         CALL prihre( ahtw(:,:,1), jpi, jpj, 1, jpi, 1,   & 
    191195            &                                1, jpj, 1, 1.e-1, numout ) 
     196         IF(lflush) CALL flush(numout) 
    192197      ENDIF 
    193198ENDIF 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/OBS/diaobs.F90

    r6486 r11101  
    244244      READ  ( numnam_cfg, namobs, IOSTAT = ios, ERR = 902 ) 
    245245902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namobs in configuration namelist', lwp ) 
    246       IF(lwm) WRITE ( numond, namobs ) 
     246      IF(lwm .AND. nprint > 2) WRITE ( numond, namobs ) 
    247247 
    248248      ! Count number of files for each type 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/SBC/albedo.F90

    r6498 r11101  
    260260      READ  ( numnam_cfg, namsbc_alb, IOSTAT = ios, ERR = 902 ) 
    261261902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_alb in configuration namelist', lwp ) 
    262       IF(lwm) WRITE ( numond, namsbc_alb ) 
     262      IF(lwm .AND. nprint > 2) WRITE ( numond, namsbc_alb ) 
    263263      ! 
    264264      IF(lwp) THEN                      ! Control print 
     
    269269         WRITE(numout,*) '      choose the albedo parameterization                  nn_ice_alb = ', nn_ice_alb 
    270270         WRITE(numout,*) '      albedo of bare puddled ice                          rn_albice  = ', rn_albice 
     271         IF(lflush) CALL flush(numout) 
    271272      ENDIF 
    272273      ! 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/SBC/cpl_oasis3.F90

    r10269 r11101  
    183183      IF(lwp) WRITE(numout,*) '~~~~~~~~~~~~~~~~~' 
    184184      IF(lwp) WRITE(numout,*) 
     185      IF(lflush) CALL flush(numout) 
    185186 
    186187      ncplmodel = kcplmodel 
     
    235236         WRITE(numout,*) ' multiexchg: nldi, nlei, nimpp =', nldi, nlei, nimpp 
    236237         WRITE(numout,*) ' multiexchg: nldj, nlej, njmpp =', nldj, nlej, njmpp 
     238         IF(lflush) CALL flush(numout) 
    237239      ENDIF 
    238240       
     
    313315                     CALL oasis_abort ( ssnd(ji)%nid(jc,jm), 'cpl_define', 'Failure in oasis_def_var' ) 
    314316                  ENDIF 
    315                   IF( ln_ctl .AND. ssnd(ji)%nid(jc,jm) /= -1 ) WRITE(numout,*) "variable defined in the namcouple" 
    316                   IF( ln_ctl .AND. ssnd(ji)%nid(jc,jm) == -1 ) WRITE(numout,*) "variable NOT defined in the namcouple" 
     317                  IF( ln_ctl) THEN  
     318                     IF(ssnd(ji)%nid(jc,jm) /= -1 ) WRITE(numout,*) "variable defined in the namcouple" 
     319                     IF(ssnd(ji)%nid(jc,jm) == -1 ) WRITE(numout,*) "variable NOT defined in the namcouple" 
     320                     IF(lflush) CALL flush(numout) 
     321                  ENDIF 
    317322               END DO 
    318323            END DO 
     
    351356                  END IF 
    352357#endif 
    353                   IF( ln_ctl ) WRITE(numout,*) "Define", ji, jc, jm, " "//TRIM(zclname), " for ", OASIS_In 
    354                   flush(numout) 
     358                  IF( ln_ctl ) THEN 
     359                     WRITE(numout,*) "Define", ji, jc, jm, " "//TRIM(zclname), " for ", OASIS_In 
     360                     IF(lflush) CALL flush(numout) 
     361                  ENDIF 
    355362 
    356363                  ! Define 0D (Greenland or Antarctic ice mass) or 1D (river outflow) coupling fields 
     
    394401                     CALL oasis_abort ( srcv(ji)%nid(jc,jm), 'cpl_define', 'Failure in oasis_def_var' ) 
    395402                  ENDIF 
    396                   IF( ln_ctl .AND. srcv(ji)%nid(jc,jm) /= -1 ) WRITE(numout,*) "variable defined in the namcouple" 
    397                   IF( ln_ctl .AND. srcv(ji)%nid(jc,jm) == -1 ) WRITE(numout,*) "variable NOT defined in the namcouple" 
    398  
     403                  IF(ln_ctl) THEN 
     404                     IF(srcv(ji)%nid(jc,jm) /= -1 ) WRITE(numout,*) "variable defined in the namcouple" 
     405                     IF(srcv(ji)%nid(jc,jm) == -1 ) WRITE(numout,*) "variable NOT defined in the namcouple" 
     406                     IF(lflush) CALL flush(numout) 
     407                  ENDIF 
    399408               END DO 
    400409            END DO 
     
    447456                     WRITE(numout,*) '     -     Sum value is ', SUM(pdata(:,:,jc)) 
    448457                     WRITE(numout,*) '****************' 
     458                     IF(lflush) CALL flush(numout) 
    449459                  ENDIF 
    450460               ENDIF 
     
    491501                &        kinfo == OASIS_RecvOut .OR. kinfo == OASIS_FromRestOut 
    492502                
    493                IF ( ln_ctl )   WRITE(numout,*) "llaction, kinfo, kstep, ivarid: " , llaction, kinfo, kstep, srcv(kid)%nid(jc,jm) 
     503               IF ( ln_ctl )   THEN 
     504                  WRITE(numout,*) "llaction, kinfo, kstep, ivarid: " , llaction, kinfo, kstep, srcv(kid)%nid(jc,jm) 
     505                  IF(lflush) CALL flush(numout) 
     506               ENDIF 
    494507                
    495508               IF ( llaction ) THEN 
     
    513526                     WRITE(numout,*) '     -     Sum value is ', SUM(pdata(:,:,jc)) 
    514527                     WRITE(numout,*) '****************' 
     528                     IF(lflush) CALL flush(numout) 
    515529                  ENDIF 
    516530 
     
    603617                     WRITE(numout,*) '     - Start of data is ', pdata(1:number_to_print) 
    604618                     WRITE(numout,*) '****************' 
     619                     IF(lflush) CALL flush(numout) 
    605620                  ENDIF 
    606621                   
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/SBC/cpl_rnf_1d.F90

    r10269 r11101  
    7070      IF(lwp) WRITE(numout,*) 'cpl_rnf_1d_init : initialization of river runoff coupling' 
    7171      IF(lwp) WRITE(numout,*) '~~~~~~~~~~~~' 
     72      IF(lwp .AND. lflush) CALL flush(numout) 
    7273       
    7374      REWIND(numnam_cfg) 
     
    7879      READ  ( numnam_cfg, nam_cpl_rnf_1d, IOSTAT = ios, ERR = 902 ) 
    7980902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nam_cpl_rnf_1d in configuration namelist', lwp ) 
    80       IF(lwm) WRITE ( numond, nam_cpl_rnf_1d ) 
     81      IF(lwm .AND. nprint > 2) WRITE ( numond, nam_cpl_rnf_1d ) 
    8182 
    8283      !                                               ! Parameter control and print 
     
    8788      IF(lwp) WRITE(numout,*) '             Print river information = ',ln_print_river_info 
    8889      IF(lwp) WRITE(numout,*) ' ' 
     90      IF(lwp .AND. lflush) CALL flush(numout) 
    8991       
    9092      ! Assign space for river numbers 
     
    109111       
    110112      ! Print out the largest river number 
    111       IF ( ln_print_river_info ) THEN 
     113      IF ( ln_print_river_info .AND. lwp) THEN 
    112114         WRITE(numout,*) 'Maximum river number in input file = ',max_river 
     115         IF(lflush) CALL flush(numout) 
    113116      END IF 
    114117       
     
    137140      rivers%river_area(:) = REAL(rivers%river_area_c(:),wp) 
    138141       
    139       IF ( ln_print_river_info ) THEN 
     142      IF ( ln_print_river_info .AND. lwp) THEN 
    140143        WRITE(numout,*) 'Area of rivers 1 to 10 are ',rivers%river_area(1:10) 
     144        IF(lflush) CALL flush(numout) 
    141145      END IF 
    142146       
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/SBC/fldread.F90

    r6487 r11101  
    275275            ! 
    276276            IF( sd(jf)%ln_tint ) THEN              ! temporal interpolation 
    277                IF(lwp .AND. kt - nit000 <= 100 ) THEN  
     277               IF(lwp .AND. nprint > 1 ) THEN  
    278278                  clfmt = "('fld_read: var ', a, ' kt = ', i8, ' (', f9.4,' days), Y/M/D = ', i4.4,'/', i2.2,'/', i2.2," //   & 
    279279                     &    "', records b/a: ', i6.4, '/', i6.4, ' (days ', f9.4,'/', f9.4, ')')" 
     
    281281                     & sd(jf)%nrec_b(1), sd(jf)%nrec_a(1), REAL(sd(jf)%nrec_b(2),wp)/rday, REAL(sd(jf)%nrec_a(2),wp)/rday 
    282282                  WRITE(numout, *) 'it_offset is : ',it_offset 
     283                  IF(lflush) CALL flush(numout) 
    283284               ENDIF 
    284285               ! temporal interpolation weights 
     
    288289               sd(jf)%fnow(:,:,:) = ztintb * sd(jf)%fdta(:,:,:,1) + ztinta * sd(jf)%fdta(:,:,:,2) 
    289290            ELSE   ! nothing to do... 
    290                IF(lwp .AND. kt - nit000 <= 100 ) THEN 
     291               IF(lwp .AND. nprint > 1 ) THEN 
    291292                  clfmt = "('fld_read: var ', a, ' kt = ', i8,' (', f9.4,' days), Y/M/D = ', i4.4,'/', i2.2,'/', i2.2," //   & 
    292293                     &    "', record: ', i6.4, ' (days ', f9.4, ' <-> ', f9.4, ')')" 
    293294                  WRITE(numout, clfmt) TRIM(sd(jf)%clvar), kt, REAL(isecsbc,wp)/rday, nyear, nmonth, nday,    & 
    294295                     &                 sd(jf)%nrec_a(1), REAL(sd(jf)%nrec_b(2),wp)/rday, REAL(sd(jf)%nrec_a(2),wp)/rday 
     296                  IF(lflush) CALL flush(numout) 
    295297               ENDIF 
    296298            ENDIF 
     
    414416 
    415417         clfmt = "('fld_init : time-interpolation for ', a, ' read previous record = ', i6, ' at time = ', f7.2, ' days')" 
    416          IF(lwp) WRITE(numout, clfmt) TRIM(sdjf%clvar), sdjf%nrec_a(1), REAL(sdjf%nrec_a(2),wp)/rday 
     418         IF(lwp .AND. nprint > 0) THEN 
     419            WRITE(numout, clfmt) TRIM(sdjf%clvar), sdjf%nrec_a(1), REAL(sdjf%nrec_a(2),wp)/rday 
     420         ENDIF 
    417421 
    418422      ENDIF 
     
    708712      IF(lwp) WRITE(numout,*) 'Dim size for ',TRIM(clvar),' is ', ilendta 
    709713      IF(lwp) WRITE(numout,*) 'Number of levels for ',TRIM(clvar),' is ', ipk 
     714      IF(lwp .AND. lflush) CALL flush(numout) 
    710715 
    711716      SELECT CASE( ipk ) 
     
    779784                     END DO 
    780785                     sd(ju)%rotn(jn) = .TRUE.               ! vector was rotated  
    781                      IF( lwp .AND. kt == nit000 )   WRITE(numout,*)   & 
     786                     IF( lwp .AND. kt == nit000 )   THEN 
     787                        WRITE(numout,*)   & 
    782788                        &   'fld_read: vector pair ('//TRIM(sd(ju)%clvar)//', '//TRIM(sd(iv)%clvar)//') rotated on to model grid' 
     789                        IF(lflush) CALL flush(numout) 
     790                     ENDIF 
    783791                  ENDIF 
    784792               ENDIF 
     
    941949               &                          ' data type: '      ,       sdf(jf)%cltype      ,   & 
    942950               &                          ' land/sea mask:'   , TRIM( sdf(jf)%lsmname    ) 
    943             call flush(numout) 
    944951         END DO 
     952         IF(lflush) CALL flush(numout) 
    945953      ENDIF 
    946954       
     
    10001008      !!---------------------------------------------------------------------- 
    10011009      ! 
    1002       DO kw = 1, nxt_wgt-1 
    1003          WRITE(numout,*) 'weight file:  ',TRIM(ref_wgts(kw)%wgtname) 
    1004          WRITE(numout,*) '      ddims:  ',ref_wgts(kw)%ddims(1),ref_wgts(kw)%ddims(2) 
    1005          WRITE(numout,*) '     numwgt:  ',ref_wgts(kw)%numwgt 
    1006          WRITE(numout,*) '     jpiwgt:  ',ref_wgts(kw)%jpiwgt 
    1007          WRITE(numout,*) '     jpjwgt:  ',ref_wgts(kw)%jpjwgt 
    1008          WRITE(numout,*) '    botleft:  ',ref_wgts(kw)%botleft 
    1009          WRITE(numout,*) '   topright:  ',ref_wgts(kw)%topright 
    1010          IF( ref_wgts(kw)%cyclic ) THEN 
    1011             WRITE(numout,*) '       cyclical' 
    1012             IF( ref_wgts(kw)%overlap > 0 ) WRITE(numout,*) '              with overlap of ', ref_wgts(kw)%overlap 
    1013          ELSE 
    1014             WRITE(numout,*) '       not cyclical' 
    1015          ENDIF 
    1016          IF( ASSOCIATED(ref_wgts(kw)%data_wgt) )  WRITE(numout,*) '       allocated' 
    1017       END DO 
     1010      IF(nprint > 0) THEN 
     1011         DO kw = 1, nxt_wgt-1 
     1012            WRITE(numout,*) 'weight file:  ',TRIM(ref_wgts(kw)%wgtname) 
     1013            IF(nprint > 1) THEN 
     1014                WRITE(numout,*) '      ddims:  ',ref_wgts(kw)%ddims(1),ref_wgts(kw)%ddims(2) 
     1015                WRITE(numout,*) '     numwgt:  ',ref_wgts(kw)%numwgt 
     1016                WRITE(numout,*) '     jpiwgt:  ',ref_wgts(kw)%jpiwgt 
     1017                WRITE(numout,*) '     jpjwgt:  ',ref_wgts(kw)%jpjwgt 
     1018                WRITE(numout,*) '    botleft:  ',ref_wgts(kw)%botleft 
     1019                WRITE(numout,*) '   topright:  ',ref_wgts(kw)%topright 
     1020                IF( ref_wgts(kw)%cyclic ) THEN 
     1021                   WRITE(numout,*) '       cyclical' 
     1022                   IF( ref_wgts(kw)%overlap > 0 ) WRITE(numout,*) '              with overlap of ', ref_wgts(kw)%overlap 
     1023                ELSE 
     1024                   WRITE(numout,*) '       not cyclical' 
     1025                ENDIF 
     1026                IF( ASSOCIATED(ref_wgts(kw)%data_wgt) )  WRITE(numout,*) '       allocated' 
     1027            ENDIF 
     1028         END DO 
     1029  
     1030        IF(lflush) CALL flush(numout) 
     1031 
     1032      ENDIF 
    10181033      ! 
    10191034   END SUBROUTINE wgt_print 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/SBC/sbcana.F90

    r6486 r11101  
    8181         READ  ( numnam_cfg, namsbc_ana, IOSTAT = ios, ERR = 902 ) 
    8282902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_ana in configuration namelist', lwp ) 
    83          IF(lwm) WRITE ( numond, namsbc_ana ) 
     83         IF(lwm .AND. nprint > 2) WRITE ( numond, namsbc_ana ) 
    8484         ! 
    8585         IF(lwp) WRITE(numout,*)' ' 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/SBC/sbcapr.F90

    r9321 r11101  
    8484         READ  ( numnam_cfg, namsbc_apr, IOSTAT = ios, ERR = 902 ) 
    8585902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_apr in configuration namelist', lwp ) 
    86          IF(lwm) WRITE ( numond, namsbc_apr ) 
     86         IF(lwm .AND. nprint > 2) WRITE ( numond, namsbc_apr ) 
    8787         ! 
    8888         ALLOCATE( sf_apr(1), STAT=ierror )           !* allocate and fill sf_sst (forcing structure) with sn_sst 
     
    9999            WRITE(numout,*) '   Namelist namsbc_apr : Atmospheric PRessure as extrenal forcing' 
    100100            WRITE(numout,*) '      ref. pressure: global mean Patm (T) or a constant (F)  ln_ref_apr = ', ln_ref_apr 
     101            IF(lflush) CALL flush(numout) 
    101102         ENDIF 
    102103         ! 
     
    114115            IF(lwp) WRITE(numout,*) '         Inverse barometer added to OBC ssh data' 
    115116         ENDIF 
     117          
     118         IF(lwp .AND. lflush) CALL flush(numout) 
     119 
    116120         IF( ( ln_apr_obc ) .AND. .NOT. lk_dynspg_ts )   & 
    117121            CALL ctl_stop( 'sbc_apr: use inverse barometer ssh at open boundary ONLY possible with time-splitting' ) 
     
    152156            ssh_ibb(:,:) = ssh_ib(:,:) 
    153157         ENDIF 
     158   
     159         IF(lwp .AND. lflush) CALL flush(numout) 
     160 
    154161      ENDIF 
    155162      !                                         ! ---------------------------------------- ! 
     
    159166         IF(lwp) WRITE(numout,*) 'sbc_apr : ssh_ib written in ocean restart file at it= ', kt,' date= ', ndastp 
    160167         IF(lwp) WRITE(numout,*) '~~~~' 
     168         IF(lwp .AND. lflush) CALL flush(numout) 
    161169         IF(nn_timing == 2)  CALL timing_start('iom_rstput') 
    162170         CALL iom_rstput( kt, nitrst, numrow, 'ssh_ibb' , ssh_ib ) 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/SBC/sbcblk_clio.F90

    r6498 r11101  
    151151         READ  ( numnam_cfg, namsbc_clio, IOSTAT = ios, ERR = 902 ) 
    152152902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_clio in configuration namelist', lwp ) 
    153          IF(lwm) WRITE ( numond, namsbc_clio ) 
     153         IF(lwm .AND. nprint > 2) WRITE ( numond, namsbc_clio ) 
    154154 
    155155         ! store namelist information in an array 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/SBC/sbcblk_core.F90

    r6823 r11101  
    166166902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_core in configuration namelist', lwp ) 
    167167 
    168          IF(lwm) WRITE( numond, namsbc_core ) 
     168         IF(lwm .AND. nprint > 2) WRITE( numond, namsbc_core ) 
    169169         !                                         ! check: do we plan to use ln_dm2dc with non-daily forcing? 
    170170         IF( ln_dm2dc .AND. sn_qsr%nfreqh /= 24 )   & 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/SBC/sbcblk_mfs.F90

    r6486 r11101  
    141141         READ  ( numnam_cfg, namsbc_mfs, IOSTAT = ios, ERR = 902 ) 
    142142902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_mfs in configuration namelist', lwp ) 
    143          IF(lwm) WRITE ( numond, namsbc_mfs ) 
     143         IF(lwm .AND. nprint > 2) WRITE ( numond, namsbc_mfs ) 
    144144         ! 
    145145         ! store namelist information in an array 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/SBC/sbccpl.F90

    r10269 r11101  
    276276      READ  ( numnam_cfg, namsbc_cpl, IOSTAT = ios, ERR = 902 ) 
    277277902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_cpl in configuration namelist', lwp ) 
    278       IF(lwm) WRITE ( numond, namsbc_cpl ) 
     278      IF(lwm .AND. nprint > 2) WRITE ( numond, namsbc_cpl ) 
    279279 
    280280      IF(lwp) THEN                        ! control print 
     
    331331      ENDIF 
    332332 
     333      IF(lwp .AND. lflush) CALL flush(numout) 
    333334      !                                   ! allocate sbccpl arrays 
    334335      !IF( sbc_cpl_alloc() /= 0 )   CALL ctl_stop( 'STOP', 'sbc_cpl_alloc : unable to allocate arrays' ) 
     
    480481         IF(lwp) WRITE(numout,*) 
    481482         IF(lwp) WRITE(numout,*) '   runoffs received from oasis -> force ln_rnf = ', ln_rnf 
     483         IF(lwp .AND. lflush) CALL flush(numout) 
    482484      ENDIF 
    483485      ! 
     
    630632            WRITE(numout,*)'                  wind stress module' 
    631633            WRITE(numout,*) 
     634            IF(lflush) CALL flush(numout) 
    632635         ENDIF 
    633636      ENDIF 
     
    677680            WRITE(numout,*)'               fraction of solar net radiation absorbed in the first ocean level' 
    678681            WRITE(numout,*) 
     682            IF(lflush) CALL flush(numout) 
    679683         ENDIF 
    680684      ENDIF 
     
    907911            WRITE(numout,*)'               fraction of solar net radiation absorbed in the first ocean level' 
    908912            WRITE(numout,*) 
     913            IF(lflush) CALL flush(numout) 
    909914         ENDIF 
    910915      ENDIF 
     
    947952            WRITE(numout,*)'                  wind stress U,V components' 
    948953            WRITE(numout,*)'                  wind stress module' 
     954            IF(lflush) CALL flush(numout) 
    949955         ENDIF 
    950956      ENDIF 
     
    11041110      REAL(wp) ::   zzx, zzy               ! temporary variables 
    11051111      REAL(wp), POINTER, DIMENSION(:,:) ::   ztx, zty, zmsk, zemp, zqns, zqsr, ztx2, zty2 
     1112      LOGICAL  ::   ll_wrtstp  !write diagnostics? 
    11061113      !!---------------------------------------------------------------------- 
    11071114 
     1115      ll_wrtstp  = ( MOD( kt, sn_cfctl%ptimincr ) == 0 ) .OR. ( kt == nitend ) 
    11081116      ! 
    11091117      IF( nn_timing.gt.0 .and. nn_timing .le. 2 )  CALL timing_start('sbc_cpl_rcv') 
     
    14671475            greenland_icesheet_timelapsed = 0.0_wp        
    14681476         ENDIF 
    1469          IF(lwp) WRITE(numout,*) 'Greenland icesheet mass (kg) read in is ', zgreenland_icesheet_mass_in 
    1470          IF(lwp) WRITE(numout,*) 'Greenland icesheet mass (kg) used is    ', greenland_icesheet_mass 
    1471          IF(lwp) WRITE(numout,*) 'Greenland icesheet mass rate of change (kg/s) is ', greenland_icesheet_mass_rate_of_change 
    1472          IF(lwp) WRITE(numout,*) 'Greenland icesheet seconds lapsed since last change is ', greenland_icesheet_timelapsed 
     1477         IF(lwp .AND. ll_wrtstp) THEN 
     1478            WRITE(numout,*) 'Greenland icesheet mass (kg) read in is ', zgreenland_icesheet_mass_in 
     1479            WRITE(numout,*) 'Greenland icesheet mass (kg) used is    ', greenland_icesheet_mass 
     1480            WRITE(numout,*) 'Greenland icesheet mass rate of change (kg/s) is ', greenland_icesheet_mass_rate_of_change 
     1481            WRITE(numout,*) 'Greenland icesheet seconds lapsed since last change is ', greenland_icesheet_timelapsed 
     1482            IF(lflush) CALL flush(numout) 
     1483         ENDIF 
    14731484      ELSE IF ( nn_coupled_iceshelf_fluxes == 2 ) THEN 
    14741485         greenland_icesheet_mass_rate_of_change = rn_greenland_total_fw_flux 
     
    15141525            antarctica_icesheet_timelapsed = 0.0_wp        
    15151526         ENDIF 
    1516          IF(lwp) WRITE(numout,*) 'Antarctica icesheet mass (kg) read in is ', zantarctica_icesheet_mass_in 
    1517          IF(lwp) WRITE(numout,*) 'Antarctica icesheet mass (kg) used is    ', antarctica_icesheet_mass 
    1518          IF(lwp) WRITE(numout,*) 'Antarctica icesheet mass rate of change (kg/s) is ', antarctica_icesheet_mass_rate_of_change 
    1519          IF(lwp) WRITE(numout,*) 'Antarctica icesheet seconds lapsed since last change is ', antarctica_icesheet_timelapsed 
     1527         IF(lwp .AND. ll_wrtstp) THEN 
     1528            WRITE(numout,*) 'Antarctica icesheet mass (kg) read in is ', zantarctica_icesheet_mass_in 
     1529            WRITE(numout,*) 'Antarctica icesheet mass (kg) used is    ', antarctica_icesheet_mass 
     1530            WRITE(numout,*) 'Antarctica icesheet mass rate of change (kg/s) is ', antarctica_icesheet_mass_rate_of_change 
     1531            WRITE(numout,*) 'Antarctica icesheet seconds lapsed since last change is ', antarctica_icesheet_timelapsed 
     1532            IF(lflush) CALL flush(numout) 
     1533         ENDIF 
    15201534      ELSE IF ( nn_coupled_iceshelf_fluxes == 2 ) THEN 
    15211535         antarctica_icesheet_mass_rate_of_change = rn_antarctica_total_fw_flux 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/SBC/sbcdcy.F90

    r6486 r11101  
    9999            WRITE(numout,*) '~~~~~~~' 
    100100            WRITE(numout,*) 
     101            IF(lflush) CALL flush(numout) 
    101102         ENDIF 
    102103         ! allocate sbcdcy arrays 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/SBC/sbcflx.F90

    r6486 r11101  
    9898         READ  ( numnam_cfg, namsbc_flx, IOSTAT = ios, ERR = 902 ) 
    9999902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_flx in configuration namelist', lwp ) 
    100          IF(lwm) WRITE ( numond, namsbc_flx )  
     100         IF(lwm .AND. nprint > 2) WRITE ( numond, namsbc_flx )  
    101101         ! 
    102102         !                                         ! check: do we plan to use ln_dm2dc with non-daily forcing? 
     
    159159         CALL lbc_lnk( taum(:,:), 'T', 1. )   ;   CALL lbc_lnk( wndm(:,:), 'T', 1. ) 
    160160 
    161          IF( nitend-nit000 <= 100 .AND. lwp ) THEN                ! control print (if less than 100 time-step asked) 
     161         IF( nprint > 2 .AND. lwp ) THEN                ! control print (if less than 100 time-step asked) 
    162162            WRITE(numout,*)  
    163163            WRITE(numout,*) '        read daily momentum, heat and freshwater fluxes OK' 
     
    170170               CALL prihre( sf(jf)%fnow, jpi, jpj, 1, jpi, 20, 1, jpj, 10, zfact, numout ) 
    171171            END DO 
    172             CALL FLUSH(numout) 
     172            IF(lflush) CALL flush(numout) 
    173173         ENDIF 
    174174         ! 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/SBC/sbcfwb.F90

    r6487 r11101  
    8686            IF( kn_fwb == 2 )   WRITE(numout,*) '          adjusted from previous year budget' 
    8787            IF( kn_fwb == 3 )   WRITE(numout,*) '          fwf set to zero and spread out over erp area' 
     88            IF(lflush) CALL flush(numout) 
    8889         ENDIF 
    8990         ! 
     
    127128            IF(lwp)WRITE(numout,*)'          year = ',iyear-1, ' freshwater budget read       = ', a_fwb 
    128129            IF(lwp)WRITE(numout,*)'          year = ',iyear-2, ' freshwater budget read       = ', a_fwb_b 
     130            IF(lwp .AND. lflush) CALL flush(numout) 
    129131         ENDIF    
    130132         !                                         ! Update fwfold if new year start 
     
    188190            erp(:,:) = erp(:,:) + zerp_cor(:,:) 
    189191            ! 
    190             IF( nprint == 1 .AND. lwp ) THEN                   ! control print 
     192            IF( nprint > 3 .AND. lwp ) THEN                   ! control print 
    191193               IF( z_fwf < 0._wp ) THEN 
    192194                  WRITE(numout,*)'   z_fwf < 0' 
     
    201203               WRITE(numout,*)'   MIN(zerp_cor) = ', MINVAL(zerp_cor)  
    202204               WRITE(numout,*)'   MAX(zerp_cor) = ', MAXVAL(zerp_cor)  
     205               IF(lflush) CALL flush(numout) 
    203206            ENDIF 
    204207         ENDIF 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/SBC/sbcice_cice.F90

    r9975 r11101  
    182182      CALL wrk_alloc( jpi,jpj, ztmp1, ztmp2 ) 
    183183      ! 
    184       IF(lwp) WRITE(numout,*)'cice_sbc_init' 
     184      IF(lwp .AND. nprint>1) THEN 
     185         WRITE(numout,*)'cice_sbc_init' 
     186         IF(lflush) CALL flush(numout) 
     187      ENDIF 
    185188 
    186189      ji_off = INT ( (jpiglo - nx_global) / 2 ) 
     
    342345 
    343346      IF( kt == nit000 )  THEN 
    344          IF(lwp) WRITE(numout,*)'cice_sbc_in' 
     347         IF(lwp .AND. nprint>1) THEN 
     348            WRITE(numout,*)'cice_sbc_in' 
     349            IF(lflush) CALL flush(numout) 
     350         ENDIF 
    345351      ENDIF 
    346352 
     
    583589       
    584590      IF( kt == nit000 )  THEN 
    585          IF(lwp) WRITE(numout,*)'cice_sbc_out' 
     591         IF(lwp .AND. nprint>1) THEN 
     592            WRITE(numout,*)'cice_sbc_out' 
     593            IF(lflush) CALL flush(numout) 
     594         ENDIF 
    586595      ENDIF 
    587596       
     
    820829      !!--------------------------------------------------------------------- 
    821830 
    822       IF(lwp) WRITE(numout,*)'cice_sbc_final' 
     831      IF(lwp .AND. nprint > 1) THEN 
     832         WRITE(numout,*)'cice_sbc_final' 
     833         IF(lflush) CALL flush(numout) 
     834      ENDIF 
    823835 
    824836      CALL CICE_Finalize 
     
    895907         READ  ( numnam_cfg, namsbc_cice, IOSTAT = ios, ERR = 902 ) 
    896908902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_cice in configuration namelist', lwp ) 
    897          IF(lwm) WRITE ( numond, namsbc_cice ) 
     909         IF(lwm .AND. nprint > 2) WRITE ( numond, namsbc_cice ) 
    898910 
    899911         ! store namelist information in an array 
     
    943955         WRITE(numout,*)  
    944956         WRITE(numout,*) '        read forcing fluxes for CICE OK' 
    945          CALL FLUSH(numout) 
     957         IF(lflush) CALL flush(numout) 
    946958      ENDIF 
    947959 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/SBC/sbcice_if.F90

    r6498 r11101  
    8282         READ  ( numnam_cfg, namsbc_iif, IOSTAT = ios, ERR = 902 ) 
    8383902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_iif in configuration namelist', lwp ) 
    84          IF(lwm) WRITE ( numond, namsbc_iif ) 
     84         IF(lwm .AND. nprint > 2) WRITE ( numond, namsbc_iif ) 
    8585 
    8686         ALLOCATE( sf_ice(1), STAT=ierror ) 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/SBC/sbcisf.F90

    r8046 r11101  
    9191    CHARACTER (LEN=32)           :: cvarLeff                    ! variable name for efficient Length scale 
    9292    INTEGER           ::   ios           ! Local integer output status for namelist read 
     93    LOGICAL                      :: ll_wrtstp  !write diagnostics? 
    9394 
    9495    REAL(wp), DIMENSION(:,:,:), POINTER :: zfwfisf3d, zqhcisf3d, zqlatisf3d 
     
    100101      ! 
    101102      ! 
     103      ll_wrtstp  = ( MOD( kt, sn_cfctl%ptimincr ) == 0 ) .OR. ( kt == nitend ) 
    102104      !                                         ! ====================== ! 
    103105      IF( kt == nit000 ) THEN                   !  First call kt=nit000  ! 
     
    110112         READ  ( numnam_cfg, namsbc_isf, IOSTAT = ios, ERR = 902 ) 
    111113902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_isf in configuration namelist', lwp ) 
    112          IF(lwm) WRITE ( numond, namsbc_isf ) 
     114         IF(lwm .AND. nprint > 2) WRITE ( numond, namsbc_isf ) 
    113115 
    114116 
     
    124126         IF ( lwp ) WRITE(numout,*) '        nn_gammablk = ', nn_gammablk  
    125127         IF ( lwp ) WRITE(numout,*) '        rn_tfri2    = ', rn_tfri2  
     128         IF(lwp .AND. lflush) CALL flush(numout) 
    126129         IF (ln_divisf) THEN       ! keep it in the namelist ??? used true anyway as for runoff ? (PM) 
    127130            rdivisf = 1._wp 
     
    271274 
    272275               ! check 
    273                IF(lwp) WRITE(numout, *) 'Greenland iceshelf melting climatology (kg/s) : ',zgreenland_fwfisf_sum 
     276               IF(lwp .AND. ll_wrtstp) WRITE(numout, *) 'Greenland iceshelf melting climatology (kg/s) : ',zgreenland_fwfisf_sum 
    274277 
    275278               zgreenland_fwfisf_sum = glob_sum( fwfisf(:,:) * e1t(:,:) * e2t(:,:) * greenland_icesheet_mask(:,:) ) 
    276279 
    277                IF(lwp) WRITE(numout, *) 'Greenland iceshelf melting adjusted value (kg/s) : ',zgreenland_fwfisf_sum 
     280               IF(lwp .AND. ll_wrtstp) WRITE(numout, *) 'Greenland iceshelf melting adjusted value (kg/s) : ',zgreenland_fwfisf_sum 
    278281 
    279282               zantarctica_fwfisf_sum = glob_sum( fwfisf(:,:) * e1t(:,:) * e2t(:,:) * antarctica_icesheet_mask(:,:) ) 
     
    285288       
    286289               ! check 
    287                IF(lwp) WRITE(numout, *) 'Antarctica iceshelf melting climatology (kg/s) : ',zantarctica_fwfisf_sum 
     290               IF(lwp .AND. ll_wrtstp) WRITE(numout, *) 'Antarctica iceshelf melting climatology (kg/s) : ',zantarctica_fwfisf_sum 
    288291 
    289292               zantarctica_fwfisf_sum = glob_sum( fwfisf(:,:) * e1t(:,:) * e2t(:,:) * antarctica_icesheet_mask(:,:) ) 
    290293 
    291                IF(lwp) WRITE(numout, *) 'Antarctica iceshelf melting adjusted value (kg/s) : ',zantarctica_fwfisf_sum 
     294               IF(lwp .AND. ll_wrtstp) WRITE(numout, *) 'Antarctica iceshelf melting adjusted value (kg/s) : ',zantarctica_fwfisf_sum 
    292295 
    293296            ENDIF 
     
    320323 
    321324               ! check 
    322                IF(lwp) WRITE(numout, *) 'Greenland iceshelf melting climatology (kg/s) : ',zgreenland_fwfisf_sum 
     325               IF(lwp .AND. ll_wrtstp) WRITE(numout, *) 'Greenland iceshelf melting climatology (kg/s) : ',zgreenland_fwfisf_sum 
    323326 
    324327               zgreenland_fwfisf_sum = glob_sum( fwfisf(:,:) * e1t(:,:) * e2t(:,:) * greenland_icesheet_mask(:,:) ) 
    325328 
    326                IF(lwp) WRITE(numout, *) 'Greenland iceshelf melting adjusted value (kg/s) : ',zgreenland_fwfisf_sum 
     329               IF(lwp .AND. ll_wrtstp) WRITE(numout, *) 'Greenland iceshelf melting adjusted value (kg/s) : ',zgreenland_fwfisf_sum 
    327330 
    328331               zantarctica_fwfisf_sum = glob_sum( fwfisf(:,:) * e1t(:,:) * e2t(:,:) * antarctica_icesheet_mask(:,:) ) 
     
    334337       
    335338               ! check 
    336                IF(lwp) WRITE(numout, *) 'Antarctica iceshelf melting climatology (kg/s) : ',zantarctica_fwfisf_sum 
     339               IF(lwp .AND. ll_wrtstp) WRITE(numout, *) 'Antarctica iceshelf melting climatology (kg/s) : ',zantarctica_fwfisf_sum 
    337340 
    338341               zantarctica_fwfisf_sum = glob_sum( fwfisf(:,:) * e1t(:,:) * e2t(:,:) * antarctica_icesheet_mask(:,:) ) 
    339342 
    340                IF(lwp) WRITE(numout, *) 'Antarctica iceshelf melting adjusted value (kg/s) : ',zantarctica_fwfisf_sum 
     343               IF(lwp .AND. ll_wrtstp) WRITE(numout, *) 'Antarctica iceshelf melting adjusted value (kg/s) : ',zantarctica_fwfisf_sum 
    341344 
    342345            ENDIF 
     
    409412                 & iom_varid( numror, 'fwf_isf_b', ldstop = .FALSE. ) > 0 ) THEN 
    410413               IF(lwp) WRITE(numout,*) '          nit000-1 isf tracer content forcing fields read in the restart file' 
     414               IF(lwp .AND. lflush) CALL flush(numout) 
    411415               CALL iom_get( numror, jpdom_autoglo, 'fwf_isf_b', fwfisf_b(:,:) )   ! before salt content isf_tsc trend 
    412416               CALL iom_get( numror, jpdom_autoglo, 'isf_sc_b', risf_tsc_b(:,:,jp_sal) )   ! before salt content isf_tsc trend 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/SBC/sbcmod.F90

    r9321 r11101  
    9999         WRITE(numout,*) 'sbc_init : surface boundary condition setting' 
    100100         WRITE(numout,*) '~~~~~~~~ ' 
     101         IF(lflush) CALL flush(numout) 
    101102      ENDIF 
    102103 
     
    108109      READ  ( numnam_cfg, namsbc, IOSTAT = ios, ERR = 902 ) 
    109110902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc in configuration namelist', lwp ) 
    110       IF(lwm) WRITE ( numond, namsbc ) 
     111      IF(lwm .AND. nprint > 2) WRITE ( numond, namsbc ) 
    111112 
    112113      !                          ! overwrite namelist parameter using CPP key information 
     
    160161      END SELECT 
    161162      ! 
     163      IF(lwp .AND. lflush) CALL flush(numout) 
     164      ! 
    162165      IF ( nn_components /= jp_iam_nemo .AND. .NOT. lk_oasis )   & 
    163166         &      CALL ctl_stop( 'STOP', 'sbc_init : OPA-SAS coupled via OASIS, but key_oasis3 disabled' ) 
     
    264267         IF( nn_components/= jp_iam_nemo )  & 
    265268            &                       WRITE(numout,*) '              + OASIS coupled SAS' 
     269         IF(lflush) CALL flush(numout) 
    266270      ENDIF 
    267271      ! 
     
    283287            WRITE(numout,*)"   OPA-SAS coupled via OASIS : nn_fsbc re-defined from OASIS namcouple ", nn_fsbc 
    284288            WRITE(numout,*) 
     289            IF(lflush) CALL flush(numout) 
    285290         ENDIF 
    286291      ENDIF 
     
    421426         IF( ln_rstart .AND.    &                               !* Restart: read in restart file 
    422427            & iom_varid( numror, 'utau_b', ldstop = .FALSE. ) > 0 ) THEN  
    423             IF(lwp) WRITE(numout,*) '          nit000-1 surface forcing fields red in the restart file' 
     428            IF(lwp .AND. nprint > 0) THEN 
     429               WRITE(numout,*) '          nit000-1 surface forcing fields red in the restart file' 
     430               IF(lflush) CALL flush(numout) 
     431            ENDIF 
    424432            IF(nn_timing == 2)  CALL timing_start('iom_rstget') 
    425433            CALL iom_get( numror, jpdom_autoglo, 'utau_b', utau_b )   ! before i-stress  (U-point) 
     
    448456      IF( lrst_oce ) THEN                              !      Write in the ocean restart file     ! 
    449457         !                                             ! ---------------------------------------- ! 
    450          IF(lwp) WRITE(numout,*) 
    451          IF(lwp) WRITE(numout,*) 'sbc : ocean surface forcing fields written in ocean restart file ',   & 
     458         IF(lwp .AND. nprint > 0) THEN 
     459            WRITE(numout,*) 
     460            WRITE(numout,*) 'sbc : ocean surface forcing fields written in ocean restart file ',   & 
    452461            &                    'at it= ', kt,' date= ', ndastp 
    453          IF(lwp) WRITE(numout,*) '~~~~' 
     462            WRITE(numout,*) '~~~~' 
     463            IF(lflush) CALL flush(numout) 
     464         ENDIF 
    454465         IF(nn_timing == 2)  CALL timing_start('iom_rstput') 
    455466         CALL iom_rstput( kt, nitrst, numrow, 'utau_b' , utau ) 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/SBC/sbcrnf.F90

    r9321 r11101  
    148148         IF( ln_rstart .AND.    &                               !* Restart: read in restart file 
    149149            & iom_varid( numror, 'rnf_b', ldstop = .FALSE. ) > 0 ) THEN 
    150             IF(lwp) WRITE(numout,*) '          nit000-1 runoff forcing fields red in the restart file' 
     150            IF(lwp .AND. nprint > 0) WRITE(numout,*) '          nit000-1 runoff forcing fields red in the restart file' 
    151151            IF(nn_timing == 2)  CALL timing_start('iom_rstget') 
    152152            CALL iom_get( numror, jpdom_autoglo, 'rnf_b', rnf_b )     ! before runoff 
     
    159159            rnf_tsc_b(:,:,:) = rnf_tsc(:,:,:) 
    160160         ENDIF 
     161  
     162         IF(lwp .AND. lflush) CALL flush(numout) 
     163 
    161164      ENDIF 
    162165      !                                                ! ---------------------------------------- ! 
    163166      IF( lrst_oce ) THEN                              !      Write in the ocean restart file     ! 
    164167         !                                             ! ---------------------------------------- ! 
    165          IF(lwp) WRITE(numout,*) 
    166          IF(lwp) WRITE(numout,*) 'sbcrnf : runoff forcing fields written in ocean restart file ',   & 
     168         IF(lwp .AND. nprint > 0) THEN 
     169            WRITE(numout,*) 
     170            WRITE(numout,*) 'sbcrnf : runoff forcing fields written in ocean restart file ',   & 
    167171            &                    'at it= ', kt,' date= ', ndastp 
    168          IF(lwp) WRITE(numout,*) '~~~~' 
     172            WRITE(numout,*) '~~~~' 
     173            IF(lflush) CALL flush(numout) 
     174         ENDIF 
    169175         IF(nn_timing == 2)  CALL timing_start('iom_rstput') 
    170176         CALL iom_rstput( kt, nitrst, numrow, 'rnf_b' , rnf ) 
     
    282288      READ  ( numnam_cfg, namsbc_rnf, IOSTAT = ios, ERR = 902 ) 
    283289902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_rnf in configuration namelist', lwp ) 
    284       IF(lwm) WRITE ( numond, namsbc_rnf ) 
     290      IF(lwm .AND. nprint > 2) WRITE ( numond, namsbc_rnf ) 
    285291      ! 
    286292      !                                         ! Control print 
     
    294300         WRITE(numout,*) '      depth of river mouth additional mixing     rn_hrnf      = ', rn_hrnf 
    295301         WRITE(numout,*) '      multiplicative factor for runoff           rn_rfact     = ', rn_rfact 
     302         IF(lflush) CALL flush(numout) 
    296303      ENDIF 
    297304      !                                   ! ================== 
     
    303310         IF(lwp) WRITE(numout,*) 
    304311         IF(lwp) WRITE(numout,*) '          runoffs inflow read in a file' 
     312         IF(lwp .AND. lflush) CALL flush(numout) 
    305313         IF( ierror > 0 ) THEN 
    306314            CALL ctl_stop( 'sbc_rnf: unable to allocate sf_rnf structure' )   ;   RETURN 
     
    314322         IF(lwp) WRITE(numout,*) 
    315323         IF(lwp) WRITE(numout,*) '          runoffs temperatures read in a file' 
     324         IF(lwp .AND. lflush) CALL flush(numout) 
    316325         ALLOCATE( sf_t_rnf(1), STAT=ierror  ) 
    317326         IF( ierror > 0 ) THEN 
     
    326335         IF(lwp) WRITE(numout,*) 
    327336         IF(lwp) WRITE(numout,*) '          runoffs salinities read in a file' 
     337         IF(lwp .AND. lflush) CALL flush(numout) 
    328338         ALLOCATE( sf_s_rnf(1), STAT=ierror  ) 
    329339         IF( ierror > 0 ) THEN 
     
    338348         IF(lwp) WRITE(numout,*) 
    339349         IF(lwp) WRITE(numout,*) '          runoffs depth read in a file' 
     350         IF(lwp .AND. lflush) CALL flush(numout) 
    340351         rn_dep_file = TRIM( cn_dir )//TRIM( sn_dep_rnf%clname ) 
    341352         IF( .NOT. sn_dep_rnf%ln_clim ) THEN   ;   WRITE(rn_dep_file, '(a,"_y",i4)' ) TRIM( rn_dep_file ), nyear    ! add year  
     
    378389         IF(lwp) WRITE(numout,*) '    depth over which runoffs is spread                        rn_dep_max = ', rn_dep_max 
    379390         IF(lwp) WRITE(numout,*) '     create (=1) a runoff depth file or not (=0)      nn_rnf_depth_file  = ', nn_rnf_depth_file 
     391         IF(lwp .AND. lflush) CALL flush(numout) 
    380392 
    381393         CALL iom_open( TRIM( sn_rnf%clname ), inum )    !  open runoff file 
     
    431443         IF( nn_rnf_depth_file == 1 ) THEN      !  save  output nb levels for runoff 
    432444            IF(lwp) WRITE(numout,*) '              create runoff depht file' 
     445            IF(lwp .AND. lflush) CALL flush(numout) 
    433446            CALL iom_open  ( TRIM( sn_dep_rnf%clname ), inum, ldwrt = .TRUE., kiolib = jprstlib ) 
    434447            CALL iom_rstput( 0, 0, inum, 'rodepth', h_rnf ) 
     
    468481         IF(lwp) WRITE(numout,*) '             - set to zero SSS damping       (if ln_ssr=T)' 
    469482         IF(lwp) WRITE(numout,*) '             - mixed upstream-centered       (if ln_traadv_cen2=T)' 
     483         IF(lwp .AND. lflush) CALL flush(numout) 
    470484         ! 
    471485         CALL rnf_mouth                             ! set river mouth mask 
     
    474488         IF(lwp) WRITE(numout,*) 
    475489         IF(lwp) WRITE(numout,*) '          No specific treatment at river mouths' 
     490         IF(lwp .AND. lflush) CALL flush(numout) 
    476491         rnfmsk  (:,:) = 0._wp 
    477492         rnfmsk_z(:)   = 0._wp 
     
    509524      IF(lwp) WRITE(numout,*) 'rnf_mouth : river mouth mask' 
    510525      IF(lwp) WRITE(numout,*) '~~~~~~~~~ ' 
     526      IF(lwp .AND. lflush) CALL flush(numout) 
    511527      ! 
    512528      cl_rnfile = TRIM( cn_dir )//TRIM( sn_cnf%clname ) 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/SBC/sbcssm.F90

    r9321 r11101  
    9292            IF(lwp) WRITE(numout,*) 
    9393            IF(lwp) WRITE(numout,*) '~~~~~~~   mean fields initialised to instantaneous values' 
     94            IF(lwp .AND. lflush) CALL flush(numout) 
    9495            zcoef = REAL( nn_fsbc - 1, wp ) 
    9596            ssu_m(:,:) = zcoef * ub(:,:,1) 
     
    156157               &                    'at it= ', kt,' date= ', ndastp 
    157158            IF(lwp) WRITE(numout,*) '~~~~~~~' 
     159            IF(lwp .AND. lflush) CALL flush(numout) 
    158160            zf_sbc = REAL( nn_fsbc, wp ) 
    159161            IF(nn_timing == 2)  CALL timing_start('iom_rstput') 
     
    257259      ENDIF 
    258260      ! 
     261      IF(lwp .AND. lflush) CALL flush(numout) 
     262      ! 
    259263   END SUBROUTINE sbc_ssm_init 
    260264 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/SBC/sbcssr.F90

    r6486 r11101  
    175175      READ  ( numnam_cfg, namsbc_ssr, IOSTAT = ios, ERR = 902 ) 
    176176902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_ssr in configuration namelist', lwp ) 
    177       IF(lwm) WRITE ( numond, namsbc_ssr ) 
     177      IF(lwm .AND. nprint > 2) WRITE ( numond, namsbc_ssr ) 
    178178 
    179179      IF(lwp) THEN                 !* control print 
     
    189189         WRITE(numout,*) '      flag to bound erp term                 ln_sssr_bnd = ', ln_sssr_bnd 
    190190         WRITE(numout,*) '      ABS(Max./Min.) erp threshold           rn_sssr_bnd = ', rn_sssr_bnd, ' mm/day' 
     191         IF(lflush) CALL flush(numout) 
    191192      ENDIF 
    192193      ! 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/SBC/sbctide.F90

    r6486 r11101  
    7171               WRITE(numout,*) Wave(ntide(jk))%cname_tide, utide(jk), ftide(jk), v0tide(jk), omega_tide(jk) 
    7272            END DO 
     73            IF(lflush) CALL flush(numout) 
    7374         ENDIF 
    7475         ! 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/SBC/sbcwave.F90

    r6486 r11101  
    9090         READ  ( numnam_cfg, namsbc_wave, IOSTAT = ios, ERR = 902 ) 
    9191902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_wave in configuration namelist', lwp ) 
    92          IF(lwm) WRITE ( numond, namsbc_wave ) 
     92         IF(lwm .AND. nprint > 2) WRITE ( numond, namsbc_wave ) 
    9393         ! 
    9494 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/SBC/tideini.F90

    r6486 r11101  
    6060          WRITE(numout,*) 'tide_init : Initialization of the tidal components' 
    6161          WRITE(numout,*) '~~~~~~~~~ ' 
     62          IF(lflush) CALL flush(numout) 
    6263       ENDIF 
    6364       ! 
     
    7273       READ  ( numnam_cfg, nam_tide, IOSTAT = ios, ERR = 902 ) 
    7374902    IF( ios /= 0 ) CALL ctl_nam ( ios , 'nam_tide in configuration namelist', lwp ) 
    74        IF(lwm) WRITE ( numond, nam_tide ) 
     75       IF(lwm .AND. nprint > 2) WRITE ( numond, nam_tide ) 
    7576       ! 
    7677       nb_harmo=0 
     
    9091          WRITE(numout,*) '                                     ln_tide_ramp = ', ln_tide_ramp  
    9192          WRITE(numout,*) '                                     rdttideramp  = ', rdttideramp 
     93          IF(lflush) CALL flush(numout) 
    9294       ENDIF 
    9395       IF( ln_tide_ramp.AND.((nitend-nit000+1)*rdt/rday < rdttideramp) )   & 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/SOL/solver.F90

    r6498 r11101  
    5959      ! 
    6060 
    61       IF(lwp) THEN                  !* open elliptic solver statistics file (only on the printing processors) 
     61      IF(lwp .AND. (ln_ctl .OR. sn_cfctl%l_runstat)) THEN  !* open elliptic solver statistics file (only on the printing processors) 
    6262         CALL ctl_opn( numsol, 'solver.stat', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp, narea ) 
    6363      ENDIF 
     
    7070      READ  ( numnam_cfg, namsol, IOSTAT = ios, ERR = 902 ) 
    7171902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsol in configuration namelist', lwp ) 
    72       IF(lwm) WRITE ( numond, namsol ) 
     72      IF(lwm .AND. nprint > 2) WRITE ( numond, namsol ) 
    7373 
    7474      IF(lwp) THEN                  !* Control print 
     
    8686         WRITE(numout,*) '      optimal coefficient of sor         rn_sor     = ', rn_sor 
    8787         WRITE(numout,*) 
     88         IF(lflush) CALL flush(numout) 
    8889      ENDIF 
    8990      eps = rn_eps 
     
    100101      CASE ( 1 )                          ! preconditioned conjugate gradient solver 
    101102         IF(lwp) WRITE(numout,*) '   a preconditioned conjugate gradient solver is used' 
     103         IF(lwp .AND. lflush) CALL flush(numout) 
    102104         IF( jpr2di /= 0 .AND. jpr2dj /= 0 )   CALL ctl_stop( ' jpr2di and jpr2dj should be equal to zero' ) 
    103105         ! 
     
    105107         IF(lwp) WRITE(numout,*) '   a successive-over-relaxation solver with extra outer halo is used' 
    106108         IF(lwp) WRITE(numout,*) '   with jpr2di =', jpr2di, ' and  jpr2dj =', jpr2dj 
     109         IF(lwp .AND. lflush) CALL flush(numout) 
    107110         IF( .NOT. lk_mpp .AND. jpr2di /= 0 .AND. jpr2dj /= 0 ) THEN 
    108111             CALL ctl_stop( 'jpr2di and jpr2dj are not equal to zero',   & 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/STO/stopar.F90

    r9321 r11101  
    268268      READ  ( numnam_cfg, namsto, IOSTAT = ios, ERR = 902 ) 
    269269902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsto in configuration namelist', lwp ) 
    270       IF(lwm) WRITE ( numond, namsto ) 
     270      IF(lwm .AND. nprint > 2) WRITE ( numond, namsto ) 
    271271 
    272272      !IF(ln_ens_rst_in) cn_storst_in = cn_mem//cn_storst_in 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/TRA/eosbn2.F90

    r8447 r11101  
    12411241      READ  ( numnam_cfg, nameos, IOSTAT = ios, ERR = 902 ) 
    12421242902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nameos in configuration namelist', lwp ) 
    1243       IF(lwm) WRITE( numond, nameos ) 
     1243      IF(lwm .AND. nprint > 2) WRITE( numond, nameos ) 
    12441244      ! 
    12451245      rau0        = 1026._wp                 !: volumic mass of reference     [kg/m3] 
     
    12581258            WRITE(numout,*) '             model does not use Conservative Temperature' 
    12591259         ENDIF 
     1260         IF(lflush) CALL flush(numout) 
    12601261      ENDIF 
    12611262      ! 
     
    12721273         IF(lwp) WRITE(numout,*) 
    12731274         IF(lwp) WRITE(numout,*) '          use of TEOS-10 equation of state (cons. temp. and abs. salinity)' 
     1275         IF(lwp .AND. lflush) CALL flush(numout) 
    12741276         ! 
    12751277         rdeltaS = 32._wp 
     
    14621464         IF(lwp) WRITE(numout,*) 
    14631465         IF(lwp) WRITE(numout,*) '          use of EOS-80 equation of state (pot. temp. and pract. salinity)' 
     1466         IF(lwp .AND. lflush) CALL flush(numout) 
    14641467         ! 
    14651468         rdeltaS = 20._wp 
     
    16621665            WRITE(numout,*) '             2nd cabbel. coef.     rn_nu      = ', rn_nu 
    16631666            WRITE(numout,*) '               Caution: rn_beta0=0 incompatible with ddm parameterization ' 
     1667            IF(lflush) CALL flush(numout) 
    16641668         ENDIF 
    16651669         ! 
     
    16811685      IF(lwp) WRITE(numout,*) '          rau0 * rcp                       rau0_rcp = ', rau0_rcp 
    16821686      IF(lwp) WRITE(numout,*) '          1. / ( rau0 * rcp )           r1_rau0_rcp = ', r1_rau0_rcp 
     1687      IF(lwp .AND. lflush) CALL flush(numout) 
    16831688      ! 
    16841689   END SUBROUTINE eos_init 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/TRA/traadv.F90

    r7771 r11101  
    208208      READ  ( numnam_cfg, namtra_adv, IOSTAT = ios, ERR = 902 ) 
    209209902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtra_adv in configuration namelist', lwp ) 
    210       IF(lwm) WRITE ( numond, namtra_adv ) 
     210      IF(lwm .AND. nprint > 2) WRITE ( numond, namtra_adv ) 
    211211 
    212212      IF(lwp) THEN                    ! Namelist print 
     
    223223         WRITE(numout,*) '      upstream scheme within muscl   ln_traadv_msc_ups = ', ln_traadv_msc_ups 
    224224         WRITE(numout,*) '      TVD advection scheme with zts  ln_traadv_tvd_zts = ', ln_traadv_tvd_zts 
     225         IF(lflush) CALL flush(numout) 
    225226      ENDIF 
    226227 
     
    260261         IF( nadv ==  7 )   WRITE(numout,*) '         TVD ZTS   scheme is used' 
    261262         IF( nadv == -1 )   WRITE(numout,*) '         esopa test: use all advection scheme' 
     263         IF(lflush) CALL flush(numout) 
    262264      ENDIF 
    263265      ! 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/TRA/traadv_cen2.F90

    r9321 r11101  
    139139         IF(lwp) WRITE(numout,*) '~~~~~~~~~~~~ ' 
    140140         IF(lwp) WRITE(numout,*) 
     141         IF(lwp .AND. lflush) CALL flush(numout) 
    141142         ! 
    142143         IF( .NOT. ALLOCATED( upsmsk ) )  THEN 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/TRA/traadv_eiv.F90

    r7179 r11101  
    9797         IF(lwp) WRITE(numout,*) 'tra_adv_eiv : eddy induced advection on ', cdtype,' :' 
    9898         IF(lwp) WRITE(numout,*) '~~~~~~~~~~~   add to velocity fields the eiv component' 
     99         IF(lwp .AND. lflush) CALL flush(numout) 
    99100# if defined key_diaeiv  
    100101         IF( cdtype == 'TRA') THEN 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/TRA/traadv_mle.F90

    r6486 r11101  
    290290      READ  ( numnam_cfg, namtra_adv_mle, IOSTAT = ios, ERR = 902 ) 
    291291902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtra_adv_mle in configuration namelist', lwp ) 
    292       IF(lwm) WRITE ( numond, namtra_adv_mle ) 
     292      IF(lwm .AND. nprint > 2) WRITE ( numond, namtra_adv_mle ) 
    293293 
    294294      IF(lwp) THEN                     ! Namelist print 
     
    306306         WRITE(numout,*) '      =1 no MLE in case of convection ; =0 always MLE              nn_conv   = ', nn_conv 
    307307         WRITE(numout,*) '      Density difference used to define ML for FK              rn_rho_c_mle  = ', rn_rho_c_mle 
     308         IF(lflush) CALL flush(numout) 
    308309      ENDIF 
    309310      ! 
     
    317318            WRITE(numout,*) '   Mixed Layer Eddy parametrisation NOT used' 
    318319         ENDIF 
     320 
     321         IF(lflush) CALL flush(numout) 
     322 
    319323      ENDIF 
    320324      ! 
     
    325329         IF(lwp) WRITE(numout,*) '      ML buoyancy criteria = ', rb_c, ' m/s2 ' 
    326330         IF(lwp) WRITE(numout,*) '      associated ML density criteria defined in zdfmxl = ', rho_c, 'kg/m3' 
     331         IF(lwp .AND. lflush) CALL flush(numout) 
    327332         ! 
    328333         IF( nn_mle == 0 ) THEN           ! MLE array allocation & initialisation 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/TRA/traadv_muscl.F90

    r7771 r11101  
    9999         IF(lwp) WRITE(numout,*) '~~~~~~~' 
    100100         IF(lwp) WRITE(numout,*) 
     101         IF(lwp .AND. lflush) CALL flush(numout) 
    101102         ! 
    102103         ! 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/TRA/traadv_muscl2.F90

    r7179 r11101  
    8484         IF(lwp) WRITE(numout,*) 'tra_adv_muscl2 : MUSCL2 advection scheme on ', cdtype 
    8585         IF(lwp) WRITE(numout,*) '~~~~~~~~~~~~~~~' 
     86         IF(lwp .AND. lflush) CALL flush(numout) 
    8687      ENDIF 
    8788      ! 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/TRA/traadv_qck.F90

    r7179 r11101  
    101101         IF(lwp) WRITE(numout,*) '~~~~~~~~~~~~' 
    102102         IF(lwp) WRITE(numout,*) 
     103         IF(lwp .AND. lflush) CALL flush(numout) 
    103104      ENDIF 
    104105      l_trd = .FALSE. 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/TRA/traadv_tvd.F90

    r10020 r11101  
    102102         IF(lwp) WRITE(numout,*) 'tra_adv_tvd : TVD advection scheme on ', cdtype 
    103103         IF(lwp) WRITE(numout,*) '~~~~~~~~~~~' 
     104         IF(lwp .AND. lflush) CALL flush(numout) 
    104105         ! 
    105106      ENDIF 
     
    383384         IF(lwp) WRITE(numout,*) 'tra_adv_tvd_zts : TVD ZTS advection scheme on ', cdtype 
    384385         IF(lwp) WRITE(numout,*) '~~~~~~~~~~~' 
     386         IF(lwp .AND. lflush) CALL flush(numout) 
    385387      ENDIF 
    386388      ! 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/TRA/traadv_ubs.F90

    r7179 r11101  
    101101         IF(lwp) WRITE(numout,*) 'tra_adv_ubs :  horizontal UBS advection scheme on ', cdtype 
    102102         IF(lwp) WRITE(numout,*) '~~~~~~~~~~~~' 
     103         IF(lwp .AND. lflush) CALL flush(numout) 
    103104      ENDIF 
    104105      ! 
  • branches/UKMO/dev_r5518_GO6_package/NEMOGCM/NEMO/OPA_SRC/TRA/trabbc.F90

    r6486 r11101  
    147147      READ  ( numnam_cfg, nambbc, IOSTAT = ios, ERR = 902 ) 
    148148902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambbc in configuration namelist', lwp ) 
    149       IF(lwm) WRITE ( numond, nambbc ) 
     149      IF(lwm .AND. nprint > 2) WRITE ( numond, nambbc ) 
    150150 
    151151      IF(lwp) THEN                     ! Control print 
     
    158158         WRITE(numout,*) '      Constant geothermal flux value               rn_geoflx_cst = ', rn_geoflx_cst 
    159159         WRITE(numout,*) 
     160         IF(lflush) CALL flush(numout) 
    160161      ENDIF 
    161162 
     
    196197         IF(lwp) WRITE(numout,*) '      *** no geothermal heat flux' 
    197198      ENDIF 
     199      IF(lwp .AND. lflush) CALL flush(numout) 
    198200      ! 
    199201   END SUBROUTINE tra_bbc_init