SURFEX v7.3
General documentation of Surfex
|
00001 ! ########################################################### 00002 SUBROUTINE ZOOM_PGD_SURF_ATM(HPROGRAM,HINIFILE,HINIFILETYPE,HFILE,HFILETYPE) 00003 ! ########################################################### 00004 00005 !! 00006 !! PURPOSE 00007 !! ------- 00008 !! This program prepares the physiographic data fields. 00009 !! 00010 !! METHOD 00011 !! ------ 00012 !! 00013 !! EXTERNAL 00014 !! -------- 00015 !! 00016 !! 00017 !! IMPLICIT ARGUMENTS 00018 !! ------------------ 00019 !! 00020 !! 00021 !! REFERENCE 00022 !! --------- 00023 !! 00024 !! AUTHOR 00025 !! ------ 00026 !! 00027 !! V. Masson Meteo-France 00028 !! 00029 !! MODIFICATION 00030 !! ------------ 00031 !! 00032 !! Original 13/10/03 00033 !---------------------------------------------------------------------------- 00034 ! 00035 !* 0. DECLARATION 00036 ! ----------- 00037 ! 00038 USE MODD_SURF_ATM_GRID_n, ONLY : CGRID, XGRID_PAR, NGRID_PAR 00039 USE MODD_SURF_ATM_n, ONLY : CNATURE, CSEA, CWATER, CTOWN, & 00040 XSEA, XWATER, & 00041 NDIM_NATURE, NDIM_SEA, & 00042 NDIM_TOWN,NDIM_WATER, & 00043 XNATURE, NDIM_FULL, LGARDEN, & 00044 LECOCLIMAP 00045 USE MODD_CH_SURF_n, ONLY : LCH_EMIS, LRW_CH_EMIS 00046 USE MODD_DUMMY_SURF_FIELDS_n, ONLY : NDUMMY_NBR 00047 ! 00048 USE MODI_INI_CSTS 00049 USE MODI_READ_NAM_WRITE_COVER_TEX 00050 USE MODI_PGD_GRID 00051 USE MODI_OPEN_AUX_IO_SURF 00052 USE MODI_CLOSE_AUX_IO_SURF 00053 USE MODI_READ_SURF 00054 USE MODI_ZOOM_PGD_COVER 00055 USE MODI_ZOOM_PGD_OROGRAPHY 00056 USE MODI_INIT_READ_DATA_COVER 00057 USE MODI_INI_DATA_COVER 00058 USE MODI_SURF_VERSION 00059 USE MODI_ZOOM_PGD_INLAND_WATER 00060 USE MODI_ZOOM_PGD_NATURE 00061 USE MODI_ZOOM_PGD_SEA 00062 USE MODI_ZOOM_PGD_TOWN 00063 USE MODI_READ_COVER_GARDEN 00064 ! 00065 USE YOMHOOK ,ONLY : LHOOK, DR_HOOK 00066 USE PARKIND1 ,ONLY : JPRB 00067 ! 00068 IMPLICIT NONE 00069 ! 00070 !* 0.1 Declaration of dummy arguments 00071 ! ------------------------------ 00072 ! 00073 CHARACTER(LEN=6), INTENT(IN) :: HPROGRAM ! program calling 00074 CHARACTER(LEN=28), INTENT(IN) :: HINIFILE ! input atmospheric file name 00075 CHARACTER(LEN=6), INTENT(IN) :: HINIFILETYPE! input atmospheric file type 00076 CHARACTER(LEN=28), INTENT(IN) :: HFILE ! output atmospheric file name 00077 CHARACTER(LEN=6), INTENT(IN) :: HFILETYPE ! output atmospheric file type 00078 ! 00079 ! 00080 !* 0.2 Declaration of local variables 00081 ! ------------------------------ 00082 ! 00083 INTEGER :: IRESP 00084 REAL(KIND=JPRB) :: ZHOOK_HANDLE 00085 !------------------------------------------------------------------------------ 00086 ! 00087 !* 1. Set default constant values 00088 ! --------------------------- 00089 ! 00090 IF (LHOOK) CALL DR_HOOK('ZOOM_PGD_SURF_ATM',0,ZHOOK_HANDLE) 00091 CALL SURF_VERSION 00092 ! 00093 CALL INI_CSTS 00094 ! 00095 CALL READ_NAM_WRITE_COVER_TEX(HPROGRAM) 00096 ! 00097 !------------------------------------------------------------------------------- 00098 ! 00099 !* 2. Initialisation of output grid and schemes 00100 ! ----------------------------------------- 00101 ! 00102 CALL PGD_GRID(HPROGRAM,HFILE,HFILETYPE,.TRUE.,CGRID,NGRID_PAR,XGRID_PAR) 00103 ! 00104 CALL OPEN_AUX_IO_SURF(HINIFILE,HINIFILETYPE,'FULL ') 00105 CALL READ_SURF(HINIFILETYPE,'SEA', CSEA, IRESP) 00106 CALL READ_SURF(HINIFILETYPE,'NATURE',CNATURE,IRESP) 00107 CALL READ_SURF(HINIFILETYPE,'WATER', CWATER, IRESP) 00108 CALL READ_SURF(HINIFILETYPE,'TOWN', CTOWN, IRESP) 00109 CALL READ_COVER_GARDEN(HINIFILETYPE,LGARDEN) 00110 CALL INIT_READ_DATA_COVER(HPROGRAM) 00111 CALL INI_DATA_COVER 00112 CALL CLOSE_AUX_IO_SURF(HINIFILE,HINIFILETYPE) 00113 ! 00114 !------------------------------------------------------------------------------- 00115 ! 00116 !* 3. surface cover 00117 ! ------------- 00118 ! 00119 CALL ZOOM_PGD_COVER(HPROGRAM,HINIFILE,HINIFILETYPE,LECOCLIMAP) 00120 ! 00121 !------------------------------------------------------------------------------- 00122 ! 00123 !* 4. Orography 00124 ! --------- 00125 ! 00126 CALL ZOOM_PGD_OROGRAPHY(HPROGRAM,XSEA,XWATER,HINIFILE,HINIFILETYPE) 00127 ! 00128 !_______________________________________________________________________________ 00129 ! 00130 !* 5. Additionnal fields for nature scheme 00131 ! ------------------------------------ 00132 ! 00133 IF (NDIM_NATURE>0) & 00134 CALL ZOOM_PGD_NATURE(HPROGRAM,HINIFILE,HINIFILETYPE,HFILE,HFILETYPE,LECOCLIMAP) 00135 !_______________________________________________________________________________ 00136 ! 00137 !* 6. Additionnal fields for town scheme 00138 ! ---------------------------------- 00139 ! 00140 IF (NDIM_TOWN>0) & 00141 CALL ZOOM_PGD_TOWN(HPROGRAM,HINIFILE,HINIFILETYPE,HFILE,HFILETYPE,LECOCLIMAP,LGARDEN) 00142 !_______________________________________________________________________________ 00143 ! 00144 !* 7. Additionnal fields for inland water scheme 00145 ! ------------------------------------------ 00146 ! 00147 IF (NDIM_WATER>0) & 00148 CALL ZOOM_PGD_INLAND_WATER(HPROGRAM,HINIFILE,HINIFILETYPE,HFILE,HFILETYPE) 00149 !_______________________________________________________________________________ 00150 ! 00151 !* 8. Additionnal fields for sea scheme 00152 ! --------------------------------- 00153 ! 00154 IF (NDIM_SEA>0) & 00155 CALL ZOOM_PGD_SEA(HPROGRAM,HINIFILE,HINIFILETYPE,HFILE,HFILETYPE) 00156 ! 00157 !_______________________________________________________________________________ 00158 ! 00159 !* 9. Dummy fields 00160 ! ------------ 00161 ! 00162 NDUMMY_NBR = 0 00163 !_______________________________________________________________________________ 00164 ! 00165 !* 10. Chemical Emission fields 00166 ! ------------------------ 00167 ! 00168 LCH_EMIS = .FALSE. 00169 LRW_CH_EMIS = .FALSE. 00170 IF (LHOOK) CALL DR_HOOK('ZOOM_PGD_SURF_ATM',1,ZHOOK_HANDLE) 00171 !_______________________________________________________________________________ 00172 ! 00173 END SUBROUTINE ZOOM_PGD_SURF_ATM