SURFEX v7.3
General documentation of Surfex
 All Classes Files Functions Variables Typedefs
/home/dasprezs/EXPORT_v7_3/src/SURFEX/init_inland_watern.F90
Go to the documentation of this file.
00001 !     #############################################################
00002       SUBROUTINE INIT_INLAND_WATER_n(HPROGRAM,HINIT,                        &
00003                                    KI,KSV,KSW,                                &
00004                                    HSV,PCO2,PRHOA,                            &
00005                                    PZENITH,PAZIM,PSW_BANDS,PDIR_ALB,PSCA_ALB, &
00006                                    PEMIS,PTSRAD,                              &
00007                                    KYEAR, KMONTH,KDAY, PTIME,                 &
00008                                    HATMFILE,HATMFILETYPE,                     &
00009                                    HTEST                                      )  
00010 !     #############################################################
00011 !
00012 !!****  *INIT_INLAND_WATER_n* - routine to initialize inland water
00013 !!
00014 !!    PURPOSE
00015 !!    -------
00016 !!
00017 !!**  METHOD
00018 !!    ------
00019 !!
00020 !!    EXTERNAL
00021 !!    --------
00022 !!
00023 !!
00024 !!    IMPLICIT ARGUMENTS
00025 !!    ------------------
00026 !!
00027 !!    REFERENCE
00028 !!    ---------
00029 !!
00030 !!
00031 !!    AUTHOR
00032 !!    ------
00033 !!      V. Masson   *Meteo France*      
00034 !!
00035 !!    MODIFICATIONS
00036 !!    -------------
00037 !!      Original    01/2003
00038 !-------------------------------------------------------------------------------
00039 !
00040 !*       0.    DECLARATIONS
00041 !              ------------
00042 !
00043 USE MODD_SURF_ATM_n, ONLY : CWATER
00044 USE MODD_CSTS,       ONLY : XTT
00045 !
00046 !
00047 !
00048 USE YOMHOOK   ,ONLY : LHOOK,   DR_HOOK
00049 USE PARKIND1  ,ONLY : JPRB
00050 !
00051 USE MODI_INIT_FLAKE_n
00052 !
00053 USE MODI_INIT_IDEAL_FLUX
00054 !
00055 USE MODI_INIT_WATFLUX_n
00056 !
00057 IMPLICIT NONE
00058 !
00059 !*       0.1   Declarations of arguments
00060 !              -------------------------
00061 !
00062 !
00063  CHARACTER(LEN=6),                 INTENT(IN)  :: HPROGRAM  ! program calling surf. schemes
00064  CHARACTER(LEN=3),                 INTENT(IN)  :: HINIT     ! choice of fields to initialize
00065 INTEGER,                          INTENT(IN)  :: KI        ! number of points
00066 INTEGER,                          INTENT(IN)  :: KSV       ! number of scalars
00067 INTEGER,                          INTENT(IN)  :: KSW       ! number of short-wave spectral bands
00068  CHARACTER(LEN=6), DIMENSION(KSV), INTENT(IN)  :: HSV       ! name of all scalar variables
00069 REAL,             DIMENSION(KI),  INTENT(IN)  :: PCO2      ! CO2 concentration (kg/m3)
00070 REAL,             DIMENSION(KI),  INTENT(IN)  :: PRHOA     ! air density
00071 REAL,             DIMENSION(KI),  INTENT(IN)  :: PZENITH   ! solar zenithal angle
00072 REAL,             DIMENSION(KI),  INTENT(IN)  :: PAZIM     ! solar azimuthal angle (rad from N, clock)
00073 REAL,             DIMENSION(KSW), INTENT(IN)  :: PSW_BANDS ! middle wavelength of each band
00074 REAL,             DIMENSION(KI,KSW),INTENT(OUT) :: PDIR_ALB  ! direct albedo for each band
00075 REAL,             DIMENSION(KI,KSW),INTENT(OUT) :: PSCA_ALB  ! diffuse albedo for each band
00076 REAL,             DIMENSION(KI),  INTENT(OUT) :: PEMIS     ! emissivity
00077 REAL,             DIMENSION(KI),  INTENT(OUT) :: PTSRAD    ! radiative temperature
00078 INTEGER,                          INTENT(IN)  :: KYEAR     ! current year (UTC)
00079 INTEGER,                          INTENT(IN)  :: KMONTH    ! current month (UTC)
00080 INTEGER,                          INTENT(IN)  :: KDAY      ! current day (UTC)
00081 REAL,                             INTENT(IN)  :: PTIME     ! current time since
00082                                                           !  midnight (UTC, s)
00083 !
00084  CHARACTER(LEN=28),                INTENT(IN)  :: HATMFILE    ! atmospheric file name
00085  CHARACTER(LEN=6),                 INTENT(IN)  :: HATMFILETYPE! atmospheric file type
00086  CHARACTER(LEN=2),                 INTENT(IN)  :: HTEST       ! must be equal to 'OK'
00087 REAL(KIND=JPRB) :: ZHOOK_HANDLE
00088 !
00089 !*       0.2   Declarations of local variables
00090 !              -------------------------------
00091 !
00092 !-------------------------------------------------------------------------------
00093 !
00094 !*       2.     Selection of surface scheme
00095 !               ---------------------------
00096 !
00097 IF (LHOOK) CALL DR_HOOK('INIT_INLAND_WATER_N',0,ZHOOK_HANDLE)
00098 IF (CWATER=='NONE  ') THEN
00099   PDIR_ALB=0.
00100   PSCA_ALB=0.
00101   PEMIS   =1.
00102   PTSRAD  =XTT
00103 ELSE IF (CWATER=='FLUX  ') THEN
00104   CALL INIT_IDEAL_FLUX(HPROGRAM,HINIT,KI,KSV,KSW,HSV,PCO2,PRHOA,   &
00105                          PZENITH,PAZIM,PSW_BANDS,PDIR_ALB,PSCA_ALB,  &
00106                          PEMIS,PTSRAD,'OK'                           )  
00107 ELSE IF (CWATER=='WATFLX') THEN
00108   CALL INIT_WATFLUX_n(HPROGRAM,HINIT,KI,KSV,KSW,HSV,PCO2,PRHOA,     &
00109                         PZENITH,PAZIM,PSW_BANDS,PDIR_ALB,PSCA_ALB,    &
00110                         PEMIS,PTSRAD,                                 &
00111                         KYEAR,KMONTH,KDAY,PTIME,HATMFILE,HATMFILETYPE,&
00112                         'OK'                                          )  
00113 ELSE IF (CWATER=='FLAKE ') THEN
00114   CALL INIT_FLAKE_n(HPROGRAM,HINIT,KI,KSV,KSW,HSV,PCO2,PRHOA,       &
00115                         PZENITH,PAZIM,PSW_BANDS,PDIR_ALB,PSCA_ALB,    &
00116                         PEMIS,PTSRAD,                                 &
00117                         KYEAR,KMONTH,KDAY,PTIME,HATMFILE,HATMFILETYPE,&
00118                         'OK')          
00119 END IF
00120 IF (LHOOK) CALL DR_HOOK('INIT_INLAND_WATER_N',1,ZHOOK_HANDLE)
00121 !
00122 !
00123 !-------------------------------------------------------------------------------
00124 !
00125 END SUBROUTINE INIT_INLAND_WATER_n