New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 4897 for branches/2014/dev_CNRS_2014/NEMOGCM – NEMO

Ignore:
Timestamp:
2014-11-27T16:08:14+01:00 (9 years ago)
Author:
cetlod
Message:

2014/dev_CNRS_2014 : Merge in the trunk changes between 4615 and 4674, see ticket #1415

Location:
branches/2014/dev_CNRS_2014/NEMOGCM
Files:
124 edited
1 copied

Legend:

Unmodified
Added
Removed
  • branches/2014/dev_CNRS_2014/NEMOGCM/ARCH/arch-XC_ARCHER.fcm

    r4338 r4897  
    3131%NCDF_HOME           $NETCDF_DIR 
    3232%HDF5_HOME           $HDF5_DIR 
    33 %XIOS_HOME           /work/n01/n01/acc/XIOS 
     33%XIOS_HOME           /work/n01/n01/acc/XIOS_r474 
    3434#OASIS_HOME           
    3535 
     
    4444#FCFLAGS             -em -s integer32 -s real64 -O3 
    4545#FFLAGS              -em -s integer32 -s real64 -O3 
    46 %FCFLAGS             -em -s integer32 -O0 -R b -s real64 -e0 -eZ 
    47 %FFLAGS              -em -s integer32 -O0 -R b -s real64 -e0 -eZ 
     46%FCFLAGS             -em -s integer32 -s real64 -O0 -e0 -eZ 
     47%FFLAGS              -em -s integer32 -s real64 -O0 -e0 -eZ 
    4848%LD                  CC -Wl,"--allow-multiple-definition" 
    4949%FPPFLAGS            -P -C -traditional 
  • branches/2014/dev_CNRS_2014/NEMOGCM/CONFIG/C1D_PAPA/EXP00/iodef.xml

    r4158 r4897  
    2121    --> 
    2222     
    23     <file_definition type="one_file" name="@expname@_@freq@_@startdate@_@enddate@" sync_freq="1d" min_digits="4"> 
     23    <file_definition type="multiple_file" name="@expname@_@freq@_@startdate@_@enddate@" sync_freq="1d" min_digits="4"> 
    2424     
    2525      <file_group id="1ts" output_freq="1ts"  output_level="10" enabled=".TRUE."/> <!-- 1 time step files --> 
  • branches/2014/dev_CNRS_2014/NEMOGCM/CONFIG/C1D_PAPA/EXP00/namelist_cfg

    r4370 r4897  
    77   cn_exp      =  "PAPA"   !  experience name 
    88   nn_it000    =       1   !  first time step 
    9    nn_itend    =   78840   !  last  time step 
     9   nn_itend    =   87600   !  last  time step 
    1010   nn_date0    =  20100615 !  date at nit_0000 (format yyyymmdd) used if ln_rstart=F or (ln_rstart=T and nn_rstctl=0 or 1) 
    1111   nn_leapy    =       1   !  Leap year calendar (1) or not (0) 
    12    nn_stock    =   78840   !  frequency of creation of a restart file (modulo referenced to 1) 
    13    nn_write    =      60   !  frequency of write in the output file   (modulo referenced to nn_it000) 
     12   nn_stock    =   87600   !  frequency of creation of a restart file (modulo referenced to 1) 
     13   nn_write    =     240   !  frequency of write in the output file   (modulo referenced to nn_it000) 
    1414/ 
    1515!----------------------------------------------------------------------- 
     
    3838&namdom        !   space and time domain (bathymetry, mesh, timestep) 
    3939!----------------------------------------------------------------------- 
     40   nn_bathy    =    0      !  compute (=0) or read (=1) the bathymetry file 
    4041   rn_bathy    = 4198.     !  value of the bathymetry. if (=0) bottom flat at jpkm1 
    41    nn_msh      =    3      !  create (=1) a mesh file or not (=0) 
    42    rn_rdt      =  400.     !  time step for the dynamics (and tracer if nn_acc=0) 
     42   nn_msh      =    0      !  create (=1) a mesh file or not (=0) 
     43   rn_rdt      =  360.     !  time step for the dynamics (and tracer if nn_acc=0) 
    4344   rn_rdtmin   =  360.           !  minimum time step on tracers (used if nn_acc=1) 
    4445   rn_rdtmax   =  360.           !  maximum time step on tracers (used if nn_acc=1) 
     
    7273/ 
    7374!----------------------------------------------------------------------- 
     75&namc1d        !   1D configuration options                             ("key_c1d") 
     76!----------------------------------------------------------------------- 
     77   ln_c1d_locpt= .false.   ! Localization of 1D config in a grid (T) or independant point (F) 
     78/ 
     79!----------------------------------------------------------------------- 
    7480&namtsd    !   data : Temperature  & Salinity 
    7581!----------------------------------------------------------------------- 
     
    8187   cn_dir        = './'     !  root directory for the location of the runoff files 
    8288   ln_tsd_init   = .true.   !  Initialisation of ocean T & S with T &S input data (T) or not (F) 
    83    ln_tsd_tradmp = .true.   !  damping of ocean T & S toward T &S input data (T) or not (F) 
     89   ln_tsd_tradmp = .false.   !  damping of ocean T & S toward T &S input data (T) or not (F) 
    8490/ 
    8591!----------------------------------------------------------------------- 
     
    112118!              !  file name  ! frequency (hours) ! variable  ! time interp. !  clim  ! 'yearly'/ ! weights  ! rotation ! land/sea mask ! 
    113119!              !             !  (if <0  months)  !   name    !   (logical)  !  (T/F) ! 'monthly' ! filename ! pairing  ! filename      ! 
    114    sn_wndi     = 'forcing_PAPASTATION' ,         1         , 'wndwe'   ,   .true.     , .false. , 'yearly' , '' , '', '' 
    115    sn_wndj     = 'forcing_PAPASTATION' ,         1         , 'wndsn'   ,   .true.     , .false. , 'yearly' , '' , '', '' 
    116    sn_qsr      = 'forcing_PAPASTATION' ,         1         , 'qsr'     ,   .false.    , .false. , 'yearly' , '' , '', '' 
    117    sn_qlw      = 'forcing_PAPASTATION' ,         1         , 'qlw'     ,   .false.    , .false. , 'yearly' , '' , '', '' 
    118    sn_tair     = 'forcing_PAPASTATION' ,         1         , 'tair'    ,   .true.     , .false. , 'yearly' , '' , '', '' 
    119    sn_humi     = 'forcing_PAPASTATION' ,         1         , 'humi'    ,   .true.     , .false. , 'yearly' , '' , '', '' 
    120    sn_prec     = 'forcing_PAPASTATION' ,         1         , 'prec'    ,   .false.    , .false. , 'yearly' , '' , '', '' 
    121    sn_snow     = 'forcing_PAPASTATION' ,         1         , 'snow'    ,   .false.    , .false. , 'yearly' , '' , '', '' 
     120   sn_wndi     = 'forcing_PAPASTATION_1h' ,         1         , 'wndwe'   ,   .true.     , .false. , 'yearly' , '' , '', '' 
     121   sn_wndj     = 'forcing_PAPASTATION_1h' ,         1         , 'wndsn'   ,   .true.     , .false. , 'yearly' , '' , '', '' 
     122   sn_qsr      = 'forcing_PAPASTATION_1h' ,         1         , 'qsr'     ,   .false.    , .false. , 'yearly' , '' , '', '' 
     123   sn_qlw      = 'forcing_PAPASTATION_1h' ,         1         , 'qlw'     ,   .false.    , .false. , 'yearly' , '' , '', '' 
     124   sn_tair     = 'forcing_PAPASTATION_1h' ,         1         , 'tair'    ,   .true.     , .false. , 'yearly' , '' , '', '' 
     125   sn_humi     = 'forcing_PAPASTATION_1h' ,         1         , 'humi'    ,   .true.     , .false. , 'yearly' , '' , '', '' 
     126   sn_prec     = 'forcing_PAPASTATION_1h' ,         1         , 'prec'    ,   .false.    , .false. , 'yearly' , '' , '', '' 
     127   sn_snow     = 'forcing_PAPASTATION_1h' ,         1         , 'snow'    ,   .false.    , .false. , 'yearly' , '' , '', '' 
    122128   ln_2m         = .true.    !  air temperature and humidity referenced at 2m (T) instead 10m (F) 
    123129/ 
     
    225231&namtra_ldf    !   lateral diffusion scheme for tracers 
    226232!---------------------------------------------------------------------------------- 
     233!---------------------------------------------------------------------------------- 
     234   ln_traldf_hor    =  .true.   !  horizontal (geopotential)   (needs "key_ldfslp" when ln_sco=T) 
     235   ln_traldf_iso    =  .false.  !  iso-neutral                 (needs "key_ldfslp") 
    227236   rn_aeiv_0        =     0.    !  eddy induced velocity coefficient [m2/s] 
    228237   rn_aht_0         =     0.    !  horizontal eddy diffusivity for tracers [m2/s] 
     
    244253/ 
    245254!----------------------------------------------------------------------- 
     255&namc1d_uvd    !   data: U & V currents                                 ("key_c1d") 
     256!----------------------------------------------------------------------- 
     257/ 
     258!----------------------------------------------------------------------- 
    246259&namdyn_hpg    !   Hydrostatic pressure gradient option 
    247260!----------------------------------------------------------------------- 
     
    258271&namzdf        !   vertical physics 
    259272!----------------------------------------------------------------------- 
    260    rn_avm0     =   5.0e-6  !rbb 1.2e-4  !  vertical eddy viscosity   [m2/s]          (background Kz if not "key_zdfcst") 
    261    rn_avt0     =   5.0e-6  !rbb 1.2e-5  !  vertical eddy diffusivity [m2/s]          (background Kz if not "key_zdfcst") 
     273!   rn_avm0     =   5.0e-6  !rbb 1.2e-4  !  vertical eddy viscosity   [m2/s]          (background Kz if not "key_zdfcst") 
     274!   rn_avt0     =   5.0e-6  !rbb 1.2e-5  !  vertical eddy diffusivity [m2/s]          (background Kz if not "key_zdfcst") 
    262275   ln_zdfevd   = .false. !rbb .true.    !  enhanced vertical diffusion (evd) (T) or not (F) 
    263276/ 
  • branches/2014/dev_CNRS_2014/NEMOGCM/CONFIG/C1D_PAPA/cpp_C1D_PAPA.fcm

    r4247 r4897  
    1  bld::tool::fppkeys key_c1d key_dynspg_flt key_diahth key_zdfgls key_iomput key_mpp_mpi 
     1 bld::tool::fppkeys key_c1d key_zdfgls 
  • branches/2014/dev_CNRS_2014/NEMOGCM/CONFIG/SHARED/namelist_ref

    r4896 r4897  
    184184/ 
    185185!----------------------------------------------------------------------- 
     186&namc1d        !   1D configuration options                             ("key_c1d") 
     187!----------------------------------------------------------------------- 
     188   rn_lat1d    =      50   !  Column latitude (default at PAPA station) 
     189   rn_lon1d    =    -145   !  Column longitude (default at PAPA station) 
     190   ln_c1d_locpt=  .true.   ! Localization of 1D config in a grid (T) or independant point (F) 
     191/ 
     192!----------------------------------------------------------------------- 
    186193&namtsd    !   data : Temperature  & Salinity 
    187194!----------------------------------------------------------------------- 
     
    971978                           !     (no physical validity of the results) 
    972979   nn_timing   =    0      !  timing by routine activated (=1) creates timing.output file, or not (=0) 
    973 / 
    974 !----------------------------------------------------------------------- 
    975 &namc1d        !   1D configuration options                             ("key_c1d") 
    976 !----------------------------------------------------------------------- 
    977    rn_lat      =    50     !  Column latitude 
    978    rn_lon      =    -145   !  Column longitude 
    979980/ 
    980981!----------------------------------------------------------------------- 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/LIM_SRC_2/iceini_2.F90

    r4607 r4897  
    8282      CALL ctl_opn( numnam_ice_ref, 'namelist_ice_ref',    'OLD',     'FORMATTED', 'SEQUENTIAL', -1, numout, lwp )  
    8383      CALL ctl_opn( numnam_ice_cfg, 'namelist_ice_cfg',    'OLD',     'FORMATTED', 'SEQUENTIAL', -1, numout, lwp ) 
    84       CALL ctl_opn( numoni,        'output.namelist.ice', 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp, 1 ) 
     84      IF(lwm) CALL ctl_opn( numoni, 'output.namelist.ice', 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp, 1 ) 
    8585 
    8686      !                                ! Open the namelist file  
     
    134134      READ  ( numnam_ice_cfg, namicerun, IOSTAT = ios, ERR = 902 ) 
    135135902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namicerun in configuration namelist', lwp ) 
    136       WRITE ( numoni, namicerun ) 
     136      IF(lwm) WRITE ( numoni, namicerun ) 
    137137      ! 
    138138      IF(lwp) THEN                              ! control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/LIM_SRC_2/limdia_2.F90

    r4338 r4897  
    188188       READ  ( numnam_ice_cfg, namicedia, IOSTAT = ios, ERR = 902 ) 
    189189902    IF( ios /= 0 ) CALL ctl_nam ( ios , 'namicedia in configuration namelist', lwp ) 
    190        WRITE ( numoni, namicedia ) 
     190       IF(lwm) WRITE ( numoni, namicedia ) 
    191191        
    192192       IF(lwp) THEN                             ! control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/LIM_SRC_2/limdmp_2.F90

    r4147 r4897  
    118118      READ  ( numnam_ice_cfg, namice_dmp, IOSTAT = ios, ERR = 902 ) 
    119119902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namice_dmp in configuration namelist', lwp ) 
    120       WRITE ( numoni, namice_dmp ) 
     120      IF(lwm) WRITE ( numoni, namice_dmp ) 
    121121      ! 
    122122      IF ( lwp ) THEN                     !* control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/LIM_SRC_2/limdyn_2.F90

    r4161 r4897  
    238238      READ  ( numnam_ice_cfg, namicedyn, IOSTAT = ios, ERR = 902 ) 
    239239902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namicedyn in configuration namelist', lwp ) 
    240       WRITE ( numoni, namicedyn ) 
     240      IF(lwm) WRITE ( numoni, namicedyn ) 
    241241 
    242242      IF(lwp) THEN                                ! Control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/LIM_SRC_2/limistate_2.F90

    r4896 r4897  
    174174      READ  ( numnam_ice_cfg, namiceini, IOSTAT = ios, ERR = 902 ) 
    175175902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namiceini in configuration namelist', lwp ) 
    176       WRITE ( numoni, namiceini ) 
     176      IF(lwm) WRITE ( numoni, namiceini ) 
    177177      ! 
    178178      IF(lwp) THEN 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/LIM_SRC_2/limthd_2.F90

    r4306 r4897  
    550550      READ  ( numnam_ice_cfg, namicethd, IOSTAT = ios, ERR = 902 ) 
    551551902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namicethd in configuration namelist', lwp ) 
    552       WRITE ( numoni, namicethd ) 
     552      IF(lwm) WRITE ( numoni, namicethd ) 
    553553 
    554554      IF( lk_cpl .AND. parsub /= 0.0 )   CALL ctl_stop( 'In coupled mode, use parsub = 0. or send dqla' ) 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/LIM_SRC_2/limtrp_2.F90

    r4147 r4897  
    308308      READ  ( numnam_ice_cfg, namicetrp, IOSTAT = ios, ERR = 902 ) 
    309309902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namicetrp in configuration namelist', lwp ) 
    310       WRITE ( numoni, namicetrp ) 
     310      IF(lwm) WRITE ( numoni, namicetrp ) 
    311311 
    312312      IF(lwp) THEN 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/LIM_SRC_2/limwri_2.F90

    r4251 r4897  
    264264      READ  ( numnam_ice_cfg, namiceout, IOSTAT = ios, ERR = 902 ) 
    265265902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namiceout in configuration namelist', lwp ) 
    266       WRITE ( numoni, namiceout ) 
     266      IF(lwm) WRITE ( numoni, namiceout ) 
    267267       
    268268      zfield( 1) = field_1 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/LIM_SRC_3/iceini.F90

    r4333 r4897  
    7474      CALL ctl_opn( numnam_ice_ref, 'namelist_ice_ref',    'OLD',     'FORMATTED', 'SEQUENTIAL', -1, numout, lwp )  
    7575      CALL ctl_opn( numnam_ice_cfg, 'namelist_ice_cfg',    'OLD',     'FORMATTED', 'SEQUENTIAL', -1, numout, lwp ) 
    76       CALL ctl_opn( numoni,        'output.namelist.ice', 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp, 1 ) 
     76      IF(lwm) CALL ctl_opn( numoni, 'output.namelist.ice', 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp, 1 ) 
    7777      ! 
    7878      CALL ice_run                     ! set some ice run parameters 
     
    141141      READ  ( numnam_ice_cfg, namicerun, IOSTAT = ios, ERR = 902 ) 
    142142902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namicerun in configuration namelist', lwp ) 
    143       WRITE ( numoni, namicerun ) 
     143      IF(lwm) WRITE ( numoni, namicerun ) 
    144144      ! 
    145145      !IF( lk_mpp .AND. ln_nicep ) THEN 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/LIM_SRC_3/limdyn.F90

    r4161 r4897  
    282282      READ  ( numnam_ice_cfg, namicedyn, IOSTAT = ios, ERR = 902 ) 
    283283902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namicedyn in configuration namelist', lwp ) 
    284       WRITE ( numoni, namicedyn ) 
     284      IF(lwm) WRITE ( numoni, namicedyn ) 
    285285       
    286286      IF(lwp) THEN                        ! control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/LIM_SRC_3/limistate.F90

    r4896 r4897  
    505505      READ  ( numnam_ice_cfg, namiceini, IOSTAT = ios, ERR = 902 ) 
    506506902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namiceini in configuration namelist', lwp ) 
    507       WRITE ( numoni, namiceini ) 
     507      IF(lwm) WRITE ( numoni, namiceini ) 
    508508 
    509509      ! Define the initial parameters 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/LIM_SRC_3/limitd_me.F90

    r4346 r4897  
    14181418      READ  ( numnam_ice_cfg, namiceitdme, IOSTAT = ios, ERR = 902 ) 
    14191419902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namiceitdme in configuration namelist', lwp ) 
    1420       WRITE ( numoni, namiceitdme ) 
     1420      IF(lwm) WRITE ( numoni, namiceitdme ) 
    14211421      ! 
    14221422      IF (lwp) THEN                          ! control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/LIM_SRC_3/limthd.F90

    r4333 r4897  
    837837      READ  ( numnam_ice_cfg, namicethd, IOSTAT = ios, ERR = 902 ) 
    838838902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namicethd in configuration namelist', lwp ) 
    839       WRITE ( numoni, namicethd ) 
     839      IF(lwm) WRITE ( numoni, namicethd ) 
    840840      ! 
    841841      IF(lwp) THEN                          ! control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/LIM_SRC_3/limthd_sal.F90

    r4161 r4897  
    193193      READ  ( numnam_ice_cfg, namicesal, IOSTAT = ios, ERR = 902 ) 
    194194902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namicesal in configuration namelist', lwp ) 
    195       WRITE ( numoni, namicesal ) 
     195      IF(lwm) WRITE ( numoni, namicesal ) 
    196196      ! 
    197197      IF(lwp) THEN                           ! control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/LIM_SRC_3/limwri.F90

    r4333 r4897  
    469469      READ  ( numnam_ice_cfg, namiceout, IOSTAT = ios, ERR = 902 ) 
    470470902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namiceout in configuration namelist', lwp ) 
    471       WRITE ( numoni, namiceout ) 
     471      IF(lwm) WRITE ( numoni, namiceout ) 
    472472 
    473473      zfield(1)  = field_1 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/NST_SRC/agrif_user.F90

    r4486 r4897  
    624624      READ  ( numnam_cfg, namagrif, IOSTAT = ios, ERR = 902 ) 
    625625902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namagrif in configuration namelist', lwp ) 
    626       WRITE ( numond, namagrif ) 
     626      IF(lwm) WRITE ( numond, namagrif ) 
    627627   ! 
    628628   IF(lwp) THEN                    ! control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OFF_SRC/domain.F90

    r4382 r4897  
    139139      READ  ( numnam_cfg, namrun, IOSTAT = ios, ERR = 902 ) 
    140140902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namrun in configuration namelist', lwp ) 
    141       WRITE ( numond, namrun ) 
     141      IF(lwm) WRITE ( numond, namrun ) 
    142142      ! 
    143143      IF(lwp) THEN                  ! control print 
     
    215215      READ  ( numnam_cfg, namdom, IOSTAT = ios, ERR = 904 ) 
    216216904   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdom in configuration namelist', lwp ) 
    217       WRITE ( numond, namdom ) 
     217      IF(lwm) WRITE ( numond, namdom ) 
    218218 
    219219      IF(lwp) THEN 
     
    276276      READ  ( numnam_cfg, namcla, IOSTAT = ios, ERR = 906 ) 
    277277906   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namcla in configuration namelist', lwp ) 
    278       WRITE( numond, namcla ) 
     278      IF(lwm) WRITE( numond, namcla ) 
    279279 
    280280      IF(lwp) THEN 
     
    293293      READ  ( numnam_cfg, namnc4, IOSTAT = ios, ERR = 908 ) 
    294294908   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namnc4 in configuration namelist', lwp ) 
    295       WRITE( numond, namnc4 ) 
     295      IF(lwm) WRITE( numond, namnc4 ) 
    296296      IF(lwp) THEN                        ! control print 
    297297         WRITE(numout,*) 
     
    345345      READ  ( numnam_cfg, namzgr, IOSTAT = ios, ERR = 902 ) 
    346346902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzgr in configuration namelist', lwp ) 
    347       WRITE ( numond, namzgr ) 
     347      IF(lwm) WRITE ( numond, namzgr ) 
    348348 
    349349      IF(lwp) THEN                     ! Control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OFF_SRC/dtadyn.F90

    r4896 r4897  
    350350      READ  ( numnam_cfg, namdta_dyn, IOSTAT = ios, ERR = 902 ) 
    351351902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdta_dyn in configuration namelist', lwp ) 
    352       WRITE ( numond, namdta_dyn ) 
     352      IF(lwm) WRITE ( numond, namdta_dyn ) 
    353353      !                                         ! store namelist information in an array 
    354354      !                                         ! Control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OFF_SRC/nemogcm.F90

    r4319 r4897  
    155155      CALL ctl_opn( numnam_ref, 'namelist_ref', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, 6, .FALSE. ) 
    156156      CALL ctl_opn( numnam_cfg, 'namelist_cfg', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, 6, .FALSE. ) 
    157       CALL ctl_opn( numond, 'output.namelist.dyn', 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', -1, 6, .FALSE. , 1 ) 
    158157      ! 
    159158      REWIND( numnam_ref )              ! Namelist namctl in reference namelist : Control prints & Benchmark 
     
    164163      READ  ( numnam_cfg, namctl, IOSTAT = ios, ERR = 902 ) 
    165164902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namctl in configuration namelist', .TRUE. ) 
    166       WRITE( numond, namctl ) 
    167165 
    168166      ! 
     
    174172      READ  ( numnam_cfg, namcfg, IOSTAT = ios, ERR = 904 ) 
    175173904   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namcfg in configuration namelist', .TRUE. )    
    176       WRITE( numond, namcfg ) 
    177174 
    178175      ! 
    179176      !                             !--------------------------------------------! 
    180177      !                             !  set communicator & select the local node  ! 
     178      !                             !  NB: mynode also opens output.namelist.dyn ! 
     179      !                             !      on unit number numond on first proc   ! 
    181180      !                             !--------------------------------------------! 
    182181#if defined key_iomput 
    183          CALL  xios_initialize( "nemo",return_comm=ilocal_comm ) 
     182      CALL  xios_initialize( "nemo",return_comm=ilocal_comm ) 
    184183      narea = mynode( cltxt, numnam_ref, numnam_cfg, numond , nstop, ilocal_comm )   ! Nodes selection 
    185184#else 
     
    190189      narea = narea + 1                       ! mynode return the rank of proc (0 --> jpnij -1 ) 
    191190 
     191      lwm = (narea == 1)                      ! control of output namelists 
    192192      lwp = (narea == 1) .OR. ln_ctl          ! control of all listing output print 
     193 
     194      IF(lwm) THEN 
     195         ! write merged namelists from earlier to output namelist now that the 
     196         ! file has been opened in call to mynode. nammpp has already been 
     197         ! written in mynode (if lk_mpp_mpi) 
     198         WRITE( numond, namctl ) 
     199         WRITE( numond, namcfg ) 
     200      ENDIF 
    193201 
    194202      ! If dimensions of processor grid weren't specified in the namelist file  
     
    257265                            CALL     phy_cst    ! Physical constants 
    258266                            CALL     eos_init   ! Equation of state 
     267      IF( lk_c1d        )   CALL     c1d_init   ! 1D column configuration 
    259268                            CALL     dom_cfg    ! Domain configuration 
    260269                            CALL     dom_init   ! Domain 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OOO_SRC/nemogcm.F90

    r4319 r4897  
    141141      CALL ctl_opn( numnam_ref, 'namelist_ref', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, 6, .FALSE. ) 
    142142      CALL ctl_opn( numnam_cfg, 'namelist_cfg', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, 6, .FALSE. ) 
    143       CALL ctl_opn( numond, 'output.namelist.dyn', 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', -1, 6, .FALSE. , 1 ) 
    144143      ! 
    145144      REWIND( numnam_ref )              ! Namelist namctl in reference namelist : Control prints & Benchmark 
     
    150149      READ  ( numnam_cfg, namctl, IOSTAT = ios, ERR = 902 ) 
    151150902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namctl in configuration namelist', .TRUE. ) 
    152       WRITE( numond, namctl ) 
    153151 
    154152      ! 
     
    160158      READ  ( numnam_cfg, namcfg, IOSTAT = ios, ERR = 904 ) 
    161159904   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namcfg in configuration namelist', .TRUE. )    
    162       WRITE( numond, namcfg ) 
    163160 
    164161      !                             !--------------------------------------------! 
    165162      !                             !  set communicator & select the local node  ! 
     163      !                             !  NB: mynode also opens output.namelist.dyn ! 
     164      !                             !      on unit number numond on first proc   ! 
    166165      !                             !--------------------------------------------! 
    167166#if defined key_iomput 
     
    174173# endif 
    175174      ENDIF 
    176       narea = mynode( cltxt, numnam, nstop, ilocal_comm )   ! Nodes selection 
     175      narea = mynode( cltxt, numnam_ref, numnam_cfg, numond , nstop, ilocal_comm )   ! Nodes selection 
    177176#else 
    178177# if defined key_oasis3 || defined key_oasis4 
     
    180179         CALL cpl_prism_init( ilocal_comm )                 ! nemo local communicator given by oasis 
    181180      ENDIF 
    182       narea = mynode( cltxt, numnam, nstop, ilocal_comm )   ! Nodes selection (control print return in cltxt) 
     181      narea = mynode( cltxt, numnam_ref, numnam_cfg, numond , nstop, ilocal_comm )   ! Nodes selection (control print return in cltxt) 
    183182# else 
    184183      ilocal_comm = 0 
    185       narea = mynode( cltxt, numnam, nstop )                 ! Nodes selection (control print return in cltxt) 
     184      narea = mynode( cltxt, numnam_ref, numnam_cfg, numond , nstop )                ! Nodes selection (control print return in cltxt) 
    186185# endif 
    187186#endif 
    188187      narea = narea + 1                                     ! mynode return the rank of proc (0 --> jpnij -1 ) 
    189188 
     189      lwm = (narea == 1)                                    ! control of output namelists 
    190190      lwp = (narea == 1) .OR. ln_ctl                        ! control of all listing output print 
     191 
     192      IF(lwm) THEN 
     193         ! write merged namelists from earlier to output namelist now that the 
     194         ! file has been opened in call to mynode. nammpp has already been 
     195         ! written in mynode (if lk_mpp_mpi) 
     196         WRITE( numond, namctl ) 
     197         WRITE( numond, namcfg ) 
     198      ENDIF 
    191199 
    192200      ! If dimensions of processor grid weren't specified in the namelist file 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/ASM/asminc.F90

    r4896 r4897  
    149149      READ  ( numnam_cfg, nam_asminc, IOSTAT = ios, ERR = 902 ) 
    150150902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nam_asminc in configuration namelist', lwp ) 
    151       WRITE ( numond, nam_asminc ) 
     151      IF(lwm) WRITE ( numond, nam_asminc ) 
    152152 
    153153      ! Control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/BDY/bdydta.F90

    r4608 r4897  
    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             WRITE ( numond, nambdy_dta ) 
     534            IF(lwm) WRITE ( numond, nambdy_dta ) 
    535535 
    536536            cn_dir_array(ib_bdy) = cn_dir 
     
    740740      jstart = 1 
    741741      DO ib_bdy = 1, nb_bdy 
    742          jend = nb_bdy_fld(ib_bdy)  
     742         jend = jstart - 1 + nb_bdy_fld(ib_bdy)  
    743743         CALL fld_fill( bf(jstart:jend), blf_i(jstart:jend), cn_dir_array(ib_bdy), 'bdy_dta',   & 
    744744         &              'open boundary conditions', 'nambdy_dta' ) 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/BDY/bdyini.F90

    r4354 r4897  
    132132      READ  ( numnam_cfg, nambdy, IOSTAT = ios, ERR = 902 ) 
    133133902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambdy in configuration namelist', lwp ) 
    134       WRITE ( numond, nambdy ) 
     134      IF(lwm) WRITE ( numond, nambdy ) 
    135135 
    136136      ! ----------------------------------------- 
     
    418418            READ  ( numnam_cfg, nambdy_index, IOSTAT = ios, ERR = 904 ) 
    419419904         IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambdy_index in configuration namelist', lwp ) 
    420             WRITE ( numond, nambdy_index ) 
     420            IF(lwm) WRITE ( numond, nambdy_index ) 
    421421 
    422422            SELECT CASE ( TRIM(ctypebdy) ) 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/BDY/bdytides.F90

    r4354 r4897  
    117117            READ  ( numnam_cfg, nambdy_tide, IOSTAT = ios, ERR = 902 ) 
    118118902         IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambdy_tide in configuration namelist', lwp ) 
    119             WRITE ( numond, nambdy_tide ) 
     119            IF(lwm) WRITE ( numond, nambdy_tide ) 
    120120            !                                               ! Parameter control and print 
    121121            IF(lwp) WRITE(numout,*) '  ' 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/C1D/c1d.F90

    r4247 r4897  
    2727   REAL(wp), PUBLIC            ::  rn_lat1d     ! Column latitude 
    2828   REAL(wp), PUBLIC            ::  rn_lon1d     ! Column longitude 
     29   LOGICAL , PUBLIC            ::  ln_c1d_locpt ! Localization (or not) of 1D column in a grid 
    2930 
    3031   !!---------------------------------------------------------------------- 
     
    4445      !!---------------------------------------------------------------------- 
    4546      INTEGER ::   ios                 ! Local integer output status for namelist read 
    46       NAMELIST/namc1d/ rn_lat1d, rn_lon1d 
     47      NAMELIST/namc1d/ rn_lat1d, rn_lon1d , ln_c1d_locpt 
    4748      !!---------------------------------------------------------------------- 
    4849      ! 
     
    5556      READ  ( numnam_cfg, namc1d, IOSTAT = ios, ERR = 902 ) 
    5657902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namc1d in configuration namelist', lwp ) 
    57       WRITE ( numond, namc1d ) 
     58      IF(lwm) WRITE ( numond, namc1d ) 
    5859 
    5960      ! 
     
    6364         WRITE(numout,*) '~~~~~~~~' 
    6465         WRITE(numout,*) '   Namelist namc1d : set options for the C1D model' 
    65          WRITE(numout,*) '      column latitude                 rn_lat1d = ', rn_lat1d 
    66          WRITE(numout,*) '      column longitude                rn_lon1d = ', rn_lon1d 
     66         WRITE(numout,*) '      column latitude                 rn_lat1d     = ', rn_lat1d 
     67         WRITE(numout,*) '      column longitude                rn_lon1d     = ', rn_lon1d 
     68         WRITE(numout,*) '      column localization in a grid   ln_c1d_locpt = ', ln_c1d_locpt 
    6769      ENDIF 
    6870      ! 
     
    7880   LOGICAL, PUBLIC, PARAMETER ::   lk_c1d = .FALSE.   !: 1D config. flag de-activated 
    7981   REAL(wp)                   ::   rn_lat1d, rn_lon1d 
     82   LOGICAL , PUBLIC           ::   ln_c1d_locpt = .FALSE.  
     83 
    8084CONTAINS 
    8185 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/C1D/domc1d.F90

    r4245 r4897  
    4343      !! ** Action  : Recalculate jpizoom, jpjzoom (indices of C1D zoom) 
    4444      !!---------------------------------------------------------------------- 
     45      NAMELIST/namdom/ nn_bathy, rn_bathy , rn_e3zps_min, rn_e3zps_rat, nn_msh, rn_hmin,   & 
     46         &             nn_acc   , rn_atfp     , rn_rdt      , rn_rdtmin ,                  & 
     47         &             rn_rdtmax, rn_rdth     , nn_closea , ln_crs,    & 
     48         &             jphgr_msh, & 
     49         &             ppglam0, ppgphi0, ppe1_deg, ppe2_deg, ppe1_m, ppe2_m, & 
     50         &             ppsur, ppa0, ppa1, ppkth, ppacr, ppdzmin, pphmax, ldbletanh, & 
     51         &             ppa2, ppkth2, ppacr2 
     52 
    4553      INTEGER  ::  ji, jj                          ! Dummy loop indices 
    4654      INTEGER  ::  inum                            ! Coordinate file handle (case 0) 
    4755      INTEGER  ::  ijeq                            ! Index of equator T point (case 4) 
     56      INTEGER  ::  ios                             ! Local integer output status for namelist read 
    4857 
    4958      INTEGER , DIMENSION(2) ::   iloc             ! Minloc returned indices 
     
    6372      IF( nn_timing == 1 )   CALL timing_start('dom_c1d') 
    6473 
     74      REWIND( numnam_ref )              ! Namelist namdom in reference namelist : space & time domain (bathymetry, mesh, timestep) 
     75      READ  ( numnam_ref, namdom, IOSTAT = ios, ERR = 901 ) 
     76901   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdom in reference namelist', lwp ) 
     77   
     78      ! 
     79      REWIND( numnam_cfg )              ! Namelist namdom in configuration namelist : space & time domain (bathymetry, mesh, timestep) 
     80      READ  ( numnam_cfg, namdom, IOSTAT = ios, ERR = 902 ) 
     81902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdom in configuration namelist', lwp ) 
     82 
    6583      CALL wrk_alloc( jpidta, jpjdta, gphidta, glamdta, zdist ) 
    6684 
     
    8098         CALL iom_get( inum, jpdom_unknown, 'gphit', gphidta ) ! so use jpdom_unknown not jpdom_data 
    8199         CALL iom_close ( inum ) 
    82  
    83          PRINT *,'Check dom_c1d coordinates file data read in:' !!! 
    84          PRINT *,'Bottom-left most glamdta is ', glamdta(1,1)    !!! Need to check 
    85          PRINT *,'Bottom-left most gphidta is ', gphidta(1,1)    !!! field read 
    86          PRINT *,'We are using nimpp,njmpp = ' , nimpp,njmpp     !!! 
    87100 
    88101      CASE ( 1 )                 ! geographical mesh on the sphere with regular grid-spacing 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/C1D/dtauvd.F90

    r4294 r4897  
    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       WRITE ( numond, namc1d_uvd ) 
     75      IF(lwm) WRITE ( numond, namc1d_uvd ) 
    7676 
    7777      !                             ! force the initialization when dyndmp is used 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/C1D/dyndmp.F90

    r4896 r4897  
    8282      READ  ( numnam_cfg, namc1d_dyndmp, IOSTAT = ios, ERR = 902 ) 
    8383902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namc1d_dyndmp in configuration namelist', lwp ) 
    84       WRITE ( numond, namc1d_dyndmp ) 
     84      IF(lwm) WRITE ( numond, namc1d_dyndmp ) 
    8585 
    8686      IF(lwp) THEN                           ! control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/CRS/crsini.F90

    r4294 r4897  
    9292      READ  ( numnam_cfg, namcrs, IOSTAT = ios, ERR = 902 ) 
    9393902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namcrs in configuration namelist', lwp ) 
    94       WRITE ( numond, namcrs ) 
     94      IF(lwm) WRITE ( numond, namcrs ) 
    9595 
    9696     IF(lwp) THEN 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/DIA/diadct.F90

    r4613 r4897  
    151151     READ  ( numnam_cfg, namdct, IOSTAT = ios, ERR = 902 ) 
    152152902  IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdct in configuration namelist', lwp ) 
    153      WRITE ( numond, namdct ) 
     153     IF(lwm) WRITE ( numond, namdct ) 
    154154 
    155155     IF( lwp ) THEN 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/DIA/diaharm.F90

    r4292 r4897  
    9494      READ  ( numnam_cfg, nam_diaharm, IOSTAT = ios, ERR = 902 ) 
    9595902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nam_diaharm in configuration namelist', lwp ) 
    96       WRITE ( numond, nam_diaharm ) 
     96      IF(lwm) WRITE ( numond, nam_diaharm ) 
    9797      ! 
    9898      IF(lwp) THEN 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/DIA/diahsb.F90

    r4558 r4897  
    221221      READ  ( numnam_cfg, namhsb, IOSTAT = ios, ERR = 902 ) 
    222222902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namhsb in configuration namelist', lwp ) 
    223       WRITE ( numond, namhsb ) 
     223      IF(lwm) WRITE ( numond, namhsb ) 
    224224 
    225225      ! 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/DIA/diaptr.F90

    r4896 r4897  
    467467      READ  ( numnam_cfg, namptr, IOSTAT = ios, ERR = 902 ) 
    468468902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namptr in configuration namelist', lwp ) 
    469       WRITE ( numond, namptr ) 
     469      IF(lwm) WRITE ( numond, namptr ) 
    470470 
    471471      IF(lwp) THEN                     ! Control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/DOM/dom_oce.F90

    r4488 r4897  
    153153   INTEGER, PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:) ::   nldit , nldjt    !: first, last indoor index for each i-domain 
    154154   INTEGER, PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:) ::   nleit , nlejt    !: first, last indoor index for each j-domain 
     155   INTEGER, PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: nfiimpp, nfipproc, nfilcit 
    155156 
    156157   !!---------------------------------------------------------------------- 
     
    329330      ierr(:) = 0 
    330331      ! 
    331       ALLOCATE( rdttra(jpk), r2dtra(jpk), mig(jpi), mjg(jpj), STAT=ierr(1) ) 
     332      ALLOCATE( rdttra(jpk), r2dtra(jpk), mig(jpi), mjg(jpj), nfiimpp(jpni,jpnj),  & 
     333         &      nfipproc(jpni,jpnj), nfilcit(jpni,jpnj), STAT=ierr(1) ) 
    332334         ! 
    333335      ALLOCATE( nimppt(jpnij) , ibonit(jpnij) , nlcit(jpnij) , nlcjt(jpnij) ,     & 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/DOM/domain.F90

    r4490 r4897  
    159159      READ  ( numnam_cfg, namrun, IOSTAT = ios, ERR = 902 ) 
    160160902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namrun in configuration namelist', lwp ) 
    161       WRITE ( numond, namrun ) 
     161      IF(lwm) WRITE ( numond, namrun ) 
    162162      ! 
    163163      IF(lwp) THEN                  ! control print 
     
    241241      READ  ( numnam_cfg, namdom, IOSTAT = ios, ERR = 904 ) 
    242242904   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdom in configuration namelist', lwp ) 
    243       WRITE ( numond, namdom ) 
     243      IF(lwm) WRITE ( numond, namdom ) 
    244244 
    245245      IF(lwp) THEN 
     
    303303      READ  ( numnam_cfg, namcla, IOSTAT = ios, ERR = 906 ) 
    304304906   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namcla in configuration namelist', lwp ) 
    305       WRITE( numond, namcla ) 
     305      IF(lwm) WRITE( numond, namcla ) 
    306306 
    307307      IF(lwp) THEN 
     
    327327      READ  ( numnam_cfg, namnc4, IOSTAT = ios, ERR = 908 ) 
    328328908   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namnc4 in configuration namelist', lwp ) 
    329       WRITE( numond, namnc4 ) 
     329      IF(lwm) WRITE( numond, namnc4 ) 
    330330 
    331331      IF(lwp) THEN                        ! control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/DOM/domcfg.F90

    r4245 r4897  
    8282      !!---------------------------------------------------------------------- 
    8383      !                              ! recalculate jpizoom/jpjzoom given lat/lon 
    84       IF( lk_c1d )  CALL dom_c1d( rn_lat1d, rn_lon1d ) 
     84      IF( lk_c1d .AND. ln_c1d_locpt )  CALL dom_c1d( rn_lat1d, rn_lon1d ) 
    8585      ! 
    8686      !                        ! ============== ! 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/DOM/dommsk.F90

    r4328 r4897  
    152152      READ  ( numnam_cfg, namlbc, IOSTAT = ios, ERR = 902 ) 
    153153902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namlbc in configuration namelist', lwp ) 
    154       WRITE ( numond, namlbc ) 
     154      IF(lwm) WRITE ( numond, namlbc ) 
    155155       
    156156      IF(lwp) THEN                  ! control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/DOM/domvvl.F90

    r4490 r4897  
    922922      READ  ( numnam_cfg, nam_vvl, IOSTAT = ios, ERR = 902 ) 
    923923902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nam_vvl in configuration namelist', lwp ) 
    924       WRITE ( numond, nam_vvl ) 
     924      IF(lwm) WRITE ( numond, nam_vvl ) 
    925925 
    926926      IF(lwp) THEN                    ! Namelist print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/DOM/domzgr.F90

    r4292 r4897  
    113113      READ  ( numnam_cfg, namzgr, IOSTAT = ios, ERR = 902 ) 
    114114902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzgr in configuration namelist', lwp ) 
    115       WRITE ( numond, namzgr ) 
     115      IF(lwm) WRITE ( numond, namzgr ) 
    116116 
    117117      IF(lwp) THEN                     ! Control print 
     
    11401140      READ  ( numnam_cfg, namzgr_sco, IOSTAT = ios, ERR = 902 ) 
    11411141902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzgr_sco in configuration namelist', lwp ) 
    1142       WRITE ( numond, namzgr_sco ) 
     1142      IF(lwm) WRITE ( numond, namzgr_sco ) 
    11431143 
    11441144      IF(lwp) THEN                           ! control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/DOM/dtatsd.F90

    r4292 r4897  
    7777      READ  ( numnam_cfg, namtsd, IOSTAT = ios, ERR = 902 ) 
    7878902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtsd in configuration namelist', lwp ) 
    79       WRITE ( numond, namtsd ) 
     79      IF(lwm) WRITE ( numond, namtsd ) 
    8080 
    8181      IF( PRESENT( ld_tradmp ) )   ln_tsd_tradmp = .TRUE.     ! forces the initialization when tradmp is used 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/DYN/dynadv.F90

    r4147 r4897  
    101101      READ  ( numnam_cfg, namdyn_adv, IOSTAT = ios, ERR = 902 ) 
    102102902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_adv in configuration namelist', lwp ) 
    103       WRITE ( numond, namdyn_adv ) 
     103      IF(lwm) WRITE ( numond, namdyn_adv ) 
    104104 
    105105      IF(lwp) THEN                    ! Namelist print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/DYN/dynhpg.F90

    r4896 r4897  
    136136      READ  ( numnam_cfg, namdyn_hpg, IOSTAT = ios, ERR = 902 ) 
    137137902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_hpg in configuration namelist', lwp ) 
    138       WRITE ( numond, namdyn_hpg ) 
     138      IF(lwm) WRITE ( numond, namdyn_hpg ) 
    139139      ! 
    140140      IF(lwp) THEN                   ! Control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/DYN/dynnept.F90

    r4372 r4897  
    125125      READ  ( numnam_cfg, namdyn_nept, IOSTAT = ios, ERR = 902 ) 
    126126902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_nept in configuration namelist', lwp ) 
    127       WRITE ( numond, namdyn_nept ) 
     127      IF(lwm) WRITE ( numond, namdyn_nept ) 
    128128 
    129129      IF(lwp) THEN                      ! Control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/DYN/dynspg_ts.F90

    r4896 r4897  
    10551055      READ  ( numnam_cfg, namsplit, IOSTAT = ios, ERR = 902 ) 
    10561056902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsplit in configuration namelist', lwp ) 
    1057       WRITE ( numond, namsplit ) 
     1057      IF(lwm) WRITE ( numond, namsplit ) 
    10581058      ! 
    10591059      !         ! Max courant number for ext. grav. waves 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/DYN/dynvor.F90

    r4896 r4897  
    715715      READ  ( numnam_cfg, namdyn_vor, IOSTAT = ios, ERR = 902 ) 
    716716902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_vor in configuration namelist', lwp ) 
    717       WRITE ( numond, namdyn_vor ) 
     717      IF(lwm) WRITE ( numond, namdyn_vor ) 
    718718 
    719719      IF(lwp) THEN                    ! Namelist print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/FLO/floats.F90

    r4147 r4897  
    9696      READ  ( numnam_cfg, namflo, IOSTAT = ios, ERR = 902 ) 
    9797902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namflo in configuration namelist', lwp ) 
    98       WRITE ( numond, namflo ) 
     98      IF(lwm) WRITE ( numond, namflo ) 
    9999      ! 
    100100      IF(lwp) THEN                  ! control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/ICB/icbini.F90

    r4153 r4897  
    363363      READ  ( numnam_cfg, namberg, IOSTAT = ios, ERR = 902 ) 
    364364902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namberg in configuration namelist', lwp ) 
    365       WRITE ( numond, namberg ) 
     365      IF(lwm) WRITE ( numond, namberg ) 
    366366#else 
    367367      IF(lwp) THEN 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/IOM/in_out_manager.F90

    r4147 r4897  
    138138   CHARACTER(lc) ::   cform_err = "(/,' ===>>> : E R R O R',     /,'         ===========',/)"       !: 
    139139   CHARACTER(lc) ::   cform_war = "(/,' ===>>> : W A R N I N G', /,'         ===============',/)"   !: 
    140    LOGICAL       ::   lwp      = .FALSE.    !: boolean : true on the 1st processor only 
     140   LOGICAL       ::   lwm      = .FALSE.    !: boolean : true on the 1st processor only (always) 
     141   LOGICAL       ::   lwp      = .FALSE.    !: boolean : true on the 1st processor only .OR. ln_ctl 
    141142   LOGICAL       ::   lsp_area = .TRUE.     !: to make a control print over a specific area 
    142143 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/IOM/iom.F90

    r4292 r4897  
    344344            CALL ctl_stop( TRIM(clinfo), 'We want to write in a new file but '//TRIM(clname)//' already exists...' ) 
    345345            istop = nstop + 1                      ! make sure that istop /= nstop so we don't open the file 
     346         ELSEIF( llwrt ) THEN     ! the file exists and we are in write mode with permission to  
     347            clname = cltmpn       ! overwrite so get back the file name without the cpu number 
    346348         ENDIF 
    347349      ENDIF 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/LBC/lbcnfd.F90

    r4230 r4897  
    3333 
    3434   INTEGER, PUBLIC,  PARAMETER :: jpmaxngh = 3 
    35    INTEGER, PUBLIC                                  ::   nsndto 
     35   INTEGER, PUBLIC                                  ::   nsndto, nfsloop, nfeloop 
    3636   INTEGER, PUBLIC,  DIMENSION (jpmaxngh)           ::   isendto ! processes to which communicate 
    3737 
     
    412412            SELECT CASE ( cd_type ) 
    413413            CASE ( 'T' , 'W' )                         ! T-, W-point 
    414                IF (narea .ne. (jpnij - jpni + 1)) THEN 
     414               IF (nimpp .ne. 1) THEN 
    415415                 startloop = 1 
    416416               ELSE 
     
    420420               DO jk = 1, jpk 
    421421                  DO ji = startloop, nlci 
    422                      ijt = jpiglo - ji - nimpp - nimppt(isendto(1)) + 4 
     422                     ijt = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 4 
    423423                     pt3dl(ji,ijpj,jk) = psgn * pt3dr(ijt,ijpj-2,jk) 
    424424                  END DO 
     
    435435                 DO jk = 1, jpk 
    436436                    DO ji = startloop, nlci 
    437                        ijt = jpiglo - ji - nimpp - nimppt(isendto(1)) + 4 
     437                       ijt = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 4 
    438438                       jia = ji + nimpp - 1 
    439439                       ijta = jpiglo - jia + 2 
     
    448448 
    449449 
    450  
    451450            CASE ( 'U' )                               ! U-point 
    452                IF (narea .ne. (jpnij)) THEN 
     451               IF ((nimpp + nlci - 1) .ne. jpiglo) THEN 
    453452                  endloop = nlci 
    454453               ELSE 
     
    457456               DO jk = 1, jpk 
    458457                  DO ji = 1, endloop 
    459                      iju = jpiglo - ji - nimpp - nimppt(isendto(1)) + 3 
     458                     iju = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 3 
    460459                     pt3dl(ji,ijpj,jk) = psgn * pt3dr(iju,ijpj-2,jk) 
    461460                  END DO 
    462461               END DO 
    463462 
    464                IF (narea .ne. (jpnij)) THEN 
     463               IF ((nimpp + nlci - 1) .ne. jpiglo) THEN 
    465464                  endloop = nlci 
    466465               ELSE 
     
    477476                 DO jk = 1, jpk 
    478477                    DO ji = startloop, endloop 
    479                       iju = jpiglo - ji - nimpp - nimppt(isendto(1)) + 3 
     478                      iju = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 3 
    480479                      jia = ji + nimpp - 1 
    481480                      ijua = jpiglo - jia + 1 
     
    490489 
    491490            CASE ( 'V' )                               ! V-point 
    492                IF (narea .ne. (jpnij - jpni + 1)) THEN 
     491               IF (nimpp .ne. 1) THEN 
    493492                  startloop = 1 
    494493               ELSE 
     
    497496               DO jk = 1, jpk 
    498497                  DO ji = startloop, nlci 
    499                      ijt = jpiglo - ji - nimpp - nimppt(isendto(1)) + 4 
     498                     ijt = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 4 
    500499                     pt3dl(ji,ijpj-1,jk) = psgn * pt3dr(ijt,ijpj-2,jk) 
    501500                     pt3dl(ji,ijpj  ,jk) = psgn * pt3dr(ijt,ijpj-3,jk) 
     
    503502               END DO 
    504503            CASE ( 'F' )                               ! F-point 
    505                IF (narea .ne. (jpnij)) THEN 
     504               IF ((nimpp + nlci - 1) .ne. jpiglo) THEN 
    506505                  endloop = nlci 
    507506               ELSE 
     
    510509               DO jk = 1, jpk 
    511510                  DO ji = 1, endloop 
    512                      iju = jpiglo - ji - nimpp - nimppt(isendto(1)) + 3 
     511                     iju = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 3 
    513512                     pt3dl(ji,ijpj-1,jk) = psgn * pt3dr(iju,ijpj-2,jk) 
    514513                     pt3dl(ji,ijpj  ,jk) = psgn * pt3dr(iju,ijpj-3,jk) 
     
    524523               DO jk = 1, jpk 
    525524                  DO ji = 1, nlci 
    526                      ijt = jpiglo - ji - nimpp - nimppt(isendto(1)) + 3 
     525                     ijt = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 3 
    527526                     pt3dl(ji,ijpj,jk) = psgn * pt3dr(ijt,ijpj-1,jk) 
    528527                  END DO 
     
    530529 
    531530            CASE ( 'U' )                               ! U-point 
    532                IF (narea .ne. (jpnij)) THEN 
     531               IF ((nimpp + nlci - 1) .ne. jpiglo) THEN 
    533532                  endloop = nlci 
    534533               ELSE 
     
    537536               DO jk = 1, jpk 
    538537                  DO ji = 1, endloop 
    539                      iju = jpiglo - ji - nimpp - nimppt(isendto(1)) + 2 
     538                     iju = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 2 
    540539                     pt3dl(ji,ijpj,jk) = psgn * pt3dr(iju,ijpj-1,jk) 
    541540                  END DO 
     
    545544               DO jk = 1, jpk 
    546545                  DO ji = 1, nlci 
    547                      ijt = jpiglo - ji- nimpp - nimppt(isendto(1)) + 3 
     546                     ijt = jpiglo - ji- nimpp - nfiimpp(isendto(1),jpnj) + 3 
    548547                     pt3dl(ji,ijpj,jk) = psgn * pt3dr(ijt,ijpj-2,jk) 
    549548                  END DO 
     
    560559                 DO jk = 1, jpk 
    561560                    DO ji = startloop, nlci 
    562                        ijt = jpiglo - ji - nimpp - nimppt(isendto(1)) + 3 
     561                       ijt = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 3 
    563562                       pt3dl(ji,ijpjm1,jk) = psgn * pt3dr(ijt,ijpjm1,jk) 
    564563                    END DO 
     
    567566 
    568567            CASE ( 'F' )                               ! F-point 
    569                IF (narea .ne. (jpnij)) THEN 
     568               IF ((nimpp + nlci - 1) .ne. jpiglo) THEN 
    570569                  endloop = nlci 
    571570               ELSE 
     
    574573               DO jk = 1, jpk 
    575574                  DO ji = 1, endloop 
    576                      iju = jpiglo - ji - nimpp - nimppt(isendto(1)) + 2 
     575                     iju = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 2 
    577576                     pt3dl(ji,ijpj ,jk) = psgn * pt3dr(iju,ijpj-2,jk) 
    578577                  END DO 
    579578               END DO 
    580579 
    581                IF (narea .ne. (jpnij)) THEN 
     580               IF ((nimpp + nlci - 1) .ne. jpiglo) THEN 
    582581                  endloop = nlci 
    583582               ELSE 
     
    594593                  DO jk = 1, jpk 
    595594                     DO ji = startloop, endloop 
    596                         iju = jpiglo - ji - nimpp - nimppt(isendto(1)) + 2 
     595                        iju = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 2 
    597596                        pt3dl(ji,ijpjm1,jk) = psgn * pt3dr(iju,ijpjm1,jk) 
    598597                     END DO 
     
    656655         ! 
    657656         CASE ( 'T' , 'W' )                               ! T- , W-points 
    658             IF (narea .ne. (jpnij - jpni + 1)) THEN 
     657            IF (nimpp .ne. 1) THEN 
    659658              startloop = 1 
    660659            ELSE 
     
    662661            ENDIF 
    663662            DO ji = startloop, nlci 
    664               ijt=jpiglo - ji - nimpp - nimppt(isendto(1)) + 4 
     663              ijt=jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 4 
    665664              pt2dl(ji,ijpj) = psgn * pt2dr(ijt,ijpjm1-1) 
    666665            END DO 
     
    674673            ENDIF 
    675674            DO ji = startloop, nlci 
    676                ijt=jpiglo - ji - nimpp - nimppt(isendto(1)) + 4 
     675               ijt=jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 4 
    677676               jia = ji + nimpp - 1 
    678677               ijta = jpiglo - jia + 2 
     
    685684 
    686685         CASE ( 'U' )                                     ! U-point 
    687             IF (narea .ne. (jpnij)) THEN 
     686            IF ((nimpp + nlci - 1) .ne. jpiglo) THEN 
    688687               endloop = nlci 
    689688            ELSE 
     
    691690            ENDIF 
    692691            DO ji = 1, endloop 
    693                iju = jpiglo - ji - nimpp - nimppt(isendto(1)) + 3 
     692               iju = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 3 
    694693               pt2dl(ji,ijpj) = psgn * pt2dr(iju,ijpjm1-1) 
    695694            END DO 
    696695 
    697             IF (narea .ne. (jpnij)) THEN 
     696            IF ((nimpp + nlci - 1) .ne. jpiglo) THEN 
    698697               endloop = nlci 
    699698            ELSE 
     
    708707            ENDIF 
    709708            DO ji = startloop, endloop 
    710                iju = jpiglo - ji - nimpp - nimppt(isendto(1)) + 3 
     709               iju = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 3 
    711710               jia = ji + nimpp - 1 
    712711               ijua = jpiglo - jia + 1 
     
    719718 
    720719         CASE ( 'V' )                                     ! V-point 
    721             IF (narea .ne. (jpnij - jpni + 1)) THEN 
     720            IF (nimpp .ne. 1) THEN 
    722721              startloop = 1 
    723722            ELSE 
     
    725724            ENDIF 
    726725            DO ji = startloop, nlci 
    727               ijt=jpiglo - ji - nimpp - nimppt(isendto(1)) + 4 
     726              ijt=jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 4 
    728727              pt2dl(ji,ijpjm1) = psgn * pt2dr(ijt,ijpjm1-1) 
    729728              pt2dl(ji,ijpj) = psgn * pt2dr(ijt,ijpjm1-2) 
     
    731730 
    732731         CASE ( 'F' )                                     ! F-point 
    733             IF (narea .ne. (jpnij)) THEN 
     732            IF ((nimpp + nlci - 1) .ne. jpiglo) THEN 
    734733               endloop = nlci 
    735734            ELSE 
     
    737736            ENDIF 
    738737            DO ji = 1, endloop 
    739                iju = jpiglo - ji - nimpp - nimppt(isendto(1)) + 3 
     738               iju = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 3 
    740739               pt2dl(ji,ijpjm1) = psgn * pt2dr(iju,ijpjm1-1) 
    741740               pt2dl(ji,ijpj) = psgn * pt2dr(iju,ijpjm1-2) 
     
    743742 
    744743         CASE ( 'I' )                                     ! ice U-V point (I-point) 
    745             IF (narea .ne. (jpnij - jpni + 1)) THEN 
     744            IF (nimpp .ne. 1) THEN 
    746745               startloop = 1 
    747746            ELSE 
     
    750749            ENDIF 
    751750            DO ji = startloop, nlci 
    752                iju = jpiglo - ji - nimpp - nimppt(isendto(1)) + 5 
     751               iju = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 5 
    753752               pt2dl(ji,ijpj) = psgn * pt2dr(iju,ijpjm1) 
    754753            END DO 
    755754 
    756755         CASE ( 'J' )                                     ! first ice U-V point 
    757             IF (narea .ne. (jpnij - jpni + 1)) THEN 
     756            IF (nimpp .ne. 1) THEN 
    758757               startloop = 1 
    759758            ELSE 
     
    762761            ENDIF 
    763762            DO ji = startloop, nlci 
    764                iju = jpiglo - ji - nimpp - nimppt(isendto(1)) + 5 
     763               iju = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 5 
    765764               pt2dl(ji,ijpj) = psgn * pt2dr(iju,ijpjm1) 
    766765            END DO 
    767766 
    768767         CASE ( 'K' )                                     ! second ice U-V point 
    769             IF (narea .ne. (jpnij - jpni + 1)) THEN 
     768            IF (nimpp .ne. 1) THEN 
    770769               startloop = 1 
    771770            ELSE 
     
    774773            ENDIF 
    775774            DO ji = startloop, nlci 
    776                iju = jpiglo - ji - nimpp - nimppt(isendto(1)) + 5 
     775               iju = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 5 
    777776               pt2dl(ji,ijpj) = psgn * pt2dr(iju,ijpjm1) 
    778777            END DO 
     
    785784         CASE ( 'T' , 'W' )                               ! T-, W-point 
    786785            DO ji = 1, nlci 
    787                ijt = jpiglo - ji - nimpp - nimppt(isendto(1)) + 3 
     786               ijt = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 3 
    788787               pt2dl(ji,ijpj) = psgn * pt2dr(ijt,ijpjm1) 
    789788            END DO 
    790789 
    791790         CASE ( 'U' )                                     ! U-point 
    792             IF (narea .ne. (jpnij)) THEN 
     791            IF ((nimpp + nlci - 1) .ne. jpiglo) THEN 
    793792               endloop = nlci 
    794793            ELSE 
     
    796795            ENDIF 
    797796            DO ji = 1, endloop 
    798                iju = jpiglo - ji - nimpp - nimppt(isendto(1)) + 2 
     797               iju = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 2 
    799798               pt2dl(ji,ijpj) = psgn * pt2dr(iju,ijpjm1) 
    800799            END DO 
     
    802801         CASE ( 'V' )                                     ! V-point 
    803802            DO ji = 1, nlci 
    804                ijt = jpiglo - ji - nimpp - nimppt(isendto(1)) + 3 
     803               ijt = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 3 
    805804               pt2dl(ji,ijpj) = psgn * pt2dr(ijt,ijpjm1-1) 
    806805            END DO 
     
    813812            ENDIF 
    814813            DO ji = startloop, nlci 
    815                ijt = jpiglo - ji - nimpp - nimppt(isendto(1)) + 3 
     814               ijt = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 3 
    816815               pt2dl(ji,ijpjm1) = psgn * pt2dr(ijt,ijpjm1) 
    817816            END DO 
    818817 
    819818         CASE ( 'F' )                               ! F-point 
    820             IF (narea .ne. (jpnij)) THEN 
     819            IF ((nimpp + nlci - 1) .ne. jpiglo) THEN 
    821820               endloop = nlci 
    822821            ELSE 
     
    824823            ENDIF 
    825824            DO ji = 1, endloop 
    826                iju = jpiglo - ji - nimpp - nimppt(isendto(1)) + 2 
     825               iju = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 2 
    827826               pt2dl(ji,ijpj) = psgn * pt2dr(iju,ijpjm1-1) 
    828827            END DO 
    829828 
    830             IF (narea .ne. (jpnij)) THEN 
     829            IF ((nimpp + nlci - 1) .ne. jpiglo) THEN 
    831830               endloop = nlci 
    832831            ELSE 
     
    842841 
    843842            DO ji = startloop, endloop 
    844                iju = jpiglo - ji - nimpp - nimppt(isendto(1)) + 2 
     843               iju = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 2 
    845844               pt2dl(ji,ijpjm1) = psgn * pt2dr(iju,ijpjm1) 
    846845            END DO 
    847846 
    848847         CASE ( 'I' )                                  ! ice U-V point (I-point) 
    849                IF (narea .ne. (jpnij - jpni + 1)) THEN 
     848               IF (nimpp .ne. 1) THEN 
    850849                  startloop = 1 
    851850               ELSE 
    852851                  startloop = 2 
    853852               ENDIF 
    854                IF (narea .ne. jpnij) THEN 
     853               IF ((nimpp + nlci - 1) .ne. jpiglo) THEN 
    855854                  endloop = nlci 
    856855               ELSE 
     
    858857               ENDIF 
    859858               DO ji = startloop , endloop 
    860                   ijt = jpiglo - ji - nimpp - nimppt(isendto(1)) + 4 
     859                  ijt = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 4 
    861860                  pt2dl(ji,ijpj)= 0.5 * (pt2dr(ji,ijpjm1) + psgn * pt2dr(ijt,ijpjm1)) 
    862861               END DO 
    863862 
    864863         CASE ( 'J' )                                  ! first ice U-V point 
    865                IF (narea .ne. (jpnij - jpni + 1)) THEN 
     864               IF (nimpp .ne. 1) THEN 
    866865                  startloop = 1 
    867866               ELSE 
    868867                  startloop = 2 
    869868               ENDIF 
    870                IF (narea .ne. jpnij) THEN 
     869               IF ((nimpp + nlci - 1) .ne. jpiglo) THEN 
    871870                  endloop = nlci 
    872871               ELSE 
     
    874873               ENDIF 
    875874               DO ji = startloop , endloop 
    876                   ijt = jpiglo - ji - nimpp - nimppt(isendto(1)) + 4 
     875                  ijt = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 4 
    877876                  pt2dl(ji,ijpj) = pt2dr(ji,ijpjm1) 
    878877               END DO 
    879878 
    880879         CASE ( 'K' )                                  ! second ice U-V point 
    881                IF (narea .ne. (jpnij - jpni + 1)) THEN 
     880               IF (nimpp .ne. 1) THEN 
    882881                  startloop = 1 
    883882               ELSE 
    884883                  startloop = 2 
    885884               ENDIF 
    886                IF (narea .ne. jpnij) THEN 
     885               IF ((nimpp + nlci - 1) .ne. jpiglo) THEN 
    887886                  endloop = nlci 
    888887               ELSE 
     
    890889               ENDIF 
    891890               DO ji = startloop, endloop 
    892                   ijt = jpiglo - ji - nimpp - nimppt(isendto(1)) + 4 
     891                  ijt = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 4 
    893892                  pt2dl(ji,ijpj) = pt2dr(ijt,ijpjm1) 
    894893               END DO 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/LBC/lib_mpp.F90

    r4328 r4897  
    170170      INTEGER                      , INTENT(in   ) ::   kumnam_ref     ! logical unit for reference namelist 
    171171      INTEGER                      , INTENT(in   ) ::   kumnam_cfg     ! logical unit for configuration namelist 
    172       INTEGER                      , INTENT(in   ) ::   kumond         ! logical unit for namelist output 
     172      INTEGER                      , INTENT(inout) ::   kumond         ! logical unit for namelist output 
    173173      INTEGER                      , INTENT(inout) ::   kstop          ! stop indicator 
    174174      INTEGER, OPTIONAL            , INTENT(in   ) ::   localComm 
     
    193193      READ  ( kumnam_cfg, nammpp, IOSTAT = ios, ERR = 902 ) 
    194194902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nammpp in configuration namelist', lwp ) 
    195       WRITE(kumond, nammpp)       
    196195 
    197196      !                              ! control print 
     
    293292      CALL mpi_comm_size( mpi_comm_opa, mppsize, ierr ) 
    294293      mynode = mpprank 
     294 
     295      IF( mynode == 0 ) THEN 
     296        CALL ctl_opn( kumond, 'output.namelist.dyn', 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', -1, 6, .FALSE. , 1 ) 
     297        WRITE(kumond, nammpp)       
     298      ENDIF 
    295299      ! 
    296300      CALL MPI_OP_CREATE(DDPDD_MPI, .TRUE., MPI_SUMDD, ierr) 
     
    20222026      ijpjm1 = 3 
    20232027      ! 
     2028      znorthloc(:,:,:) = 0 
    20242029      DO jk = 1, jpk 
    20252030         DO jj = nlcj - ijpj +1, nlcj          ! put in xnorthloc the last 4 jlines of pt3d 
     
    20322037      itaille = jpi * jpk * ijpj 
    20332038 
    2034  
    20352039      IF ( l_north_nogather ) THEN 
    20362040         ! 
    20372041        ztabr(:,:,:) = 0 
     2042        ztabl(:,:,:) = 0 
     2043 
    20382044        DO jk = 1, jpk 
    20392045           DO jj = nlcj-ijpj+1, nlcj          ! First put local values into the global array 
    20402046              ij = jj - nlcj + ijpj 
    2041               DO ji = 1, nlci 
     2047              DO ji = nfsloop, nfeloop 
    20422048                 ztabl(ji,ij,jk) = pt3d(ji,jj,jk) 
    20432049              END DO 
     
    20462052 
    20472053         DO jr = 1,nsndto 
    2048             IF (isendto(jr) .ne. narea) CALL mppsend( 5, znorthloc, itaille, isendto(jr)-1, ml_req_nf(jr) ) 
     2054            IF ((nfipproc(isendto(jr),jpnj) .ne. (narea-1)) .and. (nfipproc(isendto(jr),jpnj) .ne. -1)) THEN 
     2055              CALL mppsend( 5, znorthloc, itaille, nfipproc(isendto(jr),jpnj), ml_req_nf(jr) ) 
     2056            ENDIF 
    20492057         END DO 
    20502058         DO jr = 1,nsndto 
    2051             iproc = isendto(jr) 
    2052             ildi = nldit (iproc) 
    2053             ilei = nleit (iproc) 
    2054             iilb = nimppt(isendto(jr)) - nimppt(isendto(1)) 
    2055             IF(isendto(jr) .ne. narea) THEN 
    2056               CALL mpprecv(5, zfoldwk, itaille, isendto(jr)-1) 
     2059            iproc = nfipproc(isendto(jr),jpnj) 
     2060            IF(iproc .ne. -1) THEN 
     2061               ilei = nleit (iproc+1) 
     2062               ildi = nldit (iproc+1) 
     2063               iilb = nfiimpp(isendto(jr),jpnj) - nfiimpp(isendto(1),jpnj) 
     2064            ENDIF 
     2065            IF((iproc .ne. (narea-1)) .and. (iproc .ne. -1)) THEN 
     2066              CALL mpprecv(5, zfoldwk, itaille, iproc) 
    20572067              DO jk = 1, jpk 
    20582068                 DO jj = 1, ijpj 
    2059                     DO ji = 1, ilei 
     2069                    DO ji = ildi, ilei 
    20602070                       ztabr(iilb+ji,jj,jk) = zfoldwk(ji,jj,jk) 
    20612071                    END DO 
    20622072                 END DO 
    20632073              END DO 
    2064            ELSE 
     2074           ELSE IF (iproc .eq. (narea-1)) THEN 
    20652075              DO jk = 1, jpk 
    20662076                 DO jj = 1, ijpj 
    2067                     DO ji = 1, ilei 
     2077                    DO ji = ildi, ilei 
    20682078                       ztabr(iilb+ji,jj,jk) = pt3d(ji,nlcj-ijpj+jj,jk) 
    20692079                    END DO 
     
    20742084         IF (l_isend) THEN 
    20752085            DO jr = 1,nsndto 
    2076                IF (isendto(jr) .ne. narea) CALL mpi_wait(ml_req_nf(jr), ml_stat, ml_err) 
     2086               IF ((nfipproc(isendto(jr),jpnj) .ne. (narea-1)) .and. (nfipproc(isendto(jr),jpnj) .ne. -1)) CALL mpi_wait(ml_req_nf(jr), ml_stat, ml_err) 
    20772087            END DO 
    20782088         ENDIF 
    20792089         CALL mpp_lbc_nfd( ztabl, ztabr, cd_type, psgn )   ! North fold boundary condition 
    2080          ! 
    20812090         DO jk = 1, jpk 
    20822091            DO jj = nlcj-ijpj+1, nlcj             ! Scatter back to pt3d 
     
    21262135      ! Either way the array may be folded by lbc_nfd and the result for the span of 
    21272136      ! this domain will be identical. 
    2128       ! 
    2129       CALL lbc_nfd( ztab, cd_type, psgn )   ! North fold boundary condition 
    2130       ! 
    2131       DO jk = 1, jpk 
    2132          DO jj = nlcj-ijpj+1, nlcj             ! Scatter back to pt3d 
    2133             ij = jj - nlcj + ijpj 
    2134             DO ji= 1, nlci 
    2135                pt3d(ji,jj,jk) = ztab(ji+nimpp-1,ij,jk) 
    2136             END DO 
    2137         END DO 
    2138       END DO 
    21392137      ! 
    21402138      DEALLOCATE( ztab, znorthloc, zfoldwk, znorthgloio ) 
     
    21972195         ! 
    21982196         ztabr(:,:) = 0 
     2197         ztabl(:,:) = 0 
     2198 
    21992199         DO jj = nlcj-ijpj+1, nlcj          ! First put local values into the global array 
    22002200            ij = jj - nlcj + ijpj 
    2201             DO ji = 1, nlci 
     2201              DO ji = nfsloop, nfeloop 
    22022202               ztabl(ji,ij) = pt2d(ji,jj) 
    22032203            END DO 
     
    22052205 
    22062206         DO jr = 1,nsndto 
    2207             IF (isendto(jr) .ne. narea) CALL mppsend(5, znorthloc, itaille, isendto(jr)-1, ml_req_nf(jr)) 
     2207            IF ((nfipproc(isendto(jr),jpnj) .ne. (narea-1)) .and. (nfipproc(isendto(jr),jpnj) .ne. -1)) THEN 
     2208               CALL mppsend(5, znorthloc, itaille, nfipproc(isendto(jr),jpnj), ml_req_nf(jr)) 
     2209            ENDIF 
    22082210         END DO 
    22092211         DO jr = 1,nsndto 
    2210             iproc = isendto(jr) 
    2211             ildi = nldit (iproc) 
    2212             ilei = nleit (iproc) 
    2213             iilb = nimppt(isendto(jr)) - nimppt(isendto(1)) 
    2214             IF(isendto(jr) .ne. narea) THEN 
    2215               CALL mpprecv(5, zfoldwk, itaille, isendto(jr)-1) 
     2212            iproc = nfipproc(isendto(jr),jpnj) 
     2213            IF(iproc .ne. -1) THEN 
     2214               ilei = nleit (iproc+1) 
     2215               ildi = nldit (iproc+1) 
     2216               iilb = nfiimpp(isendto(jr),jpnj) - nfiimpp(isendto(1),jpnj) 
     2217            ENDIF 
     2218            IF((iproc .ne. (narea-1)) .and. (iproc .ne. -1)) THEN 
     2219              CALL mpprecv(5, zfoldwk, itaille, iproc) 
    22162220              DO jj = 1, ijpj 
    2217                  DO ji = 1, ilei 
     2221                 DO ji = ildi, ilei 
    22182222                    ztabr(iilb+ji,jj) = zfoldwk(ji,jj) 
    22192223                 END DO 
    22202224              END DO 
    2221             ELSE 
     2225            ELSE IF (iproc .eq. (narea-1)) THEN 
    22222226              DO jj = 1, ijpj 
    2223                  DO ji = 1, ilei 
     2227                 DO ji = ildi, ilei 
    22242228                    ztabr(iilb+ji,jj) = pt2d(ji,nlcj-ijpj+jj) 
    22252229                 END DO 
     
    22292233         IF (l_isend) THEN 
    22302234            DO jr = 1,nsndto 
    2231                IF (isendto(jr) .ne. narea) CALL mpi_wait(ml_req_nf(jr), ml_stat, ml_err) 
     2235               IF ((nfipproc(isendto(jr),jpnj) .ne. (narea-1)) .and. (nfipproc(isendto(jr),jpnj) .ne. -1)) THEN 
     2236                  CALL mpi_wait(ml_req_nf(jr), ml_stat, ml_err) 
     2237               ENDIF 
    22322238            END DO 
    22332239         ENDIF 
     
    29242930      IF( PRESENT( localComm ) .OR. .NOT.PRESENT( localComm ) )   function_value = 0 
    29252931      IF( .FALSE. )   ldtxt(:) = 'never done' 
     2932      CALL ctl_opn( kumond, 'output.namelist.dyn', 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', -1, 6, .FALSE. , 1 ) 
    29262933   END FUNCTION mynode 
    29272934 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/LBC/mppini.F90

    r3294 r4897  
    177177       
    178178#endif 
     179      nfilcit(:,:) = ilcit(:,:) 
    179180      IF( irestj == 0 )   irestj = jpnj 
    180181 
     
    255256         END DO 
    256257      ENDIF 
     258      nfiimpp(:,:)=iimppt(:,:) 
    257259 
    258260      IF( jpnj > 1 ) THEN 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/LBC/mppini_2.h90

    r4153 r4897  
    8686      READ  ( numnam_cfg, namzgr, IOSTAT = ios, ERR = 902 ) 
    8787902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzgr in configuration namelist', lwp ) 
    88       WRITE ( numond, namzgr ) 
     88      IF(lwm) WRITE ( numond, namzgr ) 
    8989 
    9090      IF(lwp)WRITE(numout,*) 
     
    144144#endif 
    145145 
     146      nfilcit(:,:) = ilci(:,:) 
     147 
    146148      IF(lwp) WRITE(numout,*) 
    147149      IF(lwp) WRITE(numout,*) ' mpp_init2: defines mpp subdomains' 
     
    175177         END DO 
    176178      ENDIF 
     179      nfiimpp(:,:) = iimppt(:,:) 
    177180 
    178181      IF( jpnj > 1 )THEN 
     
    195198         ili = ilci(ii,ij) 
    196199         ilj = ilcj(ii,ij) 
    197  
    198200         ibondj(ii,ij) = -1 
    199201         IF( jarea >  jpni          )   ibondj(ii,ij) = 0 
    200202         IF( jarea >  (jpnj-1)*jpni )   ibondj(ii,ij) = 1 
    201203         IF( jpnj  == 1             )   ibondj(ii,ij) = 2 
    202  
    203204         ibondi(ii,ij) = 0 
    204205         IF( MOD(jarea,jpni) == 1 )   ibondi(ii,ij) = -1 
     
    284285            IF( jarea > ijm1 ) ipolj(ii,ij) = 3 
    285286            IF( MOD(jpni,2) == 1 .AND. jarea == imil ) ipolj(ii,ij) = 4 
    286             IF( ipolj(ii,ij) == 3 ) iono(ii,ij) = jpni*jpnj-jarea+ijm1 - 1   ! MPI rank of northern neighbour 
     287            IF( ipolj(ii,ij) == 3 ) iono(ii,ij) = jpni*jpnj-jarea+ijm1   ! MPI rank of northern neighbour 
    287288         ENDIF 
    288289         IF( jperio == 5 .OR. jperio == 6 ) THEN 
     
    291292            IF( jarea > ijm1) ipolj(ii,ij) = 5 
    292293            IF( MOD(jpni,2) == 1 .AND. jarea == imil ) ipolj(ii,ij) = 6 
    293             IF( ipolj(ii,ij) == 5) iono(ii,ij) = jpni*jpnj-jarea+ijm1 - 1    ! MPI rank of northern neighbour 
     294            IF( ipolj(ii,ij) == 5) iono(ii,ij) = jpni*jpnj-jarea+ijm1    ! MPI rank of northern neighbour 
    294295         ENDIF 
    295296 
     
    307308         ENDIF 
    308309      END DO 
     310 
     311      nfipproc(:,:) = ipproc(:,:) 
     312 
    309313 
    310314      ! Control 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/LDF/ldfdyn.F90

    r4292 r4897  
    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       WRITE ( numond, namdyn_ldf ) 
     83      IF(lwm) WRITE ( numond, namdyn_ldf ) 
    8484 
    8585      IF(lwp) THEN                      ! Parameter print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/LDF/ldftra.F90

    r4147 r4897  
    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       WRITE ( numond, namtra_ldf ) 
     87      IF(lwm) WRITE ( numond, namtra_ldf ) 
    8888 
    8989      IF(lwp) THEN                      ! control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/OBS/diaobs.F90

    r4292 r4897  
    221221      READ  ( numnam_cfg, namobs, IOSTAT = ios, ERR = 902 ) 
    222222902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namobs in configuration namelist', lwp ) 
    223       WRITE ( numond, namobs ) 
     223      IF(lwm) WRITE ( numond, namobs ) 
    224224 
    225225      ! Count number of files for each type 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/SBC/albedo.F90

    r4147 r4897  
    212212      READ  ( numnam_cfg, namsbc_alb, IOSTAT = ios, ERR = 902 ) 
    213213902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_alb in configuration namelist', lwp ) 
    214       WRITE ( numond, namsbc_alb ) 
     214      IF(lwm) WRITE ( numond, namsbc_alb ) 
    215215      ! 
    216216      IF(lwp) THEN                      ! Control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/SBC/fldread.F90

    r4371 r4897  
    4040      LOGICAL              ::   ln_clim     ! climatology or not (T/F) 
    4141      CHARACTER(len = 8)   ::   cltype      ! type of data file 'daily', 'monthly' or yearly' 
    42       CHARACTER(len = 34) ::   wname       ! generic name of a NetCDF weights file to be used, blank if not 
     42      CHARACTER(len = 256) ::   wname       ! generic name of a NetCDF weights file to be used, blank if not 
    4343      CHARACTER(len = 34)  ::   vcomp       ! symbolic component name if a vector that needs rotation 
    4444      !                                     ! a string starting with "U" or "V" for each component    
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/SBC/sbcana.F90

    r4604 r4897  
    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          WRITE ( numond, namsbc_ana ) 
     83         IF(lwm) WRITE ( numond, namsbc_ana ) 
    8484         ! 
    8585         IF(lwp) WRITE(numout,*)' ' 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/SBC/sbcapr.F90

    r4328 r4897  
    8383         READ  ( numnam_cfg, namsbc_apr, IOSTAT = ios, ERR = 902 ) 
    8484902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_apr in configuration namelist', lwp ) 
    85          WRITE ( numond, namsbc_apr ) 
     85         IF(lwm) WRITE ( numond, namsbc_apr ) 
    8686         ! 
    8787         ALLOCATE( sf_apr(1), STAT=ierror )           !* allocate and fill sf_sst (forcing structure) with sn_sst 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/SBC/sbcblk_clio.F90

    r4147 r4897  
    148148         READ  ( numnam_cfg, namsbc_clio, IOSTAT = ios, ERR = 902 ) 
    149149902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_clio in configuration namelist', lwp ) 
    150          WRITE ( numond, namsbc_clio ) 
     150         IF(lwm) WRITE ( numond, namsbc_clio ) 
    151151 
    152152         ! store namelist information in an array 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/SBC/sbcblk_core.F90

    r4896 r4897  
    154154902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_core in configuration namelist', lwp ) 
    155155 
    156          WRITE ( numond, namsbc_core ) 
     156         IF(lwm) WRITE ( numond, namsbc_core ) 
    157157         !                                         ! check: do we plan to use ln_dm2dc with non-daily forcing? 
    158158         IF( ln_dm2dc .AND. sn_qsr%nfreqh /= 24 )   &  
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/SBC/sbcblk_mfs.F90

    r4147 r4897  
    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          WRITE ( numond, namsbc_mfs ) 
     143         IF(lwm) WRITE ( numond, namsbc_mfs ) 
    144144         ! 
    145145         ! store namelist information in an array 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/SBC/sbccpl.F90

    r4393 r4897  
    244244      READ  ( numnam_cfg, namsbc_cpl, IOSTAT = ios, ERR = 902 ) 
    245245902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_cpl in configuration namelist', lwp ) 
    246       WRITE ( numond, namsbc_cpl ) 
     246      IF(lwm) WRITE ( numond, namsbc_cpl ) 
    247247 
    248248      IF(lwp) THEN                        ! control print 
     
    13741374            END SELECT 
    13751375         CASE( 'mixed oce-ice'        )    
    1376             ztmp1(:,:) = ( tsn(:,:,1,1) + rt0 ) * zfr_l(:,:)  
     1376            ztmp1(:,:) = ( tsn(:,:,1,jp_tem) + rt0 ) * zfr_l(:,:)  
    13771377            DO jl=1,jpl 
    13781378               ztmp1(:,:) = ztmp1(:,:) + tn_ice(:,:,jl) * a_i(:,:,jl) 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/SBC/sbcflx.F90

    r4147 r4897  
    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          WRITE ( numond, namsbc_flx )  
     100         IF(lwm) WRITE ( numond, namsbc_flx )  
    101101         ! 
    102102         !                                         ! check: do we plan to use ln_dm2dc with non-daily forcing? 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/SBC/sbcice_cice.F90

    r4292 r4897  
    6060   PUBLIC sbc_ice_cice    ! routine called by sbc 
    6161 
    62    INTEGER , PARAMETER ::   ji_off = INT ( (jpiglo - nx_global) / 2 ) 
    63    INTEGER , PARAMETER ::   jj_off = INT ( (jpjglo - ny_global) / 2 ) 
     62   INTEGER             ::   ji_off 
     63   INTEGER             ::   jj_off 
    6464 
    6565   INTEGER , PARAMETER ::   jpfld   = 13   ! maximum number of files to read  
     
    158158      IF(lwp) WRITE(numout,*)'cice_sbc_init' 
    159159 
     160      ji_off = INT ( (jpiglo - nx_global) / 2 ) 
     161      jj_off = INT ( (jpjglo - ny_global) / 2 ) 
     162 
    160163! Initialize CICE 
    161164      CALL CICE_Initialize 
     
    220223         sshb(:,:) = sshb(:,:) - snwice_mass(:,:) * r1_rau0 
    221224         ! 
    222          ! Note: Changed the initial values of sshb and sshn=>  need to recompute ssh[u,v,f]_[b,n]  
    223          !       which were previously set in domvvl 
    224          IF ( lk_vvl ) THEN            ! Is this necessary? embd 2 should be restricted to vvl only??? 
    225             DO jj = 1, jpjm1 
    226                DO ji = 1, jpim1                    ! caution: use of Vector Opt. not possible 
    227                   zcoefu = 0.5  * umask(ji,jj,1) / ( e1u(ji,jj) * e2u(ji,jj) ) 
    228                   zcoefv = 0.5  * vmask(ji,jj,1) / ( e1v(ji,jj) * e2v(ji,jj) ) 
    229                   zcoeff = 0.25 * umask(ji,jj,1) * umask(ji,jj+1,1) 
    230                   sshu_b(ji,jj) = zcoefu * ( e1t(ji  ,jj) * e2t(ji  ,jj) * sshb(ji  ,jj)     & 
    231                      &                     + e1t(ji+1,jj) * e2t(ji+1,jj) * sshb(ji+1,jj) ) 
    232                   sshv_b(ji,jj) = zcoefv * ( e1t(ji,jj  ) * e2t(ji,jj  ) * sshb(ji,jj  )     & 
    233                      &                     + e1t(ji,jj+1) * e2t(ji,jj+1) * sshb(ji,jj+1) ) 
    234                   sshu_n(ji,jj) = zcoefu * ( e1t(ji  ,jj) * e2t(ji  ,jj) * sshn(ji  ,jj)     & 
    235                      &                     + e1t(ji+1,jj) * e2t(ji+1,jj) * sshn(ji+1,jj) ) 
    236                   sshv_n(ji,jj) = zcoefv * ( e1t(ji,jj  ) * e2t(ji,jj  ) * sshn(ji,jj  )     & 
    237                      &                     + e1t(ji,jj+1) * e2t(ji,jj+1) * sshn(ji,jj+1) ) 
    238                END DO 
    239             END DO 
    240             CALL lbc_lnk( sshu_b, 'U', 1. )   ;   CALL lbc_lnk( sshu_n, 'U', 1. ) 
    241             CALL lbc_lnk( sshv_b, 'V', 1. )   ;   CALL lbc_lnk( sshv_n, 'V', 1. ) 
    242             DO jj = 1, jpjm1 
    243                DO ji = 1, jpim1      ! NO Vector Opt. 
    244                   sshf_n(ji,jj) = 0.5  * umask(ji,jj,1) * umask(ji,jj+1,1)                   & 
    245                        &               / ( e1f(ji,jj  ) * e2f(ji,jj  ) )                     & 
    246                        &               * ( e1u(ji,jj  ) * e2u(ji,jj  ) * sshu_n(ji,jj  )     & 
    247                        &                 + e1u(ji,jj+1) * e2u(ji,jj+1) * sshu_n(ji,jj+1) ) 
    248                END DO 
    249             END DO 
    250             CALL lbc_lnk( sshf_n, 'F', 1. ) 
    251           ENDIF 
    252225      ENDIF 
    253226  
     
    747720         READ  ( numnam_cfg, namsbc_cice, IOSTAT = ios, ERR = 902 ) 
    748721902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_cice in configuration namelist', lwp ) 
    749          WRITE ( numond, namsbc_cice ) 
     722         IF(lwm) WRITE ( numond, namsbc_cice ) 
    750723 
    751724         ! store namelist information in an array 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/SBC/sbcice_if.F90

    r4896 r4897  
    7878         READ  ( numnam_cfg, namsbc_iif, IOSTAT = ios, ERR = 902 ) 
    7979902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_iif in configuration namelist', lwp ) 
    80          WRITE ( numond, namsbc_iif ) 
     80         IF(lwm) WRITE ( numond, namsbc_iif ) 
    8181 
    8282         ALLOCATE( sf_ice(1), STAT=ierror ) 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/SBC/sbcice_lim_2.F90

    r4896 r4897  
    222222#endif 
    223223 
    224          IF( ( MOD( kt+nn_fsbc-1, ninfo ) == 0 .OR. ntmoy == 1 ) .AND. .NOT. lk_mpp )   & 
     224         IF(  .NOT. lk_mpp )THEN 
     225            IF( MOD( kt+nn_fsbc-1, ninfo ) == 0 .OR. ntmoy == 1 )   & 
    225226            &              CALL lim_dia_2      ( kt )      ! Ice Diagnostics 
     227         ENDIF 
    226228# if ! defined key_iomput 
    227229                           CALL lim_wri_2      ( kt )      ! Ice outputs 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/SBC/sbcmod.F90

    r4607 r4897  
    101101      READ  ( numnam_cfg, namsbc, IOSTAT = ios, ERR = 902 ) 
    102102902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc in configuration namelist', lwp ) 
    103       WRITE ( numond, namsbc ) 
     103      IF(lwm) WRITE ( numond, namsbc ) 
    104104 
    105105      !                          ! overwrite namelist parameter using CPP key information 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/SBC/sbcrnf.F90

    r4368 r4897  
    263263      READ  ( numnam_cfg, namsbc_rnf, IOSTAT = ios, ERR = 902 ) 
    264264902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_rnf in configuration namelist', lwp ) 
    265       WRITE ( numond, namsbc_rnf ) 
     265      IF(lwm) WRITE ( numond, namsbc_rnf ) 
    266266      ! 
    267267      !                                         ! Control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/SBC/sbcssr.F90

    r4896 r4897  
    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       WRITE ( numond, namsbc_ssr ) 
     177      IF(lwm) WRITE ( numond, namsbc_ssr ) 
    178178 
    179179      IF(lwp) THEN                 !* control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/SBC/sbcwave.F90

    r4292 r4897  
    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          WRITE ( numond, namsbc_wave ) 
     92         IF(lwm) WRITE ( numond, namsbc_wave ) 
    9393         ! 
    9494 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/SBC/tideini.F90

    r4292 r4897  
    7272       READ  ( numnam_cfg, nam_tide, IOSTAT = ios, ERR = 902 ) 
    7373902    IF( ios /= 0 ) CALL ctl_nam ( ios , 'nam_tide in configuration namelist', lwp ) 
    74        WRITE ( numond, nam_tide ) 
     74       IF(lwm) WRITE ( numond, nam_tide ) 
    7575       ! 
    7676       nb_harmo=0 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/SOL/solver.F90

    r4147 r4897  
    7070      READ  ( numnam_cfg, namsol, IOSTAT = ios, ERR = 902 ) 
    7171902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsol in configuration namelist', lwp ) 
    72       WRITE ( numond, namsol ) 
     72      IF(lwm) WRITE ( numond, namsol ) 
    7373 
    7474      IF(lwp) THEN                  !* Control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/TRA/traadv.F90

    r4292 r4897  
    176176      READ  ( numnam_cfg, namtra_adv, IOSTAT = ios, ERR = 902 ) 
    177177902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtra_adv in configuration namelist', lwp ) 
    178       WRITE ( numond, namtra_adv ) 
     178      IF(lwm) WRITE ( numond, namtra_adv ) 
    179179 
    180180      IF(lwp) THEN                    ! Namelist print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/TRA/traadv_mle.F90

    r4325 r4897  
    285285      READ  ( numnam_cfg, namtra_adv_mle, IOSTAT = ios, ERR = 902 ) 
    286286902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtra_adv_mle in configuration namelist', lwp ) 
    287       WRITE ( numond, namtra_adv_mle ) 
     287      IF(lwm) WRITE ( numond, namtra_adv_mle ) 
    288288 
    289289      IF(lwp) THEN                     ! Namelist print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/TRA/trabbc.F90

    r4896 r4897  
    136136      READ  ( numnam_cfg, nambbc, IOSTAT = ios, ERR = 902 ) 
    137137902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambbc in configuration namelist', lwp ) 
    138       WRITE ( numond, nambbc ) 
     138      IF(lwm) WRITE ( numond, nambbc ) 
    139139 
    140140      IF(lwp) THEN                     ! Control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/TRA/trabbl.F90

    r4896 r4897  
    515515      READ  ( numnam_cfg, nambbl, IOSTAT = ios, ERR = 902 ) 
    516516902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambbl in configuration namelist', lwp ) 
    517       WRITE ( numond, nambbl ) 
     517      IF(lwm) WRITE ( numond, nambbl ) 
    518518      ! 
    519519      l_bbl = .TRUE.                 !* flag to compute bbl coef and transport 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/TRA/tradmp.F90

    r4896 r4897  
    209209      READ  ( numnam_cfg, namtra_dmp, IOSTAT = ios, ERR = 902 ) 
    210210902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtra_dmp in configuration namelist', lwp ) 
    211       WRITE ( numond, namtra_dmp ) 
     211      IF(lwm) WRITE ( numond, namtra_dmp ) 
    212212       
    213213      IF( lzoom .AND. .NOT. lk_c1d )   nn_zdmp = 0          ! restoring to climatology at closed north or south boundaries 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/TRA/traqsr.F90

    r4896 r4897  
    397397      READ  ( numnam_cfg, namtra_qsr, IOSTAT = ios, ERR = 902 ) 
    398398902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtra_qsr in configuration namelist', lwp ) 
    399       WRITE ( numond, namtra_qsr ) 
     399      IF(lwm) WRITE ( numond, namtra_qsr ) 
    400400      ! 
    401401      IF(lwp) THEN                ! control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfbfr.F90

    r4896 r4897  
    186186      READ  ( numnam_cfg, nambfr, IOSTAT = ios, ERR = 902 ) 
    187187902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambfr in configuration namelist', lwp ) 
    188       WRITE ( numond, nambfr ) 
     188      IF(lwm) WRITE ( numond, nambfr ) 
    189189      IF(lwp) WRITE(numout,*) 
    190190      IF(lwp) WRITE(numout,*) 'zdf_bfr_init : momentum bottom friction' 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfddm.F90

    r4896 r4897  
    239239      READ  ( numnam_cfg, namzdf_ddm, IOSTAT = ios, ERR = 902 ) 
    240240902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_ddm in configuration namelist', lwp ) 
    241       WRITE ( numond, namzdf_ddm ) 
     241      IF(lwm) WRITE ( numond, namzdf_ddm ) 
    242242      ! 
    243243      IF(lwp) THEN                    ! Parameter print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfgls.F90

    r4147 r4897  
    948948      READ  ( numnam_cfg, namzdf_gls, IOSTAT = ios, ERR = 902 ) 
    949949902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_gls in configuration namelist', lwp ) 
    950       WRITE ( numond, namzdf_gls ) 
     950      IF(lwm) WRITE ( numond, namzdf_gls ) 
    951951 
    952952      IF(lwp) THEN                     !* Control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfini.F90

    r4292 r4897  
    6464      READ  ( numnam_cfg, namzdf, IOSTAT = ios, ERR = 902 ) 
    6565902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf in configuration namelist', lwp ) 
    66       WRITE ( numond, namzdf ) 
     66      IF(lwm) WRITE ( numond, namzdf ) 
    6767 
    6868      IF(lwp) THEN               !* Parameter print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfkpp.F90

    r4896 r4897  
    13691369      READ  ( numnam_cfg, namzdf_kpp, IOSTAT = ios, ERR = 902 ) 
    13701370902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_kpp in configuration namelist', lwp ) 
    1371       WRITE ( numond, namzdf_kpp ) 
     1371      IF(lwm) WRITE ( numond, namzdf_kpp ) 
    13721372 
    13731373      IF(lwp) THEN                    ! Control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfric.F90

    r4147 r4897  
    260260      READ  ( numnam_cfg, namzdf_ric, IOSTAT = ios, ERR = 902 ) 
    261261902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_ric in configuration namelist', lwp ) 
    262       WRITE ( numond, namzdf_ric ) 
     262      IF(lwm) WRITE ( numond, namzdf_ric ) 
    263263      ! 
    264264      IF(lwp) THEN                   ! Control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/ZDF/zdftke.F90

    r4896 r4897  
    699699      READ  ( numnam_cfg, namzdf_tke, IOSTAT = ios, ERR = 902 ) 
    700700902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_tke in configuration namelist', lwp ) 
    701       WRITE ( numond, namzdf_tke ) 
     701      IF(lwm) WRITE ( numond, namzdf_tke ) 
    702702      ! 
    703703      ri_cri   = 2._wp    / ( 2._wp + rn_ediss / rn_ediff )   ! resulting critical Richardson number 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/ZDF/zdftmx.F90

    r4147 r4897  
    377377      READ  ( numnam_cfg, namzdf_tmx, IOSTAT = ios, ERR = 902 ) 
    378378902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_tmx in configuration namelist', lwp ) 
    379       WRITE ( numond, namzdf_tmx ) 
     379      IF(lwm) WRITE ( numond, namzdf_tmx ) 
    380380 
    381381      IF(lwp) THEN                   ! Control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/nemogcm.F90

    r4896 r4897  
    8686   USE sbctide, ONLY: lk_tide 
    8787   USE crsini          ! initialise grid coarsening utility 
    88    USE lbcnfd, ONLY: isendto, nsndto ! Setup of north fold exchanges  
     88   USE lbcnfd, ONLY: isendto, nsndto, nfsloop, nfeloop ! Setup of north fold exchanges  
    8989 
    9090   IMPLICIT NONE 
     
    236236      CALL ctl_opn( numnam_ref, 'namelist_ref', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, 6, .FALSE. ) 
    237237      CALL ctl_opn( numnam_cfg, 'namelist_cfg', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, 6, .FALSE. ) 
    238       CALL ctl_opn( numond, 'output.namelist.dyn', 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', -1, 6, .FALSE. , 1 ) 
    239238      ! 
    240239      REWIND( numnam_ref )              ! Namelist namctl in reference namelist : Control prints & Benchmark 
     
    245244      READ  ( numnam_cfg, namctl, IOSTAT = ios, ERR = 902 ) 
    246245902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namctl in configuration namelist', .TRUE. ) 
    247       WRITE( numond, namctl ) 
    248246 
    249247      ! 
     
    255253      READ  ( numnam_cfg, namcfg, IOSTAT = ios, ERR = 904 ) 
    256254904   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namcfg in configuration namelist', .TRUE. )    
    257       WRITE( numond, namcfg ) 
    258255 
    259256! Force values for AGRIF zoom (cf. agrif_user.F90) 
     
    275272      !                             !--------------------------------------------! 
    276273      !                             !  set communicator & select the local node  ! 
     274      !                             !  NB: mynode also opens output.namelist.dyn ! 
     275      !                             !      on unit number numond on first proc   ! 
    277276      !                             !--------------------------------------------! 
    278277#if defined key_iomput 
     
    299298      narea = narea + 1                                     ! mynode return the rank of proc (0 --> jpnij -1 ) 
    300299 
     300      lwm = (narea == 1)                                    ! control of output namelists 
    301301      lwp = (narea == 1) .OR. ln_ctl                        ! control of all listing output print 
     302 
     303      IF(lwm) THEN 
     304         ! write merged namelists from earlier to output namelist now that the 
     305         ! file has been opened in call to mynode. nammpp has already been 
     306         ! written in mynode (if lk_mpp_mpi) 
     307         WRITE( numond, namctl ) 
     308         WRITE( numond, namcfg ) 
     309      ENDIF 
    302310 
    303311      ! If dimensions of processor grid weren't specified in the namelist file 
     
    578586      IF( numnam_ref      /= -1 )   CLOSE( numnam_ref      )   ! oce reference namelist 
    579587      IF( numnam_cfg      /= -1 )   CLOSE( numnam_cfg      )   ! oce configuration namelist 
    580       IF( numond          /= -1 )   CLOSE( numond          )   ! oce output namelist 
     588      IF( lwm.AND.numond  /= -1 )   CLOSE( numond          )   ! oce output namelist 
    581589      IF( numnam_ice_ref  /= -1 )   CLOSE( numnam_ice_ref  )   ! ice reference namelist 
    582590      IF( numnam_ice_cfg  /= -1 )   CLOSE( numnam_ice_cfg  )   ! ice configuration namelist 
    583       IF( numoni          /= -1 )   CLOSE( numoni          )   ! ice output namelist 
     591      IF( lwm.AND.numoni  /= -1 )   CLOSE( numoni          )   ! ice output namelist 
    584592      IF( numevo_ice      /= -1 )   CLOSE( numevo_ice      )   ! ice variables (temp. evolution) 
    585593      IF( numout          /=  6 )   CLOSE( numout          )   ! standard model output file 
     
    788796          !loop over the other north-fold processes to find the processes 
    789797          !managing the points belonging to the sxT-dxT range 
    790           DO jn = jpnij - jpni +1, jpnij 
    791              IF ( njmppt(jn) == njmppmax ) THEN 
     798   
     799          DO jn = 1, jpni 
    792800                !sxT is the first point (in the global domain) of the jn 
    793801                !process 
    794                 sxT = nimppt(jn) 
     802                sxT = nfiimpp(jn, jpnj) 
    795803                !dxT is the last point (in the global domain) of the jn 
    796804                !process 
    797                 dxT = nimppt(jn) + nlcit(jn) - 1 
     805                dxT = nfiimpp(jn, jpnj) + nfilcit(jn, jpnj) - 1 
    798806                IF ((sxM .gt. sxT) .AND. (sxM .lt. dxT)) THEN 
    799807                   nsndto = nsndto + 1 
    800                    isendto(nsndto) = jn 
    801                 ELSEIF ((sxM .le. sxT) .AND. (dxM .gt. dxT)) THEN 
     808                     isendto(nsndto) = jn 
     809                ELSEIF ((sxM .le. sxT) .AND. (dxM .ge. dxT)) THEN 
    802810                   nsndto = nsndto + 1 
    803                    isendto(nsndto) = jn 
     811                     isendto(nsndto) = jn 
    804812                ELSEIF ((dxM .lt. dxT) .AND. (sxT .lt. dxM)) THEN 
    805813                   nsndto = nsndto + 1 
    806                    isendto(nsndto) = jn 
     814                     isendto(nsndto) = jn 
    807815                END IF 
    808              END IF 
    809816          END DO 
     817          nfsloop = 1 
     818          nfeloop = nlci 
     819          DO jn = 2,jpni-1 
     820           IF(nfipproc(jn,jpnj) .eq. (narea - 1)) THEN 
     821              IF (nfipproc(jn - 1 ,jpnj) .eq. -1) THEN 
     822                 nfsloop = nldi 
     823              ENDIF 
     824              IF (nfipproc(jn + 1,jpnj) .eq. -1) THEN 
     825                 nfeloop = nlei 
     826              ENDIF 
     827           ENDIF 
     828        END DO 
     829 
    810830      ENDIF 
    811831      l_north_nogather = .TRUE. 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/step.F90

    r4896 r4897  
    317317      ENDIF 
    318318      IF( kstp == nit000   )   THEN 
    319          CALL iom_close( numror )     ! close input  ocean restart file 
    320          CALL FLUSH    ( numond )     ! flush output namelist oce 
    321          CALL FLUSH    ( numoni )     ! flush output namelist ice     
     319                 CALL iom_close( numror )     ! close input  ocean restart file 
     320         IF(lwm) CALL FLUSH    ( numond )     ! flush output namelist oce 
     321         IF(lwm) CALL FLUSH    ( numoni )     ! flush output namelist ice     
    322322      ENDIF 
    323323      IF( lrst_oce         )   CALL rst_write    ( kstp )   ! write output ocean restart file 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/OPA_SRC/trc_oce.F90

    r3770 r4897  
    267267      !!---------------------------------------------------------------------- 
    268268      ! 
    269       ! It is not necessary to compute anything bellow the following depth 
     269      ! It is not necessary to compute anything below the following depth 
    270270      zhext = prldex * ( LOG(10._wp) * zprec + LOG(pqsr_frc) ) 
    271271      ! 
     
    273273      pjl = jpkm1 
    274274      DO jk = jpkm1, 1, -1 
    275          zem = MAXVAL( fsdepw(:,:,jk+1) * tmask(:,:,jk) ) 
    276          IF( zem >= zhext )   pjl = jk                       ! last T-level reached by Qsr 
     275         IF(SUM(tmask(:,:,jk)) > 0 ) THEN 
     276            zem = MAXVAL( fsdepw(:,:,jk+1) * tmask(:,:,jk) ) 
     277            IF( zem >= zhext )   pjl = jk                       ! last T-level reached by Qsr 
     278         ELSE 
     279            pjl = jk                                            ! or regional sea-bed depth  
     280         ENDIF 
    277281      END DO 
    278282      ! 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/SAS_SRC/nemogcm.F90

    r4319 r4897  
    168168      CALL ctl_opn( numnam_ref, 'namelist_ref', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, 6, .FALSE. ) 
    169169      CALL ctl_opn( numnam_cfg, 'namelist_cfg', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, 6, .FALSE. ) 
    170       CALL ctl_opn( numond, 'output.namelist.dyn', 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', -1, 6, .FALSE. , 1 ) 
    171170      ! 
    172171      REWIND( numnam_ref )              ! Namelist namctl in reference namelist : Control prints & Benchmark 
     
    177176      READ  ( numnam_cfg, namctl, IOSTAT = ios, ERR = 902 ) 
    178177902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namctl in configuration namelist', .TRUE. ) 
    179       WRITE( numond, namctl ) 
    180178 
    181179      ! 
     
    187185      READ  ( numnam_cfg, namcfg, IOSTAT = ios, ERR = 904 ) 
    188186904   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namcfg in configuration namelist', .TRUE. )    
    189       WRITE( numond, namcfg ) 
    190187 
    191188      !                             !--------------------------------------------! 
    192189      !                             !  set communicator & select the local node  ! 
     190      !                             !  NB: mynode also opens output.namelist.dyn ! 
     191      !                             !      on unit number numond on first proc   ! 
    193192      !                             !--------------------------------------------! 
    194193#if defined key_iomput 
     
    203202      narea = narea + 1                                     ! mynode return the rank of proc (0 --> jpnij -1 ) 
    204203 
     204      lwm = (narea == 1)                                    ! control of output namelists 
    205205      lwp = (narea == 1) .OR. ln_ctl                        ! control of all listing output print 
     206 
     207      IF(lwm) THEN 
     208         ! write merged namelists from earlier to output namelist now that the 
     209         ! file has been opened in call to mynode. nammpp has already been 
     210         ! written in mynode (if lk_mpp_mpi) 
     211         WRITE( numond, namctl ) 
     212         WRITE( numond, namcfg ) 
     213      ENDIF 
    206214 
    207215      ! If dimensions of processor grid weren't specified in the namelist file  
     
    405413      IF( numnam_ref      /= -1 )   CLOSE( numnam_ref      )   ! oce reference namelist 
    406414      IF( numnam_cfg      /= -1 )   CLOSE( numnam_cfg      )   ! oce configuration namelist 
    407       IF( numond          /= -1 )   CLOSE( numond          )   ! oce output namelist 
     415      IF( lwm.AND.numond  /= -1 )   CLOSE( numond          )   ! oce output namelist 
    408416      IF( numnam_ice_ref  /= -1 )   CLOSE( numnam_ice_ref  )   ! ice reference namelist 
    409417      IF( numnam_ice_cfg  /= -1 )   CLOSE( numnam_ice_cfg  )   ! ice configuration namelist 
    410       IF( numoni          /= -1 )   CLOSE( numoni          )   ! ice output namelist 
     418      IF( lwm.AND.numoni  /= -1 )   CLOSE( numoni          )   ! ice output namelist 
    411419      IF( numevo_ice      /= -1 )   CLOSE( numevo_ice  )   ! ice variables (temp. evolution) 
    412420      IF( numout          /=  6 )   CLOSE( numout      )   ! standard model output file 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/SAS_SRC/sbcssm.F90

    r4186 r4897  
    150150      READ  ( numnam_cfg, namsbc_sas, IOSTAT = ios, ERR = 902 ) 
    151151902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_sas in configuration namelist', lwp ) 
    152       WRITE ( numond, namsbc_sas ) 
     152      IF(lwm) WRITE ( numond, namsbc_sas ) 
    153153 
    154154      !                                         ! store namelist information in an array 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/TOP_SRC/C14b/trcnam_c14b.F90

    r4319 r4897  
    5858      CALL ctl_opn( numnatb_ref, 'namelist_c14b_ref'  ,     'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) 
    5959      CALL ctl_opn( numnatb_cfg, 'namelist_c14b_cfg'  ,     'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. )    
    60       CALL ctl_opn( numonb     , 'output.namelist.c14', 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. )      
     60      IF(lwm) CALL ctl_opn( numonb, 'output.namelist.c14', 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. )      
    6161      REWIND( numnatb_ref )              ! Namelist namc14date in reference namelist : c14b parameters 
    6262      READ  ( numnatb_ref, namc14date, IOSTAT = ios, ERR = 901) 
     
    6666      READ  ( numnatb_cfg, namc14date, IOSTAT = ios, ERR = 902 ) 
    6767902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namc14date in configuration namelist', lwp ) 
    68       WRITE ( numonb, namc14date ) 
     68      IF(lwm) WRITE ( numonb, namc14date ) 
    6969      IF(lwp) THEN                  ! control print 
    7070         WRITE(numout,*) 
     
    8888         READ  ( numnatb_cfg, namc14dia, IOSTAT = ios, ERR = 904 ) 
    8989904      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namc14dia in configuration namelist', lwp ) 
    90          WRITE ( numonb, namc14dia ) 
     90         IF(lwm) WRITE ( numonb, namc14dia ) 
    9191 
    9292         DO jl = 1, jp_c14b_2d 
     
    124124      ENDIF 
    125125 
    126    CALL FLUSH ( numonb )     ! flush output namelist C14b 
     126   IF(lwm) CALL FLUSH ( numonb )     ! flush output namelist C14b 
    127127 
    128128   END SUBROUTINE trc_nam_c14b 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/TOP_SRC/CFC/trcnam_cfc.F90

    r4319 r4897  
    5555      CALL ctl_opn( numnatc_ref, 'namelist_cfc_ref'   ,     'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) 
    5656      CALL ctl_opn( numnatc_cfg, 'namelist_cfc_cfg'   ,     'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) 
    57       CALL ctl_opn( numonc     , 'output.namelist.cfc', 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) 
     57      IF(lwm) CALL ctl_opn( numonc, 'output.namelist.cfc', 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) 
    5858 
    5959      REWIND( numnatc_ref )              ! Namelist namcfcdate in reference namelist : CFC parameters 
     
    6464      READ  ( numnatc_cfg, namcfcdate, IOSTAT = ios, ERR = 902 ) 
    6565902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namcfcdate in configuration namelist', lwp ) 
    66       WRITE ( numonc, namcfcdate ) 
     66      IF(lwm) WRITE ( numonc, namcfcdate ) 
    6767 
    6868      IF(lwp) THEN                  ! control print 
     
    8888         READ  ( numnatc_cfg, namcfcdia, IOSTAT = ios, ERR = 904 ) 
    8989904      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namcfcdia in configuration namelist', lwp ) 
    90          WRITE ( numonc, namcfcdia ) 
     90         IF(lwm) WRITE ( numonc, namcfcdia ) 
    9191 
    9292         DO jl = 1, jp_cfc_2d 
     
    110110      ENDIF 
    111111 
    112    CALL FLUSH ( numonc )     ! flush output namelist CFC 
     112   IF(lwm) CALL FLUSH ( numonc )     ! flush output namelist CFC 
    113113 
    114114   END SUBROUTINE trc_nam_cfc 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/TOP_SRC/PISCES/P2Z/p2zbio.F90

    r4896 r4897  
    500500      READ  ( numnatp_cfg, namlobphy, IOSTAT = ios, ERR = 902 ) 
    501501902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namlobphy in configuration namelist', lwp ) 
    502       WRITE ( numonp, namlobphy ) 
     502      IF(lwm) WRITE ( numonp, namlobphy ) 
    503503 
    504504      IF(lwp) THEN 
     
    519519      READ  ( numnatp_cfg, namlobnut, IOSTAT = ios, ERR = 904 ) 
    520520904   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namlobnut in configuration namelist', lwp ) 
    521       WRITE ( numonp, namlobnut ) 
     521      IF(lwm) WRITE ( numonp, namlobnut ) 
    522522 
    523523      IF(lwp) THEN 
     
    537537      READ  ( numnatp_cfg, namlobzoo, IOSTAT = ios, ERR = 906 ) 
    538538906   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namlobzoo in configuration namelist', lwp ) 
    539       WRITE ( numonp, namlobzoo ) 
     539      IF(lwm) WRITE ( numonp, namlobzoo ) 
    540540 
    541541      IF(lwp) THEN 
     
    560560      READ  ( numnatp_cfg, namlobdet, IOSTAT = ios, ERR = 908 ) 
    561561908   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namlobdet in configuration namelist', lwp ) 
    562       WRITE ( numonp, namlobdet ) 
     562      IF(lwm) WRITE ( numonp, namlobdet ) 
    563563 
    564564      IF(lwp) THEN 
     
    576576      READ  ( numnatp_cfg, namlobdom, IOSTAT = ios, ERR = 910 ) 
    577577910   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namlobdom in configuration namelist', lwp ) 
    578       WRITE ( numonp, namlobdom ) 
     578      IF(lwm) WRITE ( numonp, namlobdom ) 
    579579 
    580580      IF(lwp) THEN 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/TOP_SRC/PISCES/P2Z/p2zopt.F90

    r4896 r4897  
    174174      READ  ( numnatp_cfg, namlobopt, IOSTAT = ios, ERR = 902 ) 
    175175902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namlobopt in configuration namelist', lwp ) 
    176       WRITE ( numonp, namlobopt ) 
     176      IF(lwm) WRITE ( numonp, namlobopt ) 
    177177 
    178178      IF(lwp) THEN 
     
    196196      READ  ( numnatp_cfg, namlobrat, IOSTAT = ios, ERR = 904 ) 
    197197904   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namlobrat in configuration namelist', lwp ) 
    198       WRITE ( numonp, namlobrat ) 
     198      IF(lwm) WRITE ( numonp, namlobrat ) 
    199199 
    200200      IF(lwp) THEN 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/TOP_SRC/PISCES/P2Z/p2zsed.F90

    r4896 r4897  
    161161      READ  ( numnatp_cfg, namlobsed, IOSTAT = ios, ERR = 902 ) 
    162162902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namlobsed in configuration namelist', lwp ) 
    163       WRITE ( numonp, namlobsed ) 
     163      IF(lwm) WRITE ( numonp, namlobsed ) 
    164164 
    165165      IF(lwp) THEN 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/TOP_SRC/PISCES/P2Z/p2zsms.F90

    r4896 r4897  
    6767      IF( lk_trdmxl_trc )  CALL trd_mxl_bio( kt )   ! trends: Mixed-layer 
    6868      ! 
    69       IF ( kt == nittrc000 ) CALL FLUSH    ( numonp )     ! flush output namelist PISCES 
     69      IF ( lwm .AND. kt == nittrc000 ) CALL FLUSH    ( numonp )     ! flush output namelist PISCES 
    7070      IF( nn_timing == 1 )  CALL timing_stop('p2z_sms') 
    7171      ! 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zfechem.F90

    r4529 r4897  
    351351      READ  ( numnatp_cfg, nampisfer, IOSTAT = ios, ERR = 902 ) 
    352352902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nampisfer in configuration namelist', lwp ) 
    353       WRITE ( numonp, nampisfer ) 
     353      IF(lwm) WRITE ( numonp, nampisfer ) 
    354354 
    355355      IF(lwp) THEN                         ! control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zflx.F90

    r4230 r4897  
    250250      READ  ( numnatp_cfg, nampisext, IOSTAT = ios, ERR = 902 ) 
    251251902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nampisext in configuration namelist', lwp ) 
    252       WRITE ( numonp, nampisext ) 
     252      IF(lwm) WRITE ( numonp, nampisext ) 
    253253      ! 
    254254      IF(lwp) THEN                         ! control print 
     
    326326         READ  ( numnatp_cfg, nampisatm, IOSTAT = ios, ERR = 902 ) 
    327327902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nampisatm in configuration namelist', lwp ) 
    328          WRITE ( numonp, nampisatm ) 
     328         IF(lwm) WRITE ( numonp, nampisatm ) 
    329329         ! 
    330330         ! 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zlim.F90

    r4529 r4897  
    228228      READ  ( numnatp_cfg, nampislim, IOSTAT = ios, ERR = 902 ) 
    229229902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nampislim in configuration namelist', lwp ) 
    230       WRITE ( numonp, nampislim ) 
     230      IF(lwm) WRITE ( numonp, nampislim ) 
    231231 
    232232      IF(lwp) THEN                         ! control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zlys.F90

    r4147 r4897  
    202202      READ  ( numnatp_cfg, nampiscal, IOSTAT = ios, ERR = 902 ) 
    203203902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nampiscal in configuration namelist', lwp ) 
    204       WRITE ( numonp, nampiscal ) 
     204      IF(lwm) WRITE ( numonp, nampiscal ) 
    205205 
    206206      IF(lwp) THEN                         ! control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zmeso.F90

    r4529 r4897  
    293293      READ  ( numnatp_cfg, nampismes, IOSTAT = ios, ERR = 902 ) 
    294294902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nampismes in configuration namelist', lwp ) 
    295       WRITE ( numonp, nampismes ) 
     295      IF(lwm) WRITE ( numonp, nampismes ) 
    296296 
    297297 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zmicro.F90

    r4529 r4897  
    235235      READ  ( numnatp_cfg, nampiszoo, IOSTAT = ios, ERR = 902 ) 
    236236902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nampiszoo in configuration namelist', lwp ) 
    237       WRITE ( numonp, nampiszoo ) 
     237      IF(lwm) WRITE ( numonp, nampiszoo ) 
    238238 
    239239      IF(lwp) THEN                         ! control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zmort.F90

    r4529 r4897  
    252252      READ  ( numnatp_cfg, nampismort, IOSTAT = ios, ERR = 902 ) 
    253253902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nampismort in configuration namelist', lwp ) 
    254       WRITE ( numonp, nampismort ) 
     254      IF(lwm) WRITE ( numonp, nampismort ) 
    255255 
    256256      IF(lwp) THEN                         ! control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zopt.F90

    r4896 r4897  
    338338      READ  ( numnatp_cfg, nampisopt, IOSTAT = ios, ERR = 902 ) 
    339339902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nampisopt in configuration namelist', lwp ) 
    340       WRITE ( numonp, nampisopt ) 
     340      IF(lwm) WRITE ( numonp, nampisopt ) 
    341341 
    342342      IF(lwp) THEN 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zprod.F90

    r4529 r4897  
    486486      READ  ( numnatp_cfg, nampisprod, IOSTAT = ios, ERR = 902 ) 
    487487902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nampisprod in configuration namelist', lwp ) 
    488       WRITE ( numonp, nampisprod ) 
     488      IF(lwm) WRITE ( numonp, nampisprod ) 
    489489 
    490490      IF(lwp) THEN                         ! control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zrem.F90

    r4147 r4897  
    358358      READ  ( numnatp_cfg, nampisrem, IOSTAT = ios, ERR = 902 ) 
    359359902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nampisrem in configuration namelist', lwp ) 
    360       WRITE ( numonp, nampisrem ) 
     360      IF(lwm) WRITE ( numonp, nampisrem ) 
    361361 
    362362      IF(lwp) THEN                         ! control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zsbc.F90

    r4564 r4897  
    218218      READ  ( numnatp_cfg, nampissbc, IOSTAT = ios, ERR = 902 ) 
    219219902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nampissbc in configuration namelist', lwp ) 
    220       WRITE ( numonp, nampissbc ) 
     220      IF(lwm) WRITE ( numonp, nampissbc ) 
    221221 
    222222      IF(lwp) THEN 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zsed.F90

    r4529 r4897  
    273273      ! ------------------------------------------------------ 
    274274#if ! defined key_sed 
    275       zrivsil =  1._wp - ( sumdepsi + rivdsiinput * r1_ryyss ) / zsumsedsi 
     275      zrivsil =  1._wp - ( sumdepsi + rivdsiinput * r1_ryyss ) / ( zsumsedsi + rtrn ) 
    276276#endif 
    277277 
     
    295295            zfactcal = MIN( excess(ji,jj,ikt), 0.2 ) 
    296296            zfactcal = MIN( 1., 1.3 * ( 0.2 - zfactcal ) / ( 0.4 - zfactcal ) ) 
    297             zrivalk  =  1._wp - ( rivalkinput * r1_ryyss ) * zfactcal / zsumsedcal  
     297            zrivalk  =  1._wp - ( rivalkinput * r1_ryyss ) * zfactcal / ( zsumsedcal + rtrn ) 
    298298            trn(ji,jj,ikt,jptal) =  trn(ji,jj,ikt,jptal) + zcaloss * zrivalk * 2.0 
    299299            trn(ji,jj,ikt,jpdic) =  trn(ji,jj,ikt,jpdic) + zcaloss * zrivalk 
     
    413413      ENDIF 
    414414      ! 
    415       CALL wrk_dealloc( jpi, jpj, zdenit2d, zwork1, zwork2, zwork3, zwork4 ) 
     415      CALL wrk_dealloc( jpi, jpj, zdenit2d, zwork1, zwork2, zwork3, zwork4, zbureff ) 
    416416      CALL wrk_dealloc( jpi, jpj, zwsbio3, zwsbio4, zwscal ) 
    417       CALL wrk_dealloc( jpi, jpj, jpk, znitrpot ) 
     417      CALL wrk_dealloc( jpi, jpj, jpk, znitrpot, zsoufer ) 
    418418      ! 
    419419      IF( nn_timing == 1 )  CALL timing_stop('p4z_sed') 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zsink.F90

    r4148 r4897  
    554554      READ  ( numnatp_cfg, nampiskrs, IOSTAT = ios, ERR = 902 ) 
    555555902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nampiskrs in configuration namelist', lwp ) 
    556       WRITE ( numonp, nampiskrs ) 
     556      IF(lwm) WRITE ( numonp, nampiskrs ) 
    557557 
    558558      IF(lwp) THEN 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zsms.F90

    r4896 r4897  
    153153      CALL p4z_chk_mass( kt ) ! Mass conservation checking 
    154154 
    155       IF ( kt == nittrc000 ) CALL FLUSH    ( numonp )     ! flush output namelist PISCES 
     155      IF ( lwm .AND. kt == nittrc000 ) CALL FLUSH    ( numonp )     ! flush output namelist PISCES 
    156156      IF( nn_timing == 1 )  CALL timing_stop('p4z_sms') 
    157157      ! 
     
    185185      READ  ( numnatp_cfg, nampisbio, IOSTAT = ios, ERR = 902 ) 
    186186902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nampisbio in configuration namelist', lwp ) 
    187       WRITE ( numonp, nampisbio ) 
     187      IF(lwm) WRITE ( numonp, nampisbio ) 
    188188 
    189189      IF(lwp) THEN                         ! control print 
     
    209209      READ  ( numnatp_cfg, nampiskrp, IOSTAT = ios, ERR = 904 ) 
    210210904   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nampiskrp in configuration namelist', lwp ) 
    211       WRITE ( numonp, nampiskrp ) 
     211      IF(lwm) WRITE ( numonp, nampiskrp ) 
    212212 
    213213      IF(lwp) THEN 
     
    235235      READ  ( numnatp_cfg, nampisdmp, IOSTAT = ios, ERR = 906 ) 
    236236906   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nampisdmp in configuration namelist', lwp ) 
    237       WRITE ( numonp, nampisdmp ) 
     237      IF(lwm) WRITE ( numonp, nampisdmp ) 
    238238 
    239239      IF(lwp) THEN                         ! control print 
     
    252252      READ  ( numnatp_cfg, nampismass, IOSTAT = ios, ERR = 908 ) 
    253253908   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nampismass in configuration namelist', lwp ) 
    254       WRITE ( numonp, nampismass ) 
     254      IF(lwm) WRITE ( numonp, nampismass ) 
    255255 
    256256      IF(lwp) THEN                         ! control print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/TOP_SRC/PISCES/trcnam_pisces.F90

    r4896 r4897  
    7272      CALL ctl_opn( numnatp_ref, TRIM( clname )//'_ref', 'OLD'    , 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) 
    7373      CALL ctl_opn( numnatp_cfg, TRIM( clname )//'_cfg', 'OLD'    , 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) 
    74       CALL ctl_opn( numonp     , 'output.namelist.pis' , 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) 
     74      IF(lwm) CALL ctl_opn( numonp     , 'output.namelist.pis' , 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) 
    7575      ! 
    7676      IF( .NOT.lk_iomput .AND. ln_diatrc ) THEN 
     
    8585         READ  ( numnatp_cfg, nampisdia, IOSTAT = ios, ERR = 902 ) 
    8686902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nampisdia in configuration namelist', lwp ) 
    87          WRITE ( numonp, nampisdia ) 
     87         IF(lwm) WRITE ( numonp, nampisdia ) 
    8888 
    8989         DO jl = 1, jp_pisces_2d 
     
    134134         READ  ( numnatp_cfg, nampisdbi, IOSTAT = ios, ERR = 904 ) 
    135135904      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nampisdbi in configuration namelist', lwp ) 
    136          WRITE ( numonp, nampisdbi ) 
     136         IF(lwm) WRITE ( numonp, nampisdbi ) 
    137137 
    138138         DO jl = 1, jp_pisces_trd 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/TOP_SRC/TRP/trcnam_trp.F90

    r4359 r4897  
    9797      READ  ( numnat_cfg, namtrc_adv, IOSTAT = ios, ERR = 902 ) 
    9898902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtrc_adv in configuration namelist', lwp ) 
    99       WRITE ( numont, namtrc_adv ) 
     99      IF(lwm) WRITE ( numont, namtrc_adv ) 
    100100 
    101101      IF(lwp) THEN                    ! Namelist print 
     
    119119      READ  ( numnat_cfg, namtrc_ldf, IOSTAT = ios, ERR = 904 ) 
    120120904   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtrc_ldf in configuration namelist', lwp ) 
    121       WRITE ( numont, namtrc_ldf ) 
     121      IF(lwm) WRITE ( numont, namtrc_ldf ) 
    122122 
    123123      IF(lwp) THEN                    ! Namelist print 
     
    144144      READ  ( numnat_cfg, namtrc_zdf, IOSTAT = ios, ERR = 906 ) 
    145145906   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtrc_zdf in configuration namelist', lwp ) 
    146       WRITE ( numont, namtrc_zdf ) 
     146      IF(lwm) WRITE ( numont, namtrc_zdf ) 
    147147 
    148148      IF(lwp) THEN                     !   ! Control print 
     
    161161      READ  ( numnat_cfg, namtrc_rad, IOSTAT = ios, ERR = 908 ) 
    162162908   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtrc_rad in configuration namelist', lwp ) 
    163       WRITE ( numont, namtrc_rad ) 
     163      IF(lwm) WRITE ( numont, namtrc_rad ) 
    164164 
    165165      IF(lwp) THEN                     !   ! Control print 
     
    177177      READ  ( numnat_cfg, namtrc_dmp, IOSTAT = ios, ERR = 910) 
    178178910   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtrc_dmp in configuration namelist', lwp ) 
    179       WRITE ( numont, namtrc_dmp ) 
     179      IF(lwm) WRITE ( numont, namtrc_dmp ) 
    180180 
    181181      IF(lwp) THEN                       ! Namelist print 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/TOP_SRC/trcbc.F90

    r4230 r4897  
    141141      READ  ( numnat_cfg, namtrc_bc, IOSTAT = ios, ERR = 902 ) 
    142142902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtrc_bc in configuration namelist', lwp ) 
    143       WRITE ( numont, namtrc_bc ) 
     143      IF(lwm) WRITE ( numont, namtrc_bc ) 
    144144 
    145145      ! print some information for each  
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/TOP_SRC/trcdta.F90

    r4489 r4897  
    102102      READ  ( numnat_cfg, namtrc_dta, IOSTAT = ios, ERR = 902 ) 
    103103902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtrc_dta in configuration namelist', lwp ) 
    104       WRITE ( numont, namtrc_dta ) 
     104      IF(lwm) WRITE ( numont, namtrc_dta ) 
    105105 
    106106      IF( lwp ) THEN 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/TOP_SRC/trcnam.F90

    r4896 r4897  
    128128         READ  ( numnat_cfg, namtrc_trd, IOSTAT = ios, ERR = 906 ) 
    129129906      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtrc_trd in configuration namelist', lwp ) 
    130          WRITE ( numont, namtrc_trd ) 
     130         IF(lwm) WRITE ( numont, namtrc_trd ) 
    131131 
    132132         IF(lwp) THEN 
     
    187187      CALL ctl_opn( numnat_ref, 'namelist_top_ref'   , 'OLD'    , 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) 
    188188      CALL ctl_opn( numnat_cfg, 'namelist_top_cfg'   , 'OLD'    , 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) 
    189       CALL ctl_opn( numont    , 'output.namelist.top', 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE., 1 ) 
     189      IF(lwm) CALL ctl_opn( numont, 'output.namelist.top', 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE., 1 ) 
    190190 
    191191      REWIND( numnat_ref )              ! Namelist namtrc in reference namelist : Passive tracer variables 
     
    196196      READ  ( numnat_cfg, namtrc_run, IOSTAT = ios, ERR = 902 ) 
    197197902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtrc in configuration namelist', lwp ) 
    198       WRITE ( numont, namtrc_run ) 
     198      IF(lwm) WRITE ( numont, namtrc_run ) 
    199199 
    200200      !  computes the first time step of tracer model 
     
    242242      READ  ( numnat_cfg, namtrc, IOSTAT = ios, ERR = 902 ) 
    243243902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtrc in configuration namelist', lwp ) 
    244       WRITE ( numont, namtrc ) 
     244      IF(lwm) WRITE ( numont, namtrc ) 
    245245 
    246246      DO jn = 1, jptra 
     
    291291      READ  ( numnat_cfg, namtrc_dia, IOSTAT = ios, ERR = 904 ) 
    292292904   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namtrc_dia in configuration namelist', lwp ) 
    293       WRITE ( numont, namtrc_dia ) 
     293      IF(lwm) WRITE ( numont, namtrc_dia ) 
    294294 
    295295      IF(lwp) THEN 
  • branches/2014/dev_CNRS_2014/NEMOGCM/NEMO/TOP_SRC/trcstp.F90

    r4896 r4897  
    9797         IF( kt == nittrc000 ) THEN 
    9898            CALL iom_close( numrtr )       ! close input tracer restart file 
    99             CALL FLUSH    ( numont )       ! flush namelist output 
     99            IF(lwm) CALL FLUSH( numont )   ! flush namelist output 
    100100         ENDIF 
    101101         IF( lrst_trc )            CALL trc_rst_wri  ( kt )       ! write tracer restart file 
Note: See TracChangeset for help on using the changeset viewer.