From eab8f663e7f0c0e3941b7268781c4b0a8bc79d12 Mon Sep 17 00:00:00 2001 From: bill-becker Date: Tue, 3 Oct 2023 18:25:27 -0600 Subject: [PATCH 1/5] Add ExistingBoiler outputs --- ...l_thermal_production_mmbtu_bau_and_more.py | 23 +++++++++++++++++++ reoptjl/models.py | 2 ++ 2 files changed, 25 insertions(+) create mode 100644 reoptjl/migrations/0047_existingboileroutputs_annual_thermal_production_mmbtu_bau_and_more.py diff --git a/reoptjl/migrations/0047_existingboileroutputs_annual_thermal_production_mmbtu_bau_and_more.py b/reoptjl/migrations/0047_existingboileroutputs_annual_thermal_production_mmbtu_bau_and_more.py new file mode 100644 index 000000000..d66c6e105 --- /dev/null +++ b/reoptjl/migrations/0047_existingboileroutputs_annual_thermal_production_mmbtu_bau_and_more.py @@ -0,0 +1,23 @@ +# Generated by Django 4.0.7 on 2023-10-03 22:40 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('reoptjl', '0046_ghpinputs_aux_cooler_installed_cost_per_ton_and_more'), + ] + + operations = [ + migrations.AddField( + model_name='existingboileroutputs', + name='annual_thermal_production_mmbtu_bau', + field=models.FloatField(blank=True, null=True), + ), + migrations.AddField( + model_name='existingboileroutputs', + name='year_one_fuel_cost_before_tax_bau', + field=models.FloatField(blank=True, null=True), + ), + ] diff --git a/reoptjl/models.py b/reoptjl/models.py index 1e501968f..c749333df 100644 --- a/reoptjl/models.py +++ b/reoptjl/models.py @@ -4812,7 +4812,9 @@ class ExistingBoilerOutputs(BaseModel, models.Model): lifecycle_fuel_cost_after_tax = models.FloatField(null=True, blank=True) lifecycle_fuel_cost_after_tax_bau = models.FloatField(null=True, blank=True) annual_thermal_production_mmbtu = models.FloatField(null=True, blank=True) + annual_thermal_production_mmbtu_bau = models.FloatField(null=True, blank=True) year_one_fuel_cost_before_tax = models.FloatField(null=True, blank=True) + year_one_fuel_cost_before_tax_bau = models.FloatField(null=True, blank=True) thermal_to_storage_series_mmbtu_per_hour = ArrayField( models.FloatField(null=True, blank=True), From 4fb00bfdd859f4522fcf39a223446043a55a0e27 Mon Sep 17 00:00:00 2001 From: bill-becker Date: Tue, 3 Oct 2023 18:25:52 -0600 Subject: [PATCH 2/5] Update reopt_version --- reoptjl/api.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/reoptjl/api.py b/reoptjl/api.py index d73504b4b..d12bcaa60 100644 --- a/reoptjl/api.py +++ b/reoptjl/api.py @@ -96,7 +96,7 @@ def obj_create(self, bundle, **kwargs): meta = { "run_uuid": run_uuid, "api_version": 3, - "reopt_version": "0.32.7", + "reopt_version": "0.35.0", "status": "Validating..." } bundle.data.update({"APIMeta": meta}) From 1bd1a092a54c3e3642249748a6fa3e78e8d22e28 Mon Sep 17 00:00:00 2001 From: bill-becker Date: Tue, 3 Oct 2023 18:28:22 -0600 Subject: [PATCH 3/5] Temp update REopt.jl to feature branch --- julia_src/Manifest.toml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/julia_src/Manifest.toml b/julia_src/Manifest.toml index 756c3f53f..34f437a9f 100644 --- a/julia_src/Manifest.toml +++ b/julia_src/Manifest.toml @@ -717,8 +717,8 @@ uuid = "3fa0cd96-eef1-5676-8a61-b3b8758bbffb" [[deps.REopt]] deps = ["ArchGDAL", "CSV", "CoolProp", "DataFrames", "Dates", "DelimitedFiles", "HTTP", "JLD", "JSON", "JuMP", "LinDistFlow", "LinearAlgebra", "Logging", "MathOptInterface", "Requires", "Roots", "Statistics", "TestEnv"] -git-tree-sha1 = "c7c00b10cfc323646d66a42228e0b65c96931b6d" -repo-rev = "master" +git-tree-sha1 = "d35bd761fc490b691dfab73948d4b69c48311594" +repo-rev = "ghp_results_updates" repo-url = "https://github.com/NREL/REopt.jl.git" uuid = "d36ad4e8-d74a-4f7a-ace1-eaea049febf6" version = "0.35.0" From 731d9ecdc58b8abc57857d79fcab472a70aa154e Mon Sep 17 00:00:00 2001 From: bill-becker Date: Tue, 3 Oct 2023 21:47:34 -0600 Subject: [PATCH 4/5] Add more Existing Chiller/Boiler outputs --- ...ual_fuel_consumption_mmbtu_bau_and_more.py | 38 +++++++++++++++++++ reoptjl/models.py | 20 +++++++++- 2 files changed, 57 insertions(+), 1 deletion(-) create mode 100644 reoptjl/migrations/0048_existingboileroutputs_annual_fuel_consumption_mmbtu_bau_and_more.py diff --git a/reoptjl/migrations/0048_existingboileroutputs_annual_fuel_consumption_mmbtu_bau_and_more.py b/reoptjl/migrations/0048_existingboileroutputs_annual_fuel_consumption_mmbtu_bau_and_more.py new file mode 100644 index 000000000..b41cfbc75 --- /dev/null +++ b/reoptjl/migrations/0048_existingboileroutputs_annual_fuel_consumption_mmbtu_bau_and_more.py @@ -0,0 +1,38 @@ +# Generated by Django 4.0.7 on 2023-10-04 02:38 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('reoptjl', '0047_existingboileroutputs_annual_thermal_production_mmbtu_bau_and_more'), + ] + + operations = [ + migrations.AddField( + model_name='existingboileroutputs', + name='annual_fuel_consumption_mmbtu_bau', + field=models.FloatField(blank=True, null=True), + ), + migrations.AddField( + model_name='existingchilleroutputs', + name='annual_electric_consumption_kwh_bau', + field=models.FloatField(blank=True, help_text='Annual chiller electric consumption for BAU case [kWh]', null=True), + ), + migrations.AddField( + model_name='existingchilleroutputs', + name='annual_thermal_production_tonhour_bau', + field=models.FloatField(blank=True, help_text='Annual chiller thermal production for BAU case [Ton Hour]', null=True), + ), + migrations.AddField( + model_name='financialoutputs', + name='lifecycle_fuel_costs_after_tax_bau', + field=models.FloatField(blank=True, help_text='Component of lifecycle costs (LCC). This value is the present value of all fuel costs over the analysis period, after tax in the BAU case.', null=True), + ), + migrations.AlterField( + model_name='existingchilleroutputs', + name='annual_thermal_production_tonhour', + field=models.FloatField(blank=True, help_text='Annual chiller thermal production [Ton Hour]', null=True), + ), + ] diff --git a/reoptjl/models.py b/reoptjl/models.py index c749333df..a90a71c71 100644 --- a/reoptjl/models.py +++ b/reoptjl/models.py @@ -1005,6 +1005,11 @@ class FinancialOutputs(BaseModel, models.Model): help_text=("Component of lifecycle costs (LCC). This value is the present value of all fuel costs over the analysis period, after tax.") ) + lifecycle_fuel_costs_after_tax_bau = models.FloatField( + null=True, blank=True, + help_text=("Component of lifecycle costs (LCC). This value is the present value of all fuel costs over the analysis period, after tax in the BAU case.") + ) + lifecycle_chp_standby_cost_after_tax = models.FloatField( null=True, blank=True, help_text=("Component of lifecycle costs (LCC). This value is the present value of all CHP standby charges, after tax.") @@ -4626,12 +4631,24 @@ class ExistingChillerOutputs(BaseModel, models.Model): help_text=("Annual chiller electric consumption [kWh]") ) + annual_electric_consumption_kwh_bau = models.FloatField( + null=True, + blank=True, + help_text=("Annual chiller electric consumption for BAU case [kWh]") + ) + annual_thermal_production_tonhour = models.FloatField( null=True, blank=True, - help_text=("Annual chiller thermal production [Ton Hour") + help_text=("Annual chiller thermal production [Ton Hour]") ) + annual_thermal_production_tonhour_bau = models.FloatField( + null=True, + blank=True, + help_text=("Annual chiller thermal production for BAU case [Ton Hour]") + ) + def clean(self): pass @@ -4803,6 +4820,7 @@ class ExistingBoilerOutputs(BaseModel, models.Model): ) annual_fuel_consumption_mmbtu = models.FloatField(null=True, blank=True) + annual_fuel_consumption_mmbtu_bau = models.FloatField(null=True, blank=True) fuel_consumption_series_mmbtu_per_hour = ArrayField( models.FloatField(null=True, blank=True), From 11ee36388209d3bf14a77e261816f285843c7d98 Mon Sep 17 00:00:00 2001 From: bill-becker Date: Wed, 4 Oct 2023 09:37:01 -0600 Subject: [PATCH 5/5] Update REopt.jl to master with GHP and thermal results --- julia_src/Manifest.toml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/julia_src/Manifest.toml b/julia_src/Manifest.toml index 34f437a9f..699507bba 100644 --- a/julia_src/Manifest.toml +++ b/julia_src/Manifest.toml @@ -717,8 +717,8 @@ uuid = "3fa0cd96-eef1-5676-8a61-b3b8758bbffb" [[deps.REopt]] deps = ["ArchGDAL", "CSV", "CoolProp", "DataFrames", "Dates", "DelimitedFiles", "HTTP", "JLD", "JSON", "JuMP", "LinDistFlow", "LinearAlgebra", "Logging", "MathOptInterface", "Requires", "Roots", "Statistics", "TestEnv"] -git-tree-sha1 = "d35bd761fc490b691dfab73948d4b69c48311594" -repo-rev = "ghp_results_updates" +git-tree-sha1 = "413b5cbf443cbfe03c94bab45e84a6bd4ad81b97" +repo-rev = "master" repo-url = "https://github.com/NREL/REopt.jl.git" uuid = "d36ad4e8-d74a-4f7a-ace1-eaea049febf6" version = "0.35.0"