SURFEX v7.3
General documentation of Surfex
 All Classes Files Functions Variables Typedefs
/home/dasprezs/EXPORT_v7_3/src/LIB/TOPD/modd_coupling_topd.F90
Go to the documentation of this file.
00001 !     ###########################
00002       MODULE MODD_COUPLING_TOPD
00003 !     ###########################
00004 !
00005 !!****  *MODD_COUPLING_TOPD - declaration of exchanged variables from Topodyn to ISBA
00006 !!
00007 !!    PURPOSE
00008 !!    -------
00009 !
00010 !!
00011 !!**  IMPLICIT ARGUMENTS
00012 !!    ------------------
00013 !!      None 
00014 !!
00015 !!    REFERENCE
00016 !!    ---------
00017 !!
00018 !!    AUTHOR
00019 !!    ------
00020 !!     F. Habets and K. Chancibault
00021 !!
00022 !!    MODIFICATIONS
00023 !!    -------------
00024 !!      Original       29/09/03
00025 !
00026 !*       0.   DECLARATIONS
00027 !             ------------
00028 !
00029 IMPLICIT NONE
00030 !
00031 !-------------------------------------------------------------------------------
00032 !
00033 LOGICAL                           :: LCOUPL_TOPD      !if T, performs coupling with Topmodel
00034 LOGICAL                           :: LBUDGET_TOPD     !if T, computes budget
00035 LOGICAL                           :: LTOPD_STEP
00036 !
00037 INTEGER                             :: NTOPD_STEP
00038 INTEGER                             :: NFREQ_MAPS_WG       !frequency of output WG maps
00039 INTEGER                             :: NFREQ_MAPS_ASAT     !frequency of output ASAT maps
00040 !
00041 INTEGER                             :: NNB_TOPD   ! Ratio between Time steps of Topmodel and ISBA
00042 !
00043 INTEGER                             :: NIMAX     ! number of ISBA grid points on 
00044                                                  ! abscissa axis
00045 INTEGER                             :: NJMAX     ! number of ISBA grid points on ordinate 
00046                                                  ! axis
00047 REAL, ALLOCATABLE, DIMENSION(:)     :: XXI ! Extended Lambert II coordinates of Isba 
00048 REAL, ALLOCATABLE, DIMENSION(:)     :: XYI ! nodes 
00049 !
00050 INTEGER, ALLOCATABLE, DIMENSION(:)  :: NNPIX     ! Number of Topmodel pixels in an ISBA mesh
00051 INTEGER, ALLOCATABLE, DIMENSION(:,:,:) :: NMASKI ! pixel number of each catchment in each isba mesh
00052 INTEGER, ALLOCATABLE, DIMENSION(:,:):: NMASKT    ! mask
00053 !
00054 REAL, ALLOCATABLE, DIMENSION(:)     :: XAS_NATURE ! Packed contributive area fraction on Nature grid
00055 REAL, ALLOCATABLE, DIMENSION(:)     :: XATOP      ! Packed area fraction WITH TOPMODEL on Nature grid
00056 !
00057 INTEGER, ALLOCATABLE, DIMENSION(:,:)  :: NNBV_IN_MESH   ! Number of pixel of a partical cathment in an ISBA mesh
00058 REAL, ALLOCATABLE, DIMENSION(:,:)     :: XBV_IN_MESH    ! Area of the ISBA meshes covered by a partical cathment
00059 REAL, ALLOCATABLE, DIMENSION(:)       :: XTOTBV_IN_MESH ! Area of the ISBA meshes covered by all cathments
00060 !
00061 REAL, ALLOCATABLE, DIMENSION(:)     :: XDTOPI   ! depth of the soil for lateral 
00062                                                 ! distribution on ISBA grid (m)
00063 REAL, ALLOCATABLE, DIMENSION(:,:)   :: XDTOPT   ! depth of the Isba soil on TOP-LAT 
00064                                                 ! grid (m)
00065 !
00066 REAL, ALLOCATABLE, DIMENSION(:)     :: XWG_FULL   ! Water content from Isba on the full domain
00067 REAL, ALLOCATABLE, DIMENSION(:,:)   :: XWGT     ! ISBA water content 
00068 !
00069 REAL, ALLOCATABLE, DIMENSION(:)     :: XWSTOPI  ! total water content at saturation (m3/m3)
00070                                                 ! on XDTOPI on ISBA grid
00071 REAL, ALLOCATABLE, DIMENSION(:,:)   :: XWSTOPT  ! total water content at saturation (m3/m3)
00072                                                 ! on XDTOPT on TOP-LAT grid
00073 REAL, ALLOCATABLE, DIMENSION(:)     :: XWFCTOPI ! total field capacity on XDTOPI (m3/m3)
00074 REAL, ALLOCATABLE, DIMENSION(:,:)   :: XWFCTOPT ! total field capacity on XDTOPT (m3/m3)
00075 REAL, ALLOCATABLE, DIMENSION(:)     :: XCSTOPI  ! hydraulic conductivity at saturation on 
00076                                                 ! Isba grid, on XDTOPI
00077 REAL, ALLOCATABLE, DIMENSION(:,:)   :: XWTOPT   ! water storage on TOP-LAT grid, after
00078                                                 ! lateral distribution
00079 !
00080 ! * pour bilans
00081 REAL, ALLOCATABLE, DIMENSION(:)       :: XAVG_RUNOFFCM !cumulated runoff  (kg/m2) at t-dt
00082 REAL, ALLOCATABLE, DIMENSION(:)       :: XAVG_DRAINCM ! cumulated drainage calculated from Isba (kg/m2) at t-dt
00083 !
00084 REAL, ALLOCATABLE, DIMENSION(:,:)     :: XKA_PRE   ! Hydrological indexes at the previous time step
00085 REAL, ALLOCATABLE, DIMENSION(:)       :: XKAC_PRE  ! Hydrological index at saturation at the previous time step
00086 !
00087 REAL, ALLOCATABLE, DIMENSION(:,:)     :: XDMAXFC   ! Deficit at the field capacity level
00088 REAL, ALLOCATABLE, DIMENSION(:)       :: XWSUPSAT  ! pour calculer le volume d'eau perdu au-dessus de la saturation
00089 !
00090 REAL, ALLOCATABLE, DIMENSION(:)      ::  XDRAIN_TOP ! Value of drainage on TOPMODEL grid
00091 REAL, ALLOCATABLE, DIMENSION(:)      ::  XRUNOFF_TOP! Value of runoff on TOPMODEL grid
00092 !
00093 REAL, ALLOCATABLE, DIMENSION(:)      ::  XFRAC_D2 ! fraction of the second layer concerned with lateral transferts
00094 REAL, ALLOCATABLE, DIMENSION(:)      ::  XFRAC_D3 ! fraction of the third layer concerned with lateral transferts
00095 !
00096 REAL, ALLOCATABLE, DIMENSION(:)      ::  XWGI_FULL ! soil ice content
00097 !
00098 REAL, ALLOCATABLE, DIMENSION(:,:)    :: XRUN_TOROUT,XDR_TOROUT
00099 !
00100 LOGICAL                              :: LSTOCK_TOPD ! true to stock runoff and drainage values (for another simulation)
00101 !
00102 INTEGER                              :: NNB_STP_RESTART ! number of time step to restart from a previous simulation
00103 INTEGER                              :: NNB_STP_STOCK   ! number of time step to write for the next simulation
00104 !
00105 INTEGER, DIMENSION(:), ALLOCATABLE :: NYEAR      ! Year of the beginning of the simulation.
00106 INTEGER, DIMENSION(:), ALLOCATABLE :: NMONTH     ! Month of the beginning of the simulation.
00107 INTEGER, DIMENSION(:), ALLOCATABLE :: NDAY      ! Date of the beginning of the simulation.
00108 INTEGER, DIMENSION(:), ALLOCATABLE :: NH      ! Hour of the beginning of the simulation.
00109 INTEGER, DIMENSION(:), ALLOCATABLE :: NM      ! Minutes of the beginning of the simulation.
00110 !
00111 ! **** For special f, dc exponential profile
00112 REAL, DIMENSION(:), ALLOCATABLE :: XF_PARAM
00113 REAL, DIMENSION(:), ALLOCATABLE :: XC_DEPTH_RATIO
00114 !
00115 END MODULE MODD_COUPLING_TOPD
00116