diff --git a/src/MNH/phys_paramn.f90 b/src/MNH/phys_paramn.f90
index 275e7eca4ed889e565eafd2cdb9ddc19f63d760d..280d9dd03f4d1b6d8d7f86c123c43987576476fe 100644
--- a/src/MNH/phys_paramn.f90
+++ b/src/MNH/phys_paramn.f90
@@ -809,7 +809,7 @@ CALL SUNPOS_n   ( XZENITH, ZCOSZEN, ZSINZEN, ZAZIMSOL )
 !
   ZTIME1 = ZTIME2
 !
-  CALL SURF_RAD_MODIF (XMAP, XDXHAT, XDYHAT, XXHATM, XYHATM, &
+  CALL SURF_RAD_MODIF (XMAP, XDXHAT, XDYHAT, XXHAT, XYHAT, &
                   ZCOSZEN, ZSINZEN, ZAZIMSOL, XZS, XZS_XY,   &
                   XDIRFLASWD, XDIRSRFSWD                     )
 !
diff --git a/src/MNH/surf_solar_shadows.f90 b/src/MNH/surf_solar_shadows.f90
index 7d13e34b03b4783cb8ce0d2daf659d75d20c06a7..ff167776a2dae36cbadb4b944d3cdf3adb2ae31f 100644
--- a/src/MNH/surf_solar_shadows.f90
+++ b/src/MNH/surf_solar_shadows.f90
@@ -9,14 +9,14 @@
 !
 INTERFACE 
 !
-      SUBROUTINE SURF_SOLAR_SHADOWS ( PMAP, PXHATM, PYHATM,                   &
+      SUBROUTINE SURF_SOLAR_SHADOWS ( PMAP, PXHAT, PYHAT,                     &
                   PCOSZEN, PSINZEN, PAZIMSOL,                                 &
                   PZS, PZS_XY, PDIRSWDT, PDIRSRFSWD                           )
 !
 !
 REAL, DIMENSION(:,:),     INTENT(IN) :: PMAP         ! map factor
-REAL, DIMENSION(:),       INTENT(IN) :: PXHATM       ! X coordinate at mass points
-REAL, DIMENSION(:),       INTENT(IN) :: PYHATM       ! Y coordinate at mass points
+REAL, DIMENSION(:),       INTENT(IN) :: PXHAT        ! X coordinate
+REAL, DIMENSION(:),       INTENT(IN) :: PYHAT        ! Y coordinate
 REAL, DIMENSION(:,:),     INTENT(IN) :: PCOSZEN ! COS(zenithal solar angle)
 REAL, DIMENSION(:,:),     INTENT(IN) :: PSINZEN ! SIN(zenithal solar angle)
 REAL, DIMENSION(:,:),     INTENT(IN) :: PAZIMSOL! azimuthal solar angle
@@ -34,7 +34,7 @@ END INTERFACE
 !
 END MODULE MODI_SURF_SOLAR_SHADOWS
 !     #########################################################################
-      SUBROUTINE SURF_SOLAR_SHADOWS ( PMAP, PXHATM, PYHATM,                   &
+      SUBROUTINE SURF_SOLAR_SHADOWS ( PMAP, PXHAT, PYHAT,                     &
                   PCOSZEN, PSINZEN, PAZIMSOL,                                 &
                   PZS, PZS_XY, PDIRSWDT, PDIRSRFSWD                           )
 !     #########################################################################
@@ -91,8 +91,8 @@ IMPLICIT NONE
 !
 !
 REAL, DIMENSION(:,:),     INTENT(IN) :: PMAP         ! map factor
-REAL, DIMENSION(:),       INTENT(IN) :: PXHATM       ! X coordinate at mass points
-REAL, DIMENSION(:),       INTENT(IN) :: PYHATM       ! Y coordinate at mass points
+REAL, DIMENSION(:),       INTENT(IN) :: PXHAT        ! X coordinate
+REAL, DIMENSION(:),       INTENT(IN) :: PYHAT        ! Y coordinate
 REAL, DIMENSION(:,:),     INTENT(IN) :: PCOSZEN ! COS(zenithal solar angle)
 REAL, DIMENSION(:,:),     INTENT(IN) :: PSINZEN ! SIN(zenithal solar angle)
 REAL, DIMENSION(:,:),     INTENT(IN) :: PAZIMSOL! azimuthal solar angle
@@ -227,20 +227,20 @@ DO JJ=IJB,IJE
 !
       SELECT CASE (JT)
        CASE (1)
-         ZX=PXHATM(JI)/6.
-         ZY=PYHATM(JJ)
+         ZX=(5.*PXHAT(JI)+PXHAT(JI+1))/6.
+         ZY=0.5*(PYHAT(JJ)+PYHAT(JJ+1))
          ZZ=(PZS(JI,JJ)+PZS_XY(JI,JJ)+PZS_XY(JI,JJ+1))/3.
        CASE (2)
-         ZX=PXHATM(JI)
-         ZY=PYHATM(JJ)/6.
+         ZX=0.5*(PXHAT(JI)+PXHAT(JI+1))
+         ZY=(5.*PYHAT(JJ+1)+PYHAT(JJ))/6.
          ZZ=(PZS(JI,JJ)+PZS_XY(JI,JJ+1)+PZS_XY(JI+1,JJ+1))/3.
        CASE (3)
-         ZX=PXHATM(JI)/6.
-         ZY=PYHATM(JJ)
+         ZX=(5.*PXHAT(JI+1)+PXHAT(JI))/6.
+         ZY=0.5*(PYHAT(JJ)+PYHAT(JJ+1))
          ZZ=(PZS(JI,JJ)+PZS_XY(JI+1,JJ)+PZS_XY(JI+1,JJ+1))/3.
        CASE (4)
-         ZX=PXHATM(JI)
-         ZY=PYHATM(JJ)/6.
+         ZX=0.5*(PXHAT(JI)+PXHAT(JI+1))
+         ZY=(5.*PYHAT(JJ)+PYHAT(JJ+1))/6.
          ZZ=(PZS(JI,JJ)+PZS_XY(JI,JJ)+PZS_XY(JI+1,JJ))/3.
       END SELECT
 !