From a42c895ebf43de2e1ae0638429249ba82c27cedb Mon Sep 17 00:00:00 2001
From: Gaelle DELAUTIER <gaelle.delautier@meteo.fr>
Date: Fri, 26 Jan 2018 10:17:57 +0100
Subject: [PATCH] Gaelle 26/01/2018 SURFEX V8.1

---
 src/ARCH_SRC/surfex/dummy_topd.F90 | 70 +++++++++++++++++++-----------
 1 file changed, 45 insertions(+), 25 deletions(-)

diff --git a/src/ARCH_SRC/surfex/dummy_topd.F90 b/src/ARCH_SRC/surfex/dummy_topd.F90
index 2cc918df6..2f35ab71a 100644
--- a/src/ARCH_SRC/surfex/dummy_topd.F90
+++ b/src/ARCH_SRC/surfex/dummy_topd.F90
@@ -107,17 +107,26 @@ END MODULE MODD_TOPODYN
 !     ######################
 !     ######################
 !     ######################
-SUBROUTINE INIT_SURF_TOPD(DGEI, I, UG, U,HPROGRAM,KI)
+SUBROUTINE INIT_SURF_TOPD(DEC, IO, S, K, NP, NPE, UG, U, HPROGRAM, KI)
+USE MODD_ISBA_OPTIONS_n, ONLY : ISBA_OPTIONS_t
+USE MODD_ISBA_n, ONLY : ISBA_S_t, ISBA_K_t, ISBA_NP_t, ISBA_NPE_t
+!
 USE MODD_DIAG_EVAP_ISBA_n, ONLY : DIAG_EVAP_ISBA_t
-USE MODD_ISBA_n, ONLY : ISBA_t
 USE MODD_SURF_ATM_GRID_n, ONLY : SURF_ATM_GRID_t
 USE MODD_SURF_ATM_n, ONLY : SURF_ATM_t
-TYPE(DIAG_EVAP_ISBA_t), INTENT(INOUT) :: DGEI
-TYPE(ISBA_t), INTENT(INOUT) :: I
+!
+TYPE(DIAG_EVAP_ISBA_t), INTENT(INOUT) :: DEC
+TYPE(ISBA_OPTIONS_t), INTENT(INOUT) :: IO
+TYPE(ISBA_S_t), INTENT(INOUT) :: S
+TYPE(ISBA_K_t), INTENT(INOUT) :: K
+TYPE(ISBA_NP_t), INTENT(INOUT) :: NP
+TYPE(ISBA_NPE_t), INTENT(INOUT) :: NPE
 TYPE(SURF_ATM_GRID_t), INTENT(INOUT) :: UG
 TYPE(SURF_ATM_t), INTENT(INOUT) :: U
-CHARACTER(LEN=*),  INTENT(IN)     :: HPROGRAM      !
-INTEGER,           INTENT(IN)     :: KI            ! grid dimension
+!
+ CHARACTER(LEN=*),  INTENT(IN)     :: HPROGRAM      !
+INTEGER,           INTENT(IN)     :: KI
+!
 END SUBROUTINE INIT_SURF_TOPD
 
       SUBROUTINE ISBA_TO_TOPD(PVARI,PVART)
@@ -127,37 +136,48 @@ END SUBROUTINE ISBA_TO_TOPD
 !     ######################
 !     ######################
 !     ######################
-SUBROUTINE COUPLING_SURF_TOPD (DGEI, DGMI, IG, I, UG, U,HPROGRAM,KI)
+SUBROUTINE COUPLING_SURF_TOPD (DE, DEC, DC, DMI, G, IO, S, K, NK, NP, NPE, UG, U,HPROGRAM,KI)
+USE MODD_DIAG_n, ONLY : DIAG_t
 USE MODD_DIAG_EVAP_ISBA_n, ONLY : DIAG_EVAP_ISBA_t
 USE MODD_DIAG_MISC_ISBA_n, ONLY : DIAG_MISC_ISBA_t
