Index: palm/trunk/SOURCE/land_surface_model_mod.f90
===================================================================
--- palm/trunk/SOURCE/land_surface_model_mod.f90	(revision 3620)
+++ palm/trunk/SOURCE/land_surface_model_mod.f90	(revision 3636)
@@ -25,4 +25,7 @@
 ! -----------------
 ! $Id$
+! nopointer option removed
+! 
+! 3620 2018-12-11 12:29:43Z moh.hefny
 ! update the 3d rad_lw_out array
 !
@@ -655,17 +658,4 @@
                                    zs_layer = 9999999.9_wp         !< soil layer depths (edge)
                                  
-#if defined( __nopointer )
-    TYPE(surf_type_lsm), TARGET  ::  t_soil_h,    & !< Soil temperature (K), horizontal surface elements
-                                     t_soil_h_p,  & !< Prog. soil temperature (K), horizontal surface elements
-                                     m_soil_h,    & !< Soil moisture (m3/m3), horizontal surface elements
-                                     m_soil_h_p     !< Prog. soil moisture (m3/m3), horizontal surface elements
-
-    TYPE(surf_type_lsm), DIMENSION(0:3), TARGET  ::  &
-                                     t_soil_v,       & !< Soil temperature (K), vertical surface elements
-                                     t_soil_v_p,     & !< Prog. soil temperature (K), vertical surface elements
-                                     m_soil_v,       & !< Soil moisture (m3/m3), vertical surface elements
-                                     m_soil_v_p        !< Prog. soil moisture (m3/m3), vertical surface elements
-
-#else
     TYPE(surf_type_lsm), POINTER ::  t_soil_h,    & !< Soil temperature (K), horizontal surface elements
                                      t_soil_h_p,  & !< Prog. soil temperature (K), horizontal surface elements
@@ -689,18 +679,5 @@
                                      m_soil_v_1,  & !<
                                      m_soil_v_2     !<
-#endif    
-
-#if defined( __nopointer )
-    TYPE(surf_type_lsm), TARGET   ::  t_surface_h,    & !< surface temperature (K), horizontal surface elements 
-                                      t_surface_h_p,  & !< progn. surface temperature (K), horizontal surface elements 
-                                      m_liq_h,        & !< liquid water reservoir (m), horizontal surface elements 
-                                      m_liq_h_p         !< progn. liquid water reservoir (m), horizontal surface elements 
-
-    TYPE(surf_type_lsm), DIMENSION(0:3), TARGET   ::  &
-                                      t_surface_v,    & !< surface temperature (K), vertical surface elements 
-                                      t_surface_v_p,  & !< progn. surface temperature (K), vertical surface elements 
-                                      m_liq_v,        & !< liquid water reservoir (m), vertical surface elements 
-                                      m_liq_v_p         !< progn. liquid water reservoir (m), vertical surface elements 
-#else
+
     TYPE(surf_type_lsm), POINTER  ::  t_surface_h,    & !< surface temperature (K), horizontal surface elements 
                                       t_surface_h_p,  & !< progn. surface temperature (K), horizontal surface elements 
@@ -724,19 +701,9 @@
                                       m_liq_v_1,      & !<
                                       m_liq_v_2         !<
-#endif
-
-#if defined( __nopointer )
+
     REAL(wp), DIMENSION(:,:), ALLOCATABLE, TARGET :: m_liq_av
-#else
-    REAL(wp), DIMENSION(:,:), ALLOCATABLE, TARGET :: m_liq_av
-#endif
-
-#if defined( __nopointer )
+
     REAL(wp), DIMENSION(:,:,:), ALLOCATABLE, TARGET ::  t_soil_av, & !< Average of t_soil
                                                         m_soil_av    !< Average of m_soil
-#else
-    REAL(wp), DIMENSION(:,:,:), ALLOCATABLE, TARGET ::  t_soil_av, & !< Average of t_soil
-                                                        m_soil_av    !< Average of m_soil
-#endif
 
     TYPE(surf_type_lsm), TARGET ::  tm_liq_h_m      !< liquid water reservoir tendency (m), horizontal surface elements 
@@ -4822,44 +4789,4 @@
 !--    even if they do not belong to the data type due to the 
 !--    pointer arithmetric (TARGET attribute is not allowed in a data-type). 
