Internal API
PowerSystems._pti_dtypes
— Constantlookup array of data types for PTI file sections given by field_name
, as enumerated by PSS/e Program Operation Manual.
PowerSystems._pti_sections
— ConstantA list of data file sections in the order that they appear in a PTI v33 file
PowerSystems.pm_component_status
— Constantmaps component types to status parameters
PowerSystems.pm_component_status_inactive
— Constantmaps component types to inactive status values
PowerSystems.OperationalCost
— TypeSuper type for operational cost representation in the model
PowerSystems._FieldInfo
— TypeStores user-customized information for required dataframe columns.
PowerSystems._HeatRateColumns
— TypeAdd generators to the System from the raw data.
Base.convert
— Methodconvert(_::Type{NamedTuple{(:min, :max), Tuple{Float64, Float64}}}, input::Tuple{Float64, Float64}) -> NamedTuple{(:min, :max), Tuple{Float64, Float64}}
Convert Tuple to Min Max Named Tuple
Base.convert
— Methodconvert(_::Type{NamedTuple{(:up, :down), Tuple{Float64, Float64}}}, input::Tuple{Float64, Float64}) -> NamedTuple{(:up, :down), Tuple{Float64, Float64}}
Convert Tuple to Up Down Named Tuple
InfrastructureSystems.get_internal
— Methodget_internal(value::AGC) -> InfrastructureSystems.InfrastructureSystemsInternal
Get AGC
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::AVRFixed) -> InfrastructureSystems.InfrastructureSystemsInternal
Get AVRFixed
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::AVRSimple) -> InfrastructureSystems.InfrastructureSystemsInternal
Get AVRSimple
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::AVRTypeII) -> InfrastructureSystems.InfrastructureSystemsInternal
Get AVRTypeII
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::AVRTypeI) -> InfrastructureSystems.InfrastructureSystemsInternal
Get AVRTypeI
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::AndersonFouadMachine) -> InfrastructureSystems.InfrastructureSystemsInternal
Get AndersonFouadMachine
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::Arc) -> InfrastructureSystems.InfrastructureSystemsInternal
Get Arc
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::Area) -> InfrastructureSystems.InfrastructureSystemsInternal
Get Area
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::BaseMachine) -> InfrastructureSystems.InfrastructureSystemsInternal
Get BaseMachine
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::BatteryEMS) -> InfrastructureSystems.InfrastructureSystemsInternal
Get BatteryEMS
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::Bus) -> InfrastructureSystems.InfrastructureSystemsInternal
Get Bus
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::DynamicBranch) -> InfrastructureSystems.InfrastructureSystemsInternal
Get DynamicBranch internal.
InfrastructureSystems.get_internal
— Methodget_internal(value::ESAC1A) -> InfrastructureSystems.InfrastructureSystemsInternal
Get ESAC1A
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::ESAC6A) -> InfrastructureSystems.InfrastructureSystemsInternal
Get ESAC6A
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::ESDC1A) -> InfrastructureSystems.InfrastructureSystemsInternal
Get ESDC1A
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::ESDC2A) -> InfrastructureSystems.InfrastructureSystemsInternal
Get ESDC2A
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::ESST1A) -> InfrastructureSystems.InfrastructureSystemsInternal
Get ESST1A
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::ESST4B) -> InfrastructureSystems.InfrastructureSystemsInternal
Get ESST4B
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::EXAC1A) -> InfrastructureSystems.InfrastructureSystemsInternal
Get EXAC1A
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::EXAC1) -> InfrastructureSystems.InfrastructureSystemsInternal
Get EXAC1
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::EXAC2) -> InfrastructureSystems.InfrastructureSystemsInternal
Get EXAC2
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::EXPIC1) -> InfrastructureSystems.InfrastructureSystemsInternal
Get EXPIC1
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::FiveMassShaft) -> InfrastructureSystems.InfrastructureSystemsInternal
Get FiveMassShaft
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::FixedAdmittance) -> InfrastructureSystems.InfrastructureSystemsInternal
Get FixedAdmittance
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::FixedDCSource) -> InfrastructureSystems.InfrastructureSystemsInternal
Get FixedDCSource
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::FullMachine) -> InfrastructureSystems.InfrastructureSystemsInternal
Get FullMachine
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::GasTG) -> InfrastructureSystems.InfrastructureSystemsInternal
Get GasTG
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::GeneralGovModel) -> InfrastructureSystems.InfrastructureSystemsInternal
Get GeneralGovModel
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::GenericBattery) -> InfrastructureSystems.InfrastructureSystemsInternal
Get GenericBattery
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::HVDCLine) -> InfrastructureSystems.InfrastructureSystemsInternal
Get HVDCLine
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::HybridSystem) -> InfrastructureSystems.InfrastructureSystemsInternal
Get HybridSystem
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::HydroDispatch) -> InfrastructureSystems.InfrastructureSystemsInternal
Get HydroDispatch
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::HydroEnergyReservoir) -> InfrastructureSystems.InfrastructureSystemsInternal
Get HydroEnergyReservoir
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::HydroPumpedStorage) -> InfrastructureSystems.InfrastructureSystemsInternal
Get HydroPumpedStorage
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::HydroTurbineGov) -> InfrastructureSystems.InfrastructureSystemsInternal
Get HydroTurbineGov
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::IEEEST) -> InfrastructureSystems.InfrastructureSystemsInternal
Get IEEEST
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::IEEET1) -> InfrastructureSystems.InfrastructureSystemsInternal
Get IEEET1
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::IEEETurbineGov1) -> InfrastructureSystems.InfrastructureSystemsInternal
Get IEEETurbineGov1
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::InterruptibleLoad) -> InfrastructureSystems.InfrastructureSystemsInternal
Get InterruptibleLoad
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::Line) -> InfrastructureSystems.InfrastructureSystemsInternal
Get Line
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::LoadZone) -> InfrastructureSystems.InfrastructureSystemsInternal
Get LoadZone
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::MarconatoMachine) -> InfrastructureSystems.InfrastructureSystemsInternal
Get MarconatoMachine
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::MonitoredLine) -> InfrastructureSystems.InfrastructureSystemsInternal
Get MonitoredLine
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::OneDOneQMachine) -> InfrastructureSystems.InfrastructureSystemsInternal
Get OneDOneQMachine
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::PSSFixed) -> InfrastructureSystems.InfrastructureSystemsInternal
Get PSSFixed
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::PSSSimple) -> InfrastructureSystems.InfrastructureSystemsInternal
Get PSSSimple
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::PeriodicVariableSource) -> InfrastructureSystems.InfrastructureSystemsInternal
Get PeriodicVariableSource
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::PhaseShiftingTransformer) -> InfrastructureSystems.InfrastructureSystemsInternal
Get PhaseShiftingTransformer
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::PowerLoad) -> InfrastructureSystems.InfrastructureSystemsInternal
Get PowerLoad
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::RenewableDispatch) -> InfrastructureSystems.InfrastructureSystemsInternal
Get RenewableDispatch
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::RenewableFix) -> InfrastructureSystems.InfrastructureSystemsInternal
Get RenewableFix
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::ReserveDemandCurve) -> InfrastructureSystems.InfrastructureSystemsInternal
Get ReserveDemandCurve
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::RoundRotorMachine) -> InfrastructureSystems.InfrastructureSystemsInternal
Get RoundRotorMachine
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::SCRX) -> InfrastructureSystems.InfrastructureSystemsInternal
Get SCRX
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::SEXS) -> InfrastructureSystems.InfrastructureSystemsInternal
Get SEXS
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::SalientPoleMachine) -> InfrastructureSystems.InfrastructureSystemsInternal
Get SalientPoleMachine
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::SimpleAFMachine) -> InfrastructureSystems.InfrastructureSystemsInternal
Get SimpleAFMachine
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::SimpleFullMachine) -> InfrastructureSystems.InfrastructureSystemsInternal
Get SimpleFullMachine
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::SimpleMarconatoMachine) -> InfrastructureSystems.InfrastructureSystemsInternal
Get SimpleMarconatoMachine
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::SingleMass) -> InfrastructureSystems.InfrastructureSystemsInternal
Get SingleMass
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::Source) -> InfrastructureSystems.InfrastructureSystemsInternal
Get Source
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::StaticReserveGroup) -> InfrastructureSystems.InfrastructureSystemsInternal
Get StaticReserveGroup
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::StaticReserveNonSpinning) -> InfrastructureSystems.InfrastructureSystemsInternal
Get StaticReserveNonSpinning
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::StaticReserve) -> InfrastructureSystems.InfrastructureSystemsInternal
Get StaticReserve
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::SteamTurbineGov1) -> InfrastructureSystems.InfrastructureSystemsInternal
Get SteamTurbineGov1
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(sys::System) -> InfrastructureSystems.InfrastructureSystemsInternal
Return the internal of the system
InfrastructureSystems.get_internal
— Methodget_internal(value::TGFixed) -> InfrastructureSystems.InfrastructureSystemsInternal
Get TGFixed
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::TGTypeII) -> InfrastructureSystems.InfrastructureSystemsInternal
Get TGTypeII
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::TGTypeI) -> InfrastructureSystems.InfrastructureSystemsInternal
Get TGTypeI
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::TapTransformer) -> InfrastructureSystems.InfrastructureSystemsInternal
Get TapTransformer
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::ThermalMultiStart) -> InfrastructureSystems.InfrastructureSystemsInternal
Get ThermalMultiStart
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::ThermalStandard) -> InfrastructureSystems.InfrastructureSystemsInternal
Get ThermalStandard
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::Transfer) -> InfrastructureSystems.InfrastructureSystemsInternal
Get Transfer
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::Transformer2W) -> InfrastructureSystems.InfrastructureSystemsInternal
Get Transformer2W
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::VSCDCLine) -> InfrastructureSystems.InfrastructureSystemsInternal
Get VSCDCLine
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::VariableReserveNonSpinning) -> InfrastructureSystems.InfrastructureSystemsInternal
Get VariableReserveNonSpinning
internal
.
InfrastructureSystems.get_internal
— Methodget_internal(value::VariableReserve) -> InfrastructureSystems.InfrastructureSystemsInternal
Get VariableReserve
internal
.
PowerSystems._add_dcline_costs!
— Method_add_dcline_costs!(data::Dict{String, Any})
adds dcline costs, if gen costs exist
PowerSystems._add_line_delimiter
— Method_add_line_delimiter(mp_line::AbstractString, start_char, end_char) -> Any
PowerSystems._apply_func!
— Method_apply_func!(data::Dict{String, var"#s1780"} where var"#s1780", key::String, func) -> Any
PowerSystems._biggest_generator
— Method_biggest_generator(gens) -> Any
find the largest active generator in the network
PowerSystems._bold
— Method_bold(s::String) -> String
Makes a string bold in the terminal
PowerSystems._calc_branch_flow_ac
— Method_calc_branch_flow_ac(data::Dict{String, var"#s1772"} where var"#s1772") -> Dict{String, Any}
helper function for calcbranchflow_ac
PowerSystems._calc_branch_flow_dc
— Method_calc_branch_flow_dc(data::Dict{String, var"#s1773"} where var"#s1773") -> Dict{String, Any}
helper function for calcbranchflow_dc
PowerSystems._calc_comp_lines
— Method_calc_comp_lines(component::Dict{String, var"#s1778"} where var"#s1778") -> Vector{Any}
compute lines in m and b from from pwl cost models
PowerSystems._calc_max_cost_index
— Method_calc_max_cost_index(data::Dict{String, var"#s1776"} where var"#s1776") -> Any
PowerSystems._calc_power_balance
— Method_calc_power_balance(data::Dict{String, var"#s165"} where var"#s165") -> Dict{String, Any}
helper function for calcpowerbalance
PowerSystems._check_conductors
— Method_check_conductors(data::Dict{String, var"#s1780"} where var"#s1780")
PowerSystems._check_keys
— Method_check_keys(data, keys)
PowerSystems._compare_numbers
— Method_compare_numbers(v1, v2) -> Bool
tests if two numbers are equal, up to floating point precision
PowerSystems._correct_cost_function!
— Method_correct_cost_function!(id, comp, type_name) -> Bool
PowerSystems._correct_reference_buses!
— Method_correct_reference_buses!(data::Dict{String, var"#s223"} where var"#s223")
PowerSystems._create_starbus_from_transformer
— Method_create_starbus_from_transformer(pm_data::Dict, transformer::Dict) -> Dict{String, Any}
create_starbus(pm_data, transformer)
Creates a starbus from a given three-winding transformer
. "sourceid" is given by `["busi", "name", "I", "J", "K", "CKT"]` where "bus_i" and "name" are the modified names for the starbus, and "I", "J", "K" and "CKT" come from the originating transformer, in the PSS(R)E transformer specification.
PowerSystems._dfs
— Method_dfs(i, neighbors, component_lookup, touched)
performs DFS on a graph
PowerSystems._export_cost_data
— Method_export_cost_data(io::IO, components::Dict{Int64, Dict}, prefix::String)
Export cost data
PowerSystems._export_extra_data
— Function_export_extra_data(io::IO, data::Dict{String, var"#s220"} where var"#s220", component)
_export_extra_data(io::IO, data::Dict{String, var"#s219"} where var"#s219", component, excluded_fields; postfix)
Export fields of a component type
PowerSystems._extract_matlab_assignment
— Method_extract_matlab_assignment(string::AbstractString) -> Tuple{SubString, SubString}
breaks up matlab strings of the form 'name = value;'
PowerSystems._find_max_bus_id
— Method_find_max_bus_id(pm_data::Dict) -> Int64
_find_max_bus_id(pm_data)
Returns the maximum bus id in pm_data
PowerSystems._float2string
— Method_float2string(v::AbstractFloat, float_precision::Int64) -> String
converts a float value into a string of fixed precision
sprintf would do the job but this work around is needed because sprintf cannot take format strings during runtime
PowerSystems._get_bus_value
— Method_get_bus_value(bus_i, field, pm_data) -> Any
_get_bus_value(bus_i, field, pm_data)
Returns the value of field
of bus_i
from the PowerModels data. Requires "bus" Dict to already be populated.
PowerSystems._get_contributing_devices
— MethodReturns a ServiceContributingDevices object.
PowerSystems._get_default
— Function_get_default(dict, key) -> Any
_get_default(dict, key, default) -> Any
Get a default value for dict entry
PowerSystems._get_line_elements
— Method_get_line_elements(line::AbstractString) -> Tuple{Vector{_A} where _A, Union{String, SubString}}
_get_line_elements(line)
Internal function. Uses regular expressions to extract all separate data elements from a line of a PTI file and populate them into an Array{String}
. Comments, typically indicated at the end of a line with a '/'
character, are also extracted separately, and Array{Array{String}, String}
is returned.
PowerSystems._get_load_data
— Method_get_load_data(sys::System, b::Bus) -> Tuple{Any, Any}
Obtain total load on bus b
PowerSystems._get_pm_branch_name
— Method_get_pm_branch_name(device_dict, bus_f, bus_t) -> String
Internal branch name retreval from pm2ps_dict
PowerSystems._get_pm_dict_name
— Method_get_pm_dict_name(device_dict) -> Any
Internal component name retreval from pm2ps_dict
PowerSystems._grey
— Method_grey(s::String) -> String
Makes a string grey in the terminal, does not seem to work well on Windows terminals more info can be found at https://en.wikipedia.org/wiki/ANSIescapecode
PowerSystems._import_remaining!
— Method_import_remaining!(data_out::Dict, data_in::Dict, import_all::Bool; exclude)
Imports remaining keys from data_in
into data_out
, excluding keys in exclude
PowerSystems._init_bus!
— Method_init_bus!(bus::Dict{String, Any}, id::Int64) -> Int64
_init_bus!(bus, id)
Initializes a bus
of id id
with default values given in the PSS(R)E specification.
PowerSystems._make_mixed_units!
— Method_make_mixed_units!(data::Dict{String, var"#s219"} where var"#s219", mva_base::Real)
PowerSystems._make_per_unit!
— Method_make_per_unit!(data::Dict{String, var"#s219"} where var"#s219", mva_base::Real)
PowerSystems._make_shaft
— Method_make_shaft(param_map, val) -> Any
Create a SingleMass shaft struct directly using the parameter mapping.
PowerSystems._matpower_to_powermodels!
— Method_matpower_to_powermodels!(mp_data::Dict{String, var"#s222"} where var"#s222") -> Dict{String, var"#s222"} where var"#s222"
Converts a Matpower dict into a PowerModels dict
PowerSystems._merge_bus_name_data!
— Method_merge_bus_name_data!(data::Dict{String, Any}) -> Union{Nothing, Dict{String, Any}}
merges bus name data into buses, if names exist
PowerSystems._merge_generator_cost_data!
— Method_merge_generator_cost_data!(data::Dict{String, Any}) -> Union{Nothing, Dict{String, Any}}
merges generator cost functions into generator data, if costs exist
PowerSystems._merge_generic_data!
— Method_merge_generic_data!(data::Dict{String, Any})
merges Matpower tables based on the table extension syntax
PowerSystems._mp2pm_branch!
— Method_mp2pm_branch!(data::Dict{String, Any})
sets all branch transformer taps to 1.0, to simplify branch models
PowerSystems._mp2pm_dcline!
— Method_mp2pm_dcline!(data::Dict{String, Any})
adds pmin and pmax values at to and from buses
PowerSystems._mp_cost_data
— Method_mp_cost_data(cost_row) -> Dict{String, Any}
PowerSystems._parse_dyr_components
— Method_parse_dyr_components(dyr_file::AbstractString) -> Dict{Int64, Any}
Parse a .dyr file directly from its name by constructing its dictionary of dictionaries.
PowerSystems._parse_dyr_components
— Method_parse_dyr_components(data::Dict) -> Dict{Int64, Any}
Parse dictionary of dictionaries of data (from _parse_dyr_file
) into a dictionary of struct components. The function receives the parsed dictionary and constructs a dictionary indexed by bus, that contains a dictionary with each dynamic generator components (indexed via its id).
Each dictionary indexed by id contains a vector with 5 of its components:
- Machine
- Shaft
- AVR
- TurbineGov
- PSS
PowerSystems._parse_dyr_file
— Method_parse_dyr_file(file::AbstractString) -> Dict{Int64, Dict}
Parse .dyr file into a dictionary indexed by bus number. Each bus number key has a dictionary indexed by component type and id.
PowerSystems._parse_elements
— Method_parse_elements(elements::Array, dtypes::Array, defaults::Dict, section::AbstractString) -> Dict{String, Any}
This is an experimental method for parsing elements and setting defaults at the same time. It is not currently working but would reduce memory allocations if implemented correctly.
PowerSystems._parse_line_element!
— Method_parse_line_element!(data::Dict, elements::Array, section::AbstractString)
_parse_line_element!(data, elements, section)
Internal function. Parses a single "line" of data elements from a PTI file, as given by elements
which is an array of the line, typically split at ,
. Elements are parsed into data types given by section
and saved into data::Dict
.
PowerSystems._parse_matlab_cells
— Method_parse_matlab_cells(lines, index) -> Dict{_A, _B} where {_A, _B}
PowerSystems._parse_matlab_data
— Method_parse_matlab_data(lines, index, start_char, end_char) -> Dict{_A, _B} where {_A, _B}
PowerSystems._parse_matlab_matrix
— Method_parse_matlab_matrix(lines, index) -> Dict{_A, _B} where {_A, _B}
PowerSystems._parse_matpower_string
— Method_parse_matpower_string(data_string::String) -> Dict{String, Any}
PowerSystems._parse_pti_data
— Method_parse_pti_data(data_io::IO) -> Dict{String, Array{Dict, N} where N}
_parse_pti_data(data_string, sections)
Internal function. Parse a PTI raw file into a Dict
, given the data_string
of the file and a list of the sections
in the PTI file (typically given by default by get_pti_sections()
.
PowerSystems._populate_args
— Method_populate_args(param_map, val) -> Any
Populate arguments in a vector for each dynamic component (except Shafts). Returns a vector with the parameter values of the argument of each component.
PowerSystems._populate_defaults!
— Method_populate_defaults!(data::Dict)
_populate_defaults!(pti_data)
Internal function. Populates empty fields with PSS(R)E PTI v33 default values
PowerSystems._propagate_topology_status!
— Method_propagate_topology_status!(data::Dict{String, var"#s151"} where var"#s151")
PowerSystems._psse2pm_branch!
— Method_psse2pm_branch!(pm_data::Dict, pti_data::Dict, import_all::Bool)
_psse2pm_branch!(pm_data, pti_data)
Parses PSS(R)E-style Branch data into a PowerModels-style Dict. "source_id" is given by ["I", "J", "CKT"]
in PSS(R)E Branch specification.
PowerSystems._psse2pm_bus!
— Method_psse2pm_bus!(pm_data::Dict, pti_data::Dict, import_all::Bool)
_psse2pm_bus!(pm_data, pti_data)
Parses PSS(R)E-style Bus data into a PowerModels-style Dict. "source_id" is given by ["I", "NAME"] in PSS(R)E Bus specification.
PowerSystems._psse2pm_dcline!
— Method_psse2pm_dcline!(pm_data::Dict, pti_data::Dict, import_all::Bool)
_psse2pm_dcline!(pm_data, pti_data)
Parses PSS(R)E-style Two-Terminal and VSC DC Lines data into a PowerModels compatible Dict structure by first converting them to a simple DC Line Model. For Two-Terminal DC lines, "sourceid" is given by ["IPR", "IPI", "NAME"]
in the PSS(R)E Two-Terminal DC specification. For Voltage Source Converters, "sourceid" is given by ["IBUS1", "IBUS2", "NAME"]
, where "IBUS1" is "IBUS" of the first converter bus, and "IBUS2" is the "IBUS" of the second converter bus, in the PSS(R)E Voltage Source Converter specification.
PowerSystems._psse2pm_generator!
— Method_psse2pm_generator!(pm_data::Dict, pti_data::Dict, import_all::Bool)
_psse2pm_generator!(pm_data, pti_data)
Parses PSS(R)E-style Generator data in a PowerModels-style Dict. "source_id" is given by ["I", "ID"]
in PSS(R)E Generator specification.
PowerSystems._psse2pm_load!
— Method_psse2pm_load!(pm_data::Dict, pti_data::Dict, import_all::Bool)
_psse2pm_load!(pm_data, pti_data)
Parses PSS(R)E-style Load data into a PowerModels-style Dict. "source_id" is given by ["I", "ID"]
in the PSS(R)E Load specification.
PowerSystems._psse2pm_shunt!
— Method_psse2pm_shunt!(pm_data::Dict, pti_data::Dict, import_all::Bool)
_psse2pm_shunt!(pm_data, pti_data)
Parses PSS(R)E-style Fixed and Switched Shunt data into a PowerModels-style Dict. "source_id" is given by ["I", "ID"]
for Fixed Shunts, and ["I", "SWREM"]
for Switched Shunts, as given by the PSS(R)E Fixed and Switched Shunts specifications.
PowerSystems._psse2pm_transformer!
— Method_psse2pm_transformer!(pm_data::Dict, pti_data::Dict, import_all::Bool)
_psse2pm_transformer!(pm_data, pti_data)
Parses PSS(R)E-style Transformer data into a PowerModels-style Dict. "source_id" is given by ["I", "J", "K", "CKT", "winding"]
, where "winding" is 0 if transformer is two-winding, and 1, 2, or 3 for three-winding, and the remaining keys are defined in the PSS(R)E Transformer specification.
PowerSystems._pti_to_powermodels!
— Method_pti_to_powermodels!(pti_data::Dict; import_all, validate) -> Dict{String, Any}
_pti_to_powermodels!(pti_data)
Converts PSS(R)E-style data parsed from a PTI raw file, passed by pti_data
into a format suitable for use internally in PowerModels. Imports all remaining data from the PTI file if import_all
is true (Default: false).
PowerSystems._read_data_row
— Method_read_data_row(data::PowerSystemTableData, row, field_infos; na_to_nothing) -> NamedTuple
Reads values from dataframe row and performs necessary conversions.
PowerSystems._remove_aggregration_topology!
— Method_remove_aggregration_topology!(bus::Bus, _::LoadZone)
Remove the aggregation topology in a Bus
PowerSystems._remove_pwl_cost_duplicates!
— Function_remove_pwl_cost_duplicates!(id, comp, type_name) -> Bool
_remove_pwl_cost_duplicates!(id, comp, type_name, tolerance) -> Bool
checks that each point in the a pwl function is unqiue, simplifies the function if duplicates appear
PowerSystems._remove_service!
— Method_remove_service!(device::Device, service::Service) -> Bool
Remove service from device if it is attached.
PowerSystems._rescale_cost_model!
— Method_rescale_cost_model!(comp::Dict{String, var"#s1777"} where var"#s1777", scale::Real)
PowerSystems._select_largest_component!
— Method_select_largest_component!(data::Dict{String, var"#s1778"} where var"#s1778") -> Any
PowerSystems._simplify_pwl_cost!
— Function_simplify_pwl_cost!(id, comp, type_name) -> Bool
_simplify_pwl_cost!(id, comp, type_name, tolerance) -> Bool
checks the slope of each segment in a pwl function, simplifies the function if the slope changes is below a tolerance
PowerSystems._split_loads_shunts!
— Method_split_loads_shunts!(data::Dict{String, Any})
_split_loads_shunts!(data)
Seperates Loads and Shunts in data
under separate "load" and "shunt" keys in the PowerModels data format. Includes references to originating bus via "loadbus" and "shuntbus" keys, respectively.
PowerSystems._standardize_cost_terms!
— Method_standardize_cost_terms!(components::Dict{String, var"#s1777"} where var"#s1777", comp_order::Int64, cost_comp_name::String) -> Set{Int64}
ensures all polynomial costs functions have at exactly comp_order terms
PowerSystems._type_array
— Method_type_array(string_array::Array{T<:AbstractString, 1}) -> Any
Attempts to determine the type of an array of strings extracted from a matlab file
PowerSystems._type_value
— Method_type_value(value_string::AbstractString) -> Any
Attempts to determine the type of a string extracted from a matlab file
PowerSystems._update_branch_flow!
— Method_update_branch_flow!(sys::System)
Updates the flow on the branches
PowerSystems._update_data!
— Method_update_data!(data::Dict{String, var"#s1777"} where var"#s1777", new_data::Dict{String, var"#s1776"} where var"#s1776")
recursive call of updatedata
PowerSystems._value2string
— Method_value2string(v, float_precision::Int64) -> Any
converts any value to a string, summarizes arrays and dicts
PowerSystems._write_pf_sol!
— Method_write_pf_sol!(sys::System, nl_result)
Updates system voltages and powers with power flow results
PowerSystems._write_results
— Method_write_results(sys::System, nl_result) -> Dict{String, DataFrames.DataFrame}
Return power flow results in dictionary of dataframes.
PowerSystems.add_service_internal!
— Methodadd_service_internal!(device::Device, service::Service)
This function add a service to the component without checking if the component and the service are attached to the same system
PowerSystems.adequacy_check
— Methodadequacy_check(sys::System) -> Union{Nothing, Bool}
adequacy_check(sys::System)
Checks the system for sum(generator ratings) >= sum(load ratings).
Arguments
sys::System
: system
PowerSystems.arrays_to_dicts!
— Methodarrays_to_dicts!(data::Dict{String, var"#s1776"} where var"#s1776")
turns top level arrays into dicts
PowerSystems.branch_csv_parser!
— Methodbranch_csv_parser!(sys::System, data::PowerSystemTableData)
Add branches to the System from the raw data.
PowerSystems.bus_csv_parser!
— Methodbus_csv_parser!(sys::System, data::PowerSystemTableData)
Add buses and areas to the System from the raw data.
PowerSystems.bus_gen_lookup
— Methodbus_gen_lookup(gen_data::Dict{String, var"#s1775"} where var"#s1775", bus_data::Dict{String, var"#s1774"} where var"#s1774") -> Dict{_A, _B} where {_A, _B}
builds a lookup list of what generators are connected to a given bus
PowerSystems.bus_load_lookup
— Methodbus_load_lookup(load_data::Dict{String, var"#s1775"} where var"#s1775", bus_data::Dict{String, var"#s1774"} where var"#s1774") -> Dict{_A, _B} where {_A, _B}
builds a lookup list of what loads are connected to a given bus
PowerSystems.bus_shunt_lookup
— Methodbus_shunt_lookup(shunt_data::Dict{String, var"#s1775"} where var"#s1775", bus_data::Dict{String, var"#s1774"} where var"#s1774") -> Dict{_A, _B} where {_A, _B}
builds a lookup list of what shunts are connected to a given bus
PowerSystems.bus_storage_lookup
— Methodbus_storage_lookup(storage_data::Dict{String, var"#s1775"} where var"#s1775", bus_data::Dict{String, var"#s1774"} where var"#s1774") -> Dict{_A, _B} where {_A, _B}
builds a lookup list of what storage is connected to a given bus
PowerSystems.calc_branch_flow_ac
— Methodcalc_branch_flow_ac(data::Dict{String, var"#s1778"} where var"#s1778") -> Dict{String, Any}
assumes a vaild ac solution is included in the data and computes the branch flow values
PowerSystems.calc_branch_flow_dc
— Methodcalc_branch_flow_dc(data::Dict{String, var"#s1778"} where var"#s1778") -> Dict{String, Any}
assumes a vaild dc solution is included in the data and computes the branch flow values
PowerSystems.calc_branch_t
— Methodcalc_branch_t(branch::Dict{String, var"#s1780"} where var"#s1780") -> Tuple{Any, Any}
PowerSystems.calc_branch_y
— Methodcalc_branch_y(branch::Dict{String, var"#s1780"} where var"#s1780") -> Tuple{Any, Any}
PowerSystems.calc_connected_components
— Methodcalc_connected_components(data::Dict{String, var"#s1772"} where var"#s1772"; edges) -> Set{Set{Int64}}
computes the connected components of the network graph returns a set of sets of bus ids, each set is a connected component
PowerSystems.calc_cost_pwl_lines
— Methodcalc_cost_pwl_lines(comp_dict::Dict) -> Dict{Any, Any}
compute lines in m and b from from pwl cost models data is a list of components.
Can be run on data or ref data structures
PowerSystems.calc_dcline_cost
— Methodcalc_dcline_cost(data::Dict{String, var"#s1776"} where var"#s1776") -> Any
computes the dcline cost from given network data
PowerSystems.calc_gen_cost
— Methodcalc_gen_cost(data::Dict{String, var"#s1776"} where var"#s1776") -> Any
computes the generator cost from given network data
PowerSystems.calc_max_cost_index
— Methodcalc_max_cost_index(data::Dict{String, Any}) -> Any
PowerSystems.calc_power_balance
— Methodcalc_power_balance(data::Dict{String, var"#s1778"} where var"#s1778") -> Dict{String, Any}
assumes a vaild solution is included in the data and computes the power balance at each bus
PowerSystems.calc_theta_delta_bounds
— Methodcalc_theta_delta_bounds(data::Dict{String, var"#s1779"} where var"#s1779") -> Tuple{Real, Real}
PowerSystems.check_ascending_order
— Methodcheck_ascending_order(array::Array{Int64, N} where N, name::AbstractString)
Throws DataFormatError if the array is not in ascending order.
PowerSystems.check_attached_buses
— Methodcheck_attached_buses(sys::System, component::Component)
Throws ArgumentError if any bus attached to the component is invalid.
PowerSystems.check_branch_loops
— Methodcheck_branch_loops(data::Dict{String, var"#s1778"} where var"#s1778")
checks that all branches connect two distinct buses
PowerSystems.check_component_addition
— Methodcheck_component_addition(sys::System, component::Component; kwargs...)
Throws ArgumentError if a PowerSystems rule blocks addition to the system.
This method is tied with handlecomponentaddition!. If the methods are re-implemented for a subtype then whatever is added in handlecomponentaddition! must be checked here.
PowerSystems.check_component_removal
— Methodcheck_component_removal(sys::System, component::Component)
Throws ArgumentError if a PowerSystems rule blocks removal from the system.
PowerSystems.check_component_removal
— Methodcheck_component_removal(sys::System, service::T<:Service)
Throws ArgumentError if a PowerSystems rule blocks removal from the system.
PowerSystems.check_conductors
— Methodcheck_conductors(data::Dict{String, var"#s1778"} where var"#s1778")
PowerSystems.check_connectivity
— Methodcheck_connectivity(data::Dict{String, var"#s218"} where var"#s218")
checks that all buses are unique and other components link to valid buses
PowerSystems.check_reference_bus
— Methodcheck_reference_bus(data::Dict{String, var"#s1777"} where var"#s1777")
checks that contains at least one refrence bus
PowerSystems.check_reference_buses
— Methodcheck_reference_buses(data::Dict{String, Any})
checks that each connected components has a reference bus, if not, adds one
PowerSystems.check_status
— Methodcheck_status(data::Dict{String, var"#s218"} where var"#s218")
checks that active components are not connected to inactive buses, otherwise prints warnings
PowerSystems.check_storage_parameters
— Methodcheck_storage_parameters(data::Dict{String, Any})
checks that each storage unit has a reasonable parameters
PowerSystems.check_switch_parameters
— Methodcheck_switch_parameters(data::Dict{String, var"#s1778"} where var"#s1778")
checks that each switch has a reasonable parameters
PowerSystems.check_type
— Methodcheck_type(typ, value) -> Any
Checks if the given value is of a given type, if not tries to make it that type
PowerSystems.check_voltage_setpoints
— Methodcheck_voltage_setpoints(data::Dict{String, var"#s1775"} where var"#s1775")
throws warnings if generator and dc line voltage setpoints are not consistent with the bus voltage setpoint
PowerSystems.compare_dict
— Methodcompare_dict(d1, d2) -> Bool
tests if two dicts are equal, up to floating point precision
PowerSystems.correct_branch_directions!
— Methodcorrect_branch_directions!(data::Dict{String, var"#s1778"} where var"#s1778") -> Set{Int64}
checks that all parallel branches have the same orientation
PowerSystems.correct_bus_types!
— Methodcorrect_bus_types!(data::Dict{String, var"#s1774"} where var"#s1774") -> Set{Int64}
checks bus types are consistent with generator connections, if not, fixes them
PowerSystems.correct_component_refrence_bus!
— Methodcorrect_component_refrence_bus!(component_bus_ids, bus_lookup, component_gens)
checks that a connected component has a reference bus, if not, adds one
PowerSystems.correct_cost_functions!
— Methodcorrect_cost_functions!(data::Dict{String, var"#s1776"} where var"#s1776") -> Tuple{Set{Int64}, Set{Int64}}
throws warnings if cost functions are malformed
PowerSystems.correct_current_limits!
— Methodcorrect_current_limits!(data::Dict{String, var"#s1778"} where var"#s1778") -> Set{Int64}
checks that each branch has a reasonable current rating-a, if not computes one
PowerSystems.correct_dcline_limits!
— Methodcorrect_dcline_limits!(data::Dict{String, Any}) -> Set{Int64}
checks that parameters for dc lines are reasonable
PowerSystems.correct_network_data!
— Methodcorrect_network_data!(data::Dict{String, var"#s1779"} where var"#s1779") -> Dict{String, Dict{Symbol, Set{Int64}}}
Runs various data quality checks on a PowerModels data dictionary. Applies modifications in some cases. Reports modified component ids.
PowerSystems.correct_thermal_limits!
— Methodcorrect_thermal_limits!(data::Dict{String, var"#s1778"} where var"#s1778") -> Set{Int64}
checks that each branch has a reasonable thermal rating-a, if not computes one
PowerSystems.correct_transformer_parameters!
— Methodcorrect_transformer_parameters!(data::Dict{String, var"#s1777"} where var"#s1777") -> Set{Int64}
checks that each branch has a reasonable transformer parameters
this is important because setting tap == 0.0 leads to NaN computations, which are hard to debug
PowerSystems.correct_voltage_angle_differences!
— Functioncorrect_voltage_angle_differences!(data::Dict{String, var"#s1776"} where var"#s1776") -> Set{Int64}
correct_voltage_angle_differences!(data::Dict{String, var"#s1775"} where var"#s1775", default_pad) -> Set{Int64}
checks that voltage angle differences are within 90 deg., if not tightens
PowerSystems.dc_branch_csv_parser!
— Methoddc_branch_csv_parser!(sys::System, data::PowerSystemTableData)
Add DC branches to the System from raw data.
PowerSystems.deserialize_uuid_handling
— Methoddeserialize_uuid_handling(field_type, val, component_cache) -> Any
Deserialize the value, converting UUIDs to components where necessary.
PowerSystems.export_matpower
— Methodexport_matpower(data::Dict{String, Any}) -> String
Export power network data in the matpower format
PowerSystems.export_matpower
— Methodexport_matpower(io::IO, data::Dict{String, Any})
Export power network data in the matpower format
PowerSystems.flow_func
— Methodflow_func(b::ACBranch, V_from::ComplexF64, V_to::ComplexF64) -> Tuple{Float64, Float64}
Calculates the From - To complex power flow using external data of voltages of branch of type Line
PowerSystems.flow_func
— Methodflow_func(b::TapTransformer, V_from::ComplexF64, V_to::ComplexF64) -> Tuple{Float64, Float64}
Calculates the From - To complex power flow using external data of voltages of branch of type TapTransformer
PowerSystems.flow_func
— Methodflow_func(b::Transformer2W, V_from::ComplexF64, V_to::ComplexF64) -> Tuple{Float64, Float64}
Calculates the From - To complex power flow using external data of voltages of branch of type Transformer2W
PowerSystems.flow_val
— Methodflow_val(b::ACBranch) -> Union{Float64, ComplexF64}
Calculates the From - To complex power flow (Flow injected at the bus) of branch of type Line
PowerSystems.flow_val
— Methodflow_val(b::TapTransformer) -> Union{Float64, ComplexF64}
Calculates the From - To complex power flow (Flow injected at the bus) of branch of type TapTransformer
PowerSystems.flow_val
— Methodflow_val(b::Transformer2W) -> Union{Float64, ComplexF64}
Calculates the From - To complex power flow (Flow injected at the bus) of branch of type Transformer2W
PowerSystems.get_avr_saturation
— Methodget_avr_saturation(E::Tuple{Float64, Float64}, Se::Tuple{Float64, Float64}) -> Tuple{Float64, Float64}
Obtain coefficients (A, B) of the function Se(x) = B(x - A)^2/x for Se(E1) = B(E1 - A)^2/E1 and Se(E2) = B(E2 - A)^2/2 and uses the negative solution of the quadratic equation
PowerSystems.get_branch
— Methodget_branch(value::DynamicBranch) -> ACBranch
Get branch
PowerSystems.get_dataframe
— Methodget_dataframe(data::PowerSystemTableData, category::PowerSystems.InputCategoryModule.InputCategory) -> DataFrames.DataFrame
Return the dataframe for the category.
PowerSystems.get_electric_load
— Methodget_electric_load(value::HybridSystem) -> Union{Nothing, ElectricLoad}
Get HybridSystem
load
PowerSystems.get_enum_value
— Methodget_enum_value(enum, value::String) -> Any
Get the enum value for the string. Case insensitive.
PowerSystems.get_exponential_saturation
— Methodget_exponential_saturation(Se::Tuple{Float64, Float64}) -> Tuple{Float64, Float64}
Obtain coefficients (A, B) of the function Se = Bx^A for Se(1.2) = B(1.2)^A and Se(1.0) = B(1.0)^A as: B = Se(1.0) and hence (1.2)^A = Se(1.2)/B -> A = log(Se(1.2)/B) / log(1.2)
PowerSystems.get_generator_mapping
— Functionget_generator_mapping() -> Dict{NamedTuple, DataType}
get_generator_mapping(filename) -> Dict{NamedTuple, DataType}
Return a dict where keys are a tuple of input parameters (fuel, unit_type) and values are generator types.
PowerSystems.get_generator_type
— Methodget_generator_type(fuel, unit_type, mappings::Dict{NamedTuple, DataType}) -> Union{Nothing, DataType}
Return the PowerSystems generator type for this fuel and unit_type.
PowerSystems.get_interconnection_impedance
— Methodget_interconnection_impedance(value::HybridSystem) -> Union{Nothing, ComplexF64}
get HybridSystem
interconnection impedance
PowerSystems.get_interconnection_rating
— Methodget_interconnection_rating(value::HybridSystem) -> Any
Get HybridSystem
rating
.
PowerSystems.get_quadratic_saturation
— Methodget_quadratic_saturation(Se::Tuple{Float64, Float64}) -> Tuple{Float64, Float64}
Obtain coefficients (A, B) of the function Se = B(x - A)^2 for Se(1.2) = B(1.2 - A)^2 and Se(1.0) = B(1.0 - A)^2 as: Se(1.0) = Se(1.2)/(1.2 - A)^2 * (1.0 - A)^2 that yields (1.2 - A)^2 Se(1.0) = Se(1.2) * (1.0 - A)^2 or expanding: (Se(1.2) - Se(1.0)) A^2 + (2.4 Se(1.0) - 2 Se(1.2)) A + (Se(1.2) - 1.44 Se(1.0)) = 0 and uses the negative solution of the quadratic equation
PowerSystems.get_renewable_unit
— Methodget_renewable_unit(value::HybridSystem) -> Union{Nothing, RenewableGen}
Get HybridSystem
renewable unit
PowerSystems.get_series_susceptance
— Methodget_series_susceptance(b::ACBranch) -> Float64
Calculate the admittance of AC branches
PowerSystems.get_series_susceptance
— Methodget_series_susceptance(b::Union{PhaseShiftingTransformer, TapTransformer}) -> Float64
Returns the series susceptance of a controllable transformer following the convention in power systems to define susceptance as the inverse of the imaginary part of the impedance. In the case of phase shifter transformers the angle is ignored.
PowerSystems.get_storage
— Methodget_storage(value::HybridSystem) -> Union{Nothing, Storage}
Get HybridSystem
storage unit
PowerSystems.get_thermal_unit
— Methodget_thermal_unit(value::HybridSystem) -> Union{Nothing, ThermalGen}
Get HybridSystem
thermal unit
PowerSystems.get_user_field
— Methodget_user_field(data::PowerSystemTableData, category::PowerSystems.InputCategoryModule.InputCategory, field::AbstractString) -> Any
Return the custom name stored in the user descriptor file.
Throws DataFormatError if a required value is not found in the file.
PowerSystems.get_user_fields
— Methodget_user_fields(data::PowerSystemTableData, category::PowerSystems.InputCategoryModule.InputCategory) -> Any
Return a vector of user-defined fields for the category.
PowerSystems.handle_component_addition!
— Methodhandle_component_addition!(sys::System, component::Component; kwargs...) -> Set{Int64}
Refer to docstring for checkcomponentaddition!
PowerSystems.handle_component_removal!
— Methodhandle_component_removal!(sys::System, bus::Bus) -> Int64
Throws ArgumentError if the bus number is not stored in the system.
PowerSystems.has_component
— MethodCheck to see if the component of type T with name exists.
PowerSystems.im_replicate
— Methodim_replicate(sn_data::Dict{String, var"#s1778"} where var"#s1778", count::Int64, global_keys::Set{String}) -> Dict{String, Any}
Transforms a single network into a multinetwork with several deepcopies of the original network
PowerSystems.is_attached
— Methodis_attached(component::T<:Component, sys::System) -> Bool
Return true if the component is attached to the system.
PowerSystems.isafield
— Methodisafield(component::Component, field::Symbol) -> Any
Checks if a PowerSystemDevice has a field or subfield name.
PowerSystems.ismultinetwork
— Methodismultinetwork(data::Dict{String, var"#s1780"} where var"#s1780") -> Any
checks if a given network data is a multinetwork
PowerSystems.iterate_rows
— Methoditerate_rows(data::PowerSystemTableData, category; na_to_nothing) -> Channel{Any}
Return a NamedTuple of parameters from the descriptor file for each row of a dataframe, making type conversions as necessary.
Refer to the PowerSystems descriptor file for field names that will be created.
PowerSystems.load_csv_parser!
— Methodload_csv_parser!(sys::System, data::PowerSystemTableData)
load_csv_parser!(sys::System, data::PowerSystemTableData)
Add loads to the System from the raw load data.
PowerSystems.loadzone_csv_parser!
— Methodloadzone_csv_parser!(sys::System, data::PowerSystemTableData)
loadzone_csv_parser!(sys::System, data::PowerSystemTableData)
Add branches to the System from the raw data.
PowerSystems.make_bus
— Methodmake_bus(bus_dict::Dict{String, Any}) -> Bus
Creates a PowerSystems.Bus from a PowerSystems bus dictionary
PowerSystems.make_generator
— Methodmake_generator(data::PowerSystemTableData, gen, cost_colnames, bus) -> Any
Creates a generator of any type.
PowerSystems.make_mixed_units!
— Methodmake_mixed_units!(data::Dict{String, var"#s1778"} where var"#s1778")
Transforms network data into mixed-units (inverse of per-unit)
PowerSystems.make_per_unit!
— Methodmake_per_unit!(data::Dict{String, var"#s1778"} where var"#s1778")
Transforms network data into per-unit
PowerSystems.make_thermal_gen
— Methodmake_thermal_gen(gen_name::AbstractString, d::Dict, bus::Bus, sys_mbase::Number) -> ThermalStandard
The polynomial term follows the convention that for an n-degree polynomial, at least n + 1 components are needed. c(p) = cn*p^n+...+c1p+c0 co is stored in the field in of the Econ Struct
PowerSystems.move_genfuel_and_gentype!
— Methodmove_genfuel_and_gentype!(data::Dict{String, Any})
Move gentype and genfuel fields to be subfields of gen
PowerSystems.parse_matpower
— Methodparse_matpower(io::IO; validate) -> Dict{String, Any}
Parses the matpwer data from either a filename or an IO object
PowerSystems.parse_psse
— Methodparse_psse(io::IO; kwargs...) -> Dict{String, Any}
Parses directly from iostream
PowerSystems.parse_psse
— Methodparse_psse(filename::String; kwargs...) -> Dict{String, Any}
Parses directly from file
PowerSystems.parse_pti
— Methodparse_pti(io::IO) -> Dict{String, Array{Dict, N} where N}
parse_pti(io::IO)
Reads PTI data in io::IO
, returning a Dict
of the data parsed into the proper types.
PowerSystems.parse_pti
— Methodparse_pti(filename::String) -> Dict{String, Array{Dict, N} where N}
parse_pti(filename::String)
Open PTI raw file given by filename
, returning a Dict
of the data parsed into the proper types.
PowerSystems.propagate_topology_status!
— Methodpropagate_topology_status!(data::Dict{String, var"#s1778"} where var"#s1778")
finds active network buses and branches that are not necessary for the computation and sets their status to off.
Works on a PowerModels data dict, so that a it can be used without a GenericPowerModel object
Warning: this implementation has quadratic complexity, in the worst case
PowerSystems.read_gen!
— Methodread_gen!(sys::System, data, bus_number_to_bus::Dict{Int64, Bus}; kwargs...)
Transfer generators to ps_dict according to their classification
PowerSystems.replicate
— Methodreplicate(sn_data::Dict{String, var"#s1777"} where var"#s1777", count::Int64; global_keys) -> Dict{String, Any}
Turns in given single network data in multinetwork data with a count
replicate of the given network. Note that this function performs a deepcopy of the network data. Significant multinetwork space savings can often be achieved by building application specific methods of building multinetwork with minimal data replication.
PowerSystems.row_to_dict
— Methodrow_to_dict(row_data, columns) -> Dict{String, Any}
takes a row from a matrix and assigns the values names
PowerSystems.row_to_typed_dict
— Methodrow_to_typed_dict(row_data, columns) -> Dict{String, Any}
takes a row from a matrix and assigns the values names and types
PowerSystems.select_largest_component
— Methodselect_largest_component(data::Dict{String, Any}) -> Any
determines the largest connected component of the network and turns everything else off
PowerSystems.serialize_uuid_handling
— Methodserialize_uuid_handling(val) -> Any
Serialize the value, encoding as UUIDs where necessary.
PowerSystems.services_csv_parser!
— Methodservices_csv_parser!(sys::System, data::PowerSystemTableData)
Add services to the System from the raw data.
PowerSystems.set_branch!
— Methodset_branch!(value::DynamicBranch, val::ACBranch) -> ACBranch
Set branch
PowerSystems.set_electric_load!
— Methodset_electric_load!(hybrid::HybridSystem, val::ElectricLoad) -> ElectricLoad
Set HybridSystem
load
PowerSystems.set_interconnection_impedance!
— Methodset_interconnection_impedance!(value::HybridSystem, val) -> Any
set HybridSystem
interconnection impedance
PowerSystems.set_interconnection_rating!
— Methodset_interconnection_rating!(value::HybridSystem, val) -> Any
Set HybridSystem
rating
.
PowerSystems.set_renewable_unit!
— Methodset_renewable_unit!(hybrid::HybridSystem, val::RenewableGen) -> RenewableGen
Set HybridSystem
renewable unit
PowerSystems.set_storage!
— Methodset_storage!(hybrid::HybridSystem, val::Storage) -> Storage
Set HybridSystem
storage unit
PowerSystems.set_thermal_unit!
— Methodset_thermal_unit!(hybrid::HybridSystem, val::ThermalGen) -> ThermalGen
Set HybridSystem
thermal unit
PowerSystems.simplify_cost_terms!
— Methodsimplify_cost_terms!(data::Dict{String, var"#s1772"} where var"#s1772") -> Tuple{Set{Int64}, Set{Int64}}
trims zeros from higher order cost terms
PowerSystems.split_line
— Methodsplit_line(mp_line::AbstractString) -> Vector{_A} where _A
PowerSystems.standardize_cost_terms!
— Methodstandardize_cost_terms!(data::Dict{String, var"#s221"} where var"#s221"; order)
ensures all polynomial costs functions have the same number of terms
PowerSystems.throw_if_not_attached
— Methodthrow_if_not_attached(component::Component, sys::System)
Throws ArgumentError if the component is not attached to the system.
PowerSystems.total_capacity_rating
— Methodtotal_capacity_rating(sys::System) -> Any
total_capacity_rating(sys::System)
Sum of system generator and storage ratings.
Arguments
sys::System
: system
PowerSystems.total_load_rating
— Methodtotal_load_rating(sys::System) -> Any
total_load_rating(sys::System)
Checks the system for sum(generator ratings) >= sum(load ratings).
Arguments
sys::System
: system
PowerSystems.update_data!
— Methodupdate_data!(data::Dict{String, var"#s1779"} where var"#s1779", new_data::Dict{String, var"#s1778"} where var"#s1778")
recursively applies new_data to data, overwriting information
PowerSystems.verify_device_eligibility
— Methodverify_device_eligibility(sys::System, component::StaticInjection, service::Service)
Validates if a device is eligible to contribute to a service.
Arguments
sys::System
: PowerSystem Systemcomponent::StaticInjection
: Static injection deviceservice::Service,
: Service for which the device is eligible to contribute