optimise_upgrade finds the financially optimum household energy efficiency upgrade (fabric and replacement heating technology).

The potential new heating technologies (tech_new) considered are current tech and a heat pump. Choices such as gas to oil are not considered. This tends to lead to a lot of swithcing from electricity to heat_pump.

If fuel_allowance is TRUE and the household qualifies for WarmerHomes. It is assumed that the property is upgraded to B2 (120 kWh/m2/y) standard. Therefore WarmerHomes does not requires BER optimisation. A cap of params$warmer_homes_cost_cap of 35k is currentlu implented.

Returns a 2 row dataframe with tech_new the existing tech or a heat pump. If the existing tech is a heat pump, reversion to gas is also evaluated.

optimise_upgrade(
  hli_old,
  tech_old,
  installation_time,
  house_type,
  storeys,
  construction_year,
  region,
  floor_area,
  eta,
  params,
  upgrade_heat = TRUE,
  is_fuel_allowance = FALSE,
  include_grants = TRUE,
  include_rebound = FALSE
)

Arguments

hli_old

heat loss indicator before upgrade W/Km2

tech_old

current heating technology

installation_time

year of installation of old (current) tech

house_type

seai house type (detached, semi_detached, terraced, apartment)

storeys

number of storeys 1, 2, 3

construction_year

year of construction integer

region

region (Dublin, Munster, Rest of Leinster, Ulster/Connacht)

floor_area

treated floor area (m2)

eta

heterogeneous disruption parameter

params

current parameter values from scenario_params(sD, yeartime)

upgrade_heat

if TRUE then upgrade the current heating system

is_fuel_allowance

TRUE/FALSE

include_grants

defaults to TRUE

include_rebound

defaults to FALSE

Value

a two row dataframe. The new EAC "new_cost"

Examples


params <- scenario_params(sD,2026)

optimise_upgrade(1.8,"gas",2005,"semi_detached",2,2003,"Dublin",100,0.12,params,TRUE,FALSE,TRUE)
#> # A tibble: 2 × 14
#>   tech_old tech_new  hli_old hli_new ber_old ber_new new_cost old_cost savings
#>   <chr>    <chr>       <dbl>   <dbl>   <dbl>   <dbl>    <dbl>    <dbl>   <dbl>
#> 1 gas      gas           1.8    1.78    212.   153.      2114     2239 -0.0555
#> 2 gas      heat_pump     1.8    1.72    212.    89.8     2441     2239  0.0903
#> # ℹ 5 more variables: upgrade_cost <dbl>, heating_sys_cost <dbl>,
#> #   grant_type <chr>, upgrade_grant <dbl>, heat_pump_grant <dbl>

optimise_upgrade(2.6,"gas",2010,"semi_detached",2,2003,"Dublin",100,0.12,params,TRUE,FALSE,TRUE)
#> # A tibble: 2 × 14
#>   tech_old tech_new  hli_old hli_new ber_old ber_new new_cost old_cost savings
#>   <chr>    <chr>       <dbl>   <dbl>   <dbl>   <dbl>    <dbl>    <dbl>   <dbl>
#> 1 gas      gas           2.6    2.57    221.    203.     2770     2379   0.164
#> 2 gas      heat_pump     2.6    2.26    221.    106.     3757     2379   0.579
#> # ℹ 5 more variables: upgrade_cost <dbl>, heating_sys_cost <dbl>,
#> #   grant_type <chr>, upgrade_grant <dbl>, heat_pump_grant <dbl>

optimise_upgrade(5,"gas",2010,"detached",2,2010,"Dublin",100,0.12,params,TRUE,FALSE,TRUE)
#> # A tibble: 2 × 14
#>   tech_old tech_new  hli_old hli_new ber_old ber_new new_cost old_cost savings
#>   <chr>    <chr>       <dbl>   <dbl>   <dbl>   <dbl>    <dbl>    <dbl>   <dbl>
#> 1 gas      gas             5    3.98    389.    295.     4660     4428  0.0524
#> 2 gas      heat_pump       5    3.71    389.    150.     6713     4428  0.516 
#> # ℹ 5 more variables: upgrade_cost <dbl>, heating_sys_cost <dbl>,
#> #   grant_type <chr>, upgrade_grant <dbl>, heat_pump_grant <dbl>
optimise_upgrade(1.66,"gas",2010,"detached",2,2010,"Dublin",100,0.12,params,TRUE,FALSE,TRUE)
#> # A tibble: 2 × 14
#>   tech_old tech_new  hli_old hli_new ber_old ber_new new_cost old_cost savings
#>   <chr>    <chr>       <dbl>   <dbl>   <dbl>   <dbl>    <dbl>    <dbl>   <dbl>
#> 1 gas      gas          1.66    1.66    155.   145.      1914     1577   0.214
#> 2 gas      heat_pump    1.66    1.66    155.    88.0     2202     1577   0.396
#> # ℹ 5 more variables: upgrade_cost <dbl>, heating_sys_cost <dbl>,
#> #   grant_type <chr>, upgrade_grant <dbl>, heat_pump_grant <dbl>

optimise_upgrade(2.4,"gas",2010,"detached",2,2010,"Dublin",175,0.12,params,TRUE,FALSE,TRUE)
#> # A tibble: 2 × 14
#>   tech_old tech_new  hli_old hli_new ber_old ber_new new_cost old_cost savings
#>   <chr>    <chr>       <dbl>   <dbl>   <dbl>   <dbl>    <dbl>    <dbl>   <dbl>
#> 1 gas      gas           2.4    2.40    207.    193.     4051     3745  0.0818
#> 2 gas      heat_pump     2.4    2.26    207.    106.     5497     3745  0.468 
#> # ℹ 5 more variables: upgrade_cost <dbl>, heating_sys_cost <dbl>,
#> #   grant_type <chr>, upgrade_grant <dbl>, heat_pump_grant <dbl>