-#if defined( __nopointer )
-!
-!--    Horizontal surfaces
-       ALLOCATE ( m_liq_h_p%var_1d(1:surf_lsm_h%ns)                      )
-       ALLOCATE ( t_surface_h%var_1d(1:surf_lsm_h%ns)                    )
-       ALLOCATE ( t_surface_h_p%var_1d(1:surf_lsm_h%ns)                  )
-       ALLOCATE ( m_soil_h_p%var_2d(nzb_soil:nzt_soil,1:surf_lsm_h%ns)   )
-       ALLOCATE ( t_soil_h_p%var_2d(nzb_soil:nzt_soil+1,1:surf_lsm_h%ns) )
-
-!
-!--    Vertical surfaces
-       DO  l = 0, 3
-          ALLOCATE ( m_liq_v(l)%var_1d(1:surf_lsm_v(l)%ns)                        )
-          ALLOCATE ( m_liq_v_p(l)%var_1d(1:surf_lsm_v(l)%ns)                      )
-          ALLOCATE ( t_surface_v(l)%var_1d(1:surf_lsm_v(l)%ns)                    )
-          ALLOCATE ( t_surface_v_p(l)%var_1d(1:surf_lsm_v(l)%ns)                  )
-          ALLOCATE ( m_soil_v(l)%var_2d(nzb_soil:nzt_soil,1:surf_lsm_v(l)%ns)     )
-          ALLOCATE ( m_soil_v_p(l)%var_2d(nzb_soil:nzt_soil,1:surf_lsm_v(l)%ns)   )
-          ALLOCATE ( t_soil_v(l)%var_2d(nzb_soil:nzt_soil+1,1:surf_lsm_v(l)%ns)   )
-          ALLOCATE ( t_soil_v_p(l)%var_2d(nzb_soil:nzt_soil+1,1:surf_lsm_v(l)%ns) )
-       ENDDO
-!
-!--    Allocate soil temperature and moisture. As these variables might be 
-!--    already allocated in case of restarts, check this. 
-       IF ( .NOT. ALLOCATED( m_liq_h%var_1d ) )                                &
-          ALLOCATE ( m_liq_h%var_1d(1:surf_lsm_h%ns) )
-       IF ( .NOT. ALLOCATED( m_soil_h%var_2d ) )                               &
-          ALLOCATE ( m_soil_h%var_2d(nzb_soil:nzt_soil,1:surf_lsm_h%ns) )
-       IF ( .NOT. ALLOCATED( t_soil_h%var_2d ) )                               &
-          ALLOCATE ( t_soil_h%var_2d(nzb_soil:nzt_soil,1:surf_lsm_h%ns) )
-
-       DO  l = 0, 3
-          IF ( .NOT. ALLOCATED( m_liq_v(l)%var_1d ) )                          &
-             ALLOCATE ( m_liq_v(l)%var_1d(1:surf_lsm_v(l)%ns) )
-          IF ( .NOT. ALLOCATED( m_soil_v(l)%var_2d ) )                         &
-             ALLOCATE ( m_soil_v(l)%var_2d(nzb_soil:nzt_soil,1:surf_lsm_v(l)%ns) )
-          IF ( .NOT. ALLOCATED( t_soil_v(l)%var_2d ) )                         &
-             ALLOCATE ( t_soil_v(l)%var_2d(nzb_soil:nzt_soil,1:surf_lsm_v(l)%ns) )
-       ENDDO
-#else
 !
 !--    Horizontal surfaces
@@ -4884,5 +4811,5 @@
           ALLOCATE ( t_soil_v_2(l)%var_2d(nzb_soil:nzt_soil+1,1:surf_lsm_v(l)%ns) )
        ENDDO
-#endif
+
 !
 !--    Allocate array for heat flux in W/m2, required for radiation?
@@ -4986,6 +4913,4 @@
        ENDDO
 
-   
-#if ! defined( __nopointer )
 !
 !--    Initial assignment of the pointers
@@ -5001,6 +4926,4 @@
        m_soil_v    => m_soil_v_1;    m_soil_v_p    => m_soil_v_2
        m_liq_v     => m_liq_v_1;     m_liq_v_p     => m_liq_v_2
-
-#endif
 
 
@@ -5477,23 +5400,4 @@
        INTEGER, INTENT(IN) :: mod_count
 
-#if defined( __nopointer )
-!
-!--    Horizontal surfaces
-       t_surface_h  = t_surface_h_p
-       t_soil_h     = t_soil_h_p
-       IF ( humidity )  THEN
-          m_soil_h    = m_soil_h_p
-          m_liq_h  = m_liq_h_p
-       ENDIF
-!
-!--    Vertical surfaces
-       t_surface_v  = t_surface_v_p
-       t_soil_v     = t_soil_v_p
-       IF ( humidity )  THEN
-          m_soil_v    = m_soil_v_p
-          m_liq_v  = m_liq_v_p
-       ENDIF
-
-#else
     
        SELECT CASE ( mod_count )
@@ -5541,5 +5445,4 @@
 
        END SELECT
-#endif
 
     END SUBROUTINE lsm_swap_timelevel
