SURFEX v7.3
General documentation of Surfex
|
00001 ! ####################################################### 00002 SUBROUTINE OPEN_AUX_IO_SURF_ASC(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 USE MODI_IO_BUFF_CLEAN_n 00040 ! 00041 USE YOMHOOK ,ONLY : LHOOK, DR_HOOK 00042 USE PARKIND1 ,ONLY : JPRB 00043 ! 00044 USE MODI_GET_1D_MASK 00045 IMPLICIT NONE 00046 ! 00047 !* 0.1 Declarations of arguments 00048 ! ------------------------- 00049 ! 00050 CHARACTER(LEN=28), INTENT(IN) :: HFILE ! file name 00051 CHARACTER(LEN=6), INTENT(IN) :: HFILETYPE ! main program 00052 CHARACTER(LEN=6), INTENT(IN) :: HMASK 00053 ! 00054 !* 0.2 Declarations of local variables 00055 ! ------------------------------- 00056 ! 00057 INTEGER, DIMENSION(:),POINTER :: IMASK 00058 INTEGER :: IRET, IL 00059 REAL, DIMENSION(:),ALLOCATABLE :: ZFULL ! total cover 00060 REAL(KIND=JPRB) :: ZHOOK_HANDLE 00061 ! 00062 !------------------------------------------------------------------------------- 00063 ! 00064 IF (LHOOK) CALL DR_HOOK('OPEN_AUX_IO_SURF_ASC',0,ZHOOK_HANDLE) 00065 CALL IO_BUFF_CLEAN_n 00066 CALL GET_LUOUT('ASCII ',NLUOUT) 00067 ! 00068 NUNIT=9 00069 ! 00070 OPEN(UNIT=NUNIT,FILE=TRIM(HFILE)//'.txt',FORM='FORMATTED') 00071 ! 00072 CMASK = HMASK 00073 CALL READ_SURF('ASCII ','DIM_FULL',NFULL,IRET) 00074 ALLOCATE(NMASK(NFULL)) 00075 ALLOCATE(ZFULL(NFULL)) 00076 ZFULL=1. 00077 CALL GET_1D_MASK(NFULL,NFULL,ZFULL,NMASK) 00078 DEALLOCATE(ZFULL) 00079 ! 00080 !------------------------------------------------------------------------------ 00081 CMASK = HMASK 00082 IF (LHOOK) CALL DR_HOOK('OPEN_AUX_IO_SURF_ASC',1,ZHOOK_HANDLE) 00083 !------------------------------------------------------------------------------- 00084 ! 00085 END SUBROUTINE OPEN_AUX_IO_SURF_ASC