Index: palm/trunk/SOURCE/gust_mod.f90
===================================================================
--- palm/trunk/SOURCE/gust_mod.f90	(revision 3639)
+++ palm/trunk/SOURCE/gust_mod.f90	(revision 3641)
@@ -393,23 +393,25 @@
 !> Subroutine defining 2D output variables
 !------------------------------------------------------------------------------!
-    SUBROUTINE gust_data_output_2d( av, variable, found, grid, local_pf,       &
-                                    two_d, nzb_do, nzt_do )
-
-
-       IMPLICIT NONE
-
-       CHARACTER (LEN=*) ::  grid     !<
-       CHARACTER (LEN=*) ::  variable !<
-
-       INTEGER(iwp) ::  av     !< flag to control data output of instantaneous or time-averaged data
-       INTEGER(iwp) ::  nzb_do !< lower limit of the data output (usually 0)
-       INTEGER(iwp) ::  nzt_do !< vertical upper limit of the data output (usually nz_do3d)
-
-       LOGICAL      ::  found !<
-       LOGICAL      ::  two_d !< flag parameter that indicates 2D variables (horizontal cross sections)
-
-       REAL(wp) ::  fill_value = -999.0_wp    !< value for the _FillValue attribute
-
-       REAL(wp), DIMENSION(nxl:nxr,nys:nyn,nzb_do:nzt_do) ::  local_pf !<
+    SUBROUTINE gust_data_output_2d( av, variable, found, grid, mode, local_pf, &
+                                    two_d, nzb_do, nzt_do, fill_value )
+
+
+       IMPLICIT NONE
+
+       CHARACTER (LEN=*), INTENT(INOUT) ::  grid       !< name of vertical grid
+       CHARACTER (LEN=*), INTENT(IN) ::  mode       !< either 'xy', 'xz' or 'yz'
+       CHARACTER (LEN=*), INTENT(IN) ::  variable   !< name of variable
+
+       INTEGER(iwp), INTENT(IN) ::  av        !< flag for (non-)average output
+       INTEGER(iwp), INTENT(IN) ::  nzb_do    !< vertical output index (bottom)
+       INTEGER(iwp), INTENT(IN) ::  nzt_do    !< vertical output index (top)
+
+       LOGICAL, INTENT(INOUT) ::  found   !< flag if output variable is found
+       LOGICAL, INTENT(INOUT) ::  two_d !< flag parameter that indicates 2D variables (horizontal cross sections)
+
+       REAL(wp), INTENT(IN) ::  fill_value !< value for the _FillValue attribute
+
+       REAL(wp), DIMENSION(nxl:nxr,nys:nyn,nzb_do:nzt_do), INTENT(INOUT) ::  local_pf !< local
+          !< array to which output data is resorted to
 
 
@@ -423,20 +425,21 @@
 !> Subroutine defining 3D output variables
 !------------------------------------------------------------------------------!
-    SUBROUTINE gust_data_output_3d( av, variable, found, local_pf, nzb_do, nzt_do )
-
-
-       IMPLICIT NONE
-
-       CHARACTER (LEN=*) ::  variable !<
-
-       INTEGER(iwp) ::  av    !<
-       INTEGER(iwp) ::  nzb_do !< lower limit of the data output (usually 0)
-       INTEGER(iwp) ::  nzt_do !< vertical upper limit of the data output (usually nz_do3d)
-
-       LOGICAL      ::  found !<
-
-       REAL(wp) ::  fill_value = -999.0_wp    !< value for the _FillValue attribute
-
-       REAL(sp), DIMENSION(nxl:nxr,nys:nyn,nzb_do:nzt_do) ::  local_pf !<
+    SUBROUTINE gust_data_output_3d( av, variable, found, local_pf, fill_value, nzb_do, nzt_do )
+
+
+       IMPLICIT NONE
+
+       CHARACTER (LEN=*), INTENT(IN) ::  variable   !< name of variable
+
+       INTEGER(iwp), INTENT(IN) ::  av        !< flag for (non-)average output
+       INTEGER(iwp), INTENT(IN) ::  nzb_do    !< lower limit of the data output (usually 0)
+       INTEGER(iwp), INTENT(IN) ::  nzt_do    !< vertical upper limit of the data output (usually nz_do3d)
+
+       LOGICAL, INTENT(INOUT) ::  found     !< flag if output variable is found
+
+       REAL(wp), INTENT(IN) ::  fill_value !< value for the _FillValue attribute
+
+       REAL(sp), DIMENSION(nxl:nxr,nys:nyn,nzb_do:nzt_do), INTENT(INOUT) ::  local_pf   !< local
+          !< array to which output data is resorted to
 
 
Index: palm/trunk/SOURCE/module_interface.f90
===================================================================
--- palm/trunk/SOURCE/module_interface.f90	(revision 3639)
+++ palm/trunk/SOURCE/module_interface.f90	(revision 3641)
@@ -695,5 +695,5 @@
    CHARACTER (LEN=*), INTENT(IN)  ::  variable !< variable name
    LOGICAL,           INTENT(OUT) ::  found    !< flag if output variable is found
-   CHARACTER (LEN=*), INTENT(OUT) ::  grid     !< name of vertical grid
+   CHARACTER (LEN=*), INTENT(INOUT) ::  grid     !< name of vertical grid
    CHARACTER (LEN=*), INTENT(IN)  ::  mode     !< either 'xy', 'xz' or 'yz'
    LOGICAL,           INTENT(OUT) ::  two_d    !< flag for 2D variables
@@ -725,5 +725,5 @@
    IF ( .NOT. found  .AND.  gust_module_enabled )  THEN
       CALL gust_data_output_2d(                                                &
-              av, variable, found, grid, local_pf, two_d, nzb_do, nzt_do       &
+              av, variable, found, grid, mode, local_pf, two_d, nzb_do, nzt_do, fill_value &
            )
    ENDIF
@@ -799,5 +799,5 @@
 
    IF ( .NOT. found  .AND.  gust_module_enabled )  THEN
-      CALL gust_data_output_3d( av, variable, found, local_pf, nzb_do, nzt_do )
+      CALL gust_data_output_3d( av, variable, found, local_pf, fill_value, nzb_do, nzt_do )
       resorted = .TRUE.
    ENDIF
