CO-optimization of TRAnsmission and DIStribution systems as developed in the master thesis of Beneharo Reveron Baecker (@BeneharoRB): "Implementation of a novel energy system model coupling approach to co-optimize transmission and active distribution systems", 2021
Adjustments to couple transsmission & distribution system data (1), to enable the consideration of reactive power and voltage magnitudes with a new OPF linearization at distribution system level (2) and to reduce the computational complexity with a typeperiod approach combined with timeseries aggregation methods (3):
Distribution data are merged with the transmission data (editing mainly in transdisthelper.py):
approach allows to choose the microgrid types and their number in the excel input sheet - two parameter lists are defined: selection list & multiplicator list
the distribution grid is constructed with microgrid modules (excel input sheets) and the selection list
capacities, commodities, demand, areas & voltage are scaled with the multiplicator list (base voltage is scaled with the root function of the multiplicator)
additional transmission lines are modelled for the reactive power
reactive output ratios are implemented for processes at distribution system sites
concatenation of all transmission and distribution subsystem data - automatic indexing of each subsystem
ACPF is enabled applying the LinDistFlow model (editing mainly in transmission.py & model.py):
derivation of general AC code from DC code structure
definition of AC transmission tuples & sets to apply all relevant existing rules
implementation of new LinDistFlow model constraints (active and reactive power flows are related to the voltage magnitudes)
coupling of P & Q with apparent power flow transmission line constraint
implementation of a voltage rule to hold magnitude within defined permissible voltage range
implementation of a set containing all slack buses (bus at interface) and introduction of slackbus voltage (& slackbus angle - not mandatory in LinDistFlow but nice to have) constraints
enabling of ACPF also for systems without microgrids (adjustments in runfunctions.py and in transdisthelper.py in add_reactive_output_ratios to delete duplicated process commodities also when ACPF is desired without microgrids)
Enable Typeperiod with time series aggregation method (editing mainly in typeperiod.py)
implementation of typeday approach according to the urbs branch of Daniel Zinsmeister and changed for typeweek consideration
the time series aggregation module (tsam) from Kotzur, L., Markewitz, P., Robinius, M., & Stolten, D. (2018) is integrated into the urbs model primarily within the typeperiod.py module to be able to choose typeweeks with machine learning algorithms
new sets, rules and constraints are introduced to enable seasonal storage within tsam
cyclicity constraint is adjusted
timseries input number for tsam is reduced by only processing unique timeseries
postpone demand shifting after tsam to increase number of unique timeseries
Other:
adjusted package versions and deprecated code to adapted MIQCP environment
changed buysell indexing in code to be able to use same processes for different locations analogously to supim comtype
edited deprecated code in pyomoio.py
enabled demand shifting between scenarios with crossscenario data
introduced scenario function to run all 4 scenarios at once
CO-optimization of TRAnsmission and DIStribution systems as developed in the master thesis of Beneharo Reveron Baecker (@BeneharoRB): "Implementation of a novel energy system model coupling approach to co-optimize transmission and active distribution systems", 2021
Adjustments to couple transsmission & distribution system data (1), to enable the consideration of reactive power and voltage magnitudes with a new OPF linearization at distribution system level (2) and to reduce the computational complexity with a typeperiod approach combined with timeseries aggregation methods (3):
Distribution data are merged with the transmission data (editing mainly in transdisthelper.py):
ACPF is enabled applying the LinDistFlow model (editing mainly in transmission.py & model.py):
Enable Typeperiod with time series aggregation method (editing mainly in typeperiod.py)
Other: