SURFEX v7.3
General documentation of Surfex
 All Classes Files Functions Variables Typedefs
/home/dasprezs/EXPORT_v7_3/src/OFFLIN/assim_townn.F90
Go to the documentation of this file.
00001 !     ###############################################################################
00002 SUBROUTINE ASSIM_TOWN_n(HPROGRAM,KI,PT2M_O,HTEST)
00003 
00004 !     ###############################################################################
00005 !
00006 !!****  *ASSIM_TOWN_n * - Chooses the surface schemes for TOWN parts  
00007 !!
00008 !!    PURPOSE
00009 !!    -------
00010 !!
00011 !!**  METHOD
00012 !!    ------
00013 !!
00014 !!    REFERENCE
00015 !!    ---------
00016 !!      
00017 !!
00018 !!    AUTHOR
00019 !!    ------
00020 !!     T. Aspelien
00021 !!
00022 !!    MODIFICATIONS
00023 !!    -------------
00024 !!      Original    04/2012
00025 !!--------------------------------------------------------------------
00026 !
00027 USE MODD_CSTS,          ONLY : XPI
00028 USE MODN_IO_OFFLINE,    ONLY : CSURF_FILETYPE
00029 !
00030 USE MODD_SURF_ATM_n,    ONLY : CTOWN
00031 !
00032 USE YOMHOOK,            ONLY : LHOOK,   DR_HOOK
00033 USE PARKIND1,           ONLY : JPRB
00034 !
00035 USE MODI_ABOR1_SFX
00036 USE MODI_ASSIM_TEB_n
00037 !
00038 IMPLICIT NONE
00039 !
00040 !*      0.1    declarations of arguments
00041 !
00042  CHARACTER(LEN=6),   INTENT(IN) :: HPROGRAM  ! program calling surf. schemes
00043 INTEGER,            INTENT(IN) :: KI
00044 REAL,DIMENSION(kI), INTENT(IN) :: PT2M_O
00045  CHARACTER(LEN=2),   INTENT(IN) :: HTEST ! must be equal to 'OK'
00046 !
00047 !*      0.2    declarations of local variables
00048 !
00049 !-------------------------------------------------------------------------------------
00050 !
00051  CHARACTER(LEN=6)                   :: YPROGRAM  = 'LFI   '
00052 REAL(KIND=JPRB)                    :: ZHOOK_HANDLE
00053  CHARACTER(LEN=10)                  :: YVAR    ! Name of the prognostic variable (in LFI file)
00054  CHARACTER(LEN=100)                 :: YPREFIX ! Prefix of the prognostic variable  (in LFI file)
00055 INTEGER                            :: IRESP
00056 
00057 IF (LHOOK) CALL DR_HOOK('ASSIM_TOWN_N',0,ZHOOK_HANDLE)
00058 
00059 IF (HTEST/='OK') THEN
00060   CALL ABOR1_SFX('ASSIM_TOWN_n: FATAL ERROR DURING ARGUMENT TRANSFER')
00061 END IF
00062 
00063 IF (CTOWN=='TEB   ') THEN
00064   CALL ASSIM_TEB_n(HPROGRAM,KI,PT2M_O,HTEST)
00065 ELSE
00066   WRITE(*,*) 'No assimilation done for scheme: ',TRIM(CTOWN)
00067 END IF
00068 
00069 IF (LHOOK) CALL DR_HOOK('ASSIM_TOWN_N',1,ZHOOK_HANDLE)
00070 !
00071 !-------------------------------------------------------------------------------------
00072 !
00073 END SUBROUTINE ASSIM_TOWN_n