From d60495d8f09abf165382481b3d7b7164b09abc7b Mon Sep 17 00:00:00 2001 From: Lavinia Baumstark Date: Tue, 9 Jul 2024 16:43:15 +0200 Subject: [PATCH] delete reporting for deleted module realizations "services_putty" and "services_with_capital" --- R/reportFE.R | 90 +----------------------------------------- R/reportLCOE.R | 70 -------------------------------- R/reportMacroEconomy.R | 54 ++----------------------- 3 files changed, 4 insertions(+), 210 deletions(-) diff --git a/R/reportFE.R b/R/reportFE.R index bd125920..f17c5c7f 100644 --- a/R/reportFE.R +++ b/R/reportFE.R @@ -555,11 +555,6 @@ reportFE <- function(gdx, regionSubsetList = NULL, # ---- parameter pm_cesdata <- readGDX(gdx, "pm_cesdata")[, t, ] - # ---- variables - if((buil_mod %in% c("services_putty", "services_with_capital"))||(tran_mod == "edge_esm") ) { - vm_demFeForEs <- readGDX(gdx,name = c("vm_demFeForEs"), field="l", restore_zeros=FALSE,format= "first_found",react = "silent")[,t,]*TWa_2_EJ - } - # CES nodes, convert from TWa to EJ vm_cesIO <- readGDX(gdx, name=c("vm_cesIO"), field="l", restore_zeros=FALSE,format= "first_found")[,t,]*TWa_2_EJ @@ -654,90 +649,7 @@ reportFE <- function(gdx, regionSubsetList = NULL, dim = 3, na.rm = TRUE), "UE|Buildings (EJ/yr)")) } - } else if (buil_mod %in% c("services_putty", "services_with_capital")){ - - # sets - ppfen_build <- readGDX(gdx,c("ppfen_buildings_dyn36","ppfen_buildings_dyn28","ppfen_buildings"),format="first_found", react = "silent") - esty_build <- readGDX(gdx,c("esty_dyn36"),format="first_found", react = "silent") - - #var - v_prodEs <- readGDX(gdx,name = c("vm_prodEs","v_prodEs"), field="l",restore_zeros = F, format = "first_found", react = "silent")[,t,]* TWa_2_EJ - - ces_elec = c(grep("elb$", ppfen_build, value = T),grep("hpb$", ppfen_build, value = T)) - es_elec = c(grep("elb$", esty_build, value = T),grep("hpb$", esty_build, value = T)) - es_solids = c(grep("sob$", esty_build, value = T), grep("stb$", esty_build, value = T)) - es_gas = grep("gab$", esty_build, value = T) - es_liq = grep("hob$", esty_build, value = T) - es_heat = grep("heb$", esty_build, value = T) - es_hydro = grep("h2b$", esty_build, value = T) - - putty_ue = c("uescb","ueshb","uealb","uecwb") - - out <- mbind(out, - # Useful Energy - setNames(dimSums(vm_cesIO[,,"uealb"],dim=3,na.rm=T), "UE|Buildings|Appliances and Light (EJ/yr)"), - setNames(dimSums(vm_cesIO[,,"uecwb"],dim=3,na.rm=T), "UE|Buildings|Cooking and Water (EJ/yr)"), - setNames(dimSums(vm_cesIO[,,"ueshb"],dim=3,na.rm=T), "UE|Buildings|Space Heating (EJ/yr)"), - setNames(dimSums(vm_cesIO[,,"uescb"],dim=3,na.rm=T), "UE|Buildings|Space Cooling (EJ/yr)"), - - setNames(dimSums(vm_cesIO[,,putty_ue],dim=3,na.rm=T), "UE|Buildings (EJ/yr)"), - - setNames(dimSums(vm_cesIO[,,"uescb"],dim=3,na.rm=T), "UE|Buildings|Space Cooling|Electricity (EJ/yr)"), - - setNames(dimSums(vm_cesIO[,,"uealb"],dim=3,na.rm=T), "UE|Buildings|Appliances and Light|Electricity (EJ/yr)"), - - setNames(dimSums(v_prodEs[,,c("uecwsob","uecwstb")],dim=3,na.rm=T), "UE|Buildings|Cooking and Water|Solids (EJ/yr)"), - setNames(dimSums(v_prodEs[,,"uecwsob"],dim=3,na.rm=T), "UE|Buildings|Cooking and Water|Solids|Modern (EJ/yr)"), - setNames(dimSums(v_prodEs[,,"uecwstb"],dim=3,na.rm=T), "UE|Buildings|Cooking and Water|Solids|Traditional (EJ/yr)"), - setNames(dimSums(v_prodEs[,,"uecwelb"],dim=3,na.rm=T), "UE|Buildings|Cooking and Water|Electricity|Resistance (EJ/yr)"), - setNames(dimSums(v_prodEs[,,"uecwheb"],dim=3,na.rm=T), "UE|Buildings|Cooking and Water|Heat (EJ/yr)"), - setNames(dimSums(v_prodEs[,,"uecwgab"],dim=3,na.rm=T), "UE|Buildings|Cooking and Water|Gases (EJ/yr)"), - setNames(dimSums(v_prodEs[,,"uecwhob"],dim=3,na.rm=T), "UE|Buildings|Cooking and Water|Liquids (EJ/yr)"), - setNames(dimSums(v_prodEs[,,"uecwh2b"],dim=3,na.rm=T), "UE|Buildings|Cooking and Water|Hydrogen (EJ/yr)"), - setNames(dimSums(v_prodEs[,,"uecwhpb"],dim=3,na.rm=T), "UE|Buildings|Cooking and Water|Electricity|Heat pump (EJ/yr)"), - setNames(dimSums(v_prodEs[,,c("uecwelb","uecwhpb")],dim=3,na.rm=T), "UE|Buildings|Cooking and Water|Electricity (EJ/yr)"), - - - setNames(dimSums(v_prodEs[,,c("ueshsob","ueshstb")],dim=3,na.rm=T), "UE|Buildings|Space Heating|Solids (EJ/yr)"), - setNames(dimSums(v_prodEs[,,"ueshsob"],dim=3,na.rm=T), "UE|Buildings|Space Heating|Solids|Modern (EJ/yr)"), - setNames(dimSums(v_prodEs[,,"ueshstb"],dim=3,na.rm=T), "UE|Buildings|Space Heating|Solids|Traditional (EJ/yr)"), - setNames(dimSums(v_prodEs[,,"ueshelb"],dim=3,na.rm=T), "UE|Buildings|Space Heating|Electricity|Resistance (EJ/yr)"), - setNames(dimSums(v_prodEs[,,"ueshheb"],dim=3,na.rm=T), "UE|Buildings|Space Heating|Heat (EJ/yr)"), - setNames(dimSums(v_prodEs[,,"ueshgab"],dim=3,na.rm=T), "UE|Buildings|Space Heating|Gases (EJ/yr)"), - setNames(dimSums(v_prodEs[,,"ueshhob"],dim=3,na.rm=T), "UE|Buildings|Space Heating|Liquids (EJ/yr)"), - setNames(dimSums(v_prodEs[,,"ueshh2b"],dim=3,na.rm=T), "UE|Buildings|Space Heating|Hydrogen (EJ/yr)"), - setNames(dimSums(v_prodEs[,,"ueshhpb"],dim=3,na.rm=T), "UE|Buildings|Space Heating|Electricity|Heat pump (EJ/yr)"), - setNames(dimSums(v_prodEs[,,c("ueshelb","ueshhpb")],dim=3,na.rm=T), "UE|Buildings|Space Heating|Electricity (EJ/yr)"), - - # Final Energy - setNames(dimSums(vm_cesIO[,,"fealelb"],dim=3,na.rm=T), "FE|Buildings|Appliances and Light|Electricity (EJ/yr)"), - - setNames(dimSums(vm_demFeForEs[,,c("uecwsob","uecwstb")],dim=3,na.rm=T), "FE|Buildings|Cooking and Water|Solids (EJ/yr)"), - setNames(dimSums(vm_demFeForEs[,,"uecwsob"],dim=3,na.rm=T), "FE|Buildings|Cooking and Water|Solids|Modern (EJ/yr)"), - setNames(dimSums(vm_demFeForEs[,,"uecwstb"],dim=3,na.rm=T), "FE|Buildings|Cooking and Water|Solids|Traditional (EJ/yr)"), - setNames(dimSums(vm_demFeForEs[,,"uecwelb"],dim=3,na.rm=T), "FE|Buildings|Cooking and Water|Electricity|Resistance (EJ/yr)"), - setNames(dimSums(vm_demFeForEs[,,"uecwheb"],dim=3,na.rm=T), "FE|Buildings|Cooking and Water|Heat (EJ/yr)"), - setNames(dimSums(vm_demFeForEs[,,"uecwgab"],dim=3,na.rm=T), "FE|Buildings|Cooking and Water|Gases (EJ/yr)"), - setNames(dimSums(vm_demFeForEs[,,"uecwhob"],dim=3,na.rm=T), "FE|Buildings|Cooking and Water|Liquids (EJ/yr)"), - setNames(dimSums(vm_demFeForEs[,,"uecwh2b"],dim=3,na.rm=T), "FE|Buildings|Cooking and Water|Hydrogen (EJ/yr)"), - setNames(dimSums(vm_demFeForEs[,,"uecwhpb"],dim=3,na.rm=T), "FE|Buildings|Cooking and Water|Electricity|Heat pump (EJ/yr)"), - - setNames(dimSums(vm_demFeForEs[,,c("uecwelb","uecwhpb")],dim=3,na.rm=T), "FE|Buildings|Cooking and Water|Electricity (EJ/yr)"), - - setNames(dimSums(vm_cesIO[,,"fescelb"],dim=3,na.rm=T), "FE|Buildings|Space Cooling|Electricity (EJ/yr)"), - - setNames(dimSums(vm_demFeForEs[,,c("ueshsob","ueshstb")],dim=3,na.rm=T), "FE|Buildings|Space Heating|Solids (EJ/yr)"), - setNames(dimSums(vm_demFeForEs[,,"ueshsob"],dim=3,na.rm=T), "FE|Buildings|Space Heating|Solids|Modern (EJ/yr)"), - setNames(dimSums(vm_demFeForEs[,,"ueshstb"],dim=3,na.rm=T), "FE|Buildings|Space Heating|Solids|Traditional (EJ/yr)"), - setNames(dimSums(vm_demFeForEs[,,"ueshelb"],dim=3,na.rm=T), "FE|Buildings|Space Heating|Electricity|Resistance (EJ/yr)"), - setNames(dimSums(vm_demFeForEs[,,"ueshheb"],dim=3,na.rm=T), "FE|Buildings|Space Heating|Heat (EJ/yr)"), - setNames(dimSums(vm_demFeForEs[,,"ueshgab"],dim=3,na.rm=T), "FE|Buildings|Space Heating|Gases (EJ/yr)"), - setNames(dimSums(vm_demFeForEs[,,"ueshhob"],dim=3,na.rm=T), "FE|Buildings|Space Heating|Liquids (EJ/yr)"), - setNames(dimSums(vm_demFeForEs[,,"ueshh2b"],dim=3,na.rm=T), "FE|Buildings|Space Heating|Hydrogen (EJ/yr)"), - setNames(dimSums(vm_demFeForEs[,,"ueshhpb"],dim=3,na.rm=T), "FE|Buildings|Space Heating|Electricity|Heat pump (EJ/yr)"), - setNames(dimSums(vm_demFeForEs[,,c("ueshelb","ueshhpb")],dim=3,na.rm=T), "FE|Buildings|Space Heating|Electricity (EJ/yr)")#, - - ) + } out <- mbind(out, setNames(dimSums(out[,,c("UE|Buildings|Space Heating (EJ/yr)","UE|Buildings|Space Cooling (EJ/yr)")],dim=3,na.rm=T), "UE|Buildings|Space Conditioning (EJ/yr)"), diff --git a/R/reportLCOE.R b/R/reportLCOE.R index e7cca38f..6c39d3b9 100644 --- a/R/reportLCOE.R +++ b/R/reportLCOE.R @@ -1619,73 +1619,6 @@ df.co2price.weighted <- df.pomeg.expand %>% # Levelized Cost of UE in Buildings Putty Realization ---- - # if detailed buildings module on, calculate LCOE of fe2ue technologies - # following 36_modules/buildings/services_putty/presolve.gms - - if (module2realisation["buildings",2] == "services_putty") { - p36_esCapCostImplicit <- readGDX(gdx, "p36_esCapCostImplicit", restore_zeros = F) # capital cost (incl. OMF and implicit discount rate) - t.run <- getYears(p36_esCapCostImplicit) - p36_fePrice <- readGDX(gdx, "p36_fePrice", restore_zeros = F)[,t.run,] # FE price - p36_inconvpen <- readGDX(gdx, "p36_inconvpen")[,t.run,getNames(p36_esCapCostImplicit)] # invonience penalty (on heating oil) - pm_fe2es <- readGDX(gdx, "pm_fe2es", restore_zeros = F)[,t.run,getNames(p36_esCapCostImplicit)] # fe2es efficiency - p36_logitCalibration <- readGDX(gdx, "p36_logitCalibration", restore_zeros = F)[,t.run,] # logit calibration factors (invoncenience cost for buildings technologies to match current UE) - fe2es_dyn36 <- readGDX(gdx,"fe2es_dyn36") # fe,ue,te mapping of fe2ue buildings technologies - - # map FE price from FE dimension to technology dimension - p36_fePrice_ue <- p36_fePrice %>% - as.quitte() %>% - right_join(fe2es_dyn36) %>% - select(region, period, all_teEs, value) %>% - as.magpie(datacol=4) - - # map ES tax to technology dimensions - ES_tax <- (pm_tau_fe_tax_ES_st+pm_tau_fe_sub_ES_st)[,t.run,fe2es.buildings$all_esty] %>% - as.quitte() %>% - right_join(fe2es_dyn36) %>% - select(region, period, all_teEs, value) %>% - as.magpie(datacol=4) - - - UE.LCOE.build <- new.magpie(getRegions(vm_costTeCapital), getYears(vm_costTeCapital), - c("Investment Cost (incl OMF and impl discount)", - "Fuel Cost", - "Inconvenience Cost", - "ES Taxes", - "Calibration Factor Mark-up", - "Total LCOE")) %>% - add_dimension(dim=3.2, add = "all_teEs", nm = getNames(p36_esCapCostImplicit)) - - - ### UE Buildings LCOE calculation - # always convert to USD2015/MWh - # capital cost of UE technologies including OMF and including implicit discount rate on capital - UE.LCOE.build[,t.run,"Investment Cost (incl OMF and impl discount)"] <- p36_esCapCostImplicit * 1.2 / s_twa2mwh * 1e12 - # fuel cost - UE.LCOE.build[,t.run,"Fuel Cost"] <- p36_fePrice_ue / pm_fe2es * 1.2 / s_twa2mwh * 1e12 - # inconvenience cost for environmental/health effects (e.g. traditional biomass, heating oil) - UE.LCOE.build[,t.run,"Inconvenience Cost"] <- p36_inconvpen / pm_fe2es * 1.2 / s_twa2mwh * 1e12 - # taxes on ES level (note: these taxes are also subsumed under FE taxes in the se2fe LCOE) - UE.LCOE.build[,t.run,"ES Taxes"] <- ES_tax / pm_fe2es * 1.2 / s_twa2mwh * 1e12 - # calibration factor mark-up on buildings technologies, these are other (inconvenience) cost to represent current UE shares, they fade-out over time - UE.LCOE.build[,t.run,"Calibration Factor Mark-up"] <- p36_logitCalibration * 1.2 / s_twa2mwh * 1e12 - # total LCOE - UE.LCOE.build[,,"Total LCOE"] <- UE.LCOE.build[,,"Investment Cost (incl OMF and impl discount)"] + - UE.LCOE.build[,,"Fuel Cost"] + - UE.LCOE.build[,,"Inconvenience Cost"] + - UE.LCOE.build[,,"Calibration Factor Mark-up"] + - UE.LCOE.build[,,"ES Taxes"] - - # add dimensions to fit to other tech LCOE - UE.LCOE.build <- UE.LCOE.build %>% - as.quitte() %>% - left_join(fe2es_dyn36) %>% - mutate( sector = "buildings", type = "marginal", unit ="US$2015/MWh", type ="marginal" ) %>% - rename(cost = data, tech = all_teEs, output = all_esty) %>% - select(region, period, type, output, tech, sector, unit, cost, value) %>% - as.magpie(datacol=9) - - } - # Transform LCOE to output format ---- @@ -1714,9 +1647,6 @@ df.co2price.weighted <- df.pomeg.expand %>% # add DAC levelized cost, buildings UE LCOE to marginal LCOE LCOE.mar.out <- mbind(LCOE.mar.out, LCOD) - if (module2realisation["buildings",2] == "services_putty") { - LCOE.mar.out <- mbind(LCOE.mar.out, UE.LCOE.build) - } # bind to previous calculations (if there are) LCOE.out <- mbind(LCOE.out,LCOE.mar.out) diff --git a/R/reportMacroEconomy.R b/R/reportMacroEconomy.R index afaa92d8..af66de57 100644 --- a/R/reportMacroEconomy.R +++ b/R/reportMacroEconomy.R @@ -137,41 +137,8 @@ reportMacroEconomy <- function(gdx, regionSubsetList = NULL, } } - if (buil_mod %in% c("services_putty", "services_with_capital")) { - #-Capital Stocks - cap <- mbind(setNames(vm_cesIO[, , "kaphc"] * 1000, "Capital Stock|Non-ESM|Space Conditioning (billion US$2005)"), - setNames(vm_cesIO[, , "kapal"] * 1000, "Capital Stock|Non-ESM|Appliances and Light (billion US$2005)"), - setNames(vm_cesIO[, , "kapsc"] * 1000, "Capital Stock|Non-ESM|Space Cooling (billion US$2005)"), - setNames(vm_cesIO[, , "kap"] * 1000, "Capital Stock|Non-ESM|Macro (billion US$2005)")) - cap <- mbind(cap, setNames(cap[, , "Capital Stock|Non-ESM|Space Conditioning (billion US$2005)"] - + cap[, , "Capital Stock|Non-ESM|Appliances and Light (billion US$2005)"] - + cap[, , "Capital Stock|Non-ESM|Space Cooling (billion US$2005)"], - "Capital Stock|Non-ESM|End-use (billion US$2005)")) - cap <- mbind(cap, setNames(cap[, , "Capital Stock|Non-ESM|End-use (billion US$2005)"] - + cap[, , "Capital Stock|Non-ESM|Macro (billion US$2005)"], - "Capital Stock|Non-ESM (billion US$2005)")) - - #-Capital investments - - invM <- mbind( - setNames(vm_invMacro[, , "kaphc"] * 1000, "Investments|Non-ESM|Space Conditioning (billion US$2005/yr)"), - setNames(vm_invMacro[, , "kapal"] * 1000, "Investments|Non-ESM|Appliances and Light (billion US$2005/yr)"), - setNames(vm_invMacro[, , "kapsc"] * 1000, "Investments|Non-ESM|Space Cooling (billion US$2005/yr)"), - setNames(vm_invMacro[, , "kap"] * 1000, "Investments|Non-ESM|Macro (billion US$2005/yr)") - ) - invM <- mbind(invM, setNames(invM[, , "Investments|Non-ESM|Space Conditioning (billion US$2005/yr)"] - + invM[, , "Investments|Non-ESM|Appliances and Light (billion US$2005/yr)"] - + invM[, , "Investments|Non-ESM|Space Cooling (billion US$2005/yr)"], - "Investments|Non-ESM|End-use (billion US$2005/yr)")) - - invM <- mbind(invM, setNames(invM[, , "Investments|Non-ESM|End-use (billion US$2005/yr)"] - + invM[, , "Investments|Non-ESM|Macro (billion US$2005/yr)"], - "Investments|Non-ESM (billion US$2005/yr)")) - - } else { - cap <- setNames(vm_cesIO[, , "kap"] * 1000, "Capital Stock|Non-ESM (billion US$2005)") - invM <- setNames(vm_invMacro[, , "kap"] * 1000, "Investments|Non-ESM (billion US$2005/yr)") - } + cap <- setNames(vm_cesIO[, , "kap"] * 1000, "Capital Stock|Non-ESM (billion US$2005)") + invM <- setNames(vm_invMacro[, , "kap"] * 1000, "Investments|Non-ESM (billion US$2005/yr)") inv <- setNames(invM[, , "Investments|Non-ESM (billion US$2005/yr)"] + invE, "Investments (billion US$2005/yr)") # TODO: add p80_curracc @@ -201,22 +168,7 @@ reportMacroEconomy <- function(gdx, regionSubsetList = NULL, ces <- mbind(ces, setNames(vm_cesIO[, , "fesob"] * TWa_2_EJ, "CES_input|fesob (EJ/yr)")) ces <- mbind(ces, setNames(vm_cesIO[, , "feheb"] * TWa_2_EJ, "CES_input|feheb (EJ/yr)")) ces <- mbind(ces, setNames(vm_cesIO[, , "feh2b"] * TWa_2_EJ, "CES_input|feh2b (EJ/yr)")) - } else if (buil_mod %in% c("services_putty", "services_with_capital")) { - ces <- mbind(ces, setNames(vm_cesIO[, , "fealelb"] * TWa_2_EJ, "CES_input|fealelb (EJ/yr)")) - ces <- mbind(ces, setNames(vm_cesIO[, , "fescelb"] * TWa_2_EJ, "CES_input|fescelb (EJ/yr)")) - - ces <- mbind(ces, setNames(vm_cesIO[, , "uescb"] * TWa_2_EJ, "CES_input|uescb (EJ/yr)")) - ces <- mbind(ces, setNames(vm_cesIO[, , "ueshb"] * TWa_2_EJ, "CES_input|ueshb (EJ/yr)")) - ces <- mbind(ces, setNames(vm_cesIO[, , "ueswb"] * TWa_2_EJ, "CES_input|ueswb (EJ/yr)")) - ces <- mbind(ces, setNames(vm_cesIO[, , "uealb"] * TWa_2_EJ, "CES_input|uealb (EJ/yr)")) - ces <- mbind(ces, setNames(vm_cesIO[, , "uecwb"] * TWa_2_EJ, "CES_input|uecwb (EJ/yr)")) - - - ces <- mbind(ces, setNames(vm_cesIO[, , "kapal"] * 1000, "CES_input|kapal (billion US$2005)")) - ces <- mbind(ces, setNames(vm_cesIO[, , "kapsc"] * 1000, "CES_input|kapsc (billion US$2005)")) - ces <- mbind(ces, setNames(vm_cesIO[, , "kaphc"] * 1000, "CES_input|kaphc (billion US$2005)")) - } - + } if (indu_mod == "fixed_shares") { ces <- mbind(ces, setNames(vm_cesIO[, , "feeli"] * TWa_2_EJ, "CES_input|feeli (EJ/yr)"))