Energy use of buildings: Difference between revisions
(OpasnetUtils::combine) |
|||
(39 intermediate revisions by 6 users not shown) | |||
Line 1: | Line 1: | ||
<noinclude> | |||
[[Category:Buildings]] | |||
[[Category:Energy]] | |||
{{method|moderator=Marjo}} | |||
</noinclude> | |||
== Question == | |||
How to model the use of energy of buildings based on either annual consumption per floor area, or energy efficiency per floor area per indoor-outdoor temperature difference? | |||
==Answer == | |||
[[File:Energy used in heating in Helsinki.png|thumb|centre|600px|Example of consumer energy demand calculations: energy need in Helsinki from the assessment [[Helsinki energy decision 2015]].]] | |||
An example code for fetching and using the variables. | |||
<rcode embed=1> | |||
## This code is Op_en5488/ on page [[Energy use of buildings]] | |||
library(OpasnetUtils) | |||
objects.latest("Op_en5488", code_name = "EnergyConsumerDemand") # [[Energy use in buildings]] | |||
cat("These ovariables must be obtained from somewhere to use this method:\n") | |||
oprint(EnergyConsumerDemand@dependencies) | |||
</rcode> | |||
== Rationale == | |||
=== Input === | |||
{| {{prettytable}} | |||
|+'''Variables needed to calculate the EnergyConsumerDemand. Note that there are several different methods available, and temperature data is not needed in an annual energy version. | |||
|---- | |||
! Dependencies || Measure || Indices || Missing data | |||
|---- | |||
| buildings (from the model). | |||
| Floor area of the building stock to be heated | |||
| Typical indices: Building, Heating, Efficiency, Renovation | |||
| You can use value 1 to calculate energy need per 1 m<sup>2</sup> floor area. | |||
|---- | |||
| temperene (fairly generic data for a given cultural and climatic area, e.g. from [[Energy use of buildings]]) | |||
| Energy need per floor area and indoor-outdoor temperature difference (W /m<sup>2</sup> /K) | |||
| Required indices: Consumable, Fuel (Commodity). Typical indices: Building, Heating. | |||
| if this data is missing, you can only calculate building stock but nothing further. | |||
|---- | |||
| nontemperene (fairly generic data for a given cultural and climatic area, e.g. from [[Energy use of buildings]]) | |||
| Energy need for hot water and other non-temperature-dependent activities | |||
| Required indices: Consumable, Fuel (Commodity). | |||
| Use 0 to calculate energy demand excluding non-heating energy use. | |||
|---- | |||
| temperatures (location-specific data) | |||
| Average outdoor temperatures for particular temperature bins. | |||
| Reuired indices: Temperature. | |||
| If missing, use the annual energy version. | |||
|---- | |||
| temperdays (location-specific data) | |||
| Number of days per year for particular temperature bins. | |||
| Required indices: Temperature. | |||
| If missing, use the annual energy version. | |||
|---- | |||
| efficiencyRatio (fairly generic data for a cultural and climatic area, e.g. from [[Energy use of buildings]]) | |||
| Relative energy consumption compared with the efficiency group Old. | |||
| Required indices: Efficiency. Typical indices: Time, Building. | |||
| If no data, use 1 as default. | |||
|---- | |||
| renovationRatio (fairly generic data for a cultural and climatic area, e.g. from [[Energy use of buildings]]) | |||
| Relative energy consumption compared with the Renovation location None. | |||
| Required indices: Renovation. Typical indices: Building. | |||
| If no data, use 1 as default. | |||
|} | |||
<noinclude> | |||
=== Annual calculations === | |||
The code below assumes annual energy consumption factors per floor area (kWh /m<sup>2</sup> /a). No temperature data is needed. | |||
<math>Q_{e,r} = \sum_b B_{b,e,r} F_b E_e R_r,</math> | |||
where | |||
* Q = Energy used for heating and cooling (kWh /a) | |||
* B = floor area of a building stock indexed by renovation and efficiency (m<sup>2</sup>) | |||
* F = energy consumption factor (kWh / m<sup>2</sup> /a) | |||
* E = relative efficiency of a building stock based on energy class when built (no unit) | |||
* R = relative efficiency of a building stock based on energy class after renovated (no unit) | |||
* indices used: | |||
** b = building type | |||
** e = efficiency class of building | |||
** r = renovation class of building | |||
<rcode name='energyUseAnnual' label='Initiate energyUse using annual factors (only for developers)' embed=1> | |||
### This code is Op_en5488/energyUseAnnual on page [[Energy use of buildings]]. | |||
library(OpasnetUtils) | |||
== | ### energyUse is the energy consumption due to heating of a given building stock. | ||
energyUse <- Ovariable("energyUse", | |||
dependencies = data.frame( | |||
Name = c( | |||
"energyFactor", | |||
"efficiencyRatio", | |||
"renovationRatio", | |||
"buildings" | |||
), | |||
Ident = c( | |||
"Op_en5488/energyFactor", | |||
"Op_en5488/efficiencyRatio", | |||
"Op_en5488/renovationRatio", | |||
NA | |||
) | |||
), | |||
formula = function(...) { | |||
out <- buildings * energyFactor * efficiencyRatio * renovationRatio | |||
out <- unkeep(out, prevresults = TRUE, sources = TRUE) | |||
out <- oapply(out, cols = c("Building"), FUN = sum) | |||
return(out) | |||
} | |||
) | |||
objects.store(energyUse) | |||
cat("Ovariable energyUse stored.\n") | |||
</rcode> | |||
</noinclude> | |||
=== Temperature-dependent calculations === | |||
The code below assumes energy consumption factors relative to floor area (W /m<sup>2</sup> /K). Local temperature data must be given in either individual or aggregated way. Individual way has temperature data for all timepoints (e.g. days or hours) of the given year, and heatingTime = 1. Aggregated way has a specific Temperature index (e.g. very cold, cold, cool etc) in both ovariables temperature and heatingTime. The ovariable temperature tells what is the actual temperature when it is "very cold", and heatingTime tells how many hours it is "very cold" during the year. | |||
<math>Q_{e,r,t} = \sum_b (B_{b,e,r} U_b (17 - T_t) E_e R_r + W_b) t_t,</math> | |||
where | |||
* Q = Energy used for heating and cooling (kWh /a) | |||
* B = floor area of a building stock indexed by renovation and efficiency (m<sup>2</sup>) | |||
* U = energy consumption factor per floor area for a building type (W /m<sup>2</sup> /K) | |||
* T = temperature outside (assumes that no heating is needed if outside temperature is 17 degrees Celsius) | |||
* E = relative efficiency of a building stock based on energy class when built (no unit) | |||
* R = relative efficiency of a building stock based on energy class after renovated (no unit) | |||
* W = heating need of hot water (W) | |||
* t = time spent in a particular outdoor temperature (h /a) | |||
* indices used: | |||
** b = building type | |||
** e = efficiency class of building | |||
** r = renovation class of building | |||
** t = ambient temperature class | |||
<noinclude> | |||
<rcode name='energyUseTemperature' label='Initiate energyUse using temperature info (only for developers)' embed=1> | |||
### This code is Op_en5488/energyUseTemperature on page [[Energy use of buildings]]. | |||
library(OpasnetUtils) | |||
### EnergyUse of a given building stock when U values are available. | |||
energyUse <- Ovariable("energyUse", | |||
dependencies = data.frame( | |||
Name = c( | |||
"temperene", | |||
"efficiencyRatio", | |||
"renovationRatio", | |||
"nontemperene", | |||
"buildings", | |||
"temperatures", | |||
"temperdays" # fetched here but it is only calculated after energyBalance optimisation | |||
), | |||
Ident = c( | |||
"Op_en5488/temperene", | |||
"Op_en5488/efficiencyRatio", | |||
"Op_en5488/renovationRatio", | |||
"Op_en5488/nontemperene", | |||
NA, | |||
NA, | |||
NA | |||
) | |||
), | |||
formula = function(...) { | |||
#NOTE! IF OTHER INPUTS ARE INDEXED BY Building, THIS MUST BE CHANGED! | |||
#NOTE2! buildings must have index Heating. | |||
buil <- oapply(buildings, cols = "Building", FUN = sum) | |||
# We assume that energy efficiency of building structures also reduces cooling need. | |||
tempe <- temperene * efficiencyRatio * renovationRatio | |||
# We assume that 17 °C is thermoneutral with no heating. | |||
heat <- buil * (17 - temperatures) * tempe | |||
# Only positive heating is considered (i.e., cooling is not here) | |||
result(heat) <- pmax(0, result(heat)) | |||
heat@output <- heat@output[heat@output$Consumable == "Heating" , ] | |||
# We assume that 24 °C is thermoneutral with no cooling. | |||
cool <- buil * (temperatures - 24) * tempe | |||
# Only positive cooling is considered (i.e., heating is not here) | |||
result(cool) <- pmax(0, result(cool)) | |||
cool@output <- cool@output[cool@output$Consumable %in% c("Cooling", "District cooling", "Electric cooling") , ] | |||
cool@output$Heating <- "Not heating" | |||
other <- buil * nontemperene | |||
other@output$Heating <- "Not heating" | |||
out <- OpasnetUtils::combine(OpasnetUtils::combine(heat, cool), other) | |||
out <- unkeep(out, prevresults = TRUE, sources = TRUE) | |||
out@output <- fillna(out@output, marginals = "Temperature") | |||
return(out) | |||
} | |||
) | |||
objects.store(energyUse) | |||
cat("Ovariable energyUse stored.\n") | |||
</rcode> | |||
</noinclude> | |||
<rcode name='EnergyConsumerDemand' label='Initiate EnergyConsumerDemand (only for developers)' embed=1> | |||
### This code is Op_en5488/EnergyConsumerDemand on page [[Energy use of buildings]]. | |||
library(OpasnetUtils) | |||
### EnergyUse of a given building stock when U values are available. | |||
EnergyConsumerDemand <- Ovariable("EnergyConsumerDemand", | |||
dependencies = data.frame( | |||
Name = c( | |||
"temperene", | |||
"efficiencyRatio", | |||
"renovationRatio", | |||
"nontemperene", | |||
"buildings", | |||
"temperatures", | |||
"temperdays" # fetched here but it is only calculated after energyBalance optimisation | |||
), | |||
Ident = c( | |||
"Op_en5488/temperene", | |||
"Op_en5488/efficiencyRatio", | |||
"Op_en5488/renovationRatio", | |||
"Op_en5488/nontemperene", | |||
NA, | |||
NA, | |||
NA | |||
) | |||
), | |||
formula = function(...) { | |||
#NOTE! IF OTHER INPUTS ARE INDEXED BY Building, THIS MUST BE CHANGED! | |||
#NOTE2! buildings must have index Heating. | |||
#NOTE3! Heating, cooling and Other should probably be in different ovariables instead of being here: | |||
# multiple variables necessitates explicit handling in other dependent variables, which is bad. | |||
buil <- oapply(buildings, cols = "Building", FUN = sum) | |||
# Remove Fuel column as unnecessary and disruptive | |||
temperene <- temperene[,!colnames(temperene@output) %in% "Fuel"] | |||
nontemperene <- nontemperene[,!colnames(nontemperene@output) %in% "Fuel"] | |||
# We assume that energy efficiency of building structures also reduces cooling need. | |||
tempe <- temperene * efficiencyRatio * renovationRatio | |||
# We assume that 17 °C is thermoneutral with no heating. | |||
heat <- buil * (17 - temperatures) * tempe[tempe$Consumable == "Heating", ]#!colnames(tempe@output) %in% "Fuel"] | |||
# Only positive heating is considered (i.e., cooling is not here) | |||
result(heat) <- pmax(0, result(heat)) | |||
#heat@output <- heat@output[heat@output$Consumable == "Heating" , ] | |||
# We assume that 24 °C is thermoneutral with no cooling. | |||
cool <- buil * (temperatures - 24) * tempe[tempe$Consumable %in% c("Cooling", "District cooling", "Electric cooling"),] | |||
# Only positive cooling is considered (i.e., heating is not here) | |||
result(cool) <- pmax(0, result(cool)) | |||
#cool@output <- cool@output[cool@output$Consumable %in% c("Cooling", "District cooling", "Electric cooling") , ] | |||
#cool@output$Heating <- "Not heating" | |||
other <- buil * nontemperene | |||
#other@output$Heating <- "Not heating" | |||
out <- OpasnetUtils::combine(heat, cool, other) | |||
out <- unkeep(out, prevresults = TRUE, sources = TRUE) | |||
out@output <- fillna(out@output, marginals = "Temperature") | |||
#out[1:10]@output | |||
#nrow(out@output) | |||
return(out) | |||
} | |||
) | |||
objects.store(EnergyConsumerDemand) | |||
cat("Ovariable EnergyConsumerDemand stored.\n") | |||
</rcode> | |||
===Baseline energy consumption=== | |||
Heat reflects the energy need for heating in situations where the outdoor temperature is below 17 °C. Cooling reflects the cooling need (measured as thermal energy, not electricity!) in situations where the outdoor temperature is above 24 °C. This is not a U value, because it is about energy use per floor area, not about heat loss through building structures per m<sup>2</sup>. For estimating temperene, we take the total energy consumption in Helsinki and divide that with the total floor area and average temperature difference, see [[Helsinki energy consumption#U values based on overall data]]. | |||
<t2b name='Energy use per area and temperature difference' index="Consumable,Fuel" obs="Energy flow" desc="Description" unit="W /K /m2"> | |||
Heating|Heat|1.66|See Helsinki energy consumption: 6921.65/24/365/38990000/(17-4.8)*1E+9 | |||
District cooling|Cooling|0.3|Guesswork. This uses centralised system. | |||
Electric cooling|Electricity|0.3|Guesswork. This uses apartment-specific appliances. | |||
</t2b> | |||
<rcode name="temperene" label="Initiate temperene (for developers only)" embed=1> | |||
## This is code Op_en5488/temperene on page [[Energy use of buildings]] | |||
library(OpasnetUtils) | |||
temperene <- Ovariable("temperene", ddata = "Op_en5488", subset = "Energy use per area and temperature difference") | |||
objects.store(temperene) | |||
cat("Ovariable temperene stored.\n") | |||
</rcode> | |||
Temperature-independent energy consumption per floor area. | |||
<t2b name="Temperature-independent energy use per area" index="Consumable,Fuel" obs="Energy intensity" desc="Description" unit="W /m2"> | |||
<t2b index=" | Consumer electricity|Electricity|5|Assumes 50 kWh /m2 /a (see below) | ||
Hot water|Heat|4|Assumes that hot water is ca. 20 % of energy need of heating: 6921.65/24/365/38990000*1E+9*0.2 | |||
( | |||
</t2b> | </t2b> | ||
== | <rcode name="nontemperene" label="Initiate nontemperene (for developers only)" embed=1> | ||
## This is code Op_en5488/nontemperene on page [[Energy use of buildings]] | |||
library(OpasnetUtils) | |||
nontemperene <- Ovariable("nontemperene", ddata = "Op_en5488", subset = "Temperature-independent energy use per area") | |||
objects.store(nontemperene) | |||
cat("Ovariable nontemperene stored.\n") | |||
</rcode> | |||
<noinclude> | |||
<t2b name='Baseline energy consumption per area unit' index="Building,Heating,Energy use" unit="kWh/m2/a" locations="Heat,User electricity" desc="Total electricity,Year,Description" > | |||
Detached houses|District|134.74|50|184.74|2010|Calculated from energy company´s data; Pöyry | |||
Detached houses|Electricity|130|50|180|2010|Energiapolar; Pöyry | |||
Detached houses|Oil|134.74|50|50|2010|Pöyry. Efficiency 90-95% (energiatehokaskoti.fi). | |||
Detached houses|Wood|134.74|50|50|2010|Assumption. Efficiency of good kettles 80%(energiatehokaskoti.fi). | |||
Detached houses|Geothermal|40|50|90|2010|Assumption | |||
Row houses||168.88|73.5|73.5|2010|Calculated from energy company´s data. Based on district | |||
Apartment houses||172.31|41.7|41.7|2010|Calculated from energy company´s data. Based on district | |||
Commercial||161.82|229.6|229.6|2010|Calculated from energy company´s data. Based on district | |||
Offices||161.07|93.1|93.1|2010|Calculated from energy company´s data. Based on district | |||
Health and social sector||214.97|122.81|122.81|2010|Calculated from energy company´s data. Based on district | |||
Public||165.47|110.4|110.4|2010|Calculated from energy company´s data. Based on district | |||
Sports||121.38|85.9|85.9|2010|Calculated from energy company´s data. Based on district | |||
Educational||170|116.4|116.4|2010|Calculated from energy company´s data. Based on district | |||
Industrial||168.44|212.4|212.4|2010|Calculated from energy company´s data. Based on district | |||
Leisure houses||2.4|1|3.4|2010|Calculated from energy company´s data. Based on electricity | |||
Other||138.14|170.3|170.3|2010|Calculated from energy company´s data | |||
Non-residential buildings|No energy source|113||||Urgenche data for Basel | |||
Non-residential buildings|Heating oil|113||||Urgenche data for Basel | |||
Non-residential buildings|Coal|113||||Urgenche data for Basel | |||
Non-residential buildings|Gas|113||||Urgenche data for Basel | |||
Non-residential buildings|Electricity|113||||Urgenche data for Basel | |||
Non-residential buildings|Wood|113||||Urgenche data for Basel | |||
Non-residential buildings|Centrifuge, hydro-extractor|113||||Urgenche data for Basel | |||
Non-residential buildings|Solar heater/ collector|113||||Urgenche data for Basel | |||
Non-residential buildings|Long-distance heating|113||||Urgenche data for Basel | |||
Non-residential buildings|Other sources|113||||Urgenche data for Basel | |||
Special constructions||86-106||||Urgenche data for Basel (Mixed use) | |||
Single-family houses||69||||Urgenche data for Basel | |||
Multiple-family houses||54-106||||Urgenche data for Basel | |||
Residential buildings with subsidiary use||86-106||||Urgenche data for Basel | |||
Buildings with partial residential use||86-106||||Urgenche data for Basel | |||
</t2b> | |||
* Pöyry 2011. <ref>Pöyry 2011: [[File:Kuopion kasvihuonekaasupäästöjen vähentämismahdollisuudet 2020 mennessä.pdf|Kuopion kasvihuonekaasupäästöjen vähentämismahdollisuudet v 2020 mennessä]].</ref> | |||
* Energiapolar. <ref>Energiapolar/Arvioi sähkönkulutus[http://www.energiapolar.fi/fi/Kotitaloudet/Tarjouslaskuri/Arvioi-sahkonkulutus]</ref> | |||
* Energiatehokaskoti.fi/Öljylämmitys <ref> Energiatehokaskoti.fi/Öljylämmitys[http://www.energiatehokaskoti.fi/suunnittelu/talotekniikan_suunnittelu/lammitys/oljylammitys]</ref> | |||
=== | <rcode name='energyFactor' embed=1 label='Initiate energyFactor (developers only)'> | ||
# This code is Op_en5488/energyFactor on page [[Energy use of buildings]] | |||
library(OpasnetUtils) | |||
''' | energyFactor <- Ovariable("energyFactor", | ||
dependencies = data.frame( | |||
Name = c("dummy") | |||
), | |||
formula = function (...) { | |||
out <- Ovariable('energyFactor', | |||
ddata = 'Op_en5488', | |||
subset = 'Baseline energy consumption per area unit' | |||
) | |||
out@data <- out@data[ | |||
out@data[["Energy use"]] == "Heat" , | |||
colnames(out@data) != "Energy use" | |||
] | |||
levels(out@data$Heating)[levels(out@data$Heating) == ""] <- NA | |||
out@data <- fillna(out@data, "Heating") | |||
return(EvalOutput(out)) | |||
} | |||
) | |||
objects.store(energyFactor) | |||
cat("Object energyFactor initiated!\n") | |||
</rcode> | </rcode> | ||
</noinclude> | |||
===Energy efficiency in heating=== | |||
What is the relative energy consumption of different efficiency classes compared with Old? This table tells that with some background information about heat (in kWh/m2/a), electricity, and water consumption. | |||
<t2b name='Energy use by energy class of building' index="Efficiency" obs="Ratio" desc="Heat,User electricity,Water,Description" unit="ratio"> | |||
Traditional|1.2-1.4|200|||Guesstimate | |||
Old|1|150||30|Pöyry 2011 s.28 | |||
New|0.4-0.5|70|50|40|Pöyry 2011 s.32 (2010 SRMK) | |||
Low-energy|0.2-0.25|35|50|40|Personal communication | |||
Passive|0.1-0.16|17.5 - 25|50|40|Pöyry 2011 s.33; Personal communication | |||
</t2b> | |||
''' | <rcode name='efficiencyRatio' embed=1 label='Initiate efficiencyRatio (developers only)'> | ||
# This code is Op_en5488/efficiencyRatio on page [[Energy use of buildings]] | |||
library(OpasnetUtils) | |||
efficiencyRatio <- Ovariable( | |||
name = 'efficiencyRatio', | |||
ddata = 'Op_en5488', | |||
subset = 'Energy use by energy class of building' | |||
) | |||
objects.store(efficiencyRatio) | |||
cat("Object efficiencyRatio initiated!\n") | |||
</rcode> | </rcode> | ||
'''New building | <t2b name="Energy efficiency of buildings when they are built" index="Efficiency,Constructed" obs='Fraction' desc='Description' unit="%"> | ||
Traditional|1800-1944|100| | |||
Old|1945-1994|100| | |||
New|1995-2019|100| | |||
New|2020-2029|10-20| | |||
Low-energy|2020-2029||The rest of energy class | |||
Passive|2020-2029|25-35| | |||
New|2030-2039|5-10| | |||
Low-energy|2030-2039|20-50| | |||
Passive|2030-2039||The rest of energy class | |||
New|2040-2070|0-5| | |||
Low-energy|2040-2070|10-30| | |||
Passive|2040-2070||The rest of energy class | |||
</t2b> | |||
* Old: old buildings to be renovated (or in need of renovation) | |||
* New: normal new buildings (no current need of renovation) | |||
* Low-energy: buildings consuming about half of the energy of a new building | |||
* Passive: buildings consuming a quarter or less of the energy of a new building | |||
* Chinese green building system: [http://neec.no/uploads/Article,%20China%20green%20building%20standard.pdf] [http://cargocollective.com/chinabuildsgreen/1-10-12-China-s-3-Star-Rating-System] | |||
<rcode name="efficiencyShares" label="Initiate efficiencyshares (developers only)" embed=1> | |||
#This code is Op_en5488/efficiencyShares from page [[Energy use of buildings]]. | |||
library(OpasnetUtils) | |||
efficiencyShares <- Ovariable("efficiencyShares", | |||
dependencies = data.frame( | |||
Name = c("dummy") | |||
), | |||
formula = function(...) { | |||
es <- Ovariable( | |||
name = 'es', | |||
ddata = 'Op_en5488', | |||
subset = 'Energy efficiency of buildings when they are built' | |||
) | |||
es <- findrest(es, cols = "Efficiency", total = 100) / 100 | |||
constructed <- unique(es@data$Constructed) | |||
temp <- ((strsplit(as.character(constructed), split = "-"))) | |||
y <- data.frame() | |||
for(i in 1:length(constructed)) { | |||
y <- rbind( | |||
y, | |||
data.frame( | |||
Constructed = constructed[i], | |||
Time = seq(from = as.numeric(temp[[i]][1]), to = as.numeric(temp[[i]][2]), by = 5), | |||
Result = 1 | |||
) | |||
) | |||
} | |||
y <- Ovariable(output = y, marginal = c(TRUE, TRUE, FALSE)) | |||
out <- unkeep(es * y, cols = "Constructed", prevresults = TRUE, sources = TRUE) | |||
out@output$Efficiency <- factor( | |||
out@output$Efficiency, | |||
levels = c("Traditional", "Old", "New", "Low-energy", "Passive"), | |||
ordered = TRUE | |||
) | |||
return(out) | |||
} | |||
) | |||
dummy <- 1 | |||
objects.store(efficiencyShares, dummy) | |||
cat("Objects efficiencyShares, dummy initiated!\n") | |||
</rcode> | </rcode> | ||
''' | ===Impact of renovations=== | ||
<t2b name="Energy saving potential of different renovations" index="Renovation" obs="Relative" desc="Absolute,Renovation details,Description" unit="ratio,kWh/m2/a"> | |||
Windows|0.85|25|New windows and doors|Pöyry 2011 | |||
Technical systems|0.50|75|New windows, sealing of building's sheath, improvement of building's technical systems|Pöyry 2011 | |||
" | Sheath reform|0.35|100|New windows, sealing of building's sheath, improvement of building's technical systems, significant reform of building's sheath|Pöyry 2011 | ||
General|0.85|-|General renovation|Pöyry 2011 | |||
None|1|0|Renovation not done| | |||
</t2b> | |||
<rcode name='renovationRatio' embed=1 label='Initiate renovationRatio (developers only)'> | |||
# This code is Op_en5488/renovationRatio on page [[Energy use of buildings]] | |||
library(OpasnetUtils) | |||
renovationRatio <- Ovariable( | |||
name = 'renovationRatio', | |||
ddata = 'Op_en5488', | |||
subset = 'Energy saving potential of different renovations' | |||
) | |||
renovationRatio@data$Renovation <- factor( | |||
renovationRatio@data$Renovation, | |||
levels = c("None", "General", "Windows", "Technical systems", "Sheath reform"), | |||
ordered = TRUE | |||
) | |||
objects.store(renovationRatio) | |||
cat("Object renovationRatio initiated!\n") | |||
</rcode> | </rcode> | ||
<noinclude> | |||
=== Data not used === | |||
:''This section contains data that are relevant for the topic but are not used in the actual method calculations. | |||
{{comment|# |Note that below numbers are very preliminary (esp. electricity)!|--[[User:Marjo|Marjo]] 16:49, 13 March 2013 (EET)}} | |||
<t2b name='Baseline energy consumption per volume unit' index="Building,Heating,Observation" locations="Heat,User electricity" desc="Year,Description" unit="kWh/m3/a"> | |||
Detached houses|District|42.15|15.67|2010|Calculated from energy company´s data; Energiapolar | |||
Detached houses|Electricity|40.66|15.67|2010|Energiapolar | |||
Detached houses|Oil|42.15|15.67|2010|Energiapolar | |||
Detached houses|Wood|42.15|15.67|2010|Assumption | |||
Detached houses|Geothermal|18.56|15.67|2010|Assumption | |||
Row houses|District|53.25|23.16|2010|From energy company | |||
Apartment houses|District|49.2|11.9|2010|From energy company | |||
Commercial|District|28.65|40.64|2010|From energy company | |||
Offices|District|36.32|20.99|2010|From energy company | |||
Health and social sector|District|55.2|31.53|2010|From energy company | |||
Public|District|32.21|21.49|2010|From energy company | |||
Sports|District|18.37|13|2010|From energy company; Electricity value comes from city´s renovation data | |||
Educational|District|40.23|27.54|2010|From energy company | |||
Industrial|District|30.57|38.55|2010|From energy company | |||
Leisure houses|Electricity|0.68|0.29|2010|From energy company | |||
Other|District|29.88|36.83|2010|From energy company | |||
</t2b> | |||
===Regulations regarding energy consumption of buildings=== | |||
<t2b name='Maximum allowed energy consumption per unit (= E-value)' index="Building,Year" obs="E-value" desc="Description" unit="kWh/m2/a"> | |||
Detached houses|2012 forward|204|Heated net area <120 m2; Finland´s Environmental Administration | |||
Row houses|2012 forward|150|Finland´s Environmental Administration | |||
Apartment houses|2012 forward|130|Finland´s Environmental Administration | |||
Shops and other commercial buildings|2012 forward|240|Finland´s Environmental Administration | |||
Offices|2012 forward|170|Finland´s Environmental Administration | |||
Health and social sector: Hospitals|2012 forward|450|Finland´s Environmental Administration | |||
Health and social sector: Health care centers etc.|2012 forward|170|Finland´s Environmental Administration | |||
Public|2012 forward|240|Finland´s Environmental Administration | |||
Sports|2012 forward|170|Does not apply to swimming- and ice halls; Finland´s Environmental Administration | |||
Educational|2012 forward|170|Finland´s Environmental Administration | |||
Industrial|2012 forward|-|E-value must be calculated but there´s no limit for it; Finland´s Environmental Administration | |||
Leisure buildings|2012 forward|-|E-value must be calculated but there´s no limit for it; Finland´s Environmental Administration | |||
Other|2012 forward|-|E-value must be calculated but there´s no limit for it; Finland´s Environmental Administration | |||
</t2b> | |||
==See also== | ==See also== | ||
<gallery widths="250px"> | |||
File:Capture2.PNG|Energy consumption rate shows that people are using more energy than years before or it is about the same in Finland. | |||
File:Capture3.PNG||Most of the electricity is consumed in service sectors and homes. Moreover, the electricity produced by heating is used mostly in stakeholders and a little amount in service sector. | |||
File:Capture1.PNG|Wood fuels are the biggest source of energy in Finland. | |||
</gallery> | |||
* Juhani Heljo, Hannele Laine. Sähkölämmitys ja lämpöpumput sähkönkäyttäjinä ja päästöjen aiheuttajina Suomessa] TTY 2/2005. [http://webhotel2.tut.fi/ee/Materiaali/Ekorem/EKOREM_LP_ja_sahko_raportti_051128.pdf] {{defend|# |Contains emission factors etc. May also be used in [[Emission factors for burning processes]].|--[[User:Jouni|Jouni]] ([[User talk:Jouni|talk]]) 07:38, 18 June 2015 (UTC)}} | |||
* Juhani Heljo, Eero Nippala, Harri Nuuttila. Rakennusten energiankulutus ja CO2-ekv päästöt Suomessa. TTY 4/2005. [http://webhotel2.tut.fi/ee/Materiaali/Ekorem/EKOREM_Loppuraportti_051214.pdf] | |||
==Keywords== | ==Keywords== | ||
Line 192: | Line 587: | ||
==Related files== | ==Related files== | ||
</noinclude> | |||
Latest revision as of 03:46, 10 April 2019
Moderator:Marjo (see all) |
|
Upload data
|
Question
How to model the use of energy of buildings based on either annual consumption per floor area, or energy efficiency per floor area per indoor-outdoor temperature difference?
Answer
An example code for fetching and using the variables.
Rationale
Input
Dependencies | Measure | Indices | Missing data |
---|---|---|---|
buildings (from the model). | Floor area of the building stock to be heated | Typical indices: Building, Heating, Efficiency, Renovation | You can use value 1 to calculate energy need per 1 m2 floor area. |
temperene (fairly generic data for a given cultural and climatic area, e.g. from Energy use of buildings) | Energy need per floor area and indoor-outdoor temperature difference (W /m2 /K) | Required indices: Consumable, Fuel (Commodity). Typical indices: Building, Heating. | if this data is missing, you can only calculate building stock but nothing further. |
nontemperene (fairly generic data for a given cultural and climatic area, e.g. from Energy use of buildings) | Energy need for hot water and other non-temperature-dependent activities | Required indices: Consumable, Fuel (Commodity). | Use 0 to calculate energy demand excluding non-heating energy use. |
temperatures (location-specific data) | Average outdoor temperatures for particular temperature bins. | Reuired indices: Temperature. | If missing, use the annual energy version. |
temperdays (location-specific data) | Number of days per year for particular temperature bins. | Required indices: Temperature. | If missing, use the annual energy version. |
efficiencyRatio (fairly generic data for a cultural and climatic area, e.g. from Energy use of buildings) | Relative energy consumption compared with the efficiency group Old. | Required indices: Efficiency. Typical indices: Time, Building. | If no data, use 1 as default. |
renovationRatio (fairly generic data for a cultural and climatic area, e.g. from Energy use of buildings) | Relative energy consumption compared with the Renovation location None. | Required indices: Renovation. Typical indices: Building. | If no data, use 1 as default. |
Annual calculations
The code below assumes annual energy consumption factors per floor area (kWh /m2 /a). No temperature data is needed.
Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle Q_{e,r} = \sum_b B_{b,e,r} F_b E_e R_r,}
where
- Q = Energy used for heating and cooling (kWh /a)
- B = floor area of a building stock indexed by renovation and efficiency (m2)
- F = energy consumption factor (kWh / m2 /a)
- E = relative efficiency of a building stock based on energy class when built (no unit)
- R = relative efficiency of a building stock based on energy class after renovated (no unit)
- indices used:
- b = building type
- e = efficiency class of building
- r = renovation class of building
Temperature-dependent calculations
The code below assumes energy consumption factors relative to floor area (W /m2 /K). Local temperature data must be given in either individual or aggregated way. Individual way has temperature data for all timepoints (e.g. days or hours) of the given year, and heatingTime = 1. Aggregated way has a specific Temperature index (e.g. very cold, cold, cool etc) in both ovariables temperature and heatingTime. The ovariable temperature tells what is the actual temperature when it is "very cold", and heatingTime tells how many hours it is "very cold" during the year.
Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle Q_{e,r,t} = \sum_b (B_{b,e,r} U_b (17 - T_t) E_e R_r + W_b) t_t,}
where
- Q = Energy used for heating and cooling (kWh /a)
- B = floor area of a building stock indexed by renovation and efficiency (m2)
- U = energy consumption factor per floor area for a building type (W /m2 /K)
- T = temperature outside (assumes that no heating is needed if outside temperature is 17 degrees Celsius)
- E = relative efficiency of a building stock based on energy class when built (no unit)
- R = relative efficiency of a building stock based on energy class after renovated (no unit)
- W = heating need of hot water (W)
- t = time spent in a particular outdoor temperature (h /a)
- indices used:
- b = building type
- e = efficiency class of building
- r = renovation class of building
- t = ambient temperature class
Baseline energy consumption
Heat reflects the energy need for heating in situations where the outdoor temperature is below 17 °C. Cooling reflects the cooling need (measured as thermal energy, not electricity!) in situations where the outdoor temperature is above 24 °C. This is not a U value, because it is about energy use per floor area, not about heat loss through building structures per m2. For estimating temperene, we take the total energy consumption in Helsinki and divide that with the total floor area and average temperature difference, see Helsinki energy consumption#U values based on overall data.
Obs | Consumable | Fuel | Energy flow | Description |
---|---|---|---|---|
1 | Heating | Heat | 1.66 | See Helsinki energy consumption: 6921.65/24/365/38990000/(17-4.8)*1E+9 |
2 | District cooling | Cooling | 0.3 | Guesswork. This uses centralised system. |
3 | Electric cooling | Electricity | 0.3 | Guesswork. This uses apartment-specific appliances. |
Temperature-independent energy consumption per floor area.
Obs | Consumable | Fuel | Energy intensity | Description |
---|---|---|---|---|
1 | Consumer electricity | Electricity | 5 | Assumes 50 kWh /m2 /a (see below) |
2 | Hot water | Heat | 4 | Assumes that hot water is ca. 20 % of energy need of heating: 6921.65/24/365/38990000*1E+9*0.2 |
Obs | Building | Heating | Heat | User electricity | Total electricity | Year | Description |
---|---|---|---|---|---|---|---|
1 | Detached houses | District | 134.74 | 50 | 184.74 | 2010 | Calculated from energy company´s data; Pöyry |
2 | Detached houses | Electricity | 130 | 50 | 180 | 2010 | Energiapolar; Pöyry |
3 | Detached houses | Oil | 134.74 | 50 | 50 | 2010 | Pöyry. Efficiency 90-95% (energiatehokaskoti.fi). |
4 | Detached houses | Wood | 134.74 | 50 | 50 | 2010 | Assumption. Efficiency of good kettles 80%(energiatehokaskoti.fi). |
5 | Detached houses | Geothermal | 40 | 50 | 90 | 2010 | Assumption |
6 | Row houses | 168.88 | 73.5 | 73.5 | 2010 | Calculated from energy company´s data. Based on district | |
7 | Apartment houses | 172.31 | 41.7 | 41.7 | 2010 | Calculated from energy company´s data. Based on district | |
8 | Commercial | 161.82 | 229.6 | 229.6 | 2010 | Calculated from energy company´s data. Based on district | |
9 | Offices | 161.07 | 93.1 | 93.1 | 2010 | Calculated from energy company´s data. Based on district | |
10 | Health and social sector | 214.97 | 122.81 | 122.81 | 2010 | Calculated from energy company´s data. Based on district | |
11 | Public | 165.47 | 110.4 | 110.4 | 2010 | Calculated from energy company´s data. Based on district | |
12 | Sports | 121.38 | 85.9 | 85.9 | 2010 | Calculated from energy company´s data. Based on district | |
13 | Educational | 170 | 116.4 | 116.4 | 2010 | Calculated from energy company´s data. Based on district | |
14 | Industrial | 168.44 | 212.4 | 212.4 | 2010 | Calculated from energy company´s data. Based on district | |
15 | Leisure houses | 2.4 | 1 | 3.4 | 2010 | Calculated from energy company´s data. Based on electricity | |
16 | Other | 138.14 | 170.3 | 170.3 | 2010 | Calculated from energy company´s data | |
17 | Non-residential buildings | No energy source | 113 | Urgenche data for Basel | |||
18 | Non-residential buildings | Heating oil | 113 | Urgenche data for Basel | |||
19 | Non-residential buildings | Coal | 113 | Urgenche data for Basel | |||
20 | Non-residential buildings | Gas | 113 | Urgenche data for Basel | |||
21 | Non-residential buildings | Electricity | 113 | Urgenche data for Basel | |||
22 | Non-residential buildings | Wood | 113 | Urgenche data for Basel | |||
23 | Non-residential buildings | Centrifuge, hydro-extractor | 113 | Urgenche data for Basel | |||
24 | Non-residential buildings | Solar heater/ collector | 113 | Urgenche data for Basel | |||
25 | Non-residential buildings | Long-distance heating | 113 | Urgenche data for Basel | |||
26 | Non-residential buildings | Other sources | 113 | Urgenche data for Basel | |||
27 | Special constructions | 86-106 | Urgenche data for Basel (Mixed use) | ||||
28 | Single-family houses | 69 | Urgenche data for Basel | ||||
29 | Multiple-family houses | 54-106 | Urgenche data for Basel | ||||
30 | Residential buildings with subsidiary use | 86-106 | Urgenche data for Basel | ||||
31 | Buildings with partial residential use | 86-106 | Urgenche data for Basel |
Energy efficiency in heating
What is the relative energy consumption of different efficiency classes compared with Old? This table tells that with some background information about heat (in kWh/m2/a), electricity, and water consumption.
Obs | Efficiency | Ratio | Heat | User electricity | Water | Description |
---|---|---|---|---|---|---|
1 | Traditional | 1.2-1.4 | 200 | Guesstimate | ||
2 | Old | 1 | 150 | 30 | Pöyry 2011 s.28 | |
3 | New | 0.4-0.5 | 70 | 50 | 40 | Pöyry 2011 s.32 (2010 SRMK) |
4 | Low-energy | 0.2-0.25 | 35 | 50 | 40 | Personal communication |
5 | Passive | 0.1-0.16 | 17.5 - 25 | 50 | 40 | Pöyry 2011 s.33; Personal communication |
Obs | Efficiency | Constructed | Fraction | Description |
---|---|---|---|---|
1 | Traditional | 1800-1944 | 100 | |
2 | Old | 1945-1994 | 100 | |
3 | New | 1995-2019 | 100 | |
4 | New | 2020-2029 | 10-20 | |
5 | Low-energy | 2020-2029 | The rest of energy class | |
6 | Passive | 2020-2029 | 25-35 | |
7 | New | 2030-2039 | 5-10 | |
8 | Low-energy | 2030-2039 | 20-50 | |
9 | Passive | 2030-2039 | The rest of energy class | |
10 | New | 2040-2070 | 0-5 | |
11 | Low-energy | 2040-2070 | 10-30 | |
12 | Passive | 2040-2070 | The rest of energy class |
- Old: old buildings to be renovated (or in need of renovation)
- New: normal new buildings (no current need of renovation)
- Low-energy: buildings consuming about half of the energy of a new building
- Passive: buildings consuming a quarter or less of the energy of a new building
- Chinese green building system: [3] [4]
Impact of renovations
Obs | Renovation | Relative | Absolute | Renovation details | Description |
---|---|---|---|---|---|
1 | Windows | 0.85 | 25 | New windows and doors | Pöyry 2011 |
2 | Technical systems | 0.50 | 75 | New windows, sealing of building's sheath, improvement of building's technical systems | Pöyry 2011 |
3 | Sheath reform | 0.35 | 100 | New windows, sealing of building's sheath, improvement of building's technical systems, significant reform of building's sheath | Pöyry 2011 |
4 | General | 0.85 | - | General renovation | Pöyry 2011 |
5 | None | 1 | 0 | Renovation not done |
Data not used
- This section contains data that are relevant for the topic but are not used in the actual method calculations.
----#: . Note that below numbers are very preliminary (esp. electricity)! --Marjo 16:49, 13 March 2013 (EET) (type: truth; paradigms: science: comment)
Obs | Building | Heating | Heat | User electricity | Year | Description |
---|---|---|---|---|---|---|
1 | Detached houses | District | 42.15 | 15.67 | 2010 | Calculated from energy company´s data; Energiapolar |
2 | Detached houses | Electricity | 40.66 | 15.67 | 2010 | Energiapolar |
3 | Detached houses | Oil | 42.15 | 15.67 | 2010 | Energiapolar |
4 | Detached houses | Wood | 42.15 | 15.67 | 2010 | Assumption |
5 | Detached houses | Geothermal | 18.56 | 15.67 | 2010 | Assumption |
6 | Row houses | District | 53.25 | 23.16 | 2010 | From energy company |
7 | Apartment houses | District | 49.2 | 11.9 | 2010 | From energy company |
8 | Commercial | District | 28.65 | 40.64 | 2010 | From energy company |
9 | Offices | District | 36.32 | 20.99 | 2010 | From energy company |
10 | Health and social sector | District | 55.2 | 31.53 | 2010 | From energy company |
11 | Public | District | 32.21 | 21.49 | 2010 | From energy company |
12 | Sports | District | 18.37 | 13 | 2010 | From energy company; Electricity value comes from city´s renovation data |
13 | Educational | District | 40.23 | 27.54 | 2010 | From energy company |
14 | Industrial | District | 30.57 | 38.55 | 2010 | From energy company |
15 | Leisure houses | Electricity | 0.68 | 0.29 | 2010 | From energy company |
16 | Other | District | 29.88 | 36.83 | 2010 | From energy company |
Regulations regarding energy consumption of buildings
Obs | Building | Year | E-value | Description |
---|---|---|---|---|
1 | Detached houses | 2012 forward | 204 | Heated net area <120 m2; Finland´s Environmental Administration |
2 | Row houses | 2012 forward | 150 | Finland´s Environmental Administration |
3 | Apartment houses | 2012 forward | 130 | Finland´s Environmental Administration |
4 | Shops and other commercial buildings | 2012 forward | 240 | Finland´s Environmental Administration |
5 | Offices | 2012 forward | 170 | Finland´s Environmental Administration |
6 | Health and social sector: Hospitals | 2012 forward | 450 | Finland´s Environmental Administration |
7 | Health and social sector: Health care centers etc. | 2012 forward | 170 | Finland´s Environmental Administration |
8 | Public | 2012 forward | 240 | Finland´s Environmental Administration |
9 | Sports | 2012 forward | 170 | Does not apply to swimming- and ice halls; Finland´s Environmental Administration |
10 | Educational | 2012 forward | 170 | Finland´s Environmental Administration |
11 | Industrial | 2012 forward | - | E-value must be calculated but there´s no limit for it; Finland´s Environmental Administration |
12 | Leisure buildings | 2012 forward | - | E-value must be calculated but there´s no limit for it; Finland´s Environmental Administration |
13 | Other | 2012 forward | - | E-value must be calculated but there´s no limit for it; Finland´s Environmental Administration |
See also
-
Energy consumption rate shows that people are using more energy than years before or it is about the same in Finland.
-
Most of the electricity is consumed in service sectors and homes. Moreover, the electricity produced by heating is used mostly in stakeholders and a little amount in service sector.
-
Wood fuels are the biggest source of energy in Finland.
- Juhani Heljo, Hannele Laine. Sähkölämmitys ja lämpöpumput sähkönkäyttäjinä ja päästöjen aiheuttajina Suomessa] TTY 2/2005. [5] ←--#: . Contains emission factors etc. May also be used in Emission factors for burning processes. --Jouni (talk) 07:38, 18 June 2015 (UTC) (type: truth; paradigms: science: defence)
- Juhani Heljo, Eero Nippala, Harri Nuuttila. Rakennusten energiankulutus ja CO2-ekv päästöt Suomessa. TTY 4/2005. [6]