From 738fbd7a30ecb7e68130b94387314d317a42a778 Mon Sep 17 00:00:00 2001 From: Ana Mileva Date: Wed, 31 Jan 2024 10:14:52 -0800 Subject: [PATCH] Hydro energy budgets by stage (#1091) --- ...oject_hydro_operational_chars_2periods.csv | 26 ++++++++++++++----- ...ect_hydro_operational_chars_2periods_2.csv | 26 ++++++++++++++----- ...ect_hydro_operational_chars_2periods_3.csv | 6 +++-- ...ect_hydro_operational_chars_2periods_4.csv | 26 ++++++++++++++----- db/db_schema.sql | 4 +-- .../operational_types/common_functions.py | 2 ++ 6 files changed, 65 insertions(+), 25 deletions(-) diff --git a/db/csvs_test_examples/project/project_hydro_operational_chars/Hydro-1-project_hydro_operational_chars_2periods.csv b/db/csvs_test_examples/project/project_hydro_operational_chars/Hydro-1-project_hydro_operational_chars_2periods.csv index 898298de0..4d96a4e62 100644 --- a/db/csvs_test_examples/project/project_hydro_operational_chars/Hydro-1-project_hydro_operational_chars_2periods.csv +++ b/db/csvs_test_examples/project/project_hydro_operational_chars/Hydro-1-project_hydro_operational_chars_2periods.csv @@ -1,7 +1,19 @@ -balancing_type_project,horizon,period,average_power_fraction,min_power_fraction,max_power_fraction -day,202001,2020,0.5,0.166667,1 -day,202002,2020,0.5,0.166667,1 -day,202003,2020,0.5,0.166667,1 -day,203001,2030,0.5,0.166667,1 -day,203002,2030,0.5,0.166667,1 -day,203003,2030,0.5,0.166667,1 \ No newline at end of file +stage_id,balancing_type_project,horizon,average_power_fraction,min_power_fraction,max_power_fraction +1,day,202001,0.5,0.166667,1 +1,day,202002,0.5,0.166667,1 +1,day,202003,0.5,0.166667,1 +1,day,203001,0.5,0.166667,1 +1,day,203002,0.5,0.166667,1 +1,day,203003,0.5,0.166667,1 +2,day,202001,0.5,0.166667,1 +2,day,202002,0.5,0.166667,1 +2,day,202003,0.5,0.166667,1 +2,day,203001,0.5,0.166667,1 +2,day,203002,0.5,0.166667,1 +2,day,203003,0.5,0.166667,1 +3,day,202001,0.5,0.166667,1 +3,day,202002,0.5,0.166667,1 +3,day,202003,0.5,0.166667,1 +3,day,203001,0.5,0.166667,1 +3,day,203002,0.5,0.166667,1 +3,day,203003,0.5,0.166667,1 \ No newline at end of file diff --git a/db/csvs_test_examples/project/project_hydro_operational_chars/Hydro-2-project_hydro_operational_chars_2periods_2.csv b/db/csvs_test_examples/project/project_hydro_operational_chars/Hydro-2-project_hydro_operational_chars_2periods_2.csv index 3f492316a..fafd7afd2 100644 --- a/db/csvs_test_examples/project/project_hydro_operational_chars/Hydro-2-project_hydro_operational_chars_2periods_2.csv +++ b/db/csvs_test_examples/project/project_hydro_operational_chars/Hydro-2-project_hydro_operational_chars_2periods_2.csv @@ -1,7 +1,19 @@ -balancing_type_project,horizon,period,average_power_fraction,min_power_fraction,max_power_fraction -day,202001,2020,0.33333,0.16667,1 -day,202002,2020,0.66667,0.16667,1 -day,202003,2020,0.66667,0.16667,1 -day,203001,2030,0.33333,0.16667,1 -day,203002,2030,0.66667,0.16667,1 -day,203003,2030,0.66667,0.16667,1 \ No newline at end of file +stage_id,balancing_type_project,horizon,average_power_fraction,min_power_fraction,max_power_fraction +1,day,202001,0.33333,0.16667,1 +1,day,202002,0.66667,0.16667,1 +1,day,202003,0.66667,0.16667,1 +1,day,203001,0.33333,0.16667,1 +1,day,203002,0.66667,0.16667,1 +1,day,203003,0.66667,0.16667,1 +2,day,202001,0.33333,0.16667,1 +2,day,202002,0.66667,0.16667,1 +2,day,202003,0.66667,0.16667,1 +2,day,203001,0.33333,0.16667,1 +2,day,203002,0.66667,0.16667,1 +2,day,203003,0.66667,0.16667,1 +3,day,202001,0.33333,0.16667,1 +3,day,202002,0.66667,0.16667,1 +3,day,202003,0.66667,0.16667,1 +3,day,203001,0.33333,0.16667,1 +3,day,203002,0.66667,0.16667,1 +3,day,203003,0.66667,0.16667,1 \ No newline at end of file diff --git a/db/csvs_test_examples/project/project_hydro_operational_chars/Hydro-3-project_hydro_operational_chars_2periods_3.csv b/db/csvs_test_examples/project/project_hydro_operational_chars/Hydro-3-project_hydro_operational_chars_2periods_3.csv index 1a50e28f0..812d19a31 100644 --- a/db/csvs_test_examples/project/project_hydro_operational_chars/Hydro-3-project_hydro_operational_chars_2periods_3.csv +++ b/db/csvs_test_examples/project/project_hydro_operational_chars/Hydro-3-project_hydro_operational_chars_2periods_3.csv @@ -1,2 +1,4 @@ -balancing_type_project,horizon,period,average_power_fraction,min_power_fraction,max_power_fraction -year,2020,2020,0.5,0.166667,1 \ No newline at end of file +stage_id,balancing_type_project,horizon,average_power_fraction,min_power_fraction,max_power_fraction +1,year,2020,0.5,0.166667,1 +2,year,2020,0.5,0.166667,1 +3,year,2020,0.5,0.166667,1 \ No newline at end of file diff --git a/db/csvs_test_examples/project/project_hydro_operational_chars/Hydro-4-project_hydro_operational_chars_2periods_4.csv b/db/csvs_test_examples/project/project_hydro_operational_chars/Hydro-4-project_hydro_operational_chars_2periods_4.csv index e1e67a19c..02ed6e4d8 100644 --- a/db/csvs_test_examples/project/project_hydro_operational_chars/Hydro-4-project_hydro_operational_chars_2periods_4.csv +++ b/db/csvs_test_examples/project/project_hydro_operational_chars/Hydro-4-project_hydro_operational_chars_2periods_4.csv @@ -1,7 +1,19 @@ -balancing_type_project,horizon,period,average_power_fraction,min_power_fraction,max_power_fraction -day,202001,2020,0.333333,0.166667,1 -day,202002,2020,0.666667,0.166667,1 -day,202003,2020,0.666667,0.166667,1 -day,203001,2030,0.333333,0.166667,1 -day,203002,2030,0.666667,0.166667,1 -day,203003,2030,0.666667,0.166667,1 \ No newline at end of file +stage_id,balancing_type_project,horizon,average_power_fraction,min_power_fraction,max_power_fraction +1,day,202001,0.333333,0.166667,1 +1,day,202002,0.666667,0.166667,1 +1,day,202003,0.666667,0.166667,1 +1,day,203001,0.333333,0.166667,1 +1,day,203002,0.666667,0.166667,1 +1,day,203003,0.666667,0.166667,1 +2,day,202001,0.333333,0.166667,1 +2,day,202002,0.666667,0.166667,1 +2,day,202003,0.666667,0.166667,1 +2,day,203001,0.333333,0.166667,1 +2,day,203002,0.666667,0.166667,1 +2,day,203003,0.666667,0.166667,1 +3,day,202001,0.333333,0.166667,1 +3,day,202002,0.666667,0.166667,1 +3,day,202003,0.666667,0.166667,1 +3,day,203001,0.333333,0.166667,1 +3,day,203002,0.666667,0.166667,1 +3,day,203003,0.666667,0.166667,1 \ No newline at end of file diff --git a/db/db_schema.sql b/db/db_schema.sql index 30efbbd9e..e18ec1af9 100644 --- a/db/db_schema.sql +++ b/db/db_schema.sql @@ -1565,13 +1565,13 @@ CREATE TABLE inputs_project_hydro_operational_chars ( project VARCHAR(64), hydro_operational_chars_scenario_id INTEGER, + stage_id INTEGER, balancing_type_project VARCHAR(64), horizon INTEGER, - period INTEGER, average_power_fraction FLOAT, min_power_fraction FLOAT, max_power_fraction FLOAT, - PRIMARY KEY (project, hydro_operational_chars_scenario_id, + PRIMARY KEY (project, hydro_operational_chars_scenario_id, stage_id, balancing_type_project, horizon), FOREIGN KEY (project, hydro_operational_chars_scenario_id) REFERENCES subscenarios_project_hydro_operational_chars diff --git a/gridpath/project/operations/operational_types/common_functions.py b/gridpath/project/operations/operational_types/common_functions.py index 378e1f18f..14f4f4805 100644 --- a/gridpath/project/operations/operational_types/common_functions.py +++ b/gridpath/project/operations/operational_types/common_functions.py @@ -706,6 +706,8 @@ def get_hydro_inputs_from_database( WHERE project_operational_chars_scenario_id = {subscenarios.PROJECT_OPERATIONAL_CHARS_SCENARIO_ID} ) + -- Get the relevant stage + AND stage_id = {stage} ) as prj_tbl JOIN ( SELECT DISTINCT balancing_type_horizon, horizon