IARA API

IARA.Configurations_PolicyGraphTypeModule
Configurations_PolicyGraphType
  • CYCLIC_WITH_FIXED_ROOT: Cyclic policy graph starting at node 1 (0)
  • LINEAR: Linear policy graph (1)
  • CYCLIC_WITH_DISTRIBUTED_ROOT: Cyclic policy graph with equal chance of starting at any node (2)
IARA.Configurations_InflowSourceModule
Configurations_InflowSource
  • SIMULATE_WITH_PARP: Simulate inflow with PAR(p) (0)
  • READ_FROM_FILE: Read inflow from file (1)
IARA.RunModeModule
RunMode
  • TRAIN_MIN_COST: Centralized operation (0)
  • PRICE_TAKER_BID: Price taker bid (1)
  • STRATEGIC_BID: Strategic bid (2)
  • MARKET_CLEARING: Market clearing (3)
  • MIN_COST: Centralized operation simulation (4)
IARA.DemandUnit_DemandTypeModule
DemandUnit_DemandType
  • INELASTIC: Inelastic demand (0)
  • ELASTIC: Elastic demand (1)
  • FLEXIBLE: Flexible demand (2)
IARA.Configurations_ClearingBidSourceModule

Configurations_ClearingBidSource

  • READ_FROM_FILE: Read from file (0)
  • HEURISTIC_BIDS: Run the heuristic bids module concurrently with clearing, one period at a time (1)
IARA.RunTime_ClearingProcedureModule
RunTime_ClearingProcedure
  • EX_ANTE_PHYSICAL: Ex-Ante physical (0)
  • EX_ANTE_COMMERCIAL: Ex-Ante commercial (1)
  • EX_POST_PHYSICAL: Ex-Post physical (2)
  • EX_POST_COMMERCIAL: Ex-Post commercial (3)
IARA.Configurations_MakeWholePaymentsModule
Configurations_MakeWholePayments
  • CONSTRAINED_ON_AND_OFF_INSTANT: Constrained on and off instant (0)
  • CONSTRAINED_ON_INSTANT: Constrained on instant (1)
  • CONSTRAINED_ON_DAILY_AGGREGATE: Constrained on daily aggregate (2)
IARA.BatteryUnit_ExistenceModule

BatteryUnit_Existence

  • EXISTS: Battery Unit exists (1)
  • DOES_NOT_EXIST: Battery Unit does not exist (0)
IARA.Branch_ExistenceModule

Branch_Existence

  • EXISTS: Branch exists (1)
  • DOES_NOT_EXIST: Branch does not exist (0)
IARA.DCLine_ExistenceModule

DCLine_Existence

  • EXISTS: DC Line exists (1)
  • DOES_NOT_EXIST: DC Line does not exist (0)
IARA.HydroUnit_ExistenceModule

HydroUnit_Existence

  • EXISTS: Hydro Unit exists (1)
  • DOES_NOT_EXIST: Hydro Unit does not exist (0)
IARA.RenewableUnit_ExistenceModule

RenewableUnit_Existence

  • EXISTS: Renewable Unit exists (1)
  • DOES_NOT_EXIST: Renewable Unit does not exist (0)
IARA.ThermalUnit_ExistenceModule

ThermalUnit_Existence

  • EXISTS: Thermal Unit exists (1)
  • DOES_NOT_EXIST: Thermal Unit does not exist (0)
IARA.HydroUnit_HasCommitmentModule

HydroUnit_HasCommitment

  • HAS_COMMITMENT: Hydro Unit has commitment (1)
  • NO_COMMITMENT: Hydro Unit has no commitment (0)
IARA.ThermalUnit_HasCommitmentModule

ThermalUnit_HasCommitment

  • HAS_COMMITMENT: Thermal Unit has commitment (1)
  • NO_COMMITMENT: Thermal Unit has no commitment (0)
IARA.AssetOwnerType
AssetOwner

Collection representing the asset owners in the problem.

IARA.BatteryUnitType
BatteryUnit

Collection representing the battery unit in the system.

IARA.BiddingGroupType
BiddingGroup

Collection representing the bidding groups in the system.

IARA.BidsViewType
BidsView

Collection representing the bids data read from external files in chunks.

Dimensions cached in bid time series files are static:

  • 1 - Bidding group
  • 2 - Bus
  • 3 - Bid segment
  • 4 - Subperiod
IARA.BranchType
Branch

Collection representing the Branches in the system.

IARA.BusType
Bus

Collection representing the buses in the system.

IARA.DCLineType
DCLine

Collection representing the DC lines in the system.

IARA.ExAnteAndExPostTimeSeriesViewType
ExAnteAndExPostTimeSeriesView{T, N}

Some time series can come in two flavours:

1 - Ex-Ante (DA) time series: These are time series that are available before the periods of operation. They are used to make decisions for the next period. 2 - Ex-Post (RT) time series: These are time series that are available on the period of operation. They are used to make decisions for the current period.

In some use cases it is necessary to have both time series available. This view is used to store both time series in a single object. If the Ex-Post (RT) time series is nit available it will default to use the Ex-Ante (DA) time series.

Besides the conceptual idea about the time of availability of the data there is one concrete difference between the two time series: The Ex-Post (RT) time series always have one dimension more than the Ex-Ante (DA) time series. This extra dimension is called subscenario. For a given period and scenario that the model made a decision we can use multiple new scenarios of the Ex-Post (RT) time series. This is the subscenario dimension.

IARA.GaugingStationType
GaugingStation

Collection representing the gauging stations in the system.

IARA.HourSubperiodMappingType
HourSubperiodMapping

A struct to store the mapping between hours and subperiods. This struct is used to store the mapping between hours and subperiods in the external time series data. It only stores the mapping for one period at a time

IARA.HydroUnitType
HydroUnit

Hydro units are high-level data structures that represent hydro electricity generation.

IARA.InitializeOutputType
InitializeOutput

Abstract type for problem actions that initialize the output.

IARA.OutputsType
Outputs

Struct to store parameters related to the outputs of the optimization problem.

IARA.PlotRelationAllType
PlotRelationAll

Type for plotting the relation between two agents in all scenarios.

IARA.PlotRelationMeanType
PlotRelationMean

Type for plotting the relation between two agents in average across scenarios.

IARA.PlotTechnologyHistogramType
PlotTechnologyHistogram

Type for plotting a histogram where the observations are the total of generation for a technology, considering all scenarios, periods and subperiods.

IARA.PlotTechnologyHistogramPeriodType
PlotTechnologyHistogramPeriod

Type for plotting a histogram where the observations are the total of generation for a technology at period i, considering all scenarios and subperiods.

IARA.PlotTechnologyHistogramPeriodSubperiodType
PlotTechnologyHistogramPeriodSubperiod

Type for plotting a histogram where the observations are the total of generation for a technology at subperiod i, period j, considering all scenarios.

IARA.PlotTechnologyHistogramSubperiodType
PlotTechnologyHistogramSubperiod

Type for plotting a histogram where the observations are the total of generation for a technology at subperiod i, considering all scenarios and periods.

IARA.PlotTimeSeriesMeanType
PlotTimeSeriesMean

Type for a time series plot with the mean of scenarios, with a confidence interval of 95%.

IARA.RenewableUnitType
RenewableUnit

Renewable units are high-level data structures that represent non-dispatchable electricity generation.

IARA.SubproblemBuildType
SubproblemBuild

Abstract type for subproblem actions that build the subproblem model.

IARA.SubproblemUpdateType
SubproblemUpdate

Abstract type for subproblem actions that update the subproblem model.

IARA.ThermalUnitType
ThermalUnit

Thermal units are high-level data structures that represent thermal electricity generation.

IARA.TimeSeriesViewType
TimeSeriesView{T, N}

Collection representing the time series data read from external files in chunks.

IARA.TimeSeriesViewsFromExternalFilesType
TimeSeriesViewsFromExternalFiles

Struct holding all the time series data that is read from external files. All fields only store a reference to the data, which is read from the files in chunks.

IARA.ViewFromExternalFileType
ViewFromExternalFile

An abstract type that represents a view of a time series that is stored in an external file. A view represents a chunck of the data in the file. The implementation goal is to avoid loading the entire file into memory.

IARA.VirtualReservoirBidsViewType
VirtualReservoirBidsView

Collection representing the virtual reservoirs' bids data read from external files in chunks.

Dimensions cached in virtual reservoir bid time series files are static:

  • 1 - Virtual reservoir
  • 2 - Asset owner
  • 3 - Bid segment
IARA.WriteOutputType
WriteOutput

Abstract type for problem actions that write the output.

IARA.add_asset_owner!Method
add_asset_owner!(db::DatabaseSQLite; kwargs...)

Add an asset owner to the database.

Required arguments:

  • label::String: Asset owner label
  • price_type::AssetOwner_PriceType.T: Asset owner price type (AssetOwner_PriceType)
    • Default set to AssetOwner_PriceType.PRICE_TAKER
  • risk_factor::Vector{Float64}: risk factor of the asset owner.
  • segment_fraction::Vector{Float64}: fraction of the segment.

Example:

IARA.add_asset_owner!(
    db;
    label = "AssetOwner1",
    price_type = IARA.AssetOwner_PriceType.PRICE_MAKER,
)
IARA.add_battery_unit!Method
add_battery_unit!(db::DatabaseSQLite; kwargs...)

Add a Battery Unit to the database.

Required arguments:

  • label::String: Battery Unit label
  • parameters::DataFrames.DataFrame: A dataframe containing time series attributes (described below).
  • bus_id::String: Bus label (only if the bus is already in the database)
  • biddinggroup_id::String: Bidding Group label (only if the BiddingGroup already exists)

Optional arguments:

  • initial_storage::Float64: Initial storage [MWh]

Time Series parameters

The parameters dataframe has columns that may be mandatory or not, depending on some configurations about the case.

Required columns:

  • date_time::Vector{DateTime}: date and time of the time series data.
  • existing::Vector{Int}: Whether the battery_unit is existing or not (0 -> not existing, 1 -> existing)
  • min_storage::Vector{Float64}: Minimum storage [MWh]
  • max_storage::Vector{Float64}: Maximum storage [MWh]
  • max_capacity::Vector{Float64}: Maximum capacity [MWh]
  • om_cost::Vector{Float64}: O&M cost [$/MWh]

Example:

IARA.add_battery_unit!(db;
    label = "bat_1",
    parameters = DataFrame(;
        date_time = [DateTime(0)],
        existing = [Int(IARA.BatteryUnit_Existence.EXISTS)],
        min_storage = [0.0],
        max_storage = [10.0] * 1e3,
        max_capacity = [0.5],
        om_cost = [1.0],
    ),
    initial_storage = 0.0,
    bus_id = "bus_2",
)
IARA.add_bidding_group!Method
add_bidding_group!(db::DatabaseSQLite; kwargs...)

Add a BiddingGroup to the database.

Required arguments:

  • label::String: label of the Thermal Unit.
  • bid_type::BiddingGroup_BidType.T: IARA.BiddingGroup_BidType of the bidding group.
    • Default is BiddingGroup_BidType.MARKUP_HEURISTIC
  • independent_bid_max_segments::Int: maximum number of segments for the independent bid.
    • Default is 0
  • profile_bid_max_profiles::Int: maximum number of profiles for the profile bid.
    • Default is 0
  • assetowner_id::String: Label of the AssetOwner to which the bidding group belongs (only if the AssetOwner is already in the database).
  • risk_factor::Vector{Float64}: risk factor of the bidding group.
  • segment_fraction::Vector{Float64}: fraction of the segment.

Example:

IARA.add_bidding_group!(
    db;
    label = "bg_1",
    assetowner_id = "asset_owner_1",
    risk_factor = [0.5],
    segment_fraction = [1.0],
    independent_bid_max_segments = 2,
)
IARA.add_branch!Method
add_branch!(db::DatabaseSQLite; kwargs...)

Add a Branch to the database.

Required arguments:

  • label::String: Branch label
  • line_model::Branch_LineModel.T: Line model (BranchLineModel.AC or BranchLineModel.DC)
    • Default is Branch_LineModel.AC

Optional arguments:

  • bus_to::String: Bus label (only if the bus is already in the database)
  • bus_from::String: Bus label (only if the bus is already in the database)
  • parameters::DataFrames.DataFrame: A dataframe containing time series attributes (described below).

Time Series

The parameters dataframe has columns that may be mandatory or not, depending on some configurations about the case.

Required columns:

  • date_time::Vector{DateTime}: date and time of the time series data.
  • existing::Vector{Int}: Whether the branch is existing or not (0 -> not existing, 1 -> existing)
  • capacity::Vector{Float64}: Branch capacity [MWh]
  • reactance::Vector{Float64}: Branch reactance [p.u.]

Example:

IARA.add_branch!(db;
    label = "ac_3",
    parameters = DataFrame(;
        date_time = [DateTime(0)],
        existing = [Int(IARA.Branch_Existence.EXISTS)],
        capacity = [15.0],
        reactance = [0.4],
    ),
    bus_from = "bus_2",
    bus_to = "bus_3",
)
IARA.add_bus!Method
add_bus!(db::DatabaseSQLite; kwargs...)

Add a bus to the database.

Required arguments:

  • label::String: Bus label

Optional arguments:

  • zone_id::String: Zone label (only if the zone is already in the database)

Example:

IARA.add_bus!(db;
    label = "bus_1",
    zone_id = "zone_1",
)
IARA.add_dc_line!Method
add_dc_line!(db::DatabaseSQLite; kwargs...)

Add a DC Line to the database.

Required arguments:

  • label::String: DC Line label
  • parameters::DataFrames.DataFrame: A dataframe containing time series attributes (described below).

Optional arguments

  • bus_to::String: Bus To label (only if Bus is already in the database)
  • bus_from::String: Bus From label (only if Bus is already in the database)

Time Series

The parameters dataframe has columns that may be mandatory or not, depending on some configurations about the case.

Required columns:

  • date_time::Vector{DateTime}: date and time of the time series data.
  • existing::Vector{Int}: Whether the renewable unit is existing or not (0 -> not existing, 1 -> existing)
  • capacity_to::Vector{Float64}: Maximum power flow in the 'to' direction [MWh]
  • capacity_from::Vector{Float64}: Maximum power flow in the 'from' direction [MWh]

Example:

IARA.add_dc_line!(db;
    label = "dc_1",
    parameters = DataFrame(;
        date_time = [DateTime(0)],
        existing = [Int(IARA.DCLine_Existence.EXISTS)],
        capacity_to = [5.5],
        capacity_from = [5.5],
    ),
    bus_from = "bus_1",
    bus_to = "bus_2",
)
IARA.add_demand_unit!Method
add_demand_unit!(db::DatabaseSQLite; kwargs...)

Add a Demand to the database.

Required arguments:

  • label::String: Demand label
  • demand_unit_type::DemandUnit_DemandType.T: Demand type (IARA.DemandUnit_DemandType)
    • Default set to DemandUnit_DemandType.INELASTIC
  • bus_id::String: Bus label (only if the Bus already exists).
  • parameters::DataFrames.DataFrame: A dataframe containing time series attributes (described below).

Optional arguments:

  • max_shift_up::Float64: Maximum shift up [MWh]
  • max_shift_down::Float64: Maximum shift down [MWh]
  • curtailment_cost::Float64: Curtailment cost [$/MWh]
  • max_curtailment::Float64: Maximum curtailment [MWh]

Time Series

The parameters dataframe has columns that may be mandatory or not, depending on some configurations about the case.

Required columns:

  • date_time::Vector{DateTime}: date and time of the time series data.
  • existing::Vector{Int}: Whether the demand is existing or not (0 -> not existing, 1 -> existing)

Example:

IARA.add_demand_unit!(db;
    label = "Demand1",
    parameters = DataFrame(;
        date_time = [DateTime(0)],
        existing = [1],
    ),
    bus_id = "Island",
)
IARA.add_gauging_station!Method
add_gauging_station!(db::DatabaseSQLite; kwargs...)

Add a Gauging Station to the database.

Required arguments:

  • label::String: Hydro Unit label.
  • inflow::DataFrames.DataFrame: A dataframe containing time series attributes (described below).

Optional arguments:

  • gaugingstation_downstream::String: Downstream gauging station label (only if the Gauging Station already exists).

Time Series inflow

The inflow dataframe has columns that may be mandatory or not, depending on some configurations about the case.

Required columns

  • date_time::Vector{DateTime}: date and time of the time series data.
  • historical_inflow::Vector{Float64}: Historical inflow data. [hm³/s]
    • Mandatory if Configuration.inflow_source is set to SIMULATE_WITH_PARP

Example:

IARA.add_gauging_station!(db;
    label = "gauging_station",
)
IARA.add_hydro_unit!Method
add_hydro_unit!(db::DatabaseSQLite; kwargs...)

Add a Hydro Unit to the database.

Required arguments:

  • label::String: Hydro Unit label.
  • bus_id::String: Bus label of the Hydro Unit (only if the bus already exists).
  • parameters::DataFrames.DataFrame: A dataframe containing time series attributes (described below).
  • gaugingstation_id::String: Gauging station of the hydro unit (only if the gauging station already exists).
  • biddinggroup_id::String: Bidding Group label (only if the BiddingGroup already exists)
  • operation_type::HydroUnit_OperationType.T: Operation type of the Hydro Unit (IARA.HydroUnit_OperationType).

Optional arguments:

  • initial_volume::Float64: Initial volume of the Hydro Unit.
  • initial_volume_type::HydroUnit_InitialVolumeType.T: Initial volume type of the Hydro Unit (IARA.HydroUnit_InitialVolumeType).
    • Default is HydroUnit_InitialVolumeType.VOLUME.
  • has_commitment::Int: Whether the Hydro Unit has commitment (0 -> false, 1 -> true).
    • Default is 0.
  • hydrounit_turbine_to::String: Downstream plant for turbining (only if the Hydro Unit already exists).
  • hydrounit_spill_to::String: Downstream plant for spillage (only if the Hydro Unit already exists).

Time Series Parameters

The parameters dataframe has columns that may be mandatory or not, depending on some configurations about the case.

Required columns:

  • date_time::Vector{DateTime}: Date and time of the Hydro Unit time series data.
  • min_generation::Vector{Float64}: Minimum generation of the Hydro Unit [MWh]
  • Required if has_commitment is set to 1. Ignored otherwise.
  • existing::Vector{Int}: Whether the hydro unit is existing or not (0 -> not existing, 1 -> existing)
  • production_factor::Vector{Float64}: Production factor of the Hydro Unit [MWh/m³/s]
  • max_generation::Vector{Float64}: Maximum generation of the Hydro Unit [MWh]
  • min_volume::Vector{Float64}: Minimum volume of the Hydro Unit [hm³]
  • max_volume::Vector{Float64}: Maximum volume of the Hydro Unit [hm³]
  • max_turbining::Vector{Float64}: Maximum turbining of the Hydro Unit [hm³/s]

Optional columns:

  • min_outflow::Vector{Float64}: Minimum outflow of the Hydro Unit [hm³/s]
  • om_cost::Vector{Float64}: Operation and maintenance cost of the hydro unit [$/MWh]

Example:

IARA.add_hydro_unit!(db;
    label = "Hydro1",
    operation_type = IARA.HydroUnit_OperationType.RUN_OF_RIVER,
    parameters = DataFrame(;
        date_time = [DateTime(0)],
        existing = [IARA.HydroUnit_Existence.EXISTS], # 1 = true
        production_factor = [1.0], # MW/m³/s
        max_generation = [100.0], # MW
        max_turbining = [100.0], # m³/s
        min_volume = [0.0], # hm³
        max_volume = [0.0], # hm³
        min_outflow = [0.0], # m³/s
        om_cost = [0.0], # $/MWh
    ),
    initial_volume = 0.0, # hm³
    gaugingstation_id = "gauging_station",
    biddinggroup_id = "Hydro Owner",
    bus_id = "Island",
)
IARA.add_renewable_unit!Method
add_renewable_unit!(db::DatabaseSQLite; kwargs...)

Add a Renewable Unit to the database.

Required arguments:

  • label::String: Renewable Unit label
  • parameters::DataFrames.DataFrame: A dataframe containing time series attributes (described below).
  • biddinggroup_id::String: Bidding Group label (only if the BiddingGroup already exists)
  • bus_id::String: Bus label (only if the bus is already in the database)

Optional arguments:

  • technology_type::Int: Renewable Unit technology type (0 -> Solar, 1 -> Wind)

Time Series

The parameters dataframe has columns that may be mandatory or not, depending on some configurations about the case.

Required columns:

  • date_time::Vector{DateTime}: date and time of the time series data.
  • existing::Vector{Int}: Whether the renewable unit is existing or not (0 -> not existing, 1 -> existing)
  • max_generation::Vector{Float64}: Maximum generation of the renewable unit. [MWh]
  • om_cost::Vector{Float64}: O&M cost of the renewable unit. [$/MWh]
  • curtailment_cost::Vector{Float64}: Curtailment cost of the renewable unit. [$/MWh]

Example:

IARA.add_renewable_unit!(
    db;
    label = "Solar1",
    parameters = DataFrame(;
        date_time = [DateTime(0)],
        existing = [1],
        max_generation = [80.0],
        om_cost = [0.0],
        curtailment_cost = [100.0],
    ),
    biddinggroup_id = "Price Taker",
    bus_id = "Island",
)
IARA.add_thermal_unit!Method
add_thermal_unit!(db::DatabaseSQLite; kwargs...)

Add a Thermal Unit to the database.

Required arguments:

  • label::String: label of the Thermal Unit.

  • has_commitment::Int: commitment status (0 -> false, 1 -> true)

    • Default set to 0
  • shutdown_cost::Float64: shutdown cost [$]

    • Default set to 0.0
  • bus_id::String: Bus label for the thermal unit (only if the Bus already exists)

  • parameters::DataFrames.DataFrame: A dataframe containing time series attributes (described below).

  • biddinggroup_id::String: Bidding Group label (only if the BiddingGroup already exists)

Optional arguments:

  • max_ramp_up::Float64: maximum ramp up rate. [MW/min]
  • max_ramp_down::Float64: maximum ramp down rate. [MW/min]
  • min_uptime::Float64: minimum uptime [hours]
  • max_uptime::Float64: maximum uptime [hours]
  • min_downtime::Float64: minimum downtime [hours]
  • max_startups::Int: maximum startups
  • max_shutdowns::Int: maximum shutdowns
  • commitment_initial_condition::Int: Initial condition of the commitment of the thermal unit
  • generation_initial_condition::Float64: Initial condition of the generation of the thermal unit
  • uptime_initial_condition::Float64: Initial condition of the uptime of the thermal unit [subperiods]
  • downtime_initial_condition::Float64: Initial condition of the downtime of the thermal unit [subperiods]

Time Series Parameters

The parameters dataframe has columns that may be mandatory or not, depending on some configurations about the case.

Required columns:

  • date_time::Vector{DateTime}: date and time of the time series data.
  • existing::Vector{Int}: existing status of the thermal unit (0 -> false, 1 -> true)
  • max_generation::Vector{Float64}: maximum generation [MWh]
  • om_cost::Vector{Float64}
  • startup_cost::Vector{Float64}: startup cost [$/MWh]
    • Mandatory if has_commitment is set to 1

Optional columns:

  • min_generation::Vector{Float64}: minimum generation [MWh]
    • Ignored if has_commitment is set to 0

Example:

