Index: /palm/trunk/SOURCE/advec_particles.f90
===================================================================
--- /palm/trunk/SOURCE/advec_particles.f90	(revision 558)
+++ /palm/trunk/SOURCE/advec_particles.f90	(revision 559)
@@ -3794,6 +3794,4 @@
 
     IMPLICIT NONE
-    
-    INTEGER :: rbs
 
     CHARACTER (LEN=10) ::  particle_binary_version
@@ -3816,19 +3814,17 @@
     ENDIF
 
-    DO rbs = 0, numprocs/binary_io_blocksize-1     
-       IF ( mod_numprocs_size == rbs ) THEN
-!
-!--       Write the version number of the binary format.
-!--       Attention: After changes to the following output commands the version
-!--       ---   number of the variable particle_binary_version must be changed!
+!
+!-- Write the version number of the binary format.
+!-- Attention: After changes to the following output commands the version
+!-- ---------  number of the variable particle_binary_version must be changed!
 !--            Also, the version number and the list of arrays to be read in
 !--            init_particles must be adjusted accordingly.
-          particle_binary_version = '3.0'
-          WRITE ( 90 )  particle_binary_version
-
-!
-!--       Write some particle parameters, the size of the particle arrays 
-!--       as well as other dvrp-plot variables.
-          WRITE ( 90 )  bc_par_b, bc_par_lr, bc_par_ns, bc_par_t,              &
+    particle_binary_version = '3.0'
+    WRITE ( 90 )  particle_binary_version
+
+!
+!-- Write some particle parameters, the size of the particle arrays as well as
+!-- other dvrp-plot variables.
+    WRITE ( 90 )  bc_par_b, bc_par_lr, bc_par_ns, bc_par_t,                    &
                   maximum_number_of_particles, maximum_number_of_tailpoints,   &
                   maximum_number_of_tails, number_of_initial_particles,        &
@@ -3837,17 +3833,12 @@
                   time_write_particle_data, uniform_particles
 
-          IF ( number_of_initial_particles /= 0 )    &
-	     WRITE ( 90 )  initial_particles
-
-          WRITE ( 90 )  prt_count, prt_start_index
-          WRITE ( 90 )  particles
-
-          IF ( use_particle_tails )  THEN
-             WRITE ( 90 )  particle_tail_coordinates
-          ENDIF
-	  
-       ENDIF  
-       CALL MPI_BARRIER(comm2d, ierr )    
-    ENDDO 
+    IF ( number_of_initial_particles /= 0 )  WRITE ( 90 )  initial_particles
+
+    WRITE ( 90 )  prt_count, prt_start_index
+    WRITE ( 90 )  particles
+
+    IF ( use_particle_tails )  THEN
+       WRITE ( 90 )  particle_tail_coordinates
+    ENDIF
 
     CLOSE ( 90 )
Index: /palm/trunk/SOURCE/data_output_2d.f90
===================================================================
--- /palm/trunk/SOURCE/data_output_2d.f90	(revision 558)
+++ /palm/trunk/SOURCE/data_output_2d.f90	(revision 559)
@@ -77,5 +77,5 @@
     CHARACTER (LEN=50) ::  rtext
     INTEGER ::  av, ngp, file_id, i, if, is, iis, j, k, l, layer_xy, n, psi, &
-                rbs, s, sender, &
+                s, sender, &
                 ind(4)
     LOGICAL ::  found, resorted, two_d
@@ -720,12 +720,7 @@
                          ENDIF
 #endif
-                         DO rbs = 0, numprocs/binary_io_blocksize-1       
-                            IF ( mod_numprocs_size == rbs ) THEN 
-                               WRITE ( 21 )  nxl-1, nxr+1, nys-1, nyn+1
-                               WRITE ( 21 )  local_2d
-                            ENDIF      
-                            CALL MPI_BARRIER(comm2d, ierr )
-                         ENDDO
-		      
+                         WRITE ( 21 )  nxl-1, nxr+1, nys-1, nyn+1
+                         WRITE ( 21 )  local_2d
+
                       ELSE
 !
@@ -1018,19 +1013,13 @@
                          ENDIF
 #endif
-                         DO rbs = 0, numprocs/binary_io_blocksize-1       
-                            IF ( mod_numprocs_size == rbs ) THEN 
-                               IF ( ( section(is,s) >= nys  .AND.            &
-                                      section(is,s) <= nyn )  .OR.           &
-                                    ( section(is,s) == -1  .AND.             &
-				      nys-1 == -1 ) )                        &
-                               THEN
-                                  WRITE (22)  nxl-1, nxr+1, nzb, nzt+1
-                                  WRITE (22)  local_2d
-                               ELSE
-                                  WRITE (22)  -1, -1, -1, -1
-                               ENDIF
-			    ENDIF      
-                            CALL MPI_BARRIER(comm2d, ierr )
-                         ENDDO
+                         IF ( ( section(is,s) >= nys  .AND.                  &
+                                section(is,s) <= nyn )  .OR.                 &
+                              ( section(is,s) == -1  .AND.  nys-1 == -1 ) )  &
+                         THEN
+                            WRITE (22)  nxl-1, nxr+1, nzb, nzt+1
+                            WRITE (22)  local_2d
+                         ELSE
+                            WRITE (22)  -1, -1, -1, -1
+                         ENDIF
 
                       ELSE
