SURFEX v7.3
General documentation of Surfex
 All Classes Files Functions Variables Typedefs
/home/dasprezs/EXPORT_v7_3/src/SURFEX/open_aux_io_surf_fa.F90
Go to the documentation of this file.
00001 !     #######################################################
00002       SUBROUTINE OPEN_AUX_IO_SURF_FA(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_ASC,ONLY:NUNIT,CFILEIN,CFILEOUT,NMASK,NLUOUT,NFULL,CMASK
00037 USE MODI_GET_LUOUT
00038 USE MODI_READ_SURF
00039 !
00040 USE YOMHOOK   ,ONLY : LHOOK,   DR_HOOK
00041 USE PARKIND1  ,ONLY : JPRB
00042 !
00043 USE MODI_GET_SURF_MASK_n
00044 !
00045 USE MODI_GET_TYPE_DIM_n
00046 !
00047 IMPLICIT NONE
00048 !
00049 !*       0.1   Declarations of arguments
00050 !              -------------------------
00051 !
00052  CHARACTER(LEN=28), INTENT(IN)  :: HFILE     ! file name
00053  CHARACTER(LEN=6),  INTENT(IN)  :: HFILETYPE ! main program
00054  CHARACTER(LEN=6),  INTENT(IN)  :: HMASK
00055 !
00056 !*       0.2   Declarations of local variables
00057 !              -------------------------------
00058 !
00059 INTEGER, DIMENSION(:),POINTER  :: IMASK
00060 INTEGER                        :: ILU,IRET, IL
00061 REAL(KIND=JPRB) :: ZHOOK_HANDLE
00062 !-------------------------------------------------------------------------------
00063 !
00064 IF (LHOOK) CALL DR_HOOK('OPEN_AUX_IO_SURF_FA',0,ZHOOK_HANDLE)
00065  CALL GET_LUOUT('ASCII ',NLUOUT)
00066 !
00067 NUNIT=9
00068 !
00069 OPEN(UNIT=NUNIT,FILE=HFILE,FORM='FORMATTED')
00070 !
00071 CMASK = HMASK
00072  CALL READ_SURF('ASCII ','DIM_FULL',ILU,IRET)
00073 NFULL = ILU
00074 !
00075 !------------------------------------------------------------------------------
00076 !
00077 IL = NFULL
00078  CALL GET_TYPE_DIM_n(HMASK,IL)
00079 ALLOCATE(IMASK(IL))
00080  CALL GET_SURF_MASK_n(HMASK,IL,IMASK,NFULL,NLUOUT)
00081 !
00082 ALLOCATE(NMASK(SIZE(IMASK)))
00083 NMASK(:)=IMASK(:)
00084 DEALLOCATE(IMASK)
00085 !
00086 !------------------------------------------------------------------------------
00087 CMASK = HMASK
00088 IF (LHOOK) CALL DR_HOOK('OPEN_AUX_IO_SURF_FA',1,ZHOOK_HANDLE)
00089 !-------------------------------------------------------------------------------
00090 !
00091 END SUBROUTINE OPEN_AUX_IO_SURF_FA