IARA.add_thermal_unit!(
    db;
    label = "Thermal1",
    parameters = DataFrame(;
        date_time = [DateTime(0)],
        existing = [1],
        max_generation = [20.0],
        om_cost = [10.0],
    ),
    biddinggroup_id = "Thermal Owner",
    bus_id = "Island",
)
IARA.add_virtual_reservoir!Method
add_virtual_reservoir!(db::DatabaseSQLite; kwargs...)

Add a VirtualReservoir to the database.

Required arguments:

  • label::String: Label of the VirtualReservoir.
  • quantity_offer::String: File name of the quantity offer time series.
  • price_offer::String: File name of the price offer time series.
  • inflow_allocation::Vector{Float64}: Inflow allocation for each asset owner.
  • hydroplant_id::Vector{Int}: Hydro plant indices that compose the VirtualReservoir.

Example:

IARA.add_virtual_reservoir!(db;
    label = "reservoir_1",
    assetowner_id = ["asset_owner_1", "asset_owner_2"],
    inflow_allocation = [0.4, 0.6],
    hydrounit_id = ["hydro_1", "hydro_2"],
)
IARA.add_zone!Method
add_zone!(db::DatabaseSQLite; kwargs...)

Add a zone to the database.

Required arguments:

  • label::String: Zone label

Example:

IARA.add_zone!(db; label = "Island Zone")
IARA.advanced_validationsMethod
advanced_validations(inputs::AbstractInputs, asset_owner::AssetOwner)

Validate the AssetOwner within the inputs context. Return the number of errors found.

IARA.advanced_validationsMethod
advanced_validations(inputs::AbstractInputs, battery_unit::BatteryUnit)

Validate the Battery's context within the inputs. Return the number of errors found.

IARA.advanced_validationsMethod
advanced_validations(inputs::AbstractInputs, bidding_group::BiddingGroup)

Validate the BiddingGroup's context within the inputs. Return the number of errors found.

IARA.advanced_validationsMethod
advanced_validations(inputs::AbstractInputs, branch::Branch)

Validate the Branch within the inputs context. Return the number of errors found.

IARA.advanced_validationsMethod
advanced_validations(inputs::AbstractInputs, bus::Bus)

Validate the Bus within the inputs context. Return the number of errors found.

IARA.advanced_validationsMethod
advanced_validations(inputs::AbstractInputs, configurations::Configurations)

Validate the Configurations' context within the inputs. Return the number of errors found.

IARA.advanced_validationsMethod
advanced_validations(inputs::AbstractInputs, dc_line::DCLine)

Validate the DCLine within the inputs context. Return the number of errors found.

IARA.advanced_validationsMethod
advanced_validations(inputs::AbstractInputs, demand_unit::DemandUnit)

Validate the Demand's context within the inputs. Return the number of errors found.

IARA.advanced_validationsMethod
advanced_validations(inputs::AbstractInputs, gauging_station::GaugingStation)

Validate the GaugingStation within the inputs context. Return the number of errors found.

IARA.advanced_validationsMethod
advanced_validations(inputs::AbstractInputs, renewable_unit::RenewableUnit)

Validate the Renewable Units' context within the inputs. Return the number of errors found.

IARA.advanced_validationsMethod
advanced_validations(inputs::AbstractInputs, thermal_unit::ThermalUnit)

Validate the Thermal Unit within the inputs context. Return the number of errors found.

IARA.advanced_validationsMethod
advanced_validations(inputs::AbstractInputs, virtual_reservoir::VirtualReservoir)

Validate the VirtualReservoir within the inputs context. Return the number of errors found.

IARA.advanced_validationsMethod
advanced_validations(inputs::AbstractInputs, zone::Zone)

Validate the Zone within the inputs context. Return the number of errors found.

IARA.agent_mean_and_sd_in_scenariosMethod
agent_mean_and_sd_in_scenarios(::Type{PlotTimeSeriesMean}, data::Array{Float64, 3}, agent_names::Vector{String}; kwargs...)

Calculate the mean and standard deviation of the data across scenarios.

IARA.agent_mean_and_sd_in_scenariosMethod
agent_mean_and_sd_in_scenarios(::Type{PlotTimeSeriesStackedMean}, data::Array{Float64, 3}, agent_names::Vector{String}; kwargs...)

Calculate the mean and standard deviation of the data across scenarios.

IARA.agent_quantile_in_scenariosMethod
agent_quantile_in_scenarios(::Type{PlotTimeSeriesQuantiles}, data::Array{Float64, 3}, agent_names::Vector{String}; kwargs...)

Calculate the P10, P50, and P90 quantiles of the data across scenarios.

IARA.any_valid_elementsMethod
any_valid_elements(
    inputs::Inputs,
    run_time_options::RunTimeOptions,
    collection::Type{<:AbstractCollection},
    action::Type{<:AbstractAction};
    filters::Vector{<:Function} = Function[]
)

Check if there are any valid elements in the collection for the given action.

IARA.asset_owner_labelMethod
asset_owner_label(asset_owner::AbstractCollection, i::Integer)

Get the label field from the AssetOwner collection at index i.

IARA.asset_owner_labelMethod
asset_owner_label(collections::AbstractCollections, i::Integer)

Get the label field from the AssetOwner collection at index i.

IARA.asset_owner_labelMethod
asset_owner_label(collections::AbstractCollections)

Get the label field from the AssetOwner collection.

IARA.asset_owner_labelMethod
asset_owner_label(asset_owner::AbstractCollection)

Get the label field from the AssetOwner collection.

IARA.asset_owner_labelMethod
asset_owner_label(inputs::AbstractInputs, i::Integer)

Get the label field from the AssetOwner collection at index i.

IARA.asset_owner_labelMethod
asset_owner_label(inputs::AbstractInputs)

Get the label field from the AssetOwner collection.

IARA.asset_owner_price_typeMethod
asset_owner_price_type(asset_owner::AbstractCollection, i::Integer)

Get the price_type field from the AssetOwner collection at index i.

IARA.asset_owner_price_typeMethod
asset_owner_price_type(collections::AbstractCollections, i::Integer)

Get the price_type field from the AssetOwner collection at index i.

IARA.asset_owner_price_typeMethod
asset_owner_price_type(collections::AbstractCollections)

Get the price_type field from the AssetOwner collection.

IARA.asset_owner_price_typeMethod
asset_owner_price_type(asset_owner::AbstractCollection)

Get the price_type field from the AssetOwner collection.

IARA.asset_owner_price_typeMethod
asset_owner_price_type(inputs::AbstractInputs, i::Integer)

Get the price_type field from the AssetOwner collection at index i.

IARA.asset_owner_price_typeMethod
asset_owner_price_type(inputs::AbstractInputs)

Get the price_type field from the AssetOwner collection.

IARA.asset_owner_revenue_convex_hullMethod
asset_owner_revenue_convex_hull(asset_owner::AbstractCollection, i::Integer)

Get the revenueconvexhull field from the AssetOwner collection at index i.

IARA.asset_owner_revenue_convex_hullMethod
asset_owner_revenue_convex_hull(collections::AbstractCollections, i::Integer)

Get the revenueconvexhull field from the AssetOwner collection at index i.

IARA.asset_owner_revenue_convex_hullMethod
asset_owner_revenue_convex_hull(inputs::AbstractInputs, i::Integer)

Get the revenueconvexhull field from the AssetOwner collection at index i.

IARA.asset_owner_revenue_convex_hull_pointMethod
asset_owner_revenue_convex_hull_point(inputs::AbstractInputs, bus::Int, subperiod::Int, point_idx::Int)

Return a point in the revenue convex hull cache at a given bus and subperiod.

IARA.asset_owner_risk_factorMethod
asset_owner_risk_factor(asset_owner::AbstractCollection, i::Integer)

Get the risk_factor field from the AssetOwner collection at index i.

IARA.asset_owner_risk_factorMethod
asset_owner_risk_factor(collections::AbstractCollections, i::Integer)

Get the risk_factor field from the AssetOwner collection at index i.

IARA.asset_owner_risk_factorMethod
asset_owner_risk_factor(collections::AbstractCollections)

Get the risk_factor field from the AssetOwner collection.

IARA.asset_owner_risk_factorMethod
asset_owner_risk_factor(asset_owner::AbstractCollection)

Get the risk_factor field from the AssetOwner collection.

IARA.asset_owner_risk_factorMethod
asset_owner_risk_factor(inputs::AbstractInputs, i::Integer)

Get the risk_factor field from the AssetOwner collection at index i.

IARA.asset_owner_risk_factorMethod
asset_owner_risk_factor(inputs::AbstractInputs)

Get the risk_factor field from the AssetOwner collection.

IARA.asset_owner_segment_fractionMethod
asset_owner_segment_fraction(asset_owner::AbstractCollection, i::Integer)

Get the segment_fraction field from the AssetOwner collection at index i.

IARA.asset_owner_segment_fractionMethod
asset_owner_segment_fraction(collections::AbstractCollections, i::Integer)

Get the segment_fraction field from the AssetOwner collection at index i.

IARA.asset_owner_segment_fractionMethod
asset_owner_segment_fraction(collections::AbstractCollections)

Get the segment_fraction field from the AssetOwner collection.

IARA.asset_owner_segment_fractionMethod
asset_owner_segment_fraction(asset_owner::AbstractCollection)

Get the segment_fraction field from the AssetOwner collection.

IARA.asset_owner_segment_fractionMethod
asset_owner_segment_fraction(inputs::AbstractInputs, i::Integer)

Get the segment_fraction field from the AssetOwner collection at index i.

IARA.battery_unit_balance!Method
battery_unit_balance!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the battery unit balance constraints to the model.

IARA.battery_unit_bidding_group_indexMethod
battery_unit_bidding_group_index(battery_unit::AbstractCollection, i::Integer)

Get the biddinggroupindex field from the BatteryUnit collection at index i.

IARA.battery_unit_bidding_group_indexMethod
battery_unit_bidding_group_index(collections::AbstractCollections, i::Integer)

Get the biddinggroupindex field from the BatteryUnit collection at index i.

IARA.battery_unit_bidding_group_indexMethod
battery_unit_bidding_group_index(inputs::AbstractInputs, i::Integer)

Get the biddinggroupindex field from the BatteryUnit collection at index i.

IARA.battery_unit_bus_indexMethod
battery_unit_bus_index(battery_unit::AbstractCollection, i::Integer)

Get the bus_index field from the BatteryUnit collection at index i.

IARA.battery_unit_bus_indexMethod
battery_unit_bus_index(collections::AbstractCollections, i::Integer)

Get the bus_index field from the BatteryUnit collection at index i.

IARA.battery_unit_bus_indexMethod
battery_unit_bus_index(collections::AbstractCollections)

Get the bus_index field from the BatteryUnit collection.

IARA.battery_unit_bus_indexMethod
battery_unit_bus_index(battery_unit::AbstractCollection)

Get the bus_index field from the BatteryUnit collection.

IARA.battery_unit_bus_indexMethod
battery_unit_bus_index(inputs::AbstractInputs, i::Integer)

Get the bus_index field from the BatteryUnit collection at index i.

IARA.battery_unit_bus_indexMethod
battery_unit_bus_index(inputs::AbstractInputs)

Get the bus_index field from the BatteryUnit collection.

IARA.battery_unit_existingMethod
battery_unit_existing(battery_unit::AbstractCollection, i::Integer)

Get the existing field from the BatteryUnit collection at index i.

IARA.battery_unit_existingMethod
battery_unit_existing(collections::AbstractCollections, i::Integer)

Get the existing field from the BatteryUnit collection at index i.

IARA.battery_unit_existingMethod
battery_unit_existing(collections::AbstractCollections)

Get the existing field from the BatteryUnit collection.

IARA.battery_unit_existingMethod
battery_unit_existing(battery_unit::AbstractCollection)

Get the existing field from the BatteryUnit collection.

IARA.battery_unit_existingMethod
battery_unit_existing(inputs::AbstractInputs, i::Integer)

Get the existing field from the BatteryUnit collection at index i.

IARA.battery_unit_existingMethod
battery_unit_existing(inputs::AbstractInputs)

Get the existing field from the BatteryUnit collection.

IARA.battery_unit_generation!Method
battery_unit_generation!(outputs, inputs::Inputs, run_time_options::RunTimeOptions, simulation_results::SimulationResultsFromPeriodScenario, period::Int, scenario::Int, subscenario::Int, ::Type{WriteOutput})

Write the battery unit generation variables' values to the output.

IARA.battery_unit_generation!Method
battery_unit_generation!(outputs::Outputs, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{InitializeOutput})

Initialize the output file to store the battery unit generation variables' values.

IARA.battery_unit_generation!Method
battery_unit_generation!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the battery unit generation variables to the model.

IARA.battery_unit_initial_storageMethod
battery_unit_initial_storage(battery_unit::AbstractCollection, i::Integer)

Get the initial_storage field from the BatteryUnit collection at index i.

IARA.battery_unit_initial_storageMethod
battery_unit_initial_storage(collections::AbstractCollections, i::Integer)

Get the initial_storage field from the BatteryUnit collection at index i.

IARA.battery_unit_initial_storageMethod
battery_unit_initial_storage(collections::AbstractCollections)

Get the initial_storage field from the BatteryUnit collection.

IARA.battery_unit_initial_storageMethod
battery_unit_initial_storage(battery_unit::AbstractCollection)

Get the initial_storage field from the BatteryUnit collection.

IARA.battery_unit_initial_storageMethod
battery_unit_initial_storage(inputs::AbstractInputs, i::Integer)

Get the initial_storage field from the BatteryUnit collection at index i.

IARA.battery_unit_labelMethod
battery_unit_label(battery_unit::AbstractCollection, i::Integer)

Get the label field from the BatteryUnit collection at index i.

IARA.battery_unit_labelMethod
battery_unit_label(collections::AbstractCollections, i::Integer)

Get the label field from the BatteryUnit collection at index i.

IARA.battery_unit_labelMethod
battery_unit_label(collections::AbstractCollections)

Get the label field from the BatteryUnit collection.

IARA.battery_unit_labelMethod
battery_unit_label(battery_unit::AbstractCollection)

Get the label field from the BatteryUnit collection.

IARA.battery_unit_labelMethod
battery_unit_label(inputs::AbstractInputs, i::Integer)

Get the label field from the BatteryUnit collection at index i.

IARA.battery_unit_labelMethod
battery_unit_label(inputs::AbstractInputs)

Get the label field from the BatteryUnit collection.

IARA.battery_unit_max_capacityMethod
battery_unit_max_capacity(battery_unit::AbstractCollection, i::Integer)

Get the max_capacity field from the BatteryUnit collection at index i.

IARA.battery_unit_max_capacityMethod
battery_unit_max_capacity(collections::AbstractCollections, i::Integer)

Get the max_capacity field from the BatteryUnit collection at index i.

IARA.battery_unit_max_capacityMethod
battery_unit_max_capacity(collections::AbstractCollections)

Get the max_capacity field from the BatteryUnit collection.

IARA.battery_unit_max_capacityMethod
battery_unit_max_capacity(battery_unit::AbstractCollection)

Get the max_capacity field from the BatteryUnit collection.

IARA.battery_unit_max_capacityMethod
battery_unit_max_capacity(inputs::AbstractInputs, i::Integer)

Get the max_capacity field from the BatteryUnit collection at index i.

IARA.battery_unit_max_storageMethod
battery_unit_max_storage(battery_unit::AbstractCollection, i::Integer)

Get the max_storage field from the BatteryUnit collection at index i.

IARA.battery_unit_max_storageMethod
battery_unit_max_storage(collections::AbstractCollections, i::Integer)

Get the max_storage field from the BatteryUnit collection at index i.

IARA.battery_unit_max_storageMethod
battery_unit_max_storage(collections::AbstractCollections)

Get the max_storage field from the BatteryUnit collection.

IARA.battery_unit_max_storageMethod
battery_unit_max_storage(battery_unit::AbstractCollection)

Get the max_storage field from the BatteryUnit collection.

IARA.battery_unit_max_storageMethod
battery_unit_max_storage(inputs::AbstractInputs, i::Integer)

Get the max_storage field from the BatteryUnit collection at index i.

IARA.battery_unit_max_storageMethod
battery_unit_max_storage(inputs::AbstractInputs)

Get the max_storage field from the BatteryUnit collection.

IARA.battery_unit_min_storageMethod
battery_unit_min_storage(battery_unit::AbstractCollection, i::Integer)

Get the min_storage field from the BatteryUnit collection at index i.

IARA.battery_unit_min_storageMethod
battery_unit_min_storage(collections::AbstractCollections, i::Integer)

Get the min_storage field from the BatteryUnit collection at index i.

IARA.battery_unit_min_storageMethod
battery_unit_min_storage(collections::AbstractCollections)

Get the min_storage field from the BatteryUnit collection.

IARA.battery_unit_min_storageMethod
battery_unit_min_storage(battery_unit::AbstractCollection)

Get the min_storage field from the BatteryUnit collection.

IARA.battery_unit_min_storageMethod
battery_unit_min_storage(inputs::AbstractInputs, i::Integer)

Get the min_storage field from the BatteryUnit collection at index i.

IARA.battery_unit_min_storageMethod
battery_unit_min_storage(inputs::AbstractInputs)

Get the min_storage field from the BatteryUnit collection.

IARA.battery_unit_om_costMethod
battery_unit_om_cost(battery_unit::AbstractCollection, i::Integer)

Get the om_cost field from the BatteryUnit collection at index i.

IARA.battery_unit_om_costMethod
battery_unit_om_cost(collections::AbstractCollections, i::Integer)

Get the om_cost field from the BatteryUnit collection at index i.

IARA.battery_unit_om_costMethod
battery_unit_om_cost(collections::AbstractCollections)

Get the om_cost field from the BatteryUnit collection.

IARA.battery_unit_om_costMethod
battery_unit_om_cost(battery_unit::AbstractCollection)

Get the om_cost field from the BatteryUnit collection.

IARA.battery_unit_om_costMethod
battery_unit_om_cost(inputs::AbstractInputs, i::Integer)

Get the om_cost field from the BatteryUnit collection at index i.

IARA.battery_unit_om_costMethod
battery_unit_om_cost(inputs::AbstractInputs)

Get the om_cost field from the BatteryUnit collection.

IARA.battery_unit_storage!Method
battery_unit_storage!(outputs, inputs::Inputs, run_time_options::RunTimeOptions, simulation_results::SimulationResultsFromPeriodScenario, period::Int, scenario::Int, subscenario::Int, ::Type{WriteOutput})

Write the battery unit storage variables' values to the output.

IARA.battery_unit_storage!Method
battery_unit_storage!(outputs::Outputs, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{InitializeOutput})

Initialize the output file to store the battery unit storage variables' values.

IARA.battery_unit_storage!Method
battery_unit_storage!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the battery unit storage variables to the model.

IARA.bidding_group_asset_owner_indexMethod
bidding_group_asset_owner_index(bidding_group::AbstractCollection, i::Integer)

Get the assetownerindex field from the BiddingGroup collection at index i.

IARA.bidding_group_asset_owner_indexMethod
bidding_group_asset_owner_index(collections::AbstractCollections, i::Integer)

Get the assetownerindex field from the BiddingGroup collection at index i.

IARA.bidding_group_asset_owner_indexMethod
bidding_group_asset_owner_index(inputs::AbstractInputs, i::Integer)

Get the assetownerindex field from the BiddingGroup collection at index i.

IARA.bidding_group_balance!Method
bidding_group_balance!(outputs, inputs::Inputs, run_time_options::RunTimeOptions, simulation_results::SimulationResultsFromPeriodScenario, period::Int, scenario::Int, subscenario::Int, ::Type{WriteOutput})

Write the bidding group results for:

  • bidding_group_price_offer
IARA.bidding_group_balance!Method
bidding_group_balance!(outputs, inputs, run_time_options, ::Type{InitializeOutput})

Initialize the output files for:

  • bidding_group_price_offer
IARA.bidding_group_balance!Method
bidding_group_balance!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the bidding group balance constraints to the model.

IARA.bidding_group_bid_typeMethod
bidding_group_bid_type(bidding_group::AbstractCollection, i::Integer)

Get the bid_type field from the BiddingGroup collection at index i.

IARA.bidding_group_bid_typeMethod
bidding_group_bid_type(collections::AbstractCollections, i::Integer)

Get the bid_type field from the BiddingGroup collection at index i.

IARA.bidding_group_bid_typeMethod
bidding_group_bid_type(collections::AbstractCollections)

Get the bid_type field from the BiddingGroup collection.

IARA.bidding_group_bid_typeMethod
bidding_group_bid_type(bidding_group::AbstractCollection)

Get the bid_type field from the BiddingGroup collection.

IARA.bidding_group_bid_typeMethod
bidding_group_bid_type(inputs::AbstractInputs, i::Integer)

Get the bid_type field from the BiddingGroup collection at index i.

IARA.bidding_group_bid_typeMethod
bidding_group_bid_type(inputs::AbstractInputs)

Get the bid_type field from the BiddingGroup collection.

IARA.bidding_group_energy_offer!Method
bidding_group_energy_offer!(outputs, inputs::Inputs, run_time_options::RunTimeOptions, simulation_results::SimulationResultsFromPeriodScenario, period::Int, scenario::Int, subscenario::Int, ::Type{WriteOutput})

Write the bidding group energy offer variable values to the output.

IARA.bidding_group_energy_offer!Method
bidding_group_energy_offer!(outputs::Outputs, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{InitializeOutput})

Initialize the output file to store the bidding group energy offer variable values.

IARA.bidding_group_energy_offer!Method
bidding_group_energy_offer!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemUpdate})

Updates the objective function coefficients for the bidding group energy offer variables.

IARA.bidding_group_energy_offer!Method
bidding_group_energy_offer!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the bidding group energy offer variables to the model.

IARA.bidding_group_generation!Method
bidding_group_generation!(outputs, inputs::Inputs, run_time_options::RunTimeOptions, simulation_results::SimulationResultsFromPeriodScenario, period::Int, scenario::Int, subscenario::Int, ::Type{WriteOutput})

Write the bidding group generation variable values to the output.

IARA.bidding_group_generation!Method
bidding_group_generation!(outputs::Outputs, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{InitializeOutput})

Initialize the output file to store the bidding group generation variable values.

IARA.bidding_group_generation!Method
bidding_group_generation!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, scenario, subscenario, ::Type{SubproblemUpdate})

Updates the objective function coefficients for the bidding group generation variables.

IARA.bidding_group_generation!Method
bidding_group_generation!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the bidding group generation variables to the model.

IARA.bidding_group_generation_bound_by_offer!Method
bidding_group_generation_bound_by_offer!(
    model,
    inputs,
    run_time_options,
    ::Type{SubproblemBuild},
)

Add the bidding group generation bound by offer constraints to the model.

IARA.bidding_group_labelMethod
bidding_group_label(bidding_group::AbstractCollection, i::Integer)

Get the label field from the BiddingGroup collection at index i.

IARA.bidding_group_labelMethod
bidding_group_label(collections::AbstractCollections, i::Integer)

Get the label field from the BiddingGroup collection at index i.

IARA.bidding_group_labelMethod
bidding_group_label(collections::AbstractCollections)

Get the label field from the BiddingGroup collection.

IARA.bidding_group_labelMethod
bidding_group_label(bidding_group::AbstractCollection)

Get the label field from the BiddingGroup collection.

IARA.bidding_group_labelMethod
bidding_group_label(inputs::AbstractInputs, i::Integer)

Get the label field from the BiddingGroup collection at index i.