@@ -1323,19 +1312,13 @@
                          ENDIF
 #endif
-                         DO rbs = 0, numprocs/binary_io_blocksize-1       
-                            IF ( mod_numprocs_size == rbs ) THEN
-                               IF ( ( section(is,s) >= nxl  .AND.            &
-                                      section(is,s) <= nxr )  .OR.           &
-                                    ( section(is,s) == -1  .AND.             &
-				      nxl-1 == -1 ) )                        &
-                               THEN
-                                  WRITE (23)  nys-1, nyn+1, nzb, nzt+1
-                                  WRITE (23)  local_2d
-                               ELSE
-                                  WRITE (23)  -1, -1, -1, -1
-                               ENDIF
-			    ENDIF      
-                            CALL MPI_BARRIER(comm2d, ierr )
-                         ENDDO
+                         IF ( ( section(is,s) >= nxl  .AND.                  &
+                                section(is,s) <= nxr )  .OR.                 &
+                              ( section(is,s) == -1  .AND.  nxl-1 == -1 ) )  &
+                         THEN
+                            WRITE (23)  nys-1, nyn+1, nzb, nzt+1
+                            WRITE (23)  local_2d
+                         ELSE
+                            WRITE (23)  -1, -1, -1, -1
+                         ENDIF
 
                       ELSE
Index: /palm/trunk/SOURCE/data_output_3d.f90
===================================================================
--- /palm/trunk/SOURCE/data_output_3d.f90	(revision 558)
+++ /palm/trunk/SOURCE/data_output_3d.f90	(revision 559)
@@ -60,5 +60,5 @@
     CHARACTER (LEN=9) ::  simulated_time_mod
 
-    INTEGER           ::  av, i, if, j, k, n, pos, prec, psi, rbs
+    INTEGER           ::  av, i, if, j, k, n, pos, prec, psi
 
     LOGICAL           ::  found, resorted
@@ -382,12 +382,6 @@
 !--       Compression, output of compression information on FLD-file and output
 !--       of compressed data.
-          DO rbs = 0, numprocs/binary_io_blocksize-1     
-             IF ( mod_numprocs_size == rbs ) THEN
-                CALL write_compressed( local_pf, 30, 33, myid, nxl, nxr, &
-                                  nyn, nys, nzb, nz_do3d, prec )
-	     ENDIF
-             CALL MPI_BARRIER(comm2d, ierr )
-          ENDDO
-       		  
+          CALL write_compressed( local_pf, 30, 33, myid, nxl, nxr, nyn, nys, &
+                                 nzb, nz_do3d, prec )
        ELSE
 !
@@ -403,12 +397,7 @@
                    WRITE ( 30 )  simulated_time, do3d_time_count(av), av
                 ENDIF
-		DO rbs = 0, numprocs/binary_io_blocksize-1     
-                   IF ( mod_numprocs_size == rbs ) THEN
-                      WRITE ( 30 )  nxl-1, nxr+1, nys-1, nyn+1, nzb, nz_do3d
-                      WRITE ( 30 )  local_pf
-                   ENDIF
-                   CALL MPI_BARRIER(comm2d, ierr )
-                ENDDO
-		
+                WRITE ( 30 )  nxl-1, nxr+1, nys-1, nyn+1, nzb, nz_do3d
+                WRITE ( 30 )  local_pf
+
              ELSE
 !
Index: /palm/trunk/SOURCE/init_3d_model.f90
===================================================================
--- /palm/trunk/SOURCE/init_3d_model.f90	(revision 558)
+++ /palm/trunk/SOURCE/init_3d_model.f90	(revision 559)
@@ -113,5 +113,5 @@
     IMPLICIT NONE
 
-    INTEGER ::  i, ind_array(1), j, k, rbs, sr
+    INTEGER ::  i, ind_array(1), j, k, sr
 
     INTEGER, DIMENSION(:), ALLOCATABLE ::  ngp_2dh_l
@@ -969,12 +969,8 @@
 !--    some of the global variables from restart file
        IF ( TRIM( initializing_actions ) == 'cyclic_fill' )  THEN
+
           WRITE (9,*) 'before read_parts_of_var_list'
           CALL local_flush( 9 )
