Index: palm/trunk/SOURCE/surface_data_output_mod.f90
===================================================================
--- palm/trunk/SOURCE/surface_data_output_mod.f90	(revision 3690)
+++ palm/trunk/SOURCE/surface_data_output_mod.f90	(revision 3691)
@@ -25,4 +25,7 @@
 ! -----------------
 ! $Id$
+! Add output of surface-parallel flow speed 
+! 
+! 3648 2019-01-02 16:35:46Z suehring
 ! Rename module and subroutines
 ! 
@@ -2224,4 +2227,33 @@
                                                         
                ENDIF
+               
+            CASE ( 'uvw1' )
+!
+!--            Output of instantaneous data
+               IF ( av == 0 )  THEN
+                  CALL surface_data_output_collect( surf_def_h(0)%uvw_abs,     &
+                                               surf_def_h(1)%uvw_abs,          &
+                                               surf_lsm_h%uvw_abs,             &
+                                               surf_usm_h%uvw_abs,             &
+                                               surf_def_v(0)%uvw_abs,          &
+                                               surf_lsm_v(0)%uvw_abs,          &
+                                               surf_usm_v(0)%uvw_abs,          &
+                                               surf_def_v(1)%uvw_abs,          &
+                                               surf_lsm_v(1)%uvw_abs,          &
+                                               surf_usm_v(1)%uvw_abs,          &
+                                               surf_def_v(2)%uvw_abs,          &
+                                               surf_lsm_v(2)%uvw_abs,          &
+                                               surf_usm_v(2)%uvw_abs,          &
+                                               surf_def_v(3)%uvw_abs,          &
+                                               surf_lsm_v(3)%uvw_abs,          &
+                                               surf_usm_v(3)%uvw_abs )
+               ELSE
+!
+!--               Output of averaged data
+                  surfaces%var_out(:) = surfaces%var_av(:,n_out) /             &
+                                        REAL( average_count_surf, KIND=wp )
+                  surfaces%var_av(:,n_out) = 0.0_wp
+                                                        
+               ENDIF   
 
 !
@@ -2747,4 +2779,5 @@
                                            surf_lsm_v(3)%q_surface,            &
                                            surf_usm_v(3)%q_surface, n_out ) 
+                                           
 
             CASE ( 'theta_surface' )
@@ -3089,4 +3122,22 @@
                                            surf_lsm_v(3)%rad_lw_res,           &
                                            surf_usm_v(3)%rad_lw_res, n_out )
+                                           
+            CASE ( 'uvw1' )
+               CALL surface_data_output_sum_up( surf_def_h(0)%uvw_abs,         &
+                                           surf_def_h(1)%uvw_abs,              &
+                                           surf_lsm_h%uvw_abs,                 &
+                                           surf_usm_h%uvw_abs,                 &
+                                           surf_def_v(0)%uvw_abs,              &
+                                           surf_lsm_v(0)%uvw_abs,              &
+                                           surf_usm_v(0)%uvw_abs,              &
+                                           surf_def_v(1)%uvw_abs,              &
+                                           surf_lsm_v(1)%uvw_abs,              &
+                                           surf_usm_v(1)%uvw_abs,              &
+                                           surf_def_v(2)%uvw_abs,              &
+                                           surf_lsm_v(2)%uvw_abs,              &
+                                           surf_usm_v(2)%uvw_abs,              &
+                                           surf_def_v(3)%uvw_abs,              &
+                                           surf_lsm_v(3)%uvw_abs,              &
+                                           surf_usm_v(3)%uvw_abs, n_out )                               
 
          END SELECT
@@ -3611,4 +3662,6 @@
 
             CASE ( 'usws', 'vsws' )
+            
+            CASE ( 'uvw1' )
 
             CASE ( 'qcsws', 'ncsws', 'qrsws', 'nrsws', 'sasws' )
