Index: /palm/trunk/SOURCE/check_parameters.f90
===================================================================
--- /palm/trunk/SOURCE/check_parameters.f90	(revision 3034)
+++ /palm/trunk/SOURCE/check_parameters.f90	(revision 3035)
@@ -25,4 +25,7 @@
 ! -----------------
 ! $Id$
+! Add option to initialize warm air bubble close to surface
+! 
+! 3034 2018-05-24 08:41:20Z raasch
 ! bugfix: check that initializing_actions has been set
 ! 
@@ -1366,5 +1369,5 @@
              CASE ( 'set_constant_profiles', 'set_1d-model_profiles',          &
                     'by_user', 'initialize_vortex', 'initialize_ptanom',       &
-                    'inifor' )
+                    'initialize_bubble', 'inifor' )
                 action = action(position+1:)
 
Index: /palm/trunk/SOURCE/init_3d_model.f90
===================================================================
--- /palm/trunk/SOURCE/init_3d_model.f90	(revision 3034)
+++ /palm/trunk/SOURCE/init_3d_model.f90	(revision 3035)
@@ -25,4 +25,7 @@
 ! -----------------
 ! $Id$
+! Add option to initialize warm air bubble close to surface
+! 
+! 3014 2018-05-09 08:42:38Z maronga
 ! Bugfix: initialization of ts_value missing
 ! 
@@ -1586,9 +1589,11 @@
 
 !
-!--    Impose temperature anomaly (advection test only)
-       IF ( INDEX( initializing_actions, 'initialize_ptanom' ) /= 0 )  THEN
+!--    Impose temperature anomaly (advection test only) or warm air bubble 
+!--    close to surface
+       IF ( INDEX( initializing_actions, 'initialize_ptanom' ) /= 0  .OR.  &
+            INDEX( initializing_actions, 'initialize_bubble' ) /= 0  )  THEN
           CALL init_pt_anomaly
        ENDIF
-
+       
 !
 !--    If required, change the surface temperature at the start of the 3D run
Index: /palm/trunk/SOURCE/init_pt_anomaly.f90
===================================================================
--- /palm/trunk/SOURCE/init_pt_anomaly.f90	(revision 3034)
+++ /palm/trunk/SOURCE/init_pt_anomaly.f90	(revision 3035)
@@ -25,4 +25,7 @@
 ! -----------------
 ! $Id$
+! Add option to initialize warm air bubble close to surface
+! 
+! 2718 2018-01-02 08:49:38Z maronga
 ! Corrected "Former revisions" section
 ! 
@@ -72,9 +75,11 @@
         ONLY:  pt, zu
 
+    USE control_parameters    
+        
     USE grid_variables,                                                        &
         ONLY:  dx, dy
 
     USE indices,                                                               &
-        ONLY:  nbgp, nx, nxl, nxr, nyn, nys, nzb, nzt
+        ONLY:  nbgp, nx, nxl, nxr, ny, nyn, nys, nzb, nzt
         
     USE kinds
@@ -82,46 +87,77 @@
     IMPLICIT NONE
 
-    INTEGER(iwp) ::  i  !<
-    INTEGER(iwp) ::  ic !<
-    INTEGER(iwp) ::  j  !<
-    INTEGER(iwp) ::  jc !<
-    INTEGER(iwp) ::  k  !<
-    INTEGER(iwp) ::  kc !<
+    INTEGER(iwp) ::  i  !< grid index along x
+    INTEGER(iwp) ::  ic !< center index along x 
+    INTEGER(iwp) ::  j  !< grid index along y
+    INTEGER(iwp) ::  jc !< center index along y
+    INTEGER(iwp) ::  k  !< grid index along z
+    INTEGER(iwp) ::  kc !< center index along z
     
