SURFEX v7.3
General documentation of Surfex
 All Classes Files Functions Variables Typedefs
/home/dasprezs/EXPORT_v7_3/src/OFFLIN/open_aux_io_surf_lfi.F90
Go to the documentation of this file.
00001 !     #######################################################
00002       SUBROUTINE OPEN_AUX_IO_SURF_LFI(HFILE,HFILETYPE,HMASK)
00003 !     #######################################################
00004 !
00005 !!****  *OPEN_AUX_IO_SURF_ASC* - chooses the routine to OPENialize IO
00006 !!
00007 !!    PURPOSE
00008 !!    -------
00009 !!
00010 !!**  METHOD
00011 !!    ------
00012 !!
00013 !!    EXTERNAL
00014 !!    --------
00015 !!
00016 !!
00017 !!    IMPLICIT ARGUMENTS
00018 !!    ------------------
00019 !!
00020 !!    REFERENCE
00021 !!    ---------
00022 !!
00023 !!
00024 !!    AUTHOR
00025 !!    ------
00026 !!      V. Masson    *Meteo France*     
00027 !!
00028 !!    MODIFICATIONS
00029 !!    -------------
00030 !!      Original    10/2006
00031 !-------------------------------------------------------------------------------
00032 !
00033 !*       0.    DECLARATIONS
00034 !              ------------
00035 !
00036 USE MODD_IO_SURF_LFI,ONLY:CLUOUT_LFI,NMASK,NFULL,CMASK, NLUOUT, &
00037                             CFILE_LFI, NUNIT_LFI, NFULL_AUX,&
00038                             NIB,NIE,NIU,NJB,NJE,NJU, NFULL_AUX, &
00039                             CFILEPGD_LFI 
00040 USE MODI_GET_LUOUT
00041 USE MODI_READ_SURF
00042 !
00043 !
00044 USE YOMHOOK   ,ONLY : LHOOK,   DR_HOOK
00045 USE PARKIND1  ,ONLY : JPRB
00046 !
00047 USE MODI_GET_1D_MASK
00048 !
00049 IMPLICIT NONE
00050 !
00051 !*       0.1   Declarations of arguments
00052 !              -------------------------
00053 !
00054  CHARACTER(LEN=28), INTENT(IN)  :: HFILE     ! file name
00055  CHARACTER(LEN=6),  INTENT(IN)  :: HFILETYPE ! main program
00056  CHARACTER(LEN=6),  INTENT(IN)  :: HMASK
00057 !
00058 !*       0.2   Declarations of local variables
00059 !              -------------------------------
00060 !
00061 REAL, DIMENSION(:),ALLOCATABLE :: ZFULL  ! total cover
00062 INTEGER                        :: ILU,IRET, IL
00063 INTEGER                        :: INB ! number of articles in the file
00064 REAL(KIND=JPRB) :: ZHOOK_HANDLE
00065 !-------------------------------------------------------------------------------
00066 !
00067 IF (LHOOK) CALL DR_HOOK('OPEN_AUX_IO_SURF_LFI',0,ZHOOK_HANDLE)
00068  CALL GET_LUOUT('LFI   ',NLUOUT)
00069 !
00070  CALL FMOPEN(HFILE,'OLD',CLUOUT_LFI,0,1,1,INB,IRET)
00071 !
00072 CMASK = HMASK
00073 CFILE_LFI=HFILE
00074  CALL READ_SURF('LFI   ','DIM_FULL',ILU,IRET)
00075 NFULL_AUX = ILU
00076 !
00077 !------------------------------------------------------------------------------
00078 NFULL = NFULL_AUX
00079 !
00080 IL = NFULL
00081 ALLOCATE(ZFULL(IL))
00082 ALLOCATE(NMASK(IL))
00083 ZFULL=1.
00084  CALL GET_1D_MASK(IL,IL,ZFULL,NMASK)
00085 !
00086 !------------------------------------------------------------------------------
00087 CMASK = HMASK
00088 IF (LHOOK) CALL DR_HOOK('OPEN_AUX_IO_SURF_LFI',1,ZHOOK_HANDLE)
00089 !-------------------------------------------------------------------------------
00090 !
00091 END SUBROUTINE OPEN_AUX_IO_SURF_LFI