Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add LCC and VSC Data Model, including parser #1205

Closed
wants to merge 23 commits into from
Closed
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
add new struct
  • Loading branch information
rodrigomha committed Jan 23, 2025
commit d444e6604bd8cfb538995005b9bcabcbc3001814
25 changes: 17 additions & 8 deletions src/models/generated/TwoTerminalLCCLine.jl
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ This file is auto-generated. Do not edit.
inverter_tap_limits::MinMax
inverter_tap_step::Float64
inverter_extinction_angle::Float64
commutating_capacitor_reactance::Float64
active_power_limits_from::MinMax
active_power_limits_to::MinMax
reactive_power_limits_from::MinMax
Expand Down Expand Up @@ -74,13 +75,14 @@ As implemented in PSS/E.
- `rectifier_transformer_ratio::Float64`: (default: `1.0`) Rectifier transformer ratio between the primary and secondary side AC voltages.
- `rectifier_tap_setting::Float64`: (default: `1.0`) Rectifier transformer tap setting.
- `rectifier_tap_limits::MinMax`: (default: `(min=0.51, max=1.5)`) Minimum and maximum rectifier tap limits as a ratio between the primary and secondary side AC voltages.
- `rectifier_tap_step::Float64`: (default: `0.00625`) Rectifier transformer tap setting.
- `rectifier_tap_step::Float64`: (default: `0.00625`) Rectifier transformer tap step value
- `rectifier_delay_angle::Float64`: (default: `0.0`) Rectifier firing delay angle (α).
- `inverter_transformer_ratio::Float64`: (default: `1.0`) Inverter transformer ratio between the primary and secondary side AC voltages.
- `inverter_tap_setting::Float64`: (default: `1.0`) Inverter transformer tap setting.
- `inverter_tap_limits::MinMax`: (default: `(min=0.51, max=1.5)`) Minimum and maximum inverter tap limits as a ratio between the primary and secondary side AC voltages.
- `inverter_tap_step::Float64`: (default: `0.00625`) Inverter transformer tap setting.
- `inverter_tap_step::Float64`: (default: `0.00625`) Inverter transformer tap step value.
- `inverter_extinction_angle::Float64`: (default: `0.0`) Inverter extinction angle (γ).
- `commutating_capacitor_reactance::Float64`: (default: `0.0`) Commutating capacitor reactance magnitude per bridge, in system p.u. ([`SYSTEM_BASE`](@ref per_unit)).
- `active_power_limits_from::MinMax`: (default: `(min=0.0, max=0.0)`) Minimum and maximum active power flows to the FROM node (MW)
- `active_power_limits_to::MinMax`: (default: `(min=0.0, max=0.0)`) Minimum and maximum active power flows to the TO node (MW)
- `reactive_power_limits_from::MinMax`: (default: `(min=0.0, max=0.0)`) Minimum and maximum reactive power limits to the FROM node (MVAR)
Expand Down Expand Up @@ -137,7 +139,7 @@ mutable struct TwoTerminalLCCLine <: ACBranch
rectifier_tap_setting::Float64
"Minimum and maximum rectifier tap limits as a ratio between the primary and secondary side AC voltages."
rectifier_tap_limits::MinMax
"Rectifier transformer tap setting."
"Rectifier transformer tap step value"
rectifier_tap_step::Float64
"Rectifier firing delay angle (α)."
rectifier_delay_angle::Float64
Expand All @@ -147,10 +149,12 @@ mutable struct TwoTerminalLCCLine <: ACBranch
inverter_tap_setting::Float64
"Minimum and maximum inverter tap limits as a ratio between the primary and secondary side AC voltages."
inverter_tap_limits::MinMax
"Inverter transformer tap setting."
"Inverter transformer tap step value."
inverter_tap_step::Float64
"Inverter extinction angle (γ)."
inverter_extinction_angle::Float64
"Commutating capacitor reactance magnitude per bridge, in system p.u. ([`SYSTEM_BASE`](@ref per_unit))."
commutating_capacitor_reactance::Float64
"Minimum and maximum active power flows to the FROM node (MW)"
active_power_limits_from::MinMax
"Minimum and maximum active power flows to the TO node (MW)"
Expand All @@ -169,12 +173,12 @@ mutable struct TwoTerminalLCCLine <: ACBranch
internal::InfrastructureSystemsInternal
end