IARA.bidding_group_labelMethod
bidding_group_label(inputs::AbstractInputs)

Get the label field from the BiddingGroup collection.

IARA.bidding_group_parent_profile_fileMethod
bidding_group_parent_profile_file(bidding_group::AbstractCollection, i::Integer)

Get the parentprofilefile field from the BiddingGroup collection at index i.

IARA.bidding_group_parent_profile_fileMethod
bidding_group_parent_profile_file(collections::AbstractCollections, i::Integer)

Get the parentprofilefile field from the BiddingGroup collection at index i.

IARA.bidding_group_parent_profile_fileMethod
bidding_group_parent_profile_file(inputs::AbstractInputs, i::Integer)

Get the parentprofilefile field from the BiddingGroup collection at index i.

IARA.bidding_group_price_offer_fileMethod
bidding_group_price_offer_file(bidding_group::AbstractCollection, i::Integer)

Get the priceofferfile field from the BiddingGroup collection at index i.

IARA.bidding_group_price_offer_fileMethod
bidding_group_price_offer_file(collections::AbstractCollections, i::Integer)

Get the priceofferfile field from the BiddingGroup collection at index i.

IARA.bidding_group_price_offer_fileMethod
bidding_group_price_offer_file(bidding_group::AbstractCollection)

Get the price_offer_file field from the BiddingGroup collection.

IARA.bidding_group_price_offer_fileMethod
bidding_group_price_offer_file(inputs::AbstractInputs, i::Integer)

Get the priceofferfile field from the BiddingGroup collection at index i.

IARA.bidding_group_price_offer_profile_fileMethod
bidding_group_price_offer_profile_file(bidding_group::AbstractCollection, i::Integer)

Get the priceofferprofile_file field from the BiddingGroup collection at index i.

IARA.bidding_group_price_offer_profile_fileMethod
bidding_group_price_offer_profile_file(collections::AbstractCollections, i::Integer)

Get the priceofferprofile_file field from the BiddingGroup collection at index i.

IARA.bidding_group_profile_bid_max_profilesMethod
bidding_group_profile_bid_max_profiles(bidding_group::AbstractCollection, i::Integer)

Get the profilebidmax_profiles field from the BiddingGroup collection at index i.

IARA.bidding_group_profile_bid_max_profilesMethod
bidding_group_profile_bid_max_profiles(collections::AbstractCollections, i::Integer)

Get the profilebidmax_profiles field from the BiddingGroup collection at index i.

IARA.bidding_group_profile_energy_offer!Method
bidding_group_profile_energy_offer!(outputs, inputs::Inputs, run_time_options::RunTimeOptions, simulation_results::SimulationResultsFromPeriodScenario, period::Int, scenario::Int, subscenario::Int, ::Type{WriteOutput})

Write the bidding group profile energy offer variables' values to the output.

IARA.bidding_group_profile_energy_offer!Method
bidding_group_profile_energy_offer!(outputs::Outputs, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{InitializeOutput})

Initialize the output file to store the bidding group profile energy offer variable values.

IARA.bidding_group_profile_energy_offer!Method
bidding_group_profile_energy_offer!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemUpdate})

Updates the objective function coefficients for the bidding group profile energy offer variables.

IARA.bidding_group_profile_energy_offer!Method
bidding_group_profile_energy_offer!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the bidding group profile energy offer variables to the model.

IARA.bidding_group_profile_minimum_activation!Method
bidding_group_profile_minimum_activation!(
    model,
    inputs,
    run_time_options,
    ::Type{SubproblemBuild},
)

Add the bidding group profile minimum activation constraints to the model.

IARA.bidding_group_profile_precedence!Method
bidding_group_profile_precedence!(
    model,
    inputs,
    run_time_options,
    ::Type{SubproblemBuild},
)

Add the bidding group profile precedence constraints to the model.

IARA.bidding_group_quantity_offer_fileMethod
bidding_group_quantity_offer_file(bidding_group::AbstractCollection, i::Integer)

Get the quantityofferfile field from the BiddingGroup collection at index i.

IARA.bidding_group_quantity_offer_fileMethod
bidding_group_quantity_offer_file(collections::AbstractCollections, i::Integer)

Get the quantityofferfile field from the BiddingGroup collection at index i.

IARA.bidding_group_quantity_offer_fileMethod
bidding_group_quantity_offer_file(inputs::AbstractInputs, i::Integer)

Get the quantityofferfile field from the BiddingGroup collection at index i.

IARA.bidding_group_risk_factorMethod
bidding_group_risk_factor(bidding_group::AbstractCollection, i::Integer)

Get the risk_factor field from the BiddingGroup collection at index i.

IARA.bidding_group_risk_factorMethod
bidding_group_risk_factor(collections::AbstractCollections, i::Integer)

Get the risk_factor field from the BiddingGroup collection at index i.

IARA.bidding_group_risk_factorMethod
bidding_group_risk_factor(collections::AbstractCollections)

Get the risk_factor field from the BiddingGroup collection.

IARA.bidding_group_risk_factorMethod
bidding_group_risk_factor(bidding_group::AbstractCollection)

Get the risk_factor field from the BiddingGroup collection.

IARA.bidding_group_risk_factorMethod
bidding_group_risk_factor(inputs::AbstractInputs, i::Integer)

Get the risk_factor field from the BiddingGroup collection at index i.

IARA.bidding_group_segment_fractionMethod
bidding_group_segment_fraction(bidding_group::AbstractCollection, i::Integer)

Get the segment_fraction field from the BiddingGroup collection at index i.

IARA.bidding_group_segment_fractionMethod
bidding_group_segment_fraction(collections::AbstractCollections, i::Integer)

Get the segment_fraction field from the BiddingGroup collection at index i.

IARA.bidding_group_segment_fractionMethod
bidding_group_segment_fraction(bidding_group::AbstractCollection)

Get the segment_fraction field from the BiddingGroup collection.

IARA.bidding_group_segment_fractionMethod
bidding_group_segment_fraction(inputs::AbstractInputs, i::Integer)

Get the segment_fraction field from the BiddingGroup collection at index i.

IARA.branch_bus_fromMethod
branch_bus_from(branch::AbstractCollection, i::Integer)

Get the bus_from field from the Branch collection at index i.

IARA.branch_bus_fromMethod
branch_bus_from(collections::AbstractCollections, i::Integer)

Get the bus_from field from the Branch collection at index i.

IARA.branch_bus_fromMethod
branch_bus_from(collections::AbstractCollections)

Get the bus_from field from the Branch collection.

IARA.branch_bus_fromMethod
branch_bus_from(branch::AbstractCollection)

Get the bus_from field from the Branch collection.

IARA.branch_bus_fromMethod
branch_bus_from(inputs::AbstractInputs, i::Integer)

Get the bus_from field from the Branch collection at index i.

IARA.branch_bus_fromMethod
branch_bus_from(inputs::AbstractInputs)

Get the bus_from field from the Branch collection.

IARA.branch_bus_toMethod
branch_bus_to(branch::AbstractCollection, i::Integer)

Get the bus_to field from the Branch collection at index i.

IARA.branch_bus_toMethod
branch_bus_to(collections::AbstractCollections, i::Integer)

Get the bus_to field from the Branch collection at index i.

IARA.branch_bus_toMethod
branch_bus_to(collections::AbstractCollections)

Get the bus_to field from the Branch collection.

IARA.branch_bus_toMethod
branch_bus_to(branch::AbstractCollection)

Get the bus_to field from the Branch collection.

IARA.branch_bus_toMethod
branch_bus_to(inputs::AbstractInputs, i::Integer)

Get the bus_to field from the Branch collection at index i.

IARA.branch_bus_toMethod
branch_bus_to(inputs::AbstractInputs)

Get the bus_to field from the Branch collection.

IARA.branch_capacityMethod
branch_capacity(branch::AbstractCollection, i::Integer)

Get the capacity field from the Branch collection at index i.

IARA.branch_capacityMethod
branch_capacity(collections::AbstractCollections, i::Integer)

Get the capacity field from the Branch collection at index i.

IARA.branch_capacityMethod
branch_capacity(collections::AbstractCollections)

Get the capacity field from the Branch collection.

IARA.branch_capacityMethod
branch_capacity(branch::AbstractCollection)

Get the capacity field from the Branch collection.

IARA.branch_capacityMethod
branch_capacity(inputs::AbstractInputs, i::Integer)

Get the capacity field from the Branch collection at index i.

IARA.branch_capacityMethod
branch_capacity(inputs::AbstractInputs)

Get the capacity field from the Branch collection.

IARA.branch_existingMethod
branch_existing(branch::AbstractCollection, i::Integer)

Get the existing field from the Branch collection at index i.

IARA.branch_existingMethod
branch_existing(collections::AbstractCollections, i::Integer)

Get the existing field from the Branch collection at index i.

IARA.branch_existingMethod
branch_existing(collections::AbstractCollections)

Get the existing field from the Branch collection.

IARA.branch_existingMethod
branch_existing(branch::AbstractCollection)

Get the existing field from the Branch collection.

IARA.branch_existingMethod
branch_existing(inputs::AbstractInputs, i::Integer)

Get the existing field from the Branch collection at index i.

IARA.branch_existingMethod
branch_existing(inputs::AbstractInputs)

Get the existing field from the Branch collection.

IARA.branch_flow!Method
branch_flow!(outputs, inputs::Inputs, run_time_options::RunTimeOptions, simulation_results::SimulationResultsFromPeriodScenario, period::Int, scenario::Int, subscenario::Int, ::Type{WriteOutput})

Write the branch flow variables' values to the output file.

IARA.branch_flow!Method
branch_flow!(outputs::Outputs, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{InitializeOutput})

Initialize the output file to store the branch flow variables' values.

IARA.branch_flow!Method
branch_flow!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the branch flow variables to the model.

IARA.branch_labelMethod
branch_label(branch::AbstractCollection, i::Integer)

Get the label field from the Branch collection at index i.

IARA.branch_labelMethod
branch_label(collections::AbstractCollections, i::Integer)

Get the label field from the Branch collection at index i.

IARA.branch_labelMethod
branch_label(collections::AbstractCollections)

Get the label field from the Branch collection.

IARA.branch_labelMethod
branch_label(branch::AbstractCollection)

Get the label field from the Branch collection.

IARA.branch_labelMethod
branch_label(inputs::AbstractInputs, i::Integer)

Get the label field from the Branch collection at index i.

IARA.branch_labelMethod
branch_label(inputs::AbstractInputs)

Get the label field from the Branch collection.

IARA.branch_line_modelMethod
branch_line_model(branch::AbstractCollection, i::Integer)

Get the line_model field from the Branch collection at index i.

IARA.branch_line_modelMethod
branch_line_model(collections::AbstractCollections, i::Integer)

Get the line_model field from the Branch collection at index i.

IARA.branch_line_modelMethod
branch_line_model(collections::AbstractCollections)

Get the line_model field from the Branch collection.

IARA.branch_line_modelMethod
branch_line_model(branch::AbstractCollection)

Get the line_model field from the Branch collection.

IARA.branch_line_modelMethod
branch_line_model(inputs::AbstractInputs, i::Integer)

Get the line_model field from the Branch collection at index i.

IARA.branch_line_modelMethod
branch_line_model(inputs::AbstractInputs)

Get the line_model field from the Branch collection.

IARA.branch_reactanceMethod
branch_reactance(branch::AbstractCollection, i::Integer)

Get the reactance field from the Branch collection at index i.

IARA.branch_reactanceMethod
branch_reactance(collections::AbstractCollections, i::Integer)

Get the reactance field from the Branch collection at index i.

IARA.branch_reactanceMethod
branch_reactance(collections::AbstractCollections)

Get the reactance field from the Branch collection.

IARA.branch_reactanceMethod
branch_reactance(branch::AbstractCollection)

Get the reactance field from the Branch collection.

IARA.branch_reactanceMethod
branch_reactance(inputs::AbstractInputs, i::Integer)

Get the reactance field from the Branch collection at index i.

IARA.branch_reactanceMethod
branch_reactance(inputs::AbstractInputs)

Get the reactance field from the Branch collection.

IARA.build_graphMethod
build_graph(inputs::Inputs; current_period::Union{Nothing, Int} = nothing)

Builds a graph based on the inputs.

IARA.build_hydro_offersMethod
build_hydro_offers(
    inputs::Inputs, 
    bg_index::Int, 
    hydro_unit_indexes::Vector{Int}, 
    number_of_risk_factors::Int, 
    available_energy::Union{Vector{Float64}, Nothing}
)

Build the quantity and price offers for hydro units associated with a bidding group.

IARA.build_plot_outputMethod
build_plot_output(inputs::Inputs, plots_path::String, outputs_path::String, plot_config::PlotConfig)

Build the plot output for a specific plot configuration.

IARA.build_plotsMethod
build_plots(inputs::Inputs)

Build plots for the outputs of the model.

IARA.build_renewable_offersMethod
build_renewable_offers(
    inputs::Inputs, 
    bg_index::Int, 
    renewable_unit_indexes::Vector{Int}, 
    number_of_risk_factors::Int
)

Build the quantity and price offers for renewable units associated with a bidding group.

IARA.build_sql_typed_kwargsMethod
build_sql_typed_kwargs(kwargs::Dict{Symbol, T}) where T

Converts Enum values in the kwargs to their corresponding Int values for SQL purposes, keeping other values unchanged.

IARA.build_subproblem_modelMethod
build_subproblem_model(
    inputs::Inputs,
    run_time_options::RunTimeOptions,
    period::Int;
    jump_model = JuMP.Model(),
)

Build the subproblem model for the given period.

IARA.build_thermal_offersMethod
build_thermal_offers(
    inputs::Inputs, 
    bg_index::Int, 
    thermal_unit_indexes::Vector{Int}, 
    number_of_risk_factors::Int
)

Build the quantity and price offers for thermal units associated with a bidding group.

IARA.bus_labelMethod
bus_label(bus::AbstractCollection, i::Integer)

Get the label field from the Bus collection at index i.

IARA.bus_labelMethod
bus_label(collections::AbstractCollections, i::Integer)

Get the label field from the Bus collection at index i.

IARA.bus_labelMethod
bus_label(collections::AbstractCollections)

Get the label field from the Bus collection.

IARA.bus_labelMethod
bus_label(bus::AbstractCollection)

Get the label field from the Bus collection.

IARA.bus_labelMethod
bus_label(inputs::AbstractInputs, i::Integer)

Get the label field from the Bus collection at index i.

IARA.bus_labelMethod
bus_label(inputs::AbstractInputs)

Get the label field from the Bus collection.

IARA.bus_voltage_angle!Method
bus_voltage_angle!(outputs, inputs::Inputs, run_time_options::RunTimeOptions, simulation_results::SimulationResultsFromPeriodScenario, period::Int, scenario::Int, subscenario::Int, ::Type{WriteOutput})

Write the bus voltage angle variables' values to the output file.

IARA.bus_voltage_angle!Method
bus_voltage_angle!(outputs::Outputs, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{InitializeOutput})

Initialize the output file to store the bus voltage angle variables' values.

IARA.bus_voltage_angle!Method
bus_voltage_angle!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the bus voltage angle variables to the model.

IARA.bus_zone_id_indexMethod
bus_zone_id_index(bus::AbstractCollection, i::Integer)

Get the zoneidindex field from the Bus collection at index i.

IARA.bus_zone_id_indexMethod
bus_zone_id_index(collections::AbstractCollections, i::Integer)

Get the zoneidindex field from the Bus collection at index i.

IARA.bus_zone_id_indexMethod
bus_zone_id_index(collections::AbstractCollections)

Get the zone_id_index field from the Bus collection.

IARA.bus_zone_id_indexMethod
bus_zone_id_index(bus::AbstractCollection)

Get the zone_id_index field from the Bus collection.

IARA.bus_zone_id_indexMethod
bus_zone_id_index(inputs::AbstractInputs, i::Integer)

Get the zoneidindex field from the Bus collection at index i.

IARA.bus_zone_id_indexMethod
bus_zone_id_index(inputs::AbstractInputs)

Get the zone_id_index field from the Bus collection.

IARA.buses_represented_for_strategic_biddingMethod
buses_represented_for_strategic_bidding(inputs::Inputs)

If the 'aggregatebusesforstrategicbidding' attribute is set to AGGREGATE, return [1]. Otherwise, return the index of all Buses.

IARA.calculate_incremental_inflowMethod
calculate_incremental_inflow(inputs::Inputs, total_inflow::Vector{Vector{Float64}})

Calculate incremental inflow from total inflow.

IARA.clearing_integer_variablesMethod
clearing_integer_variables(inputs::Inputs, run_time_options::RunTimeOptions)

Determine the clearing integer variables.

IARA.clearing_model_typeMethod
clearing_model_type(inputs::Inputs, run_time_options::RunTimeOptions)

Determine the clearing model type.

IARA.constraint_dual_recorderMethod
constraint_dual_recorder(constraint_name::Symbol)

Return a function that retrieves the dual value of a constraint with the provided name.

IARA.convex_hull_coefficients!Method
convex_hull_coefficients!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemUpdate})

Updates the objective function coefficients for the convex hull coefficients variables.

IARA.convex_hull_coefficients!Method
convex_hull_coefficients!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the convex hull coefficients variables to the model.

IARA.create_study!Method
create_study!(
    case_path::String; 
    kwargs...
)

create_study! creates a new study and returns a PSRClassesInterface.PSRDatabaseSQLite.DatabaseSQLite object.

Required arguments:

  • PATH::String: the path where the study will be created
  • cycle_discount_rate::Float64: the cycle discount rate
  • subperiod_duration_in_hours::Vector{Float64}: subperiod duration in hours (one entry for each subperiod)

Conditionally required arguments:

  • number_of_nodes::Int: the number of nodes in the study. Required for cyclic policy graphs.
  • expected_number_of_repeats_per_node::Vector{Int}: expected number of repeats per node (one entry for each node). Required for cyclic policy graphs.

Optional arguments:

  • number_of_periods::Int: the number of periods in the study
  • number_of_scenarios::Int: the number of scenarios in the study
  • number_of_subperiods::Int: the number of subperiods in the study
  • demand_deficit_cost::Float64: the cost of demand deficit in R$\MWh
  • period_type::Int: the type of the period
  • loop_subperiods_for_thermal_constraints::Int
  • iteration_limit::Int: the maximum number of iterations of SDDP algorithm
  • initial_date_time::Dates.DateTime: the initial Dates.DateTime of the study
  • run_mode::Int
  • policy_graph_type::Configurations_PolicyGraphType: the the policy graph, of type IARA.Configurations_PolicyGraphType
  • use_binary_variables::Int: whether to use binary variables
  • cycle_duration_in_hours::Float64: the duration of a cycle in the policy graph, in hours
  • hydro_minimum_outflow_violation_cost::Float64: the cost of hydro minimum outflow violation in [$/m³/s]
  • hydro_spillage_cost::Float64: the cost of hydro spillage in [$/hm³]
  • aggregate_buses_for_strategic_bidding::Int: whether to aggregate buses for strategic bidding (0 or 1)
  • parp_max_lags::Int: the maximum number of lags in the PAR(p) model
  • inflow_source::Int
IARA.custom_plotMethod
IARA.custom_plot(plot_a::Plot, plot_b::Plot; title::String = "Plot")

Create a customized plot from two plots.

  • It requires a vector of plots that you have already created with IARA.custom_plot.
  • The x-axis of the two plots must be the same.

Example:

path_1 = "path/to/file.csv"
path_2 = "path/to/another_file.csv"


plot_1 = IARA.custom_plot(path_1, IARA.PlotTimeSeriesMean; subperiod = 1:10, agents=["hydro"])
plot_2 = IARA.custom_plot(path_2, IARA.PlotTimeSeriesMean; subperiod = 1:10, agents=["thermal"])

IARA.custom_plot(plot_1, plot_2; title = "Custom Plot")
IARA.custom_plotMethod
IARA.custom_plot(
    filepath_x::String, 
    filepath_y::String, 
    plot_type::Type{<:IARA.RelationPlotType}; 
    agent_x::String, 
    agent_y::String, 
    title::String = "Plot", 
    x_label::String, 
    y_label::String, 
    flip_x::Bool = false, 
    flip_y::Bool = false, 
    trace_mode::String = "markers", 
    kwargs...
)

Create a customized plot relating the values for two agents in two different time series files.

  • It requires a plot type [IARA.RelationPlotType] and a file path to a time series file.
  • The agent_x and agent_y arguments are used to filter the agents to be plotted, in the x and y axis.
  • The title argument is used to set the title of the plot, which is "Plot" by default.
  • The x_label and y_label arguments are used to set the labels of the x and y axis.
  • The flip_x and flip_y arguments are used to reverse the x and y axis, respectively.
  • The trace_mode argument is used to set the trace mode of the plot, which is "markers" by default.
  • The kwargs arguments are used to filter the time series by its dimensions.

Example:

path_x = "path/to/file.csv"
path_y = "path/to/another_file.csv"
IARA.custom_plot(path_x, path_y, IARA.PlotRelationAll; agent_x = "hydro_1", agent_y = "hydro_1", x_label = "volume", y_label = "turbining", flip_x = true, trace_mode= "line")
IARA.custom_plotMethod
custom_plot(filepath::String, plot_type::Type{<:PlotType}; agents::Vector{String} = Vector{String}(), title::String = "Plot", kwargs...)

Create a customized plot from a time series file.

  • It requires a plot type [PlotType] and a file path to a time series file.
  • The agents argument is used to filter the agents to be plotted. If it is not provided, all agents will be plotted.
  • The title argument is used to set the title of the plot, which is "Plot" by default.
  • The kwargs arguments are used to filter the time series by its dimensions.

Example:

path = "path/to/file.csv"
IARA.custom_plot(path, PlotTimeSeriesMean; subperiod = 1:10, agents=["hydro"])
IARA.cyclic_policy_graphMethod
cyclic_policy_graph(inputs::AbstractInputs)

Return whether the policy graph is cyclic.

IARA.dc_flow!Method
dc_flow!(outputs, inputs::Inputs, run_time_options::RunTimeOptions, simulation_results::SimulationResultsFromPeriodScenario, period::Int, scenario::Int, subscenario::Int, ::Type{WriteOutput})

Write the DC flow variables' values to the output file.

IARA.dc_flow!Method
dc_flow!(outputs::Outputs, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{InitializeOutput})

Initialize output file to store the DC flow variables' values.

IARA.dc_flow!Method
dc_flow!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the DC flow variables to the model.

IARA.dc_line_bus_fromMethod
dc_line_bus_from(dc_line::AbstractCollection, i::Integer)

Get the bus_from field from the DCLine collection at index i.

IARA.dc_line_bus_fromMethod
dc_line_bus_from(collections::AbstractCollections, i::Integer)

Get the bus_from field from the DCLine collection at index i.

IARA.dc_line_bus_fromMethod
dc_line_bus_from(collections::AbstractCollections)

Get the bus_from field from the DCLine collection.

IARA.dc_line_bus_fromMethod
dc_line_bus_from(dc_line::AbstractCollection)

Get the bus_from field from the DCLine collection.

IARA.dc_line_bus_fromMethod
dc_line_bus_from(inputs::AbstractInputs, i::Integer)

Get the bus_from field from the DCLine collection at index i.

IARA.dc_line_bus_fromMethod
dc_line_bus_from(inputs::AbstractInputs)

Get the bus_from field from the DCLine collection.

IARA.dc_line_bus_toMethod
dc_line_bus_to(dc_line::AbstractCollection, i::Integer)

