Building model: Difference between revisions
Jump to navigation
Jump to search
(→Calculations: emissions and exposure moved here) |
|||
Line 25: | Line 25: | ||
dependencies = data.frame(Name = c( | dependencies = data.frame(Name = c( | ||
"stockBuildings", # Building stock given as an amount at given timepoints | "stockBuildings", # Building stock given as an amount at given timepoints | ||
" | "heatingShares", # Heating types of current buildings | ||
" | "efficiencyShares", # Energy efficiency types of current buildings | ||
"changeBuildings", # Construction or demolition rate as floor-m2. Indices Efficiency and | "changeBuildings", # Construction or demolition rate as floor-m2. Indices Efficiency and | ||
# Heating should be included here, if used. | # Heating should be included here, if used. | ||
Line 37: | Line 37: | ||
formula = function(...) { | formula = function(...) { | ||
# Current building stock | # Current building stock | ||
stock <- stockBuildings * | stock <- stockBuildings * heatingShares * efficiencyShares | ||
if(!"Eventyear" %in% colnames(stock@output)) { # Make a duplicate of Time because Eventyear is needed later. | |||
stock <- stock * Ovariable(output = data.frame(Eventyear = NA, Result = 1), marginal = c(TRUE, FALSE)) | |||
stock@output$Eventyear <- stock@output$Time | |||
} | |||
# # Annual changes of floor amount in time multiplied by time, fraction of energy classes and heating types. | |||
# timelength <- Ovariable( | |||
# output = data.frame( | |||
# obsyear, | |||
# Result = c(diff(obsyear[[1]]), 0) | |||
# ), | |||
# marginal = c(TRUE, FALSE) | |||
# ) | |||
change <- changeBuildings * timelength | change <- changeBuildings * timelength | ||
change <- timepoints(change, obsyear) # Cumulative changes at certain timepoints. | change <- timepoints(change, obsyear, sumtimecol = FALSE) # Cumulative changes at certain timepoints. | ||
stock@output <- orbind(stock, change) | stock@output <- orbind(stock, change) | ||
Line 111: | Line 116: | ||
) | ) | ||
objects.store(buildings, heatingEnergy) | ####### Calculate emissions | ||
emissions <- Ovariable("emissions", | |||
dependencies = data.frame( | |||
Name = c( | |||
"heatingEnergy", | |||
"fuelTypes", | |||
"emissionFactors" | |||
) | |||
), | |||
formula = function(...) { | |||
out <- oapply(heatingEnergy, cols = c("Building", "Efficiency"), FUN = sum) | |||
out <- out * fuelTypes * emissionFactors * 3.6 * 1E-9 # convert from kWh /a to MJ /a and mg to ton | |||
out <- unkeep(out * emissionLocations, sources = TRUE, prevresults = TRUE) | |||
out@output$Emission_site <- as.factor(ifelse( | |||
out@output$Emission_site == "At site of consumption", | |||
as.character(out@output$City_area), | |||
as.character(out@output$Emission_site) | |||
)) | |||
out <- oapply( | |||
out, | |||
cols = c("Heating", "Burner", "Fuel", "City_area"), | |||
FUN = sum | |||
) | |||
} | |||
) | |||
#"Emission_site", "Emission_height", | |||
exposure <- Ovariable("exposure", | |||
# emis is in ton /a | |||
# iF = conc (g /m3) * pop (#) * BR (m3 /s) / emis (g /s) <=> conc = emis * iF / BR / pop # conc is the exposure concentration | |||
dependencies = data.frame(Name = c("emis2", "iF", "pop")), | |||
formula = function(...) { | |||
BR <- 20 # Nominal breathing rate (m^3 /d) | |||
BR <- BR / 24 / 3600 # m^3 /s | |||
out <- 1E+12 / 365 / 24 / 3600 # Emission scaling from ton /a to ug /s. | |||
out <- (emis2 * out) * iF / BR / pop # the actual equation | |||
out <- unkeep(out, prevresults = TRUE, sources = TRUE) | |||
return(out) | |||
} | |||
) | |||
objects.store(buildings, heatingEnergy, emissions, exposure) | |||
cat("Saved ovariables buildings, heatingEnergy\n") | cat("Saved ovariables buildings, heatingEnergy, emissions, exposure\n") | ||
</rcode> | </rcode> | ||
Revision as of 20:37, 15 February 2015
Moderator:Jouni (see all) |
|
Upload data
|
Question
How to estimate the size of the building stock of a city, including heating properties, renovations etc? The situation is followed over time, and different policies can be implemented.
Answer
For examples of model use, see Building stock in Kuopio and Climate change policies and health in Kuopio.
Rationale
Calculations
Dependencies
- Exposure to PM2.5 in Finland
- OpasnetUtils/Drafts
- Energy use of buildings
- Ovariables used or produced and example pages where they are used:
- Building stock in Kuopio
- buildingStock, # Current building stock
- renovation, # Percentage of renovations per year
- renovationShares, # Fraction of renovation type when renovation is done.
- construction, # Construction rate in the future
- constructionAreas,
- buildingTypes, # A dummy variable to combine two different indices: Building and Building2
- heatingShares, # Heating types of current buildings
- heatingSharesNew, # Heating types of the buildings in the future
- buildings,
- Energy use of buildings
- energyUse,
- efficienciesNew, # Energy efficiencies in the future
- savingPotential,
- Climate change policies and health in Kuopio
- eventyear, # A dummy variable to combine time periods to numerical time axis.
- efficiencies, # Energy efficiencies of current buildings
- obsyear # Years for which observations are calculated. This requires timepoints function.
- Building stock in Kuopio
See also
- Building stock in Kuopio
- Building stock in Europe
- Building data availability in Kuopio
- Energy balance
- Greenhouse gas emissions in Kuopio
- heande:File:2013 10 29 - Exposure-Response Functions.xlsx
- heande:Health impact assessment framework
- heande:File:2013 10 29 WP6.2 Agreed ER.doc
- heande:Urgenche: Workpackage Exposure, Health, and Well-being
- heande:File:WP6 Deliverable 6 1.doc
- Land use in Kuopio