function TwoTerminalLCCLine(name, available, arc, active_power_flow, transfer_setpoint, scheduled_dc_voltage, rectifier_bridges, rectifier_delay_angle_limits, rectifier_rc, rectifier_xc, rectifier_base_voltage, inverter_bridges, inverter_extinction_angle_limits, inverter_rc, inverter_xc, inverter_base_voltage, power_mode=true, switch_mode_voltage=0.0, compounding_resistance=0.0, min_compounding_voltage=0.0, rectifier_transformer_ratio=1.0, rectifier_tap_setting=1.0, rectifier_tap_limits=(min=0.51, max=1.5), rectifier_tap_step=0.00625, rectifier_delay_angle=0.0, inverter_transformer_ratio=1.0, inverter_tap_setting=1.0, inverter_tap_limits=(min=0.51, max=1.5), inverter_tap_step=0.00625, inverter_extinction_angle=0.0, active_power_limits_from=(min=0.0, max=0.0), active_power_limits_to=(min=0.0, max=0.0), reactive_power_limits_from=(min=0.0, max=0.0), reactive_power_limits_to=(min=0.0, max=0.0), loss=LinearCurve(0.0), services=Device[], ext=Dict{String, Any}(), )
TwoTerminalLCCLine(name, available, arc, active_power_flow, transfer_setpoint, scheduled_dc_voltage, rectifier_bridges, rectifier_delay_angle_limits, rectifier_rc, rectifier_xc, rectifier_base_voltage, inverter_bridges, inverter_extinction_angle_limits, inverter_rc, inverter_xc, inverter_base_voltage, power_mode, switch_mode_voltage, compounding_resistance, min_compounding_voltage, rectifier_transformer_ratio, rectifier_tap_setting, rectifier_tap_limits, rectifier_tap_step, rectifier_delay_angle, inverter_transformer_ratio, inverter_tap_setting, inverter_tap_limits, inverter_tap_step, inverter_extinction_angle, active_power_limits_from, active_power_limits_to, reactive_power_limits_from, reactive_power_limits_to, loss, services, ext, InfrastructureSystemsInternal(), )
function TwoTerminalLCCLine(name, available, arc, active_power_flow, transfer_setpoint, scheduled_dc_voltage, rectifier_bridges, rectifier_delay_angle_limits, rectifier_rc, rectifier_xc, rectifier_base_voltage, inverter_bridges, inverter_extinction_angle_limits, inverter_rc, inverter_xc, inverter_base_voltage, power_mode=true, switch_mode_voltage=0.0, compounding_resistance=0.0, min_compounding_voltage=0.0, rectifier_transformer_ratio=1.0, rectifier_tap_setting=1.0, rectifier_tap_limits=(min=0.51, max=1.5), rectifier_tap_step=0.00625, rectifier_delay_angle=0.0, inverter_transformer_ratio=1.0, inverter_tap_setting=1.0, inverter_tap_limits=(min=0.51, max=1.5), inverter_tap_step=0.00625, inverter_extinction_angle=0.0, commutating_capacitor_reactance=0.0, active_power_limits_from=(min=0.0, max=0.0), active_power_limits_to=(min=0.0, max=0.0), reactive_power_limits_from=(min=0.0, max=0.0), reactive_power_limits_to=(min=0.0, max=0.0), loss=LinearCurve(0.0), services=Device[], ext=Dict{String, Any}(), )
TwoTerminalLCCLine(name, available, arc, active_power_flow, transfer_setpoint, scheduled_dc_voltage, rectifier_bridges, rectifier_delay_angle_limits, rectifier_rc, rectifier_xc, rectifier_base_voltage, inverter_bridges, inverter_extinction_angle_limits, inverter_rc, inverter_xc, inverter_base_voltage, power_mode, switch_mode_voltage, compounding_resistance, min_compounding_voltage, rectifier_transformer_ratio, rectifier_tap_setting, rectifier_tap_limits, rectifier_tap_step, rectifier_delay_angle, inverter_transformer_ratio, inverter_tap_setting, inverter_tap_limits, inverter_tap_step, inverter_extinction_angle, commutating_capacitor_reactance, active_power_limits_from, active_power_limits_to, reactive_power_limits_from, reactive_power_limits_to, loss, services, ext, InfrastructureSystemsInternal(), )
end