Get the bus_to field from the DCLine collection at index i.

IARA.dc_line_bus_toMethod
dc_line_bus_to(collections::AbstractCollections, i::Integer)

Get the bus_to field from the DCLine collection at index i.

IARA.dc_line_bus_toMethod
dc_line_bus_to(collections::AbstractCollections)

Get the bus_to field from the DCLine collection.

IARA.dc_line_bus_toMethod
dc_line_bus_to(dc_line::AbstractCollection)

Get the bus_to field from the DCLine collection.

IARA.dc_line_bus_toMethod
dc_line_bus_to(inputs::AbstractInputs, i::Integer)

Get the bus_to field from the DCLine collection at index i.

IARA.dc_line_bus_toMethod
dc_line_bus_to(inputs::AbstractInputs)

Get the bus_to field from the DCLine collection.

IARA.dc_line_capacity_fromMethod
dc_line_capacity_from(dc_line::AbstractCollection, i::Integer)

Get the capacity_from field from the DCLine collection at index i.

IARA.dc_line_capacity_fromMethod
dc_line_capacity_from(collections::AbstractCollections, i::Integer)

Get the capacity_from field from the DCLine collection at index i.

IARA.dc_line_capacity_fromMethod
dc_line_capacity_from(collections::AbstractCollections)

Get the capacity_from field from the DCLine collection.

IARA.dc_line_capacity_fromMethod
dc_line_capacity_from(dc_line::AbstractCollection)

Get the capacity_from field from the DCLine collection.

IARA.dc_line_capacity_fromMethod
dc_line_capacity_from(inputs::AbstractInputs, i::Integer)

Get the capacity_from field from the DCLine collection at index i.

IARA.dc_line_capacity_fromMethod
dc_line_capacity_from(inputs::AbstractInputs)

Get the capacity_from field from the DCLine collection.

IARA.dc_line_capacity_toMethod
dc_line_capacity_to(dc_line::AbstractCollection, i::Integer)

Get the capacity_to field from the DCLine collection at index i.

IARA.dc_line_capacity_toMethod
dc_line_capacity_to(collections::AbstractCollections, i::Integer)

Get the capacity_to field from the DCLine collection at index i.

IARA.dc_line_capacity_toMethod
dc_line_capacity_to(collections::AbstractCollections)

Get the capacity_to field from the DCLine collection.

IARA.dc_line_capacity_toMethod
dc_line_capacity_to(dc_line::AbstractCollection)

Get the capacity_to field from the DCLine collection.

IARA.dc_line_capacity_toMethod
dc_line_capacity_to(inputs::AbstractInputs, i::Integer)

Get the capacity_to field from the DCLine collection at index i.

IARA.dc_line_capacity_toMethod
dc_line_capacity_to(inputs::AbstractInputs)

Get the capacity_to field from the DCLine collection.

IARA.dc_line_existingMethod
dc_line_existing(dc_line::AbstractCollection, i::Integer)

Get the existing field from the DCLine collection at index i.

IARA.dc_line_existingMethod
dc_line_existing(collections::AbstractCollections, i::Integer)

Get the existing field from the DCLine collection at index i.

IARA.dc_line_existingMethod
dc_line_existing(collections::AbstractCollections)

Get the existing field from the DCLine collection.

IARA.dc_line_existingMethod
dc_line_existing(dc_line::AbstractCollection)

Get the existing field from the DCLine collection.

IARA.dc_line_existingMethod
dc_line_existing(inputs::AbstractInputs, i::Integer)

Get the existing field from the DCLine collection at index i.

IARA.dc_line_existingMethod
dc_line_existing(inputs::AbstractInputs)

Get the existing field from the DCLine collection.

IARA.dc_line_labelMethod
dc_line_label(dc_line::AbstractCollection, i::Integer)

Get the label field from the DCLine collection at index i.

IARA.dc_line_labelMethod
dc_line_label(collections::AbstractCollections, i::Integer)

Get the label field from the DCLine collection at index i.

IARA.dc_line_labelMethod
dc_line_label(collections::AbstractCollections)

Get the label field from the DCLine collection.

IARA.dc_line_labelMethod
dc_line_label(dc_line::AbstractCollection)

Get the label field from the DCLine collection.

IARA.dc_line_labelMethod
dc_line_label(inputs::AbstractInputs, i::Integer)

Get the label field from the DCLine collection at index i.

IARA.dc_line_labelMethod
dc_line_label(inputs::AbstractInputs)

Get the label field from the DCLine collection.

IARA.delete_element!Method
delete_element!(db::DatabaseSQLite, collection::String, label::String)

Deletes an element from a collection in the database.

IARA.demand!Method
demand!(outputs, inputs::Inputs, run_time_options::RunTimeOptions, simulation_results::SimulationResultsFromPeriodScenario, period::Int, scenario::Int, subscenario::Int, ::Type{WriteOutput})

Write the demand and deficit variables' values to the output file.

IARA.demand!Method
demand!(outputs::Outputs, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{InitializeOutput})

Initialize the output file to store the demand and deficit variables' values.

IARA.demand!Method
demand!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, scenario, subscenario, ::Type{SubproblemUpdate})

Updates the demand variables in the model.

IARA.demand!Method
demand!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the demand variables to the model.

IARA.demand_unit_bus_indexMethod
demand_unit_bus_index(demand_unit::AbstractCollection, i::Integer)

Get the bus_index field from the DemandUnit collection at index i.

IARA.demand_unit_bus_indexMethod
demand_unit_bus_index(collections::AbstractCollections, i::Integer)

Get the bus_index field from the DemandUnit collection at index i.

IARA.demand_unit_bus_indexMethod
demand_unit_bus_index(collections::AbstractCollections)

Get the bus_index field from the DemandUnit collection.

IARA.demand_unit_bus_indexMethod
demand_unit_bus_index(demand_unit::AbstractCollection)

Get the bus_index field from the DemandUnit collection.

IARA.demand_unit_bus_indexMethod
demand_unit_bus_index(inputs::AbstractInputs, i::Integer)

Get the bus_index field from the DemandUnit collection at index i.

IARA.demand_unit_bus_indexMethod
demand_unit_bus_index(inputs::AbstractInputs)

Get the bus_index field from the DemandUnit collection.

IARA.demand_unit_curtailment_costMethod
demand_unit_curtailment_cost(demand_unit::AbstractCollection, i::Integer)

Get the curtailment_cost field from the DemandUnit collection at index i.

IARA.demand_unit_curtailment_costMethod
demand_unit_curtailment_cost(collections::AbstractCollections, i::Integer)

Get the curtailment_cost field from the DemandUnit collection at index i.

IARA.demand_unit_curtailment_costMethod
demand_unit_curtailment_cost(collections::AbstractCollections)

Get the curtailment_cost field from the DemandUnit collection.

IARA.demand_unit_curtailment_costMethod
demand_unit_curtailment_cost(demand_unit::AbstractCollection)

Get the curtailment_cost field from the DemandUnit collection.

IARA.demand_unit_curtailment_costMethod
demand_unit_curtailment_cost(inputs::AbstractInputs, i::Integer)

Get the curtailment_cost field from the DemandUnit collection at index i.

IARA.demand_unit_demand_fileMethod
demand_unit_demand_file(demand_unit::AbstractCollection, i::Integer)

Get the demand_file field from the DemandUnit collection at index i.

IARA.demand_unit_demand_fileMethod
demand_unit_demand_file(collections::AbstractCollections, i::Integer)

Get the demand_file field from the DemandUnit collection at index i.

IARA.demand_unit_demand_fileMethod
demand_unit_demand_file(collections::AbstractCollections)

Get the demand_file field from the DemandUnit collection.

IARA.demand_unit_demand_fileMethod
demand_unit_demand_file(demand_unit::AbstractCollection)

Get the demand_file field from the DemandUnit collection.

IARA.demand_unit_demand_fileMethod
demand_unit_demand_file(inputs::AbstractInputs, i::Integer)

Get the demand_file field from the DemandUnit collection at index i.

IARA.demand_unit_demand_fileMethod
demand_unit_demand_file(inputs::AbstractInputs)

Get the demand_file field from the DemandUnit collection.

IARA.demand_unit_demand_unit_typeMethod
demand_unit_demand_unit_type(demand_unit::AbstractCollection, i::Integer)

Get the demandunittype field from the DemandUnit collection at index i.

IARA.demand_unit_demand_unit_typeMethod
demand_unit_demand_unit_type(collections::AbstractCollections, i::Integer)

Get the demandunittype field from the DemandUnit collection at index i.

IARA.demand_unit_demand_unit_typeMethod
demand_unit_demand_unit_type(collections::AbstractCollections)

Get the demand_unit_type field from the DemandUnit collection.

IARA.demand_unit_demand_unit_typeMethod
demand_unit_demand_unit_type(demand_unit::AbstractCollection)

Get the demand_unit_type field from the DemandUnit collection.

IARA.demand_unit_demand_unit_typeMethod
demand_unit_demand_unit_type(inputs::AbstractInputs, i::Integer)

Get the demandunittype field from the DemandUnit collection at index i.

IARA.demand_unit_elastic_demand_price_fileMethod
demand_unit_elastic_demand_price_file(demand_unit::AbstractCollection, i::Integer)

Get the elasticdemandprice_file field from the DemandUnit collection at index i.

IARA.demand_unit_elastic_demand_price_fileMethod
demand_unit_elastic_demand_price_file(collections::AbstractCollections, i::Integer)

Get the elasticdemandprice_file field from the DemandUnit collection at index i.

IARA.demand_unit_existingMethod
demand_unit_existing(demand_unit::AbstractCollection, i::Integer)

Get the existing field from the DemandUnit collection at index i.

IARA.demand_unit_existingMethod
demand_unit_existing(collections::AbstractCollections, i::Integer)

Get the existing field from the DemandUnit collection at index i.

IARA.demand_unit_existingMethod
demand_unit_existing(collections::AbstractCollections)

Get the existing field from the DemandUnit collection.

IARA.demand_unit_existingMethod
demand_unit_existing(demand_unit::AbstractCollection)

Get the existing field from the DemandUnit collection.

IARA.demand_unit_existingMethod
demand_unit_existing(inputs::AbstractInputs, i::Integer)

Get the existing field from the DemandUnit collection at index i.

IARA.demand_unit_existingMethod
demand_unit_existing(inputs::AbstractInputs)

Get the existing field from the DemandUnit collection.

IARA.demand_unit_labelMethod
demand_unit_label(demand_unit::AbstractCollection, i::Integer)

Get the label field from the DemandUnit collection at index i.

IARA.demand_unit_labelMethod
demand_unit_label(collections::AbstractCollections, i::Integer)

Get the label field from the DemandUnit collection at index i.

IARA.demand_unit_labelMethod
demand_unit_label(collections::AbstractCollections)

Get the label field from the DemandUnit collection.

IARA.demand_unit_labelMethod
demand_unit_label(demand_unit::AbstractCollection)

Get the label field from the DemandUnit collection.

IARA.demand_unit_labelMethod
demand_unit_label(inputs::AbstractInputs, i::Integer)

Get the label field from the DemandUnit collection at index i.

IARA.demand_unit_labelMethod
demand_unit_label(inputs::AbstractInputs)

Get the label field from the DemandUnit collection.

IARA.demand_unit_max_curtailmentMethod
demand_unit_max_curtailment(demand_unit::AbstractCollection, i::Integer)

Get the max_curtailment field from the DemandUnit collection at index i.

IARA.demand_unit_max_curtailmentMethod
demand_unit_max_curtailment(collections::AbstractCollections, i::Integer)

Get the max_curtailment field from the DemandUnit collection at index i.

IARA.demand_unit_max_curtailmentMethod
demand_unit_max_curtailment(collections::AbstractCollections)

Get the max_curtailment field from the DemandUnit collection.

IARA.demand_unit_max_curtailmentMethod
demand_unit_max_curtailment(demand_unit::AbstractCollection)

Get the max_curtailment field from the DemandUnit collection.

IARA.demand_unit_max_curtailmentMethod
demand_unit_max_curtailment(inputs::AbstractInputs, i::Integer)

Get the max_curtailment field from the DemandUnit collection at index i.

IARA.demand_unit_max_shift_downMethod
demand_unit_max_shift_down(demand_unit::AbstractCollection, i::Integer)

Get the maxshiftdown field from the DemandUnit collection at index i.

IARA.demand_unit_max_shift_downMethod
demand_unit_max_shift_down(collections::AbstractCollections, i::Integer)

Get the maxshiftdown field from the DemandUnit collection at index i.

IARA.demand_unit_max_shift_downMethod
demand_unit_max_shift_down(collections::AbstractCollections)

Get the max_shift_down field from the DemandUnit collection.

IARA.demand_unit_max_shift_downMethod
demand_unit_max_shift_down(demand_unit::AbstractCollection)

Get the max_shift_down field from the DemandUnit collection.

IARA.demand_unit_max_shift_downMethod
demand_unit_max_shift_down(inputs::AbstractInputs, i::Integer)

Get the maxshiftdown field from the DemandUnit collection at index i.

IARA.demand_unit_max_shift_upMethod
demand_unit_max_shift_up(demand_unit::AbstractCollection, i::Integer)

Get the maxshiftup field from the DemandUnit collection at index i.

IARA.demand_unit_max_shift_upMethod
demand_unit_max_shift_up(collections::AbstractCollections, i::Integer)

Get the maxshiftup field from the DemandUnit collection at index i.

IARA.demand_unit_max_shift_upMethod
demand_unit_max_shift_up(collections::AbstractCollections)

Get the max_shift_up field from the DemandUnit collection.

IARA.demand_unit_max_shift_upMethod
demand_unit_max_shift_up(demand_unit::AbstractCollection)

Get the max_shift_up field from the DemandUnit collection.

IARA.demand_unit_max_shift_upMethod
demand_unit_max_shift_up(inputs::AbstractInputs, i::Integer)

Get the maxshiftup field from the DemandUnit collection at index i.

IARA.demand_unit_max_shift_upMethod
demand_unit_max_shift_up(inputs::AbstractInputs)

Get the max_shift_up field from the DemandUnit collection.

IARA.demand_unit_window_fileMethod
demand_unit_window_file(demand_unit::AbstractCollection, i::Integer)

Get the window_file field from the DemandUnit collection at index i.

IARA.demand_unit_window_fileMethod
demand_unit_window_file(collections::AbstractCollections, i::Integer)

Get the window_file field from the DemandUnit collection at index i.

IARA.demand_unit_window_fileMethod
demand_unit_window_file(collections::AbstractCollections)

Get the window_file field from the DemandUnit collection.

IARA.demand_unit_window_fileMethod
demand_unit_window_file(demand_unit::AbstractCollection)

Get the window_file field from the DemandUnit collection.

IARA.demand_unit_window_fileMethod
demand_unit_window_file(inputs::AbstractInputs, i::Integer)

Get the window_file field from the DemandUnit collection at index i.

IARA.demand_unit_window_fileMethod
demand_unit_window_file(inputs::AbstractInputs)

Get the window_file field from the DemandUnit collection.

IARA.elastic_demand!Method
elastic_demand!(outputs, inputs::Inputs, run_time_options::RunTimeOptions, simulation_results::SimulationResultsFromPeriodScenario, period::Int, scenario::Int, subscenario::Int, ::Type{WriteOutput})

Write the attended elastic demand to the output file.

IARA.elastic_demand!Method
elastic_demand!(outputs::Outputs, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{InitializeOutput})

Initialize the output file to store the attended elastic demand.

IARA.elastic_demand!Method
elastic_demand!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, scenario, subscenario, ::Type{SubproblemUpdate})

Updates the elastic demand variables in the model.

IARA.elastic_demand!Method
elastic_demand!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the elastic demand variables to the model.

IARA.elastic_demand_bounds!Method
elastic_demand_bounds!(
    model,
    inputs,
    run_time_options,
    ::Type{SubproblemBuild},
)

Add the elastic demand bounds constraints to the model.

IARA.fcf_cuts_fileMethod
fcf_cuts_file(inputs::AbstractInputs)

Return the file with the FCF cuts.

IARA.finalize_clearing_outputs!Method
finalize_clearing_outputs!(heuristic_bids_outputs::Outputs, ex_ante_physical_outputs::Outputs, ex_ante_commercial_outputs::Outputs, ex_post_physical_outputs::Outputs, ex_post_commercial_outputs::Outputs)

Finalize the outputs for the clearing procedure.

IARA.flexible_demand!Method
flexible_demand!(outputs, inputs::Inputs, run_time_options::RunTimeOptions, simulation_results::SimulationResultsFromPeriodScenario, period::Int, scenario::Int, subscenario::Int, ::Type{WriteOutput})

Write the attended flexible demand and demand curtailment variables' values to the output file.

IARA.flexible_demand!Method
flexible_demand!(outputs::Outputs, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{InitializeOutput})

Initialize the output file to store the attended flexible demand and demand curtailment variables' values.

IARA.flexible_demand!Method
flexible_demand!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the flexible demand variables to the model.

IARA.flexible_demand_shift_bounds!Method
flexible_demand_shift_bounds!(
    model,
    inputs,
    run_time_options,
    ::Type{SubproblemBuild},
)

Add the flexible demand shift bounds constraints to the model.

IARA.flexible_demand_window_sum!Method
flexible_demand_window_sum!(
    model,
    inputs,
    run_time_options,
    ::Type{SubproblemBuild},
)

Add the flexible demand window sum constraints to the model.

IARA.gauging_station_downstream_indexMethod
gauging_station_downstream_index(gauging_station::AbstractCollection, i::Integer)

Get the downstream_index field from the GaugingStation collection at index i.

IARA.gauging_station_downstream_indexMethod
gauging_station_downstream_index(collections::AbstractCollections, i::Integer)

Get the downstream_index field from the GaugingStation collection at index i.

IARA.gauging_station_downstream_indexMethod
gauging_station_downstream_index(inputs::AbstractInputs, i::Integer)

Get the downstream_index field from the GaugingStation collection at index i.

IARA.gauging_station_historical_inflowMethod
gauging_station_historical_inflow(gauging_station::AbstractCollection, i::Integer)

Get the historical_inflow field from the GaugingStation collection at index i.

IARA.gauging_station_historical_inflowMethod
gauging_station_historical_inflow(collections::AbstractCollections, i::Integer)

Get the historical_inflow field from the GaugingStation collection at index i.

IARA.gauging_station_historical_inflowMethod
gauging_station_historical_inflow(inputs::AbstractInputs, i::Integer)

Get the historical_inflow field from the GaugingStation collection at index i.

IARA.gauging_station_inflow_initial_stateMethod
gauging_station_inflow_initial_state(gauging_station::AbstractCollection, i::Integer)

Get the inflowinitialstate field from the GaugingStation collection at index i.

IARA.gauging_station_inflow_initial_stateMethod
gauging_station_inflow_initial_state(collections::AbstractCollections, i::Integer)

Get the inflowinitialstate field from the GaugingStation collection at index i.

IARA.gauging_station_labelMethod
gauging_station_label(gauging_station::AbstractCollection, i::Integer)

Get the label field from the GaugingStation collection at index i.

IARA.gauging_station_labelMethod
gauging_station_label(collections::AbstractCollections, i::Integer)

Get the label field from the GaugingStation collection at index i.

IARA.gauging_station_labelMethod
gauging_station_label(collections::AbstractCollections)

Get the label field from the GaugingStation collection.

IARA.gauging_station_labelMethod
gauging_station_label(gauging_station::AbstractCollection)

Get the label field from the GaugingStation collection.

IARA.gauging_station_labelMethod
gauging_station_label(inputs::AbstractInputs, i::Integer)

Get the label field from the GaugingStation collection at index i.

IARA.gauging_station_labelMethod
gauging_station_label(inputs::AbstractInputs)

Get the label field from the GaugingStation collection.

IARA.get_collectionMethod
get_collection(inputs::Inputs, collection::Type{<:AbstractCollection})

Returns a IARA.Collection of the specified type from the inputs.

Example:

IARA.get_collection(inputs, IARA.BiddingGroup)
IARA.get_model_objectMethod
get_model_object(sp_model::SubproblemModel, object_name::Symbol)

Retrieve an object (variable, constraint or expression) from the sp_model's JuMP model using the provided object_name. This allows flexible access to model components by name.

IARA.has_commitmentMethod
has_commitment(hydro_unit::HydroUnit, idx::Int)

Check if the Hydro Unit at index 'idx' has commitment.

IARA.has_commitmentMethod
has_commitment(thermal_unit::ThermalUnit, idx::Int)

Check if the Thermal Unit at index 'idx' has commitment.

IARA.has_commitment_initial_conditionMethod
has_commitment_initial_condition(thermal_unit::ThermalUnit, idx::Int)

Check if the Thermal Unit at index 'idx' has commitment initial condition.

IARA.has_complementary_grouping_profileMethod
has_complementary_grouping_profile(complementary_grouping_profile_set::Array{Int, 1})

Returns true if the complementary grouping profile set has at least one element equal to 1.

IARA.has_hour_subperiod_mapMethod
has_hour_subperiod_map(inputs::AbstractInputs)

Return whether the hour to subperiod map file is defined.

IARA.has_independent_bidsMethod
has_independent_bids(bg::BiddingGroup, i::Int)

Check if the bidding group at index 'i' has independent bids.

IARA.has_min_outflowMethod
has_min_outflow(hydro_unit::HydroUnit, idx::Int)

Check if the Hydro Unit at index 'idx' has a minimum outflow.

IARA.has_profile_bidsMethod
has_profile_bids(bg::BiddingGroup, i::Int)

Check if the bidding group at index 'i' has profile bids.

IARA.has_ramp_constraintsMethod
has_ramp_constraints(thermal_unit::ThermalUnit, idx::Int)

Check if the Thermal Unit at index 'idx' has ramp constraints.

IARA.hour_subperiod_mapMethod
hour_subperiod_map(inputs)

Return a vector of integers mapping each hour to a single subperiod.

IARA.hydro_available_energyMethod
hydro_available_energy(
    inputs::Inputs, 
    period::Int, 
    scenario::Int
)

Calculate the available energy for each hydro unit in a given period and scenario.

IARA.hydro_balance!Method
hydro_balance!(
    outputs,
    inputs,
    run_time_options,
    simulation_results,
    period,
    scenario,
    subscenario,
    ::Type{WriteOutput},
)

Write the hydro opportunity cost to the output file.

IARA.hydro_balance!Method
hydro_balance!(
    outputs,
    inputs,
    run_time_options,
    ::Type{InitializeOutput},
)

Initialize the output file for:

  • hydro_opportunity_cost
IARA.hydro_balance!Method
hydro_balance!(
    model,
    inputs,
    run_time_options,
    ::Type{SubproblemBuild},
)

Add the hydro balance constraints to the model.

IARA.hydro_balance_aggregated_subperiodsMethod
hydro_balance_aggregated_subperiods(
    model,
    inputs,
    run_time_options,
)

Add the hydro balance constraints to the model for the aggregated subperiods resolution.

IARA.hydro_balance_chronological_subperiodsMethod
hydro_balance_chronological_subperiods(
    model,
    inputs,
    run_time_options,
)

Add the hydro balance constraints to the model for the chronological subperiods resolution.

IARA.hydro_commitment!Method
hydro_commitment!(outputs, inputs::Inputs, run_time_options::RunTimeOptions, simulation_results::SimulationResultsFromPeriodScenario, period::Int, scenario::Int, subscenario::Int, ::Type{WriteOutput})

