openTEPES 4.18.4__py3-none-any.whl → 4.18.6__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- openTEPES/9n_PTDF/oT_Data_Demand_9n_PTDF.csv +8737 -0
- openTEPES/9n_PTDF/oT_Data_Duration_9n_PTDF.csv +8737 -0
- openTEPES/9n_PTDF/oT_Data_Emission_9n_PTDF.csv +2 -0
- openTEPES/9n_PTDF/oT_Data_EnergyInflows_9n_PTDF.csv +8737 -0
- openTEPES/9n_PTDF/oT_Data_EnergyOutflows_9n_PTDF.csv +8737 -0
- openTEPES/9n_PTDF/oT_Data_Generation_9n_PTDF.csv +17 -0
- openTEPES/9n_PTDF/oT_Data_Inertia_9n_PTDF.csv +8737 -0
- openTEPES/9n_PTDF/oT_Data_Network_9n_PTDF.csv +14 -0
- openTEPES/9n_PTDF/oT_Data_NodeLocation_9n_PTDF.csv +10 -0
- openTEPES/9n_PTDF/oT_Data_OperatingReserveDown_9n_PTDF.csv +8737 -0
- openTEPES/9n_PTDF/oT_Data_OperatingReserveUp_9n_PTDF.csv +8737 -0
- openTEPES/9n_PTDF/oT_Data_Option_9n_PTDF.csv +2 -0
- openTEPES/9n_PTDF/oT_Data_Parameter_9n_PTDF.csv +2 -0
- openTEPES/9n_PTDF/oT_Data_Period_9n_PTDF.csv +2 -0
- openTEPES/9n_PTDF/oT_Data_RESEnergy_9n_PTDF.csv +2 -0
- openTEPES/9n_PTDF/oT_Data_ReserveMargin_9n_PTDF.csv +2 -0
- openTEPES/9n_PTDF/oT_Data_Scenario_9n_PTDF.csv +2 -0
- openTEPES/9n_PTDF/oT_Data_Stage_9n_PTDF.csv +2 -0
- openTEPES/9n_PTDF/oT_Data_VariableEmissionCost_9n_PTDF.csv +8737 -0
- openTEPES/9n_PTDF/oT_Data_VariableFuelCost_9n_PTDF.csv +8737 -0
- openTEPES/9n_PTDF/oT_Data_VariableMaxConsumption_9n_PTDF.csv +8737 -0
- openTEPES/9n_PTDF/oT_Data_VariableMaxEnergy_9n_PTDF.csv +8737 -0
- openTEPES/9n_PTDF/oT_Data_VariableMaxGeneration_9n_PTDF.csv +8737 -0
- openTEPES/9n_PTDF/oT_Data_VariableMaxStorage_9n_PTDF.csv +8737 -0
- openTEPES/9n_PTDF/oT_Data_VariableMinConsumption_9n_PTDF.csv +8737 -0
- openTEPES/9n_PTDF/oT_Data_VariableMinEnergy_9n_PTDF.csv +8737 -0
- openTEPES/9n_PTDF/oT_Data_VariableMinGeneration_9n_PTDF.csv +8737 -0
- openTEPES/9n_PTDF/oT_Data_VariableMinStorage_9n_PTDF.csv +8737 -0
- openTEPES/9n_PTDF/oT_Data_VariablePTDF_9n_PTDF.csv +8740 -0
- openTEPES/9n_PTDF/oT_Data_VariableTTCBck_9n_PTDF.csv +8739 -0
- openTEPES/9n_PTDF/oT_Data_VariableTTCFrw_9n_PTDF.csv +8739 -0
- openTEPES/9n_PTDF/oT_Dict_AreaToRegion_9n_PTDF.csv +2 -0
- openTEPES/9n_PTDF/oT_Dict_Area_9n_PTDF.csv +2 -0
- openTEPES/9n_PTDF/oT_Dict_Circuit_9n_PTDF.csv +3 -0
- openTEPES/9n_PTDF/oT_Dict_Generation_9n_PTDF.csv +17 -0
- openTEPES/9n_PTDF/oT_Dict_Line_9n_PTDF.csv +3 -0
- openTEPES/9n_PTDF/oT_Dict_LoadLevel_9n_PTDF.csv +8737 -0
- openTEPES/9n_PTDF/oT_Dict_NodeToZone_9n_PTDF.csv +10 -0
- openTEPES/9n_PTDF/oT_Dict_Node_9n_PTDF.csv +10 -0
- openTEPES/9n_PTDF/oT_Dict_Period_9n_PTDF.csv +2 -0
- openTEPES/9n_PTDF/oT_Dict_Region_9n_PTDF.csv +31 -0
- openTEPES/9n_PTDF/oT_Dict_Scenario_9n_PTDF.csv +2 -0
- openTEPES/9n_PTDF/oT_Dict_Stage_9n_PTDF.csv +2 -0
- openTEPES/9n_PTDF/oT_Dict_Storage_9n_PTDF.csv +3 -0
- openTEPES/9n_PTDF/oT_Dict_Technology_9n_PTDF.csv +7 -0
- openTEPES/9n_PTDF/oT_Dict_ZoneToArea_9n_PTDF.csv +10 -0
- openTEPES/9n_PTDF/oT_Dict_Zone_9n_PTDF.csv +10 -0
- openTEPES/RTS-GMLC/oT_Data_VariableMinGeneration_RTS-GMLC.csv +1 -1
- openTEPES/RTS-GMLC_6y/oT_Data_VariableFuelCost_RTS-GMLC_6y.csv +1 -1
- openTEPES/RTS-GMLC_6y/oT_Dict_AreaToRegion_RTS-GMLC_6y.csv +4 -4
- openTEPES/RTS-GMLC_6y/oT_Dict_Area_RTS-GMLC_6y.csv +4 -4
- openTEPES/RTS-GMLC_6y/oT_Dict_Circuit_RTS-GMLC_6y.csv +5 -5
- openTEPES/RTS-GMLC_6y/oT_Dict_Line_RTS-GMLC_6y.csv +3 -3
- openTEPES/RTS-GMLC_6y/oT_Dict_NodeToZone_RTS-GMLC_6y.csv +74 -74
- openTEPES/RTS-GMLC_6y/oT_Dict_Region_RTS-GMLC_6y.csv +2 -2
- openTEPES/RTS-GMLC_6y/oT_Dict_Scenario_RTS-GMLC_6y.csv +2 -2
- openTEPES/RTS-GMLC_6y/oT_Dict_Storage_RTS-GMLC_6y.csv +3 -3
- openTEPES/RTS-GMLC_6y/oT_Dict_Technology_RTS-GMLC_6y.csv +10 -10
- openTEPES/RTS-GMLC_6y/oT_Dict_ZoneToArea_RTS-GMLC_6y.csv +22 -22
- openTEPES/RTS-GMLC_6y/oT_Dict_Zone_RTS-GMLC_6y.csv +22 -22
- openTEPES/__init__.py +1 -1
- openTEPES/openTEPES.py +26 -17
- openTEPES/openTEPES_InputData.py +1335 -1188
- openTEPES/openTEPES_Main.py +3 -3
- openTEPES/openTEPES_ModelFormulation.py +413 -156
- openTEPES/openTEPES_OutputResults.py +263 -206
- openTEPES/openTEPES_ProblemSolving.py +35 -28
- openTEPES/sSEP/oT_Data_DemandHydrogen_sSEP.csv +8736 -8736
- openTEPES/sSEP/oT_Data_Generation_sSEP.csv +1 -1
- openTEPES/sSEP/oT_Data_HydroOutflows_sSEP.csv +1 -1
- {opentepes-4.18.4.dist-info → opentepes-4.18.6.dist-info}/METADATA +65 -46
- {opentepes-4.18.4.dist-info → opentepes-4.18.6.dist-info}/RECORD +75 -28
- {opentepes-4.18.4.dist-info → opentepes-4.18.6.dist-info}/WHEEL +1 -1
- {opentepes-4.18.4.dist-info → opentepes-4.18.6.dist-info}/entry_points.txt +0 -0
- {opentepes-4.18.4.dist-info → opentepes-4.18.6.dist-info/licenses}/LICENSE +0 -0
|
@@ -3,7 +3,7 @@ Nuclear1,Valencia,Nuclear,,,,,Yes,,,Yes,2020,2050,500,500,,,,,,,,,,,,,,,,1,,,,,,
|
|
|
3
3
|
Nuclear2,Caceres,Nuclear,,,,,Yes,,,Yes,2020,2050,500,500,,,,,,,,,,,,,,,,1,,,,,,1,5,,20,,10,,,,,,,,,,,,,,
|
|
4
4
|
Coal1,Almeria,Coal_Subbituminous,,,,,,,,Yes,2020,2050,650,260,,,,,,,,,,,,,,,,1,250,250,24,24,,1,50,1000,5,,0.06,,1,,,,,,,,,,,,
|
|
5
5
|
Coal2,Lugo,Coal_Subbituminous,,,,,,,,Yes,2020,2050,650,260,,,,,,,,,,,,,,,,1,250,250,24,24,,1,50,1000,5,,0.06,,1,,,,,,,,,,,,
|
|
6
|
-
CCGT1,Bilbao,CCGT,,,,,,,,Yes,2020,2050,390,150,,,,,,,,,,,,,,,,1,250,250,6,6,,1,60,300,3,,0.02,,
|
|
6
|
+
CCGT1,Bilbao,CCGT,,,,,,,,Yes,2020,2050,390,150,,,,,,,,,,,,,,,,1,250,250,6,6,,1,60,300,3,,0.02,,0.5,,,,,,,,,,,,
|
|
7
7
|
CCGT2,Barcelona,CCGT,,,,,,,,Yes,2020,2050,380,155,,,,,,,,,,,,,,,,1,250,250,6,6,,1,58,300,3,,0.02,,0.5,,,,,,,,,,,,
|
|
8
8
|
CCGT3,Barcelona,CCGT,,,,,,,,Yes,2020,2050,820,320,,,,,,,,,,,,,,,,1,250,250,6,6,,1,57,1000,3,,0.04,,0.5,,,,,,,,,,,,
|
|
9
9
|
CCGT4,Cadiz,CCGT,,,,,,,,Yes,2020,2050,790,310,,,,,,,,,,,,,,,,1,250,250,6,6,,1,57,1000,3,,0.04,,0.5,,,,,,,,,,,,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
Period,Scenario,LoadLevel,R_Azutan,R_Valdecanas,R_TorrejonTajo,R_TorrejonTietar,R_JoseMariaOriol,R_Cedillo,R_GuijoGranadilla
|
|
2
2
|
2030,CY2015,01-01 00:00:00+01:00,,,,,,,
|
|
3
3
|
2030,CY2015,01-01 01:00:00+01:00,,,,,,,
|
|
4
4
|
2030,CY2015,01-01 02:00:00+01:00,,,,,,,
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: openTEPES
|
|
3
|
-
Version: 4.18.
|
|
3
|
+
Version: 4.18.6
|
|
4
4
|
Summary: Open Generation, Storage, and Transmission Operation and Expansion Planning Model with RES and ESS (openTEPES)
|
|
5
|
-
Home-page: https://
|
|
5
|
+
Home-page: https://opentepes.readthedocs.io/en/latest/index.html
|
|
6
6
|
Author: IIT-EnergySystemModels
|
|
7
7
|
Author-email: andres.ramos@comillas.edu
|
|
8
8
|
Requires-Python: >=3.11
|
|
@@ -12,6 +12,7 @@ Classifier: Intended Audience :: Science/Research
|
|
|
12
12
|
Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
|
|
13
13
|
Classifier: Operating System :: OS Independent
|
|
14
14
|
Classifier: Programming Language :: Python :: 3.11
|
|
15
|
+
License-File: LICENSE
|
|
15
16
|
Requires-Dist: pyomo>=5.7.3
|
|
16
17
|
Requires-Dist: matplotlib>=3.3.4
|
|
17
18
|
Requires-Dist: numpy>=1.20.1
|
|
@@ -24,9 +25,8 @@ Requires-Dist: jsonschema>=4.16.0
|
|
|
24
25
|
Requires-Dist: networkx>=3.3
|
|
25
26
|
Requires-Dist: dill>=0.3.8
|
|
26
27
|
|
|
27
|
-
|
|
28
28
|
.. image:: https://pascua.iit.comillas.edu/aramos/openTEPES.png
|
|
29
|
-
:target: https://
|
|
29
|
+
:target: https://opentepes.readthedocs.io/en/latest/index.html
|
|
30
30
|
:alt: logo
|
|
31
31
|
:align: center
|
|
32
32
|
|
|
@@ -63,22 +63,50 @@ Requires-Dist: dill>=0.3.8
|
|
|
63
63
|
|
|
64
64
|
The **openTEPES** model has been developed at the `Instituto de Investigación Tecnológica (IIT) <https://www.iit.comillas.edu/index.php.en>`_ of the `Universidad Pontificia Comillas <https://www.comillas.edu/en/>`_.
|
|
65
65
|
|
|
66
|
-
The **openTEPES** model presents a decision support system for defining the **integrated generation, storage, and transmission resource planning** (IRP, GEP+SEP+TEP) -**Integrated Resource Planning** (IRP)- of a **large-scale electric system** at a tactical level (i.e., time horizons of 5-30 years),
|
|
66
|
+
The **openTEPES** model presents a decision support system for defining the **integrated generation, storage, and transmission resource planning** (IRP, GEP+SEP+TEP) -**Capacity Expansion Planning** (CEP) or **Integrated Resource Planning** (IRP)- of a **large-scale electric system** at a tactical level (i.e., time horizons of 5-30 years),
|
|
67
67
|
defined as a set of **generation, storage, and (electricity, hydrogen, and heat) networks dynamic investment decisions for multiple future years**.
|
|
68
68
|
|
|
69
|
-
|
|
70
|
-
|
|
69
|
+
The `openTEPES complete documentation <https://opentepes.readthedocs.io/en/latest/index.html>`_ presents the input data, output results, mathematical formulation, download and installation, and the research projects where the model has been used.
|
|
70
|
+
|
|
71
|
+
It is integrated into the `open energy system modelling platform <https://openenergymodels.net/>`_, helping model Europe's energy system, and is in the list of `energy models published under open-source licenses <https://wiki.openmod-initiative.org/wiki/Open_Models>`_.
|
|
72
|
+
It is also part of the `Africa's open energy system modelling toolbox <https://africaenergymodels.net/models/>`_, which is a suite of open and linked state-of-the-art open-source energy system models for Africa, and of the `African Energy modelling Network Open-Source Tools <https://africanenergymodellingnetwork.net/en/focus-area-3-open-source-tools-and-data>`_.
|
|
71
73
|
|
|
72
74
|
Scripts are provided to exchange information with Integrated Assessment Models (IAM) using their `nomenclature and data formats <https://nomenclature-iamc.readthedocs.io/en/stable/>`_.
|
|
73
75
|
|
|
74
76
|
It has been used by the **Ministry for the Ecological Transition and the Demographic Challenge (MITECO)** to analyze the electricity sector in the latest Spanish `National Energy and Climate Plan (NECP) Update 2023-2030 <https://www.miteco.gob.es/content/dam/miteco/es/energia/files-1/pniec-2023-2030/PNIEC_2024_240924.pdf>`_ in September 2024.
|
|
75
77
|
|
|
76
|
-
|
|
78
|
+
How to Cite
|
|
77
79
|
############
|
|
80
|
+
If you use openTEPES for a scientific publication, we would appreciate it if you cite the following paper:
|
|
81
|
+
|
|
78
82
|
**A. Ramos, E. Quispe, S. Lumbreras** `“OpenTEPES: Open-source Transmission and Generation Expansion Planning” <https://www.sciencedirect.com/science/article/pii/S235271102200053X>`_ SoftwareX 18: June 2022 `10.1016/j.softx.2022.101070 <https://doi.org/10.1016/j.softx.2022.101070>`_.
|
|
79
83
|
|
|
84
|
+
If your work relies heavily on the software, we also encourage you to cite the repository directly.
|
|
85
|
+
|
|
86
|
+
BibTeX entry:
|
|
87
|
+
.. code::
|
|
88
|
+
|
|
89
|
+
@article{Ramos2022,
|
|
90
|
+
author = {Andrés Ramos and Erik Quispe and Sara Lumbreras},
|
|
91
|
+
title = {openTEPES: Open-source Transmission and Generation Expansion Planning},
|
|
92
|
+
journal = {SoftwareX},
|
|
93
|
+
volume = {18},
|
|
94
|
+
pages = {101070},
|
|
95
|
+
year = {2022},
|
|
96
|
+
issn = {2352-7110},
|
|
97
|
+
doi = {https://doi.org/10.1016/j.softx.2022.101070},
|
|
98
|
+
url = {https://www.sciencedirect.com/science/article/pii/S235271102200053X},
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
|
|
80
102
|
**openTEPES**: `summary presentation <https://pascua.iit.comillas.edu/aramos/openTEPES.pdf>`_, `présentation (French) <https://pascua.iit.comillas.edu/aramos/openTEPES_fr.pdf>`_, and `installation <https://pascua.iit.comillas.edu/aramos/openTEPES_installation.pdf>`_
|
|
81
103
|
|
|
104
|
+
Authors
|
|
105
|
+
########
|
|
106
|
+
**Andrés Ramos, Erik Alvarez, Francisco Labora, Sara Lumbreras**. Universidad Pontificia Comillas, Instituto de Investigación Tecnológica, Alberto Aguilera 23, 28015 Madrid, Spain
|
|
107
|
+
|
|
108
|
+
Contact: andres.ramos@comillas.edu
|
|
109
|
+
|
|
82
110
|
Description
|
|
83
111
|
############
|
|
84
112
|
**openTEPES** determines the investment plans of new facilities (generators, ESS, and lines)
|
|
@@ -86,19 +114,19 @@ for supplying the forecasted demand at minimum cost. Tactical planning is concer
|
|
|
86
114
|
The main results are the guidelines for the future structure of the generation, storage, and transmission systems.
|
|
87
115
|
|
|
88
116
|
The **openTEPES** model presents a decision support system for defining the integrated generation, storage, and transmission expansion plan of a large-scale electric system at a tactical level,
|
|
89
|
-
defined as a set of generation, storage, and network investment decisions for future years. The expansion candidate, generators, ESS and lines
|
|
117
|
+
defined as a set of generation, storage, and network investment decisions for future years. The expansion candidate, generators, ESS, and lines are pre-defined by the user, so the model determines
|
|
90
118
|
the optimal decisions among those specified by the user.
|
|
91
119
|
|
|
92
120
|
It determines automatically optimal expansion plans that satisfy simultaneously several attributes. Its main characteristics are:
|
|
93
121
|
|
|
94
|
-
- **Dynamic (perfect foresight)**: the scope of the model corresponds to several periods (years) at a long-term horizon, 2030, 2035 and 2040 for example.
|
|
122
|
+
- **Dynamic (perfect foresight)**: the scope of the model corresponds to several periods (years) at a long-term horizon, 2030, 2035, and 2040, for example.
|
|
95
123
|
|
|
96
|
-
It represents hierarchically the different time scopes to
|
|
124
|
+
It represents hierarchically the different time scopes to make decisions in an electric system:
|
|
97
125
|
|
|
98
126
|
- Load level: one hour, e.g., 01-01 00:00:00+01:00 to 12-30 23:00:00+01:00
|
|
99
127
|
|
|
100
|
-
The time division allows a user-defined flexible representation of the periods for evaluating the system operation. Moreover, it can be run with chronological periods of several consecutive hours (bi-hourly, tri-hourly resolution) to decrease the computational burden without losing accuracy. The model can be run with a single period (year) or with several periods (years) to allow the analysis of the system evolution. The time definition allows
|
|
101
|
-
The model can be run with a single period (year) or with several periods (years) to allow the analysis of the system evolution. The time definition can also specify disconnected representative periods (e.g., days, weeks) to evaluate the system operation.
|
|
128
|
+
The time division allows a user-defined flexible representation of the periods for evaluating the system operation. Moreover, it can be run with chronological periods of several consecutive hours (bi-hourly, tri-hourly resolution) to decrease the computational burden without losing accuracy. The model can be run with a single period (year) or with several periods (years) to allow the analysis of the system's evolution. The time definition also allows for specifying disconnected representative periods (e.g., days, weeks) to evaluate the system operation.
|
|
129
|
+
The model can be run with a single period (year) or with several periods (years) to allow the analysis of the system's evolution. The time definition can also specify disconnected representative periods (e.g., days, weeks) to evaluate the system operation.
|
|
102
130
|
The period (year) must be represented by 8736 hours because several model concepts representing the system operation are based on weeks (168 hours) or months (made of 4 weeks, 672 hours).
|
|
103
131
|
|
|
104
132
|
- **Stochastic**: several stochastic parameters that can influence the optimal generation, storage, and transmission expansion decisions are considered. The model considers stochastic
|
|
@@ -107,18 +135,18 @@ It determines automatically optimal expansion plans that satisfy simultaneously
|
|
|
107
135
|
The objective function incorporates the two main quantifiable costs: **generation, storage, and transmission investment cost (CAPEX)** and **expected variable operation costs (including generation, consumption, emission, and reliability costs) (system OPEX)**.
|
|
108
136
|
|
|
109
137
|
The model formulates a **two-stage stochastic optimization** problem, including generation, storage, and electricity, hydrogen, and heat network binary investment/retirement decisions, generation operation decisions (commitment, startup, and shutdown decisions are also binary), and electric line-switching decisions.
|
|
110
|
-
|
|
138
|
+
Capacity expansion considers adequacy system reserve margin and minimum and maximum energy constraints.
|
|
111
139
|
|
|
112
140
|
The very detailed operation model is an electric **network-constrained unit commitment (NCUC)** based on a **tight and compact** formulation, including **operating reserves** with a
|
|
113
141
|
**DC power flow (DCPF)**, including electric **line-switching** decisions. **ohmic losses of the electricity network** are considered proportional to the electric line flow. It considers different **energy storage systems (ESS)**, e.g., pumped-hydro storage,
|
|
114
142
|
battery, demand response, electric vehicles, solar thermal, electrolyzer, etc. It allows analyzing the trade-off between the investment in generation/transmission/pipeline and the investment and/or use of storage capacity.
|
|
115
143
|
|
|
116
|
-
The model allows
|
|
144
|
+
The model also allows a representation of the **hydro system** based on volume and water inflow data, considering the water stream topology (hydro cascade basins). If they are not available, it runs with an energy-based representation of the hydro system.
|
|
117
145
|
|
|
118
|
-
Also, it includes a representation of **Power to Hydrogen (P2H2)** by setting the **hydrogen demand** satisfied by the production of hydrogen with electrolyzers (
|
|
119
|
-
Besides, it includes a representation of **Power to Heat (P2H)** by setting the **heat demand** satisfied by the production of heat with heat pumps or electric heaters (
|
|
146
|
+
Also, it includes a representation of **Power to Hydrogen (P2H2)** by setting the **hydrogen demand** satisfied by the production of hydrogen with electrolyzers (consuming electricity to produce hydrogen) and a **hydrogen pipeline network** to distribute it.
|
|
147
|
+
Besides, it includes a representation of **Power to Heat (P2H)** by setting the **heat demand** satisfied by the production of heat with heat pumps or electric heaters (consuming electricity to produce heat) and a **heat pipe network** to distribute it. If they are not available, it runs with just the other energy carriers.
|
|
120
148
|
|
|
121
|
-
The main results of the model can be structured
|
|
149
|
+
The main results of the model can be structured into these topics:
|
|
122
150
|
|
|
123
151
|
- **Investment**: (generation, storage, hydro reservoirs, electric lines, hydrogen pipelines, and heat pipes) investment decisions and cost
|
|
124
152
|
- **Operation**: unit commitment, startup, and shutdown of non-renewable units, unit output and aggregation by technologies (thermal, storage hydro, pumped-hydro storage, RES), RES curtailment, electric line, hydrogen pipeline, and heat pipe flows, line ohmic losses, node voltage angles, upward and downward operating reserves, ESS inventory levels, hydro reservoir volumes, power, hydrogen, and heat not served
|
|
@@ -129,27 +157,27 @@ The main results of the model can be structured in these topics:
|
|
|
129
157
|
|
|
130
158
|
Results are shown in csv files and graphical plots.
|
|
131
159
|
|
|
132
|
-
A careful implementation has been done to avoid numerical problems by scaling parameters, variables and equations of the optimization problem allowing the model to be used for large-scale cases, e.g., the European system with hourly detail.
|
|
160
|
+
A careful implementation has been done to avoid numerical problems by scaling parameters, variables, and equations of the optimization problem, allowing the model to be used for large-scale cases, e.g., the European system with hourly detail.
|
|
133
161
|
|
|
134
162
|
Installation
|
|
135
163
|
############
|
|
136
164
|
`Installation guide <https://pascua.iit.comillas.edu/aramos/openTEPES_installation.pdf>`_.
|
|
137
165
|
|
|
138
|
-
There are 2 ways to get all required packages under Windows. We recommend using the Python distribution Miniconda. If you don't want to use it or already have an existing Python (version 3.11) installation, you can also download the required packages by yourself.
|
|
166
|
+
There are 2 ways to get all the required packages under Windows. We recommend using the Python distribution Miniconda. If you don't want to use it or already have an existing Python (version 3.11) installation, you can also download the required packages by yourself.
|
|
139
167
|
|
|
140
168
|
Miniconda (recommended)
|
|
141
169
|
=======================
|
|
142
170
|
1. `Miniconda <https://docs.conda.io/en/latest/miniconda.html>`_. Choose the 64-bit installer if possible.
|
|
143
171
|
|
|
144
172
|
1. During the installation procedure, keep both checkboxes "modify the PATH" and "register Python" selected! If only higher Python versions are available, you can switch to a specific Python Version by typing ``conda install python=<version>``
|
|
145
|
-
2. **Remark:** if Anaconda or Miniconda was installed previously, please check that
|
|
173
|
+
2. **Remark:** if Anaconda or Miniconda was installed previously, please check that Python is registered in the environment variables.
|
|
146
174
|
2. **Packages and Solver**:
|
|
147
175
|
|
|
148
176
|
1. Launch a new Anaconda prompt (or terminal in any IDE)
|
|
149
177
|
2. The `HiGHS <https://ergo-code.github.io/HiGHS/dev/interfaces/python/#python-getting-started>`_ is our recommendation if you want a free and open-source solver.
|
|
150
178
|
3. Install openTEPES via pip by ``pip install openTEPES``
|
|
151
179
|
|
|
152
|
-
Continue at `Get Started <#get-started>`_
|
|
180
|
+
Continue at `Get Started <#get-started>`_.
|
|
153
181
|
|
|
154
182
|
|
|
155
183
|
GitHub Repository (the hard way)
|
|
@@ -169,22 +197,22 @@ This solver is activated by calling the openTEPES model with the solver name 'ap
|
|
|
169
197
|
|
|
170
198
|
Gurobi
|
|
171
199
|
======
|
|
172
|
-
Another recommendation is the use of `Gurobi solver <https://www.gurobi.com/>`_. However, it is commercial solver but
|
|
173
|
-
As a commercial solver it needs a license that is free of charge for academic usage by signing up
|
|
200
|
+
Another recommendation is the use of `Gurobi solver <https://www.gurobi.com/>`_. However, it is a commercial solver but more powerful than open-source solvers for large-scale problems.
|
|
201
|
+
As a commercial solver, it needs a license that is free of charge for academic usage by signing up on the Gurobi webpage <https://pages.gurobi.com/registration/>>. You can also ask for an `evaluation license <https://www.gurobi.com/downloads/request-an-evaluation-license/>`_ for 30 days to test the solver.
|
|
174
202
|
It can be installed using: ``conda install -c gurobi gurobi`` and then ask for an academic or commercial license. Activate the license in your computer using the ``grbgetkey`` command (you need to be in a university internet domain if you are installing an academic license).
|
|
175
203
|
|
|
176
204
|
GLPK
|
|
177
205
|
=====
|
|
178
|
-
As an easy option for installation, we have the free and open
|
|
206
|
+
As an easy option for installation, we have the free and open source `GLPK solver <https://www.gnu.org/software/glpk/>`_. However, it takes too much time for large-scale problems. It can be installed using: ``conda install glpk``.
|
|
179
207
|
|
|
180
208
|
CBC
|
|
181
209
|
=====
|
|
182
|
-
The `CBC solver <https://github.com/coin-or/Cbc>`_ is also another free and open-source solver. For Windows users, the effective way to install the CBC solver is
|
|
210
|
+
The `CBC solver <https://github.com/coin-or/Cbc>`_ is also another free and open-source solver. For Windows users, the effective way to install the CBC solver is to download the binaries from this `site <https://www.coin-or.org/download/binary/Cbc/>`_, copy and paste the *cbc.exe* file to the PATH that is the "bin" directory of the Anaconda or Miniconda environment. Under Linux, it can be installed using: ``conda install -c conda-forge coincbc``.
|
|
183
211
|
|
|
184
212
|
Mosek
|
|
185
213
|
=====
|
|
186
|
-
Another alternative is the `Mosek solver <https://www.mosek.com/>`_. Note that it is a commercial solver and you need a license for it. Mosek is a good alternative to deal with QPs, SOCPs, and SDPs problems. You only need to use ``conda install -c mosek mosek`` for installation and request a license (academic or commercial). To request the academic one, you can request `here <https://www.mosek.com/products/academic-licenses/>`_.
|
|
187
|
-
Moreover, Mosek brings a `license guide <https://docs.mosek.com/9.2/licensing/index.html>`_. But if you
|
|
214
|
+
Another alternative is the `Mosek solver <https://www.mosek.com/>`_. Note that it is a commercial solver, and you need a license for it. Mosek is a good alternative to deal with QPs, SOCPs, and SDPs problems. You only need to use ``conda install -c mosek mosek`` for installation and request a license (academic or commercial). To request the academic one, you can request `here <https://www.mosek.com/products/academic-licenses/>`_.
|
|
215
|
+
Moreover, Mosek brings a `license guide <https://docs.mosek.com/9.2/licensing/index.html>`_. But if you request an academic license, you will receive the license by email, and you only need to locate it in the following path ``C:\Users\<username>\mosek`` on your computer.
|
|
188
216
|
|
|
189
217
|
GAMS
|
|
190
218
|
=====
|
|
@@ -196,26 +224,26 @@ Get started
|
|
|
196
224
|
|
|
197
225
|
Developers
|
|
198
226
|
==========
|
|
199
|
-
By cloning the `openTEPES <https://github.com/IIT-EnergySystemModels/openTEPES/tree/master>`_ repository, you can create branches and propose pull
|
|
227
|
+
By cloning the `openTEPES <https://github.com/IIT-EnergySystemModels/openTEPES/tree/master>`_ repository, you can create branches and propose pull requests. Any help will be greatly appreciated.
|
|
200
228
|
|
|
201
229
|
Users
|
|
202
230
|
=====
|
|
203
231
|
|
|
204
|
-
If you are not planning on developing, please
|
|
232
|
+
If you are not planning on developing, please follow the instructions of the `openTEPES installation <#installation>`_.
|
|
205
233
|
|
|
206
234
|
Once installation is complete, `openTEPES <https://github.com/IIT-EnergySystemModels/openTEPES/tree/master>`_ can be executed in a test mode by using a command prompt.
|
|
207
|
-
In the directory of your choice, open and execute the openTEPES_run.py script by using the following on the command prompt (Windows) or Terminal (Linux). (Depending on what your standard
|
|
235
|
+
In the directory of your choice, open and execute the openTEPES_run.py script by using the following on the command prompt (Windows) or Terminal (Linux). (Depending on what your standard Python version is, you might need to call `python3` instead of `python`.):
|
|
208
236
|
|
|
209
237
|
``openTEPES_Main``
|
|
210
238
|
|
|
211
239
|
Then, four parameters (case, dir, solver, results, and console log) will be asked for.
|
|
212
240
|
|
|
213
|
-
**Remark:** at this step only press enter for each input and openTEPES will be executed with the default parameters.
|
|
241
|
+
**Remark:** at this step, only press enter for each input, and openTEPES will be executed with the default parameters.
|
|
214
242
|
|
|
215
243
|
After this in a directory of your choice, make a copy of the `9n <https://github.com/IIT-EnergySystemModels/openTEPES/tree/master/openTEPES/9n>`_ or `sSEP <https://github.com/IIT-EnergySystemModels/openTEPES/tree/master/openTEPES/sSEP>`_ case to create a new case of your choice but using the current format of the CSV files.
|
|
216
|
-
A proper execution by ``openTEPES_Main`` can be made by introducing the new case and the directory of your choice. Note that the solver is **glpk** by default, but it can be changed
|
|
244
|
+
A proper execution by ``openTEPES_Main`` can be made by introducing the new case and the directory of your choice. Note that the solver is **glpk** by default, but it can be changed to other solvers that Pyomo supports (e.g., gurobi, highs).
|
|
217
245
|
|
|
218
|
-
Then, the **results** should be written in the folder
|
|
246
|
+
Then, the **results** should be written in the folder that is called with the case name. The results contain plots and summary spreadsheets for multiple optimized energy scenarios, periods, and load levels, as well as the investment decisions.
|
|
219
247
|
|
|
220
248
|
**Note that** there is an alternative way to run the model by creating a new script **script.py**, and write the following:
|
|
221
249
|
|
|
@@ -223,15 +251,6 @@ Then, the **results** should be written in the folder who is called with the cas
|
|
|
223
251
|
|
|
224
252
|
``openTEPES_run(<dir>, <case>, <solver>, <results>, <log>)``
|
|
225
253
|
|
|
226
|
-
Tips
|
|
227
|
-
####
|
|
228
|
-
|
|
229
|
-
1. A complete documentation of the openTEPES model can be found at `<https://opentepes.readthedocs.io/en/latest/index.html>`_, which presents the mathematical formulation, input data and output results.
|
|
230
|
-
2. Try modifying the **TimeStep** in **oT_Data_Parameter_<case>.csv** and see their effect on results.
|
|
231
|
-
3. Using **0** or **1**, the optimization options can be activated or deactivated in **oT_Data_Option_<case>.csv**.
|
|
232
|
-
4. If you need a nice python editor, think about using `PyCharm <https://www.jetbrains.com/pycharm/>`_. It has many features including project management, etc.
|
|
233
|
-
5. We also suggest the use of `Gurobi <https://www.gurobi.com/academia/academic-program-and-licenses/>`_ (for Academics and Recent Graduates) as a solver to deal with MIP and LP problems instead of GLPK.
|
|
234
|
-
|
|
235
254
|
Run the Tutorial
|
|
236
255
|
################
|
|
237
256
|
|
|
@@ -242,8 +261,8 @@ It can be run in Binder:
|
|
|
242
261
|
|
|
243
262
|
Expected Results
|
|
244
263
|
################
|
|
245
|
-
.. image::
|
|
264
|
+
.. image:: https://pascua.iit.comillas.edu/aramos/oT_Map_Network_TF2030.png
|
|
265
|
+
:alt: Network map with investment decisions
|
|
246
266
|
:width: 600px
|
|
247
267
|
:align: center
|
|
248
|
-
:alt: Network map with investment decisions
|
|
249
268
|
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
openTEPES/__init__.py,sha256=
|
|
1
|
+
openTEPES/__init__.py,sha256=620CYa1BKd-pO6z7ZMvukSU_Lb_GiJhSQILMWsbhhPk,832
|
|
2
2
|
openTEPES/openTEPES.mapbox_token,sha256=xsXNkwGp2vzXqQy2zVkyLhhNcNWniK2BMeOFpc5SZHI,93
|
|
3
|
-
openTEPES/openTEPES.py,sha256=
|
|
4
|
-
openTEPES/openTEPES_InputData.py,sha256=
|
|
5
|
-
openTEPES/openTEPES_Main.py,sha256=
|
|
6
|
-
openTEPES/openTEPES_ModelFormulation.py,sha256=
|
|
7
|
-
openTEPES/openTEPES_OutputResults.py,sha256=
|
|
8
|
-
openTEPES/openTEPES_ProblemSolving.py,sha256=
|
|
3
|
+
openTEPES/openTEPES.py,sha256=gvXwy9I_qpMD8YIYBRji8aKUUbWRQsh_7SQtNGxHUfQ,27387
|
|
4
|
+
openTEPES/openTEPES_InputData.py,sha256=rZd-a5NEKxnpmaZlO8qTwCzKjo75VZGCLftF4dW-02w,237634
|
|
5
|
+
openTEPES/openTEPES_Main.py,sha256=kYsOJ8NnzKuUeN2MC5soM5Cz9CatdCQWbuXb3T1L8MI,39925
|
|
6
|
+
openTEPES/openTEPES_ModelFormulation.py,sha256=OKHq2Ezoi8y_uF7yTGRLpPodprRZc9wrgU0eviZejsw,136583
|
|
7
|
+
openTEPES/openTEPES_OutputResults.py,sha256=moN_cpsqX-BI7YNgdve1OLTySCIY1bWJUY1Gsxz0y78,219110
|
|
8
|
+
openTEPES/openTEPES_ProblemSolving.py,sha256=EvQxjdFU4y-XJXwnL8VhCKTegvmVkM2Ypz3pWYXPBCo,16186
|
|
9
9
|
openTEPES/openTEPES_gitinfo.py,sha256=6fA1fa-JcyusSc_HcjPiCgnV9zn-fZwdG-kK0a5Fxc8,2004
|
|
10
10
|
openTEPES/.idea/.name,sha256=jiwfcnJ20wztcvpny4SHcqmAIWK-w5tCqN9TWf0GOkw,11
|
|
11
11
|
openTEPES/.idea/misc.xml,sha256=m4-3O284ZBS8WZSQD0QWwk8YjuQYz92w6kr7NRFNips,298
|
|
@@ -102,6 +102,53 @@ openTEPES/9n7y/oT_Dict_Storage_9n7y.csv,sha256=GbyzeENaCG-Yx67tdPsZhF1qUY-OVDKQP
|
|
|
102
102
|
openTEPES/9n7y/oT_Dict_Technology_9n7y.csv,sha256=9WQUthNC8T5Sy4rdm2XvqcUMXebxQ7jNnAai3OrfgJ0,47
|
|
103
103
|
openTEPES/9n7y/oT_Dict_ZoneToArea_9n7y.csv,sha256=ub27ppJJ-NYjYX7hmL9ua6ACYzDUV9XWgTLdHulvZ2c,128
|
|
104
104
|
openTEPES/9n7y/oT_Dict_Zone_9n7y.csv,sha256=-EFkGBbP6FddAAYIksLik2ktnW008aLg3ZwNPDp9s6M,69
|
|
105
|
+
openTEPES/9n_PTDF/oT_Data_Demand_9n_PTDF.csv,sha256=LsMcM_06kkRn1eXbA2TknF-n20ghARxBLdKVUXlHF0A,1196560
|
|
106
|
+
openTEPES/9n_PTDF/oT_Data_Duration_9n_PTDF.csv,sha256=MNMIViQ0Q0g3TLP9fgQUBhalqLFnprOv-HWozXW_7gE,332010
|
|
107
|
+
openTEPES/9n_PTDF/oT_Data_Emission_9n_PTDF.csv,sha256=rYwkA8jTZyx47BP54DfyN4443WbBelCc_X76K1bp-zU,41
|
|
108
|
+
openTEPES/9n_PTDF/oT_Data_EnergyInflows_9n_PTDF.csv,sha256=oEXYvy2pjKpIpi9HmPFMipdeHlKeoMv8jhyDbISQZQc,437023
|
|
109
|
+
openTEPES/9n_PTDF/oT_Data_EnergyOutflows_9n_PTDF.csv,sha256=OVKIL2LhUakkInIKxvL8GjE7jcGQyod3ZOxG3LDtRZM,419537
|
|
110
|
+
openTEPES/9n_PTDF/oT_Data_Generation_9n_PTDF.csv,sha256=0jgZt1ZD68uAnOQnTITYEdKKjWqNCSEMUwUcgVDh6jI,2564
|
|
111
|
+
openTEPES/9n_PTDF/oT_Data_Inertia_9n_PTDF.csv,sha256=nndR80BBM7wKH9Ej3LrSuG0U4a0eKtT8LVmm79brjIY,288321
|
|
112
|
+
openTEPES/9n_PTDF/oT_Data_Network_9n_PTDF.csv,sha256=zcRFVagDQ3EL9J9Q85C1muzjLuLvhk8VUbfQh0sX1aw,1213
|
|
113
|
+
openTEPES/9n_PTDF/oT_Data_NodeLocation_9n_PTDF.csv,sha256=eaz-9dcwWLoQUEp-oafd4jcetaQ_Grjgp0gh0oIv6k4,303
|
|
114
|
+
openTEPES/9n_PTDF/oT_Data_OperatingReserveDown_9n_PTDF.csv,sha256=VqBDqfaIPiD1guy1rLNAYEEZYWypabaFR4u57YNz0fw,383843
|
|
115
|
+
openTEPES/9n_PTDF/oT_Data_OperatingReserveUp_9n_PTDF.csv,sha256=VqBDqfaIPiD1guy1rLNAYEEZYWypabaFR4u57YNz0fw,383843
|
|
116
|
+
openTEPES/9n_PTDF/oT_Data_Option_9n_PTDF.csv,sha256=2onSiuxVxB0WXX45pBWpfb6uoGY1o_FuAYKrp7w3cpQ,230
|
|
117
|
+
openTEPES/9n_PTDF/oT_Data_Parameter_9n_PTDF.csv,sha256=Gn-pzaThuI_w9USJwZ-AGDy5VnXMuVnmiac3W1sm2ds,220
|
|
118
|
+
openTEPES/9n_PTDF/oT_Data_Period_9n_PTDF.csv,sha256=NFbJq1PV7fhKMp7ocoy_hy42mKuVabBdPqe9Pt2IVQ4,26
|
|
119
|
+
openTEPES/9n_PTDF/oT_Data_RESEnergy_9n_PTDF.csv,sha256=zOj39jlgP1Pj6oIWDY8Kr-ysvvKUhkap5zCZn9s68is,40
|
|
120
|
+
openTEPES/9n_PTDF/oT_Data_ReserveMargin_9n_PTDF.csv,sha256=WCIVw1Yr64PzAOBRta-7h4Ri8G0kLNvdu7700sQr6Yg,46
|
|
121
|
+
openTEPES/9n_PTDF/oT_Data_Scenario_9n_PTDF.csv,sha256=UGeFNxqb6ysUgpVrLESkfFGy-3X9nzJoeRooynFTTQQ,45
|
|
122
|
+
openTEPES/9n_PTDF/oT_Data_Stage_9n_PTDF.csv,sha256=fHzcT28maF4tn7D92epcXLZqsQct_ZrmOfLGZj12B6Q,24
|
|
123
|
+
openTEPES/9n_PTDF/oT_Data_VariableEmissionCost_9n_PTDF.csv,sha256=OVKIL2LhUakkInIKxvL8GjE7jcGQyod3ZOxG3LDtRZM,419537
|
|
124
|
+
openTEPES/9n_PTDF/oT_Data_VariableFuelCost_9n_PTDF.csv,sha256=OVKIL2LhUakkInIKxvL8GjE7jcGQyod3ZOxG3LDtRZM,419537
|
|
125
|
+
openTEPES/9n_PTDF/oT_Data_VariableMaxConsumption_9n_PTDF.csv,sha256=OVKIL2LhUakkInIKxvL8GjE7jcGQyod3ZOxG3LDtRZM,419537
|
|
126
|
+
openTEPES/9n_PTDF/oT_Data_VariableMaxEnergy_9n_PTDF.csv,sha256=OVKIL2LhUakkInIKxvL8GjE7jcGQyod3ZOxG3LDtRZM,419537
|
|
127
|
+
openTEPES/9n_PTDF/oT_Data_VariableMaxGeneration_9n_PTDF.csv,sha256=2unfNkFYcQYNzI-M8-PoSFVI0aVVJmUO-pGKVEkRgX4,565976
|
|
128
|
+
openTEPES/9n_PTDF/oT_Data_VariableMaxStorage_9n_PTDF.csv,sha256=oEXYvy2pjKpIpi9HmPFMipdeHlKeoMv8jhyDbISQZQc,437023
|
|
129
|
+
openTEPES/9n_PTDF/oT_Data_VariableMinConsumption_9n_PTDF.csv,sha256=OVKIL2LhUakkInIKxvL8GjE7jcGQyod3ZOxG3LDtRZM,419537
|
|
130
|
+
openTEPES/9n_PTDF/oT_Data_VariableMinEnergy_9n_PTDF.csv,sha256=OVKIL2LhUakkInIKxvL8GjE7jcGQyod3ZOxG3LDtRZM,419537
|
|
131
|
+
openTEPES/9n_PTDF/oT_Data_VariableMinGeneration_9n_PTDF.csv,sha256=OVKIL2LhUakkInIKxvL8GjE7jcGQyod3ZOxG3LDtRZM,419537
|
|
132
|
+
openTEPES/9n_PTDF/oT_Data_VariableMinStorage_9n_PTDF.csv,sha256=oEXYvy2pjKpIpi9HmPFMipdeHlKeoMv8jhyDbISQZQc,437023
|
|
133
|
+
openTEPES/9n_PTDF/oT_Data_VariablePTDF_9n_PTDF.csv,sha256=wetQwHN8CURqlCfF8pHbNE03Db6IV19MSlH19-VXleY,445800
|
|
134
|
+
openTEPES/9n_PTDF/oT_Data_VariableTTCBck_9n_PTDF.csv,sha256=nwKz0WpSjuJfWhlwoSi773y4oPZmfjlM6WFxmz9gbw0,314549
|
|
135
|
+
openTEPES/9n_PTDF/oT_Data_VariableTTCFrw_9n_PTDF.csv,sha256=nwKz0WpSjuJfWhlwoSi773y4oPZmfjlM6WFxmz9gbw0,314549
|
|
136
|
+
openTEPES/9n_PTDF/oT_Dict_AreaToRegion_9n_PTDF.csv,sha256=Tj0yBL-v69HHH4eZD1DGWRLNZsZci9lP3LLKDAo15qA,23
|
|
137
|
+
openTEPES/9n_PTDF/oT_Dict_Area_9n_PTDF.csv,sha256=gPrgfhexkukh9zR4hjcUvmYaJCkoQndGtKpnlPR68iY,13
|
|
138
|
+
openTEPES/9n_PTDF/oT_Dict_Circuit_9n_PTDF.csv,sha256=HA_AvO-c5JJ0A5mgMEzk4YzTmsA4hk02WkyIwEJMZsg,19
|
|
139
|
+
openTEPES/9n_PTDF/oT_Dict_Generation_9n_PTDF.csv,sha256=ooB6zMs5bAUlVzm3R_g-sfX8ZA2G7S6sWreqsRU0NM4,209
|
|
140
|
+
openTEPES/9n_PTDF/oT_Dict_Line_9n_PTDF.csv,sha256=xg4OpM5ldCbkhLOrAgZiJbZekkwtD5lpwxYE6dCzzLA,18
|
|
141
|
+
openTEPES/9n_PTDF/oT_Dict_LoadLevel_9n_PTDF.csv,sha256=FNuj3oD4Npror74ru-HGnm3wD8rLhJFTu2u4jMUYJ4o,192203
|
|
142
|
+
openTEPES/9n_PTDF/oT_Dict_NodeToZone_9n_PTDF.csv,sha256=hn2BuMq73Hmw3AZRZhZ8X2Ltnvk0tKvhSdEeAO3NqM8,137
|
|
143
|
+
openTEPES/9n_PTDF/oT_Dict_Node_9n_PTDF.csv,sha256=dIZAxYlhLVGWv2r0tmb91rTnaAY8VjvjYa6rzexxo9I,78
|
|
144
|
+
openTEPES/9n_PTDF/oT_Dict_Period_9n_PTDF.csv,sha256=1zv4VAX7gc0fMHgXbmMdzWbaPT-3EwAM29WixPc_zyo,14
|
|
145
|
+
openTEPES/9n_PTDF/oT_Dict_Region_9n_PTDF.csv,sha256=7ypbm_FG7DsOw1xg4KL4UvRbDdiHzwM1uU5eecX9kjA,128
|
|
146
|
+
openTEPES/9n_PTDF/oT_Dict_Scenario_9n_PTDF.csv,sha256=UFD1pqOy6af_SLucKNhgs-CCcoSkZ6OB7YcxLhIpeqs,16
|
|
147
|
+
openTEPES/9n_PTDF/oT_Dict_Stage_9n_PTDF.csv,sha256=PyWDtx6UFjodj7r4qZktaFfzPVgGzOA-cPLNW1CIjGw,12
|
|
148
|
+
openTEPES/9n_PTDF/oT_Dict_Storage_9n_PTDF.csv,sha256=GbyzeENaCG-Yx67tdPsZhF1qUY-OVDKQP2TOSbugPVk,28
|
|
149
|
+
openTEPES/9n_PTDF/oT_Dict_Technology_9n_PTDF.csv,sha256=9WQUthNC8T5Sy4rdm2XvqcUMXebxQ7jNnAai3OrfgJ0,47
|
|
150
|
+
openTEPES/9n_PTDF/oT_Dict_ZoneToArea_9n_PTDF.csv,sha256=ub27ppJJ-NYjYX7hmL9ua6ACYzDUV9XWgTLdHulvZ2c,128
|
|
151
|
+
openTEPES/9n_PTDF/oT_Dict_Zone_9n_PTDF.csv,sha256=-EFkGBbP6FddAAYIksLik2ktnW008aLg3ZwNPDp9s6M,69
|
|
105
152
|
openTEPES/NG2030/oT_Data_Demand_NG2030.csv,sha256=Ebg6bwYYLjiHsd5nkbVgS8yHgfVLfaUx3HSONT_9fms,12342624
|
|
106
153
|
openTEPES/NG2030/oT_Data_Duration_NG2030.csv,sha256=Wzg3rbdRY-tkz_-Im_WZvUTbw7uJQAqiWKqqyX1wRQE,995946
|
|
107
154
|
openTEPES/NG2030/oT_Data_Emission_NG2030.csv,sha256=FGgWg3G127ufYGa5nG-9k16tlQj__DYJxfUxf9yXLuo,43
|
|
@@ -172,7 +219,7 @@ openTEPES/RTS-GMLC/oT_Data_VariableMaxGeneration_RTS-GMLC.csv,sha256=RrL9qflX59F
|
|
|
172
219
|
openTEPES/RTS-GMLC/oT_Data_VariableMaxStorage_RTS-GMLC.csv,sha256=CS6Qrt0kIpRgM33BZ3ginRNdt547OOWcLGllhTGgnLI,3041813
|
|
173
220
|
openTEPES/RTS-GMLC/oT_Data_VariableMinConsumption_RTS-GMLC.csv,sha256=CS6Qrt0kIpRgM33BZ3ginRNdt547OOWcLGllhTGgnLI,3041813
|
|
174
221
|
openTEPES/RTS-GMLC/oT_Data_VariableMinEnergy_RTS-GMLC.csv,sha256=8O2XQoRJUpuEFCRZ-R8vcq4mt_ZEnIE2hpPC4BO11tU,1661525
|
|
175
|
-
openTEPES/RTS-GMLC/oT_Data_VariableMinGeneration_RTS-GMLC.csv,sha256=
|
|
222
|
+
openTEPES/RTS-GMLC/oT_Data_VariableMinGeneration_RTS-GMLC.csv,sha256=CS6Qrt0kIpRgM33BZ3ginRNdt547OOWcLGllhTGgnLI,3041813
|
|
176
223
|
openTEPES/RTS-GMLC/oT_Data_VariableMinStorage_RTS-GMLC.csv,sha256=CS6Qrt0kIpRgM33BZ3ginRNdt547OOWcLGllhTGgnLI,3041813
|
|
177
224
|
openTEPES/RTS-GMLC/oT_Dict_AreaToRegion_RTS-GMLC.csv,sha256=AC7WhEMDMekOKE9-kUHV-Dy92zmWKo6-YNL9vyps_j8,64
|
|
178
225
|
openTEPES/RTS-GMLC/oT_Dict_Area_RTS-GMLC.csv,sha256=VR1A8dGJ-9UcRtiyYaJwANd-7faXMtPggvkhNQ4RBf8,30
|
|
@@ -209,7 +256,7 @@ openTEPES/RTS-GMLC_6y/oT_Data_ReserveMargin_RTS-GMLC_6y.csv,sha256=XZa19ck8SpKqu
|
|
|
209
256
|
openTEPES/RTS-GMLC_6y/oT_Data_Scenario_RTS-GMLC_6y.csv,sha256=lS_3sX_OpRtgPp3_fnXtYyn6-PhehKqDlpHmoCq1_lY,107
|
|
210
257
|
openTEPES/RTS-GMLC_6y/oT_Data_Stage_RTS-GMLC_6y.csv,sha256=cRMZVFhN_r5iZ9Mpot1pms0BN3DqyaD073GJ7Omwbco,109
|
|
211
258
|
openTEPES/RTS-GMLC_6y/oT_Data_VariableEmissionCost_RTS-GMLC_6y.csv,sha256=TZB_4NU_utULtvgq-RGNviZukUjzvyjakn9sVH_-hRs,12582183
|
|
212
|
-
openTEPES/RTS-GMLC_6y/oT_Data_VariableFuelCost_RTS-GMLC_6y.csv,sha256=
|
|
259
|
+
openTEPES/RTS-GMLC_6y/oT_Data_VariableFuelCost_RTS-GMLC_6y.csv,sha256=TZB_4NU_utULtvgq-RGNviZukUjzvyjakn9sVH_-hRs,12582183
|
|
213
260
|
openTEPES/RTS-GMLC_6y/oT_Data_VariableMaxConsumption_RTS-GMLC_6y.csv,sha256=TZB_4NU_utULtvgq-RGNviZukUjzvyjakn9sVH_-hRs,12582183
|
|
214
261
|
openTEPES/RTS-GMLC_6y/oT_Data_VariableMaxEnergy_RTS-GMLC_6y.csv,sha256=TZB_4NU_utULtvgq-RGNviZukUjzvyjakn9sVH_-hRs,12582183
|
|
215
262
|
openTEPES/RTS-GMLC_6y/oT_Data_VariableMaxGeneration_RTS-GMLC_6y.csv,sha256=l-XhMyT4KTTfN7f_1KlZDqsX0PLQHahu2kbM13Cohn8,36205713
|
|
@@ -218,22 +265,22 @@ openTEPES/RTS-GMLC_6y/oT_Data_VariableMinConsumption_RTS-GMLC_6y.csv,sha256=TZB_
|
|
|
218
265
|
openTEPES/RTS-GMLC_6y/oT_Data_VariableMinEnergy_RTS-GMLC_6y.csv,sha256=TZB_4NU_utULtvgq-RGNviZukUjzvyjakn9sVH_-hRs,12582183
|
|
219
266
|
openTEPES/RTS-GMLC_6y/oT_Data_VariableMinGeneration_RTS-GMLC_6y.csv,sha256=TZB_4NU_utULtvgq-RGNviZukUjzvyjakn9sVH_-hRs,12582183
|
|
220
267
|
openTEPES/RTS-GMLC_6y/oT_Data_VariableMinStorage_RTS-GMLC_6y.csv,sha256=TZB_4NU_utULtvgq-RGNviZukUjzvyjakn9sVH_-hRs,12582183
|
|
221
|
-
openTEPES/RTS-GMLC_6y/oT_Dict_AreaToRegion_RTS-GMLC_6y.csv,sha256=
|
|
222
|
-
openTEPES/RTS-GMLC_6y/oT_Dict_Area_RTS-GMLC_6y.csv,sha256=
|
|
223
|
-
openTEPES/RTS-GMLC_6y/oT_Dict_Circuit_RTS-GMLC_6y.csv,sha256
|
|
268
|
+
openTEPES/RTS-GMLC_6y/oT_Dict_AreaToRegion_RTS-GMLC_6y.csv,sha256=AC7WhEMDMekOKE9-kUHV-Dy92zmWKo6-YNL9vyps_j8,64
|
|
269
|
+
openTEPES/RTS-GMLC_6y/oT_Dict_Area_RTS-GMLC_6y.csv,sha256=VR1A8dGJ-9UcRtiyYaJwANd-7faXMtPggvkhNQ4RBf8,30
|
|
270
|
+
openTEPES/RTS-GMLC_6y/oT_Dict_Circuit_RTS-GMLC_6y.csv,sha256=-5ia4UT_W0lrWYYVyFV9D6-q6nA93timI8MYf_XaWxY,33
|
|
224
271
|
openTEPES/RTS-GMLC_6y/oT_Dict_Generation_RTS-GMLC_6y.csv,sha256=w6kE1V9QiFoihhMs43minFkyFWRzwQtWnSYsF96_7WA,2535
|
|
225
|
-
openTEPES/RTS-GMLC_6y/oT_Dict_Line_RTS-GMLC_6y.csv,sha256=
|
|
272
|
+
openTEPES/RTS-GMLC_6y/oT_Dict_Line_RTS-GMLC_6y.csv,sha256=xg4OpM5ldCbkhLOrAgZiJbZekkwtD5lpwxYE6dCzzLA,18
|
|
226
273
|
openTEPES/RTS-GMLC_6y/oT_Dict_LoadLevel_RTS-GMLC_6y.csv,sha256=FNuj3oD4Npror74ru-HGnm3wD8rLhJFTu2u4jMUYJ4o,192203
|
|
227
|
-
openTEPES/RTS-GMLC_6y/oT_Dict_NodeToZone_RTS-GMLC_6y.csv,sha256=
|
|
274
|
+
openTEPES/RTS-GMLC_6y/oT_Dict_NodeToZone_RTS-GMLC_6y.csv,sha256=p0TKIjW16gSR5F51FnP-5E_oACrxzPo0glTt0OoglBE,1325
|
|
228
275
|
openTEPES/RTS-GMLC_6y/oT_Dict_Node_RTS-GMLC_6y.csv,sha256=2YRl6OD1hV1lR8LiTN-PYjX8bW2v3BktmLVMRl8HW74,736
|
|
229
276
|
openTEPES/RTS-GMLC_6y/oT_Dict_Period_RTS-GMLC_6y.csv,sha256=Jp7qufLCOXwJ1kSCruPE64llGaTj4wVqe79u5H4LPKg,44
|
|
230
|
-
openTEPES/RTS-GMLC_6y/oT_Dict_Region_RTS-GMLC_6y.csv,sha256=
|
|
231
|
-
openTEPES/RTS-GMLC_6y/oT_Dict_Scenario_RTS-GMLC_6y.csv,sha256=
|
|
277
|
+
openTEPES/RTS-GMLC_6y/oT_Dict_Region_RTS-GMLC_6y.csv,sha256=xd-mTmEwgSbq3wu8mbiMhvW4D_h9Y9sX9-M4C7j_Jyc,18
|
|
278
|
+
openTEPES/RTS-GMLC_6y/oT_Dict_Scenario_RTS-GMLC_6y.csv,sha256=UFD1pqOy6af_SLucKNhgs-CCcoSkZ6OB7YcxLhIpeqs,16
|
|
232
279
|
openTEPES/RTS-GMLC_6y/oT_Dict_Stage_RTS-GMLC_6y.csv,sha256=cZKl_y6qUHVS8cLY2EFYwGyb8Bzw8043XqkYZJhOOr0,76
|
|
233
|
-
openTEPES/RTS-GMLC_6y/oT_Dict_Storage_RTS-GMLC_6y.csv,sha256=
|
|
234
|
-
openTEPES/RTS-GMLC_6y/oT_Dict_Technology_RTS-GMLC_6y.csv,sha256=
|
|
235
|
-
openTEPES/RTS-GMLC_6y/oT_Dict_ZoneToArea_RTS-GMLC_6y.csv,sha256=
|
|
236
|
-
openTEPES/RTS-GMLC_6y/oT_Dict_Zone_RTS-GMLC_6y.csv,sha256=
|
|
280
|
+
openTEPES/RTS-GMLC_6y/oT_Dict_Storage_RTS-GMLC_6y.csv,sha256=GbyzeENaCG-Yx67tdPsZhF1qUY-OVDKQP2TOSbugPVk,28
|
|
281
|
+
openTEPES/RTS-GMLC_6y/oT_Dict_Technology_RTS-GMLC_6y.csv,sha256=TpbqRLfZsKkqXtVZNRxBrmis9claViI_UQzw7zyvCuA,76
|
|
282
|
+
openTEPES/RTS-GMLC_6y/oT_Dict_ZoneToArea_RTS-GMLC_6y.csv,sha256=lj86EH-OBqXsts32_AyCPKWtyH8aFRAnHfJls6tJI_8,347
|
|
283
|
+
openTEPES/RTS-GMLC_6y/oT_Dict_Zone_RTS-GMLC_6y.csv,sha256=mwTHNLbVoLCLclucd4IC1p4Ui8eK7td5FYYUHb8QMxk,195
|
|
237
284
|
openTEPES/RTS24/oT_Data_Demand_RTS24.csv,sha256=18rtSbDL9CNMYanislGY7DmgFm0MqZIPF57gFurjFu8,1824986
|
|
238
285
|
openTEPES/RTS24/oT_Data_Duration_RTS24.csv,sha256=MNMIViQ0Q0g3TLP9fgQUBhalqLFnprOv-HWozXW_7gE,332010
|
|
239
286
|
openTEPES/RTS24/oT_Data_Emission_RTS24.csv,sha256=fuUh5xa2V53QHSLlDxWeG4g9CwOmNwWADwDOpqMvfeA,58
|
|
@@ -278,15 +325,15 @@ openTEPES/RTS24/oT_Dict_Storage_RTS24.csv,sha256=GbyzeENaCG-Yx67tdPsZhF1qUY-OVDK
|
|
|
278
325
|
openTEPES/RTS24/oT_Dict_Technology_RTS24.csv,sha256=swYCc0PuJMCXPCxQKLVk1EGYvMsns2ytUWXJSHO5BHI,126
|
|
279
326
|
openTEPES/RTS24/oT_Dict_ZoneToArea_RTS24.csv,sha256=t3iyShBHyb6t4ZKNAxpVOz8CH1mcWPMJHF_dKb33ick,130
|
|
280
327
|
openTEPES/RTS24/oT_Dict_Zone_RTS24.csv,sha256=9Za1irWadNb7RkpsLPQzlxzSwm17Xc7YjsIbs_xZReE,69
|
|
281
|
-
openTEPES/sSEP/oT_Data_DemandHydrogen_sSEP.csv,sha256=
|
|
328
|
+
openTEPES/sSEP/oT_Data_DemandHydrogen_sSEP.csv,sha256=M3Q3ebblmEYCkjyudVA7p3at-kLrA6EVBtM1oZoX72A,1439608
|
|
282
329
|
openTEPES/sSEP/oT_Data_Demand_sSEP.csv,sha256=tQ5GuzeOloH-KHyhiaNgUSmv22ZLegvCbyA-CgMjI7Y,1422002
|
|
283
330
|
openTEPES/sSEP/oT_Data_Duration_sSEP.csv,sha256=69YnUwZnWdm1euWHU6skau78eNYEteZiRLvXVdVKviw,349482
|
|
284
331
|
openTEPES/sSEP/oT_Data_Emission_sSEP.csv,sha256=HsblIOOt6wHebv0deb4bO7bzyeTMheq6X78thozUFjA,44
|
|
285
332
|
openTEPES/sSEP/oT_Data_EnergyInflows_sSEP.csv,sha256=ybFpVFejLlgcbrCc8ExcrdsP7cjFvLFI9hhVu6gBA3I,688816
|
|
286
333
|
openTEPES/sSEP/oT_Data_EnergyOutflows_sSEP.csv,sha256=GoKwVidj7HHsVpSC4G3e4sMcHuxWvtFv9KfiXw3H-Hw,673107
|
|
287
|
-
openTEPES/sSEP/oT_Data_Generation_sSEP.csv,sha256=
|
|
334
|
+
openTEPES/sSEP/oT_Data_Generation_sSEP.csv,sha256=bFZExPi9JbPZG229P8gAfXTGUgsDzlivkvU4ssEc6UY,5533
|
|
288
335
|
openTEPES/sSEP/oT_Data_HydroInflows_sSEP.csv,sha256=I1yH8jsFH_YkN_GMm3_5LH0dXfXIeuwWJ02-1_XFkZA,379470
|
|
289
|
-
openTEPES/sSEP/oT_Data_HydroOutflows_sSEP.csv,sha256=
|
|
336
|
+
openTEPES/sSEP/oT_Data_HydroOutflows_sSEP.csv,sha256=eMNGAfGKLjgkTveqDhXCCRMRPuC2n2G6iOQ7fxFNUX8,358302
|
|
290
337
|
openTEPES/sSEP/oT_Data_Inertia_sSEP.csv,sha256=LG0IZuFvUpioTai3VT6R_kh1JWgURt3iZUu-j6LURSA,305793
|
|
291
338
|
openTEPES/sSEP/oT_Data_NetworkHydrogen_sSEP.csv,sha256=0eTaluEszvhtku_Jwmee-a21VzHFfw6cgRY9VzrKovk,870
|
|
292
339
|
openTEPES/sSEP/oT_Data_Network_sSEP.csv,sha256=KkZ9c-dl-cHIFt0TEtU2vCAgOrJtFhH0jMFG03IbC98,2899
|
|
@@ -335,8 +382,8 @@ openTEPES/sSEP/oT_Dict_Storage_sSEP.csv,sha256=H2rJXZvoMuT-25sI2GpG8IuiNKD-dxuty
|
|
|
335
382
|
openTEPES/sSEP/oT_Dict_Technology_sSEP.csv,sha256=MCTpplzz7_eVPKQfOw35c86ib6CTtW6UK6JrbCJ8wls,170
|
|
336
383
|
openTEPES/sSEP/oT_Dict_ZoneToArea_sSEP.csv,sha256=AUDCs5Bg6sw9f2pVjGP1o4IJjXFF_VrokOGf_V3QsEI,24
|
|
337
384
|
openTEPES/sSEP/oT_Dict_Zone_sSEP.csv,sha256=TBud-fvbFbiAsuutxTYe8wWlv_x1P8oyWXILMpYiXJc,13
|
|
338
|
-
opentepes-4.18.
|
|
339
|
-
opentepes-4.18.
|
|
340
|
-
opentepes-4.18.
|
|
341
|
-
opentepes-4.18.
|
|
342
|
-
opentepes-4.18.
|
|
385
|
+
opentepes-4.18.6.dist-info/entry_points.txt,sha256=gNNPrDaTsRuRJXI1FLNgqMX1CiJ45bEp1dEDH7ZB8Oc,49
|
|
386
|
+
opentepes-4.18.6.dist-info/licenses/LICENSE,sha256=4O7bphXVzRuYavtsWzpLGuM3E-fp3HTRna7F4yIfnS4,35184
|
|
387
|
+
opentepes-4.18.6.dist-info/WHEEL,sha256=G2gURzTEtmeR8nrdXUJfNiB3VYVxigPQ-bEQujpNiNs,82
|
|
388
|
+
opentepes-4.18.6.dist-info/METADATA,sha256=a4nqs6Nzm-_0yvnUoxa5KL3Kjt3HnmoV72bugaFNX20,19005
|
|
389
|
+
opentepes-4.18.6.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|