function TwoTerminalLCCLine(; name, available, arc, active_power_flow, transfer_setpoint, scheduled_dc_voltage, rectifier_bridges, rectifier_delay_angle_limits, rectifier_rc, rectifier_xc, rectifier_base_voltage, inverter_bridges, inverter_extinction_angle_limits, inverter_rc, inverter_xc, inverter_base_voltage, power_mode=true, switch_mode_voltage=0.0, compounding_resistance=0.0, min_compounding_voltage=0.0, rectifier_transformer_ratio=1.0, rectifier_tap_setting=1.0, rectifier_tap_limits=(min=0.51, max=1.5), rectifier_tap_step=0.00625, rectifier_delay_angle=0.0, inverter_transformer_ratio=1.0, inverter_tap_setting=1.0, inverter_tap_limits=(min=0.51, max=1.5), inverter_tap_step=0.00625, inverter_extinction_angle=0.0, active_power_limits_from=(min=0.0, max=0.0), active_power_limits_to=(min=0.0, max=0.0), reactive_power_limits_from=(min=0.0, max=0.0), reactive_power_limits_to=(min=0.0, max=0.0), loss=LinearCurve(0.0), services=Device[], ext=Dict{String, Any}(), internal=InfrastructureSystemsInternal(), )
TwoTerminalLCCLine(name, available, arc, active_power_flow, transfer_setpoint, scheduled_dc_voltage, rectifier_bridges, rectifier_delay_angle_limits, rectifier_rc, rectifier_xc, rectifier_base_voltage, inverter_bridges, inverter_extinction_angle_limits, inverter_rc, inverter_xc, inverter_base_voltage, power_mode, switch_mode_voltage, compounding_resistance, min_compounding_voltage, rectifier_transformer_ratio, rectifier_tap_setting, rectifier_tap_limits, rectifier_tap_step, rectifier_delay_angle, inverter_transformer_ratio, inverter_tap_setting, inverter_tap_limits, inverter_tap_step, inverter_extinction_angle, active_power_limits_from, active_power_limits_to, reactive_power_limits_from, reactive_power_limits_to, loss, services, ext, internal, )
function TwoTerminalLCCLine(; name, available, arc, active_power_flow, transfer_setpoint, scheduled_dc_voltage, rectifier_bridges, rectifier_delay_angle_limits, rectifier_rc, rectifier_xc, rectifier_base_voltage, inverter_bridges, inverter_extinction_angle_limits, inverter_rc, inverter_xc, inverter_base_voltage, power_mode=true, switch_mode_voltage=0.0, compounding_resistance=0.0, min_compounding_voltage=0.0, rectifier_transformer_ratio=1.0, rectifier_tap_setting=1.0, rectifier_tap_limits=(min=0.51, max=1.5), rectifier_tap_step=0.00625, rectifier_delay_angle=0.0, inverter_transformer_ratio=1.0, inverter_tap_setting=1.0, inverter_tap_limits=(min=0.51, max=1.5), inverter_tap_step=0.00625, inverter_extinction_angle=0.0, commutating_capacitor_reactance=0.0, active_power_limits_from=(min=0.0, max=0.0), active_power_limits_to=(min=0.0, max=0.0), reactive_power_limits_from=(min=0.0, max=0.0), reactive_power_limits_to=(min=0.0, max=0.0), loss=LinearCurve(0.0), services=Device[], ext=Dict{String, Any}(), internal=InfrastructureSystemsInternal(), )
TwoTerminalLCCLine(name, available, arc, active_power_flow, transfer_setpoint, scheduled_dc_voltage, rectifier_bridges, rectifier_delay_angle_limits, rectifier_rc, rectifier_xc, rectifier_base_voltage, inverter_bridges, inverter_extinction_angle_limits, inverter_rc, inverter_xc, inverter_base_voltage, power_mode, switch_mode_voltage, compounding_resistance, min_compounding_voltage, rectifier_transformer_ratio, rectifier_tap_setting, rectifier_tap_limits, rectifier_tap_step, rectifier_delay_angle, inverter_transformer_ratio, inverter_tap_setting, inverter_tap_limits, inverter_tap_step, inverter_extinction_angle, commutating_capacitor_reactance, active_power_limits_from, active_power_limits_to, reactive_power_limits_from, reactive_power_limits_to, loss, services, ext, internal, )
end