Write the hydro unit commitment variables' values to the output file.

IARA.hydro_commitment!Method
hydro_commitment!(outputs::Outputs, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{InitializeOutput})

Initialize output file to store the hydro unit commitment variables' values.

IARA.hydro_commitment!Method
hydro_commitment!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the hydro unit commitment variables to the model.

IARA.hydro_generation!Method
hydro_generation!(outputs, inputs::Inputs, run_time_options::RunTimeOptions, simulation_results::SimulationResultsFromPeriodScenario, period::Int, scenario::Int, subscenario::Int, ::Type{WriteOutput})

Write the results for hydro

  • turbining
  • spillage
  • generation
  • spillage penalty
  • minimum outflow slack
  • minimum outflow violation cost expression
IARA.hydro_generation!Method
hydro_generation!(outputs::Outputs, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{InitializeOutput})

Initialize the output files to store results for hydro

  • turbining
  • spillage
  • generation
  • spillage penalty
  • minimum outflow slack
  • minimum outflow violation cost expression
IARA.hydro_generation!Method
hydro_generation!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the hydro generation variables to the model.

IARA.hydro_generation_bound_by_commitment!Method
hydro_generation_bound_by_commitment!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the hydro generation bound by commitment constraints to the model.

IARA.hydro_inflow!Method
hydro_inflow!(outputs, inputs::Inputs, run_time_options::RunTimeOptions, simulation_results::SimulationResultsFromPeriodScenario, period::Int, scenario::Int, subscenario::Int, ::Type{WriteOutput})

Write the inflow and inflow_slack values to the output file.

IARA.hydro_inflow!Method
hydro_inflow!(outputs::Outputs, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{InitializeOutput})

Initialize the output files for

  • inflow
  • inflow_slack
IARA.hydro_inflow!Method
hydro_inflow!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, scenario, subscenario, ::Type{SubproblemUpdate})

Updates the hydro inflow variables in the model.

IARA.hydro_inflow!Method
hydro_inflow!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the hydro inflow variables to the model.

IARA.hydro_minimum_outflow!Method
hydro_minimum_outflow!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the hydro minimum outflow constraints to the model.

IARA.hydro_spillage_costMethod
hydro_spillage_cost(inputs::AbstractInputs)

Return the cost of spilling water in hydro units.

IARA.hydro_unit_bidding_group_indexMethod
hydro_unit_bidding_group_index(hydro_unit::AbstractCollection, i::Integer)

Get the biddinggroupindex field from the HydroUnit collection at index i.

IARA.hydro_unit_bidding_group_indexMethod
hydro_unit_bidding_group_index(collections::AbstractCollections, i::Integer)

Get the biddinggroupindex field from the HydroUnit collection at index i.

IARA.hydro_unit_bidding_group_indexMethod
hydro_unit_bidding_group_index(inputs::AbstractInputs, i::Integer)

Get the biddinggroupindex field from the HydroUnit collection at index i.

IARA.hydro_unit_bus_indexMethod
hydro_unit_bus_index(hydro_unit::AbstractCollection, i::Integer)

Get the bus_index field from the HydroUnit collection at index i.

IARA.hydro_unit_bus_indexMethod
hydro_unit_bus_index(collections::AbstractCollections, i::Integer)

Get the bus_index field from the HydroUnit collection at index i.

IARA.hydro_unit_bus_indexMethod
hydro_unit_bus_index(collections::AbstractCollections)

Get the bus_index field from the HydroUnit collection.

IARA.hydro_unit_bus_indexMethod
hydro_unit_bus_index(hydro_unit::AbstractCollection)

Get the bus_index field from the HydroUnit collection.

IARA.hydro_unit_bus_indexMethod
hydro_unit_bus_index(inputs::AbstractInputs, i::Integer)

Get the bus_index field from the HydroUnit collection at index i.

IARA.hydro_unit_bus_indexMethod
hydro_unit_bus_index(inputs::AbstractInputs)

Get the bus_index field from the HydroUnit collection.

IARA.hydro_unit_existingMethod
hydro_unit_existing(hydro_unit::AbstractCollection, i::Integer)

Get the existing field from the HydroUnit collection at index i.

IARA.hydro_unit_existingMethod
hydro_unit_existing(collections::AbstractCollections, i::Integer)

Get the existing field from the HydroUnit collection at index i.

IARA.hydro_unit_existingMethod
hydro_unit_existing(collections::AbstractCollections)

Get the existing field from the HydroUnit collection.

IARA.hydro_unit_existingMethod
hydro_unit_existing(hydro_unit::AbstractCollection)

Get the existing field from the HydroUnit collection.

IARA.hydro_unit_existingMethod
hydro_unit_existing(inputs::AbstractInputs, i::Integer)

Get the existing field from the HydroUnit collection at index i.

IARA.hydro_unit_existingMethod
hydro_unit_existing(inputs::AbstractInputs)

Get the existing field from the HydroUnit collection.

IARA.hydro_unit_gauging_station_indexMethod
hydro_unit_gauging_station_index(hydro_unit::AbstractCollection, i::Integer)

Get the gaugingstationindex field from the HydroUnit collection at index i.

IARA.hydro_unit_gauging_station_indexMethod
hydro_unit_gauging_station_index(collections::AbstractCollections, i::Integer)

Get the gaugingstationindex field from the HydroUnit collection at index i.

IARA.hydro_unit_gauging_station_indexMethod
hydro_unit_gauging_station_index(inputs::AbstractInputs, i::Integer)

Get the gaugingstationindex field from the HydroUnit collection at index i.

IARA.hydro_unit_generation_fileMethod
hydro_unit_generation_file(inputs::AbstractInputs)

Return the hydro generation time series file for all hydro units.

IARA.hydro_unit_has_commitmentMethod
hydro_unit_has_commitment(hydro_unit::AbstractCollection, i::Integer)

Get the has_commitment field from the HydroUnit collection at index i.

IARA.hydro_unit_has_commitmentMethod
hydro_unit_has_commitment(collections::AbstractCollections, i::Integer)

Get the has_commitment field from the HydroUnit collection at index i.

IARA.hydro_unit_has_commitmentMethod
hydro_unit_has_commitment(collections::AbstractCollections)

Get the has_commitment field from the HydroUnit collection.

IARA.hydro_unit_has_commitmentMethod
hydro_unit_has_commitment(hydro_unit::AbstractCollection)

Get the has_commitment field from the HydroUnit collection.

IARA.hydro_unit_has_commitmentMethod
hydro_unit_has_commitment(inputs::AbstractInputs, i::Integer)

Get the has_commitment field from the HydroUnit collection at index i.

IARA.hydro_unit_inflow_fileMethod
hydro_unit_inflow_file(hydro_unit::AbstractCollection, i::Integer)

Get the inflow_file field from the HydroUnit collection at index i.

IARA.hydro_unit_inflow_fileMethod
hydro_unit_inflow_file(collections::AbstractCollections, i::Integer)

Get the inflow_file field from the HydroUnit collection at index i.

IARA.hydro_unit_inflow_fileMethod
hydro_unit_inflow_file(collections::AbstractCollections)

Get the inflow_file field from the HydroUnit collection.

IARA.hydro_unit_inflow_fileMethod
hydro_unit_inflow_file(hydro_unit::AbstractCollection)

Get the inflow_file field from the HydroUnit collection.

IARA.hydro_unit_inflow_fileMethod
hydro_unit_inflow_file(inputs::AbstractInputs, i::Integer)

Get the inflow_file field from the HydroUnit collection at index i.

IARA.hydro_unit_inflow_fileMethod
hydro_unit_inflow_file(inputs::AbstractInputs)

Get the inflow_file field from the HydroUnit collection.

IARA.hydro_unit_initial_volumeMethod
hydro_unit_initial_volume(hydro_unit::AbstractCollection, i::Integer)

Get the initial_volume field from the HydroUnit collection at index i.

IARA.hydro_unit_initial_volumeMethod
hydro_unit_initial_volume(collections::AbstractCollections, i::Integer)

Get the initial_volume field from the HydroUnit collection at index i.

IARA.hydro_unit_initial_volumeMethod
hydro_unit_initial_volume(collections::AbstractCollections)

Get the initial_volume field from the HydroUnit collection.

IARA.hydro_unit_initial_volumeMethod
hydro_unit_initial_volume(hydro_unit::AbstractCollection)

Get the initial_volume field from the HydroUnit collection.

IARA.hydro_unit_initial_volumeMethod
hydro_unit_initial_volume(inputs::AbstractInputs, idx::Int)

Get the initial volume for the Hydro Unit at index 'idx'.

IARA.hydro_unit_initial_volumeMethod
hydro_unit_initial_volume(inputs::AbstractInputs, i::Integer)

Get the initial_volume field from the HydroUnit collection at index i.

IARA.hydro_unit_initial_volume_typeMethod
hydro_unit_initial_volume_type(hydro_unit::AbstractCollection, i::Integer)

Get the initialvolumetype field from the HydroUnit collection at index i.

IARA.hydro_unit_initial_volume_typeMethod
hydro_unit_initial_volume_type(collections::AbstractCollections, i::Integer)

Get the initialvolumetype field from the HydroUnit collection at index i.

IARA.hydro_unit_initial_volume_typeMethod
hydro_unit_initial_volume_type(inputs::AbstractInputs, i::Integer)

Get the initialvolumetype field from the HydroUnit collection at index i.

IARA.hydro_unit_labelMethod
hydro_unit_label(hydro_unit::AbstractCollection, i::Integer)

Get the label field from the HydroUnit collection at index i.

IARA.hydro_unit_labelMethod
hydro_unit_label(collections::AbstractCollections, i::Integer)

Get the label field from the HydroUnit collection at index i.

IARA.hydro_unit_labelMethod
hydro_unit_label(collections::AbstractCollections)

Get the label field from the HydroUnit collection.

IARA.hydro_unit_labelMethod
hydro_unit_label(hydro_unit::AbstractCollection)

Get the label field from the HydroUnit collection.

IARA.hydro_unit_labelMethod
hydro_unit_label(inputs::AbstractInputs, i::Integer)

Get the label field from the HydroUnit collection at index i.

IARA.hydro_unit_labelMethod
hydro_unit_label(inputs::AbstractInputs)

Get the label field from the HydroUnit collection.

IARA.hydro_unit_max_generationMethod
hydro_unit_max_generation(hydro_unit::AbstractCollection, i::Integer)

Get the max_generation field from the HydroUnit collection at index i.

IARA.hydro_unit_max_generationMethod
hydro_unit_max_generation(collections::AbstractCollections, i::Integer)

Get the max_generation field from the HydroUnit collection at index i.

IARA.hydro_unit_max_generationMethod
hydro_unit_max_generation(collections::AbstractCollections)

Get the max_generation field from the HydroUnit collection.

IARA.hydro_unit_max_generationMethod
hydro_unit_max_generation(hydro_unit::AbstractCollection)

Get the max_generation field from the HydroUnit collection.

IARA.hydro_unit_max_generationMethod
hydro_unit_max_generation(inputs::AbstractInputs, idx::Int)

Get the maximum generation for the Hydro Unit at index 'idx'.

IARA.hydro_unit_max_generationMethod
hydro_unit_max_generation(inputs::AbstractInputs, i::Integer)

Get the max_generation field from the HydroUnit collection at index i.

IARA.hydro_unit_max_turbiningMethod
hydro_unit_max_turbining(hydro_unit::AbstractCollection, i::Integer)

Get the max_turbining field from the HydroUnit collection at index i.

IARA.hydro_unit_max_turbiningMethod
hydro_unit_max_turbining(collections::AbstractCollections, i::Integer)

Get the max_turbining field from the HydroUnit collection at index i.

IARA.hydro_unit_max_turbiningMethod
hydro_unit_max_turbining(collections::AbstractCollections)

Get the max_turbining field from the HydroUnit collection.

IARA.hydro_unit_max_turbiningMethod
hydro_unit_max_turbining(hydro_unit::AbstractCollection)

Get the max_turbining field from the HydroUnit collection.

IARA.hydro_unit_max_turbiningMethod
hydro_unit_max_turbining(inputs::AbstractInputs, i::Integer)

Get the max_turbining field from the HydroUnit collection at index i.

IARA.hydro_unit_max_turbiningMethod
hydro_unit_max_turbining(inputs::AbstractInputs)

Get the max_turbining field from the HydroUnit collection.

IARA.hydro_unit_max_volumeMethod
hydro_unit_max_volume(hydro_unit::AbstractCollection, i::Integer)

Get the max_volume field from the HydroUnit collection at index i.

IARA.hydro_unit_max_volumeMethod
hydro_unit_max_volume(collections::AbstractCollections, i::Integer)

Get the max_volume field from the HydroUnit collection at index i.

IARA.hydro_unit_max_volumeMethod
hydro_unit_max_volume(collections::AbstractCollections)

Get the max_volume field from the HydroUnit collection.

IARA.hydro_unit_max_volumeMethod
hydro_unit_max_volume(hydro_unit::AbstractCollection)

Get the max_volume field from the HydroUnit collection.

IARA.hydro_unit_max_volumeMethod
hydro_unit_max_volume(inputs::AbstractInputs, i::Integer)

Get the max_volume field from the HydroUnit collection at index i.

IARA.hydro_unit_max_volumeMethod
hydro_unit_max_volume(inputs::AbstractInputs)

Get the max_volume field from the HydroUnit collection.

IARA.hydro_unit_min_generationMethod
hydro_unit_min_generation(hydro_unit::AbstractCollection, i::Integer)

Get the min_generation field from the HydroUnit collection at index i.

IARA.hydro_unit_min_generationMethod
hydro_unit_min_generation(collections::AbstractCollections, i::Integer)

Get the min_generation field from the HydroUnit collection at index i.

IARA.hydro_unit_min_generationMethod
hydro_unit_min_generation(collections::AbstractCollections)

Get the min_generation field from the HydroUnit collection.

IARA.hydro_unit_min_generationMethod
hydro_unit_min_generation(hydro_unit::AbstractCollection)

Get the min_generation field from the HydroUnit collection.

IARA.hydro_unit_min_generationMethod
hydro_unit_min_generation(inputs::AbstractInputs, i::Integer)

Get the min_generation field from the HydroUnit collection at index i.

IARA.hydro_unit_min_outflowMethod
hydro_unit_min_outflow(hydro_unit::AbstractCollection, i::Integer)

Get the min_outflow field from the HydroUnit collection at index i.

IARA.hydro_unit_min_outflowMethod
hydro_unit_min_outflow(collections::AbstractCollections, i::Integer)

Get the min_outflow field from the HydroUnit collection at index i.

IARA.hydro_unit_min_outflowMethod
hydro_unit_min_outflow(collections::AbstractCollections)

Get the min_outflow field from the HydroUnit collection.

IARA.hydro_unit_min_outflowMethod
hydro_unit_min_outflow(hydro_unit::AbstractCollection)

Get the min_outflow field from the HydroUnit collection.

IARA.hydro_unit_min_outflowMethod
hydro_unit_min_outflow(inputs::AbstractInputs, i::Integer)

Get the min_outflow field from the HydroUnit collection at index i.

IARA.hydro_unit_min_outflowMethod
hydro_unit_min_outflow(inputs::AbstractInputs)

Get the min_outflow field from the HydroUnit collection.

IARA.hydro_unit_min_volumeMethod
hydro_unit_min_volume(hydro_unit::AbstractCollection, i::Integer)

Get the min_volume field from the HydroUnit collection at index i.

IARA.hydro_unit_min_volumeMethod
hydro_unit_min_volume(collections::AbstractCollections, i::Integer)

Get the min_volume field from the HydroUnit collection at index i.

IARA.hydro_unit_min_volumeMethod
hydro_unit_min_volume(collections::AbstractCollections)

Get the min_volume field from the HydroUnit collection.

IARA.hydro_unit_min_volumeMethod
hydro_unit_min_volume(hydro_unit::AbstractCollection)

Get the min_volume field from the HydroUnit collection.

IARA.hydro_unit_min_volumeMethod
hydro_unit_min_volume(inputs::AbstractInputs, i::Integer)

Get the min_volume field from the HydroUnit collection at index i.

IARA.hydro_unit_min_volumeMethod
hydro_unit_min_volume(inputs::AbstractInputs)

Get the min_volume field from the HydroUnit collection.

IARA.hydro_unit_om_costMethod
hydro_unit_om_cost(hydro_unit::AbstractCollection, i::Integer)

Get the om_cost field from the HydroUnit collection at index i.

IARA.hydro_unit_om_costMethod
hydro_unit_om_cost(collections::AbstractCollections, i::Integer)

Get the om_cost field from the HydroUnit collection at index i.

IARA.hydro_unit_om_costMethod
hydro_unit_om_cost(collections::AbstractCollections)

Get the om_cost field from the HydroUnit collection.

IARA.hydro_unit_om_costMethod
hydro_unit_om_cost(hydro_unit::AbstractCollection)

Get the om_cost field from the HydroUnit collection.

IARA.hydro_unit_om_costMethod
hydro_unit_om_cost(inputs::AbstractInputs, i::Integer)

Get the om_cost field from the HydroUnit collection at index i.

IARA.hydro_unit_om_costMethod
hydro_unit_om_cost(inputs::AbstractInputs)

Get the om_cost field from the HydroUnit collection.

IARA.hydro_unit_operation_typeMethod
hydro_unit_operation_type(hydro_unit::AbstractCollection, i::Integer)

Get the operation_type field from the HydroUnit collection at index i.

IARA.hydro_unit_operation_typeMethod
hydro_unit_operation_type(collections::AbstractCollections, i::Integer)

Get the operation_type field from the HydroUnit collection at index i.

IARA.hydro_unit_operation_typeMethod
hydro_unit_operation_type(collections::AbstractCollections)

Get the operation_type field from the HydroUnit collection.

IARA.hydro_unit_operation_typeMethod
hydro_unit_operation_type(hydro_unit::AbstractCollection)

Get the operation_type field from the HydroUnit collection.

IARA.hydro_unit_operation_typeMethod
hydro_unit_operation_type(inputs::AbstractInputs, i::Integer)

Get the operation_type field from the HydroUnit collection at index i.

IARA.hydro_unit_production_factorMethod
hydro_unit_production_factor(hydro_unit::AbstractCollection, i::Integer)

Get the production_factor field from the HydroUnit collection at index i.

IARA.hydro_unit_production_factorMethod
hydro_unit_production_factor(collections::AbstractCollections, i::Integer)

Get the production_factor field from the HydroUnit collection at index i.

IARA.hydro_unit_production_factorMethod
hydro_unit_production_factor(collections::AbstractCollections)

Get the production_factor field from the HydroUnit collection.

IARA.hydro_unit_production_factorMethod
hydro_unit_production_factor(hydro_unit::AbstractCollection)

Get the production_factor field from the HydroUnit collection.

IARA.hydro_unit_production_factorMethod
hydro_unit_production_factor(inputs::AbstractInputs, i::Integer)

Get the production_factor field from the HydroUnit collection at index i.

IARA.hydro_unit_spill_toMethod
hydro_unit_spill_to(hydro_unit::AbstractCollection, i::Integer)

Get the spill_to field from the HydroUnit collection at index i.

IARA.hydro_unit_spill_toMethod
hydro_unit_spill_to(collections::AbstractCollections, i::Integer)

Get the spill_to field from the HydroUnit collection at index i.

IARA.hydro_unit_spill_toMethod
hydro_unit_spill_to(collections::AbstractCollections)

Get the spill_to field from the HydroUnit collection.

IARA.hydro_unit_spill_toMethod
hydro_unit_spill_to(hydro_unit::AbstractCollection)

Get the spill_to field from the HydroUnit collection.

IARA.hydro_unit_spill_toMethod
hydro_unit_spill_to(inputs::AbstractInputs, i::Integer)

Get the spill_to field from the HydroUnit collection at index i.

IARA.hydro_unit_spill_toMethod
hydro_unit_spill_to(inputs::AbstractInputs)

Get the spill_to field from the HydroUnit collection.

IARA.hydro_unit_turbine_toMethod
hydro_unit_turbine_to(hydro_unit::AbstractCollection, i::Integer)

Get the turbine_to field from the HydroUnit collection at index i.

IARA.hydro_unit_turbine_toMethod
hydro_unit_turbine_to(collections::AbstractCollections, i::Integer)

Get the turbine_to field from the HydroUnit collection at index i.

IARA.hydro_unit_turbine_toMethod
hydro_unit_turbine_to(collections::AbstractCollections)

Get the turbine_to field from the HydroUnit collection.

IARA.hydro_unit_turbine_toMethod
hydro_unit_turbine_to(hydro_unit::AbstractCollection)

Get the turbine_to field from the HydroUnit collection.

IARA.hydro_unit_turbine_toMethod
hydro_unit_turbine_to(inputs::AbstractInputs, i::Integer)

Get the turbine_to field from the HydroUnit collection at index i.

IARA.hydro_unit_turbine_toMethod
hydro_unit_turbine_to(inputs::AbstractInputs)

Get the turbine_to field from the HydroUnit collection.

IARA.hydro_unit_waveguide_volumeMethod
hydro_unit_waveguide_volume(hydro_unit::AbstractCollection, i::Integer)

Get the waveguide_volume field from the HydroUnit collection at index i.

IARA.hydro_unit_waveguide_volumeMethod
hydro_unit_waveguide_volume(collections::AbstractCollections, i::Integer)

Get the waveguide_volume field from the HydroUnit collection at index i.

IARA.hydro_unit_waveguide_volumeMethod
hydro_unit_waveguide_volume(collections::AbstractCollections)

Get the waveguide_volume field from the HydroUnit collection.

IARA.hydro_unit_waveguide_volumeMethod
hydro_unit_waveguide_volume(hydro_unit::AbstractCollection)

Get the waveguide_volume field from the HydroUnit collection.

IARA.hydro_unit_waveguide_volumeMethod
hydro_unit_waveguide_volume(inputs::AbstractInputs, i::Integer)

Get the waveguide_volume field from the HydroUnit collection at index i.

IARA.hydro_volume!Method
hydro_volume!(outputs, inputs::Inputs, run_time_options::RunTimeOptions, simulation_results::SimulationResultsFromPeriodScenario, period::Int, scenario::Int, subscenario::Int, ::Type{WriteOutput})

Write the hydro final and initial volume values to the output file.

IARA.hydro_volume!Method
hydro_volume!(outputs::Outputs, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{InitializeOutput})

Initialize the output files for

  • hydroinitialvolume
  • hydrofinalvolume
IARA.hydro_volume!Method
hydro_volume!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, scenario, subscenario, ::Type{SubproblemUpdate})

Updates the hydro volume variables in the model.

IARA.hydro_volume!Method
hydro_volume!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the hydro volume variables to the model.

IARA.hydro_volume_from_previous_periodMethod
hydro_volume_from_previous_period(inputs::AbstractInputs, period::Int, scenario::Int)

Get the hydro volume from the previous period.

If the period is the first one, the initial volume is returned. Otherwise, it is read from the serialized results of the previous stage.

IARA.index_among_elastic_demandsMethod
index_among_elastic_demands(inputs::AbstractInputs, idx::Int)

Return the index of the Demand in position 'idx' among the elastic Demands.

IARA.index_among_profileMethod
index_among_profile(inputs::AbstractInputs, idx::Int)

Return the index of the bidding group among the profile bids.

IARA.initial_date_timeMethod
initial_date_time(inputs::AbstractInputs)

