SURFEX v7.3
General documentation of Surfex
|
00001 ! ################ 00002 MODULE MODD_BLD_DESCRIPTION 00003 ! ################ 00004 ! 00005 !!**** *MODD_BLD_DESCRIPTION - declaration of surface parameters for typical 00006 ! buildings 00007 !! 00008 !! PURPOSE 00009 !! ------- 00010 ! Declaration of surface parameters 00011 ! 00012 !! 00013 !!** IMPLICIT ARGUMENTS 00014 !! ------------------ 00015 !! None 00016 !! 00017 !! REFERENCE 00018 !! --------- 00019 !! 00020 !! AUTHOR 00021 !! ------ 00022 !! G. Pigeon *Meteo France* 00023 !! 00024 !! MODIFICATIONS 00025 !! ------------- 00026 !! Original 08/2011 00027 ! 00028 !* 0. DECLARATIONS 00029 ! ------------ 00030 ! 00031 USE YOMHOOK ,ONLY : LHOOK, DR_HOOK 00032 USE PARKIND1 ,ONLY : JPRB 00033 ! 00034 IMPLICIT NONE 00035 00036 TYPE BLD_DESC_t 00037 ! 00038 ! Number of layers 00039 ! 00040 INTEGER :: NDESC_BLD ! number of types of buildings 00041 INTEGER :: NDESC_AGE ! number of building's construction dates ranges 00042 INTEGER :: NDESC_CODE ! number of codes for buildings (merges type & age) 00043 INTEGER :: NDESC_USE ! number of types of building's uses 00044 INTEGER :: NDESC_ROOF_LAYER ! number of layers in roofs 00045 INTEGER :: NDESC_ROAD_LAYER ! number of layers in roads 00046 INTEGER :: NDESC_WALL_LAYER ! number of layers in walls 00047 INTEGER :: NDESC_FLOOR_LAYER ! number of layers in floor 00048 INTEGER, POINTER, DIMENSION(:):: NDESC_BLD_LIST ! list of the types for buildings 00049 INTEGER, POINTER, DIMENSION(:):: NDESC_AGE_DATE ! list of the contruction dates for buildings 00050 INTEGER, POINTER, DIMENSION(:):: NDESC_CODE_LIST ! list of the codes for buildings 00051 INTEGER, POINTER, DIMENSION(:):: NDESC_AGE_LIST ! list of the contruction dates' codes 00052 INTEGER, POINTER, DIMENSION(:):: NDESC_USE_LIST ! list of the codes for building's uses 00053 ! 00054 REAL, POINTER, DIMENSION(:) :: XDESC_ALB_ROOF ! Roof albedo 00055 REAL, POINTER, DIMENSION(:) :: XDESC_ALB_ROAD ! Road albedo 00056 REAL, POINTER, DIMENSION(:) :: XDESC_ALB_WALL ! Wall albedo 00057 REAL, POINTER, DIMENSION(:) :: XDESC_EMIS_ROOF ! Roof emissivity 00058 REAL, POINTER, DIMENSION(:) :: XDESC_EMIS_ROAD ! Road emissivity 00059 REAL, POINTER, DIMENSION(:) :: XDESC_EMIS_WALL ! Wall emissivity 00060 REAL, POINTER, DIMENSION(:) :: XDESC_TCOOL_TARGET ! cooling setpoint of indoor air 00061 REAL, POINTER, DIMENSION(:) :: XDESC_THEAT_TARGET ! heating setpoint of indoor air 00062 REAL, POINTER, DIMENSION(:) :: XDESC_F_WASTE_CAN ! fraction of waste heat into the canyon 00063 REAL, POINTER, DIMENSION(:) :: XDESC_EFF_HEAT ! efficiency of the heating system 00064 REAL, POINTER, DIMENSION(:,:) :: XDESC_HC_FLOOR ! heat capacity of floor layers [J m-3 K-1] 00065 REAL, POINTER, DIMENSION(:,:) :: XDESC_TC_FLOOR ! thermal conductivity of floor layers [W m-1 K-1] 00066 REAL, POINTER, DIMENSION(:,:) :: XDESC_D_FLOOR ! thickness of floor layers [m] 00067 REAL, POINTER, DIMENSION(:,:) :: XDESC_HC_ROOF ! heat capacity of roof layers [J m-3 K-1] 00068 REAL, POINTER, DIMENSION(:,:) :: XDESC_TC_ROOF ! thermal conductivity of roof layers [W m-1 K-1] 00069 REAL, POINTER, DIMENSION(:,:) :: XDESC_D_ROOF ! thickness of roof layers [m] 00070 REAL, POINTER, DIMENSION(:,:) :: XDESC_HC_ROAD ! heat capacity of road layers [J m-3 K-1] 00071 REAL, POINTER, DIMENSION(:,:) :: XDESC_TC_ROAD ! thermal conductivity of road layers [W m-1 K-1] 00072 REAL, POINTER, DIMENSION(:,:) :: XDESC_D_ROAD ! thickness of road layers [m] 00073 REAL, POINTER, DIMENSION(:,:) :: XDESC_HC_WALL ! heat capacity of wall layers [J m-3 K-1] 00074 REAL, POINTER, DIMENSION(:,:) :: XDESC_TC_WALL ! thermal conductivity of wall layers [W m-1 K-1] 00075 REAL, POINTER, DIMENSION(:,:) :: XDESC_D_WALL ! thickness of wall layers [m] 00076 REAL, POINTER, DIMENSION(:) :: XDESC_QIN ! internal heat gains [W m-2(floor)] 00077 REAL, POINTER, DIMENSION(:) :: XDESC_QIN_FRAD ! radiant fraction of internal heat gains 00078 REAL, POINTER, DIMENSION(:) :: XDESC_SHGC ! solar transmitance of windows 00079 REAL, POINTER, DIMENSION(:) :: XDESC_U_WIN ! glazing thermal resistance [K m W-2] 00080 REAL, POINTER, DIMENSION(:) :: XDESC_GR ! glazing ratio 00081 REAL, POINTER, DIMENSION(:) :: XDESC_SHGC_SH ! solar transmitance of windows + shading 00082 REAL, POINTER, DIMENSION(:) :: XDESC_FLOOR_HEIGHT ! building floor height [m] 00083 REAL, POINTER, DIMENSION(:) :: XDESC_INF ! infiltration/ventilation flow rate [AC/H] 00084 ! 00085 REAL, POINTER, DIMENSION(:) :: XDESC_F_WATER_COND ! fraction of evaporation for condensers 00086 REAL, POINTER, DIMENSION(:) :: XDESC_SHADE ! Flag to activate shading devices 0->inactivated , 1->activated 00087 REAL, POINTER, DIMENSION(:) :: XDESC_NATVENT ! Flag to describe bld surventilation solution 0-> NONE ; 1 -> MANU ; 2-> AUTO 00088 REAL, POINTER, DIMENSION(:) :: XDESC_QIN_FLAT ! Latent franction of internal heat gains 00089 REAL, POINTER, DIMENSION(:) :: XDESC_HR_TARGET ! Relative humidity setpoint 00090 REAL, POINTER, DIMENSION(:) :: XDESC_V_VENT ! Ventilation flow rate [AC/H] 00091 REAL, POINTER, DIMENSION(:) :: XDESC_COP_RAT ! Rated COP of the cooling system 00092 REAL, POINTER, DIMENSION(:) :: XDESC_GREENROOF ! Greenroof fraction 00093 ! 00094 END TYPE BLD_DESC_t 00095 00096 TYPE(BLD_DESC_t), ALLOCATABLE, TARGET, SAVE :: BLD_DESC_MODEL(:) 00097 ! 00098 INTEGER, POINTER :: NDESC_BLD=>NULL() 00099 !$OMP THREADPRIVATE(NDESC_BLD) 00100 INTEGER, POINTER :: NDESC_AGE=>NULL() 00101 !$OMP THREADPRIVATE(NDESC_AGE) 00102 INTEGER, POINTER :: NDESC_CODE=>NULL() 00103 !$OMP THREADPRIVATE(NDESC_CODE) 00104 INTEGER, POINTER :: NDESC_USE=>NULL() 00105 !$OMP THREADPRIVATE(NDESC_USE) 00106 INTEGER, POINTER :: NDESC_ROOF_LAYER=>NULL() 00107 !$OMP THREADPRIVATE(NDESC_ROOF_LAYER) 00108 INTEGER, POINTER :: NDESC_ROAD_LAYER=>NULL() 00109 !$OMP THREADPRIVATE(NDESC_ROAD_LAYER) 00110 INTEGER, POINTER :: NDESC_WALL_LAYER=>NULL() 00111 !$OMP THREADPRIVATE(NDESC_WALL_LAYER) 00112 INTEGER, POINTER :: NDESC_FLOOR_LAYER=>NULL() 00113 !$OMP THREADPRIVATE(NDESC_FLOOR_LAYER) 00114 INTEGER, POINTER, DIMENSION(:):: NDESC_BLD_LIST=>NULL() 00115 !$OMP THREADPRIVATE(NDESC_BLD_LIST) 00116 INTEGER, POINTER, DIMENSION(:):: NDESC_AGE_LIST=>NULL() 00117 !$OMP THREADPRIVATE(NDESC_AGE_LIST) 00118 INTEGER, POINTER, DIMENSION(:):: NDESC_CODE_LIST=>NULL() 00119 !$OMP THREADPRIVATE(NDESC_CODE_LIST) 00120 INTEGER, POINTER, DIMENSION(:):: NDESC_AGE_DATE=>NULL() 00121 !$OMP THREADPRIVATE(NDESC_AGE_DATE) 00122 INTEGER, POINTER, DIMENSION(:):: NDESC_USE_LIST=>NULL() 00123 !$OMP THREADPRIVATE(NDESC_USE_LIST) 00124 REAL, POINTER, DIMENSION(:) :: XDESC_ALB_ROOF=>NULL() 00125 !$OMP THREADPRIVATE(XDESC_ALB_ROOF) 00126 REAL, POINTER, DIMENSION(:) :: XDESC_ALB_ROAD=>NULL() 00127 !$OMP THREADPRIVATE(XDESC_ALB_ROAD) 00128 REAL, POINTER, DIMENSION(:) :: XDESC_ALB_WALL=>NULL() 00129 !$OMP THREADPRIVATE(XDESC_ALB_WALL) 00130 REAL, POINTER, DIMENSION(:) :: XDESC_EMIS_ROOF=>NULL() 00131 !$OMP THREADPRIVATE(XDESC_EMIS_ROOF) 00132 REAL, POINTER, DIMENSION(:) :: XDESC_EMIS_ROAD=>NULL() 00133 !$OMP THREADPRIVATE(XDESC_EMIS_ROAD) 00134 REAL, POINTER, DIMENSION(:) :: XDESC_EMIS_WALL=>NULL() 00135 !$OMP THREADPRIVATE(XDESC_EMIS_WALL) 00136 REAL, POINTER, DIMENSION(:) :: XDESC_TCOOL_TARGET=>NULL() 00137 !$OMP THREADPRIVATE(XDESC_TCOOL_TARGET) 00138 REAL, POINTER, DIMENSION(:) :: XDESC_THEAT_TARGET=>NULL() 00139 !$OMP THREADPRIVATE(XDESC_THEAT_TARGET) 00140 REAL, POINTER, DIMENSION(:) :: XDESC_F_WASTE_CAN=>NULL() 00141 !$OMP THREADPRIVATE(XDESC_F_WASTE_CAN) 00142 REAL, POINTER, DIMENSION(:) :: XDESC_EFF_HEAT=>NULL() 00143 !$OMP THREADPRIVATE(XDESC_EFF_HEAT) 00144 REAL, POINTER, DIMENSION(:,:) :: XDESC_HC_FLOOR=>NULL() 00145 !$OMP THREADPRIVATE(XDESC_HC_FLOOR) 00146 REAL, POINTER, DIMENSION(:,:) :: XDESC_TC_FLOOR=>NULL() 00147 !$OMP THREADPRIVATE(XDESC_TC_FLOOR) 00148 REAL, POINTER, DIMENSION(:,:) :: XDESC_D_FLOOR=>NULL() 00149 !$OMP THREADPRIVATE(XDESC_D_FLOOR) 00150 REAL, POINTER, DIMENSION(:,:) :: XDESC_HC_ROOF=>NULL() 00151 !$OMP THREADPRIVATE(XDESC_HC_ROOF) 00152 REAL, POINTER, DIMENSION(:,:) :: XDESC_TC_ROOF=>NULL() 00153 !$OMP THREADPRIVATE(XDESC_TC_ROOF) 00154 REAL, POINTER, DIMENSION(:,:) :: XDESC_D_ROOF=>NULL() 00155 !$OMP THREADPRIVATE(XDESC_D_ROOF) 00156 REAL, POINTER, DIMENSION(:,:) :: XDESC_HC_ROAD=>NULL() 00157 !$OMP THREADPRIVATE(XDESC_HC_ROAD) 00158 REAL, POINTER, DIMENSION(:,:) :: XDESC_TC_ROAD=>NULL() 00159 !$OMP THREADPRIVATE(XDESC_TC_ROAD) 00160 REAL, POINTER, DIMENSION(:,:) :: XDESC_D_ROAD=>NULL() 00161 !$OMP THREADPRIVATE(XDESC_D_ROAD) 00162 REAL, POINTER, DIMENSION(:,:) :: XDESC_HC_WALL=>NULL() 00163 !$OMP THREADPRIVATE(XDESC_HC_WALL) 00164 REAL, POINTER, DIMENSION(:,:) :: XDESC_TC_WALL=>NULL() 00165 !$OMP THREADPRIVATE(XDESC_TC_WALL) 00166 REAL, POINTER, DIMENSION(:,:) :: XDESC_D_WALL=>NULL() 00167 !$OMP THREADPRIVATE(XDESC_D_WALL) 00168 REAL, POINTER, DIMENSION(:) :: XDESC_QIN=>NULL() 00169 !$OMP THREADPRIVATE(XDESC_QIN) 00170 REAL, POINTER, DIMENSION(:) :: XDESC_QIN_FRAD=>NULL() 00171 !$OMP THREADPRIVATE(XDESC_QIN_FRAD) 00172 REAL, POINTER, DIMENSION(:) :: XDESC_SHGC=>NULL() 00173 !$OMP THREADPRIVATE(XDESC_SHGC) 00174 REAL, POINTER, DIMENSION(:) :: XDESC_U_WIN=>NULL() 00175 !$OMP THREADPRIVATE(XDESC_U_WIN) 00176 REAL, POINTER, DIMENSION(:) :: XDESC_GR=>NULL() 00177 !$OMP THREADPRIVATE(XDESC_GR) 00178 REAL, POINTER, DIMENSION(:) :: XDESC_SHGC_SH=>NULL() 00179 !$OMP THREADPRIVATE(XDESC_SHGC_SH) 00180 REAL, POINTER, DIMENSION(:) :: XDESC_FLOOR_HEIGHT=>NULL() 00181 !$OMP THREADPRIVATE(XDESC_FLOOR_HEIGHT) 00182 REAL, POINTER, DIMENSION(:) :: XDESC_INF=>NULL() 00183 !$OMP THREADPRIVATE(XDESC_INF) 00184 REAL, POINTER, DIMENSION(:):: XDESC_SHADE=>NULL() 00185 !$OMP THREADPRIVATE(XDESC_SHADE) 00186 REAL, POINTER, DIMENSION(:) :: XDESC_NATVENT=>NULL() 00187 !$OMP THREADPRIVATE(XDESC_NATVENT) 00188 REAL, POINTER, DIMENSION(:) :: XDESC_F_WATER_COND=>NULL() 00189 !$OMP THREADPRIVATE(XDESC_F_WATER_COND) 00190 REAL, POINTER, DIMENSION(:) :: XDESC_QIN_FLAT=>NULL() 00191 !$OMP THREADPRIVATE(XDESC_QIN_FLAT) 00192 REAL, POINTER, DIMENSION(:) :: XDESC_HR_TARGET=>NULL() 00193 !$OMP THREADPRIVATE(XDESC_HR_TARGET) 00194 REAL, POINTER, DIMENSION(:) :: XDESC_V_VENT=>NULL() 00195 !$OMP THREADPRIVATE(XDESC_V_VENT) 00196 REAL, POINTER, DIMENSION(:) :: XDESC_COP_RAT=>NULL() 00197 !$OMP THREADPRIVATE(XDESC_COP_RAT) 00198 REAL, POINTER, DIMENSION(:) :: XDESC_GREENROOF=>NULL() 00199 !$OMP THREADPRIVATE(XDESC_GREENROOF) 00200 ! 00201 CONTAINS 00202 00203 SUBROUTINE BLD_DESC_GOTO_MODEL(KFROM, KTO, LKFROM) 00204 INTEGER, INTENT(IN) :: KFROM, KTO 00205 LOGICAL, INTENT(IN) :: LKFROM 00206 REAL(KIND=JPRB) :: ZHOOK_HANDLE 00207 ! 00208 ! Save current state for allocated arrays 00209 ! 00210 IF (LKFROM) THEN 00211 BLD_DESC_MODEL(KFROM)%NDESC_BLD_LIST=>NDESC_BLD_LIST 00212 BLD_DESC_MODEL(KFROM)%NDESC_AGE_LIST=>NDESC_AGE_LIST 00213 BLD_DESC_MODEL(KFROM)%NDESC_CODE_LIST=>NDESC_CODE_LIST 00214 BLD_DESC_MODEL(KFROM)%NDESC_AGE_DATE=>NDESC_AGE_DATE 00215 BLD_DESC_MODEL(KFROM)%NDESC_USE_LIST=>NDESC_USE_LIST 00216 BLD_DESC_MODEL(KFROM)%XDESC_ALB_ROOF=>XDESC_ALB_ROOF 00217 BLD_DESC_MODEL(KFROM)%XDESC_ALB_ROAD=>XDESC_ALB_ROAD 00218 BLD_DESC_MODEL(KFROM)%XDESC_ALB_WALL=>XDESC_ALB_WALL 00219 BLD_DESC_MODEL(KFROM)%XDESC_EMIS_ROOF=>XDESC_EMIS_ROOF 00220 BLD_DESC_MODEL(KFROM)%XDESC_EMIS_ROAD=>XDESC_EMIS_ROAD 00221 BLD_DESC_MODEL(KFROM)%XDESC_EMIS_WALL=>XDESC_EMIS_WALL 00222 BLD_DESC_MODEL(KFROM)%XDESC_TCOOL_TARGET=>XDESC_TCOOL_TARGET 00223 BLD_DESC_MODEL(KFROM)%XDESC_THEAT_TARGET=>XDESC_THEAT_TARGET 00224 BLD_DESC_MODEL(KFROM)%XDESC_F_WASTE_CAN=>XDESC_F_WASTE_CAN 00225 BLD_DESC_MODEL(KFROM)%XDESC_EFF_HEAT=>XDESC_EFF_HEAT 00226 BLD_DESC_MODEL(KFROM)%XDESC_HC_FLOOR=>XDESC_HC_FLOOR 00227 BLD_DESC_MODEL(KFROM)%XDESC_TC_FLOOR=>XDESC_TC_FLOOR 00228 BLD_DESC_MODEL(KFROM)%XDESC_D_FLOOR=>XDESC_D_FLOOR 00229 BLD_DESC_MODEL(KFROM)%XDESC_HC_ROOF=>XDESC_HC_ROOF 00230 BLD_DESC_MODEL(KFROM)%XDESC_TC_ROOF=>XDESC_TC_ROOF 00231 BLD_DESC_MODEL(KFROM)%XDESC_D_ROOF=>XDESC_D_ROOF 00232 BLD_DESC_MODEL(KFROM)%XDESC_HC_ROAD=>XDESC_HC_ROAD 00233 BLD_DESC_MODEL(KFROM)%XDESC_TC_ROAD=>XDESC_TC_ROAD 00234 BLD_DESC_MODEL(KFROM)%XDESC_D_ROAD=>XDESC_D_ROAD 00235 BLD_DESC_MODEL(KFROM)%XDESC_HC_WALL=>XDESC_HC_WALL 00236 BLD_DESC_MODEL(KFROM)%XDESC_TC_WALL=>XDESC_TC_WALL 00237 BLD_DESC_MODEL(KFROM)%XDESC_D_WALL=>XDESC_D_WALL 00238 BLD_DESC_MODEL(KFROM)%XDESC_QIN=>XDESC_QIN 00239 BLD_DESC_MODEL(KFROM)%XDESC_QIN_FRAD=>XDESC_QIN_FRAD 00240 BLD_DESC_MODEL(KFROM)%XDESC_SHGC=>XDESC_SHGC 00241 BLD_DESC_MODEL(KFROM)%XDESC_U_WIN=>XDESC_U_WIN 00242 BLD_DESC_MODEL(KFROM)%XDESC_GR=>XDESC_GR 00243 BLD_DESC_MODEL(KFROM)%XDESC_SHGC_SH=>XDESC_SHGC_SH 00244 BLD_DESC_MODEL(KFROM)%XDESC_FLOOR_HEIGHT=>XDESC_FLOOR_HEIGHT 00245 BLD_DESC_MODEL(KFROM)%XDESC_INF=>XDESC_INF 00246 ! 00247 BLD_DESC_MODEL(KFROM)%XDESC_QIN_FLAT=>XDESC_QIN_FLAT 00248 BLD_DESC_MODEL(KFROM)%XDESC_HR_TARGET=>XDESC_HR_TARGET 00249 BLD_DESC_MODEL(KFROM)%XDESC_V_VENT=>XDESC_V_VENT 00250 BLD_DESC_MODEL(KFROM)%XDESC_COP_RAT=>XDESC_COP_RAT 00251 BLD_DESC_MODEL(KFROM)%XDESC_GREENROOF=>XDESC_GREENROOF 00252 BLD_DESC_MODEL(KFROM)%XDESC_F_WATER_COND=>XDESC_F_WATER_COND 00253 BLD_DESC_MODEL(KFROM)%XDESC_SHADE=>XDESC_SHADE 00254 BLD_DESC_MODEL(KFROM)%XDESC_NATVENT=>XDESC_NATVENT 00255 ENDIF 00256 ! 00257 ! Current model is set to model KTO 00258 ! 00259 IF (LHOOK) CALL DR_HOOK('MODD_BLD_DESCRIPTION:BLD_DESC_GOTO_MODEL',0,ZHOOK_HANDLE) 00260 NDESC_BLD=>BLD_DESC_MODEL(KTO)%NDESC_BLD 00261 NDESC_AGE=>BLD_DESC_MODEL(KTO)%NDESC_AGE 00262 NDESC_CODE=>BLD_DESC_MODEL(KTO)%NDESC_CODE 00263 NDESC_USE=>BLD_DESC_MODEL(KTO)%NDESC_USE 00264 NDESC_ROOF_LAYER=>BLD_DESC_MODEL(KTO)%NDESC_ROOF_LAYER 00265 NDESC_ROAD_LAYER=>BLD_DESC_MODEL(KTO)%NDESC_ROAD_LAYER 00266 NDESC_WALL_LAYER=>BLD_DESC_MODEL(KTO)%NDESC_WALL_LAYER 00267 NDESC_FLOOR_LAYER=>BLD_DESC_MODEL(KTO)%NDESC_FLOOR_LAYER 00268 NDESC_BLD_LIST=>BLD_DESC_MODEL(KTO)%NDESC_BLD_LIST 00269 NDESC_AGE_LIST=>BLD_DESC_MODEL(KTO)%NDESC_AGE_LIST 00270 NDESC_CODE_LIST=>BLD_DESC_MODEL(KTO)%NDESC_CODE_LIST 00271 NDESC_AGE_DATE=>BLD_DESC_MODEL(KTO)%NDESC_AGE_DATE 00272 NDESC_USE_LIST=>BLD_DESC_MODEL(KTO)%NDESC_USE_LIST 00273 XDESC_ALB_ROOF=>BLD_DESC_MODEL(KTO)%XDESC_ALB_ROOF 00274 XDESC_ALB_ROAD=>BLD_DESC_MODEL(KTO)%XDESC_ALB_ROAD 00275 XDESC_ALB_WALL=>BLD_DESC_MODEL(KTO)%XDESC_ALB_WALL 00276 XDESC_EMIS_ROOF=>BLD_DESC_MODEL(KTO)%XDESC_EMIS_ROOF 00277 XDESC_EMIS_ROAD=>BLD_DESC_MODEL(KTO)%XDESC_EMIS_ROAD 00278 XDESC_EMIS_WALL=>BLD_DESC_MODEL(KTO)%XDESC_EMIS_WALL 00279 XDESC_TCOOL_TARGET=>BLD_DESC_MODEL(KTO)%XDESC_TCOOL_TARGET 00280 XDESC_THEAT_TARGET=>BLD_DESC_MODEL(KTO)%XDESC_THEAT_TARGET 00281 XDESC_F_WASTE_CAN=>BLD_DESC_MODEL(KTO)%XDESC_F_WASTE_CAN 00282 XDESC_EFF_HEAT=>BLD_DESC_MODEL(KTO)%XDESC_EFF_HEAT 00283 XDESC_HC_FLOOR=>BLD_DESC_MODEL(KTO)%XDESC_HC_FLOOR 00284 XDESC_TC_FLOOR=>BLD_DESC_MODEL(KTO)%XDESC_TC_FLOOR 00285 XDESC_D_FLOOR=>BLD_DESC_MODEL(KTO)%XDESC_D_FLOOR 00286 XDESC_HC_ROOF=>BLD_DESC_MODEL(KTO)%XDESC_HC_ROOF 00287 XDESC_TC_ROOF=>BLD_DESC_MODEL(KTO)%XDESC_TC_ROOF 00288 XDESC_D_ROOF=>BLD_DESC_MODEL(KTO)%XDESC_D_ROOF 00289 XDESC_HC_ROAD=>BLD_DESC_MODEL(KTO)%XDESC_HC_ROAD 00290 XDESC_TC_ROAD=>BLD_DESC_MODEL(KTO)%XDESC_TC_ROAD 00291 XDESC_D_ROAD=>BLD_DESC_MODEL(KTO)%XDESC_D_ROAD 00292 XDESC_HC_WALL=>BLD_DESC_MODEL(KTO)%XDESC_HC_WALL 00293 XDESC_TC_WALL=>BLD_DESC_MODEL(KTO)%XDESC_TC_WALL 00294 XDESC_D_WALL=>BLD_DESC_MODEL(KTO)%XDESC_D_WALL 00295 XDESC_QIN=>BLD_DESC_MODEL(KTO)%XDESC_QIN 00296 XDESC_QIN_FRAD=>BLD_DESC_MODEL(KTO)%XDESC_QIN_FRAD 00297 XDESC_SHGC=>BLD_DESC_MODEL(KTO)%XDESC_SHGC 00298 XDESC_U_WIN=>BLD_DESC_MODEL(KTO)%XDESC_U_WIN 00299 XDESC_GR=>BLD_DESC_MODEL(KTO)%XDESC_GR 00300 XDESC_SHGC_SH=>BLD_DESC_MODEL(KTO)%XDESC_SHGC_SH 00301 XDESC_FLOOR_HEIGHT=>BLD_DESC_MODEL(KTO)%XDESC_FLOOR_HEIGHT 00302 XDESC_INF=>BLD_DESC_MODEL(KTO)%XDESC_INF 00303 XDESC_SHADE=>BLD_DESC_MODEL(KTO)%XDESC_SHADE 00304 XDESC_NATVENT=>BLD_DESC_MODEL(KTO)%XDESC_NATVENT 00305 XDESC_F_WATER_COND=>BLD_DESC_MODEL(KTO)%XDESC_F_WATER_COND 00306 XDESC_QIN_FLAT=>BLD_DESC_MODEL(KTO)%XDESC_QIN_FLAT 00307 XDESC_HR_TARGET=>BLD_DESC_MODEL(KTO)%XDESC_HR_TARGET 00308 XDESC_V_VENT=>BLD_DESC_MODEL(KTO)%XDESC_V_VENT 00309 XDESC_COP_RAT=>BLD_DESC_MODEL(KTO)%XDESC_COP_RAT 00310 XDESC_GREENROOF=>BLD_DESC_MODEL(KTO)%XDESC_GREENROOF 00311 IF (LHOOK) CALL DR_HOOK('MODD_BLD_DESCRIPTION:BLD_DESC_GOTO_MODEL',1,ZHOOK_HANDLE) 00312 ! 00313 END SUBROUTINE BLD_DESC_GOTO_MODEL 00314 ! 00315 SUBROUTINE BLD_DESC_ALLOC(KMODEL) 00316 INTEGER, INTENT(IN) :: KMODEL 00317 INTEGER :: J 00318 REAL(KIND=JPRB) :: ZHOOK_HANDLE 00319 IF (LHOOK) CALL DR_HOOK("MODD_BLD_DESCRIPTION:BLD_DESC_ALLOC",0,ZHOOK_HANDLE) 00320 ALLOCATE(BLD_DESC_MODEL(KMODEL)) 00321 DO J=1,KMODEL 00322 NULLIFY(BLD_DESC_MODEL(J)%NDESC_BLD_LIST) 00323 NULLIFY(BLD_DESC_MODEL(J)%NDESC_CODE_LIST) 00324 NULLIFY(BLD_DESC_MODEL(J)%NDESC_AGE_LIST) 00325 NULLIFY(BLD_DESC_MODEL(J)%NDESC_AGE_DATE) 00326 NULLIFY(BLD_DESC_MODEL(J)%NDESC_USE_LIST) 00327 NULLIFY(BLD_DESC_MODEL(J)%XDESC_ALB_ROOF) 00328 NULLIFY(BLD_DESC_MODEL(J)%XDESC_ALB_ROAD) 00329 NULLIFY(BLD_DESC_MODEL(J)%XDESC_ALB_WALL) 00330 NULLIFY(BLD_DESC_MODEL(J)%XDESC_EMIS_ROOF) 00331 NULLIFY(BLD_DESC_MODEL(J)%XDESC_EMIS_ROAD) 00332 NULLIFY(BLD_DESC_MODEL(J)%XDESC_EMIS_WALL) 00333 NULLIFY(BLD_DESC_MODEL(J)%XDESC_TCOOL_TARGET) 00334 NULLIFY(BLD_DESC_MODEL(J)%XDESC_THEAT_TARGET) 00335 NULLIFY(BLD_DESC_MODEL(J)%XDESC_F_WASTE_CAN) 00336 NULLIFY(BLD_DESC_MODEL(J)%XDESC_EFF_HEAT) 00337 NULLIFY(BLD_DESC_MODEL(J)%XDESC_HC_FLOOR) 00338 NULLIFY(BLD_DESC_MODEL(J)%XDESC_TC_FLOOR) 00339 NULLIFY(BLD_DESC_MODEL(J)%XDESC_D_FLOOR) 00340 NULLIFY(BLD_DESC_MODEL(J)%XDESC_HC_ROOF) 00341 NULLIFY(BLD_DESC_MODEL(J)%XDESC_TC_ROOF) 00342 NULLIFY(BLD_DESC_MODEL(J)%XDESC_D_ROOF) 00343 NULLIFY(BLD_DESC_MODEL(J)%XDESC_HC_ROAD) 00344 NULLIFY(BLD_DESC_MODEL(J)%XDESC_TC_ROAD) 00345 NULLIFY(BLD_DESC_MODEL(J)%XDESC_D_ROAD) 00346 NULLIFY(BLD_DESC_MODEL(J)%XDESC_HC_WALL) 00347 NULLIFY(BLD_DESC_MODEL(J)%XDESC_TC_WALL) 00348 NULLIFY(BLD_DESC_MODEL(J)%XDESC_D_WALL) 00349 NULLIFY(BLD_DESC_MODEL(J)%XDESC_QIN) 00350 NULLIFY(BLD_DESC_MODEL(J)%XDESC_QIN_FRAD) 00351 NULLIFY(BLD_DESC_MODEL(J)%XDESC_SHGC) 00352 NULLIFY(BLD_DESC_MODEL(J)%XDESC_U_WIN) 00353 NULLIFY(BLD_DESC_MODEL(J)%XDESC_GR) 00354 NULLIFY(BLD_DESC_MODEL(J)%XDESC_FLOOR_HEIGHT) 00355 NULLIFY(BLD_DESC_MODEL(J)%XDESC_INF) 00356 NULLIFY(BLD_DESC_MODEL(J)%XDESC_F_WATER_COND) 00357 NULLIFY(BLD_DESC_MODEL(J)%XDESC_QIN_FLAT) 00358 NULLIFY(BLD_DESC_MODEL(J)%XDESC_HR_TARGET) 00359 NULLIFY(BLD_DESC_MODEL(J)%XDESC_V_VENT) 00360 NULLIFY(BLD_DESC_MODEL(J)%XDESC_COP_RAT) 00361 NULLIFY(BLD_DESC_MODEL(J)%XDESC_GREENROOF) 00362 NULLIFY(BLD_DESC_MODEL(J)%XDESC_SHADE) 00363 NULLIFY(BLD_DESC_MODEL(J)%XDESC_NATVENT) 00364 ENDDO 00365 BLD_DESC_MODEL(:)%NDESC_BLD=0 00366 BLD_DESC_MODEL(:)%NDESC_AGE=0 00367 BLD_DESC_MODEL(:)%NDESC_CODE=0 00368 BLD_DESC_MODEL(:)%NDESC_USE=0 00369 BLD_DESC_MODEL(:)%NDESC_ROOF_LAYER=0 00370 BLD_DESC_MODEL(:)%NDESC_ROAD_LAYER=0 00371 BLD_DESC_MODEL(:)%NDESC_WALL_LAYER=0 00372 BLD_DESC_MODEL(:)%NDESC_FLOOR_LAYER=0 00373 IF (LHOOK) CALL DR_HOOK("MODD_BLD_DESCRIPTION:BLD_DESC_ALLOC",1,ZHOOK_HANDLE) 00374 END SUBROUTINE BLD_DESC_ALLOC 00375 ! 00376 SUBROUTINE BLD_DESC_DEALLO 00377 REAL(KIND=JPRB) :: ZHOOK_HANDLE 00378 IF (LHOOK) CALL DR_HOOK("MODD_BLD_DESCRIPTION:BLD_DESC_DEALLO",0,ZHOOK_HANDLE) 00379 IF (ALLOCATED(BLD_DESC_MODEL)) DEALLOCATE(BLD_DESC_MODEL) 00380 IF (LHOOK) CALL DR_HOOK("MODD_BLD_DESCRIPTION:BLD_DESC_DEALLO",1,ZHOOK_HANDLE) 00381 END SUBROUTINE BLD_DESC_DEALLO 00382 ! 00383 END MODULE MODD_BLD_DESCRIPTION