# Constructor for demo purposes; non-functional.
Expand Down Expand Up @@ -210,6 +214,7 @@ function TwoTerminalLCCLine(::Nothing)
inverter_tap_limits=(min=0.0, max=0.0),
inverter_tap_step=0.0,
inverter_extinction_angle=0.0,
commutating_capacitor_reactance=0.0,
active_power_limits_from=(min=0.0, max=0.0),
active_power_limits_to=(min=0.0, max=0.0),
reactive_power_limits_from=(min=0.0, max=0.0),
Expand Down Expand Up @@ -280,6 +285,8 @@ get_inverter_tap_limits(value::TwoTerminalLCCLine) = value.inverter_tap_limits
get_inverter_tap_step(value::TwoTerminalLCCLine) = value.inverter_tap_step
"""Get [`TwoTerminalLCCLine`](@ref) `inverter_extinction_angle`."""
get_inverter_extinction_angle(value::TwoTerminalLCCLine) = value.inverter_extinction_angle
"""Get [`TwoTerminalLCCLine`](@ref) `commutating_capacitor_reactance`."""
get_commutating_capacitor_reactance(value::TwoTerminalLCCLine) = value.commutating_capacitor_reactance
"""Get [`TwoTerminalLCCLine`](@ref) `active_power_limits_from`."""
get_active_power_limits_from(value::TwoTerminalLCCLine) = get_value(value, value.active_power_limits_from)
"""Get [`TwoTerminalLCCLine`](@ref) `active_power_limits_to`."""
Expand Down Expand Up @@ -355,6 +362,8 @@ set_inverter_tap_limits!(value::TwoTerminalLCCLine, val) = value.inverter_tap_li
set_inverter_tap_step!(value::TwoTerminalLCCLine, val) = value.inverter_tap_step = val
"""Set [`TwoTerminalLCCLine`](@ref) `inverter_extinction_angle`."""
set_inverter_extinction_angle!(value::TwoTerminalLCCLine, val) = value.inverter_extinction_angle = val
"""Set [`TwoTerminalLCCLine`](@ref) `commutating_capacitor_reactance`."""
set_commutating_capacitor_reactance!(value::TwoTerminalLCCLine, val) = value.commutating_capacitor_reactance = val
"""Set [`TwoTerminalLCCLine`](@ref) `active_power_limits_from`."""
set_active_power_limits_from!(value::TwoTerminalLCCLine, val) = value.active_power_limits_from = set_value(value, val)
"""Set [`TwoTerminalLCCLine`](@ref) `active_power_limits_to`."""
Expand Down
2 changes: 2 additions & 0 deletions src/models/generated/includes.jl
Original file line number Diff line number Diff line change
Expand Up @@ -494,6 +494,7 @@ export get_bustype
export get_c
export get_c_dc
export get_cf
export get_commutating_capacitor_reactance
export get_compounding_resistance
export get_constant_active_power
export get_constant_reactive_power
Expand Down Expand Up @@ -1085,6 +1086,7 @@ export set_bustype!
export set_c!
export set_c_dc!
export set_cf!
export set_commutating_capacitor_reactance!
export set_compounding_resistance!
export set_constant_active_power!
export set_constant_reactive_power!
Expand Down
Loading