Return the initial date of the problem.

IARA.initialize!Method
initialize!(asset_owner::AssetOwner, inputs)

Initialize the AssetOwner collection from the database.

IARA.initialize!Method
initialize!(battery_unit::BatteryUnit, inputs::AbstractInputs)

Initialize the Battery Unit collection from the database.

IARA.initialize!Method
initialize!(bidding_group::BiddingGroup, inputs::AbstractInputs)

Initialize the BiddingGroup collection from the database.

IARA.initialize!Method
initialize!(branch::Branch, inputs::AbstractInputs)

Initialize the Branch collection from the database.

IARA.initialize!Method
initialize!(bus::Bus, inputs::AbstractInputs)

Initialize the Bus collection from the database.

IARA.initialize!Method
initialize!(configurations::Configurations, inputs::AbstractInputs)

Initialize the Configurations collection from the database.

IARA.initialize!Method
initialize!(dc_line::DCLine, inputs::AbstractInputs)

Initialize the DC Line collection from the database.

IARA.initialize!Method
initialize!(demand_unit::DemandUnit, inputs::AbstractInputs)

Initialize the Demand collection from the database.

IARA.initialize!Method
initialize!(gauging_station::GaugingStation, inputs::AbstractInputs)

Initialize the GaugingStation collection from the database.

IARA.initialize!Method
initialize!(hydro_unit::HydroUnit, inputs::AbstractInputs)

Initialize the Hydro Unit collection from the database.

IARA.initialize!Method
initialize!(renewable_unit::RenewableUnit, inputs)

Initialize the Renewable Unit collection from the database.

IARA.initialize!Method
initialize!(thermal_unit::ThermalUnit, inputs)

Initialize the Thermal Unit collection from the database.

IARA.initialize!Method
initialize!(virtual_reservoir::VirtualReservoir, inputs::AbstractInputs)

Initialize the VirtualReservoir collection from the database.

IARA.initialize!Method
initialize!(zone::Zone, inputs)

Initialize the Zone collection from the database.

IARA.initialize_heuristic_bids_outputsMethod
initialize_heuristic_bids_outputs(inputs::Inputs, outputs::Outputs, run_time_options::RunTimeOptions)

Initialize the output files for bidding group energy and price offers.

IARA.initialize_outputsMethod
initialize_outputs(inputs::Inputs, run_time_options::RunTimeOptions)

Initialize the outputs struct.

IARA.initialize_time_series_from_external_filesMethod
initialize_time_series_from_external_files(inputs)

Initialize the time series data from external files. This function reads the data from the files and stores it in the inputs struct.

IARA.initialize_virtual_reservoir_bids_outputsMethod
initialize_virtual_reservoir_bids_outputs(inputs::Inputs, outputs::Outputs, run_time_options::RunTimeOptions)

Initialize the output files for virtual reservoir energy and price offers.

IARA.is_acMethod
is_ac(b::Branch, i::Int)

Check if the Branch at index 'i' is modeled as an AC Line.

IARA.is_branch_modeled_as_dc_lineMethod
is_branch_modeled_as_dc_line(inputs::AbstractInputs, idx::Int)

Check if the Branch at index 'idx' is modeled as a DC Line.

IARA.is_dcMethod
is_dc(b::Branch, i::Int)

Check if the Branch at index 'i' is modeled as a DC Line.

IARA.is_elasticMethod
is_elastic(d::DemandUnit, i::Int)

Return true if the Demand in position 'i' is IARA.DemandUnit_DemandType.ELASTIC.

IARA.is_ex_ante_problemMethod
is_ex_ante_problem(run_time_options::RunTimeOptions)

Check if the problem is ex-ante.

IARA.is_ex_post_problemMethod
is_ex_post_problem(run_time_options::RunTimeOptions)

Check if the problem is ex-post.

IARA.is_flexibleMethod
is_flexible(d::DemandUnit, i::Int)

Return true if the Demand in position 'i' is IARA.DemandUnit_DemandType.FLEXIBLE.

IARA.is_inelasticMethod
is_inelastic(d::DemandUnit, i::Int)

Return true if the Demand in position 'i' is IARA.DemandUnit_DemandType.INELASTIC.

IARA.is_physical_problemMethod
is_physical_problem(run_time_options::RunTimeOptions)

Check if the problem is physical.

IARA.kirchhoffs_voltage_law!Method
kirchhoffs_voltage_law!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the Kirchhoff's Voltage Law constraints to the model.

IARA.linear_policy_graphMethod
linear_policy_graph(inputs::AbstractInputs)

Return whether the policy graph is linear.

IARA.link_offers_and_generation!Method
link_offers_and_generation!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the link between offers and generation constraints to the model.

IARA.link_time_series_to_fileMethod
link_time_series_to_file(db::DatabaseSQLite, table_name::String; kwargs...)

Links a time series to a file in the database.

IARA.load_balance!Method
load_balance!(outputs, inputs::Inputs, run_time_options::RunTimeOptions, simulation_results::SimulationResultsFromPeriodScenario, period::Int, scenario::Int, subscenario::Int, ::Type{WriteOutput})

Write the load marginal cost output.

IARA.load_balance!Method
load_balance!(outputs, inputs, run_time_options, ::Type{InitializeOutput})

Initialize the output files for:

  • load_marginal_cost
IARA.load_balance!Method
load_balance!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the load balance constraints to the model.

IARA.load_inputsMethod
load_inputs(args::Args)

Initialize the inputs from the database.

IARA.load_studyMethod
load_study(case_path::String; read_only::Bool = true)

Open the database file and return a database object.

Required arguments:

  • case_path::String: Path to the case folder.
  • read_only::Bool: Whether the database should be opened in read-only mode. Default is true.
IARA.lp_filenameMethod
lp_filename(inputs::Inputs, run_time_options::RunTimeOptions, t::Integer, scen::Integer, subscenario::Integer)

Return the filename to write the lp file.

IARA.mainMethod
main(args::Vector{String})

Main function to run the IARA application.

IARA.market_clearingMethod
market_clearing(path::String; kwargs...)

Run the model with the market clearing strategy.

keywords:

  • outputs_path::String. Path to the outputs. default = joinpath(path, "outputs")
  • plot_outputs::Bool. Plot all outputs after the run. default = true
  • write_lp::Bool. Write the LP files. default = false
IARA.markup_heuristic_bidsMethod
markup_heuristic_bids(bg::BiddingGroup, i::Int)

Check if the bidding group at index 'i' has IARA.BiddingGroup_BidType.MARKUP_HEURISTIC bids.

IARA.markup_offers_for_period_scenarioMethod
markup_offers_for_period_scenario(
    inputs::Inputs, outputs::Outputs, 
    run_time_options::RunTimeOptions, 
    period::Int, 
    scenario::Int
)

Generate heuristic bids for the bidding groups and write them to the output files.

IARA.maximum_bid_segmentsMethod
maximum_bid_segments(inputs::AbstractInputs, idx)

Return the maximum number of segments for the bidding group.

IARA.maximum_profilesMethod
maximum_profiles(inputs::AbstractInputs, idx)

Return the maximum number of profiles for the bidding group.

IARA.merge_period_subperiodFunction
merge_period_subperiod(data::Array{T, N}) where {T <: Real, N}

Reduce the dimension of the data array by merging the period and subperiod dimensions.

IARA.merge_scenario_agentFunction
merge_scenario_agent(::Type{<:PlotType}, data::Array{Float64, N}, agent_names::Vector{String}, scenario_names::Union{Vector{String}, Nothing}; kwargs...) where {N}

Reduce the dimension of the data array by merging the scenario and agent dimensions.

IARA.merge_scenario_subscenarioFunction
merge_scenario_subscenario(data::Array{Float32, N}, agent_names::Vector{String}; kwargs...) where {N}

Reduce the dimension of the data array by merging the scenario and subscenario dimensions.

IARA.merge_scenario_subscenario_agentFunction
merge_scenario_subscenario_agent(data::Array{Float32, N}, agent_names::Vector{String}; kwargs...) where {N}

Reduce the dimension of the data array by merging the scenario, subscenario, and agent dimensions.

IARA.merge_segment_agentFunction
merge_segment_agent(data::Array{Float32, N}, agent_names::Vector{String}; kwargs...) where {N}

Reduce the dimension of the data array by merging the segment and agent dimensions.

IARA.min_costMethod
min_cost(path::String; kwargs...)

Run the model with the minimum cost strategy.

keywords:

  • outputs_path::String. Path to the outputs. default = joinpath(path, "outputs")
  • plot_outputs::Bool. Plot all outputs after the run. default = true
  • write_lp::Bool. Write the LP files. default = false
IARA.model_actionMethod
model_action(args...)

Dispatch the model action based on the run mode and the action type.

IARA.must_read_hydro_unit_data_for_markup_wizardMethod
must_read_hydro_unit_data_for_markup_wizard(inputs::Inputs)

This function returns true when the following conditions are met:

  1. The run mode is not TRAINMINCOST
  2. There is at least one bidding group with markupheuristicbids = true
  3. There is at least one hydro unit that is associated with a bidding group with markupheuristicbids = true
IARA.node_repetition_probabilityMethod
node_repetition_probability(inputs::Inputs)

Returns the probability that the problem repeats a node after solving it's subproblem.

IARA.node_termination_probabilityMethod
node_termination_probability(inputs::Inputs)

Returns the probability that the problem finishes after solving a node's subproblem.

IARA.nodesMethod
nodes(inputs::AbstractInputs)

Return all nodes in the SDDP policy graph, except for the root node.

IARA.number_of_nodesMethod
number_of_nodes(inputs::AbstractInputs)

Return the number of nodes in the SDDP policy graph.

IARA.number_of_periodsMethod
number_of_periods(inputs::AbstractInputs)

Return the number of periods in the problem.

IARA.number_of_scenariosMethod
number_of_scenarios(inputs::AbstractInputs)

Return the number of scenarios in the problem.

IARA.number_of_subperiodsMethod
number_of_subperiods(inputs::AbstractInputs)

Return the number of subperiods in the problem.

IARA.number_of_subscenariosMethod
number_of_subscenarios(inputs::AbstractInputs, run_time_options)

Return the number of subscenarios to simulate.

IARA.number_of_waveguide_pointsMethod
number_of_waveguide_points(inputs::AbstractInputs, vr::Int)

Return the number of waveguide points for the VirtualReservoir vr.

IARA.operates_as_run_of_riverMethod
operates_as_run_of_river(hydro_unit::HydroUnit, idx::Int)

Check if the Hydro Unit at index 'idx' operates as run of river.

IARA.operates_with_reservoirMethod
operates_with_reservoir(hydro_unit::HydroUnit, idx::Int)

Check if the Hydro Unit at index 'idx' operates with reservoir.

IARA.optimize_bidsMethod
optimize_bids(bg::BiddingGroup, i::Int)

Check if the bidding group at index 'i' has IARA.BiddingGroup_BidType.OPTIMIZE bids.

IARA.output_pathMethod
output_path(inputs::Inputs)

Return the path to the outputs directory.

IARA.parp!Method
parp!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the PAR(p) constraints to the model.

IARA.parp_max_lagsMethod
parp_max_lags(inputs::AbstractInputs)

Return the maximum number of lags in the PAR(p) model.

IARA.path_caseMethod
path_case(inputs::AbstractInputs)

Return the path to the case.

IARA.path_caseMethod
path_case(db::DatabaseSQLite)

Return the path to the case.

IARA.path_parpMethod
path_parp(inputs::AbstractInputs)

Return the path to the PAR(p) model files.

IARA.period_typeMethod
period_type(inputs::AbstractInputs)

Return the period type.

IARA.periodsMethod
periods(inputs::AbstractInputs)

Return all problem periods.

IARA.periods_per_yearMethod
periods_per_year(inputs::AbstractInputs)

Return the number of periods per year.

IARA.plot_dataFunction
plot_data(::Type{<:PlotType}, data::Array{Float64, N}, agent_names::Vector{String}, dimensions::Vector{String}; kwargs...)

Plot the data for a specific plot type.

IARA.plot_dataMethod
plot_data(
    ::Type{PlotRelationAll}, 
    data_x::Array{Float32, N}, 
    data_y::Array{Float32, N}, 
    agent_x::String, 
    agent_y::String, 
    dimensions::Vector{String}; 
    title::String, 
    x_label::String, 
    y_label::String, 
    unit_x::String, 
    unit_y::String, 
    flip_x::Bool, 
    flip_y::Bool, 
    trace_mode::String, 
    file_path::String, 
    initial_date::DateTime, 
    period_type::Configurations_PeriodType.T, 
    kwargs...
) where {N}

Plot the relation between two data series for all scenarios.

IARA.plot_dataMethod
plot_data(
::Type{PlotRelationMean},
data_x::Array{Float32, N},
data_y::Array{Float32, N},
agent_x::String,
agent_y::String,
dimensions::Vector{String};
title::String,
x_label::String,
y_label::String,
unit_x::String,
unit_y::String,
flip_x::Bool,
flip_y::Bool,
trace_mode::String,
file_path::String,
initial_date::DateTime,
period_type::Configurations_PeriodType.T,
kwargs...,

) where {N}

Plot the relation between two data series in average across scenarios.

IARA.plot_dataMethod
plot_data(
    ::Type{PlotTechnologyHistogramPeriodSubperiod},
    data::Array{Float32, N},
    agent_names::Vector{String},
    dimensions::Vector{String};
    title::String,
    unit::String,
    file_path::String,
    kwargs...,
) where {N}

Plots a histogram where the observations are the total of generation for a technology at subperiod i, period j, considering all scenarios.

IARA.plot_dataMethod
plot_data(::Type{PlotTechnologyHistogramPeriod}, data::Array{Float32, N}, agent_names::Vector{String}, dimensions::Vector{String}; title::String = "", unit::String = "", file_path::String, kwargs...)

Create a histogram plot for the total of generation for a technology at period i, considering all scenarios and subperiods.

IARA.plot_dataMethod
plot_data(::Type{PlotTechnologyHistogramSubperiod}, data::Array{Float32, N}, agent_names::Vector{String}, dimensions::Vector{String}; title::String = "", unit::String = "", file_path::String, kwargs...)

Create a histogram plot for the total of generation for a technology at subperiod i, considering all scenarios and periods.

IARA.plot_dataMethod
plot_data(::Type{PlotTechnologyHistogram}, data::Array{Float32, N}, agent_names::Vector{String}, dimensions::Vector{String}; title::String = "", unit::String = "", file_path::String, kwargs...)

Create a histogram plot for the total of generation for a technology, considering all scenarios, periods and subperiods.

IARA.plot_dataMethod
plot_data(::Type{PlotTimeSeriesAll}, data::Array{Float32, N}, agent_names::Vector{String}, dimensions::Vector{String}; title::String = "", unit::String = "", file_path::String, initial_date::DateTime, period_type::Configurations_PeriodType.T, kwargs...)

Create a time series plot with all scenarios.

IARA.plot_dataMethod
plot_data(::Type{PlotTimeSeriesMean}, data::Array{Float32, N}, agent_names::Vector{String}, dimensions::Vector{String}; title::String = "", unit::String = "", file_path::String, initial_date::DateTime, period_type::Configurations_PeriodType.T, kwargs...)

Create a time series plot with the mean of scenarios, with a confidence interval of 95%.

IARA.plot_dataMethod
plot_data(::Type{PlotTimeSeriesQuantiles}, data::Array{Float32, N}, agent_names::Vector{String}, dimensions::Vector{String}; title::String = "", unit::String = "", file_path::String, initial_date::DateTime, period_type::Configurations_PeriodType.T, kwargs...)

Create a time series plot with P10, P50, and P90 quantiles of scenarios.

IARA.plot_dataMethod
plot_data(::Type{PlotTimeSeriesStackedMean}, data::Array{Float32, N}, agent_names::Vector{String}, dimensions::Vector{String}; title::String = "", unit::String = "", file_path::String, initial_date::DateTime, period_type::Configurations_PeriodType.T, kwargs...)

Create a time series plot with the mean of scenarios with all agents stacked.

IARA.price_capMethod
price_cap(inputs::AbstractInputs)

Return the price cap type.

IARA.price_taker_bidMethod
price_taker_bid(path::String; kwargs...)

Run the model with the price taker bid strategy.

keywords:

  • outputs_path::String. Path to the outputs. default = joinpath(path, "outputs")
  • plot_outputs::Bool. Plot all outputs after the run. default = true
  • write_lp::Bool. Write the LP files. default = false
IARA.profile_min_activation_level!Method
profile_min_activation_level!(outputs::Outputs, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{InitializeOutput})

Adds symbols to serialize and query the profile minimum activation level variables.

IARA.profile_min_activation_level!Method
profile_min_activation_level!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, scenario, subscenario, ::Type{SubproblemUpdate})

Updates the profile minimum activation level variables in the model.

IARA.profile_min_activation_level!Method
profile_min_activation_level!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the profile minimum activation level variables to the model.

IARA.read_bids_from_fileMethod
read_bids_from_file(inputs::AbstractInputs)

Return whether bids should be read from a file.

IARA.read_inflow_from_fileMethod
read_inflow_from_file(inputs::AbstractInputs)

Return whether inflow should be read from a file.

IARA.read_serialized_clearing_variableMethod
read_serialized_clearing_variable(inputs::Inputs, clearing_model_procedure::RunTime_ClearingProcedure.T, symbol_to_read::Symbol; period::Int, scenario::Int)

Read serialized clearing variable.

IARA.read_timeseries_fileMethod
read_time_series_file(file_path::String)

Read a time series file, in either .csv or .quiv format.

IARA.renewable_balance!Method
renewable_balance!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the renewable unit balance constraints to the model.

IARA.renewable_generation!Method
renewable_generation!(outputs, inputs::Inputs, run_time_options::RunTimeOptions, simulation_results::SimulationResultsFromPeriodScenario, period::Int, scenario::Int, subscenario::Int, ::Type{WriteOutput})

Write the renewable generation and curtailment variables' values to the output.

IARA.renewable_generation!Method
renewable_generation!(outputs::Outputs, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{InitializeOutput})

Initialize the output files for

  • renewable generation
  • renewable curtailment
IARA.renewable_generation!Method
renewable_generation!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemUpdate})

Updates the renewable generation variables in the model.

IARA.renewable_generation!Method
renewable_generation!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the renewable unit generation variables to the model.

IARA.renewable_unit_bidding_group_indexMethod
renewable_unit_bidding_group_index(renewable_unit::AbstractCollection, i::Integer)

Get the biddinggroupindex field from the RenewableUnit collection at index i.

IARA.renewable_unit_bidding_group_indexMethod
renewable_unit_bidding_group_index(collections::AbstractCollections, i::Integer)

Get the biddinggroupindex field from the RenewableUnit collection at index i.

IARA.renewable_unit_bidding_group_indexMethod
renewable_unit_bidding_group_index(inputs::AbstractInputs, i::Integer)

Get the biddinggroupindex field from the RenewableUnit collection at index i.

IARA.renewable_unit_bus_indexMethod
renewable_unit_bus_index(renewable_unit::AbstractCollection, i::Integer)

Get the bus_index field from the RenewableUnit collection at index i.

IARA.renewable_unit_bus_indexMethod
renewable_unit_bus_index(collections::AbstractCollections, i::Integer)

Get the bus_index field from the RenewableUnit collection at index i.

IARA.renewable_unit_bus_indexMethod
renewable_unit_bus_index(collections::AbstractCollections)

Get the bus_index field from the RenewableUnit collection.

IARA.renewable_unit_bus_indexMethod
renewable_unit_bus_index(renewable_unit::AbstractCollection)

Get the bus_index field from the RenewableUnit collection.

IARA.renewable_unit_bus_indexMethod
renewable_unit_bus_index(inputs::AbstractInputs, i::Integer)

Get the bus_index field from the RenewableUnit collection at index i.

IARA.renewable_unit_bus_indexMethod
renewable_unit_bus_index(inputs::AbstractInputs)

Get the bus_index field from the RenewableUnit collection.

IARA.renewable_unit_curtailment_costMethod
renewable_unit_curtailment_cost(renewable_unit::AbstractCollection, i::Integer)

Get the curtailment_cost field from the RenewableUnit collection at index i.

IARA.renewable_unit_curtailment_costMethod
renewable_unit_curtailment_cost(collections::AbstractCollections, i::Integer)

Get the curtailment_cost field from the RenewableUnit collection at index i.

IARA.renewable_unit_curtailment_costMethod
renewable_unit_curtailment_cost(inputs::AbstractInputs, i::Integer)

Get the curtailment_cost field from the RenewableUnit collection at index i.

IARA.renewable_unit_existingMethod
renewable_unit_existing(renewable_unit::AbstractCollection, i::Integer)

Get the existing field from the RenewableUnit collection at index i.

IARA.renewable_unit_existingMethod
renewable_unit_existing(collections::AbstractCollections, i::Integer)

Get the existing field from the RenewableUnit collection at index i.

IARA.renewable_unit_existingMethod
renewable_unit_existing(collections::AbstractCollections)

Get the existing field from the RenewableUnit collection.

IARA.renewable_unit_existingMethod
renewable_unit_existing(renewable_unit::AbstractCollection)

Get the existing field from the RenewableUnit collection.

IARA.renewable_unit_existingMethod
renewable_unit_existing(inputs::AbstractInputs, i::Integer)

Get the existing field from the RenewableUnit collection at index i.

IARA.renewable_unit_existingMethod
renewable_unit_existing(inputs::AbstractInputs)

Get the existing field from the RenewableUnit collection.

IARA.renewable_unit_generation_fileMethod
renewable_unit_generation_file(renewable_unit::AbstractCollection, i::Integer)

Get the generation_file field from the RenewableUnit collection at index i.

IARA.renewable_unit_generation_fileMethod
renewable_unit_generation_file(collections::AbstractCollections, i::Integer)

Get the generation_file field from the RenewableUnit collection at index i.

IARA.renewable_unit_generation_fileMethod
renewable_unit_generation_file(renewable_unit::AbstractCollection)

Get the generation_file field from the RenewableUnit collection.

IARA.renewable_unit_generation_fileMethod
renewable_unit_generation_file(inputs::AbstractInputs, i::Integer)

Get the generation_file field from the RenewableUnit collection at index i.

IARA.renewable_unit_labelMethod
renewable_unit_label(renewable_unit::AbstractCollection, i::Integer)

Get the label field from the RenewableUnit collection at index i.

IARA.renewable_unit_labelMethod
renewable_unit_label(collections::AbstractCollections, i::Integer)

Get the label field from the RenewableUnit collection at index i.

IARA.renewable_unit_labelMethod
renewable_unit_label(collections::AbstractCollections)

Get the label field from the RenewableUnit collection.

IARA.renewable_unit_labelMethod
renewable_unit_label(renewable_unit::AbstractCollection)

Get the label field from the RenewableUnit collection.

IARA.renewable_unit_labelMethod
renewable_unit_label(inputs::AbstractInputs, i::Integer)

Get the label field from the RenewableUnit collection at index i.

IARA.renewable_unit_labelMethod
renewable_unit_label(inputs::AbstractInputs)

Get the label field from the RenewableUnit collection.

IARA.renewable_unit_max_generationMethod
renewable_unit_max_generation(renewable_unit::AbstractCollection, i::Integer)

Get the max_generation field from the RenewableUnit collection at index i.

IARA.renewable_unit_max_generationMethod
renewable_unit_max_generation(collections::AbstractCollections, i::Integer)

Get the max_generation field from the RenewableUnit collection at index i.

