-
Notifications
You must be signed in to change notification settings - Fork 67
Develop Mod for CHP Defaults Updates and Dispatch Options #717
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Closed
Closed
Changes from all commits
Commits
Show all changes
52 commits
Select commit
Hold shift + click to select a range
822ba31
add thermal to absorption chiller outputs and CHP dispatch logic inputs
zolanaj 27eed94
update test values to include new CHP inputs
zolanaj 65ae8c8
update steamturbine outputs from TES
zolanaj 7660a11
Update CHANGELOG.md
zolanaj 2f4c499
update REopt version in Manifest.toml
zolanaj 42f4b27
Update CHANGELOG.md
zolanaj 57e157e
Update CHANGELOG.md
zolanaj 8a21023
Update CHANGELOG.md
zolanaj 5542506
Fix test post JSON: rename months_serving_absorption_chiller to month…
Copilot dce65f8
add include_cooling_in_chp_size to thermal in results test
zolanaj 771a76e
Revert "update REopt version in Manifest.toml"
Bill-Becker 6a33d88
Update REopt.jl from within Docker
Bill-Becker 55fd7d9
Add migration for new CHP inputs and thermal_to_absorption_chiller ou…
Bill-Becker 650c265
Improve error logging with saving models
Bill-Becker 374a438
Update models for CHP and add GHP output
Bill-Becker 05eaf48
Change site location to avoid CST NaN production value, and zero out …
Bill-Becker 8e2e097
update manifest to point to feature branch to test
zolanaj 44c9f6e
bring nonzero HighTempThermalStorage size back
zolanaj 17c0bfd
update test value with Hot TES added back into system
zolanaj 840cb34
Fix months validation and add back input
Bill-Becker 7a0e50c
Update REopt.jl to registered v0.58.2
Bill-Becker 7c69339
Fix months input to align with REopt.jl
Bill-Becker 6bd0243
Update REopt.jl to #develop branch v0.58.2
Bill-Becker 991edda
Update expected Absorption Chiller defaults
Bill-Becker 29a9e57
Squash CHP dispatch and absorption chiller model migrations
Bill-Becker 8ae740d
Update hot and cold thermal energy storage cost to $1.9/gal
Bill-Becker 428ef89
Update REopt.jl#develop with fix for SteamTurbine size classes
Bill-Becker 34fd8d9
Fix SteamTurbine size_class 5
Bill-Becker 0e331e3
Update REopt.jl to registered v0.59.0
Bill-Becker f2cca93
Update results table spreadsheet with fixes and new additions
Bill-Becker ba24336
add new absorption chiller elements to chp_defaults endpoint
zolanaj 413c3cc
update test_chp_defaults
zolanaj 25e0a9e
add new absorption chiller inputs to chp defaults test in julia
zolanaj 135c507
add new values to views.py
zolanaj ec0fad3
ren include_cooling_in_size include_cooling_in_chp_size
zolanaj f586e83
change to feature branch with aligned naming
zolanaj b641c80
update input for new chp defaults test
zolanaj 09890bc
update manifest to develop
zolanaj 20b5e28
update manifest to v0.59.1
zolanaj da7dea4
Fix cooling param for CHP sizing
Bill-Becker 5039465
Update REopt.jl branch with fix for negative and arbitrary thermal_to…
Bill-Becker eff61f6
Update REopt.jl branch after fixing copilot issues
Bill-Becker d8b6f74
Add dummy commit code to testing.txt
Bill-Becker 0895b10
Update REopt.jl after fixing thermal_to_loads results
Bill-Becker 8172586
Merge pull request #713 from NatLabRockies/add-chp-dispatch-policies
Bill-Becker cbf8b0d
Update REopt.jl to latest registered version 0.59.2
Bill-Becker 4407f33
Fix migrations which had the wrong name change
Bill-Becker 2097403
Avoid raising exception with updating inputs from REopt.jl
Bill-Becker 22eeafe
Update changelog heading for develop branch
Bill-Becker 54d4fb2
Handle if user inputs include_cooling_in_chp_size param
Bill-Becker 7ad3cf0
Fix chp_defaults include_cooling_in_chp_size query bool handling
Copilot 3beb9f9
Tighten include_cooling_in_chp_size normalization in chp_defaults
Copilot File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
90 changes: 90 additions & 0 deletions
90
..._to_turbine_series_mmbtu_per_hour_hightempthermalstorageoutputs_storage_to_steamturbin.py
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,90 @@ | ||
| # Generated by Django 4.2.26 on 2026-05-14 22:39 | ||
|
|
||
| import django.contrib.postgres.fields | ||
| import django.core.validators | ||
| from django.db import migrations, models | ||
|
|
||
|
|
||
| class Migration(migrations.Migration): | ||
|
|
||
| dependencies = [ | ||
| ('reoptjl', '0113_merge_20251209_2338'), | ||
| ] | ||
|
|
||
| operations = [ | ||
| migrations.RenameField( | ||
| model_name='hightempthermalstorageoutputs', | ||
| old_name='storage_to_turbine_series_mmbtu_per_hour', | ||
| new_name='storage_to_steamturbine_series_mmbtu_per_hour', | ||
| ), | ||
| migrations.RenameField( | ||
| model_name='hotthermalstorageoutputs', | ||
| old_name='storage_to_turbine_series_mmbtu_per_hour', | ||
| new_name='storage_to_steamturbine_series_mmbtu_per_hour', | ||
| ), | ||
| migrations.AddField( | ||
| model_name='boileroutputs', | ||
| name='thermal_to_absorption_chiller_series_mmbtu_per_hour', | ||
| field=django.contrib.postgres.fields.ArrayField(base_field=models.FloatField(blank=True, null=True), default=list, size=None), | ||
| ), | ||
| migrations.AddField( | ||
| model_name='chpinputs', | ||
| name='follow_electrical_load', | ||
| field=models.BooleanField(blank=True, default=False, help_text='Boolean indicator if CHP follows the electrical load by running at capacity or meeting the load only', null=True), | ||
| ), | ||
| migrations.AddField( | ||
| model_name='chpinputs', | ||
| name='include_cooling_in_chp_size', | ||
| field=models.BooleanField(blank=True, default=False, help_text='Boolean indicator if cooling load (via absorption chiller) is included in the heuristic CHP sizing calculation along with heating loads', null=True), | ||
| ), | ||
| migrations.AddField( | ||
| model_name='chpinputs', | ||
| name='months_serving_absorption_chiller_only', | ||
| field=django.contrib.postgres.fields.ArrayField(base_field=models.IntegerField(blank=True, null=True, validators=[django.core.validators.MinValueValidator(1), django.core.validators.MaxValueValidator(12)]), blank=True, default=list, help_text='Months of the year in which the CHP only serves the absorption chiller load, only used if serve_absorption_chiller_only is True', size=None), | ||
| ), | ||
| migrations.AddField( | ||
| model_name='chpinputs', | ||
| name='serve_absorption_chiller_only', | ||
| field=models.BooleanField(blank=True, default=False, help_text='Boolean indicator if CHP produced heat either serves absorption chiller or sends it to waste', null=True), | ||
| ), | ||
| migrations.AddField( | ||
| model_name='chpoutputs', | ||
| name='thermal_to_absorption_chiller_series_mmbtu_per_hour', | ||
| field=django.contrib.postgres.fields.ArrayField(base_field=models.FloatField(blank=True, null=True), default=list, help_text='Thermal power to absorption chiller time-series array [MMBtu/hr]', size=None), | ||
| ), | ||
| migrations.AddField( | ||
| model_name='cstoutputs', | ||
| name='thermal_to_absorption_chiller_series_mmbtu_per_hour', | ||
| field=django.contrib.postgres.fields.ArrayField(base_field=models.FloatField(blank=True, null=True), default=list, size=None), | ||
| ), | ||
| migrations.AddField( | ||
| model_name='electricheateroutputs', | ||
| name='thermal_to_absorption_chiller_series_mmbtu_per_hour', | ||
| field=django.contrib.postgres.fields.ArrayField(base_field=models.FloatField(blank=True, null=True), default=list, size=None), | ||
| ), | ||
| migrations.AddField( | ||
| model_name='existingboileroutputs', | ||
| name='thermal_to_absorption_chiller_series_mmbtu_per_hour', | ||
| field=django.contrib.postgres.fields.ArrayField(base_field=models.FloatField(blank=True, null=True), default=list, size=None), | ||
| ), | ||
| migrations.AddField( | ||
| model_name='ghpoutputs', | ||
| name='thermal_to_load_series_mmbtu_per_hour', | ||
| field=django.contrib.postgres.fields.ArrayField(base_field=models.FloatField(blank=True, null=True), blank=True, default=list, null=True, size=None), | ||
| ), | ||
| migrations.AddField( | ||
| model_name='hightempthermalstorageoutputs', | ||
| name='storage_to_absorption_chiller_series_mmbtu_per_hour', | ||
| field=django.contrib.postgres.fields.ArrayField(base_field=models.FloatField(blank=True, null=True), default=list, size=None), | ||
| ), | ||
| migrations.AddField( | ||
| model_name='hotthermalstorageoutputs', | ||
| name='storage_to_absorption_chiller_series_mmbtu_per_hour', | ||
| field=django.contrib.postgres.fields.ArrayField(base_field=models.FloatField(blank=True, null=True), default=list, size=None), | ||
| ), | ||
| migrations.AddField( | ||
| model_name='steamturbineoutputs', | ||
| name='thermal_to_absorption_chiller_series_mmbtu_per_hour', | ||
| field=django.contrib.postgres.fields.ArrayField(base_field=models.FloatField(blank=True, null=True), default=list, size=None), | ||
| ), | ||
| ] |
24 changes: 24 additions & 0 deletions
24
reoptjl/migrations/0115_alter_coldthermalstorageinputs_installed_cost_per_gal_and_more.py
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,24 @@ | ||
| # Generated by Django 4.2.26 on 2026-05-14 22:40 | ||
|
|
||
| import django.core.validators | ||
| from django.db import migrations, models | ||
|
|
||
|
|
||
| class Migration(migrations.Migration): | ||
|
|
||
| dependencies = [ | ||
| ('reoptjl', '0114_rename_storage_to_turbine_series_mmbtu_per_hour_hightempthermalstorageoutputs_storage_to_steamturbin'), | ||
| ] | ||
|
|
||
| operations = [ | ||
| migrations.AlterField( | ||
| model_name='coldthermalstorageinputs', | ||
| name='installed_cost_per_gal', | ||
| field=models.FloatField(blank=True, default=1.9, help_text='Installed cold TES cost in $/gal', validators=[django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(10000.0)]), | ||
| ), | ||
| migrations.AlterField( | ||
| model_name='hotthermalstorageinputs', | ||
| name='installed_cost_per_gal', | ||
| field=models.FloatField(blank=True, default=1.9, help_text='Installed hot TES cost in $/gal', validators=[django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(10000.0)]), | ||
| ), | ||
| ] |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.