-          DO rbs = 0, numprocs/binary_io_blocksize-1     
-             IF ( mod_numprocs_size == rbs ) THEN 
-                CALL read_parts_of_var_list
-	     ENDIF
-             CALL MPI_BARRIER(comm2d, ierr )
-          ENDDO
+          CALL read_parts_of_var_list
           WRITE (9,*) 'after read_parts_of_var_list'
           CALL local_flush( 9 )
@@ -1060,14 +1056,9 @@
 !
 !--    Read binary data from restart file
-       WRITE (9,*) 'before read_3d_binary'
-       CALL local_flush( 9 )
-       DO rbs = 0, numprocs/binary_io_blocksize-1       
-          IF ( mod_numprocs_size == rbs ) THEN  
-             CALL read_3d_binary
-	  ENDIF      
-          CALL MPI_BARRIER(comm2d, ierr )
-       ENDDO  
-       WRITE (9,*) 'after read_3d_binary'
-       CALL local_flush( 9 )
+          WRITE (9,*) 'before read_3d_binary'
+          CALL local_flush( 9 )
+       CALL read_3d_binary
+          WRITE (9,*) 'after read_3d_binary'
+          CALL local_flush( 9 )
 
 !
@@ -1582,6 +1573,5 @@
 #endif
 
-    ngp_3d = INT ( ngp_2dh, KIND = SELECTED_INT_KIND( 18 ) ) * &
-             INT ( (nz + 2 ), KIND = SELECTED_INT_KIND( 18 ) )
+    ngp_3d = INT( ngp_2dh * ( nz + 2 ), KIND = SELECTED_INT_KIND( 18 ) )
 
 !
Index: /palm/trunk/SOURCE/init_grid.f90
===================================================================
--- /palm/trunk/SOURCE/init_grid.f90	(revision 558)
+++ /palm/trunk/SOURCE/init_grid.f90	(revision 559)
@@ -63,5 +63,5 @@
     INTEGER ::  bh, blx, bly, bxl, bxr, byn, bys, ch, cwx, cwy, cxl, cxr, cyn, &
                 cys, gls, i, inc, i_center, j, j_center, k, l, nxl_l, nxr_l, &
-                nyn_l, nys_l, nzb_si, nzt_l, rbs, vi
+                nyn_l, nys_l, nzb_si, nzt_l, vi
 
     INTEGER, DIMENSION(:), ALLOCATABLE   ::  vertical_influence
@@ -460,12 +460,7 @@
           OPEN( 90, FILE='TOPOGRAPHY_DATA', STATUS='OLD', FORM='FORMATTED',  &
                ERR=10 )
-	  DO rbs = 0, numprocs/binary_io_blocksize-1     
-             IF ( mod_numprocs_size == rbs ) THEN 
-                DO  j = ny, 0, -1
-                   READ( 90, *, ERR=11, END=11 )  ( topo_height(j,i), i = 0, nx )
-                ENDDO
-	     ENDIF  
-             CALL MPI_BARRIER(comm2d, ierr )      
-          ENDDO 
+          DO  j = ny, 0, -1
+             READ( 90, *, ERR=11, END=11 )  ( topo_height(j,i), i = 0, nx )
+          ENDDO
 !
 !--       Calculate the index height of the topography
Index: /palm/trunk/SOURCE/modules.f90
===================================================================
--- /palm/trunk/SOURCE/modules.f90	(revision 558)
+++ /palm/trunk/SOURCE/modules.f90	(revision 559)
@@ -398,6 +398,4 @@
                 vg_vertical_gradient_level_ind(10) = -9999, &
                 ws_vertical_gradient_level_ind(10) = -9999
-		
-    INTEGER :: binary_io_blocksize = -9999, mod_numprocs_size
 
     INTEGER, DIMENSION(:), ALLOCATABLE ::  grid_level_count
Index: /palm/trunk/SOURCE/palm.f90
===================================================================
--- /palm/trunk/SOURCE/palm.f90	(revision 558)
+++ /palm/trunk/SOURCE/palm.f90	(revision 559)
@@ -74,5 +74,5 @@
     CHARACTER (LEN=9) ::  time_to_string
     CHARACTER (LEN=1) ::  cdum
-    INTEGER           ::  i, rbs, run_description_header_i(80)
+    INTEGER           ::  i, run_description_header_i(80)
 
     version = 'PALM 3.7a'
@@ -174,12 +174,7 @@
 !-- If required, write binary data for restart runs
     IF ( write_binary(1:4) == 'true' )  THEN
-       DO rbs = 0, numprocs/binary_io_blocksize-1     
-          IF ( mod_numprocs_size == rbs ) THEN
-!
-!--          Write flow field data
-             CALL write_3d_binary	     
-	  ENDIF
-          CALL MPI_BARRIER(comm2d, ierr )
-       ENDDO   	     
+!
+!--    Write flow field data
+       CALL write_3d_binary
 !
 !--    If required, write particle data