IARA.renewable_unit_max_generationMethod
renewable_unit_max_generation(collections::AbstractCollections)

Get the max_generation field from the RenewableUnit collection.

IARA.renewable_unit_max_generationMethod
renewable_unit_max_generation(renewable_unit::AbstractCollection)

Get the max_generation field from the RenewableUnit collection.

IARA.renewable_unit_max_generationMethod
renewable_unit_max_generation(inputs::AbstractInputs, i::Integer)

Get the max_generation field from the RenewableUnit collection at index i.

IARA.renewable_unit_om_costMethod
renewable_unit_om_cost(renewable_unit::AbstractCollection, i::Integer)

Get the om_cost field from the RenewableUnit collection at index i.

IARA.renewable_unit_om_costMethod
renewable_unit_om_cost(collections::AbstractCollections, i::Integer)

Get the om_cost field from the RenewableUnit collection at index i.

IARA.renewable_unit_om_costMethod
renewable_unit_om_cost(collections::AbstractCollections)

Get the om_cost field from the RenewableUnit collection.

IARA.renewable_unit_om_costMethod
renewable_unit_om_cost(renewable_unit::AbstractCollection)

Get the om_cost field from the RenewableUnit collection.

IARA.renewable_unit_om_costMethod
renewable_unit_om_cost(inputs::AbstractInputs, i::Integer)

Get the om_cost field from the RenewableUnit collection at index i.

IARA.renewable_unit_om_costMethod
renewable_unit_om_cost(inputs::AbstractInputs)

Get the om_cost field from the RenewableUnit collection.

IARA.renewable_unit_technology_typeMethod
renewable_unit_technology_type(renewable_unit::AbstractCollection, i::Integer)

Get the technology_type field from the RenewableUnit collection at index i.

IARA.renewable_unit_technology_typeMethod
renewable_unit_technology_type(collections::AbstractCollections, i::Integer)

Get the technology_type field from the RenewableUnit collection at index i.

IARA.renewable_unit_technology_typeMethod
renewable_unit_technology_type(renewable_unit::AbstractCollection)

Get the technology_type field from the RenewableUnit collection.

IARA.renewable_unit_technology_typeMethod
renewable_unit_technology_type(inputs::AbstractInputs, i::Integer)

Get the technology_type field from the RenewableUnit collection at index i.

IARA.reshape_time_series!Function
reshape_time_series!(::Type{<:PlotType}, data::Array{Float32, N}, agent_names::Vector{String}, dimensions::Vector{String}; kwargs...)

Reduce the dimension of the data array by merging the dimensions, according to the plot type.

IARA.revenue_convex_combination!Method
revenue_convex_combination!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the revenue convex combination constraints to the model.

IARA.run_algorithmsMethod
run_algorithms(inputs)

Run the algorithms according to the run mode.

IARA.run_clearing_simulationMethod
run_clearing_simulation(
    inputs::Inputs,
    outputs::Outputs,
    run_time_options::RunTimeOptions,
    period::Int,
)

Run the clearing simulation.

IARA.run_modeMethod
run_mode(inputs::AbstractInputs)

Return the run mode.

IARA.scenariosMethod
scenarios(inputs::AbstractInputs)

Return all problem scenarios.

IARA.serialize_clearing_variablesMethod
serialize_clearing_variables(outputs::Outputs, inputs::Inputs, run_time_options::RunTimeOptions, simulation_results::SimulationResultsFromPeriodScenario; period::Int, scenario::Int)

Serialize clearing variables.

IARA.serialize_heuristic_bidsMethod
serialize_heuristic_bids(inputs::Inputs, quantity_offer::Array{Float64, 4}, price_offer::Array{Float64, 4}; period::Int, scenario::Int)

Serialize heuristic bids.

IARA.serialize_virtual_reservoir_heuristic_bidsMethod
serialize_virtual_reservoir_heuristic_bids(inputs::Inputs, quantity_offer::Array{Float64, 3}, price_offer::Array{Float64, 3}; period::Int, scenario::Int)

Serialize virtual reservoir heuristic bids.

IARA.set_custom_hookMethod
set_custom_hook(
    node::SDDP.Node,
    inputs::Inputs,
    t::Integer,
    scen::Integer,
    subscenario::Integer,
)

Set hooks to write lps to the file if user asks to write lps or if the model is infeasible. Also, set hooks to fix integer variables from previous problem, fix integer variables, and relax integrality.

IARA.set_hydro_spill_to!Method
set_hydro_spill_to!(db::DatabaseSQLite, hydro_unit_from::String, hydro_unit_to::String)

Link two Hydro Units by setting the downstream spillage Hydro Unit.

Example:

IARA.set_hydro_spill_to!(db, "hydro_1", "hydro_2")
IARA.set_hydro_turbine_to!Method
set_hydro_turbine_to!(db::DatabaseSQLite, hydro_unit_from::String, hydro_unit_to::String)

Link two Hydro Units by setting the downstream turbining Hydro Unit.

Example:

IARA.set_hydro_turbine_to!(db, "hydro_1", "hydro_2")
IARA.skip_clearing_procedureMethod
skip_clearing_procedure(inputs::Inputs, run_time_options::RunTimeOptions)

Check if the clearing procedure should be skipped.

IARA.strategic_bidMethod
strategic_bid(path::String; kwargs...)

Run the model with the strategic bid strategy.

keywords:

  • outputs_path::String. Path to the outputs. default = joinpath(path, "outputs")
  • plot_outputs::Bool. Plot all outputs after the run. default = true
  • write_lp::Bool. Write the LP files. default = false
IARA.subperiod_duration_in_hoursMethod
subperiod_duration_in_hours(inputs::AbstractInputs, subperiod::Int)

Return the subperiod duration in hours for a given subperiod.

IARA.subperiod_hour_mapMethod
subperiod_hour_map(inputs)

Return a vector of vectors, mapping each subperiod to multiple hours.

IARA.subperiodsMethod
subperiods(inputs::AbstractInputs)

Return all problem subperiods.

IARA.subperiods_in_flexible_demand_windowMethod
subperiods_in_flexible_demand_window(inputs::AbstractInputs, idx::Int, w::Int)

Return the set of subperiods in the window 'w' of the flexible Demand in position 'idx'.

IARA.subscenariosMethod
subscenarios(inputs::AbstractInputs, run_time_options)

Return all subscenarios to simulate.

IARA.summarizeMethod
summarize(path::String; run_mode::String = "market-clearing")

Summarize the case based on the run_mode passed.

The available run modes are:

  • train-min-cost
  • min-cost
  • price-taker-bid
  • strategic-bid
  • market-clearing
IARA.thermal_commitment!Method
thermal_commitment!(outputs, inputs::Inputs, run_time_options::RunTimeOptions, simulation_results::SimulationResultsFromPeriodScenario, period::Int, scenario::Int, subscenario::Int, ::Type{WriteOutput})

Write the thermal unit commitment variables' values to the output file.

IARA.thermal_commitment!Method
thermal_commitment!(outputs::Outputs, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{InitializeOutput})

Initialize the output file to store the thermal unit commitment variables' values.

IARA.thermal_commitment!Method
thermal_commitment!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the thermal unit commitment variables to the model.

IARA.thermal_generation!Method
thermal_generation!(outputs, inputs::Inputs, run_time_options::RunTimeOptions, simulation_results::SimulationResultsFromPeriodScenario, period::Int, scenario::Int, subscenario::Int, ::Type{WriteOutput})

Write the thermal unit generation variables' values to the output file.

IARA.thermal_generation!Method
thermal_generation!(outputs::Outputs, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{InitializeOutput})

Initialize the output file to store the thermal unit generation variables' values.

IARA.thermal_generation!Method
thermal_generation!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the thermal unit generation variables to the model.

IARA.thermal_generation_bound_by_commitment!Method
thermal_generation_bound_by_commitment!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the thermal unit generation bound by commitment constraints to the model.

IARA.thermal_min_max_up_down_time!Method
thermal_min_max_up_down_time!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the thermal unit minimum and maximum up and down time constraints to the model.

IARA.thermal_ramp!Method
thermal_ramp!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the thermal unit ramp constraints to the model.

IARA.thermal_startup_and_shutdown!Method
thermal_startup_and_shutdown!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the thermal unit startup and shutdown constraints to the model.

IARA.thermal_unit_bidding_group_indexMethod
thermal_unit_bidding_group_index(thermal_unit::AbstractCollection, i::Integer)

Get the biddinggroupindex field from the ThermalUnit collection at index i.

IARA.thermal_unit_bidding_group_indexMethod
thermal_unit_bidding_group_index(collections::AbstractCollections, i::Integer)

Get the biddinggroupindex field from the ThermalUnit collection at index i.

IARA.thermal_unit_bidding_group_indexMethod
thermal_unit_bidding_group_index(inputs::AbstractInputs, i::Integer)

Get the biddinggroupindex field from the ThermalUnit collection at index i.

IARA.thermal_unit_bus_indexMethod
thermal_unit_bus_index(thermal_unit::AbstractCollection, i::Integer)

Get the bus_index field from the ThermalUnit collection at index i.

IARA.thermal_unit_bus_indexMethod
thermal_unit_bus_index(collections::AbstractCollections, i::Integer)

Get the bus_index field from the ThermalUnit collection at index i.

IARA.thermal_unit_bus_indexMethod
thermal_unit_bus_index(collections::AbstractCollections)

Get the bus_index field from the ThermalUnit collection.

IARA.thermal_unit_bus_indexMethod
thermal_unit_bus_index(thermal_unit::AbstractCollection)

Get the bus_index field from the ThermalUnit collection.

IARA.thermal_unit_bus_indexMethod
thermal_unit_bus_index(inputs::AbstractInputs, i::Integer)

Get the bus_index field from the ThermalUnit collection at index i.

IARA.thermal_unit_bus_indexMethod
thermal_unit_bus_index(inputs::AbstractInputs)

Get the bus_index field from the ThermalUnit collection.

IARA.thermal_unit_downtime_initial_conditionMethod
thermal_unit_downtime_initial_condition(thermal_unit::AbstractCollection, i::Integer)

Get the downtimeinitialcondition field from the ThermalUnit collection at index i.

IARA.thermal_unit_downtime_initial_conditionMethod
thermal_unit_downtime_initial_condition(collections::AbstractCollections, i::Integer)

Get the downtimeinitialcondition field from the ThermalUnit collection at index i.

IARA.thermal_unit_existingMethod
thermal_unit_existing(thermal_unit::AbstractCollection, i::Integer)

Get the existing field from the ThermalUnit collection at index i.

IARA.thermal_unit_existingMethod
thermal_unit_existing(collections::AbstractCollections, i::Integer)

Get the existing field from the ThermalUnit collection at index i.

IARA.thermal_unit_existingMethod
thermal_unit_existing(collections::AbstractCollections)

Get the existing field from the ThermalUnit collection.

IARA.thermal_unit_existingMethod
thermal_unit_existing(thermal_unit::AbstractCollection)

Get the existing field from the ThermalUnit collection.

IARA.thermal_unit_existingMethod
thermal_unit_existing(inputs::AbstractInputs, i::Integer)

Get the existing field from the ThermalUnit collection at index i.

IARA.thermal_unit_existingMethod
thermal_unit_existing(inputs::AbstractInputs)

Get the existing field from the ThermalUnit collection.

IARA.thermal_unit_has_commitmentMethod
thermal_unit_has_commitment(thermal_unit::AbstractCollection, i::Integer)

Get the has_commitment field from the ThermalUnit collection at index i.

IARA.thermal_unit_has_commitmentMethod
thermal_unit_has_commitment(collections::AbstractCollections, i::Integer)

Get the has_commitment field from the ThermalUnit collection at index i.

IARA.thermal_unit_has_commitmentMethod
thermal_unit_has_commitment(collections::AbstractCollections)

Get the has_commitment field from the ThermalUnit collection.

IARA.thermal_unit_has_commitmentMethod
thermal_unit_has_commitment(thermal_unit::AbstractCollection)

Get the has_commitment field from the ThermalUnit collection.

IARA.thermal_unit_has_commitmentMethod
thermal_unit_has_commitment(inputs::AbstractInputs, i::Integer)

Get the has_commitment field from the ThermalUnit collection at index i.

IARA.thermal_unit_labelMethod
thermal_unit_label(thermal_unit::AbstractCollection, i::Integer)

Get the label field from the ThermalUnit collection at index i.

IARA.thermal_unit_labelMethod
thermal_unit_label(collections::AbstractCollections, i::Integer)

Get the label field from the ThermalUnit collection at index i.

IARA.thermal_unit_labelMethod
thermal_unit_label(collections::AbstractCollections)

Get the label field from the ThermalUnit collection.

IARA.thermal_unit_labelMethod
thermal_unit_label(thermal_unit::AbstractCollection)

Get the label field from the ThermalUnit collection.

IARA.thermal_unit_labelMethod
thermal_unit_label(inputs::AbstractInputs, i::Integer)

Get the label field from the ThermalUnit collection at index i.

IARA.thermal_unit_labelMethod
thermal_unit_label(inputs::AbstractInputs)

Get the label field from the ThermalUnit collection.

IARA.thermal_unit_max_generationMethod
thermal_unit_max_generation(thermal_unit::AbstractCollection, i::Integer)

Get the max_generation field from the ThermalUnit collection at index i.

IARA.thermal_unit_max_generationMethod
thermal_unit_max_generation(collections::AbstractCollections, i::Integer)

Get the max_generation field from the ThermalUnit collection at index i.

IARA.thermal_unit_max_generationMethod
thermal_unit_max_generation(collections::AbstractCollections)

Get the max_generation field from the ThermalUnit collection.

IARA.thermal_unit_max_generationMethod
thermal_unit_max_generation(thermal_unit::AbstractCollection)

Get the max_generation field from the ThermalUnit collection.

IARA.thermal_unit_max_generationMethod
thermal_unit_max_generation(inputs::AbstractInputs, i::Integer)

Get the max_generation field from the ThermalUnit collection at index i.

IARA.thermal_unit_max_ramp_downMethod
thermal_unit_max_ramp_down(thermal_unit::AbstractCollection, i::Integer)

Get the maxrampdown field from the ThermalUnit collection at index i.

IARA.thermal_unit_max_ramp_downMethod
thermal_unit_max_ramp_down(collections::AbstractCollections, i::Integer)

Get the maxrampdown field from the ThermalUnit collection at index i.

IARA.thermal_unit_max_ramp_downMethod
thermal_unit_max_ramp_down(collections::AbstractCollections)

Get the max_ramp_down field from the ThermalUnit collection.

IARA.thermal_unit_max_ramp_downMethod
thermal_unit_max_ramp_down(thermal_unit::AbstractCollection)

Get the max_ramp_down field from the ThermalUnit collection.

IARA.thermal_unit_max_ramp_downMethod
thermal_unit_max_ramp_down(inputs::AbstractInputs, i::Integer)

Get the maxrampdown field from the ThermalUnit collection at index i.

IARA.thermal_unit_max_ramp_upMethod
thermal_unit_max_ramp_up(thermal_unit::AbstractCollection, i::Integer)

Get the maxrampup field from the ThermalUnit collection at index i.

IARA.thermal_unit_max_ramp_upMethod
thermal_unit_max_ramp_up(collections::AbstractCollections, i::Integer)

Get the maxrampup field from the ThermalUnit collection at index i.

IARA.thermal_unit_max_ramp_upMethod
thermal_unit_max_ramp_up(collections::AbstractCollections)

Get the max_ramp_up field from the ThermalUnit collection.

IARA.thermal_unit_max_ramp_upMethod
thermal_unit_max_ramp_up(thermal_unit::AbstractCollection)

Get the max_ramp_up field from the ThermalUnit collection.

IARA.thermal_unit_max_ramp_upMethod
thermal_unit_max_ramp_up(inputs::AbstractInputs, i::Integer)

Get the maxrampup field from the ThermalUnit collection at index i.

IARA.thermal_unit_max_ramp_upMethod
thermal_unit_max_ramp_up(inputs::AbstractInputs)

Get the max_ramp_up field from the ThermalUnit collection.

IARA.thermal_unit_max_shutdownsMethod
thermal_unit_max_shutdowns(thermal_unit::AbstractCollection, i::Integer)

Get the max_shutdowns field from the ThermalUnit collection at index i.

IARA.thermal_unit_max_shutdownsMethod
thermal_unit_max_shutdowns(collections::AbstractCollections, i::Integer)

Get the max_shutdowns field from the ThermalUnit collection at index i.

IARA.thermal_unit_max_shutdownsMethod
thermal_unit_max_shutdowns(collections::AbstractCollections)

Get the max_shutdowns field from the ThermalUnit collection.

IARA.thermal_unit_max_shutdownsMethod
thermal_unit_max_shutdowns(thermal_unit::AbstractCollection)

Get the max_shutdowns field from the ThermalUnit collection.

IARA.thermal_unit_max_shutdownsMethod
thermal_unit_max_shutdowns(inputs::AbstractInputs, i::Integer)

Get the max_shutdowns field from the ThermalUnit collection at index i.

IARA.thermal_unit_max_startupsMethod
thermal_unit_max_startups(thermal_unit::AbstractCollection, i::Integer)

Get the max_startups field from the ThermalUnit collection at index i.

IARA.thermal_unit_max_startupsMethod
thermal_unit_max_startups(collections::AbstractCollections, i::Integer)

Get the max_startups field from the ThermalUnit collection at index i.

IARA.thermal_unit_max_startupsMethod
thermal_unit_max_startups(collections::AbstractCollections)

Get the max_startups field from the ThermalUnit collection.

IARA.thermal_unit_max_startupsMethod
thermal_unit_max_startups(thermal_unit::AbstractCollection)

Get the max_startups field from the ThermalUnit collection.

IARA.thermal_unit_max_startupsMethod
thermal_unit_max_startups(inputs::AbstractInputs, i::Integer)

Get the max_startups field from the ThermalUnit collection at index i.

IARA.thermal_unit_max_uptimeMethod
thermal_unit_max_uptime(thermal_unit::AbstractCollection, i::Integer)

Get the max_uptime field from the ThermalUnit collection at index i.

IARA.thermal_unit_max_uptimeMethod
thermal_unit_max_uptime(collections::AbstractCollections, i::Integer)

Get the max_uptime field from the ThermalUnit collection at index i.

IARA.thermal_unit_max_uptimeMethod
thermal_unit_max_uptime(collections::AbstractCollections)

Get the max_uptime field from the ThermalUnit collection.

IARA.thermal_unit_max_uptimeMethod
thermal_unit_max_uptime(thermal_unit::AbstractCollection)

Get the max_uptime field from the ThermalUnit collection.

IARA.thermal_unit_max_uptimeMethod
thermal_unit_max_uptime(inputs::AbstractInputs, i::Integer)

Get the max_uptime field from the ThermalUnit collection at index i.

IARA.thermal_unit_max_uptimeMethod
thermal_unit_max_uptime(inputs::AbstractInputs)

Get the max_uptime field from the ThermalUnit collection.

IARA.thermal_unit_min_downtimeMethod
thermal_unit_min_downtime(thermal_unit::AbstractCollection, i::Integer)

Get the min_downtime field from the ThermalUnit collection at index i.

IARA.thermal_unit_min_downtimeMethod
thermal_unit_min_downtime(collections::AbstractCollections, i::Integer)

Get the min_downtime field from the ThermalUnit collection at index i.

IARA.thermal_unit_min_downtimeMethod
thermal_unit_min_downtime(collections::AbstractCollections)

Get the min_downtime field from the ThermalUnit collection.

IARA.thermal_unit_min_downtimeMethod
thermal_unit_min_downtime(thermal_unit::AbstractCollection)

Get the min_downtime field from the ThermalUnit collection.

IARA.thermal_unit_min_downtimeMethod
thermal_unit_min_downtime(inputs::AbstractInputs, i::Integer)

Get the min_downtime field from the ThermalUnit collection at index i.

IARA.thermal_unit_min_generationMethod
thermal_unit_min_generation(thermal_unit::AbstractCollection, i::Integer)

Get the min_generation field from the ThermalUnit collection at index i.

IARA.thermal_unit_min_generationMethod
thermal_unit_min_generation(collections::AbstractCollections, i::Integer)

Get the min_generation field from the ThermalUnit collection at index i.

IARA.thermal_unit_min_generationMethod
thermal_unit_min_generation(collections::AbstractCollections)

Get the min_generation field from the ThermalUnit collection.

IARA.thermal_unit_min_generationMethod
thermal_unit_min_generation(thermal_unit::AbstractCollection)

Get the min_generation field from the ThermalUnit collection.

IARA.thermal_unit_min_generationMethod
thermal_unit_min_generation(inputs::AbstractInputs, i::Integer)

Get the min_generation field from the ThermalUnit collection at index i.

IARA.thermal_unit_min_uptimeMethod
thermal_unit_min_uptime(thermal_unit::AbstractCollection, i::Integer)

Get the min_uptime field from the ThermalUnit collection at index i.

IARA.thermal_unit_min_uptimeMethod
thermal_unit_min_uptime(collections::AbstractCollections, i::Integer)

Get the min_uptime field from the ThermalUnit collection at index i.

IARA.thermal_unit_min_uptimeMethod
thermal_unit_min_uptime(collections::AbstractCollections)

Get the min_uptime field from the ThermalUnit collection.

IARA.thermal_unit_min_uptimeMethod
thermal_unit_min_uptime(thermal_unit::AbstractCollection)

Get the min_uptime field from the ThermalUnit collection.

IARA.thermal_unit_min_uptimeMethod
thermal_unit_min_uptime(inputs::AbstractInputs, i::Integer)

Get the min_uptime field from the ThermalUnit collection at index i.

IARA.thermal_unit_min_uptimeMethod
thermal_unit_min_uptime(inputs::AbstractInputs)

Get the min_uptime field from the ThermalUnit collection.

IARA.thermal_unit_om_costMethod
thermal_unit_om_cost(thermal_unit::AbstractCollection, i::Integer)

Get the om_cost field from the ThermalUnit collection at index i.

IARA.thermal_unit_om_costMethod
thermal_unit_om_cost(collections::AbstractCollections, i::Integer)

Get the om_cost field from the ThermalUnit collection at index i.

IARA.thermal_unit_om_costMethod
thermal_unit_om_cost(collections::AbstractCollections)

Get the om_cost field from the ThermalUnit collection.

IARA.thermal_unit_om_costMethod
thermal_unit_om_cost(thermal_unit::AbstractCollection)

Get the om_cost field from the ThermalUnit collection.

IARA.thermal_unit_om_costMethod
thermal_unit_om_cost(inputs::AbstractInputs, i::Integer)

Get the om_cost field from the ThermalUnit collection at index i.

IARA.thermal_unit_om_costMethod
thermal_unit_om_cost(inputs::AbstractInputs)

Get the om_cost field from the ThermalUnit collection.

IARA.thermal_unit_shutdown_costMethod
thermal_unit_shutdown_cost(thermal_unit::AbstractCollection, i::Integer)

Get the shutdown_cost field from the ThermalUnit collection at index i.

IARA.thermal_unit_shutdown_costMethod
thermal_unit_shutdown_cost(collections::AbstractCollections, i::Integer)

Get the shutdown_cost field from the ThermalUnit collection at index i.

IARA.thermal_unit_shutdown_costMethod
thermal_unit_shutdown_cost(collections::AbstractCollections)

Get the shutdown_cost field from the ThermalUnit collection.

