Changeset 3570 for palm/trunk/SOURCE/chem_emissions_mod.f90
- Timestamp:
- Nov 27, 2018 5:44:21 PM (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SOURCE/chem_emissions_mod.f90
r3483 r3570 27 27 ! ----------------- 28 28 ! $Id$ 29 ! resler: 30 ! Break lines at 132 characters 31 ! 32 ! 3483 2018-11-02 14:19:26Z raasch 29 33 ! bugfix: wrong locations of netCDF directives fixed 30 34 ! … … 704 708 DO ispec = 1 , len_index 705 709 706 IF ( emiss_factor_main(match_spec_input(ispec)) .LT. 0 .AND. emiss_factor_side(match_spec_input(ispec)) .LT. 0 ) THEN 710 IF ( emiss_factor_main(match_spec_input(ispec)) .LT. 0 .AND. & 711 emiss_factor_side(match_spec_input(ispec)) .LT. 0 ) THEN 707 712 708 713 message_string = 'PARAMETERIZED emissions mode selected:' // & … … 1185 1190 1186 1191 !Assign Constant Values of time factors, diurnal time profile for traffic sector: 1187 par_emis_time_factor( : ) = (/ 0.009, 0.004, 0.004, 0.009, 0.029, 0.039, 0.056, 0.053, 0.051, 0.051, 0.052, 0.055, & 1188 0.059, 0.061, 0.064, 0.067, 0.069, 0.069, 0.049, 0.039, 0.039, 0.029, 0.024, 0.019 /) 1192 par_emis_time_factor( : ) = & 1193 (/ 0.009, 0.004, 0.004, 0.009, 0.029, 0.039, 0.056, 0.053, 0.051, 0.051, 0.052, 0.055, & 1194 0.059, 0.061, 0.064, 0.067, 0.069, 0.069, 0.049, 0.039, 0.039, 0.029, 0.024, 0.019 /) 1189 1195 1190 1196 !> in this case allocate time factor each hour in a day … … 1249 1255 !> NOX Compositions 1250 1256 IF (TRIM(spc_names(match_spec_model(ispec)))=="NO") THEN 1251 !> Kg/m2*s kg/m2*s 1252 delta_emis(nys:nyn,nxl:nxr) = emis(nys:nyn,nxl:nxr)*time_factor(icat)*emt_att%nox_comp(icat,1)*con_factor*hour_per_day 1253 1257 !> Kg/m2*s kg/m2*s 1258 delta_emis(nys:nyn,nxl:nxr) = emis(nys:nyn,nxl:nxr)*time_factor(icat)* & 1259 emt_att%nox_comp(icat,1)*con_factor*hour_per_day 1260 1254 1261 emis_distribution(1,nys:nyn,nxl:nxr,ispec)=emis_distribution(1,nys:nyn,nxl:nxr,ispec)+delta_emis(nys:nyn,nxl:nxr) 1255 1262 1256 1263 ELSE IF (TRIM(spc_names(match_spec_model(ispec)))=="NO2") THEN 1257 1258 delta_emis(nys:nyn,nxl:nxr) = emis(nys:nyn,nxl:nxr)*time_factor(icat)*emt_att%nox_comp(icat,2)*con_factor*hour_per_day 1264 1265 delta_emis(nys:nyn,nxl:nxr) = emis(nys:nyn,nxl:nxr)*time_factor(icat)* & 1266 emt_att%nox_comp(icat,2)*con_factor*hour_per_day 1259 1267 1260 1268 emis_distribution(1,nys:nyn,nxl:nxr,ispec)=emis_distribution(1,nys:nyn,nxl:nxr,ispec)+delta_emis(nys:nyn,nxl:nxr) 1261 1269 1262 1270 !> SOX Compositions 1263 1271 1264 1272 ELSE IF (TRIM(spc_names(match_spec_model(ispec)))=="SO2") THEN 1265 !> Kg/m2*s kg/m2*s 1266 delta_emis(nys:nyn,nxl:nxr) = emis(nys:nyn,nxl:nxr)*time_factor(icat)*emt_att%sox_comp(icat,1)*con_factor*hour_per_day 1273 !> Kg/m2*s kg/m2*s 1274 delta_emis(nys:nyn,nxl:nxr) = emis(nys:nyn,nxl:nxr)*time_factor(icat)* & 1275 emt_att%sox_comp(icat,1)*con_factor*hour_per_day 1267 1276 1268 1277 emis_distribution(1,nys:nyn,nxl:nxr,ispec)=emis_distribution(1,nys:nyn,nxl:nxr,ispec)+delta_emis(nys:nyn,nxl:nxr) 1269 1278 1270 1279 ELSE IF (TRIM(spc_names(match_spec_model(ispec)))=="SO4") THEN 1271 !> Kg/m2*s kg/m2*s 1272 delta_emis(nys:nyn,nxl:nxr) = emis(nys:nyn,nxl:nxr)*time_factor(icat)*emt_att%sox_comp(icat,2)*con_factor*hour_per_day 1280 !> Kg/m2*s kg/m2*s 1281 delta_emis(nys:nyn,nxl:nxr) = emis(nys:nyn,nxl:nxr)*time_factor(icat)* & 1282 emt_att%sox_comp(icat,2)*con_factor*hour_per_day 1273 1283 1274 1284 emis_distribution(1,nys:nyn,nxl:nxr,ispec)=emis_distribution(1,nys:nyn,nxl:nxr,ispec)+delta_emis(nys:nyn,nxl:nxr) … … 1282 1292 DO i_pm_comp= 1,SIZE(emt_att%pm_comp(1,:,1)) 1283 1293 1284 delta_emis(nys:nyn,nxl:nxr) = emis(nys:nyn,nxl:nxr)*time_factor(icat)*emt_att%pm_comp(icat,i_pm_comp,1)*con_factor*hour_per_day 1285 1286 1287 emis_distribution(1,nys:nyn,nxl:nxr,ispec)=emis_distribution(1,nys:nyn,nxl:nxr,ispec)+delta_emis(nys:nyn,nxl:nxr) 1294 delta_emis(nys:nyn,nxl:nxr) = emis(nys:nyn,nxl:nxr)*time_factor(icat)* & 1295 emt_att%pm_comp(icat,i_pm_comp,1)*con_factor*hour_per_day 1296 1297 emis_distribution(1,nys:nyn,nxl:nxr,ispec)=emis_distribution(1,nys:nyn,nxl:nxr,ispec)+ & 1298 delta_emis(nys:nyn,nxl:nxr) 1288 1299 1289 1300 ENDDO … … 1295 1306 DO i_pm_comp= 1,SIZE(emt_att%pm_comp(1,:,2)) 1296 1307 1297 delta_emis(nys:nyn,nxl:nxr) = emis(nys:nyn,nxl:nxr)*time_factor(icat)*emt_att%pm_comp(icat,i_pm_comp,2)*con_factor*hour_per_day 1298 1299 1300 emis_distribution(1,nys:nyn,nxl:nxr,ispec)=emis_distribution(1,nys:nyn,nxl:nxr,ispec)+delta_emis(nys:nyn,nxl:nxr) 1308 delta_emis(nys:nyn,nxl:nxr) = emis(nys:nyn,nxl:nxr)*time_factor(icat)* & 1309 emt_att%pm_comp(icat,i_pm_comp,2)*con_factor*hour_per_day 1310 1311 emis_distribution(1,nys:nyn,nxl:nxr,ispec)=emis_distribution(1,nys:nyn,nxl:nxr,ispec)+ & 1312 delta_emis(nys:nyn,nxl:nxr) 1301 1313 1302 1314 ENDDO … … 1307 1319 !> Cycle over the different pm components for PM10 type 1308 1320 DO i_pm_comp= 1,SIZE(emt_att%pm_comp(1,:,3)) 1309 1310 delta_emis(nys:nyn,nxl:nxr) = emis(nys:nyn,nxl:nxr)*time_factor(icat)*emt_att%pm_comp(icat,i_pm_comp,3)*con_factor*hour_per_day 1311 1312 1313 emis_distribution(1,nys:nyn,nxl:nxr,ispec)=emis_distribution(1,nys:nyn,nxl:nxr,ispec)+delta_emis(nys:nyn,nxl:nxr) 1321 1322 delta_emis(nys:nyn,nxl:nxr) = emis(nys:nyn,nxl:nxr)*time_factor(icat)* & 1323 emt_att%pm_comp(icat,i_pm_comp,3)*con_factor*hour_per_day 1324 1325 emis_distribution(1,nys:nyn,nxl:nxr,ispec)=emis_distribution(1,nys:nyn,nxl:nxr,ispec)+ & 1326 delta_emis(nys:nyn,nxl:nxr) 1314 1327 1315 1328 ENDDO … … 1326 1339 emt_att%voc_comp(icat,match_spec_voc_input(ivoc))*con_factor*hour_per_day 1327 1340 1328 emis_distribution(1,nys:nyn,nxl:nxr,ispec)=emis_distribution(1,nys:nyn,nxl:nxr,ispec)+delta_emis(nys:nyn,nxl:nxr) 1341 emis_distribution(1,nys:nyn,nxl:nxr,ispec)=emis_distribution(1,nys:nyn,nxl:nxr,ispec)+ & 1342 delta_emis(nys:nyn,nxl:nxr) 1329 1343 1330 1344 ENDIF … … 1379 1393 1380 1394 !> PMs are already in mass units: kilograms 1381 IF (TRIM(spc_names(match_spec_model(ispec)))=="PM1" .OR. TRIM(spc_names(match_spec_model(ispec)))=="PM25" & 1395 IF (TRIM(spc_names(match_spec_model(ispec)))=="PM1" & 1396 .OR. TRIM(spc_names(match_spec_model(ispec)))=="PM25" & 1382 1397 .OR. TRIM(spc_names(match_spec_model(ispec)))=="PM10") THEN 1383 1398 1384 ! kg/(m^2*s) *kg/m^3 1399 ! kg/(m^2*s) *kg/m^3 1385 1400 surf_lsm_h%cssws(match_spec_model(ispec),m) = emiss_factor_main(match_spec_input(ispec)) * & 1386 1401 ! kg/(m^2*s) … … 1413 1428 1414 1429 !> PMs are already in mass units: micrograms 1415 IF (TRIM(spc_names(match_spec_model(ispec)))=="PM1" .OR. TRIM(spc_names(match_spec_model(ispec)))=="PM25" & 1430 IF (TRIM(spc_names(match_spec_model(ispec)))=="PM1" & 1431 .OR. TRIM(spc_names(match_spec_model(ispec)))=="PM25" & 1416 1432 .OR. TRIM(spc_names(match_spec_model(ispec)))=="PM10") THEN 1417 1433
Note: See TracChangeset
for help on using the changeset viewer.