-USE MODD_ISBA_GRID_n, ONLY : ISBA_GRID_t
-USE MODD_ISBA_n, ONLY : ISBA_t
+USE MODD_SFX_GRID_n, ONLY : GRID_t
+!
+USE MODD_ISBA_OPTIONS_n, ONLY : ISBA_OPTIONS_t
+USE MODD_ISBA_n, ONLY : ISBA_S_t, ISBA_K_t, ISBA_NK_t, ISBA_NP_t, ISBA_NPE_t
+!
 USE MODD_SURF_ATM_GRID_n, ONLY : SURF_ATM_GRID_t
 USE MODD_SURF_ATM_n, ONLY : SURF_ATM_t
-TYPE(DIAG_EVAP_ISBA_t), INTENT(INOUT) :: DGEI
-TYPE(DIAG_MISC_ISBA_t), INTENT(INOUT) :: DGMI
-TYPE(ISBA_GRID_t), INTENT(INOUT) :: IG
-TYPE(ISBA_t), INTENT(INOUT) :: I
+!
+TYPE(DIAG_t), INTENT(INOUT) :: DC
+TYPE(DIAG_EVAP_ISBA_t), INTENT(INOUT) :: DE
+TYPE(DIAG_EVAP_ISBA_t), INTENT(INOUT) :: DEC
+TYPE(DIAG_MISC_ISBA_t), INTENT(INOUT) :: DMI
+TYPE(GRID_t), INTENT(INOUT) :: G
+TYPE(ISBA_OPTIONS_t), INTENT(INOUT) :: IO
+TYPE(ISBA_S_t), INTENT(INOUT) :: S
+TYPE(ISBA_K_t), INTENT(INOUT) :: K
+TYPE(ISBA_NK_t), INTENT(INOUT) :: NK
+TYPE(ISBA_NP_t), INTENT(INOUT) :: NP
+TYPE(ISBA_NPE_t), INTENt(INOUT) :: NPE
 TYPE(SURF_ATM_GRID_t), INTENT(INOUT) :: UG
 TYPE(SURF_ATM_t), INTENT(INOUT) :: U
+!
 CHARACTER(LEN=6), INTENT(IN)         :: HPROGRAM ! program calling surf. schemes
 INTEGER,          INTENT(IN)         :: KI       ! Surfex grid dimension
 END SUBROUTINE COUPLING_SURF_TOPD
 !     ######################
 !     ######################
 !     ######################
-SUBROUTINE PGD_TOPD(I, UG, U, USS,HPROGRAM)
-
-USE MODD_ISBA_n, ONLY : ISBA_t
-USE MODD_SURF_ATM_GRID_n, ONLY : SURF_ATM_GRID_t
-USE MODD_SURF_ATM_n, ONLY : SURF_ATM_t
-USE MODD_SURF_ATM_SSO_n, ONLY : SURF_ATM_SSO_t
-
-TYPE(ISBA_t), INTENT(INOUT) :: I
-TYPE(SURF_ATM_GRID_t), INTENT(INOUT) :: UG
-TYPE(SURF_ATM_t), INTENT(INOUT) :: U
-TYPE(SURF_ATM_SSO_t), INTENT(INOUT) :: USS
-CHARACTER(LEN=*),  INTENT(IN)     :: HPROGRAM    
+SUBROUTINE PGD_TOPD(HISBA, HGRID, PGRID_PAR, KDIM_FULL, PSSO_SLOPE, HPROGRAM)
+! 
+ CHARACTER(LEN=*), INTENT(IN) :: HISBA
+ CHARACTER(LEN=*), INTENT(IN) :: HGRID
+REAL, DIMENSION(:), INTENT(IN) :: PGRID_PAR
+ INTEGER, INTENT(IN) :: KDIM_FULL
+ REAL, DIMENSION(:), INTENT(INOUT) :: PSSO_SLOPE
+!
+CHARACTER(LEN=*),  INTENT(IN)     :: HPROGRAM    !
+ 
 END SUBROUTINE PGD_TOPD
 !     ######################
 !     ######################
-- 
GitLab