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 !