Index: /palm/trunk/SOURCE/parin.f90
===================================================================
--- /palm/trunk/SOURCE/parin.f90	(revision 558)
+++ /palm/trunk/SOURCE/parin.f90	(revision 559)
@@ -98,5 +98,5 @@
     IMPLICIT NONE
 
-    INTEGER ::  idum, mod_blocksize, rbs
+    INTEGER ::  idum
 
 
@@ -104,5 +104,4 @@
                        bc_ns, bc_p_b, bc_p_t, bc_pt_b, bc_pt_t, bc_q_b, &
              bc_q_t,bc_s_b, bc_s_t, bc_sa_t, bc_uv_b, bc_uv_t, &
-	     binary_io_blocksize, &
              bottom_salinityflux, building_height, building_length_x, &
              building_length_y, building_wall_left, building_wall_south, &
@@ -209,29 +208,11 @@
  11 message_string = 'no \$inipar-namelist found'
     CALL message( 'parin', 'PA0272', 1, 2, 0, 6, 0 )
-    
-!
-!-- Check blocksize of binary IO
-12  mod_blocksize = MODULO(numprocs,binary_io_blocksize)
-    IF ( mod_blocksize /= 0 ) THEN
-       WRITE( message_string, * ) 'illegal value for binary_io_blocksize: & 
-                                  ', binary_io_blocksize, &
-            	                  ' - no binary IO block by block'  
-       CALL message( 'check_parameters', 'PA0325', 0, 1, 0, 6, 0) 
-       binary_io_blocksize = numprocs
-    ENDIF
-    mod_numprocs_size = MOD(myid,numprocs/binary_io_blocksize)
-    
+
 !
 !-- If required, read control parameters from restart file (produced by
 !-- a prior run). All PEs are reading from file created by PE0 (see check_open)
-    IF ( TRIM( initializing_actions ) == 'read_restart_data' )  THEN
-    
-       DO rbs = 0, numprocs/binary_io_blocksize-1 
-          IF ( mod_numprocs_size == rbs ) THEN
-             CALL read_var_list
-	  ENDIF  
-          CALL MPI_BARRIER(comm2d, ierr )    
-       ENDDO
-       
+ 12 IF ( TRIM( initializing_actions ) == 'read_restart_data' )  THEN
+
+       CALL read_var_list
 !
 !--    The restart file will be reopened when reading the subdomain data
Index: /palm/trunk/SOURCE/user_check_data_output_pr.f90
===================================================================
--- /palm/trunk/SOURCE/user_check_data_output_pr.f90	(revision 558)
+++ /palm/trunk/SOURCE/user_check_data_output_pr.f90	(revision 559)
@@ -55,13 +55,4 @@
 !                                            ! defined (use zu or zw)
 
-       CASE ( 'u*v*' )                      ! quantity string as given in
-                                            ! data_output_pr_user
-          index = pr_palm + 1
-          dopr_index(var_count)  = index    ! quantities' user-profile-number
-          dopr_unit(var_count)   = 'm2/s2'  ! quantity unit
-          hom(:,2,index,:)       = SPREAD( zu, 2, statistic_regions+1 )
-                                            ! grid on which the quantity is
-                                            ! defined (use zu or zw)
-					    
        CASE DEFAULT
           unit = 'illegal'
Index: /palm/trunk/SOURCE/user_last_actions.f90
===================================================================
--- /palm/trunk/SOURCE/user_last_actions.f90	(revision 558)
+++ /palm/trunk/SOURCE/user_last_actions.f90	(revision 559)
@@ -22,10 +22,7 @@
 
     USE control_parameters
-    USE pegrid
     USE user
 
     IMPLICIT NONE
-    
-    INTEGER :: rbs
 
 !
@@ -33,16 +30,9 @@
 !-- Sample for user-defined output:
     IF ( write_binary(1:4) == 'true' )  THEN
-       DO rbs = 0, numprocs/binary_io_blocksize-1       
-          IF ( mod_numprocs_size == rbs ) THEN 
-	  
-!            IF ( ALLOCATED( u2_av ) )  THEN
-!               WRITE ( 14 )  'u2_av               ';  WRITE ( 14 )  u2_av
-!            ENDIF
+!       IF ( ALLOCATED( u2_av ) )  THEN
+!          WRITE ( 14 )  'u2_av               ';  WRITE ( 14 )  u2_av
+!       ENDIF
 
-             WRITE ( 14 )  '*** end user ***    '
-       
-          ENDIF      
-          CALL MPI_BARRIER(comm2d, ierr )
-       ENDDO
+       WRITE ( 14 )  '*** end user ***    '
 
     ENDIF