IARA.thermal_unit_shutdown_costMethod
thermal_unit_shutdown_cost(thermal_unit::AbstractCollection)

Get the shutdown_cost field from the ThermalUnit collection.

IARA.thermal_unit_shutdown_costMethod
thermal_unit_shutdown_cost(inputs::AbstractInputs, i::Integer)

Get the shutdown_cost field from the ThermalUnit collection at index i.

IARA.thermal_unit_startup_costMethod
thermal_unit_startup_cost(thermal_unit::AbstractCollection, i::Integer)

Get the startup_cost field from the ThermalUnit collection at index i.

IARA.thermal_unit_startup_costMethod
thermal_unit_startup_cost(collections::AbstractCollections, i::Integer)

Get the startup_cost field from the ThermalUnit collection at index i.

IARA.thermal_unit_startup_costMethod
thermal_unit_startup_cost(collections::AbstractCollections)

Get the startup_cost field from the ThermalUnit collection.

IARA.thermal_unit_startup_costMethod
thermal_unit_startup_cost(thermal_unit::AbstractCollection)

Get the startup_cost field from the ThermalUnit collection.

IARA.thermal_unit_startup_costMethod
thermal_unit_startup_cost(inputs::AbstractInputs, i::Integer)

Get the startup_cost field from the ThermalUnit collection at index i.

IARA.thermal_unit_uptime_initial_conditionMethod
thermal_unit_uptime_initial_condition(thermal_unit::AbstractCollection, i::Integer)

Get the uptimeinitialcondition field from the ThermalUnit collection at index i.

IARA.thermal_unit_uptime_initial_conditionMethod
thermal_unit_uptime_initial_condition(collections::AbstractCollections, i::Integer)

Get the uptimeinitialcondition field from the ThermalUnit collection at index i.

IARA.time_series_demandMethod
time_series_demand(inputs::Inputs, run_time_options::RunTimeOptions, subscenario::Int)

Return the demand time series for the given subscenario.

IARA.time_series_inflowMethod
time_series_inflow(inputs::Inputs, run_time_options::RunTimeOptions, subscenario::Int)

Return the inflow time series for the given subscenario.

IARA.time_series_price_offerMethod
time_series_price_offer(inputs, period::Int, scenario::Int)

Return the price offer time series for the given period and scenario.

IARA.time_series_quantity_offerMethod
time_series_quantity_offer(inputs::Inputs, period::Int, scenario::Int)

Return the quantity offer time series for the given period and scenario.

IARA.time_series_renewable_generationMethod
time_series_renewable_generation(inputs::Inputs, run_time_options::RunTimeOptions, subscenario::Int)

Return the renewable generation time series for the given subscenario.

IARA.train_min_costMethod
train_min_cost(path::String; kwargs...)

Train the model to minimize the total cost of the system.

keywords:

  • outputs_path::String. Path to the outputs. default = joinpath(path, "outputs")
  • plot_outputs::Bool. Plot all outputs after the run. default = true
  • write_lp::Bool. Write the LP files. default = false
IARA.update_asset_owner!Method
update_asset_owner!(db::DatabaseSQLite, label::String; kwargs...)

Update the AssetOwner named 'label' in the database.

Example:

IARA.update_asset_owner!(
    db,
    "AssetOwner1";
    price_type = IARA.AssetOwner_PriceType.PRICE_TAKER
)
IARA.update_battery_unit!Method
update_battery_unit!(db::DatabaseSQLite, label::String; kwargs...)

Update the Battery Unit named 'label' in the database.

Example:

IARA.update_battery_unit!(
    db,
    "BatteryUnit1";
    initial_storage = 0.0,
)
IARA.update_battery_unit_relation!Method
update_battery_unit_relation!(db::DatabaseSQLite, battery_unit_label::String; collection::String, relation_type::String, related_label::String)

Update the Battery Unit named 'label' in the database.

IARA.update_bidding_group!Method
update_bidding_group!(db::DatabaseSQLite, label::String; kwargs...)

Update the BiddingGroup named 'label' in the database.

IARA.update_bidding_group_relation!Method
update_bidding_group_relation!(db::DatabaseSQLite, bidding_group_label::String; collection::String, relation_type::String, related_label::String)

Update the BiddingGroup named 'label' in the database.

Example:

IARA.update_bidding_group_relation!(
    db,
    "bg_1";
    collection = "AssetOwner",
    relation_type = "id",
    related_label = "asset_owner_2",
)
IARA.update_branch!Method
update_branch!(db::DatabaseSQLite, label::String; kwargs...)

Update the Branch named 'label' in the database.

IARA.update_branch_relation!Method
update_branch_relation!(db::DatabaseSQLite, branch_label::String; collection::String, relation_type::String, related_label::String)

Update the Branch named 'label' in the database.

IARA.update_bus!Method
update_bus!(db::DatabaseSQLite, label::String; kwargs...)

Update the Bus named 'label' in the database.

IARA.update_bus_relation!Method
update_bus_relation!(
    db::DatabaseSQLite,
    bus_label::String;
    collection::String,
    relation_type::String,
    related_label::String,
)

Update the relation of the bus named bus_label with the collection collection.

IARA.update_configuration!Method
update_configuration!(db::DatabaseSQLite; kwargs...)

Update the Configuration table in the database.

Example:

IARA.update_configuration!(
    db;
    number_of_scenarios = 12,
)
IARA.update_dc_line!Method
update_dc_line!(db::DatabaseSQLite, label::String; kwargs...)

Update the DC Line named 'label' in the database.

IARA.update_dc_line_relation!Method
update_dc_line_relation!(db::DatabaseSQLite, dc_line_label::String; collection::String, relation_type::String, related_label::String)

Update the DC Line named 'label' in the database.

IARA.update_dc_line_time_series_parameter!Method
update_dc_line_time_series_parameter!(db::DatabaseSQLite, label::String, attribute::String, value; dimensions...)

Update a DC Line time series parameter in the database.

IARA.update_demand!Method
update_demand!(db::DatabaseSQLite, label::String; kwargs...)

Update the Demand named 'label' in the database.

IARA.update_demand_relation!Method
update_demand_relation!(db::DatabaseSQLite, demand_label::String; collection::String, relation_type::String, related_label::String)

Update the Demand named 'label' in the database.

Example:

IARA.update_demand_relation!(
    db, 
    "dem_1"; 
    collection = "Bus", 
    relation_type = "id", 
    related_label = "bus_3"
)
IARA.update_gauging_station!Method
update_gauging_station!(db::DatabaseSQLite, label::String; kwargs...)

Update the GaugingStation named 'label' in the database.

IARA.update_gauging_station_relation!Method
update_gauging_station_relation!(db::DatabaseSQLite, label::String; collection::String, relation_type::String, related_label::String)

Update the relation of the GaugingStation named 'label' in the database.

IARA.update_hydro_unit!Method
update_hydro_unit!(db::DatabaseSQLite, label::String; kwargs...)

Update the Hydro Unit named 'label' in the database.

Example:

IARA.update_hydro_unit!(
    db,
    "hyd_1";
    initial_volume = 1000.0
)
IARA.update_hydro_unit_relation!Method
update_hydro_unit_relation!(
    db::DatabaseSQLite, 
    hydro_unit_label::String; 
    collection::String, 
    relation_type::String, 
    related_label::String
)

Update the Hydro Unit named 'label' in the database.

Arguments:

  • db::PSRClassesInterface.DatabaseSQLite: Database
  • hydro_unit_label::String: Hydro Unit label
  • collection::String: Collection name that the Hydro Unit is related to
  • relation_type::String: Relation type
  • related_label::String: Label of the element that the Hydro Unit is related to

Example:

IARA.update_hydro_unit_relation!(db, "hyd_1";
    collection = "BiddingGroup",
    relation_type = "id",
    related_label = "bg_1",
)
IARA.update_hydro_unit_time_series_parameter!Method
update_hydro_unit_time_series_parameter!(
    db::DatabaseSQLite, 
    label::String, 
    attribute::String, 
    value; 
    dimensions...
)

Update a Hydro Unit time series parameter in the database for a given dimension value

Arguments:

  • db::PSRClassesInterface.DatabaseSQLite: Database
  • label::String: Hydro Unit label
  • attribute::String: Attribute name
  • value: Value to be updated
  • dimensions...: Dimension values

Example:

IARA.update_hydro_unit_time_series_parameter!(
    db,
    "hyd_1",
    "max_volume",
    30.0;
    date_time = DateTime(0), # dimension value
)
IARA.update_hydro_unit_vectors!Method
update_hydro_unit_vectors!(db::DatabaseSQLite, label::String; kwargs...)

Update the vectors of the Hydro Unit named 'label' in the database.

IARA.update_renewable_unit!Method
update_renewable_unit!(db::DatabaseSQLite, label::String; kwargs...)

Update the Renewable Unit named 'label' in the database.

IARA.update_renewable_unit_relation!Method
update_renewable_unit_relation!(db::DatabaseSQLite, renewable_unit_label::String; collection::String, relation_type::String, related_label::String)

Update the Renewable Unit named 'label' in the database.

IARA.update_renewable_unit_time_series!Method
update_renewable_unit_time_series!(db::DatabaseSQLite, label::String; date_time::DateTime = DateTime(0), kwargs...)

Update time series attributes for the Renewable Unit named 'label' in the database.

Example:

IARA.update_renewable_unit_time_series!(db, "gnd_1"; max_generation = 4.5)
IARA.update_thermal_unit!Method
update_thermal_unit!(db::DatabaseSQLite, label::String; kwargs...)

Update the Thermal Unit named 'label' in the database.

IARA.update_thermal_unit_relation!Method
update_thermal_unit_relation!(db::DatabaseSQLite, thermal_unit_label::String; collection::String, relation_type::String, related_label::String)

Update the Thermal Unit named 'label' in the database.

IARA.update_time_series_from_db!Method
update_time_series_from_db!(battery_unit::BatteryUnit, db::DatabaseSQLite, period_date_time::DateTime)

Update the Battery Unit time series from the database.

IARA.update_time_series_from_db!Method
update_time_series_from_db!(bidding_group::BiddingGroup, db::DatabaseSQLite, period_date_time::DateTime)

Update the BiddingGroup time series from the database.

IARA.update_time_series_from_db!Method
update_time_series_from_db!(branch::Branch, db::DatabaseSQLite, period_date_time::DateTime)

Update the Branch collection time series from the database.

IARA.update_time_series_from_db!Method
update_time_series_from_db!(dc_link::DCLine, db::DatabaseSQLite, period_date_time::DateTime)

Update the DC Line collection time series from the database.

IARA.update_time_series_from_db!Method
update_time_series_from_db!(demand_unit::DemandUnit, db::DatabaseSQLite, period_date_time::DateTime)

Update the Demand collection time series from the database.

IARA.update_time_series_from_db!Method
update_time_series_from_db!(hydro_unit::HydroUnit, db::DatabaseSQLite, period_date_time::DateTime)

Update the Hydro Unit time series from the database.

IARA.update_time_series_from_db!Method
update_time_series_from_db!(inputs::Inputs, period::Int)

Update the time series stored inside db file for the given period.

IARA.update_time_series_from_db!Method
update_time_series_from_db!(renewable_unit::RenewableUnit, db::DatabaseSQLite, period_date_time::DateTime)

Update the Renewable Unit collection time series from the database.

IARA.update_time_series_from_db!Method
update_time_series_from_db!(thermal_unit::ThermalUnit, db::DatabaseSQLite, period_date_time::DateTime)

Update the time series of the Thermal Unit collection from the database.

IARA.update_time_series_from_db!Method
update_time_series_from_db!(virtual_reservoir::VirtualReservoir, db::DatabaseSQLite, period_date_time::DateTime)

Update the VirtualReservoir time series from the database.

IARA.update_time_series_from_db!Method
update_time_series_from_db!(zone::Zone, db::DatabaseSQLite, period_date_time::DateTime)

Update the Zone collection time series from the database.

IARA.update_virtual_reservoir!Method
update_virtual_reservoir!(db::DatabaseSQLite, label::String; kwargs...)

Update the VirtualReservoir named 'label' in the database.

Example:

IARA.update_virtual_reservoir!(db, "virtual_reservoir_1"; number_of_waveguide_points_for_file_template = 3)
IARA.update_zone!Method
update_zone!(db::DatabaseSQLite, label::String; kwargs...)

Update the Zone named 'label' in the database.

IARA.use_binary_variablesMethod
use_binary_variables(inputs::AbstractInputs)

Return whether binary variables should be used.

IARA.use_fcf_in_clearingMethod
use_fcf_in_clearing(inputs::AbstractInputs)

Return whether the FCF should be used in clearing.

IARA.validateMethod
validate(inputs)

validate that the inputs are consistent through all periods.

IARA.validateMethod
validate(asset_owner::AssetOwner)

Validate the asset owner collection.

IARA.validateMethod
validate(battery_unit::BatteryUnit)

Validate the Battery's parameters. Returns the number of errors found.

IARA.validateMethod
validate(bidding_group::BiddingGroup)

Validate the BiddingGroup's parameters. Returns the number of errors found.

IARA.validateMethod
validate(branch::Branch)

Validate the Branch collection.

IARA.validateMethod
validate(bus::Bus)

Validate the bus collection.

IARA.validateMethod
validate(configurations::Configurations)

Validate the Configurations' parameters. Return the number of errors found.

IARA.validateMethod
validate(dc_line::DCLine)

Validate the DC Line collection.

IARA.validateMethod
validate(demand_unit::DemandUnit)

Validate the Demand's parameters. Return the number of errors found.

IARA.validateMethod
validate(gauging_station::GaugingStation)

Validate the gauging station collection.

IARA.validateMethod
validate(hydro_unit::HydroUnit)

Validate the Hydro Units' parameters. Return the number of errors found.

IARA.validateMethod
validate(renewable_unit::RenewableUnit)

Validate the Renewable Units' parameters. Return the number of errors found.

IARA.validateMethod
validate(thermal_unit::ThermalUnit)

Validate the Thermal Units' parameters. Return the number of errors found.

IARA.validateMethod
validate(virtual_reservoir::VirtualReservoir)

Validate the VirtualReservoir's parameters. Return the number of errors found.

IARA.validateMethod
validate(zone::Zone)

Validate the zone collection.

IARA.validateMethod
validate(path::String; run_mode::String = "market-clearing")

Validate the case based on the run_mode passed.

The available run modes are:

  • train-min-cost
  • min-cost
  • price-taker-bid
  • strategic-bid
  • market-clearing
IARA.virtual_reservoir_asset_owner_indicesMethod
virtual_reservoir_asset_owner_indices(virtual_reservoir::AbstractCollection, i::Integer)

Get the assetownerindices field from the VirtualReservoir collection at index i.

IARA.virtual_reservoir_asset_owner_indicesMethod
virtual_reservoir_asset_owner_indices(collections::AbstractCollections, i::Integer)

Get the assetownerindices field from the VirtualReservoir collection at index i.

IARA.virtual_reservoir_correspondence_by_generation!Method
virtual_reservoir_correspondence_by_generation!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the virtual reservoir correspondence by generation constraints to the model.

IARA.virtual_reservoir_correspondence_by_volume!Method
virtual_reservoir_correspondence_by_volume!(
    model::SubproblemModel,
    inputs::Inputs,
    run_time_options::RunTimeOptions,
    ::Type{SubproblemBuild},
)

Add the virtual reservoir correspondence by volume constraints to the model.

IARA.virtual_reservoir_energy_stock!Method
virtual_reservoir_energy_stock!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, scenario, subscenario, ::Type{SubproblemUpdate})

Update the virtual reservoir energy stock variables in the model.

IARA.virtual_reservoir_energy_stock!Method
virtual_reservoir_energy_stock!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the virtual reservoir energy stock variables to the model.

IARA.virtual_reservoir_generation!Method
virtual_reservoir_generation!(outputs, inputs::Inputs, run_time_options::RunTimeOptions, simulation_results::SimulationResultsFromPeriodScenario, period::Int, scenario::Int, subscenario::Int, ::Type{WriteOutput})

Write the virtual reservoir generation variables' values to the output file.

IARA.virtual_reservoir_generation!Method
virtual_reservoir_generation!(outputs::Outputs, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{InitializeOutput})

Add symbols to serialize and query the virtual reservoir generation variables and initialize the output file for virtual reservoir generation.

IARA.virtual_reservoir_generation!Method
virtual_reservoir_generation!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, scenario, subscenario, ::Type{SubproblemUpdate})

Update the virtual reservoir generation variables in the model.

IARA.virtual_reservoir_generation!Method
virtual_reservoir_generation!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the virtual reservoir generation variables to the model.

IARA.virtual_reservoir_generation_bounds!Method
virtual_reservoir_generation_bounds!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the virtual reservoir generation bounds constraints to the model.

IARA.virtual_reservoir_hydro_unit_indicesMethod
virtual_reservoir_hydro_unit_indices(virtual_reservoir::AbstractCollection, i::Integer)

Get the hydrounitindices field from the VirtualReservoir collection at index i.

IARA.virtual_reservoir_hydro_unit_indicesMethod
virtual_reservoir_hydro_unit_indices(collections::AbstractCollections, i::Integer)

Get the hydrounitindices field from the VirtualReservoir collection at index i.

IARA.virtual_reservoir_initial_energy_stockMethod
virtual_reservoir_initial_energy_stock(virtual_reservoir::AbstractCollection, i::Integer)

Get the initialenergystock field from the VirtualReservoir collection at index i.

IARA.virtual_reservoir_initial_energy_stockMethod
virtual_reservoir_initial_energy_stock(collections::AbstractCollections, i::Integer)

Get the initialenergystock field from the VirtualReservoir collection at index i.

IARA.virtual_reservoir_labelMethod
virtual_reservoir_label(virtual_reservoir::AbstractCollection, i::Integer)

Get the label field from the VirtualReservoir collection at index i.

IARA.virtual_reservoir_labelMethod
virtual_reservoir_label(collections::AbstractCollections, i::Integer)

Get the label field from the VirtualReservoir collection at index i.

IARA.virtual_reservoir_labelMethod
virtual_reservoir_label(collections::AbstractCollections)

Get the label field from the VirtualReservoir collection.

IARA.virtual_reservoir_labelMethod
virtual_reservoir_label(virtual_reservoir::AbstractCollection)

Get the label field from the VirtualReservoir collection.

IARA.virtual_reservoir_labelMethod
virtual_reservoir_label(inputs::AbstractInputs, i::Integer)

Get the label field from the VirtualReservoir collection at index i.

IARA.virtual_reservoir_labelMethod
virtual_reservoir_label(inputs::AbstractInputs)

Get the label field from the VirtualReservoir collection.

IARA.virtual_reservoir_markup_offers_for_period_scenarioMethod
virtual_reservoir_markup_offers_for_period_scenario(
    inputs::Inputs, 
    outputs::Outputs, 
    run_time_options::RunTimeOptions, 
    period::Int, 
    scenario::Int
)

Generate heuristic bids for the virtual reservoirs and write them to the output files.

IARA.virtual_reservoir_price_offer_fileMethod
virtual_reservoir_price_offer_file(virtual_reservoir::AbstractCollection, i::Integer)

Get the priceofferfile field from the VirtualReservoir collection at index i.

IARA.virtual_reservoir_price_offer_fileMethod
virtual_reservoir_price_offer_file(collections::AbstractCollections, i::Integer)

Get the priceofferfile field from the VirtualReservoir collection at index i.

IARA.virtual_reservoir_price_offer_fileMethod
virtual_reservoir_price_offer_file(inputs::AbstractInputs, i::Integer)

Get the priceofferfile field from the VirtualReservoir collection at index i.

IARA.virtual_reservoir_quantity_offer_fileMethod
virtual_reservoir_quantity_offer_file(virtual_reservoir::AbstractCollection, i::Integer)

Get the quantityofferfile field from the VirtualReservoir collection at index i.

IARA.virtual_reservoir_quantity_offer_fileMethod
virtual_reservoir_quantity_offer_file(collections::AbstractCollections, i::Integer)

Get the quantityofferfile field from the VirtualReservoir collection at index i.

IARA.virtual_reservoir_volume_distance_to_waveguide!Method
virtual_reservoir_volume_distance_to_waveguide!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the virtual reservoir volume distance to waveguide constraints to the model.

IARA.virtual_reservoir_water_to_energy_factorsMethod
virtual_reservoir_water_to_energy_factors(virtual_reservoir::AbstractCollection, i::Integer)

Get the watertoenergy_factors field from the VirtualReservoir collection at index i.

IARA.virtual_reservoir_waveguide_pointsMethod
virtual_reservoir_waveguide_points(virtual_reservoir::AbstractCollection, i::Integer)

Get the waveguide_points field from the VirtualReservoir collection at index i.

IARA.virtual_reservoir_waveguide_pointsMethod
virtual_reservoir_waveguide_points(collections::AbstractCollections, i::Integer)

Get the waveguide_points field from the VirtualReservoir collection at index i.

IARA.virtual_reservoir_waveguide_pointsMethod
virtual_reservoir_waveguide_points(inputs::AbstractInputs, i::Integer)

Get the waveguide_points field from the VirtualReservoir collection at index i.

IARA.waveguide_convex_combination_sum!Method
waveguide_convex_combination_sum!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the waveguide convex combination sum constraints to the model.

IARA.waveguide_distance_bounds!Method
waveguide_distance_bounds!(model::SubproblemModel, inputs::Inputs, run_time_options::RunTimeOptions, ::Type{SubproblemBuild})

Add the waveguide distance bounds constraints to the model.

IARA.write_parp_outputsMethod
write_parp_outputs(
    inputs::Inputs,
    inflow::Array{Float64, 3},
    noise::Array{Float64, 3},
    parp_coefficients::Array{Float64, 3},
    inflow_period_average::Array{Float64, 2},
    inflow_period_std_dev::Array{Float64, 2},
)

Write PAR(p) outputs to files.

IARA.write_timeseries_fileMethod
write_timeseries_file(
    file_path::String, 
    data::Array{T, N};
    dimensions::Vector{String},
    labels::Vector{String},
    time_dimension::String,
    dimension_size::Vector{Int},
    initial_date::Union{String, DateTime} = "",
    unit::String = "",
) where {T, N}

Write a time series file in Quiver format.

Required arguments:

  • file_path::String: Path to the CSV file.
  • data::Array{T, N}: Data to be written.
  • dimensions::Vector{String}: Dimensions of the data.
  • labels::Vector{String}: Labels of the data.
  • time_dimension::String: Name of the time dimension.
  • dimension_size::Vector{Int}: Size of each dimension.
  • initial_date::Union{String, DateTime}: Initial date of the time series. If a string is provided, it should be in the format "yyyy-mm-ddTHH:MM:SS".
  • unit::String: Unit of the time series data.
IARA.zone_labelMethod
zone_label(zone::AbstractCollection, i::Integer)

Get the label field from the Zone collection at index i.

IARA.zone_labelMethod
zone_label(collections::AbstractCollections, i::Integer)

Get the label field from the Zone collection at index i.

IARA.zone_labelMethod
zone_label(collections::AbstractCollections)

Get the label field from the Zone collection.

IARA.zone_labelMethod
zone_label(zone::AbstractCollection)

Get the label field from the Zone collection.

IARA.zone_labelMethod
zone_label(inputs::AbstractInputs, i::Integer)

Get the label field from the Zone collection at index i.

IARA.zone_labelMethod
zone_label(inputs::AbstractInputs)

Get the label field from the Zone collection.