Internal types
Internal supertypes
TimeStruct.TimeStructurePeriod — Type
abstract type TimeStructurePeriod{T} <: TimeStructure{T}Abstract type representing different time structures that consists of one or more time periods. It is used for TimeStructures that can also act as index for periods, e.g., AbstractStrategicPeriod.
The type 'T' gives the data type used for the duration of the time periods.
TimeStruct.TimeStructInnerIter — Type
abstract type TimeStructInnerIter{T<:Duration}Abstract type representing different iterators for individual time structures. The difference to TimeStructure is that iterating through a TimeStructInnerIter will not provide a TimePeriod, but a TimeStructure.
TimeStructInnerIter and TimeStructOuterIter are comparable. The former is implemented for the inner level, that is if you want to use, e.g., opscenarios(OperationalScenarios()) while the latter is used for the outer level, e.g., opscenarios(StrategicPeriod()).
TimeStruct.TimeStructOuterIter — Type
abstract type TimeStructOuterIter{T<:Duration}Abstract type representing different iterators for individual time structures. The difference to TimeStructure is that iterating through a TimeStructOuterIter will not provide a TimePeriod, but a TimeStructure.
TimeStructInnerIter and TimeStructOuterIter are comparable. The former is implemented for the inner level, that is if you want to use, e.g., opscenarios(OperationalScenarios()) while the latter is used for the outer level, e.g., opscenarios(StrategicPeriod()).
Strategic period types (TwoLevelTree)
Single types
TimeStruct.AbstractTreeNode — Type
abstract type AbstractTreeNode{S,T} <: AbstractStrategicPeriod{S,T}Abstract base type for all tree nodes within a TwoLevelTree type.
TimeStruct.AbstractStrategicScenario — Type
abstract type AbstractStrategicScenario{T} <: TimeStructurePeriod{T}Abstract type used for time structures that represent a strategic scenario. These periods are obtained when iterating through the strategic scenarios of a time structure declared by the function strategic_scenarios.
TimeStruct.StratNode — Type
struct StratNode{S, T, OP<:TimeStructure{T}} <: AbstractTreeNode{S,T}A structure representing a single strategic node of a TwoLevelTree. It is created through iterating through StratTreeNodes.
It is equivalent to a StrategicPeriod of a TwoLevel time structure when utilizing a TwoLevelTree.
TimeStruct.StrategicScenario — Type
struct StrategicScenario{S,T,OP<:AbstractTreeNode{S,T}} <: AbstractStrategicScenario{T}Description of an individual strategic scenario. It includes all strategic nodes corresponding to a scenario, including the probability. It can be utilized within a decomposition algorithm.
TimeStruct.SingleStrategicScenario — Type
struct SingleStrategicScenario{T,SC<:TimeStructure{T}} <: AbstractStrategicScenario{T}A type representing a single strategic scenario supporting iteration over its time periods. It is created when iterating through SingleStrategicScenarioWrapper.
Iterator types
TimeStruct.AbstractTreeStructure — Type
abstract type AbstractTreeStructure{T} <: TimeStructOuterIter{T}Abstract base type for all tree timestructures within a TwoLevelTree type.
TimeStruct.AbstractStratScens — Type
abstract type AbstractStratScens{S,T} <: TimeStructInnerIterAbstract type used for time structures that represent a collection of strategic scenarios, obtained through calling the function strategic_scenarios.
TimeStruct.StratTreeNodes — Type
struct StratTreeNodes{S,T,OP<:TimeStructure{T}} <: AbstractStratPers{T}Type for iterating through the individual strategic nodes of a TwoLevelTree. It is automatically created through the function strat_periods, and hence, strategic_periods.
Iterating through StratTreeNodes using the WithPrev iterator changes the behavior, although the meaning remains unchanged.
TimeStruct.StratScens — Type
struct StratScens{S,T,OP<:AbstractTreeNode{S,T}} <: AbstractStratScens{T}Type for iteration through the individual strategic scenarios represented as StrategicScenario.
TimeStruct.ScenTreeNodes — Type
struct ScenTreeNodes{S,T,N,OP<:AbstractTreeNode{S,T}} <: AbstractStratPers{T}Type for iterating through the individual strategic nodes of a StrategicScenario. It is automatically created through the function strat_periods, and hence, strategic_periods.
TimeStruct.SingleStrategicScenarioWrapper — Type
struct SingleStrategicScenarioWrapper{T,SC<:TimeStructure{T}} <: AbstractStratScens{T}Type for iterating through the individual strategic periods of a time structure without TwoLevelTree. It is automatically created through the function strategic_scenarios.
Strategic period types (TwoLevel)
Single types
TimeStruct.AbstractStrategicPeriod — Type
abstract type AbstractStrategicPeriod{S,T} <: TimeStructurePeriod{T}Abstract type used for time structures that represent a strategic period. These periods are obtained when iterating through the strategic periods of a time structure declared by the function strat_periods.
TimeStruct.SingleStrategicPeriod — Type
struct SingleStrategicPeriodWrapper{T,SP<:TimeStructure{T}} <: AbstractStrategicPeriod{T,T}A type representing a single strategic period supporting iteration over its time periods. It is created when iterating through SingleStrategicPeriodWrapper.
TimeStruct.StrategicPeriod — Type
struct StrategicPeriod{S,T,OP<:TimeStructure{T}} <: AbstractStrategicPeriod{S,T}A type representing a single strategic period supporting iteration over its time periods. It is created when iterating through StratPers.
Iterator types
TimeStruct.AbstractStratPers — Type
abstract type AbstractStratPers{S,T} <: TimeStructInnerIterAbstract type used for time structures that represent a collection of strategic periods, obtained through calling the function strat_periods.
TimeStruct.SingleStrategicPeriodWrapper — Type
struct SingleStrategicPeriodWrapper{T,SP<:TimeStructure{T}} <: AbstractStratPers{T}Type for iterating through the individual strategic periods of a time structure without TwoLevel. It is automatically created through the function strat_periods.
TimeStruct.StratPers — Type
struct StratPers{S,T,OP} <: AbstractStratPers{T}Type for iterating through the individual strategic periods of a TwoLevel time structure. It is automatically created through the function strat_periods.
Representative period types
Single types
TimeStruct.AbstractRepresentativePeriod — Type
abstract type AbstractRepresentativePeriod{T} <: TimeStructurePeriod{T}Abstract type used for time structures that represent a representative period. These periods are obtained when iterating through the representative periods of a time structure declared by the function repr_periods.
TimeStruct.SingleReprPeriod — Type
struct SingleReprPeriod{T,OP<:TimeStructure{T}} <: AbstractRepresentativePeriod{T}A type representing a single representative period supporting iteration over its time periods. It is created when iterating through SingleReprPeriodWrapper.
TimeStruct.RepresentativePeriod — Type
struct RepresentativePeriod{T,OP<:TimeStructure{T}} <: AbstractRepresentativePeriod{T}A type representing a single representative period supporting iteration over its time periods. It is created when iterating through ReprPers.
TimeStruct.StratReprPeriod — Type
struct StratReprPeriod{T,OP<:TimeStructure{T}} <: AbstractRepresentativePeriod{T}A type representing a single representative period supporting iteration over its time periods. It is created when iterating through StratReprPers.
TimeStruct.StratNodeReprPeriod — Type
struct StratNodeReprPeriod{T,OP<:TimeStructure{T}} <: AbstractRepresentativePeriod{T}A structure representing a single representative period of a StratNode of a TwoLevelTree. It is created through iterating through StratNodeReprPers.
It is equivalent to a StratReprPeriod of a TwoLevel time structure when utilizing a TwoLevelTree.
Iterator types
TimeStruct.SingleReprPeriodWrapper — Type
struct SingleReprPeriodWrapper{T,OP<:TimeStructure{T}} <: TimeStructInnerIter{T}Type for iterating through the individual representative periods of a time structure without RepresentativePeriods. It is automatically created through the function repr_periods.
TimeStruct.ReprPers — Type
struct ReprPers{S,T,OP} <: TimeStructInnerIter{T}Type for iterating through the individual representative periods of a RepresentativePeriods time structure. It is automatically created through the function repr_periods.
TimeStruct.StratReprPers — Type
struct StratReprPers{T,OP<:TimeStructInnerIter{T}} <: TimeStructOuterIter{T}Type for iterating through the individual representative periods of a StrategicPeriod time structure. It is automatically created through the function repr_periods.
TimeStruct.StratNodeReprPers — Type
struct StratNodeReprPers{T,OP<:TimeStructInnerIter{T}} <: AbstractTreeStructure{T}Type for iterating through the individual presentative periods of a StratNode. It is automatically created through the function repr_periods.
Operational scenarios types
Single types
TimeStruct.AbstractOperationalScenario — Type
abstract type AbstractOperationalScenario{T} <: TimeStructurePeriod{T}Abstract type used for time structures that represent an operational scenario. These periods are obtained when iterating through the operational scenarios of a time structure declared by the function opscenarios.
TimeStruct.SingleScenario — Type
struct SingleScenario{T,SC<:TimeStructure{T}} <: AbstractRepresentativePeriod{T}A type representing a single operational scenario supporting iteration over its time periods. It is created when iterating through SingleScenarioWrapper.
TimeStruct.OperationalScenario — Type
struct OperationalScenario{T,OP<:TimeStructure{T}} <: AbstractOperationalScenario{T}A type representing a single operational scenario supporting iteration over its time periods. It is created when iterating through OpScens.
TimeStruct.ReprOpScenario — Type
struct ReprOpScenario{T,OP<:TimeStructure{T}} <: AbstractOperationalScenario{T}A type representing a single operational scenarios supporting iteration over its time periods. It is created when iterating through RepOpScens.
TimeStruct.StratOpScenario — Type
struct StratOpScenario{T,OP<:TimeStructure{T}} <: AbstractOperationalScenario{T}A type representing a single operational scenario supporting iteration over its time periods. It is created when iterating through StratOpScens.
TimeStruct.StratReprOpScenario — Type
struct StratReprOpScenario{T, OP<:TimeStructure{T}} <: AbstractRepresentativePeriod{T}A type representing a single representative period supporting iteration over its time periods. It is created when iterating through StratReprPers.
TimeStruct.StratNodeOpScenario — Type
struct StratNodeOpScenario{T,OP<:TimeStructure{T}} <: AbstractOperationalScenario{T}A structure representing a single operational scenario for a strategic node supporting iteration over its time periods. It is created through iterating through StratNodeOpScens.
It is equivalent to a StratOpScenario of a TwoLevel time structure when utilizing a TwoLevelTree.
TimeStruct.StratNodeReprOpScenario — Type
struct StratNodeReprOpScenario{T} <: AbstractOperationalScenario{T}A structure representing a single operational scenario for a representative period in A TwoLevelTree structure supporting iteration over its time periods.
Iterator types
TimeStruct.SingleScenarioWrapper — Type
struct SingleScenarioWrapper{T,OP<:TimeStructure{T}} <: TimeStructInnerIter{T}Type for iterating through the individual operational scenarios of a time structure without OperationalScenarios. It is automatically created through the function opscenarios.
TimeStruct.OpScens — Type
struct OpScens{T,OP} <: TimeStructInnerIter{T}Type for iterating through the individual operational scenarios of a OperationalScenarios time structure. It is automatically created through the function opscenarios.
TimeStruct.RepOpScens — Type
struct RepOpScens{T,OP<:TimeStructInnerIter{T}} <: TimeStructOuterIter{T}Type for iterating through the individual operational scenarios of a RepresentativePeriod time structure. It is automatically created through the function opscenarios.
TimeStruct.StratOpScens — Type
struct StratOpScens{T,OP<:TimeStructInnerIter{T}} <: TimeStructOuterIter{T}Type for iterating through the individual operational scenarios of a StrategicPeriod time structure. It is automatically created through the function opscenarios.
TimeStruct.StratReprOpScens — Type
struct StratReprOpScens{T,OP<:TimeStructInnerIter{T}} <: TimeStructOuterIter{T}Type for iterating through the individual operational scenarios of a StrategicPeriod time structure with RepresentativePeriods. It is automatically created through the function opscenarios.
TimeStruct.StratNodeOpScens — Type
struct StratNodeOpScens{T,OP<:TimeStructInnerIter{T}} <: AbstractTreeStructure{T}Type for iterating through the individual operational scenarios of a StratNode. It is automatically created through the function opscenarios.
TimeStruct.StratNodeReprOpScens — Type
struct StratNodeReprOpScens{T,OP<:TimeStructInnerIter{T}} <: AbstractTreeStructure{T}Type for iterating through the individual operational scenarios of a StratNodeReprPeriod. It is automatically created through the function opscenarios.
Operational period types
TimeStruct.TimePeriod — Type
abstract type TimePeriodAbstract type used for a uniform interface for iterating through time structures and indexing of time profiles.
TimeStruct.SimplePeriod — Type
struct SimplePeriod{T<:Number} <: TimePeriodTime period for a single operational period. It is created through iterating through a SimpleTimes time structure.
TimeStruct.CalendarPeriod — Type
struct CalendarPeriod{T} <: TimePeriodTime period for a single operational period. It is created through iterating through a CalendarTimes time structure with duration measured in hours (by default).
TimeStruct.ScenarioPeriod — Type
struct ScenarioPeriod{P} <: TimePeriod where {P<:TimePeriod}Time period for a single operational period. It is created through iterating through a OperationalScenarios time structure. It is as well created as period within OperationalPeriod when the time structure includes OperationalScenarios.
TimeStruct.ReprPeriod — Type
struct ReprPeriod{P} <: TimePeriod where {P<:TimePeriod}Time period for a single operational period. It is created through iterating through a RepresentativePeriods time structure. It is as well created as period within OperationalPeriod when the time structure includes RepresentativePeriods.
TimeStruct.OperationalPeriod — Type
struct OperationalPeriod{P} <: TimePeriod where {P<:TimePeriod}Time period for a single operational period. It is created through iterating through a TwoLevel time structure.
TimeStruct.TreePeriod — Type
struct TreePeriod{P} <: TimePeriod where {P<:TimePeriod}Time period for iteration of a TwoLevelTree time structure. This period has in addition to an operational period also the two fields branch and prob_branch corresponding to the respective branch and probability of the branch