-    REAL(wp)     ::  betrag !<
-    REAL(wp)     ::  radius !<
-    REAL(wp)     ::  rc     !<
-    REAL(wp)     ::  x      !<
-    REAL(wp)     ::  y      !<
-    REAL(wp)     ::  z      !<
+    REAL(wp)     ::  amount                               !< amount of temperature perturbation
+    REAL(wp)     ::  bubble_center_y                      !< center of bubble in y
+    REAL(wp)     ::  bubble_center_z = 170.0              !< center of bubble in z
+    REAL(wp)     ::  bubble_sigma_y = 300.0               !< width of bubble in y
+    REAL(wp)     ::  bubble_sigma_z = 150.0               !< width of bubble in z
+    REAL(wp)     ::  initial_temperature_difference = 0.4 !< temperature perturbation for bubble in K
+    REAL(wp)     ::  radius                               !< radius of pt anomaly
+    REAL(wp)     ::  rc                                   !< radius of pt anomaly
+    REAL(wp)     ::  x                                    !< x dimension of pt anomaly
+    REAL(wp)     ::  y                                    !< y dimension of pt anomaly
+    REAL(wp)     ::  z                                    !< z dimension of pt anomaly
+    
     
 !
 !-- Defaults: radius rc, strength z,
-!--           position of centre: ic, jc, kc
+!--           position of center: ic, jc, kc
     rc =  10.0_wp * dx
     ic =  ( nx+1 ) / 2
     jc =  ic
     kc =  nzt / 2
+    
+    IF ( INDEX( initializing_actions, 'initialize_ptanom' ) /= 0 )  THEN
+!
+!--    Compute the perturbation.
+       DO  i = nxl, nxr
+          DO  j = nys, nyn
+             DO  k = nzb+1, nzt
+                x = ( i - ic ) * dx
+                y = ( j - jc ) * dy
+                z = ABS( zu(k) - zu(kc) )
+                radius = SQRT( x**2 + y**2 + z**2 )
+                IF ( radius <= rc )  THEN
+                   amount = 5.0_wp * EXP( -( radius * 0.001_wp / 2.0_wp )**2 )
+                ELSE
+                   amount = 0.0_wp
+                ENDIF
 
-!
-!-- Compute the perturbation.
-    DO  i = nxl, nxr
-       DO  j = nys, nyn
-          DO  k = nzb+1, nzt
-             x = ( i - ic ) * dx
-             y = ( j - jc ) * dy
-             z = ABS( zu(k) - zu(kc) )
-             radius = SQRT( x**2 + y**2 + z**2 )
-             IF ( radius <= rc )  THEN
-                betrag = 5.0_wp * EXP( -( radius * 0.001_wp / 2.0_wp )**2 )
-             ELSE
-                betrag = 0.0_wp
-             ENDIF
+                pt(k,j,i) = pt(k,j,i) + amount
 
-             pt(k,j,i) = pt(k,j,i) + betrag
-
+             ENDDO
           ENDDO
        ENDDO
-    ENDDO
+        
+!
+!-- Initialize warm air bubble close to surface and homogenous elegonated 
+!-- along x-Axis
+    ELSEIF ( INDEX( initializing_actions, 'initialize_bubble' ) /= 0 )  THEN
+!
+!--    Calculate y-center of model domain
+       bubble_center_y = ( ny + 1.0 ) * dy / 2.0
+    
+!
+!--    Compute perturbation for potential temperaure
+       DO  i = nxl, nxr
+          DO  j = nys, nyn
+             DO  k = nzb+1, nzt 
+                pt(k,j,i) = pt(k,j,i) +                                        &
+                               EXP( -0.5 * ( (j* dy  - bubble_center_y) /      &
+                                                       bubble_sigma_y )**2) *  &
+                               EXP( -0.5 * ( (zu(k)  - bubble_center_z) /      &
+                                                       bubble_sigma_z)**2) *   &
+                               initial_temperature_difference
+             ENDDO
+          ENDDO
+       ENDDO
+    ENDIF
 
 !