optimise_upgrade(2.9,"gas", 2015, "detached",2, 2003, "Munster", 100,0.12,params,upgrade_heat=TRUE,is_fuel_allowance=FALSE,include_rebound=FALSE)
#> # A tibble: 2 × 14
#>   tech_old tech_new  hli_old hli_new ber_old ber_new new_cost old_cost savings
#>   <chr>    <chr>       <dbl>   <dbl>   <dbl>   <dbl>    <dbl>    <dbl>   <dbl>
#> 1 gas      gas           2.9    2.85    226.    222.     3010     2516   0.196
#> 2 gas      heat_pump     2.9    2.26    226.    106.     4481     2516   0.781
#> # ℹ 5 more variables: upgrade_cost <dbl>, heating_sys_cost <dbl>,
#> #   grant_type <chr>, upgrade_grant <dbl>, heat_pump_grant <dbl>

optimise_upgrade(2.9,"gas", 2015, "detached",2, 2003, "Munster", 200,0.12,params,upgrade_heat=TRUE,is_fuel_allowance=FALSE,include_rebound=FALSE)
#> # A tibble: 2 × 14
#>   tech_old tech_new  hli_old hli_new ber_old ber_new new_cost old_cost savings
#>   <chr>    <chr>       <dbl>   <dbl>   <dbl>   <dbl>    <dbl>    <dbl>   <dbl>
#> 1 gas      gas           2.9    2.86    226.    222.     5446     4823   0.129
#> 2 gas      heat_pump     2.9    2.28    226.    107.     8552     4823   0.773
#> # ℹ 5 more variables: upgrade_cost <dbl>, heating_sys_cost <dbl>,
#> #   grant_type <chr>, upgrade_grant <dbl>, heat_pump_grant <dbl>

optimise_upgrade(1.39,"gas",2020,"detached",2,1990,"Munster",100,0.12,params,upgrade_heat=TRUE,is_fuel_allowance=FALSE,include_grants=TRUE,include_rebound=FALSE)
#> # A tibble: 2 × 14
#>   tech_old tech_new  hli_old hli_new ber_old ber_new new_cost old_cost savings
#>   <chr>    <chr>       <dbl>   <dbl>   <dbl>   <dbl>    <dbl>    <dbl>   <dbl>
#> 1 gas      gas          1.39    1.39    128.   128.      1687     1374   0.228
#> 2 gas      heat_pump    1.39    1.39    128.    79.9     1894     1374   0.379
#> # ℹ 5 more variables: upgrade_cost <dbl>, heating_sys_cost <dbl>,
#> #   grant_type <chr>, upgrade_grant <dbl>, heat_pump_grant <dbl>

#WarmerHomes

optimise_upgrade(3.8,"heat_pump", 2003, "detached",2, 2003, "Munster", 300,0.16,params,upgrade_heat=TRUE,is_fuel_allowance=TRUE,include_rebound=FALSE)
#> # A tibble: 2 × 14
#>   tech_old  tech_new  hli_old hli_new ber_old ber_new new_cost old_cost savings
#>   <chr>     <chr>       <dbl>   <dbl>   <dbl>   <dbl>    <dbl>    <dbl>   <dbl>
#> 1 heat_pump heat_pump     3.8    3.26    185.    136.    11963     8856   0.351
#> 2 heat_pump gas           3.8    3.39    185.    256.    10369     8856   0.171
#> # ℹ 5 more variables: upgrade_cost <dbl>, heating_sys_cost <dbl>,
#> #   grant_type <chr>, upgrade_grant <dbl>, heat_pump_grant <dbl>
 optimise_upgrade(3.8,"heat_pump", 2003, "detached",2, 2003, "Munster", 300,0,params,upgrade_heat=TRUE,is_fuel_allowance=TRUE,include_rebound=FALSE)
#> # A tibble: 2 × 14
#>   tech_old  tech_new  hli_old hli_new ber_old ber_new new_cost old_cost savings
#>   <chr>     <chr>       <dbl>   <dbl>   <dbl>   <dbl>    <dbl>    <dbl>   <dbl>
#> 1 heat_pump heat_pump     3.8    2.51    185.    114.    10566     8856  0.193 
#> 2 heat_pump gas           3.8    2.91    185.    225.     8638     8856 -0.0246
#> # ℹ 5 more variables: upgrade_cost <dbl>, heating_sys_cost <dbl>,
#> #   grant_type <chr>, upgrade_grant <dbl>, heat_pump_grant <dbl>
optimise_upgrade(3.8,"gas", 2003, "detached",2, 2003, "Dublin", 240,0.12,params,upgrade_heat=TRUE,is_fuel_allowance=TRUE,include_rebound=FALSE)
#> # A tibble: 2 × 14
#>   tech_old tech_new  hli_old hli_new ber_old ber_new new_cost old_cost savings
#>   <chr>    <chr>       <dbl>   <dbl>   <dbl>   <dbl>    <dbl>    <dbl>   <dbl>
#> 1 gas      gas           3.8    2.54    405.    202.     9038    10779 -0.161 
#> 2 gas      heat_pump     3.8    3.65    405.    148.    11632    10779  0.0792
#> # ℹ 5 more variables: upgrade_cost <dbl>, heating_sys_cost <dbl>,
#> #   grant_type <chr>, upgrade_grant <dbl>, heat_pump_grant <dbl>