From e4607fac3fd80e0108088fb3a9f700a70b84ebf3 Mon Sep 17 00:00:00 2001 From: "Documenter.jl" Date: Tue, 2 Jul 2024 15:48:44 +0000 Subject: [PATCH] build based on d05f228 --- previews/PR383/api/internal/index.html | 10 + previews/PR383/api/public/index.html | 119 ++++ previews/PR383/assets/SoftwareLoop.jpg | Bin 0 -> 170340 bytes previews/PR383/assets/active_ren.png | Bin 0 -> 482725 bytes previews/PR383/assets/documenter.js | 340 ++++++++++ previews/PR383/assets/f-plot.svg | 153 +++++ previews/PR383/assets/generic_vsc.png | Bin 0 -> 221378 bytes previews/PR383/assets/inner_reecb.png | Bin 0 -> 213655 bytes previews/PR383/assets/inverter_init.png | Bin 0 -> 49450 bytes previews/PR383/assets/logo.png | Bin 0 -> 7972 bytes previews/PR383/assets/reactive_ren.png | Bin 0 -> 492727 bytes previews/PR383/assets/search.js | 267 ++++++++ previews/PR383/assets/synch_init.png | Bin 0 -> 36326 bytes previews/PR383/assets/sys_init.png | Bin 0 -> 204828 bytes .../PR383/assets/themes/documenter-dark.css | 7 + .../PR383/assets/themes/documenter-light.css | 9 + previews/PR383/assets/themeswap.js | 66 ++ previews/PR383/assets/unicode.png | Bin 0 -> 67853 bytes previews/PR383/assets/warner.js | 49 ++ .../developer/index.html | 2 + .../PR383/component_models/avr/index.html | 75 +++ .../component_models/converter/index.html | 25 + .../component_models/dc_source/index.html | 2 + .../PR383/component_models/filters/index.html | 13 + .../component_models/freq_esti/index.html | 20 + .../component_models/inner_control/index.html | 44 ++ .../PR383/component_models/loads/index.html | 75 +++ .../component_models/machines/index.html | 103 +++ .../PR383/component_models/network/index.html | 13 + .../component_models/outer_control/index.html | 69 ++ .../PR383/component_models/pss/index.html | 26 + .../PR383/component_models/shafts/index.html | 16 + .../component_models/turbine_gov/index.html | 45 ++ previews/PR383/execute/index.html | 18 + previews/PR383/generic/index.html | 2 + previews/PR383/index.html | 7 + previews/PR383/initialization/index.html | 23 + previews/PR383/models/index.html | 8 + previews/PR383/perturbations/index.html | 44 ++ previews/PR383/power-simulations-dynamics.log | 44 ++ previews/PR383/quick_start_guide/index.html | 103 +++ previews/PR383/reference_frames/index.html | 11 + previews/PR383/search/index.html | 2 + previews/PR383/search_index.js | 3 + previews/PR383/siteinfo.js | 1 + previews/PR383/small/index.html | 32 + previews/PR383/time_delays/index.html | 4 + .../tutorials/figs/14bus_gen_inv_speed.svg | 52 ++ .../tutorials/figs/14bus_gen_inv_volt.svg | 72 ++ .../PR383/tutorials/figs/14bus_gen_speed.svg | 52 ++ .../PR383/tutorials/figs/14bus_gen_volt.svg | 72 ++ previews/PR383/tutorials/figs/omib_angle.svg | 44 ++ previews/PR383/tutorials/figs/omib_volt.svg | 44 ++ .../PR383/tutorials/figs/plot_dynlines.svg | 48 ++ .../tutorials/figs/plot_dynlines_zoom.svg | 48 ++ .../PR383/tutorials/figs/pv_curve_cpl.svg | 44 ++ .../tutorials/figs/pv_curve_cpl_genrou.svg | 214 ++++++ .../PR383/tutorials/figs/v1101_comparison.svg | 48 ++ previews/PR383/tutorials/figs/v1101_ida.svg | 50 ++ previews/PR383/tutorials/modified_sys.json | 1 + .../tutorials/modified_sys_metadata.json | 46 ++ .../modified_sys_validation_descriptors.json | 1 + .../tutorials/power-simulations-dynamics.log | 0 previews/PR383/tutorials/threebus_sys.json | 1 + .../tutorials/threebus_sys_metadata.json | 50 ++ .../threebus_sys_validation_descriptors.json | 1 + .../tutorials/tutorial_240bus/index.html | 480 ++++++++++++++ .../tutorials/tutorial_activeload/index.html | 270 ++++++++ .../tutorial_continuation_pf/index.html | 170 +++++ .../tutorial_dynamic_data/index.html | 273 ++++++++ .../tutorial_dynamic_lines/index.html | 297 +++++++++ .../tutorial_inverter_modeling/index.html | 617 ++++++++++++++++++ .../PR383/tutorials/tutorial_omib/index.html | 95 +++ previews/PR383/tutorials_page/index.html | 2 + 74 files changed, 4942 insertions(+) create mode 100644 previews/PR383/api/internal/index.html create mode 100644 previews/PR383/api/public/index.html create mode 100644 previews/PR383/assets/SoftwareLoop.jpg create mode 100644 previews/PR383/assets/active_ren.png create mode 100644 previews/PR383/assets/documenter.js create mode 100644 previews/PR383/assets/f-plot.svg create mode 100644 previews/PR383/assets/generic_vsc.png create mode 100644 previews/PR383/assets/inner_reecb.png create mode 100644 previews/PR383/assets/inverter_init.png create mode 100644 previews/PR383/assets/logo.png create mode 100644 previews/PR383/assets/reactive_ren.png create mode 100644 previews/PR383/assets/search.js create mode 100644 previews/PR383/assets/synch_init.png create mode 100644 previews/PR383/assets/sys_init.png create mode 100644 previews/PR383/assets/themes/documenter-dark.css create mode 100644 previews/PR383/assets/themes/documenter-light.css create mode 100644 previews/PR383/assets/themeswap.js create mode 100644 previews/PR383/assets/unicode.png create mode 100644 previews/PR383/assets/warner.js create mode 100644 previews/PR383/code_base_developer_guide/developer/index.html create mode 100644 previews/PR383/component_models/avr/index.html create mode 100644 previews/PR383/component_models/converter/index.html create mode 100644 previews/PR383/component_models/dc_source/index.html create mode 100644 previews/PR383/component_models/filters/index.html create mode 100644 previews/PR383/component_models/freq_esti/index.html create mode 100644 previews/PR383/component_models/inner_control/index.html create mode 100644 previews/PR383/component_models/loads/index.html create mode 100644 previews/PR383/component_models/machines/index.html create mode 100644 previews/PR383/component_models/network/index.html create mode 100644 previews/PR383/component_models/outer_control/index.html create mode 100644 previews/PR383/component_models/pss/index.html create mode 100644 previews/PR383/component_models/shafts/index.html create mode 100644 previews/PR383/component_models/turbine_gov/index.html create mode 100644 previews/PR383/execute/index.html create mode 100644 previews/PR383/generic/index.html create mode 100644 previews/PR383/index.html create mode 100644 previews/PR383/initialization/index.html create mode 100644 previews/PR383/models/index.html create mode 100644 previews/PR383/perturbations/index.html create mode 100644 previews/PR383/power-simulations-dynamics.log create mode 100644 previews/PR383/quick_start_guide/index.html create mode 100644 previews/PR383/reference_frames/index.html create mode 100644 previews/PR383/search/index.html create mode 100644 previews/PR383/search_index.js create mode 100644 previews/PR383/siteinfo.js create mode 100644 previews/PR383/small/index.html create mode 100644 previews/PR383/time_delays/index.html create mode 100644 previews/PR383/tutorials/figs/14bus_gen_inv_speed.svg create mode 100644 previews/PR383/tutorials/figs/14bus_gen_inv_volt.svg create mode 100644 previews/PR383/tutorials/figs/14bus_gen_speed.svg create mode 100644 previews/PR383/tutorials/figs/14bus_gen_volt.svg create mode 100644 previews/PR383/tutorials/figs/omib_angle.svg create mode 100644 previews/PR383/tutorials/figs/omib_volt.svg create mode 100644 previews/PR383/tutorials/figs/plot_dynlines.svg create mode 100644 previews/PR383/tutorials/figs/plot_dynlines_zoom.svg create mode 100644 previews/PR383/tutorials/figs/pv_curve_cpl.svg create mode 100644 previews/PR383/tutorials/figs/pv_curve_cpl_genrou.svg create mode 100644 previews/PR383/tutorials/figs/v1101_comparison.svg create mode 100644 previews/PR383/tutorials/figs/v1101_ida.svg create mode 100644 previews/PR383/tutorials/modified_sys.json create mode 100644 previews/PR383/tutorials/modified_sys_metadata.json create mode 100644 previews/PR383/tutorials/modified_sys_validation_descriptors.json create mode 100644 previews/PR383/tutorials/power-simulations-dynamics.log create mode 100644 previews/PR383/tutorials/threebus_sys.json create mode 100644 previews/PR383/tutorials/threebus_sys_metadata.json create mode 100644 previews/PR383/tutorials/threebus_sys_validation_descriptors.json create mode 100644 previews/PR383/tutorials/tutorial_240bus/index.html create mode 100644 previews/PR383/tutorials/tutorial_activeload/index.html create mode 100644 previews/PR383/tutorials/tutorial_continuation_pf/index.html create mode 100644 previews/PR383/tutorials/tutorial_dynamic_data/index.html create mode 100644 previews/PR383/tutorials/tutorial_dynamic_lines/index.html create mode 100644 previews/PR383/tutorials/tutorial_inverter_modeling/index.html create mode 100644 previews/PR383/tutorials/tutorial_omib/index.html create mode 100644 previews/PR383/tutorials_page/index.html diff --git a/previews/PR383/api/internal/index.html b/previews/PR383/api/internal/index.html new file mode 100644 index 000000000..30c2e15c8 --- /dev/null +++ b/previews/PR383/api/internal/index.html @@ -0,0 +1,10 @@ + +Internal API Reference · PowerSimulationsDynamics.jl

Internal

PowerSimulationsDynamics.generator_inner_varsType

Generator Inner Vars:

  • τe_var :: Electric torque
  • τm_var :: Mechanical torque
  • Vf_var :: Field voltage
  • V_pss_var :: Additional PSS voltage
  • VR_gen_var :: Real part of the terminal voltage
  • VI_gen_var :: Imaginary part of the terminal voltage
  • ψd_var :: Stator Flux (if defined) in the d-axis
  • ψq_var :: Stator Flux (if defined) in the q-axis
source
PowerSimulationsDynamics.inverter_inner_varsType

Inverter Inner Vars:

  • md_var :: Modulation signal on the d-component
  • mq_var :: Modulation signal on the q-component
  • Vdc_var :: DC voltage supplied by the DC source
  • Vr_filter_var :: Voltage seen in the capacitor of the filter in the R-component
  • Vi_filter_var :: Voltage seen in the capacitor of the filter in the I-component
  • θ_freq_estimator_var :: Angle estimated by the frequency estimator.
  • ω_freq_estimator_var :: Frequency estimated by the frequency estimator.
  • V_oc_var :: Control voltage reference in the d-axis supplied from the outer loop control to the inner loop (for Voltage Mode Control)
  • Id_oc_var :: Control current reference in the d-axis supplied from the outer loop control to the inner loop (for Current Mode Control)
  • Iq_oc_var :: Control current reference in the q-axis supplied from the outer loop control to the inner loop (for Current Mode Control)
  • Id_ic_var :: Control current reference in the d-axis supplied from the inner loop control to the converter (for Generic Models)
  • Iq_ic_var :: Control current reference in the q-axis supplied from the inner loop control to the converter (for Generic Models)
  • Ir_cnv_var :: Control current reference in the R-axis supplied from the converter to the filter (for Generic Models)
  • Ii_cnv_var :: Control current reference in the I-axis supplied from the converter to the filter (for Generic Models)
  • ω_oc_var :: Control frequency supplied from the outer loop control the inner loop
  • θ_oc_var :: Variation of the angle (PLL or VSM) of the inverter
  • Vr_inv_var :: Real terminal voltage on the inverter
  • Vi_inv_var :: Imaginary terminal voltage on the inverter
  • Vr_cnv_var :: Voltage supplied from the converter in the R-component
  • Vi_cnv_var :: Voltage supplied from the converter in the I-component
  • P_ES_var :: Power supplied from the Energy Source side
source
PowerSimulationsDynamics._field_currentMethod

Function to obtain the field current time series of a Dynamic Generator. It is dispatched via the machine type. By default, machine does not have support for field current

source
PowerSimulationsDynamics._field_voltageMethod

Function to obtain the field voltage time series of a Dynamic Generator with avrs that have the field voltage as a state. By default it is assumed that the models have that state.

source
PowerSimulationsDynamics._frequencyMethod

Function to obtain the frequency time series of a virtual inertia grid forming inverter out of the DAE Solution. It is dispatched via the OuterControl type.

source
PowerSimulationsDynamics._frequencyMethod

Function to obtain the frequency time series of a grid-following inverter with KauraPLL out of the DAE Solution. It is dispatched via the OuterControl and FrequencyEstimator type.

source
PowerSimulationsDynamics._frequencyMethod

Function to obtain the frequency time series of a grid-following inverter with ReducedOrderPLL out of the DAE Solution. It is dispatched via the OuterControl and FrequencyEstimator type.

source
PowerSimulationsDynamics.compute_field_currentMethod

Function to obtain the field current time series of a Dynamic Generator model out of the DAE Solution. It receives the simulation inputs, the dynamic device and bus voltage. It is dispatched for device type to compute the specific current.

source
PowerSimulationsDynamics.compute_field_currentMethod

Function to obtain the field current time series of a Dynamic Inverter model out of the DAE Solution. It receives the simulation inputs, the dynamic device and bus voltage. It must return nothing since field current does not exists in inverters.

source
PowerSimulationsDynamics.compute_field_voltageMethod

Function to obtain the field voltage time series of a Dynamic Generator model out of the DAE Solution. It receives the simulation inputs, the dynamic device and bus voltage. It is dispatched for device type to compute the specific voltage.

source
PowerSimulationsDynamics.compute_field_voltageMethod

Function to obtain the field current time series of a Dynamic Inverter model out of the DAE Solution. It receives the simulation inputs, the dynamic device and bus voltage. It must return nothing since field voltage does not exists in inverters.

source
PowerSimulationsDynamics.compute_mechanical_torqueMethod

Function to obtain the mechanical torque time series of a Dynamic Generator model out of the DAE Solution. It receives the simulation inputs, the dynamic device and bus voltage. It is dispatched for device type to compute the specific torque.

source
PowerSimulationsDynamics.compute_mechanical_torqueMethod

Function to obtain the mechanical torque time series of a Dynamic Inverter model out of the DAE Solution. It receives the simulation inputs, the dynamic device and bus voltage. It must return nothing since mechanical torque is not used in inverters.

source
PowerSimulationsDynamics.compute_output_currentMethod

Function to obtain the output current time series of a PeriodicVariableSource model out of the DAE Solution. It receives the simulation inputs, the dynamic device and bus voltage. It is dispatched for device type to compute the specific current. computeoutputcurrent(::SimulationResults, ::PeriodicVariableSource, ::Vector{Float64}, ::Vector{Float64}, ::Nothing)

source
PowerSimulationsDynamics.compute_output_currentMethod

Function to obtain the output current time series of a Dynamic Generator model out of the DAE Solution. It receives the simulation inputs, the dynamic device and bus voltage. It is dispatched for device type to compute the specific current.

source
PowerSimulationsDynamics.compute_output_currentMethod

Function to obtain the output current time series of a Dynamic Inverter model out of the DAE Solution. It receives the simulation inputs, the dynamic device and bus voltage. It is dispatched for device type to compute the specific current.

source
PowerSimulationsDynamics.compute_pss_outputMethod

Function to obtain the pss output time series of a Dynamic Generator model out of the DAE Solution. It receives the simulation inputs, the dynamic device and bus voltage. It is dispatched for device type to compute the specific output.

source
PowerSimulationsDynamics.configure_loggingMethod
configure_logging(;
+    console_level = Logging.Error,
+    file_level = Logging.Info,
+    filename = "power-simulations.log",
+)

Creates console and file loggers.

Note: Log messages may not be written to the file until flush() or close() is called on the returned logger.

Arguments

  • console_level = Logging.Error: level for console messages
  • file_level = Logging.Info: level for file messages
  • filename::String = power-simulations.log: log file

Example

logger = configure_logging(console_level = Logging.Info)
+@info "log message"
+close(logger)
source
PowerSimulationsDynamics.device!Method

Model of 12-state Active Constant Power Load in Julia. Based on the paper Malicious Control of an Active Load in an Islanded Mixed-Source Microgrid by C. Roberts, U. Markovic, D. Arnold and D. Callaway.

source
PowerSimulationsDynamics.device!Method

Model of 3-state (SimplifiedSingleCageInductionMachine) induction motor in Julia. Based on the 3rd order model derived in Prabha Kundur's Book and the equations in "Analysis of Electric Machinery and Drive Systems" by Paul Krause, Oleg Wasynczuk and Scott Sudhoff.

source
PowerSimulationsDynamics.device!Method

Model of 5-state (SingleCageInductionMachine) induction motor in Julia. Refer to "Analysis of Electric Machinery and Drive Systems" by Paul Krause, Oleg Wasynczuk and Scott Sudhoff for the equations

source
PowerSimulationsDynamics.mdl_zip_load!Method

Model for ZIP Load model given by:

Pzip = Ppower + Pcurrent * (V / V0) + Pimpedance * (V / V0)^2 Qzip = Qpower + Qcurrent * (V / V0) + Qimpedance * (V / V0)^2

with V = sqrt(Vr^2 + Vi^2) and V0 the voltage magnitude from the power flow solution

The current taken for the load is computed as: Izip = (Pzip + j Qzip)^* / (Vr + j Vi)^* Izip = (Pzip - j Qzip) / (Vr - j Vi)

For constant impedance it is obtained: Izre = (1 / V0)^2 * (Vr * Pimpedance + Vi * Qimpedance) Izim = (1 / V0)^2 * (Vi * Pimpedance - Vr * Qimpedance)

For constant current it is obtained: Iire = (1 / V0) * ( (Vr * Pcurrent + Vi * Qcurrent) / V ) Iiim = (1 / V0) * ( (Vi * Pcurrent - Vr * Qcurrent) / V )

For constant power it is obtained: Ipre = (Vr * Ppower + Vi * Qpower) / V^2 Ipim = (Vi * Ppower - Vr * Qpower) / V^2

Model for Exponential Load model given by:

Pexp = P0 * (V / V0)^α Qexp = Q0 * (V / V0)^β

The current taken for the load is computed as: Iexp = (Pexp + j Qexp)^* / (Vr + j Vi)^* Iexp = (Pexp - j Qexp) / (Vr - j Vi)

It results: Irexp = Vr * P0 * (V^(α - 2) / V0^α) + Vi * Q0 * (V^(β - 2)/ V0^β) Iiim = Vi * P0 * (V^(α - 2) / V0^α) - Vr * Q0 * (V^(β - 2)/ V0^β)

source
diff --git a/previews/PR383/api/public/index.html b/previews/PR383/api/public/index.html new file mode 100644 index 000000000..1110c4d13 --- /dev/null +++ b/previews/PR383/api/public/index.html @@ -0,0 +1,119 @@ + +Public API Reference · PowerSimulationsDynamics.jl

PowerSimulationsDynamics

PowerSimulationsDynamics.BranchImpedanceChangeType
mutable struct BranchImpedanceChange <: Perturbation
+    time::Float64
+    branch_type::Type{<:PSY.ACBranch}
+    branch_name::String
+    multiplier::Float64
+end

A BranchImpedanceChange change the impedance of a branch by a user defined multiplier. Currently there is only support for static branches disconnection, PowerSystems.Line and PowerSystems.Transformer2W. Future releases will provide support for a Dynamic Line disconnection.

Arguments:

  • time::Float64 : Defines when the Branch Impedance Change will happen. This time should be inside the time span considered in the Simulation
  • branch_tipe::Type{<:PowerSystems.ACBranch} : Type of branch modified
  • branch_name::String : User defined name for identifying the branch
  • multiplier::Float64 : User defined value for impedance multiplier.
source
PowerSimulationsDynamics.BranchTripType
mutable struct BranchTrip <: Perturbation
+    time::Float64
+    branch_type::Type{<:PowerSystems.ACBranch}
+    branch_name::String
+end

A BranchTrip completely disconnects a branch from the system. Currently there is only support for static branches disconnection, PowerSystems.Line and PowerSystems.Transformer2W. Future releases will provide support for a Dynamic Line disconnection. Note: Islanding is currently not supported in PowerSimulationsDynamics.jl. If a BranchTrip isolates a generation unit, the system may diverge due to the isolated generator.

Arguments:

  • time::Float64 : Defines when the Branch Trip will happen. This time should be inside the time span considered in the Simulation
  • branch_tipe::Type{<:PowerSystems.ACBranch} : Type of branch disconnected
  • branch_name::String : User defined name for identifying the branch
source
PowerSimulationsDynamics.ControlReferenceChangeType
mutable struct ControlReferenceChange <: Perturbation
+    time::Float64
+    device::PowerSystems.DynamicInjection
+    signal::Symbol
+    ref_value::Float64
+end

A ControlReferenceChange allows to change the reference setpoint provided by a generator/inverter.

Arguments:

  • time::Float64 : Defines when the Control Reference Change will happen. This time should be inside the time span considered in the Simulation
  • device::Type{<:PowerSystems.DynamicInjection} : Dynamic device modified
  • signal::Symbol : determines which reference setpoint will be modified. The accepted signals are:
    • :P_ref: Modifies the active power reference setpoint.
    • :V_ref: Modifies the voltage magnitude reference setpoint (if used).
    • :Q_ref: Modifies the reactive power reference setpoint (if used).
    • :ω_ref: Modifies the frequency setpoint.
  • ref_value::Float64 : User defined value for setpoint reference.
source
PowerSimulationsDynamics.GeneratorTripType
mutable struct GeneratorTrip <: Perturbation
+    time::Float64
+    device::PowerSystems.DynamicInjection
+end

A GeneratorTrip allows to disconnect a Dynamic Generation unit from the system at a specified time.

Arguments:

  • time::Float64 : Defines when the Generator Trip will happen. This time should be inside the time span considered in the Simulation
  • device::Type{<:PowerSystems.DynamicInjection} : Device to be disconnected
source
PowerSimulationsDynamics.LoadChangeType
mutable struct LoadChange <: Perturbation
+    time::Float64
+    device::PowerSystems.ElectricLoad
+    signal::Symbol
+    ref_value::Float64
+end

A LoadChange allows to change the active or reactive power setpoint from a load.

Arguments:

  • time::Float64 : Defines when the Load Change will happen. This time should be inside the time span considered in the Simulation
  • device::Type{<:PowerSystems.ElectricLoad} : Dynamic device modified
  • signal::Symbol : determines which reference setpoint will be modified. The accepted signals are:
    • :P_ref: Modifies the active power reference setpoint.
    • :Q_ref: Modifies the reactive power reference setpoint.
  • ref_value::Float64 : User defined value for setpoint reference.
source
PowerSimulationsDynamics.LoadTripType
mutable struct LoadTrip <: Perturbation
+    time::Float64
+    device::PowerSystems.ElectricLoad
+end

A LoadTrip allows the user to disconnect a load from the system.

Arguments:

  • time::Float64 : Defines when the Generator Trip will happen. This time should be inside the time span considered in the Simulation
  • device::Type{<:PowerSystems.ElectricLoad} : Device to be disconnected
source
PowerSimulationsDynamics.NetworkSwitchType
function NetworkSwitch(
+    time::Float64,
+    ybus::SparseArrays.SparseMatrixCSC{Complex{Float64}, Int},
+)

Allows to modify directly the admittance matrix, Ybus, used in the Simulation. This allows the user to perform branch modifications, three phase faults (with impedance larger than zero) or branch trips, as long as the new Ybus provided captures that perturbation.

Arguments:

  • time::Float64 : Defines when the Network Switch will happen. This time should be inside the time span considered in the Simulation
  • ybus::SparseArrays.SparseMatrixCSC{Complex{Float64}, Int} : Complex admittance matrix
source
PowerSimulationsDynamics.PerturbStateType
function PerturbState(
+    time::Float64,
+    index::Int,
+    value::Float64,
+)

Allows the user to modify the state index by adding value. The user should modify dynamic states only, since algebraic state may require to do a reinitialization.

Arguments:

  • time::Float64 : Defines when the modification of the state will happen. This time should be inside the time span considered in the Simulation.
  • index::Int : Defines which state index you want to modify
  • value::Float64 : Defines how much the state will increase in value
source
PowerSimulationsDynamics.SimulationMethod
function Simulation
+    ::SimulationModel
+    system::PowerSystems.System
+    simulation_folder::String
+    tspan::NTuple{2, Float64},
+    perturbations::Vector{<:Perturbation} = Vector{Perturbation}();
+    kwargs...,
+end

Builds the simulation object and conducts the indexing process. The original system is not modified and a copy its created and stored in the Simulation.

Arguments:

  • ::SimulationModel : Type of Simulation Model. ResidualModel or MassMatrixModel. See Models Section for more details
  • system::PowerSystems.System : System data
  • simulation_folder::String : Folder directory
  • tspan::NTuple{2, Float64} : Time span for simulation
  • perturbations::Vector{<:Perturbation} : Vector of Perturbations for the Simulation. Default: No Perturbations
  • initialize_simulation::Bool : Runs the initialization routine. If false, simulation runs based on the operation point stored in System
  • initial_conditions::Vector{Float64} : Allows the user to pass a vector with the initial condition values desired in the simulation. If initialize_simulation = true, these values are used as a first guess and overwritten.
  • frequency_reference : Default ReferenceBus. Determines which frequency model is used for the network. Currently there are two options available:
    • ConstantFrequency assumes that the network frequency is 1.0 per unit at all times.
    • ReferenceBus will use the frequency state of a Dynamic Generator (rotor speed) or Dynamic Inverter (virtual speed) connected to the Reference Bus (defined in the Power Flow data) as the network frequency. If multiple devices are connected to such bus, the device with larger base power will be used as a reference. If a Voltage Source is connected to the Reference Bus, then a ConstantFrequency model will be used.
  • system_to_file::Bool : Default false. Serializes the initialized system
  • console_level::Logging : Default Logging.Warn. Sets the level of logging output to the console. Can be set to Logging.Error, Logging.Warn, Logging.Info or Logging.Debug
  • file_level::Logging : Default Logging.Info. Sets the level of logging output to file. Can be set to Logging.Error, Logging.Warn, Logging.Info or Logging.Debug
  • disable_timer_outputs::Bool : Default false. Allows the user to display timer information about the construction and initilization of the Simulation.
source
PowerSimulationsDynamics.SourceBusVoltageChangeType
mutable struct SourceBusVoltageChange <: Perturbation
+    time::Float64
+    device::PSY.Source
+    signal::Symbol
+    ref_value::Float64
+end

A SourceBusVoltageChange allows to change the reference setpoint provided by a voltage source.

Arguments:

  • time::Float64 : Defines when the Control Reference Change will happen. This time should be inside the time span considered in the Simulation
  • device::Type{<:PowerSystems.Source} : Device modified
  • signal::Symbol : determines which reference setpoint will be modified. The accepted signals are:
    • :V_ref Modifies the internal voltage magnitude reference setpoint.
    • :θ_ref Modifies the internal voltage angle reference setpoint.
  • ref_value::Float64 : User defined value for setpoint reference.
source
PowerSimulationsDynamics.Simulation!Method
function Simulation!
+    ::SimulationModel
+    system::PowerSystems.System
+    simulation_folder::String
+    tspan::NTuple{2, Float64},
+    perturbations::Vector{<:Perturbation} = Vector{Perturbation}();
+    kwargs...,
+end

Builds the simulation object and conducts the indexing process. The initial conditions are stored in the system.

Arguments:

  • ::SimulationModel : Type of Simulation Model. ResidualModel or MassMatrixModel. See Models Section for more details
  • system::PowerSystems.System : System data
  • simulation_folder::String : Folder directory
  • tspan::NTuple{2, Float64} : Time span for simulation
  • perturbations::Vector{<:Perturbation} : Vector of Perturbations for the Simulation. Default: No Perturbations
  • initialize_simulation::Bool : Runs the initialization routine. If false, simulation runs based on the operation point stored in System
  • initial_conditions::Vector{Float64} : Allows the user to pass a vector with the initial condition values desired in the simulation. If initialize_simulation = true, these values are used as a first guess and overwritten.
  • frequency_reference : Default ReferenceBus. Determines which frequency model is used for the network. Currently there are two options available:
    • ConstantFrequency assumes that the network frequency is 1.0 per unit at all times.
    • ReferenceBus will use the frequency state of a Dynamic Generator (rotor speed) or Dynamic Inverter (virtual speed) connected to the Reference Bus (defined in the Power Flow data) as the network frequency. If multiple devices are connected to such bus, the device with larger base power will be used as a reference. If a Voltage Source is connected to the Reference Bus, then a ConstantFrequency model will be used.
  • system_to_file::Bool : Default false. Serializes the initialized system
  • console_level::Logging : Default Logging.Warn. Sets the level of logging output to the console. Can be set to Logging.Error, Logging.Warn, Logging.Info or Logging.Debug
  • file_level::Logging : Default Logging.Info. Sets the level of logging output to file. Can be set to Logging.Error, Logging.Warn, Logging.Info or Logging.Debug
  • disable_timer_outputs::Bool : Default false. Allows the user to display timer information about the construction and initilization of the Simulation.
source
PowerSimulationsDynamics.execute!Method
execute!(
+    sim::Simulation,
+    solver;
+    kwargs...
+)

Solves the time-domain dynamic simulation model.

Arguments

  • sim::Simulation : Initialized simulation object
  • solver : Solver used for numerical integration. Must be passed correctly depending on the Type of Simulation Model
  • enable_progress_bar::Bool : Default: true. Enables progress bar for the integration routine.
  • Additional solver keyword arguments can be included. See Common Solver Options in the DifferentialEquations.jl documentation for more details.
source
PowerSimulationsDynamics.get_activepower_branch_flowMethod
get_activepower_branch_flow(
+        res::SimulationResults,
+        name::String,
+        location::Symbol,
+)

Function to obtain the active power flowing through the series element of a Branch. The user must specified is the power should be computed in the :from or to :bus, by specifying a symbol.

If :from is specified, the power is computed flowing outwards the :from bus. If :to is specified, the power is computed flowing into the :to bus.

Arguments

  • res::SimulationResults : Simulation Results object that contains the solution
  • name::String : Name to identify the specified line
  • location::Symbol : :from or :to to specify a bus
source
PowerSimulationsDynamics.get_activepower_seriesMethod
get_activepower_series(
+        res::SimulationResults,
+        name::String,
+)

Function to obtain the active power output time series of a Dynamic Injection series out of the DAE Solution.

Arguments

  • res::SimulationResults : Simulation Results object that contains the solution
  • name::String : Name to identify the specified device
source
PowerSimulationsDynamics.get_field_current_seriesMethod
get_field_current_series(
+        res::SimulationResults,
+        name::String,
+)

Function to obtain the field current time series of a Dynamic Generator out of the DAE Solution.

Arguments

  • res::SimulationResults : Simulation Results object that contains the solution
  • name::String : Name to identify the specified device
source
PowerSimulationsDynamics.get_field_voltage_seriesMethod
get_field_voltage_series(
+        res::SimulationResults,
+        name::String,
+)

Function to obtain the field voltage time series of a Dynamic Generator out of the DAE Solution.

Arguments

  • res::SimulationResults : Simulation Results object that contains the solution
  • name::String : Name to identify the specified device
source
PowerSimulationsDynamics.get_frequency_seriesMethod
get_frequency_series(
+        res::SimulationResults,
+        name::String,
+)

Function to obtain the frequency time series of a Dynamic Injection out of the DAE Solution.

Arguments

  • res::SimulationResults : Simulation Results object that contains the solution
  • name::String : Name to identify the specified device
source
PowerSimulationsDynamics.get_imaginary_current_branch_flowMethod
get_imaginary_current_branch_flow(
+        res::SimulationResults,
+        name::String,
+)

Function to obtain the imaginary current flowing through the series element of a Branch

Arguments

  • res::SimulationResults : Simulation Results object that contains the solution
  • name::String : Name to identify the specified line
source
PowerSimulationsDynamics.get_imaginary_current_seriesMethod
get_imaginary_current_series(
+        res::SimulationResults,
+        name::String,
+)

Function to obtain the imaginary current time series of a Dynamic Injection series out of the DAE Solution.

Arguments

  • res::SimulationResults : Simulation Results object that contains the solution
  • name::String : Name to identify the specified device
source
PowerSimulationsDynamics.get_jacobianMethod
function get_jacobian(
+::Type{T},
+system::PSY.System,
+sparse_retrieve_loop::Int = 3,
+) where {T <: SimulationModel}

Returns the jacobian function of the system model resulting from the system data.

Arguments:

  • ::SimulationModel : Type of Simulation Model. ResidualModel or MassMatrixModel. See Models Section for more details
  • system::PowerSystems.System : System data
  • sparse_retrieve_loop::Int : Number of loops for sparsity detection. If 0, builds the Jacobian with a DenseMatrix
source
PowerSimulationsDynamics.get_mechanical_torque_seriesMethod
get_mechanical_torque_series(
+        res::SimulationResults,
+        name::String,
+)

Function to obtain the mechanical torque time series of the mechanical torque out of the DAE Solution.

Arguments

  • res::SimulationResults : Simulation Results object that contains the solution
  • name::String : Name to identify the specified device
source
PowerSimulationsDynamics.get_pss_output_seriesMethod
get_pss_output_series(
+        res::SimulationResults,
+        name::String,
+)

Function to obtain the pss output time series of a Dynamic Generator out of the DAE Solution.

Arguments

  • res::SimulationResults : Simulation Results object that contains the solution
  • name::String : Name to identify the specified device
source
PowerSimulationsDynamics.get_reactivepower_branch_flowMethod
get_reactivepower_branch_flow(
+        res::SimulationResults,
+        name::String,
+        location::Symbol,
+)

Function to obtain the reactive power flowing through the series element of a Branch. The user must specified is the power should be computed in the :from or to :bus, by specifying a symbol.

If :from is specified, the power is computed flowing outwards the :from bus. If :to is specified, the power is computed flowing into the :to bus.

Arguments

  • res::SimulationResults : Simulation Results object that contains the solution
  • name::String : Name to identify the specified line
  • location::Symbol : :from or :to to specify a bus
source
PowerSimulationsDynamics.get_reactivepower_seriesMethod
get_reactivepower_series(
+        res::SimulationResults,
+        name::String,
+)

Function to obtain the reactive power output time series of a Dynamic Injection series out of the DAE Solution.

Arguments

  • res::SimulationResults : Simulation Results object that contains the solution
  • name::String : Name to identify the specified device
source
PowerSimulationsDynamics.get_real_current_branch_flowMethod
get_real_current_branch_flow(
+        res::SimulationResults,
+        name::String,
+)

Function to obtain the real current flowing through the series element of a Branch

Arguments

  • res::SimulationResults : Simulation Results object that contains the solution
  • name::String : Name to identify the specified line
source
PowerSimulationsDynamics.get_real_current_seriesMethod
get_real_current_series(
+        res::SimulationResults,
+        name::String,
+)

Function to obtain the real current time series of a Dynamic Injection series out of the DAE Solution.

Arguments

  • res::SimulationResults : Simulation Results object that contains the solution
  • name::String : Name to identify the specified device
source
PowerSimulationsDynamics.get_setpointsMethod
get_setpoints(sim::Simulation)

Function that returns the reference setpoints for all the dynamic devices.

Arguments

  • sim::Simulation : Simulation object that contains the initial condition and setpoints.
source
PowerSimulationsDynamics.get_state_seriesMethod
get_state_series(
+    res::SimulationResults,
+    ref::Tuple{String, Symbol};
+    dt::Union{Nothing, Float64, Vector{Float64}} = nothing
+)
+end

Function to obtain series of states out of DAE Solution.

Arguments

  • res::SimulationResults : Simulation Results object that contains the solution
  • ref:Tuple{String, Symbol} : Tuple used to identify the dynamic device, via its name, as a String, and the associated state as a Symbol.
source
PowerSimulationsDynamics.get_voltage_angle_seriesMethod
get_voltage_angle_series(
+    res::SimulationResults,
+    bus_number::Int
+)

Function to obtain the voltage angle series out of the DAE Solution.

Arguments

  • res::SimulationResults : Simulation Results object that contains the solution
  • bus_number::Int : Bus number identifier
source
PowerSimulationsDynamics.get_voltage_magnitude_seriesMethod
get_voltage_magnitude_series(
+    res::SimulationResults,
+    bus_number::Int
+)

Function to obtain the voltage magnitude series out of the DAE Solution.

Arguments:

  • res::SimulationResults : Simulation Results object that contains the solution
  • bus_number::Int : Bus number identifier
source
PowerSimulationsDynamics.small_signal_analysisMethod
small_signal_analysis(
+        sim::Simulation,
+)

Returns the Small Signal Output object that contains the eigenvalues and participation factors.

Arguments

  • sim::Simulation : Small Signal Output object that contains the eigenvalues and participation factors
source
PowerSimulationsDynamics.summary_eigenvaluesMethod
summary_eigenvalues(
+        sm::SmallSignalOutput,
+)

Function to obtain a summary of the eigenvalues of the Jacobian at the operating point. It returns a DataFrame with the most associated state for each eigenvalue, its real and imaginary part, damping and frequency.

Arguments

  • sm::SmallSignalOutput : Small Signal Output object that contains the eigenvalues and participation factors
source
PowerSimulationsDynamics.summary_participation_factorsMethod
summary_participation_factors(
+        sm::SmallSignalOutput,
+)

Function to obtain the participation factor of each state to each eigenvalue. It returns a DataFrame with the participation factors of each state to all eigenvalues.

Arguments

  • sm::SmallSignalOutput : Small Signal Output object that contains the eigenvalues and participation factors
source
diff --git a/previews/PR383/assets/SoftwareLoop.jpg b/previews/PR383/assets/SoftwareLoop.jpg new file mode 100644 index 0000000000000000000000000000000000000000..5de80cb628ba767dfb87b35a7d3908f13affda31 GIT binary patch literal 170340 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%0A0@0!1 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 a_EE(Lkc;~zV2Hw;m}~zonTq~3@qYjvi}FhV literal 0 HcmV?d00001 diff --git a/previews/PR383/assets/active_ren.png b/previews/PR383/assets/active_ren.png new file mode 100644 index 0000000000000000000000000000000000000000..46446a194170afe479bddbe468f453c0944fdc8a GIT binary patch literal 482725 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ÂVn=Lz5|pxi^nfKI;ytCu-p;L~xO1Z~rh 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

8n+PJ-s$^Uf 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 A$^ZZW literal 0 HcmV?d00001 diff --git a/previews/PR383/assets/reactive_ren.png b/previews/PR383/assets/reactive_ren.png new file mode 100644 index 0000000000000000000000000000000000000000..2efc003b0066cc9e644208c0b728591f050d64bc GIT binary patch literal 492727 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ΜU7vaO&}bNUqQX7(~Ar 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%0AfYTr)nQ6H??eOaUknyF*@uJSsnS9(n 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�NW?;d>uq%T=DY>J_&+>K!uqEt1-mOt7?N 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�O~dP)R3}9 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

3pFqt0mNa; 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

#-WHD7kTKJKY;YsjXpqFSqHg`#_B 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

  • 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 + // MIT License + function parseUri (str) { + var o = parseUri.options, + m = o.parser[o.strictMode ? "strict" : "loose"].exec(str), + uri = {}, + i = 14; + + while (i--) uri[o.key[i]] = m[i] || ""; + + uri[o.q.name] = {}; + uri[o.key[12]].replace(o.q.parser, function ($0, $1, $2) { + if ($1) uri[o.q.name][$1] = $2; + }); + + return uri; + }; + parseUri.options = { + strictMode: false, + key: ["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"], + q: { + name: "queryKey", + parser: /(?:^|&)([^&=]*)=?([^&]*)/g + }, + parser: { + strict: /^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/, + loose: /^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/ + } + }; + + $("#search-form").submit(function(e) { + e.preventDefault() + }) + + // list below is the lunr 2.1.3 list minus the intersect with names(Base) + // (all, any, get, in, is, only, which) and (do, else, for, let, where, while, with) + // ideally we'd just filter the original list but it's not available as a variable + lunr.stopWordFilter = lunr.generateStopWordFilter([ + 'a', + 'able', + 'about', + 'across', + 'after', + 'almost', + 'also', + 'am', + 'among', + 'an', + 'and', + 'are', + 'as', + 'at', + 'be', + 'because', + 'been', + 'but', + 'by', + 'can', + 'cannot', + 'could', + 'dear', + 'did', + 'does', + 'either', + 'ever', + 'every', + 'from', + 'got', + 'had', + 'has', + 'have', + 'he', + 'her', + 'hers', + 'him', + 'his', + 'how', + 'however', + 'i', + 'if', + 'into', + 'it', + 'its', + 'just', + 'least', + 'like', + 'likely', + 'may', + 'me', + 'might', + 'most', + 'must', + 'my', + 'neither', + 'no', + 'nor', + 'not', + 'of', + 'off', + 'often', + 'on', + 'or', + 'other', + 'our', + 'own', + 'rather', + 'said', + 'say', + 'says', + 'she', + 'should', + 'since', + 'so', + 'some', + 'than', + 'that', + 'the', + 'their', + 'them', + 'then', + 'there', + 'these', + 'they', + 'this', + 'tis', + 'to', + 'too', + 'twas', + 'us', + 'wants', + 'was', + 'we', + 'were', + 'what', + 'when', + 'who', + 'whom', + 'why', + 'will', + 'would', + 'yet', + 'you', + 'your' + ]) + + // add . as a separator, because otherwise "title": "Documenter.Anchors.add!" + // would not find anything if searching for "add!", only for the entire qualification + lunr.tokenizer.separator = /[\s\-\.]+/ + + // custom trimmer that doesn't strip @ and !, which are used in julia macro and function names + lunr.trimmer = function (token) { + return token.update(function (s) { + return s.replace(/^[^a-zA-Z0-9@!]+/, '').replace(/[^a-zA-Z0-9@!]+$/, '') + }) + } + + lunr.Pipeline.registerFunction(lunr.stopWordFilter, 'juliaStopWordFilter') + lunr.Pipeline.registerFunction(lunr.trimmer, 'juliaTrimmer') + + var index = lunr(function () { + this.ref('location') + this.field('title',{boost: 100}) + this.field('text') + documenterSearchIndex['docs'].forEach(function(e) { + this.add(e) + }, this) + }) + var store = {} + + documenterSearchIndex['docs'].forEach(function(e) { + store[e.location] = {title: e.title, category: e.category, page: e.page} + }) + + $(function(){ + searchresults = $('#documenter-search-results'); + searchinfo = $('#documenter-search-info'); + searchbox = $('#documenter-search-query'); + searchform = $('.docs-search'); + sidebar = $('.docs-sidebar'); + function update_search(querystring) { + tokens = lunr.tokenizer(querystring) + results = index.query(function (q) { + tokens.forEach(function (t) { + q.term(t.toString(), { + fields: ["title"], + boost: 100, + usePipeline: true, + editDistance: 0, + wildcard: lunr.Query.wildcard.NONE + }) + q.term(t.toString(), { + fields: ["title"], + boost: 10, + usePipeline: true, + editDistance: 2, + wildcard: lunr.Query.wildcard.NONE + }) + q.term(t.toString(), { + fields: ["text"], + boost: 1, + usePipeline: true, + editDistance: 0, + wildcard: lunr.Query.wildcard.NONE + }) + }) + }) + searchinfo.text("Number of results: " + results.length) + searchresults.empty() + results.forEach(function(result) { + data = store[result.ref] + link = $(''+data.title+'') + link.attr('href', documenterBaseURL+'/'+result.ref) + if (data.category != "page"){ + cat = $('('+data.category+', '+data.page+')') + } else { + cat = $('('+data.category+')') + } + li = $('

  • ').append(link).append(" ").append(cat) + searchresults.append(li) + }) + } + + function update_search_box() { + querystring = searchbox.val() + update_search(querystring) + } + + searchbox.keyup(_.debounce(update_search_box, 250)) + searchbox.change(update_search_box) + + // Disable enter-key form submission for the searchbox on the search page + // and just re-run search rather than refresh the whole page. + searchform.keypress( + function(event){ + if (event.which == '13') { + if (sidebar.hasClass('visible')) { + sidebar.removeClass('visible'); + } + update_search_box(); + event.preventDefault(); + } + } + ); + + search_query_uri = parseUri(window.location).queryKey["q"] + if(search_query_uri !== undefined) { + search_query = decodeURIComponent(search_query_uri.replace(/\+/g, '%20')) + searchbox.val(search_query) + } + update_search_box(); + }) +}) + +}) diff --git a/previews/PR383/assets/synch_init.png b/previews/PR383/assets/synch_init.png new file mode 100644 index 0000000000000000000000000000000000000000..8dbf69a0a3371d89109124db9c3297c4e3a0f3fb GIT binary patch literal 36326 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
    W z+6ar@xSg*_B^yFT@pO*7q8rlGa-ARmZSO^Y-<-tL>Im#~KF${fXGD<92s z+`=Rqpq&FBk_aS8ccxKMX@pk5K95`)wT~+cts}s}E*>F~eheZ>j!)jceG9@L;V$Ol z7yT|vHL0jUcOHtgi-ZgDF2{^Rut9Uj%)%mve&5WdTYAKj(%+0bw&Q6d^Xfr0V}dg9 z9>BErlIqEMvd}Mak$+qi*{6<c7XMOkH_!Qq29RS5X~IdA(N_F*m970 z|MoQ~97HG-4)x%p+%g5N%Xo#QQssd|<@zdt09l~oBywK=2_m*z(w47rTqOEU0|?!1xHPN#UeG$NZ8_bPEYIf9g`CH7 zK`dIyO9xN@Z@_`1mgPy_(g95W*?q0ca+E>w)}RN)01HX zxk?6bdx++{LQkhBrm}j){&y^CX+sMJzvd7?^#R@jh)%nQ&;-))w2zyW5}zzkdRmz0 zTc&DuYCMw==TU~GtP=%b2$-jA`GE9tN3({5MMRsj(&b(_eCw^E)ZgLKY$s#3IIN<* zU;Utg#5Z81EDXyU*o6+Z>XGM2T>!p<&MgRi6eoJhh>?X)Y| zNFAuDa8-J+8$bi7ux{==O_rTQ&qd>ndP95roY>4gG8f4rDe}HH;P*-cFHiiG2rDU8 z2QkLYqQBD0AEwkVF{RZ*9fhGBTCbxS~TII=;o?+A*SQTmv2zr?uoAT610_q*) zlnyS!RK1t55RVX84&)*_UzmB|G_c&VDfe88oCvfn0?lDiL-m7Eq1g{!33hX$-#i!I znnmLx-|{hbZ@{UlS}9K=uV_ukHJZ&+s*C2N6c~}Jz0U|}x#z_7YU!%+bE?Lf`^&1> zl5mSN5IBGkh_VZ#n&)Q`>vXubk6+}Pf4es<=p~x-y`ZF2;Mu)Gi@qx>0`~@91h-r# z3U3Kgr3qs*dBHCu`}Ua?d^09~fM9;%GiO+vs@Jw2SDoxTLOPeL)_6=|>HS?M1FSAAt#?4zoI&0R zV30D50VWl!ke|P{`I`KEgo#nhG~+iu#}7e-STCo3>UQ#PU9a!5`!bzxn53H;P=pey zyA8x@On)q5=CAnBoaAw4;&ZhBRKrGM%3|D6Mh;tp_@^vKJKhv@s^_a8h`Fdtr3?}* zS)T;Ch!|$UkjVat}maT3ISz!r;~a0Ui6wp8x;= literal 0 HcmV?d00001 diff --git a/previews/PR383/assets/sys_init.png b/previews/PR383/assets/sys_init.png new file mode 100644 index 0000000000000000000000000000000000000000..2619bb949f2a5ed83be4a851b2d95b90def5aad6 GIT binary patch literal 204828 zcmeFa2UwJ6*DgB7fJ(KXR6#>jl&YX~P)IBw#YS%gK5h>DpFK0b7`h9x-FaJ)^|JwVU9j+@12AF5odRD*h_5P}?c!rjWg$jeg(4IT{ z(?$484})Pnw)H#s7q7|JG4R(mtF!7iFc`_3=)X;VgWISvn0=UYKb^Yl7%|fB;vd}D zxTRZA;4YOBuW(Yg+TLJ~AH7sE61Kk!jtTr#gVXWcCFLVIJ2`(y5edA?aOs?8TCmO| z6aUt_Q|9MrW2&|@SQbQ*V7Ng$7!$k}U2~m1?XZ<<9`wp=~k+v7rQ#G=W z(6HIO+^>n#T}dPI74o$IM&vIo3Kxz)6GXqdP9y6_N4xpXK?SNv?zEyz9*0gRL;7Eo zyeGB|t-UZ5lvtgq@A=uZIhB_r2gqGIp1d3obWFhl`UB_4Q=6EIMl2l%lB`BE9^!I^sL29r!~D zOVs9qQm1BFBpj_ApL47)yl5?)dJYi?eYEkG{w2BpxvGvkCt%t-I~=;Sb+XO`F*WNH z*cz+PjdzvKu?I=cwbU4!m{3JdS4)@jjKdoh5HM-rGW1L_Z+&XqL-p`XQ0j2lc=5c> zAPw`eA8p;&rlUjqO4nD%1!~fCrGvth9*p5WYTrX?_qRFf((EwN^n{R*H*eAU+HyyG z!&BpWnE@r-(k1m1$B#D__7A6(>V#xne?zsITP2x`IB|kIxDqZnhnS#Y6%X-}qG(*F zwt1a-Zih;s>wIAsZCb(@oBKkKo%TDV$w*Dh;%pw=>aeb#r|0G^A$_})Bz905;7JkiJt}_Fi^jz4Z9}6Svwn%Th^O{1)7Y zx;Sk2%5*h-mtCE~=zZ9aX>t@HKmacb7J&;4XWNugCVt=^oA+~;}>3$#2Uw0j9(h)SvbdK&> zPPzDGq;R|>yP2FRbl1P;|1)F%UtK!yZM!N>?d|P-dHwf_=kV|s3_cLB8p(JOVgR0p zsRiq|S7u{2Hmc*x61! zkX4wE=CX7>v*7i+eXZH1gfcG*>dL9bfoS^8w;1`?aGm9cUTxuU-EO};L7;E$T>pK) ztjr;{ajTr9AP14Q#uqMkkZx6@NBP|+ZyDrU_2302-rrFQ=_}vD!A9BX*c*^(W@$;k znN`?=Ch`TlOEOOq{W{1{GsL0Y`V7-O2`8Jl$ChrxntdF)c8yoCOZW5xw?&@2b1=AX zb-s&(vPz`aKa(apZ%8{uGnbFXJKU+&INrxIm|NAi>g8=tVy44*=WeO6z`#HOhlUGh zf(@dj-0)@UhLKl7EK67Inbe*dT~L<-Uxn>{5+6ksdEw#dM)s|T%vTmBv%7R=&+sHK zCh4vop*bHRk}((7sN29_G$EsYLRh$2=VQ_+w*hbYMPg|(qr54nSe`HcQBgm5>76-N z!zsBTeWC*qmt2BeMl#L}!iyiZEtw3kyxaH74o;Iar``Zz->R%?Db0{(ts4qV_l}#Y zj2<6&eSeqO!_xsri1{}Ld_4uLL>|tCg+HC|bP46uukhcNW(0zcWVOhP*7?V1jwCGmUtzpGBYWOn`R`PKo>g=_b9Zl$B%=ZlHKY3 z?M&C@(Og2=wnGuhA^ar^SDEtWT1|;ILk&-`dSLd!VTtt9`~BE1hQKkgdQH)fRQerMFvWxP0-hhC)H!( z?)Ll}vhho6mh_4uJ>KcJPTi!myP*qrrE3q)5Lvc*s!p*O&G{&ad>%hqR+aGsfl^C@ znG%CBH}NNDyRM#+mzN)W9Sxyd7ks6_#1xS~v@hJUgqaer+TItc%TB3-Tb-?O>I+t_ zv;nDNW0qn!lN4KaW`ObU7mS}LPNc-LZFxX?U0o*&ZW5MS)|cim@yVrlU(cGidDi+& zYDJFLgRZkly1Yd2yxyMmO47wVy3QZs1k#ts3PTOxf)wBe<{&d^-3$&1A5uIB-it+y zQOoMopm(9L{YZ;I`n6YoWJ-Wd;ZNqN;uZ)T_>+#;<~tm8nG(iqySmob=6Or57mwu+ zL{0p*gY$HQ&coQ)SROyRy)2aW?ba`xb9V$fIO=G=f7Ixb16jhoqxzMZad8J|+N}t* z2KiWmuRyv@Uu7nnw7V-)LP;B=uB)|r31l5uy~U|M11E5{KAwB+TVi?ER|ce2O~Sz3 zMm>2Sbk?uM@w*wbjwCMQrxPz9fjp^`ZhjHT-#}GWmC4A$qBBz!>0V~w*F#ZTBk83U zVtA6Iuc9cdo~oAd15L7SX$j93IyNTC$4b#UA?D`h*qE#=LE9+Y+9D}GU=o>Y(dQi97-*Bk4@l1yM>Qd{ao0POih{BzY55rYygi9|zVY6$v5S!&V`HpN4 zgCiq6L@DzS*u@5-aqgp`X1>*KV>iIKoR32mq6*e>wat=~ZG5!HOx4ub zcv~?A^`5(ZQ+-52S#OZEP6z~g3#Jyh_A&!0xt&Ld;48RjBtQrTPDI|^hR(TzN-pp* zNOE)XCkQpMvP8z!e&Nz5#i!TTR&y8FrQT4|v8gS0toL%Pw`AtVFQv5(8MbB_R%fya zUO&&YH9mKVb1n_Hn#A)WfK}DSXDF+qwswbD4}TZ3e@}R~SI9!vyRrC{4G>Z((Mn0n z!jLL(?d9*}`~ZB7fqF6iy5onq&`QSHp+@fH+J=V9A#i=@$hj;ecl&7A+-7QL$A;(H zEYpgUZgZXq>8lLp9xi@%5V<}72=}EA22Rg+t9pB~OG@2Mm+rfJ$wc?sK%@g*BxHJ7 zJRG={NdW<~mh>89BclYjV3csuj6b;egmmehz$_Yd1Tw6O{vFiBBSuX?+D3!4Oad`H zY5DzO0_k8InQX!qT1+iaD$2&=*4GR~Ejx<@(yeo(1M(r>x8Y`GrcwwmEpW8-OA_+-%8AU_>hx^ z&AtVjt(xFI_<{rHs?MjG!$Sj+P251#v?;kYlnLx|@G`DVV!r)`fhcZmrPY+wpu(Kg z-l##0YJ&&rJ6;W$NxDyl{)>=43P!E%l&1sP)I%&w7Oyicd{Dx%h> zH7B=>%|jjUo-^udg)|z*IIGq_R^TSu4LA9Cnx^JI=2@N{W~4l*7@;;Ul|}Ue)G*Y$ z7u6D-?@_`LF3~3GGDj2H8z`R2!^o?_KsndxGM?EEm5qrm=+mE7IF+ZZt&LC?>&LDU z0(P2M-0iuAok{EryVEswU;Z+=xJ=Mv&9*MjB-J#!&CNP4=IXxmm*Xyefbw?KEtB_( z^vr~h{j(isygfy4^xy5nL4hY=_3A+A-9GX0qFt2zRgs$Gnr6nvhlxJaj7?GW9MLAd zFM{ZcH7)WF*s`#&R8B4Q2BkT)k?ltLrtaqr#?Rx$U+qasUiL5_hcbvS?QKoX_8bAY zbD2o}!yO=oF(z`2w>Uk}tb@(%u&0hhw|k|vxnvI|UaGL50DrR79UKTL3q;+5xm4$w zmY<%w-Pzo@G&joXd??ECs(PpOi@l^gYgXsLy%XjdZyh07#h2|?)!HEjnWm-s+*pS= z&G~x*u{@fZnuL?pQIduEqhoFUTb>^GCTl2ljmEdP_*K^G1xOaMAtU6xwTG7~jR`EK z*c4S*WW_+rSM$ca3rxsB)NN@-zzUU=Rix4YvQc>^k?GfhL>nj&v**)~mxxL2;UG#C z;^rSKMzV;ZvRhpTZYy?Q#GHwOf`UQX(x5NABAfNI9etN)yXXP}IF@qbp@b-%OXM)1 z2j`)uPRD%gQKvaM%AchD>a>1vXh?24wY9aiGBZ1SwzrM?WUg6zUWV%;O7c~fiMneS zL!u!#63R#&p6JyP!`wMpr|CDs#Hs9N9qP?4WBG=ILPA1jquOyh*q6W{@Z!U5x#RJx z?B>TI5^z`=7K+2QE}j^&YE3GwY44oTabN74;zc?r>V=fZt#y1y*&(e3OOZ7}I&{y< zRNieMd0~N@HL4uM&Ov204ju^`)EGHht|&fwdF+R~wvZRz(Oj^8BK10Oeoq4!OS;;P z8`FoD_SU*V_sNctTqeaVZ@}yPd6E35O|*Z0gzQe>&%c=K{3Ee{Bu19N|BefD{GfXR zB=BwJd>G7$7Y3o)dvvaJeC(`vuzao0XsBsy?92ZSV`d5Q79Y5x&-zieOB}TiSW0q{y5nkr!ga0;DV*Qg8xt||sIJ{%uzsR* z5n&W-lVxyp>CJ1q*ZsB=drP_ z(k?u?w}=_JZvXdViOF#VeeF#c_8gU@D^URAO98(|G*&Cj|3+szn$&X81#Q4;xchSm-Y<{ZT|1xee(43t#e4US~#N zjI1isg9h9c(D)aq>FCg|z^(LhV7ud`SDzSs1Y&l}f9(sFSYCj8=Lv)52NJJz*QP?P zs#cfhL#_4op}j8QnC>6Sr%koluqxtkFO1;Ku^->5y`cD?U9A75W^{=#DZ3C@{ra_c zbn37eTfXgwi_8e=ji<6|ed}ViFgrrN3zmoK- z?Us*5px*NL_4q{;Bb%K^$4LL1@SZV4LqnokvmH|&I*(GM*lx!>KomTfRqAre2tbu~Xs$B1CT-q#1#}WNER^$Fs5XZCF4j4+>j$@{C`< ze*Iv(mUgoNdHxTx(Mq)|SD2WXnGg3~Qj(nYmMR5H3bwYe0MLiwY?G#?k7w6Pzpz33 zVscfKq-F(x&fIPef3&M^)AXDBKAsI4V}H#@e4)w)ldy_{?=V3r;QprSt{WN>f}8C2 z1{ST(wHZjbE!i?9BqsWEa<zz-x8>vfen_mP_c#&(A+LrWGjM<(lQ6Ry?P{WR%<1 z^YU$$Au-RgtHg46>C=VUyjxAjb?>-3vrB><+t?&Dd46A{YRR+pob<3HNggupkt zUh7r;{nr<7!1;RghYI+5;e3QLn4u6!>SSl<>+LLdNx9;jYuUwTY3=SV)o$&W2GDAJ zSyEbwMn&X!BcNF-^I(Y9u~tJCmxuobyyQm(?%lgLJUqNl|K9!k+msBhUj2bB-*wT3 z8HS^TlUJ@7u(7k#ZFZR-n;lv79c$0uC8g)?UgB@3?dJ(YxRA+4RbAT6J&mJ-gCZ_- zX3X?#B6=Odppg%kffycztq{%*2YTNI%+R+OhQ7d zA}WeKZKsmAxWm}pP*G`Vj#TG?^?jzMrUnvDQ`bn>aG)xZdNa(&C+t67`Jjyium5m1 zc3d=W&B-YMDf5p*2M<;*0G5ZBW@dIaI3qDpK;Yx?#wlDsR7Hv#XsM}ft$v(3d`u_L zYClbcgj1%!_&SFKZp{@*u6vR^X~A@PZ$NV7P~rGYYJFvT%DcY4zGnrr#5rCxtw>g8 zVFzDtO^q_s;D-+xRTD4Ui(P~xOt9EkID)XQwl;4sOem4cdtRdZdEvG)}6a(~xzZ3vI-YYp) zR#tMfxZx@knjabG4h#MTW9$1+O-R-XJ?n~U%J$o2BHdX zsjamJX&qx1vwcb8d%zjHwr$v}N*q3M;siceQ9&U%BXw9{0;X)i8KtGtq)?3HWetN( zo$Y$f1rFmnPQ$lu-Re0vvhutzGxK6asII#xjkj*m!-o&C-GH>{6d}uNp??Ez>x)oD zPVQV)E!y)gL^(M-i)o!j5fY}I__DIHlgvqpRGV+!ylK#$Wf;^*>6ifWQgvUctGg(o zxzJHkRK!M!=7Yz^Ryy2~tkwYVnfZu(xb!<4Ho}tK!WQjZ(%0cUu0zkB{Uidgpx|S4 zG&J6D(!1!Tefsn=$+t~S*)RjTOV`(PVgQ8I3n)Yb3D<@6 zTr#HKW9Hk)YXsr;tjtVI5=oAnTQ&8rwVvKSnx}1}R@bbo()~L+IzqnlSZ@Z*y=dms zrwr~_2RNSe_4OSi!IWbX6ORFW)Yp^XN3Y3DmR1zc*Jhq1|K-uq4T$YNZAB#|zwp%I z0)N$1t!*R?CMOOhZ7C=$ELO)z9L&kdsiaod(V=VJy++5!%j@GAs^k0w92p&)D`XM? zihDRn=kgd2*{Bvh4pq$#HxuQf!osK=l$-5DrV#IeB&W+)u2ewjg0k>Yg-v>)Ev>Co z!UaV|S{0EvlhBZm%7u5g_(6y9IS(J|o0%p1`_XgExsyZn1aIayNxWQhQ*}$(tE7(~ zze2h?%j2cGq(hOi90394im@>ZA|0md0n`gq1Qit(yy5uD&64zV_;{7n&CLd6wjac_N13yN%xnPmBoT>Sv@K(Ek!1%a}?7po>5$^ z9c6E4cU{I0LiXHf#(!oVK=hCnIKG1~dq!`c+g_3B|tSs?^lf*lvJuI+47t zzP`SJg!4=SBjQS8Fx}V<)EnfqLE@m)@<`T{%;U$8@pcLzEl%9}au-oVLV^t{vLpI9 z9F7T)C7Ej&%zF0n{J0+n9FJFDyBSMLRjZ}fU75D(_5ilF;>8Q1__fxp(m+R;==|a5vkz7 z^F4+0bk4kgf6b8+C8&Tfv}X46^CMLoBg4bgo6+q$j)5)&Qsy14BF7By3}b-J3YmoC zP;VZ!7iVK;W##Twa-Z5|O6E36sBGXs|237Ec%-STOYa~cDymNMssJR^s3 zYi?GpsH#%r2jGyggyTd^Q83g%zT)AidIVf|1=M! zD{&K=1h-L55+!2&1C2M%!#^m<&(koYIg09 zEW3_VCK*3GXi~rXVQt7<6j4IQ>KBa*Lcf(~BqyBX-uhtEZT0RV)8g^M&e<7rb)r9hmsQW#%1M1+0j!Za+51Aq7ez8JK4Cbm z1N2d$KsM213=FrP3#nYW;^P&u+@DeAK}vFM}E>Oh;bpV{8~-zooHF24K^M-)yVaoP0sXZf=#4G0Cd?f`|NR*d-ht#_u{8L6`7@G?XHO z4T_Os#{+sS?L(Q4T|3+I8akWxB9@&Jrg`-T&)@sKWF|z@VwlwQ9kVl$a=U3Q)E@%{oub+j49N zpeIOoBOmw;4x=M$@A%gq)JD!YQGR=9opX<$-bS*IiXrbZ_f(Enz=4e}JA5jtLA$_G-2 zY&rbysEV+#FlDQ{bBE$GfGHIlqsHTVduV7#Xl}5UaP>Qq=?MPUyR)JD!lPXv6mb*4 zw?ZLuamo`Uc{C(kAiw6O&6JPOZCPIV)$%GGu>WlF&@QH(j)oRmiF=?_w$=EX%;a;g zhoH?Zrw^6BY(RfJsXl| z-N`(szFftzHr9RB;x#aVcU^ZN&!Ax&8TF^i^@)@PKAi-uDRWlll%!qNq;WaS!Yqsb8N68k2W z&^XQ572xzTDFKgGofo%|Y4x%^!R z#JkS*Li#6L?n}#B=ZFYPUcdko4QOm^j720SW5k2yLKI`d**x7VRf%VU*x_t%N`Pfy zOp_ZX6FUJ!llTmvn8tQPxlGTAXhAHX&Ye^i1s@&@NkQa_?JnC)f4&zO%`)Z3o3-v# zAabTxVGZp)%-sbw=3f(-+e4|i(b zgEezXaqHAN5@}0bCGGWt#q|b zsAK|99jjNmy4JQ{ZwCZnKQDm*aE{(ymhRKx#_dmyFL5QT6w>MLaYwvpFTkcB3&4s> zz4@&Oyn`{#Ko72Hug@jxr4R9bURLX(OM?%GqX~%jaT@OzU3o{;Y3jYe&Q49pc-W}$ z<~f(*6=$n|^EGNpR$m%QOiWDAsJspRJpKSBiOHY1xPs-3SMZD_+o=L2rd|r|x%FIm zduJNx)#?_h`C1nBek0et?(=Ba(Ei|rI|>#9YDa?cce&4?Y*HwYT~dsp9X>NgG%YTp z&i3qb`(&U9G86$9omRpa+}t_+T#F8wa&3o>-KR@{7aMPlJVtkzY3jLN*s8!rwbsM2 zwm%@Pbj_LT9?;oXpzp;*r2`y6fvMm$*8>4Ck)ovlj)#(dTaGz(VJmNL`_3H4dIjM| z!B=ouR>yJD0f@xPg-EOpixLhEh$*6z0WNtdcM@(;{3N2hQINK4KK!g3G!jHpUgkfbWwDi0_ z`1>63H^AvX5C8+H8(ev#Ic;^0Kv-!gEypc};Y`JV%Q!-Wretv3is5 zo*Ne-3je7-mztaOQuivX4)HTkDM>9}V_BXX)inAZ|2C=U2>xx`SX;X)^m>)8-Wr7Z z+_s8C!z+P~rO|fiCs7Hx+NHddkYNw4Q3JsDYsPiwLj1oR5 zlDQm#ZBj1+%LA0H5U2b$DKa|Upnj7&4}>gl^C;J;SG4WK1EE@fR3I~ESV630P9Vg} z_d-Y(H?(r@+4V*i3h}7tAHoH0Y|O(_pM0J_>S{p=ctCl#a8Fs(xPJ zv>s)^IuKgvJoT*Wan^8mV!J^!=X-q^b=1}=OTh-cZ-cPotzZ3dpe?cysACZou(9Ge z1Na(F<7C%rD&UJTolZB!0lTNLOnd-CwLT@_MFCdJWNgHV;Cu2Uz@ee0`~&p#|%F(S2_P~b?(;sO_ha{XgsBPbk=lO@)1>+?9>^%I1} zXjp;4WdszvRZX<$g6T<7k#QZwtUZr8O5FU^;N2I`cM7e|<(AS?#9ch>Kl7pfP(Uz_ z?)lY>DEPmDBJX~Y#Dx)XV+)Wb@1?@e7lMWOdO?pgJ_7_C+YQFOm2!${8*uNoQLYONhYAHIN<%ov^fMG-9X% z+M+-JT;ep(U8Y?nZY{GZd{%5sgvdnOpcq zp1)Wq09>?r3tMj5l$P7dNHP=3jpkwnV*$PwQUA#Eu8bTr;C>!v3~n?M{CE%G%n+9k)*>OkE~j z09eJ+RjZDmV37JmSjn&e)AH%VHi_AWOZ6>}6~gy+$ON%V;$K1*Xm88;{`|tT-6h@Y zL7b%v&-v@r7H{u!eZ3W@9E`ivqwgB4oY(C|UFZ06zn`}kx;(dy>mSEWM!AfEn}3r# zb!k4Zb9BC}nG2Nz9&Vn8{xtdhA{+RkHcrU@**peX^ar5uew`|54(*;!3x(-^+Tx&W2pwx)3gIV42T#C+w9|um)SnmXy7?=h zR?}{sDeKb8Odfx;c^0D|b1XVE)_-CtIY}$MJ5<|VorxKg%)-d0#f03?y$V=-B*qY7 z*Q72k7Lbl&ZWm;y0(C&{71+7Qs6Ed*Ru5J(%v$z9>TTXF!JW453!7|w*XR%R**Jw( zn{*V|%`!f<=x`1lx8DIc_s2^Y4cD|d$#x7p~!|Z?U~_bet*}o8`1LmeReI7 zQc{jR{dEZ{I{Y(-7m=c7SyL=6sgG@(?zr^aSVnn7pol-(YZV)llXD^f@i@8iQ2L>^ zsDt>%ez#!@!6R$%`h_lgk67+StVM@;#Z3uk`h+XNGDNYUlbVGM1*I>FnB%z#v@;O4 z<5=&BSYK`F1XA{$3P`;q82p(950WbVnei^^fH&cq$LDsRVYB{8q)sJ8!{;_y;t>$4 zW%DX9Dx#pEV2L_VdTn8E$93plILsWNoyo6u<1^DM92k0Vi?6lT&6hXbZ!avEnH{(4 zEOIhtlXRX5RJ4MbD6Pa}*bL-%n_bfR(IilVsVE?!Rp`BKfcZuaqaCZy9fWs8edLjeo6l3*51DES7mazRER4i@0SW8yJ|44JxwUtSl{; zgC$z$U!XXnJOwLp;wB%5TO{IcLXVmbwS-LM49y)_AT$-sf)DbI^x>W+c{kV>wv7{# zJqH$2_Ko)Z2xZo%D;0v9$M-0~?w^1jLHoXeITWhAthSg!BF!bTGC`yF~Z7d9+#PYUPDGPX{)wcFjbS>|C z^PlRGOjYJ;cOFi`{xpkh&5&H{#w@0ch6QQLBeZX1oVBG^4yZy6d~Umnp_NM&xyACVByNu z)FN362S)J=H96*OLa5ovpar{rKym4p^WO+oO9%!)`T)(&M%+G^p9xCiW9hrbQ^bb= z&`F!Nkc(T+71DvFT4b*eodYV0fruN5ECfUUN}>xY(7M464VdzwLaP^nhOcrBTwI|* z*xf@arG55JHm12BzuX0TP_Wmav1$y_OP_12d``#wJIFcDID?J(d1Y0JC9RpGWlq>1 z&o4t3orI$fW^q3}7A(y*_vlTyuwStxv=xk@OSO#xmMbXrPQKvapu#s#R|fULwKd&& zi*4=33sS2D{}MpKtW@~XLD*oVz-1I+nN7M;0TH_Vq)*Tv`~1ELDqnQQ{yaJ0;tnM? z9mj?6X@{|20!pgLGt_1Vr_K5AHZu*Az`g*;aax*{!~zH)bi4%gx}@V!T@o7uiSBa$ zJM*`h2mDu>ajU8?xdv^iH-M)DT?(sj;6IYSOB>b8PZ>{9sBx zfdegyj5#;){htmOzDU!*P=-OD&D(-Z+YfbCbS9>z_0XdEn8|*$TPV*G6YE+a@VKo# z+brb7;W}~3c`F1Xsxv~UyjhzJ!qHI3hwz-!hc$*;yM-=5OJ44fJM5J7?QPl2QN#~v zq`=fej@5+2QB`OUP5@ew#w7yCz&Zq}b`5$>ZPWmAj8L?MfRD{VG5s2B#xouP{|fUK zGuR?5d#X8ATYEQVgcBm-mZ292Mr^e6>noN_n|w3vx7#2qk=MPfsmYpi0a{cq0q7b= z_FEwAcx!0P#>T+9%qFUs3+j1RSg}a79qTRR#C!p0l_y28gNp}1yW$7B2OkE}#lMFr za;`Vy1$$w2wBXBdWKf)8!j?KPNU~9c*bo301^gPfVXQJ~+yHS`>nvts{f>e90;4qW zt~VOeD=Ygl?F_0N0e@Dv3hR)4JDM6A9!;X%6%+s*Ij^6gMneHN(-^YnxNM4+J1VJK z%yUh!6$S-!ycecS$_V1jhf~$z!u%08k+}gd*w1U1qR9S$;I1v8i29Z|c}7MSm|&`h z_yjCkBd|c&_e!7ly8qmw|9lh{o2cLP1IfXHlK-ajq_T0i= zL%|cBoCq%(!wxC7;(7*D;|(hA>fy*>m0!F>^*??ol9 z(6$XlInv2&^r8LyAr{G$lRH=rdkwjYPbVX{rH$ZZ+^|;G=)no|R)&L8(6#~-4G2Rg z0{}DB;LQm#u>#Nz5VHSJ_k8v{jDmcK0k*_l3(n?ouzc6&Bcv}(^zZn~V7Irhg{uBx zT1pD-p@)}`klQkP&wklq%(LefIRP{Rykn4;4qBpK{4TAfF zd)iA%-=GDXaS!vm3#eLl<|}0Q9|oNhA5do8pcp1}n51g7d`YPnkaM!9;F5B}{vSDg za3nlvSbh^7lie2FsK}OJ-ILd=BJNj|t`JLUD0--0=2`d3lp9Jft2eV?wqH}W72u|eU09Zg|bwm>(Q3VgP~l}(tK3vZ!e ze@_ujT}(|(WXb`4@F~}Aj8Wzyi4iT5(WbzhBp9gg$?5sFzAH9EJ>%-nVh>?Mlg~Do ztO@bKD20IrR{D{OGw7d*1VAETvm3_xbm*)aQVwJ76GIdEZvC(C$96+g@q8~pMP$oC zkaZ|e)cgUXm-aG~XQU|z4YzB4+|Ue^O}yMu3Q7T4_q^hOBqav2#T;!D!c-4 z1XPf*23Oos6g$k|9aIQCA;`Ln(JIXpUd->RU_6}DUtv6C*VtXJ2D=(HjzhP60@h{S zC4ndzX!eQ;k@XB4jRPQ+$vK9>z;FuIHb0KX0$-vh*}M7yS}#mNnuKvn-$Dyy1Ax0{ z|85gzEt-dje>I_?v{U>O7T_xm`X8*kYz(a=Om75ee|*N}BR*bTt78tvY+|-XWRL#x z_x;9Z9R=CXzsDH8NBUQ^s)`WBmIQM!z&tv#0?Yx@XsTKU`Y{qN=L_iJLfY~jW7Gtyxmp>9#X2ReA|0YUOJV18= z&nRza~nOg{T~a znm?;AkPurD`iIm|Ma?BrbqbZAj~4_QNE-IFq+?~7U}>u&*{1{Bq23W~G4`6scmzIu zulR|8NHM!i2%+GKsyx532wSqHpqF6l0!y>Eh4UkA!<1OIyu18ny@>nDg0g_^V2#ii zOdtR?9TtH~`AbnS{1ow;xQ_+3$96+Csi5Cy=nIU~$M9buAHaa@WkL*ke*StXraP=I zR^#ZFqmLQLk);EplF$lRZH9_`Ch{N&2K!x^o6Go~f>3SsVG=^u#)pz7IGwS?=+k~P*B71b!6Fg|hVP~)jDns2;smPab4+%y1 zWzweIQ?NE0y1`OtR44=(klJ^fF~75-L~Zgbj`km1IOZ~>I#-y&k-kx92Th~M@FkR| z!I+seTL-vQTQ=+*eR>UW20gojEiVE>&Ugfx2V7e%FQR4F6fkRg3ejmK3*_fF_BGL) z1m?qx>_mm8upqQS(i@RIudQ~iO9nuBgIvvHYe;!xV?cl^^fBi&OWob>t-%Ir5ZT-X zRn^c6U=K?&c;^N|Mvf%t-Y*z!-3U2SJUGRK*>5bu5nkvpE6z*6Q3Y-zRmVrWi;*F6 zfVd)qMPT5X-ij$~1pZ0=o9eLR+#@Myat&gP?e-U}I;-DT?DqQJQR9`@hEn?HHevK~ zVZdS5`HgL+<}&JCzqUnFEuLVx*zOPU(TcsW=n$C<4JYSm|FgZYaJ>7wO>^qQ&1p*X zD2wblf4S2UnrU^870ia-UZk2Cjv5;S>jqPSYh`p9R9^oz_mXTf7@HB8)yUCX!0CF_ z;4(5fL6@P9gg6oa&q!{Bv00UEN-Sd zc1ttVg+g{HL!0=XCP?EWHL*8+zJn2)GPv-VuTOk1Ebl;!RB2JLEtF)^j)0u5 zcZ9{$z9bh8>tpX%Y^Il}d2p&K8MxcAp|R1$^7GKWRp^Bs`pi@nK^z>X z5s>n9C^XN~m0o4?u%&+Eqzq$U1!Rnf5({WdVg-@9(F0bvL;zq=Ps+g)EKXxf z2uMg)R#q$)Mq5%la6=GFv7+a%!43lGTx{%-;1DTtz}E*qcY&CAn?V13joY zc>ep(`$Zesju+Qtl8QNb5FTSN+5y!1W9{uLE3TSRu!}2_z=)9{0AQ~s1Wp%T zGd~WeGk1FT?AMy@ok=$as(gGueE5)~wXE}|sw$@sU{>oD&?CfHIo!R7FZpV*S>^!S zcx>(ct2^dsM*+*8J$qWGU?v`mg@ql-z=+A|n;UIAvlar_@NskIv3E+A?;#5|cY@{M zHQOzIZ2vjF{(e|kK?mC4p?4L|6z5DT!FQE^K78K5CPA`Z%XBk~irRAk@O^A$1_Y-D zE49PTl7@_b?;ZT40p`Mk%j)>0y zsDJ)|uP;t}*(9Z(3S$+|%g>)HPD6P!y$9)!57q$qLg>iuYj4*wLXgik8xxbt%g};m z`t_omBQrgkz3BZQ@)>yQ%O?~5wZ-8>EU^BFsU3Dlj~;~Tm)d0wV2I|603l`~Q%o=z zoZsgy;=j0qTrQZF7R>jZS_uhZ)ygUD= zek8#Zc2xGN%58IL(s+YT3LhRjZ2rE#_(Hiq{{8###gEw0?#Ae?$Q{O3Yb1%14}}qs z*?`=h>yxvx$*HA>3MJ9x_)uIuU$W?ElYu6Duo-7)no#$n)KoS`v$Jt=a(lo zHTFA0x1?!G|HrplwpH{i&G&1~p}?04 zBj6r)H{CF$k?rHDnD&2dNcta9>tA#{pWlQpe&m}OxN@^Hc($~=JLi(K!%zS~ADr($ z8-o8g&x`%j<9+cYunnm7|4ak_;<1+BN^bu%2L4H{@3cSqjPAehnoW#`-q5Zzw? z|1XeyaW(&E+{fpaW&>{b-zxZ)_W8}+#|GZfpa01J;rYQgJKh(!?kjyL$$hLSaC39_ zP_P4{F?|XwHOJua0U_^T=-c}EYM5%G2SLX60I%@iHnM*&!)+i`lkNo#Ik78 zH~*t6N~inU=uRp)F%RuvI6C1hZa-o~3=R%1E$D%#aB1@K@%j2%QBDP+Ru`31a67Ee#D5B2-7hLTDieFNf3n9kLMf^&}uC=h%1+Mt&u|*X%(4Nbdna zUULXw1nFquea0OIOxfOE2Ak^VV~~kAT&rqr6!ITrHm*V7VQVl`ZYEBgUf7&n;+hQ*Ydy>35kg`D9*uWzDJJqfgA zObT!#=ENQ=CKh}p8vi1ZHR;}mHH)+Wj1Zb=%PJ^faUX-7Qf5R=#fjW5cWT<)i0;>~ z&l|NAIZf{^R)7q-NIp^Y zH5m3l=NcS-e&$zP3;^_fZo!2&XLc7Ci>v~eFrgAOs5!U1S~CGekL*4eUv+1JCLd+Y zMX!7#_f2jPt_y|o>(Z$TG10Wzh_Lzk0{Q4^A3WGnMmDWkGk(NY4EDgzobp(AfSJ#P zVuYAoA}=BBT711a5+fpm3wi4nxFfR|ZEFsRW2lEyuI+DHqkg_|H+lqmNfaKnupQJ` zcO0%xPoE#5N6a9;9s&N;KFlwZWjHfqs|oPa+RNAoSen+>Q57xCae}_|!_D%2LMy<_ zG0&fCb{(yRX<3^Mz<{qqC+KT)hcDtES%AX}u%m&%0j@rWjm|H&2R28T=i}DbNS1n7 zJhBQH!*9M{GcN&>!(1Ri^-Z*Un-;pNz?*tiv%N$I?x0Z%EYze2B%YOg+})aY-?D@M zqdmO!xqd#KBBn7r0VeO@9;=oR>D8G_MuW4?!*?SU2f#qgA)V{vq-@_tBoarHP>J#^P;TA$WGk0*~rzDxJz~McNjD+AQDYpXNEjP=T zXbbH}sc2W-rITlzi*wq+u^4g1Exg2tY8BW%DGmY`Xu+L~phK}(SlylMZCMM85d3^$ z>Rk2$D(i#9)^+A@D!F!EunY?ab~?Wv8OocdGt%8zT(!ENUh^{LK73BV3P;yM7Sd!Nop<0Us7SYt_X-hxnBDYp;{ z^OfvAJ%O#X5KoiMTAx1Qbt%>{8U)J_m6Y7e0?cwm7q?RbXn1`sn`_#Ey0mLeQtJVn0ceqJWoVHM{9?Cb?3flJ#wqPo#~$l^Sh1lBY0-FnX5%VL_mgX&1I+?{&{Z&M4$ z!YY8?5C$`pyQiZDu&S=#Sc)@3P}H4neF)rWAG)UD*?tPNd4o4t?m$4J$#Dh}R?sOb zoDq|piB|fg5BI!dy&7UbLZZP6Isj7aVbm;{iQ~Tyi`Qn(KUezgt4`?juvQ=y!`%R> z48DJO))@%_9Bh3a(Cqy{qjf)CS3hy><@SeE818yRSTAXVtr3K9#;Xhv`>FrUScviF`D`GxGxOxXlYF_C-<|r` zP2`F#sx@L#^*9JTz`JX`Kq8hgFV>;w&DP)zfB;WV0XqZE!5sslpYcd@TJ-+!Jf_q$ zubnGULMXyQCJVve9QLApFD$o&cgGq46oiHXsA1P(bzfxVw8Y&78n4mw10)}tPp5ZVa)nh>KmNUIIZ-y=d7|2!%SUGiuMZDODm}yo#+a&lC1{3}8 zouSd!%TO=>o;1$A;6AvP9F4SQv}>+NIUO27k4PfCN(5-NKRf26(j4q5^X^n2ZKvZq zO3XxN9-?sK?T-PGom`}w@ZQNH47uoc9e2O6@bqdQ{M^F?2r$m44a2hs;nl&DeR9oz zRG`PadjaG!WlDAv=42B*{GARDxnI3n5hE=xiFmzr{=t5@v}nOjPIfl))^F#d?^Yw! z@7Sdj73xAYBtI|=(kil=i%%|xJ>wysXfqSMv<(C98P?Cx7H`dc*5fWh%#>dJpkzEU zQ@udTg3XN17eH_>I9b(SP^$&xQ00ed-*R{lNB z&b|*$Em@2Nw$?R#eQ$?-v19XIjivc<4ywdP6P8=KeT8EMrY!JabHj>F7|Baf1F^ba zfA`d4(UU%GrxB`cTqUVdMn2)K(Zc|lQ`s5{`f(SxQGiXz>qiYxGK23;aGLJ-dE=+K z3PGBxzdAa)LUOJJwj+tJ!+uj`0kS7g{{A^V(>G2J@P@*OH?4`hMq0CMIRunCau6}e zX3>D~%Hl`EeDxO~;<=LEPBePV_y5D*dq72bt!=}Ygs318mF9qAVvHzN9RZc1aMajf zEOY@85eB7LK$K<(B>_ic6i`rbq6i97q)HVCSP(&a5fBiN4kEq%*M3INE8n+rz8uY8 z*1u$}!&*oVGqaz)?|ql6IIL8*A>?<8e-!T#_G@EP9$_3@ZoPkno9o0K$HJHS1aV+F z`$I49=@-O*2+7lK6-iq{9h!jl%nL7}6tQWV@9QAXEU;YVpg(FZ#! z3eTdJ_TLDTdq+a37c$6RvZHT-1$s?PY1M2Gf5HkNDaDPMToHjtw-$|k%1!cS^9|E| z%w0rM;M51`ms^FDOo{ZC2W|0&H1@rB}YZ{qQmr(4Z%19Ove zLPRelEp2VJ%n}UvxGyf#;+MhYng^)V%V_<0%U#0(M0O;$#3D&LAIBsl4=Ey#dcMc( z`P4NsXD*lXxi`uJw%wodl&On1bd2n(7#0<8arvh02PcC`j_-AYySI*_anD{{c>HH1 z$3-PiL00YB<)|#3=rJmtKUisYo-QmQT2oU~qIBXl16=_B8;x6{Kjq*~-;>nCT^@)F zq*@0@V=GCWaXi$sx>I`=k)uJ9E>Lp#$W|wPUZt;zW{Fwfa(lvRrX+^Kbt2eHmHnw3 zhF07HaxgX;@&LW zinls^m?$mu$|V@wMUvQg-fi5BrsDD?4bqyP+1xq5t?OiBs7VVj8pkW{oEJuk7?uAx-4(Hv~#LGB04xv00c#$ zMKdNt>;`99gh}VyK+f->Rh2TNTN~^t?0kV@y*SSxnp}&Lmt1;^`Ord#*VwRpGL-Tk zn574Wx#InMALymshQ<(t^b8GyHX0j~M{2_a)ZR3wVL_%&gr_@F0WbgFvnI~31O!NH z%w%Le|AQ5hNHI&^Z=sJ#F{f{}QPEP_Q)JjPLaD8idw>Xza7dB2_ZB;1qj6E$bQ}jv*U=RzfW!XiN#Brf%Vhwx?8ccj-@~<`QZ+?9xz+jSQ;gxA8DOr6iUq-{w zaxI}qWkD#_(QV>(o+K! z0^HD`G~uYLemzI@w>&bG5G3@AcY=cT z9>#Fc%N++wIUbCJ%paR%Q#t_-D^VpQ7#o!{T{Y@M6L*pNGu{n6}lc)t9fxx2b2zftRb@FlzX(jLvN zO@P8`Z0z&j59!dIP0$mX&%?j&^>um%!UKDM@y)I8Xl+Uxg`C!)FJ3h7Sp=~Ll$^Dv z59(7q+<2Jww5ev3$)z0OEbQ^A1w7B-EK#%y1WkI>{gy!X^@!F7jcGjiHc|Fu?M#Py zBI|WROl`bDAm;~YI@Hkz+l8j2o>5&5Y%V21kK2ZCffMykEMhh8ol^_R?}h3cFFQi( z;Ygh~8Y5{XHr|=H@vDmKXsoFUQW|&4eSf0wP+3Az9~(ouPG*kP(ussFdw=V-lQzZP zjYl#uO;q2Q+%a5Tks-_@3ubK5yzX;8b!gSacR_ziU}?jGRtSsYgIOnN(|p}>y~U6H z*smJtVd!obJ1kw{i%_^Y-s9&zR~;KXbew(d*wS^`_NUV&gB!Ca%0MxIL}*{|iQ=v7 z#Yg%h$>e`IR2~SyU$o0jIwGK5hX@hC~&v<1p-_=z-Z+E#a;%=gW$hCzS|$KlBTCG*NvRd}PZj%BPOe zC{foK$p2ax?NXNNj>+L?UWJ~Bq!I}f`Go!Jh@rBVJ22BXIjX~G_4e#eQuCFMhI|gq z_ymIZtv*Pt@o*E8Ey>;I@le97*iiv&;^@L&D&E@~>?A8Fs93y{s18*=Kde^czEdb32nD0yH-2dM7Jw zz*!>NFijXQNbo@YyI4=zgb$(w@%tb%%5?6GeW;#=o9-Hi&+c)f7P5PcZ&G3l6ly%& zi3(@DGC<2raVP~yDnXySBsuGAF%NgU@hvQx5Ks2~W?a1d+^F1-SdyEnSP2fejH0sR z`;}%07yiV)DAgrish!J=!%Y$z>v&;Z+s%u`qUWsr&EeR@r1|Q$g4LnSB26C2St3sw z>zRG$>HF4A5nW-yG(0e-Ge|HR8%0Yn4)$`l+lJm0Ap1<^_V63()Me;M#Khh0MpR#4 z|2Z&oQ=f+d&U4YcbFG9lmxZVmv_>dpSDHT0$t}74y*Tjm4SYm?Sve!csY-V=?Ied z$6mTm4r~Gu9*#(Ijdc<&E|IturSEnJ;jn zSHIpd{Nh%LfVEG>P%nEYN&QvhXS{BBbGJak^F0_j)a0+NaH{wF+k>s zMtaRzP+XAV2805W=viJN~H#7DfxMm3yLb)pGX?;Iqc+`EA`1p;jPsfks3vs)k7ebE`) z`he&|$G>eKn3|{vB-aRg|26w^W=6r>C7W;dA-oB2!z{>>63x{dTaXgl;3cLIEmt@1 z2*MFlI{14c2p>D5K%`F$s1P;SHeX^LW=bJ+;X+3UHJj0V!*1;VnNMMsOsG)D2^oOq0x^W0|@yYbJ7HXOGbqdrO8qKWDH1^mt5oRn$$*L0$qPyMK9q|IWTb@C>QHcdbLOG4Bxm(1aI|pr9 zXusF;e&@aXz|4c#Us`5IS3ywDO%o%E_=AssFFIDRrs8HF$+U?O(vdnTNuG=S#2R8L z+nneYFCMQFR$I=Kbc)J>a>oYAn4$4!>#4~Jra(ihO!2BfK!IyBLXV5H;!`mrdBtAYmSb7j`*xG>8~>NV7SMb6r=?S43Z%#7i=U zeyf#n90)%r?StSQU}Je7-~BDZbp4eJOHNkf0HluQiCM?*>UW1XgUryi+5J;EBDlzq z_bJvl65Tw@weTni$~=gCP>bqbDZa4Nuv`nF-V#T&KRnzC@s(2i>Q@zXk=0NJXOmuc zqGTugC2mm7rlHKK2?nL6=@04k{Pa5?4U#{esOmo|nm-uv&Wc zOT*@`M5FZe{aF%fs;rL4I8EK8Q()b#`86a|0QZQC z5Vc8AlyMn#9^I2?g5F=~%B#-zq=O)88Ze6N;eqDil+k4+ZCv(u9Nh+>TTYMn*yReP z)gW8@1>IHIKWiV&)Wj6H=nc`YtZ!*OmY$4-3(916&0QWH}L9&Q%|~#U5SP?-;=d?uls34iq~PP zQW<@WcWHFA>p%qE0X={B-lx0MJUsigp&On0+=Ohu>#wA<-$UQI&iw63$Eb6=ET6cN zJS*tPy{(c;P~$F9A~lt~^RQhBx9SZ(h04W(=V)uJMi!+l-R@79dtK66Quwt|F}emV z&5)nm6`%mgO)-Z|U84a=e$(A@aoy>-MxXu#Tj$(~b&V?j3hU2=FmG)q6VlG9_dRW4 zsm%_>fWjYB;9Gs@tIwe{$w=B>TxR1et1%AUiqNCjTLRn-y^9=QLhTTw_*pWhOLE2h zqIk9(y8pT?B6Ug&MW*zS@!FY_oB9|Kz&WvWsDZdr$w)OuuR79?Jh!`DI7RJ>Z;IQY z?u_pGg)aUwlmP2B#ltrl0Wdru*h5@Vr#AErTsWm4j^Ff*`E5U5oIv$mz?@|wdsmc$XMKOhYcg>8Ou zr^41Iq;=vv&mgxgloAwi$u2(U)l}(-8#0ZPZL@@uinK|N>$oZT_e1&)we}UEWXQwM zT|YHBlv>3q%tcE`$9q?a=7f`ZIwNrM;qJsu<05BE>R!o-^;<4uA76zn-J_-1Z3%nq?^?q1yx2)sdqbsU+M$ z_5}5{;crjwT~zG@NZ#y-;?C2(2tJT=dC&;Dm`5f8L{yocfpUm_9o0}grjm5Z&u9+L z_Lr(Vi4{Y~P{vR?-54sQ?ES;N4Qx_j?`T482=|Q1o+(upx@$Wnv3e@S!w@xo``~#s zX*`h$STRS=b{{amZ1aRNv^g;_6z0g;qCPj(AKTuVJw8P=ZjFyYEz8SaergDC4n{B1 znOlAFC7K;A8{VS8=oGQ2USM(cLY}Hi)qLkcfWpCWsP8nn2C}oqbBP@(&tiwS?y_8< z>}V%BtM#WwlTpp}UC=%odTNxgKg<2CP;P`q->F_4%pGQZ8gX`gU3)Q(qGSj=-zsm= z+9SS)Y%IN_|G<18r1{=>*kj>Nk46WZ(dS~yO8OVOUv7I#8{ghFS<>(y79}1?6cd5Zo#lq_k9bR+dzcL zn)(vWlgfqtes+@XYs&SO#P1-ZR#E{;R^sGoY_Cj!KgC*(e}Xs`XUM7Uc2Pv*^&v!& z!UmGU$`CD58A=Aa5Ge#BrrIhZwC^_!{@L87zXX_O`UKpE;H?y^;SYcFDnx^dvXlBF zKHiPCQ-ii8!!`Aj3W8VBh$u*1d+^b3MaQ0R5(!0vL<{1Ay>-Yw@+W?b{N=IuGoSqC z(Ro%WZv4_2Or@D#ndkf*_&e_qB#JKOOhM@yk&5JM9_)b`F(@f-_Ce+0NZoBTNY}Xe zO6O;w0K0V*67M)2-0Rdr?7QNO4P7Ix{HxY*Nj=I`t~AMg03 z9STgk+g9A78d<}3IvSPifj=7It%olt}7r!cR?<;cYOMa!rf*wI3 zcN42u2$JS0Q+(xte@PNG2c5UE%ex)JN}Ql-&o(FR2D76@u&58pBN5!FXL-a`QWV!V zH+m}!oKAmCmvY^`H!X-SDV4-=Eu}}Wvfsgx1on|3-8CBJ8SUO1lZFt=AlBTl6H`s4 zg5BNhe*~{|W7Cio$8Ye{y2%WN1avD$?~x8Kqoqi1rxC zzamW&<}ZK_xV|VjVZOWssq(HGv#3$B6yvUz9e8ax|iBxp>KEmDxLo| zzj$TY&?zXA7wf&~^Ruf@2Dlw}3{u~6(na;3w3bHjt z#jc`P(?c^3Yu^Jo7oslCbKN!<_QBCUK*{(gu^Hh=sC z#msME1*c{HZtV1~Wsdkxwah*I<*-xot4+9`G(qQGYp9tR`K3AlG4Ab8)UP#hO%z$`w$|7%hvYx#}6eQPxU|U*V>_{qXEP6`iQ#&ge9J zdY(qj1=Ui~W{@h?3{v304ybsB(%+N}e0Ku*g=EHv<}`3Ga{l$^f@|v)YdrxISMA(o zXlQ6Ta(-&~JYDmu(sMeO-XQ{Wa%|fyW_>9yA}VDC)x15YShO=&z?7)JaS%P@R~z6^ z^<&e`trsZ-K@(2jLY}V$79IJ%;rON2Q==`a!J*n7w+|0uI<_Gqrj)YvqH>VGJ$I)j zvPNto#BJk>QF}uzYE&}hL=XCM9swdSZtqpk$0PE~`{~P>gONXDn%P5Chh>nk@yNi+ z&%Tt4>+~g}?%VYY*fQbMx&&C@{AvoFdr<=lZE=2leOLS*+SuDRv)vmGKkirViau|_ z6f$iOOvl?TTJaBDYy@9;SYRldSMKIQl1yg;7!v;iDI-&S^`RZ_pAdG8Y}X93E8IyO zqYV02-eWT!%V=>$7@N-d=C@fx)UAl(YJ73rSr+|Duq&JgTh7t2_z<@YyZ7L9x{t4L`F+g#P zkwF#I7Ddlx!BOh>yxtvw=2h4Q{&|3!6I9|ngX}%f`X4RRo_z47ltyrCTk5c*zs}rS zQB`EL^^tc7HC#SXkFLPN#FY@@A_pc=Br>A z9)L+?gEhu4-PF*LB*^G7%6YjX-mj;kXeSO9+Z-1U2bXaQUCZpu7Y;Sn0J5YC8Ini| z{6jf8Qzs!>$tViblF<0-5?NK(e_&PrceqvYAI6v;6!md1k`50Sp7ijyPOO6K8pfmq zhXbp>YM>Fh3@UK-1`nnWzYsKlcCHwY1I`}ZVN}%5yb8+CI~Sapk}B+f`{O_GE~#f9 zxlUNlSbT6mz-?HA8gYh~SuvmXD--l4fzy$~gN0&Ez6odDoaELXBCrpViudpiY+U^e zje`Ot$B0~O1k8vkFa)LR=;fnap#iAreWzWip8$2gR7h^n?mfU?rRw3NJ3gE` z(Aw=9A(^VmRX7p9@&M~QpXb9ueH+g5JXtX7Pl0XQEG9(?$CH9DURhCop09jcG0&3P4|Z^+9hm)5JU$E-<| zO^xE^Lwypt>kF>^ipkC+$CP~RW+*#(jzd$eteL2I(Xt16JC_o-cV_>LWcKcDwT*+) zd**Jgc#AaR!QKxg!T+Xw*K{UO-qHBz2QZ_{vFHUw(c8~dwEbSsSkX6=!SU8&pze`` zm)4EmYK^NDHU^OYIo@{Avrf61F3cwqff#<+@^wm-tc9G8*0puo0ld7t3SXQtWMA5y zd8a0B$0kvu5^{6wY4`|Qt-1J?F`gHKuxr9BB}d*vmrp9hWl-PJ5$K1Gd)75YMfOH| zr_i$MTEz9h#$lkn%S zFf&_{)&+2Zb^zX}7x>>X=;fX-HLpoze;bL)l1?A*F!`gHi)$*ZYHBs;uCcOX83KF_ zE4oo{@bh8V8kJwQJ-NBLIpz%-LzPRoj!A}=wl;kDUVq6Yw;J`e;bVl+sP){D3&ZWX z=icH5h{`t=RoBoP!GqVx!C0rAtZ7Vq{N4aeG(t|z;Q9eZBvRtTAn59~jb+GML`P>g zGb-%a-|k~9RC86PKP@Z_TFhl*7Hy8^ZKF|1~^Cd>S18Pxs?|Rl{^yEB| zpJP9QsO9aIXx(wIBc-VKiBxoHbFhljk-1#2;?mQNLQ2qS&tC53>r)kR&ctmZK{jVi zUZ*+16shNAXS+ZC;!NhA<)N;MNfuXpm)Hx4|x!Kz%$cEs^6xrq2 zj>EqE`43+{h`+SEy~*Cm|MsjKhfm{5*uUaKtCx?_SEHWunc72UW;ay-0GGt;OK~r@ ztgeoZdJgG@>QpDzvX2C|;3~CWtEgxp%a!cnF}1)5{P3%%hu?IKsnVTMYueuj*PhxH zApY5p;KW>3;`%ZA((aHyKJ|f9r$pW!uJl`!ekLsI$T>MN8ddZHw83-(peo2_Ti2v0 zLlw_58R_BKd0eSk<>fj`J}}2lxjM0EjucEr`1l%}Vz3wN#)tb-u7-pt@^U?h+`TQm z<-_y*QNjC=*@gMgyySU|pgzn27ZF8WR~b}5(0k)PABXSNhFQe#UcjFOCCLPk5J z3()4N5EZWVskmu|hkE_!W7q6~RGbDYRnF8(kKeWpY(a%*e=4WPx1gW^G}DFZ zSo_At19~9t%7eaR!`OEFe0G=qt?$l8wUOfR_J?*$AEPuCezwWdWX5n9F%TSBKjb38 ze^AsbWgPG-jT{^t>QKW+%t#galY`hxIq*FVhM$udKX39xbX1g=7urbW=EE8)sTk$V zUH>)L&0X7WYvum)@A0w^*2L~6IGT6!GZ3^vsWeiB@f+EaF~#;qMsR1O)1MX;ELgDL z=aAf_oN<~Sbs@#v%g9(ngOI^Oo$UHD+%iQmZd0yJUvj-j+_rq+cB)GLUXSN%NPRCa z^r1P=-<52ncHj5H8EvY7*xE(m4)n|D>3D;Zj}PAS+wH3otu2*sWQ@9Nk_vyBk(7-S zGXcBdh=!fnA<0#ljyN-S^Q+V>O`B0IvrS!H>*~JX8lUpp-ERD;QE{3o%&K!YT)59H zBoDVi!rQcx#2Sp2?&d>U((~UD9PR9y`N_5W?jH+PZ94}}BX}81kBh+O4j*53lalP0FAP@*9I49tZn}$47zpSu0h=>7ASbN`1~`A_kGO$`}!e&0%4T1mJc@{ zUY6Z}fq3M*IAhuj{tI=ZT&m>DUfPXmVD`oVBo7TqH<*C~0|PO~zzIMQwAV8>j>-p+ zI|#Am5cc1i{~PvSO;P8X2QcKIa&7rJ$iXnUZ9m3jE~lR`N;;l{8K&)MWfcy|@DPUE zVY0SL5$M_3TF$yiog_&9>Rky5N!rE5H9mxgd^q_NA2R3qcwo|x27HB@;v5afE9CqV zkO?0l&rlagN>l_nCRGtzQ;#)oQyLdLR{(u)jT|(OI#$hj-1!7ON1LR=1zcy0A};Ng z2>jHW_4jGMINGfx~PlG zBqJ`O;r)e7;2R@ zcb*z>kX$*@U9T! zlq7CbWA&UJRGoO2#1^6yV=jhfOMp~p>CD%koZl_RCBpf7m(y`gB_mAEl11&fc&YB> zj=i5!Qh#`)rZoblMfp!vvHkoi@1NmspBMT4QgD4tf9mtL{P*(x%~bsJihW)&&I)|q zFocIneSK8B^z$wDe)&G%VvFA|#s4d}SV0Y>@`Jiz0md&kLK=MVz{{4kD*)Au9f~cFE8&IAIkQ4+jk4l`QRh^ z($hLHr-ESaQIZZgLc>xyqm;b?K|w)ogDO4uTZ2=a!N=(od-qc7KccVquFOfkPX<*T zT{TJ3vPp@FlbvF9fVJ9>d8x zdD*;c0-`(SSMA%)(h%hHQqTQY>0$-i_d)z~SS3#%1+Nrb?=@%8CjaP?wKj150#D2X+j{!Xxk8d2))ItFj#9{Hxuj!19@TgFn2L7PRKDFi$YlSn1u6GSh?}VCi~u zbMv-K6aCTyo03l$k_-uQF{3R-D{DgUhNO{O)YkupL)^&ue^tlSuyhp`excU$52lho!Hr z?FVEFBOgv>^Bo9!DYWlr0o7UD(6V*#2M#C${i^M{FGDPD%Vmdlw3D{>=rq74|Fk#w zU%oC`eBLKdo)ljjZq;x1wQEZuvz+T0A5P4F)A;L0FzvOmINMjjK=Cx)5P$c~e%SW% zQ;gpSNgf}wIKO?pk$UXp+ava|WeHwCXa(=#F7M|T!gJa1Q9JYV(*1vO>B3)ZMd-<}o}3)Y^cJ#xk-U;6V-RnL zHZ%ER)PG1g{`&!Z{cZb#OUw6UpN&dx^tr40&|k*zR;+HcG5ckh+60p}HrQpTC?GQR z5cp4#bAJ*s#60tS|K=u!i<1sd)Sz`cQXWmkDFOma?*ibKNwCO3Wp<>3KIC;A-d}o5yRFXG;|uUB2|ncH2UdYVX~!5(9YbsY>ddr-3J1quPQ@n1k9aLgn@tOCPCYN&~|rnl!`!_y^sfDpND&t zQEGW}&aibH{EuTA?W$hoC0T^Nw5q>l>^3oQq91*CKBrX707@LQXD@@gR{61`(m(G-P;F8KpOO5lzMn+0I)#etOnrx>Y=f}tY zj%!30XgM^YQ%g7PxT>_0MI@@Yb@v_JM1vu~1&VXs(iZ*&*Kf<<4gAEoAXmghd~=|J zb^AQ(rMVVce25}`^-K(-iGe8*@k=l_=22JXh$kji+#{%U1s5Du2EWsk2*CNKT8o-KY!GlW!_WjP` zGk|jL_NY!hK_}XH;kI+@+QZKdC-6Q_bRK!r+qx{o`IzYJ^EWPPu3IkX5x_KZyl8XI zzN0);J6GhmfFIoyObUNVgJ@pK2LQjVpi z-1jd@y~HE>qD)|FX*p~u)ybaBDOX95O?7F7YE$D3Mwg6mcR-`zEk_+_LvL?_Z~%?x z&Ye5OdgDu96>pc@*`#lAO^Cl4I{n#y2)sZh^sVWz=Wb2?xI&W{$Uocs#)( zzj>6fQC7XCc} z4ZNv)ys}X8kY5GZwEVF@=We;#2i6{_cMTGF2&or>o|MQ8{}OT#N|GJAsu^~KPIeTl!QK!2 zmt1MeZe5zcep+$NQyD|%@FP$}M0p4Rl^*O+&17Hynve2fzk!*WI z2NR$PJD89dHo#5jQk+EZY0vKX%=jZYg<{aP2KIq7KT|h~7|E5go_{vo64AqHVZ?J#>KGVn| z*40FF#>*W;XYUJ?wJ~--`+9Yce`q`YZTL@<$u|M=^E6K*!f0%CB*<|mHW3p=EVxXh zUg+HfLcaJ#i>JCN;O>xPP!U~p6du5Q+yu5u(^6{iVAvs&g~bl@Zb&xqvArTO@p=n; zv3NS%f<6C-(l1FAAxnl4Wj)**b5bFXO(&E&_I0Q^F(G|#Wm+Sq=IWeso_I!^2Be=J z*wzFTt^`kZ5J%6c;RK=a3JRJ`fy1!XtS?tQV{bg_t&8)^j_@oK?PZExp%=t1UKR+Yp>5Tz~yOs>+*|f1||cxJERicHG|?q)_EM zj5wY1NMdUEAzc=d8-n66DPq1Lw8Shb0#V8@tDh+?IZH%Zor3q=+Od_mqkqGLQsOG- zbb!i8XJO+BaAR|uh%Q)l@W;VO&{HpPxDQAZZXHEI%Mp>HHren*kDJ712#fuu5<#TY zSP#XI?{IMGlC%#El|7!XGa6Js{sSxDUxt^P#4Z{jA(zv$P}|9z?F32M^i@UXq&-oP zNUZ9g$b?o@3VjliDUYM3!XP*#zuURS%P`XMTjEG>mM~<0n+p0_#6BB05Tvm1ZIu(R zQOb$gOB#x01bHa=9-P9<6LWRPbnm2BXI@wh)MF*12u?Yi>u2$c6U(mJsSidb`ryL5 z6?DHhn>R;?+G>M6^=eK@1kElA4!V};?CASqwrML#z=u?F=Ae0?K&Y$Boxzo<+$JGD zAu@8A-5CjSN?hg*Fhjq!04{ggra51Lmm=k>VsII&+s zNJ^_|dDzw8)3Xjhq?pI7;i`glHC-?b;ttFs(5aWyi#xQFRu8QnMiE3FP9hQ?&0gXk5JVaCJI(zpX?8zMV3MA5M5}@>PDC`%AWEU$xKu&-g zd*~!B|H%{eEI7Tywcf`~6n2#G8?QrXqsp)nFPHO(sIyO8Na+>4JD6`3+Z#Dcz$e;8 zhuZBAbY6YHSNmT&7t{9iw3>2n_s#P41Qfr=rZjxl;CJ|_f}2Uw9Tp3<4K}5*iEvf9 zeUwn7sF+NSvgxY}TNW*E+fOK6?>yKExu0PNqGDLz&5N1{fHjGHOOSJIYx;fZcJ-`C z{kVIrfVG+2A`tS~+(cNErlm4a%79pvcc+oy`q9@nN@9V4N-vcu-6s=Cm&VRsM;5Oe z!HvCmUwWutM6qYFGM<~A*6YJoB({zKxBUkboqrYh|eM1n4 z?!fCF>S-i=<0XhW1(QEI>IhZ{(CCsZc(fGO?PoK>!^0_UyLmi5J-6?6BYp}5&C!Z! z+;Z}=LjuvfW2}ORD_z)R6E5MZa$Y%w6R(R-L}DX_+OUV8@9G-+LsofH#Kb)VX=SN9 zE*y!(2h)Tp{`Ll%*8M=$cK0OsU*Ft%fk?1hglKx)?1M@oA2;EJH?4dqKA*a|JB@Zg zOwdrG8X1-M1!OU|`taHLxuG1RB{~9CjX?Ac9rtwNBrh#!$EGNdeO(;7eXH0D@!Hgr z0@{?WQQ6SE(f~iN!}jo1Vedy8Wyo}xDm=HoTW|LSR$<;|sFm!^S?f{5u0(Lo(W_01 z{u#G4t@}V~*B#q)(Rc1_yAh$Haa(sx@z~cLz7PoxTde{VO3t6;&#Sys6GC_Fa^Agr z_ZW7Kzb-o@ah7m1&vIhb@kkrhL(m4jn1}u6>5jN6#X9-o=oU%Ij3Zz3(Jti?VKhOk zJ^PY=#V)8GF1J6BD|g9Gk_PRvoLsmjtWG8IDby8Q%^%iW)$Y6D6n4$wPJ@E4#Ls^Y8=EgiDzCkK-{-DP4R<9auvz^aTqvH=v*{M>{o&T16`{gv5O zQPVg_$7!5Y!JD_GM<91GyO{8_JKYigj?}8SMhJ#vU2idIC;EGw0N*k^M@L)RT%@!h?6p*M z+V2w=WE}q;dDYtgt+?~IyHGeQp$thv-K+9$AT8J>W1VqYgIoONOcrfE2VKhF`AOL{ zZ!>stL3ud4p6*19kA;kupOU-W7MN4fz0?pPHap~GXXQ#3coTk>Zpt~i&U1L2om9R}WH4E$?>9gcMJqt;J zWh~_I#|IUr29q*9FQADb%>uIcS)F<;_yuZbNwc3tr1&K*p>#Q@kmF+1zBApNdR`=; zIw;gbgiOK;f3uTLGIjP#B-ytc+Gg1nH&WMpl8=>yrQ2vp$hO)-u-HNTjl84XUJ+*9 zcbN#=Xk>x?SE7U@njw!`m`;@m*BuW60l1?Hfk4r$dq7KHU;p-Teu4Hziva*V=koAF zY~y!_qr@fTLNE9AYTLCrI8H^-NFGdmMdg;&5r4b|wNF+_Y zQF`iYqC`B?Cpw3U#Ndnbag)ulga|ltD5KwOzLOrEv(w1g#5?G8es@R8*?jFd5{dA9%vWhLDh9J4?s9I zK@aAMo;t|*L+r-%6*NJ%Hht?YzWb#cDKM12Y1q67!bg&`P8K2IrSTBv7+n?X#eRA9 z_%jq1))@fLhgqy9eLObgzJ6jtgY=N3C6tqBIVLxFJhQVsc}tWqUtkoWaYKjp)t&0c zI%A&gxT!RoC@n`s7X2<`D-$C}pYi~?2r3%)3VqCeBIAa-Dx1{1_2pHhIp+@Luf=Ea zPS-Mt*Plif&d-9)Xd(FL!9mKy9c6OpJ8eUV@(wDKqjc-&$eZS}XDe{uXo!x~_P7S* zks3gd5*(lee3h^dONI%n)!ptOJ|Ut+v7U~OFb_XmRq2T~wd({0dqRaTrJ&Sq^z$;e zsoDnX$dEiD*(7+?bre$NxKandcEW?$Yy)*D`8Vl3E^2yNHIjh3`=NG9IlV*dL zJJE|+BFy87I<{gmW%D`lD|sa72+n~|B0Ze1gL?ZL=9Mvs794KZTe zZ8SRKn_23-B>RTaxXkV0QMpM~VSZb{QZ=%WD+K2uyy>JCnVnnvgBh=2P$qFb|RJ z=V*DoM9*QnS+Wa{r~0W=rwUrH$e_PCWZxHQb-YU;<(ZQhtj*{$b1-yvSutrauTClV{JF;dvU}$FG|iu*BMp;eSw!JPNdYD5 z)~2LZZ9@~nplRFTn>h~(W3tR6FOvI`CVsP4seiO5-sX+g0!D>L7|Sg=n5$*-Vlb~vwBzE4YDnk`KG)KjnnE7jf9K~50CU!{EjT_ z?4!hTSX-PB_;&Y@U%-@`TU$3o|1RnrcGkzJ1cnTT(bFdDAs;hY|MdAKn&DgtJ*4B1 zQpgfhTt`i0$@@EE^r0^1bP&O`Wb{8wN}pWYdj2q(l0S*BGuBT&loR^@#|#i3 zlZz`{gy@yY7qk=vh4n%9(C!CLx_>76qxxFpxo|P$i2c}(IIR#>CTVC~+sawRmr|ep zY(9Cr5hTfm^g$?O-7E<~t5B~1+r3zC*RHud#DQls$!zI^;A569p%V#t=$Bq&zoc3_ z0kTHwSWtKe!ApFUCVt zwAm;5+?|`ZSb#|5HT27+zuisq)#^j*?>Ele<3vZfjFTprq==GX91*pd&y$@iE?cY4 zjzP~fjMU0=xQS@`V5E-yBxjv>w;OZrS}1s{4=rp@ z>bhi+5G+Zi0!XCIGf3L6j8sP>i_`bDc|{t`g5%?@YFeDc1ughX91UW-V(ONjB=Xj0 zJ$(C9>nChD`;2S&hmYE5)0#~y(E2`RtXL29ghtn^#}_-^c+5D~LIm)6NfAt|iD%B| zfr3_G9?`#t#-qwxhUo3cNGi+M*ofgui4x?O8NI$H zJmk+_?uhHsXFZM^IDbv%BAxDdx^gTbA(&PCdu*VGqD+)HDbV23F3OYbGC{_{9JO|$ z|Lw3b*(GC;->N#ENrpNMNpZXon)OlHWvYNd`g`5B zK7)A`-Z_%!Yds1s!#E@R5xirPnG&MP(k!jMPmPp?BSuS!f>kf)>k?)D}$!sqdvQ-1TP zQwC}xOIh&2;o*MY4HuEV6r`Pk>PMcP%*J39LYxkguTd!t zD!jW5rb{7x)cr>VUZX^)z@Bg*E_)Xj5^s$4aO`fkg3^h^X6T#$p2xp%orgQ`DlS z7AK>1-YIkB94S(r!pZ_s${4Idr?B@|yK!Fu*S>^xL>syr4<__kJ0+w}=IAOB1-tb1 zujnj9lPT1u0ZOh;EQdHJ&4yjQTJ+o$u?S(r$V8QK8ujqx*hT;Y5w$;} z1A@O7b!c zCpO~Ll9dIgh|-^UFg=!Na}$uAznPaY!+(xmtz-QFODyk;>ol(5)-A6InZm zY%{^j*AROE5Bh7eGFD0Y{Sn_u8XrP?te9BA+SaPr2!SbIX48TMV@DHmhorKwSj6fh z1J?eS&$f$&Xs{VdaD!NN0CR8Pe~T#(NO`0h^2g9442#8_guNdflQmZrI3GP`?LPt@ z;VLypGO^vF0^wP{id6nA;%B3tMJmkn4E?x6o)<9sSo*Y!@!JS6u7nNU} zno%ty7~#NQe~65bQbzHKB1?Zh3i~8;5$B=Q`kiK20`-mF{0p-mp~F$k@dd#(cChC} z^AkT@Dys+}qEn`nn%2jWQbklBqi@6Jz1_>#kA(XM{PK)1a4XMZ-< z?dE7BZx1nJXp)%h^=1^IZULm@d@?0!i`clF`8#K^9+WqJ%>Y5-E_hZP+Tg?;)?{!lP04P*C}m+pUCZZGM_<$7-z-nHLC&5ajnW&N zSv=e!uA|IBj*gc*rk95#o)J;k3m81U8)h^d zFwS&!kxWK$S~BcruEojd?|Qi_);TU=k=d!FDEe45UkS^Gb5e;Q8=Dg~7V=f|%m1n0 ze`YH8S$dpK>>4|9)#LXrelt%_bW`p(X>9jOOWT;Zxv_6||LT5S@)y0puVQ0jpFjDI zbzsRaznDCb`=&!L{1?3|>c2{UuN3CAKxcpEvS88GQ_#lrY7R~q3bd>oCuX%=Twl$b z^&W`KwPEp3i^;!HUthIX?&UIgg?N*DAk%HCPP{JlWc1};;1s%hdR}Jzoa;9>)Faon zQMEmkT{cpG_)`z1P8Ebnw@40i{YFMcT6z&S zay9kAL-x@H-vV8Iw*IFJ8=j z(bv~kmbU*)!lAy*!#(wxw*1~+UOux86OWA4N)%^js}E^+RmR@9EH5wLo2py3TPs+3 zxv(o{OpQ<8zCCf=5naIp+34m4<)Bj`JRk8h=8Z%lxZpuKlarGNvU!vvto!gVTDEz6 zd;59{@bgCv6u#CiC@d6lyXUwHgIN6?q6-!*kCJvhJ!AN1XTKQ{JGHe7gho#LCrU0d z(juA@@tz-YGJgBO^7)I||Kkk3_%DCKczElJ-)`Qy(^%VCozQVUGgC8cd?vUh>28)X zho3hVx?$iG(R&@BWfr|Kza`{_MfO{C|J`1y*c&%=)|}|4%K+^>aHX&i}A%nPIvs*M7gt zmoHn&-V}Xz;vVc?`vJ%2?*)u$kwn|xs79CTj2iOlmU-j9!|(CJc#GC{q4QB; z{y_QfuS4!%#^TSvAfe{(-CLj6>hoHW6(C=qj~cZMpAXLG%|LAg^6m3x_`DfDZ-&pu zfZ79}FGy+`J~1YSo9&sw>R5Un_1?lX&;C{OZ+a z%ii~6Bt8_#oYutpTLmF%8E!5;2eee=jNbs7y*=e|fSgH+7W{_KxV-C!U+4YrUxRee z&X}J>N4RmRNv3P9IC1B@J+u!U$K#IuEj!2F8QE_T(fnJTjlXPpXd6`w3UTc}MOr-3 zN#Gf_*xA_F+*TB)(X99_EG&FyySTU{&gJ6Lxqs(QAn)4&Y3p6eDZ!L3|3`nWikce3 zv{%sh4$QfI`}TosG_HjBd58gH1`CNg0pvrb!kO+aUde)S)YCsc?)M3L}+zqIdO zPNx!FR9~?Sr=h5|=>Ay@0spc=Ok2BbUqZA6)3@>Y0MX0eV5szIwXXe<6>xhY^2tXF zfBp5>7Q4Q$-rXm9^ZxrS_u+oOekbbi7!*CS4`Bz0+0>=oUpqcNa(tz!qhqBk{3dGf zS)6BP1c%D_Y^k6m^{qeRL2>pT-tvC#z1n4Izy7mp)BgJoP0d8h1hOQaeSJqI@DN~9 zK>MpVI_!OIy+GVO<(`?YUw>^U`hf2z$vHC)ZoR=Rv}9w^{y(oDc>bf6$KttJ-vsRc zRXsuaT;BKU@kb6c@_ct|qukAZnKgYOEWK@4@ef(aZ@-h(6WVm?`667EsJRCBtz0^z8mly#APu<(iQxI-j_ zfc{BaNuL8QsI9Xwv2vpm4I?%o6EHhV!U}ElMYzUNh;6#*Ok%CXSUzdSVYzZSOye&s zSoOgu>F@rq;^dwggUJN7vXsCBS;Rk5JqMta5b35 z)l!RCfq{YZVv}cZIh^O_753;S!`Qt5tObKHwMua&msCWp)_W`fS-3OT9({<`^qTX* z81e7^@T7L{85J9hPEBXCXcJXjLjbc0()cmME{<3POj$Va+M!2@0dj+d+L%6^_1c@C zlNTpnl};ZML&@%ld1wt45@|NHD_8^^JyD@_=;>wpWQE&=u4Om|;UzN^ZR^BWP}&m# zGKRu5pXhins+h#&SUsmAV=!Ue-8(u2Un8^n&{Ihx0{=29T;(*_Ng>$i<8J~ocbH*3 ztdRp~*}@gnusd+gVf7rivIpkj-&E+Zr&asW3^b3a9;r(0MNkj1d)40FPFIDyIy96i z|9ZX(6E~Oe6UZMmJ3_!-4<{le%za5VMwYJu!=ph&O`H~m@jQbG3{{)?zGIJu>R#N;tI=0i2x8# zNKx-ex1p2ldH#J7CKD?l!(OAnA_@$amjPX*Nv&AHV;>I|NAFLNz5tbcDPK}Dps4JI zEo!5?XsIXKcAwtaaADY2Yg1)!qxV|nbd}R@XYsAJc(#Ke=J%e~&K-O-R0h?SVkP)@ z79W-rIIbQR^O|OTKs$skLMJc_JxQ*jN<@Xfv}~kcclsCn*6}o1ift^ zvk9hMBAgw;2mFP!DM3+mq71MErBR(WlaD4y!*);)CAtIv7~Scx$AKPWDuc(Wo>xT1kaVfavc3t`7=G=s9j>lZTlHjLRx?UiG2LJuS2 zDfDNJL$E?@Q*0IX8;V0t^cwi!@v8+AN0XYD7uYzr`hcM4ryf z(S!>~7q)E)-*rPh6x0W%ILJYkvkJ?AcG1wN^nnDvmzPa#N+{t_u^V98JI4>eqnojS z6jI3-LdU5O!9E8comtG;P5AyFeh7cDle@Bsu)zF#K{yXR3Pd8i!LWW*r%ju%_V#Lm z15GD_=j?{)$@b`N634+FV8Sw5L?Z|2xnjp$A>B)=VErb)c_LL(iG?kaKlSDn{ha8^ zKg!Mg9fljcy)#|GIre-4qII!j$xcO2FYs0A8E=cXvm4Z=`qd~?)Bxi$VoAS(@Us0V zYgI^atZ;dX@WHqbPe@97qsR{Es{qv&{#oZw0(Pd9hvy4&@)pJ6ECJVVRuJk-_;`Ni z_;wm>G8WPf6$W1;ye?I`G@v*vg7HkhL-_emh@S zhMs4PAM{!R%^V732H1;Dn;9jW;fGt~W*2eyvYrqlce-%qO>o%cT%Z|}=<$SN@q!I?_wC$u z_U(czC}D|U5wUe0TrNm6rswdedZ*I5*S1I)fqhw+Cx{fzVgmKOf1vuVv zPJ96kMA6_ppiDiy@?}#a8CzzG+ie*Ai6{y6E{xS1wQAD-mL=HJ1&3Fz`CCh!V zcVtSzX}^}&*m}q8;W_(txd7>Cn8Uq~U5up%<-85=`f6V9WvJVLtya#|CKy@2USW~U zjk)>!DGpt<6|l63F1fSrWViT=1_x{c9Q!!Uhn={a!b?j_Z?5d@3R`LOBDqMrVj={< z`|uYaXffvmnMev!=JvupPl4iA55*3&Hz<$h#yBQ|)5hZhhAJk1T z1%8}eET0+eBN0S|TiC@Q{o)oLW(6tQ8ecodd5Bz2S3d+)%~|k4Tjf9e;Fo%v%jpID z#pnAI9SHg&he}hnDIiQsfgc1D$|;;MELnigxmr?S*z#GLnye!+2g z*QT?icKni`9k8CoiVz)yL&Cu0AWA#2~BB!2AC zw`{_1EAPLVJEjJ%CtVg#hQ9AqvmX=AI_8$)1O5pB+@8n*R9M3tsbi?xZe2jlr=F=G z@G8AL^W`>0Lc<(T&IOiPy%`WhUO&Q>U8$Us3lQqwLTw>6z*2`z!v)pS$ItirC4Z@4 zTeojiBe!q^L5{oKoYdMBYZp3m;R%K%6Kph1HReR~s7u0^R#sND>{Xm)dRg+Zb;bUn z^{;-@C_Ya1py_N1k^X4v|C9BHE^ z;Syw#0F`V-_ELaDkNXEJ82Rd^oF<_m6XT94UCR%Z;*k|O0>Ko$T)h%2mFOFYWMa?2 zLTpcw;FF3E<@60>jnCw?zniV#(Y_6n`IdH!xyW zb5_|HGYD5TybItNF;Q~iG2(%XC@R7rZE=hV0v)TA*Jn2um*dRj-FA6%@nA@`KZ>ML z9gtOui(=~D{)%CLujfcFcgEEp>I?$ruK0$T2Cp7U6J&*f_VpA@Wz90jT%tgF|MoVb z@!~Qkf<*H@7=C;ei9~6l*-9HBOx>*HO!Ura#41*sOqY+mu^aw|3E{yv0q}m|VystQ zAHv&R#|%Ek66gEP;)RXZ*8Mmdy%OtjCYVf$0T|s>dX$=7la(D`9tw;abGGIaaK|=N z-s4&LsZZx1&<`~;$a;<#%zxypLQM{%@eMSP^>vumkj2#iy zo-}4?@X!9H!B+lPX&1hagzqBiesiz+Xl9l2?w6B|4;u;ZQ4r3O9O=ER3imq zKJy_l+7^V%_8~-G%&fvLCa7h(N2ej4_R9xpYBbV;G)`A0k-XNBrMu4N0GDv5>#Lrh zOk~0)bsjfpTGKQ#%ZTIuP&%=1!II$v7a%iWWDIx5`}v~xQ2IVXuyIazPNeE__tGUs zZ+A(|?b~9HP}V%0Co-us0simyQt^*^Oc>@kgp2HJf0*p63%OEB3I?598Xw_&+I)k6 zq`AdV!!tvIgIgL6_FwOdg3dRSjccn);r7bGxID_3mU>~xZ1$aG5tt;LuA`}8 zpjkfXDLE|2`Px%uGMv%bsrk`80-lr{aV0C6nLQaKm~J0H##tj|c*iC04a)V@ubwqy zRh-}M8#90VAAY0X3fg+YWN0HQJOp3oglXnK5!MO`IbR_xw6#6Z(#vcsjod6zIT|-7 zD2$U9j!Uio{clLpE%fW{66i#_$`_1A7YR)h`BMM>oBW^u6Y67%79k6gne7BYVzdLw zfLt!o>|%3I5hchnhFuDOl8dw}I9$bRt*~9n&$hoBeIm{4Cz7a+%V$Z}dScQI9EVHg z_5J60A#z}?Mr8HMdVUIWu@WuJWNT;Pz&cbYSTcK+CUkP+uol|)9sm;;%h9gvUh_Bq z$Q97)@_12b#9LC=GA2K5i7F}>MF~jpiG&yqY?oKB(BHP^eZ(5mca5bn+WUb>U~|Cc z($*%YKsn@zMeWyRhUD}glCsoX_iVG3TVQ0r$G8lYkFXr%TuYf$fDhh`sZ|Q@V(kVQ z$Y_gGtV?ed6=6S9kO}6Ni{CB^fbuFb`2(JpNN}4+Zz{L5zW3%po+soCE5r8k6t^1BhDIY7RoF z8|nZRu?hH8TN{uDTK5OY93#SsidwY_c9GhPZ0tJBt^l4WfX`$hJt}d9fZE3w61>Pe zeM@eYBDnDM3n3ep63B@1`{SJycpA;+hJ%ep8M^flk}()OA9Zlrxcm#2ftw(as-D9j z;Tmgd+k0ErP02PDI|im8#Pe6Uz0tBGc(_g?W25EPty`_;0N=!j2i&-*9a*VbKz7X+ zd?!@zNNtc|2iijs3qs7%(?@EeOX=5Eh@J~0-|hjR&zMJoK~?AnshUQ#141OO1<3(X zMv0HOgK9U|0_-ieB=ka7R;bD_sH_?gluJ2;&g6DIpQJpRd`YW04fwm5-BqizSo`+T^KgHvl22 zM@qQbSzy*&%<=q~>?tBju@{lgXk|fg7@Sl0N=y{b5zyL=^;CHqrRFm^gk4Bwm;$J9 z7F91pMySFhVoO9SL^}Em`N+MlpUA3I&16SknJte*eQQ0|qgEEmT9xAv8&61zjfsY9h4a=OqQd{A|!w`LikH5CaUu6&*kmyi0Mu4RW>AM};J`FcRr zFoCaG$<#M88kIEd-S7_;WDi%|U9^jkcKnRY(M1q@7iamljo#F#xM{@bl zq3aT<_~v+PYGnk+a~A2t47NlSa+l&@r7YJlloW&wu`E+0f9`A5DG3;F4S zQ&`d`Gtwc0qF4-}o82Qk6Y9_@Onlz>^Wv);cO!Y5p>b#5m zki@S%^upV>F8XWY|Ev{>xPWwv^sEGevnIpm55>a|C>-l)zL-OzAf~rnHi0bp)&+e@ z(t+UitF6AFM^P+_6gQTmqdb7pR+t&IwaA-Qd|^ThF4Z6PP=YK57Key0$$` z*svQX^6~@)bY$I%OZimA<`+`2IaCPRMM(s9sD_we^4ujW>LMmlB1;zKy+rsT?bD1e=JB?sssyptc#_dK=pSTWd5 zMBD;7r*=m#DM*y0I5y-L**{%bcHT^f+GpD;{7o06MPyTl=;AFGSWWBDXuC`Vh#{?Z zcmX%ODe*M(9>@h<%W=Rnm-SD%210Vz|Y8exB>5$ zs6?Sc!tKNf7)=PCOOAW5y=#)&meBPBfRa~p=Gmq!U{W9|s)DA9G89GUEFvmh)-K?^8HkFd89JxtY(G}v^vd6) z*JASh?~SJ5oQiDm4ecr+C;eJIMtY_R-fZC)Xk(#PJ|HtXJu|E{(FnRZjC{d?hrp!Y zD^Ym^syZ$BN3k_>0oX~^3atc5Qf$0)=T0omWkw8SrllXIs3jN?-7h7aEouiQv-F5T zHe=;L;>gcnO;ZAioHx7H-5VDW{-+f&`a|3MJC&NK6@m--J@j*S}Eqo-ppNb zz}tuFzYbIMO1KP&3eI<cHo5J8?+g`E7~wcL+1q1|{s| zyx(lDD_(-+(*8M0xGVHYX?eySmYlx6e#9Mg=b7Fuhq3dlRMA;2F&+$71vQMdE1l!U z0D_@MORCgK!C#4EWV1fu3vn~oO($zgUbUa~fG6w7^Cm&V=*01HI^7AEKnH_xe?_P* zM+lIxoB&-)T+!O{^+hp0(g7u8E=7+FMxmwBLzk+nm7(n{^^$_J1DSKEnCjxUB5Y-% zX1R(<>gkd5yy^^QWvl~-TIo*S_oz{dfMnwy*R_EWRp`-^`2OLW!f=_83e=}qa|x)W z1~+_Bf@?<|a}~RIA+rn90bK`}hh8iVAi!-=@Mfn5qZtv=flFTTxc~RqdkNyHRti+> zj0j&g2Z5j7R1ZC{wl;ZoKjGPpCNG}jV5Wcep^<$0<4-yP)^lkx zYmXgeXd*~0Qr@3`o+&o>+la2u(8|!-|M=`8t|KHU#igg0Lp;Uf)H0hix}5 zW7>n1HDXJaIPX=ke&u)N?kuR(b?ZqLmsF*(1ovG<_|BbCO%_@@iqX`aO~^xs^w|6> z*7M`%2zKWA+6?w+GKE3IKRZ=1ZW1FORq3iSy?E?{u5DM=BrQ;yv$w1w!9rWrnIuQ9 zc?8mI5Ta(uivh%QCG|E58}ca*K!5W=%`h@GNM))J)OG|}+>CkF|N(6DgjQnaS@pAnmqT_~P1CQqBgDm*t^WcOD+ z7QHsvt#>|}?>KS%qG#}DqFejiSB)GCd9=Pm)7F(3N$nj^K>G_NLm{;&1Om>1zVAtC zyKGk7?IM(7?Vs1_#!(0Ik?W{kea!oSOgzR!p}UKan!gzA2=d%w>Ez^O1t`^q8{|xR z`5;Dqwjw9GO*@PHpn^A2t}>AbXUXdW&?{|LtslB1Pi=LI38&Nba*oz8g)GMJ2-@m?o>g@}}+2{NB0f+QuhL+RUu{ zvp*%A(=pMxyWe8|+`g}0@glS~scqLXnQ_KzK+8YR|7^rvdcfD>a`cK#%b&^>U;g+i zE9lVGgU5TED=!rkzJ1l*>$q*iVfaVRT%q|3ewaV{*oEL8Ii}0${iWA`{lV$6n%Ws- zCxf-dOjmCltMHsUR^0#Tn+P5yoL<-c*F&AiI5s0m{n+c4za-jQHpwJTQctbrUP1z<(+|!NJns`D{IQA1p9`p1=U{zZ^nTK` zIn!+&VIC^=@Epjo_cE0C`H^by?E{61br-mvrro zVIuKPsY%?MG^!?e^as3!>YqohMsD{`zU@Lj3X?Xr8u2FsY~)j7>_dkRUE4q&@^lb} zb2n4pz~1ZcuBnx)Z|1U}U0y9Z)Q8mR#BVQOzPv2(3ZEG=c2?+9o;|t_|KuzCfB6pk zRA3RTmD9Lo^EGp!{>jh1iz0k`5qxN(9m#a1u@#%WBo`w+tI3%|{rdIi$74s={@mfo z{bq4+MgiK4(_0_J#l=ZxfY=_WaSsNF!2~p)#e-0@=J!et8f^u4FotEpKf77+{ky}T z2kh@|Eai7>yP(XK#Gri9@Zv0t`%BM;0S2;3u^d)( z6OdQGdpmAMd;%9B4y&UV(PBIAQu^{Gqty))2@QQ@u*C->E5Y^XtMPaceH2i76A_u? zUE5W^g@;{_`3dytg6qj3B@f`%$_(LazvJL|1Q!)4weF7h zsDNGc%)rZNTQrmd3!E{qoarxk8WLq*1Ib&5DuwQL4*AdAuzB<5{yiVNn|j4Ljk$y0 z2;dn^#R(nq`VXJ@&r--wMT7JE@Bz$QhmhHuN>3|do3+8j#3Y|^;4S!gr{WvX@oZcs zbooL~pwzspy)XqzlMuQ#6P>lE1r#zsXfWXKUSwOh$(z1`C}wHfEt5E3cMZqac@7#O zXaS{4qNO-@Hhv=B8BCv^ucrq7FbcdgkhJ4O$e7=1LM~nkQ>}-R@c)vTO=cGCU&9h> zS#Eo=fqXD&jY|^sV}d<&Uj{F`@ijs{)!~?sFoaPFA6d)_$mfztCLcrt$tw)yiS#Q< z5)%zGX2Y>{dmzzN7!!4-sv~gENh4c=YJUD;GK7)52GxVlE+@3Z4>i=%b-#SDE+)qd zI(+BZP7xs@)(x<%-5vkfHS8cTnH@B4&F4IS?kS1(&(fvDw}79AfeRzS@*#uexuiGjL;Tbw{ie;G zF&o`Q{XnQ|vq!p54Ikp0usl~!!7?gXH#9dkLsGH?a$5?zzz!D`Uuy$kFUy15~{v7ZiIxANZx; z9IA}5HbGxVT z)X<;-g^ekkqZP9RGZ1Gx#!h+vx$_12R%F4cxhta5V#p8VPNatg4v-*OSU^nEP+nX- zV>Y#1PD&_gyg65i>F(8Hu=84K11OIqjN@J>Odr+-Q8|l;X>7AV*$siyMBt1uWdku8 zbCg5_+SnLEoz=uo%7Tx@sg#S#c!E8~x*e+!#~Ty>maH>4MB^oi>0p9Akx&p{g)AP% z9}6gVQ4w@&l?3Y)FK4afO{6ob?BWRBgK7?DF+}zvNlap96K%9(tf%?m@&vAA*2jb$ zH;K=jif1oK|e1pbtU%ewS$IH@6dASY3{G~QE>5n8Opr@Jb+*bW+IBQtpe=T;P_6-8T z<`x$rkonaJW)rXL9Vge@#=e8_RVeiJ$!JJC4mYueJ|j-X00!;zmvaJQ_2pBYTWA}I zy`H0ut*w{{=1!L7k^!rw-kwU`G8+7&TQD)T^ttDv3((7~P6tQ8VnNis_Z$A01>iiT zBuZL+zkG`|o6wF42tb55%rI{5rNs96jHiEdbg|L{KO?Fj@M z?l=gA5RZp(#rzJ<<|_9DgKjsK_DB57d8X$-woC~=DQD0Ww{8CXsZsI^U6+V{TmI#j zi;7MKuJr#GkkzxUTgF+PqyHAQX{O(TFOOW@_xTQopZv=woty6PjlqJg%DxL3JLtUk zX(MTEZO07{NZo&HuRb`)8U8rz+GA2^a;Pn7RbNV0WwYMZkpmeVVlv2Siuf*YMXn-QH)FxLDBK*_Sgmf|*eN zzHyKK%O@B?y42eER&&Iy`~yw}3j80E>`VrIf+^qW@PX&iTA7%EWEeh!N}K7?pkO{# z7%OpeJs$i_IQLD3XfFLIACtc{Vd8VFK*Z<;$!-P9k|R1`qcBaFlB|-!-cHfkYcYgs z(E@GU=6a~Hv@(ei3pFQAN3OLvfN0ta+>J4#WxN_AIa&E+R#p{djn2c;q7|28C>3va zcQQdjKM&h~on4*S=e{awCMtp~&=EQ3|ZVu*p4sLMET&&UYGgAYW z&<)*uo$WXEb;$G{Kwf@c7z^?ZCPY!I;H}>L3UKVGQPNwZ!b1+&df* z49eV?&Z+%EW@Ej$NBfVgb|~@|#B#c>%N%}Hl8E8Ngw7iLCH7K}WlJ^0yxLv->H=JF zICHPL_IR1d$h6f?-7)Af@9O*w^&Loe@vDE_oiR=-_wRqhT_X{^YNxq*cxz)g%%8HZ z&YL%{r0+@_XE7btd8-4+9J}yHm)^+v93>84gu54qkwpWn75aYH_>A(oPjzaVO}m{j zJYbRxf7?Q)qH)4}dezaAt?a?ygFNUo92&;yCovf17feFejMrq|w;pG|6b%D{XL9V0 zH|=hix0JEsz!u|=#i8lvbMVD;xwT{-)k!HS|IHpuXuGioVS+0~L%S;8eSJH$)61~xQ~8xe@Rwl!d(peGCf)jnTrThVnNDWos}jTKGb}$ zpfaz!S~`95ReRo4?zKLfxNeIz@GMK1QT>SDWcYioM$esu7g#f$psT8MUhuOU&UW9NNJ4#G-puF#>x@@(`t0S5$&@a&_lWtp z;eltDFCwB>yFbv6*>x8N2_I>VO-;K~P9lvAk)Rx7_v4*3D6PiTcIa?D0mZmwVmy9N z)2c(=M4XXUhgG2VQtj!RJw8{4->76v6{ZjvP-^T(3i#C@+HB z#cUvZv{#JuYGJS4w)0)3>Ykmu&h-Mhh`HBNinX%C3V$zZRJm8THm+ixNypEc2tJq^ zU~_P55&3PZC-Q)G9R-C3My3YU&bNDe+7~X9E<<=|ay*)FKDKse$EUV^*S7~1#8jVo zv4$~8=@ETq#4%@gc}}*3`Q;pq;{)D;;|ogMs1A&xb8D$p53?)ktiO~)P#0cMokha! zE`VE0JWUmdKK$M-cocX)^~qRNTAIYGsRJF)Z0B)zSI)hPnS#*p+rK}oYwI;$)rV%@hm^s#W6$ z@R2j=?IiM#xYSI|o27PE+3qHZD)-u-M(?=!1fI&&*r~84U>U_JkT|f~LCsK(1=cBI z$E~$hl_#TrY2bxDaJ3tOezT-eZJ9?uCy2zgszs8xt!f?1kMM18vZxKez^@UgAkE&Pt(59m#&wqD+; zvDL>vJ4{*n;D+QP%u`RDM{r6Exa!CV-0kXSTPKkUjQ_yEKtgd*5v#;7?9wIc!}UtT zbxOr4IAdAu#1A-@)0ZW4n=L^Zk{j~Q1VXJ$CuZagl~}VYyID7>`MypsEW0QNgp^6G z-$N*3(J-&3PlpU}n>DT4tr&KMsFx#1F`ip{W`p#mdZNx>XZ#+Qn4A^4hzZ_@flI(} z$*e|P`lw74m}AI4gek3Re=SWq@HaJA$$OKrs;8NH>k$_+txQVK(k!LKsgn=RCnj@b z7@tKZMGZAo;ykn!s!J|C;&wyMO{dK2h_FUGlfrQzLHL@EK;+hr>pk{%N>}}BtvDHt zMGJ=GS;$wG)*NvCj$Eo!go()`11M0B--e_s3Gre;>Gr*cb-V8%lxOdO)?03hkv;Jy z2E*tx+_IC}FxAI|TeT`(GT@`Z^y#T0;f6a9^p)x~&;wR#$2FQe@b%4uAId1o;bQKkwVEg_Wv68H*3S+cnv zCv4TEgTMUOzW=2@P)*TP!DE>l6euNgwwXrmcu?oBknghnxpZsG`eh>?PMH0T>>%sM&ZE~nLH&a=p({{hzy!*8 zSBA%Nf`*z$!!>*4Ui=YPJ0tmEa>6^nA(C5*;=(iq>QW?9#!MV>l{}3@$2s)y`TUOU z94~s?4~IVpwDc#QjO_sZ2O{41@zX0Ob;GDxa#Mqt(uB99HW>iCPJB`luA=A;l5h$W z|FO8r%WK`884^lnk~BzpLUR!G_;?YqWB{4?6(*yr##3{vpFgM5P-zUIz;|?#1@E|} z?RQ;6W-uxK__A2i5OLl6pf$MC#%w+zGkBem{AFk;?)9gUtOjQ}4o^r+ykFpsk`c9_> z;%P9qL9s&jK2i#!$pfj@4-m}FYGXgGF1pl>Az}6N>JZPe)37+S)&ZJw=;eB~2gwpi z1HGi|@HL&DVLnUG)gFa}2$7L?@sa7YXX+oGFo#=RG8Ag|#-vqdO@45^`eLOHf(cBv zTO^~B5r6XxM55loaKeoC0ky-%11nC<g!aqkD#X9vdLlES42nJ`c$-pS4Y+e_wc>=FKaYV|v=35lWKr+~wc@ zt1|hswq2s4qHdDM=2aD;o+D*QPVQ)!n=PkbcFbSGP6N`yLP@Q9K=PIsWo3ROwTZZ668CT^bx#R>w|Roc z4zx#cwxl?Ej=ENJPtBc4gKT?YnIQ8NvRXfpr#>##z$^G%=)0JC-|pL3zRv+;4dhqt zjfv1M{(ZLlfBsL9Z_hfB=G0oXdTlxpI1~B4d(h7_+q>hT!XVg6x$=ijhZv;W#Dd6Q zDZ&9q6%v=H2cF{2U*^_$Gn%JhcD%b3>2?oqJ6-P$C@EFLL8HnYq0h(mYyPZ6;MS4t zpXKcallvG4;r$vN@npmWY;^<++Urm*$xm*NR64#S05vr|IaTC(jF?jEL{kD@3|M^S z=#E4swjZchT01>~NDIpTVsurUIRB3<>(?!~@}JcAK{9b6T{Y6~2VH%r6;w9!(}xF|*qq`1x7wLL5@r{204>p^b2`t#E*g=F zRwhMPL|egEkY5wMe}n1JaBqfQJ^C%$nUuhs^aljTFL5J{T#a;gB-n5eCAOuWnS@qj z7`5f%*&J{+eZ8Rk3Xvd{%~*;=Hdy4RL8lR%!U6HPmgB^_wYUFF5NF{%Wh4qrGjxQw zdr^jC6M~#}CafB>bg^&xe^~X=p&Sv3h+Zjb9=v>jn)1y%QJsx&AW6o2$uc5X%Or`k zD_miHyxOZ3Jx)V~AMWc#Fh>EX1&9j6Vtb2a-^STBPhgiRCJdOXuJP2#GmgpK{|f)v zKKPx_D*v@d-_?4q5p4Gp&iS5CMqdX;Uj9OEDa48)-}ZPm+_ZP3|3G-3!H`cyJ79Tp z_aYlymbR3%6%|xo9o@+wJyKfwV1rULZj<{7e!tjxeyp@;A=S>}KGNd!f;#fN-4S%L zEeJ=6%|RVii+Foiulul}lDxFFN1I+OYi>tUvB{G3Fx4IcER>axGFB!3hm0=>FLmG- zfR20)qd~HkY&E%>O$cL*r-okNag)eL*;RKeH^`|Tea9ksoiq(0mSJ@c>MADHr9>^6 zKxEOOT`ZgHFR)bU?sEVa?f=7|+vT6RVp%b$ah7%Y@7%U}Q7k2PMXSj@Xpc7$n8y;~ zZvYf*qQdd%1J;7gj{e)u^b)+?((3oydr{QzHC2Z{H#-frWbJi$5{DYCQGc=6kBVMP zL*F3>RK!@1NR@IMIyQ9DM2#|K;@9p(Kth-v&6Y9>@!>FPH?DxO0Ry-_9!nYThv|V$ zVsk$RHJ2C9b>4Byb>8u(R0^(9p_hv%ax07zj*%%Mf|mEuGb*SPPmI) zjyYVJF|>Qsl=$JpzLxz+spDQ+&cn0P>kniw7$)VLFs8=S?P!*oX@*))(Hm@>l0MKI z{JiRP3x)`EIe9q>ObL(MTOSc3S|-lM&EH4vSdFq>Ny^?#FIEB)-Gmu0m-PQCxPNfEHNd$Xx<)rZX0E9S`s`uN=&_?PsMQ)nxvlcy-j42A3*u3Q=8#ipW z%(fi|?o!W9WSxs30h2HUYvQ5HbJL4x*rliKMgF+x&W@X~S5*k885!=?Ue~9()I43C zK22&3Gxo_9wPa4T#UiX^S+bfdMnBbwp1;pIMNdlT+Ea3|TNq(YZY61%!67A-4>V^h z?G4vBPMuuEDcFdt>D#se23Fv52Mmai?mka!;JCC}+{IhS_(?$%Kr=H8Q7m8$pCu=0 zFk#p@ke1lnpofR$tN3UB8fHf1&LO=9fy!Oi?VgSb+eB&A@Y=N5gDy zSPtnndtrELv>RAzy^`+zVMN9Ag9^76Qyv>F@mIAo(K(cle73f?sy!F+nf!aQySe2# zYVZDtzmvxf$V?0hKsLfPZNK}{*EG+rUA4Q!hGga?DR}uT`=&SmpRsDWdof9n)XGGu z40jyq0TOri&SfaBE{x@L$C!&MK$@(JW7|^h0wmRp%3=SJO(;?5g^Gh}aEpTK3+__N_nBqKuHYv?twNq12@lSDnbiAMYWWA;yIP_dN3 zICX`BRj|1pqdHPF#fR^H(Y=WaILecgC92}xNL1y)_P5D8vu?o?y(6gR30-?Nk)(rb zy>sWerem)e^X6%{;P9$Ek|k91Y>0@H=T)Kq@h%y|DilIIaWVl=MmgYg;MQ(jRorvc z?ajrb;ZQJheXuuD2UAe4yp#h7h>sW5;-H$8q)%+UwiTo85qDgLfjtb#sdGsBfh6?J z5u~O$E&8^BB+1ypgI>#4CmoqN>aO;TAQVPIRA#)KvX)*sW$it~c|vI?2X{`or-HTC zlBZed7)y;+Ka+6&V-|o6&8iyyBf%ZM7XjL|axf9Gtc@T_7u|XF5OwyF7prWm=BydQ zfY{X>(g5YwV%~03J=ITw0}J>pjFb+{;tU0<@JeY|k0K72m<5!L{< z*Uof8RuJ;9(Jwt^A`freCHm<%{|P?->FNBpJ{@f1!(14PSw8d>x^@Nh;Uh2egeCUW z=8rD#q8WdG=TKGE&xER-uz3z=hBDz|bJlKH@;YyKnV{-8>u-OLamBDtzY&_yh{C7m z_UXA{+mBs4!=YEybbekqv$~4Ff@A_3mc=}jC$NV4WkDe()LSK%hZH!fktQ!NIm@-xjH+G2E zYmBDm)3*>3`t+dw2dyZED2OCeM6>pyYgAOflSI8I!e37k^eD*&`0H=$+V8B-gaV7y z3v))>6u-KpjIrMQv>k+mKAjsvCq5mpLf?J5CWPjHx=)2ZMFkVNXZ}YXAY<=SA<3y3 zU@ZvMYBqejP)CF5zaCEfk9^IaV*O7^5mxl4SoTvai)HXBmKFNHK9*%N~C-1 zYdiXNoB4k)P_ejr@QARGYV0f9o}MF(KP+CnxS+u~)%20_)^p28ivsPB zMZHG9E6_lHs`6&V1eWW^uqbv?1Lkxc`@6dC9pl&6TRs@clU%F*rEv4_VjlKz;%YJU5dpBD4U2b7So{{rk!P z%HH*x1%G;gB{OhZ;GC~)ycc~wpJ(%E3ZS&+)~sgFZ*9ohuKs(V(`Mn*!B2_3K34*w*9tFR)-}#NKAKY9tcct}nL*{OL&J%kflHQ>( zYt0|C03lzJPhY!X91ZQye)1b3VJ4d(%c{EdRvcgDbvcAzRb;wA=!DF&iM){i2@h=C z>ih3}GoQW@7RrA(Vm>VfvXTD7!GrCm8yE+V%{^5ZNXp6s73*q_sdL35`aP@PzYf5> z`n~;RGm>8?mWBT#XTDn};TSx+LfS?pekb^yGcfdNoqS2e#(`K^ zDMwO{4)6nDYB!Ac z(g>f(nSf>R#|K$yJs5tq3=&}j%T2~jg#FpwSL(R4;#i#Vov)ufij7?w0IQq$!E8}rhXOD{UZb^+hy&Nu z!U}z^4w=wX{uZJ+=7IRGXw4xu1A|_(iP~~!aqOxbnB14#sUgfflZn-#GjPeBpm>+H33eI&-=@aSo`7GaY>rk!-;PY z3)=@FE%%y1jG@KC=6lrAs)7M7TN1V|0u2bUdkQ`FsKV0s97PJ)8+Q2qCd-DJA4>(`t&sqVp0jmhxiP_UsrbORYvn~_D zZ2z)@O0O}lu4@Tlk#;6z|9b`_A_>fhXTGnul=6!vRy=g?1}WhEO1E{o`-nUC(GSXe zv*O^hX~H|Bwrr}W6t2H-khzkBC`*anjBOFQ?ISdp8!dZUrfaN&qT`_4JIsGGu=iiG zSo~Z*fuP9FTV=Dceu1Cl4$jMppnmL-u$=Zl1v*W0q`&ZFq4lBdjpw+XF;`666JAyb z*LatT#n;nnvcu}bUSki=)}eqQ%_kjU0AsO`qy4PO&R!M`7EQma|Y>G^hxR^r-7xvyvb^pz}cBW4AQ%YRvalEnfn zj9KlFD;23&P8nC?1%N>?S;qSeIRhN8WW9rd&XrNfJ#M>i=!^2^LxYGDk4V ztkiuhYndXQreJh?OFev+q-bIqeYH$Ok0rb{oVFd5)f9XsH^`C0p}0I^(>YcVk@Rnm zw8at^-K~=9o<&wY4nIXYnc8JP@pyvMUP=cTmPQNnBBqYW>f|z20%A_eO%$K@H)C%?=o~lGIcjvD-@I+1{hIllc@=hdD ze!BN=PSLu_K3>obM=a-D$Koe+$2pI0zcu7OU##6=q?TH1k(4N6#<%u!ap-Z{!%uZR z!Z|n1{PV<^E6c2K-OafOQXs=FwdFpm2=mNLGC#~E>__$!jk&z*?l9Mz_3Rdg$^|OQ zYcIzcAN{3++teX@mPIQyM15hor4}WxstW}=u0XjM{39j=K*I;+tT6T8VL42xuyB4% zr`bMyAEoU0`+A94nr|S6yOe{AaXy_ASgChE->D6#r>KAU*D;W}yf=oVUi&dtQn4!z zJwGov0WuZgK1Ij5=1JMx8uMcnA#-7p%a>aVE}LFGa!I4X6ENqZ$x=Q{HLmpmEPFgx z1J%Mhq9JQ9tO2Et+4H_+F}(_#F*|5A@I1Dp#e2qa(%*&5b zRiHFm>hYxgTAqfhCe$6Q>4tVVJGiwWyKR?f_%*Blh<}%mCAOJT$r0JnNtq)@rUV5x z?~dgi-0Ui~PsQv7g2a+L#E0+vQRq_xh&ib+?#m?}{_QrNuz1OihvR5&>Gx%er^)fms4aj5Y&#oC#Wa|#(>vI*h3M_VBIMy z3$DcuhI`k$uV`?j-OW#mAm?*hZNp zbK7XbrVo!!l?^}Mvujf#15}tf1mQ;6a*azJdg|<%)?rla85RAREGd5Jcn5EdI5|S zwLJCkDnD{rZg^#z+M>I5ldC`IHBmgxsg(pv2L#*psWKk|a5fo581Ogm?GZ8NvPiVi z@r4R8L(GLk_|3!tP(BRPY9Vu+CM)C7XTbngOf%$I@ipAsvjT0VdYmTVMZ4m&^uQRt z>E%~XDwO1bB|FZ5nnH@kOKfn@I54?FZ~x8Pz;$*h-L(^lk@kv=!|ji+M*aJGfPTT& z{Y~9aPkBFpCRH;403mTdHID$e8Mq{F#HS30~QIFs4&vOX|fby1v;adG@jQ%l@IuF zFXvEj46uh61n6lF9hFms$$8dB!i8IJ(7(gmsr*9ZjkM;22?NQk-!xaZvtBVtmNBBD z1+bNZ+pjpzcZ}>KY1G10J>61V8eK}nN?EK3a0q2b9Qn}>B>disTZ^p@M27Y{+$JTi zFpl^3qF_>3Q`~FV4i*tWBm2mABZ>0P@+otOGcjl%O2m3yRO$(#cD4xb!{HTE!!z-y z46-(btvqD-Sk_ywBWH@a$6bgm<8`0i0+xs!3mp!{4Y`>c>zgF6q$Dm&auCagve~7F)gV zNVuSYePi6D`NS$0D972X*TA+udKddc^oR_22#hvF=R1^c>jadqtR(cxZE&-vQyOo8 zT0P{fP{d`_AY<8a(0~g;8C?m1|EAz@X6i6RL|f}26xYtAu3;)cpxN!h(e5un>@F?# zL70<05}{8PeyMc3dkc63@7oE5`&N2i-AU#%KqDyx(J2BD4Ip`lFn=kDLxquYa2Vm> z(y^x7b^y4io%sz%K4$c~)UOUnaEdwHYx@IPzsffeohF?vsX}P$FVThUp>Gqo#&c=V z)Sb>D=IQi%Frf|rg2YK~ip)boM(`puuD*K;N*|p`U=TC76hZ0Io9Vp5S_BKcJOE~Q z4y4H^;BGbOUmj!b=H}+}b{gKbAr{8tpAm(x2_Oh(;jsFG!Z-F$mgh!nh#SnurD}Kb z;jhbdZ^qX*x=9pr zqJ=>t&|?(j=lh3$5B;3Q!aaGEDh{^fy9O`JItHq`_G8!`U&w(9+|Mh)kUQ+Y0qIL< zPR4L|eB`quxRcl%+(gChESlY;=96tWf2Ii&)8UTmA)%puX9ylRVi$2P&KAKlqU)eMWKg^W(K!f^XLAT- z(hE@FN6#&7BkxwupJHwrh$Cf(67yrj;v4p2yMJoGvh3r7C>l-=ge2yD5?i#A$5~R2)Ssoy>1$Um z27r%wdspH&^i%Ux6a}vvd5oSV6(M&asGKTHf(KcAtm6z9(822xFCqDtQ*BH8P+Shg zEANd9fOWIY{jr59-TV~c0LDsrr;yM+j++=+(s|FUp|up`2Wik+YOOkHf9!6q zSP?+oI~KhMG{4Uzt3ih%d_Yy|=Y{`e(;B9ZTSst35a2&|FA&2P5r{k39K0s2Od$C- zUn)grEvXX-A`|mKhQ9Z~%{}hfsBSQ5w!mjHeS_S%tQ+PT9!nCd{hgZ2mtWx^uF6VM zhodz+78kvoD&Ko%F(oipMp($akIE>i$Fy&_^Fm*%N1I`mJ1hNU%s*3H$h)^nni<3`(h5>m*My6HSq{8 zEI0@**iTw}K;?|A}UtBtLWmv+l@HPY%{LBa5N zaNhmD@ z6^|NNYuKv)X(~boGt;lJEsYgsvNlkZdn-iPj7YQvZ%;m9@8p8*vzVD z*CWDmxQ%<0PU<|TNWN&G76Uf{?=z@3MlJvNa||MfMS3RvkvBS>ZmhEC^^Hr-ZZ*5X z>RH*FG4e5k4P>xecYGc4qIo*JgUTH3_BFRpk!pB`8Hm%2ME7e5;dVDSoVL`=Q+bR~ zC87g+l_pF|N^_>xq}&}bxd+Sx^S({RxAf;X_#;~`C=BnMM4s8NK^I5fkuIX(*Pm_S zj<0qg5p;}281;E7f(s+nyNk+^Uli~1-nbt%@b3@p$w0KKTnrZP*LQT&@K^ZCVC8Qk zwBuZs^7p^}#6-n4G5=uqk4v*>f3NWB5sQnGv)vCT_0dvSE=IC1W2M+{6k|A;d=_43 zBjpl4%ZkN26@hGIpGjFxJ{>^9h9%9^t3M%gX(BBb)-sh@C)!F82P&u8^Lfns)}`|F zX)+pBCW0$UNXTZvKT_!Ytj|n*Z5L|}UYQd^&8d-2W2~~VTK31Xy+3`d=J8KQyLbgc z=|*5>ES)y`Dt~=3q5jOjpFJ4=&j0=Bz`x&U<4)rVeIvy2-=%}nW%Ry#D{9euY*FPZ zNkL3m@s-W2f!;QmsMV-4F+G6S&5o}Jwdl|sH`HHC`hY#Y%L^v8o)Xe7XW0*R11*S} zP+a?ker519?4>dWO5=-E4k51AoM3&CaP#o%b-@2-IX0Y;AO2$&K=9Z8 z?9L+-AgAq6QL#OC9KnWI=tr0XMBM?2+xg4gKBNt~B@w6AqOBYNk}O{1<7^Xzf4g?= z>aaw(XQX;|GwBiW_KTvVe=2s*gKq=yv0epP?7#IdX9+2nDhD>hB6#IxYgB^SgS9`3ce<4B4kWF$2NZ;uL|<}q@K!qBlf;o-WtTCem04ij9=Z@PB%<|$Pmp{qiR6}IhlYAm^zJ^W=DTt&#eU(Nl!p5!)Xx zN^eGCJ<`lY^*~QV(ApkjMsmf0Fczy(kk6-($fi)f2?k4>a!E(a_bf6p2~8e>)hIg> zAaDmNq2j`b3^hw!pKssb<7K}9DTKKk5`(QBvir)c5hSuNuW_=LlT%WnD5~0-`$J7b za*jM(y_oK;FoeQ{);bWMv-04U6P`m%`EI?0|3$Dgab^$*?U@)k zIt^41(+&}F-ogx*t3jH>t_+GqSPi=wK~7AuaAi2{>pFHx!KB9`0yan%`%vl478g)x z8jUh&!o*u+6dFpx#%hES+`YK=6*c_w3$E57gk9?K96&1BQ&>eujud`C)T?XheDHwX z0AhhlIbg*r(2;sw(|wz=W`Wd{8& zhCN9Je6=RLe^FUN@-|D zTA3(rTqXFtC3G8nO}07`LhVdI&S&Z5=jYSb9|v>oy{1@=x`+=CpSpNXHOohfi_#u@ zS`7yY)~3Z*^f_X?A~h~5WULU}0Xrso0o*Xj=*w2(bs&X1pOg9HWIr!#=H;i<0bv)U z4Wt0fP;+UOq#+?Re0{=4%Ytf7J;b}sWZuR}KyOCo!X}+D?R7UdpSj}fv-x-2&8!5p zw<0?5XClHR&$dJ@Nn|}7ViX7K3D@on@k9wYc-cWm?gr{W3O;^?W;8bV6IFPM(=Y=Jwom|G%9>XwI!K*4T%MtgO#I|iQzM89bEJ0auA%& zy7lt2$&#m~m!}${TRK%1MYeq%o3_ANvu}Cywkwx%0Q!*7tVL*;MP?Ov8_Qb|XNU=V z_7|A@hcDu6G>S8sMGH~F3&VK_0x}vO*?MQXQ)`A4r9_Oj%h8D`3zPIYxTJEt)v|oB z;>v^7`(&&t&eUSH(q#FvhHj*zteOL3vl3U*2)xmlru{_fda4mxFce>jgA^^zx6+68MdX^|M zYOf>x(mvEIK*DQSA(_CE+Y+{FSpZq>a#l#u=B!37yX3;q3kh2XXLID47VK$311JeJ z#>69b?>3dAlUb6SgcYbvBbq4g>&TVy^CCF=J9q=x2TP;%!dcU2Cn7;P@?<$XcJSPT zPPLiT$vgia$bVdSBdu491UFHIwG zwulaD{6nS6Ub|y8!F`>2LW)lW2qi~7QsaJ-E3r2_ph*!WIAA6A*smjfVzipbAvnhk zi;b7p^}eK}9Q};CT=n`>D|mU-sYK3Z?p_f1vV-vU3Y2HOxP{^icP~0o>?-^_?M%d{ z#TQ;JB+V!Rulo|3Q96G#qrOE$WRrLj>WDtFg%_4z?|T3~|8yOKYh!}ht4aK0qWhL3 zy)2=?#zknKD(}EaQC`I zcF=TbE7H~SFMC^#F^-axsf4(eL;@3b8m1i-_MAdeuqFWA7Gt?Ns~z_-;D}^CBvOSn zSSKv5-u~U3$BNsgU)_rh9B0oU%}L9i<-2c@V|j4>&9>M8x5K8Kj%>7^{mtDPf|;$T zd1s54lZe@o>h@xRL^_~tlO42+o6w(_topx>-SWY(gb`xQrZXEBO*$q?*1;&jUTaMInVVRS4CimC<=B3`ZXy)}G!%SvNvr7C3EcNS^=k=Lke~&% zGjUeabsiple>Mj;T(Qqri;-?WroTMoE&v=Tm}DZ4Tlua9kb*$CDbw|-QvSWj8;*FR zG(XZZ&C0_lNpT+xbb{BMeC1rZEC654Ms5yJcpb8rsa8_ewOGvP!11LsUVWFU$sF>9M6&Q0GllobZN2}dnFC|V~bXU^p)Wek2x;NwdLkayy-u`>S2 zfnvO`u3u5^FunP9YLFL9+-xoynTQge`PGFVI}mAYWvKA^CD`)H-@GCEdrv<(?s{8C>PUyE zy>NFDtXTATsj43v4&r(c7e@I)QR6X+yt6dl<5aBUsT2m>K|~y7Knm!dT_|tTHMcm2 z`D9PkJG=ElDJdANLo+06W4Go-l>-M4WcUffRZWu#UA5yn=` z*lHA4m)lY_FiTsyLh3bEN3I`1e3J+ziDypQC7#TwIdbWciu*<8U;^wSS1=~ zGoG=`%&z8;c0oV=ZcHyOqsR_eZNw*AtPRDwRv^NJ6Wm_1F^{z_N5K8O6rXzU6QN>nA3sF0h z#ML>f}+n3eKOQz^Kys&1H1ztZ4bmh7W)vw7`VS=tn4~6qUqea?6+H; zBlUf!>VHrlnzUr)is-vtypu~?P6VITF}o;S@q<>TZu2eWZ-o=-#Z1~Sioa=j&EHXQ zzEM#`-s{>-edBdMpZR?gtGGD!jZ1HRzvjo9t2r0H8R|Rs>Uj9o7iNdzSFQ+iO?H1u z+?%9sbzDVXB2iKtK*_@wG>-p&?7a&#)%o5(zN=}{E_6`|rH+}}MN%nLm|@aIvAYOG zl5V72N~zqYY|fOOOwpZo<2J~x5)#ceQBj&Lr3>0gLb(gM?EmZi-OW7aJiqg-IcC;+ z*7INEtTi)dG<^5x`}w>-@5}3QphbA<3v)1tVk{HmWdQ=}8B)O;ZM|(<_0ogy z`R41k;C8GsYE$`e1URd;ff;0a*aZ8ty3V>F#aWj+18OgmCR9rgKX?Uvr}Z?~U5$N4 zTE0%?2X^1C%9HEO+I|&f=?265s=nPR>wc`?2!B|4yGu9ZeJd792%Xc?V{34iUyh{D zX(zCKRaQL%oVp9=?QeeVl z-fbBdiWp;|OylBR7up~;86S$Ho1y~L$hw`|ckGB?OAd~2l0e69 z<(x>l{CW4yGqW5_^yV3SVdvAiMK5vv_4>%nVJhdy616kuItD%N5g*I`+X^rSYz2E(AL(hhZMVBqhEeaR1=0KIXtkj+nA3j|qd z?y#CcP|b_o@R|TG`6y2;l#!g+9V?ODc@=lB(|d&QgteME-Oc4UAJ-dn-)!!-l$S`l zx^8q6y1L%p z&eHDD(b#4a+HkSV%tve9LK$AQ_ee3jBmfaQRYh5{bp{S>L(oqZEV>8INbB*#b6}?rLU%+R|*KKfq?12vD2uba1$%7U<{ce7dZ(C#g z{T4%vdEO{18G5W~Z^a_S&C~Xg`;jJ_CHDY1k@V_G*2l?*&6qKR&<=VV_LX^*1fXS- zt|Eb4u@h!z%J)*PT)Fbh6>Wqy>JuhRs48u#D9o?^bvLB{=eyxz@2=^s4`CBlFbEg& z5A(~B2;3tOv2FH7X2Fq;KTF2?@4DcD&~(imdaPk&R2DBwUe%9HyGOe$YBNxIzTOQ- zDYO!WaGWfOho4A^irRt!RTY7xopOP^TzUBguya+VRp<6&Z&<2R7e$Xyk}#?rE6kLcjMNgYyIFvF1o2-1Q7v9~zegAVoM;2~<;@EEzlH=jBYnA*|_Ae_vmbkQZ9( zvKCtoGW;9JtN8LfbO*6peCMn|i_7vdd91FhY2LT-l;I@XU9sVkTCrpSy?-48iLF7m ze$EjSfcth|OT(UX_ri22Ubf^OAUCUak~5}W{j+QF&yo>boY0`0QKbt{l==-ziaa{& zSKvxow;wlUK@$+G3G>#d`YFq*8f4kT8w6jwdUem9J=%swMZR;|yYGI+gal4!A6A@9 zUrys!eTBmQ?Kd7hd-}8{yVo1wtGEvam|Ety4Bfpj*5_U}Dy7;;O!4e4GtShYB_8aV zPeV_4%-*+Mvxo0t$uj05yLy9mN4K%dBGv6#w-Fjm^#G@O^G%lKOWl2#sn&i*6F{e` z^Sd8RBS+t$8wU{J-MevK<7BbHy$_m94RXoujGkY@xUmDovDe7P^b{><1gA)Xo(lJJ zH?Z_oo?!Y}D8~i6`u29>5zq`PS=Kg4lw@~DV)+5U`cQ|q$5vSb}71E@F7_?W6;?-%>e!C+?1F??J}dB*vT7&@MFoBU&u1a-;{ z8^=VuoR7Yv$S14o)uZ4+a7lIAKdPiu$Lvi-A@iPZxECH z*h}Aj^gtdzcwhz@r;FbK$+Je{N)w}WbpD)j&$+-JpiAybT-KA%vpx?vcH|$M1`J*q z^h@k_igOSByrf~L`SRtLF2&wyD!u*rk|3oO+TVq%<^4QS+rIcS<=E0;><@{H`D0do zb9hNg;Xdz*&cxj}tFNEXm%DH8Rw2<(DoSWhyj{NILsos4@XohGCZ5iVi;LsF1^rLS z1q5lX%)t!IT8+g}OtDu2jD+{c6OgKZRl9oq=Ef z_J8h79@h6injRM)Z)?fgc(@s(@R*o`#Vd4pS7weqDrLJ0K+bmrI!Ev@$5)~y!lKVz zkZ&5MF;orA^(79vM>PsC_Ze;C10X|mO6xbD4_7>%w_@JY%@)C*V55E>_xpCfC+J(r?f8`uN~Ozx|)%#$!rKN)pvs$-N)ZSI;Gahd%%IrdbM%M;PgnC_oH=pdYGi za3$?jr#izK)qXSK3N}?k1>+^bh&N7XTnm!#PC1uQ+w^I!mb|X-F8P;VJho4t z?tge%?jjG5YjteaqmhKo8sd(1i%PN52oPd^rD~E1!grpLU<8{X>i{!hBk`?5hjWFb z02EoHSvDacW~eKCsPL6&ueGq?3DMopy))&UbL!`xh|PE-f8pDmLH+eiF}bJrC>*`5 z4b_Ijf`_?Y42)HslaG9f0zuHZ;*t<#e+EccCAwwk4ci95eK z#cFva09J}@=BX?!EI6&ua|zPk`Rvh6kNy6#cI6Yx0iL?_z#|j|L56#G?#|sx|c|`$ql?5LE}SX`KT1kVZjSh5HZRg z+n-(iQF%b`b1Yu&@)yu#aMT!kRG>w~`+D$11S5K72{5NH56@WqiQkd%^`F^u8!tot zFIe~npxLmzO(}|O%qLtGYe4@|ijRvk5@6I%sxUvsv+G1akc8F02cA)GfxJYt?f%&@ zY=SXMqcKoZLC$GUw`$IozSG8}jy}Vje+jd{+g$%XHvjs9owfig=ZIrbBaS(Gdy^E1 z`j!N9=ptx+|6GT8zZQoUcD}n(Bz(%O-0-9?ti$dTg5w=706)2t7bQ+1dp2ojgMsrakd&nm&b*M3Yh4FRn5ob(yF zoNOCxjD!g^E-$7S@s&ywxeVHB?0uzpv@mwd5> zPC+WMID;5)vxc{L0r#aW`9mKkLOwrIM%alUk>pTqO`}dw}E)7h6K!5^!OF*Ga z9a5}@^S}y^PTAK`E^q~sUrN#CfqQK>4q{B0i6YE-f$;0-EQW!%$KH(=TluVJ)KvT}6_o6HAsTc1xP1`e>9`gBhgC>aJ3Z&t{hSMm#0_<%oEV#si; zHkP&Y8DI1>{Zz6+ck;Vh5><}zs~ z*)*FRXs^GJ2V!M_kP;E{d&ad{_oHZE3RnuKK7AG`NZo(mb0U-q0iHR-B!VQMrv^za z_oD-xw?jnYe0UQG9OI|F1c}^1$rn!YJRw00d>#-^OKVhlT3YF*qulgH;jpsrCJzr{P9n}Z5Ly(L^7()awfh({lfgym> zY~6An`BYC4AwRbpw!heoKYy*gt3u+VMAWYUA^4eVdlhMUHhNe0>t#zbs*N6CjtmjU z#4JDaJ(CoWDX{|#uW_+)BAMv-5U+cjEbH-1^|c8y`3I2)NRt}Zf*IE%n+{fVZQ%HC z3&5uKHv&VxYznLHRHOQ4q+`0>xbLExa8JweNN^#j`|V=GWtAj}VUJSQk?=^y_P-Ig z#X!ZIRYGCM*dB4y{);^u09NOAJlL0gB9D;VLS&%l^N@t|gpf%(lZU_?AZ1>yN(z?< z4jAhI?Y!r609~#Nie#`d$s4BixaJOFgmr19SbyS(JK^owZ-#u6G)?pE?bZ_Ey3(Eq zimrepTeRWZTe^tl_hJWBM|5waUwWsk3Fva9&d@zliInXju52B#Hb1=d)NnAWvL@iLdSzPR*3(1x`G` z;fu$KH43OSUU%UYq)FC0Y@Eh~Ral!~ zHBt)f7FEa3DOxy(kIe8ODn6c6oiPnrqmII@CyyW<$fY7sNdh0}03on81uk76S;?r` zdAC_8F%mIRYVj^V9U5FSZ!fTI$#)s`K!?1bp*-9)q1bvmQ}0f3RDpXt2lypDhy>|N zjOWrR$apnqCjFiH>SxZ0o1!C{NGbM32&XHg6(VF(WYj<$Fs%ejVjLT*u*?B)HXB!# zpJe67J=y>l&z@C~N`wbD5XJ=*g9#bMqi7b!To!;44pT$Y7j^XW#tO*ch$S7DQ@E8! zYoVz*!DN|l*#>X43YK>6RDssXmQ7(>2pFdX$&Uxz^w-~;iafCvJR_jXg?B&#eB5z{ z8XvcG?)0k@gR4E6`H(eX(aX<_nrDOO?Z8?s^N)!ztEuG}T`A-`hzdHe|4 zNKHAhnD_G*m2qEQD$ z8YLhypKv_^*er;k=*LQE=vOMd`P)hOkELI)xkxa(SCddqF1=@Fvjc!Sn_*P)Mw{tQ z=IbB)Fr3-!N-UOMF_L0eBk|WMtr>1r_d@MAe|Yy4>CIR?r?d0{slP#}aE|k}lC`_^ zHy-wYr*~A050PchFjYAuDv&{;POB&7#!P`fpCs2NS{15qjR*!E%Y-C%kGt%^YU6}aBPfk`Pi z-On!0o|X2-$!g&XYAIF5aI5rR4A|M0_@3X4GwHJ>ZIr41cBT^MgM=OKNNZ{(? zgmYz72dcQ<8X(Zx^&(ws6=XKFKcFsFAR!d(4X!^8X6~be1h5yPB%NUG4u2of^KM(! zbymj8j}0Fgy&96fn!M1iB(^o;HA8@XpY}X4kFNoJNj~`p171%E5?`G=%qaz3R zde{TwjtklasUSB+66#qnqW-o83}wPy^ae(ZZi^~n`0k|1HTLCzS?LA z^CBH^J>7O~@6%tg0QRo|pqJ+Xm8~W%%n+G*A;j?K^Nc1dfVX@$Z)e)my!V3=vPtId zxr|#0GX6-zeH2>m`-cFFJ4XS9@R>Zk%genhFF?)3abeZT)kb0b|I_vifya3f{AQJ@Oc0{ukVR7ET-E=B*I ztBW@#D#ga;ZZAz1sLQi%eIAeeO8f{#+UhA=tv`UZ9~i>CsHmd%mHENum4Gp;pwT{= z(SPF6Yg)m6^ffr5?=uZ!MW^a<8NJhpv5CInl2t|5&cwq5S-Z^ zFY-|6o~2iQrsKt5Q=ukU(=I42hfb-;N@J|CxF#k-P7TtWOQeE|Oam2nuPt12tl}Y| zIbvP~c*1mB7a2+x@$HwfDjzT zP4~@2E~r(s-0#nQaoaO9(kUidlp7q3xk}Yh41(dH^8S%CbikO$9o%Y7Qu*JhfkQzpQeDd3e6*_A0hF} z^ORKAJ_#WGZ~OQhNl!zuC-yB*NJ)u_@byCIK?p`@HtEc^M7N_N_s-C%=a1)MZsIS* zt3;Q*l9!{Qg0i|Qcyd81ir#29QjB%Q?OKu^@`xd{GkV*uU*qCM`}Xo)be9prPUblT z>(5glS$plUUZ*sW2BVumjFjU6-v9VRtkYG*s+iD-?$=YrQ;!+;c4$+P&4g{O*+kYO z>M6}_kmJkoaJ|oGgur;X2aRi zL{d{+nSG1+<}b6;uN9i+KiR)U?(t6-Iz4thc$RIK(7T}K$^ING zZ)6MBNmR<}Lngyh-K^KE2QjUZM9H!&pUxRdzJCqkfhe?6t znwj{7zNMGqQ&eolRvZN*dlF1>E{^6a%d*^~F@_cUXSZE;;f0_^SimP4T^;gjkq=j5@^NXtvnk#uqG4%9?(8IcH7e=esgZeuTwlg{MOoC**^VSbbeU7p$- zkS+;EOliUFQ=W&*#DI@y^WqTwo=?m@W5I@-9Uk(eMx>n5BrF*Ok*a@xxPU z6a-XP3~tTgWi>J8NOc|0YuOud zRG?1hh|G1Sv7q%E;kidpupZ9_9@|wZchFa1TbQvlv?Pq}U;X@@wKbSoo*hNvSxK#` zcNqCf60}wDfdJvD3P(P3w%V-PXHKxIE>T-pk$8B)mDV@I_q~~(^w?W6g9ORd9tU+3! zx{8)gjY^4&o35_z<#}$4HEJ>?Rml2rIo|V0fn}@-WJ1p{`piNU9P53~G5!T~egcIN z(7o3ZL8?l7gZtet1?0pL<3^Vj_v6aFu2{~fK~%DEh~8=c8sD9nbAN6<75V2#KU_#m zZIRXDH??rLSXN2WIc%|BR%`NMv@!fcaCJlxop%^bT2EHI`M3%1$~?Fglt-B%^hRdS zX)*WRtUni=_SRdlMyPGBcKdncV*e1#LG}3PD4G+j!qxlyIjuSIT6*?dmrdQqFDzs_ zYoJBXRoDP^CaGAC@c9cRH&E-M&sk$AQ(B90Ff+q!zEQ@=AwcTCxC6XXe2kAeEeGlV>h`aN!)7k0G-Oq;q8XIi zrQIMmWK>wGx2t|=+}r^mL|_ERd(ZIfmJ1D$gDB;-LG!6Xq3Ev-=o`$?pfLYAaW z)&}?qfh+XvPgdN1#?`T#FU&2PpFYRb<$*=|oF^R%YStadk@Y(h}ZlXkQ~FsgaSw8}~Cm@AXBw1>o+c<`y2CM_dqA3jUl zSr<0I&xPyR^&r(53`uE<&nRvYlaRycxHE$nF{xKoG9?!z71md-ZiZ4$lp7kdf=1?$ zM9o?K14-iC!yOTthuh~y+H>a@>26AtE(IE))VSwj|KPly{boQvR#c*#H5MZnp;An9 zES?g?q{8Pxbi4NKO|3H6_oXJ-$@g5Y?RroG#gkENal-_(?zVGC`h!o(?L2UYAH9ja zdl)S1C$$>VTMvBYg?x?yqWv5aPjDQb^CQj>!dE~DNmnr&RJa5)kg^@D z*s(^Z+6moz`_1UiJ9a}%a1@)FpFxO2mFZMgg6MDb)9QV_k2>5|^J_~As!tW1K2tJs z!v>T)S;;9(e-&lj*BpQOf22Kgil6W9bgh}h20uRYEMx>ja}b?QHsoNMV;|Xi?IsG$ z`2B0BLuZE#q~lZ~G3m7ki22z!4k;YIgDfi7Y1d>O;eG3I^@T~fUAHB%=PX?jXf-8j zpq^JdO|&@n7vKYM$6kAls6SLW9162aKvi%S(nN`bXgTNMq~ORHDrs+jc&qKR$2Ucm zS&Wnkuv>BOzoss-{brnLrt4wj6uTNC8#i02Xozs#L!pIW7FS@o06n6l%-XnT;T5=} zg?Dg~oz9Di@R=`77qb!SnNj$Y4_bcbe@qBcoj{5x6x@)~$g3d<0{WogFePP5P%zBr z#>T}hV+4I^LgZ05;FfP!ON2ya>n6NG`_~vRE+wO;9Sim=@4UKFiJCuL(&rO(pyQQr zxNdc2k`^}ey2=GT7-)*DKGtnOYr4QifHENr2S`)EPxI}o{-RpP!YXxOxqTEUM$XfCl>vnJt< z*BVR9YIl?Sg|#xi5jW9_7Ur1*PrSg0L<>gv6_BLH_V5F#2X@33Kdj~f=`*`( zh*f*Z5{N64G=|ZEB#=Uo4eAKTg?IuZG1?)^D#_-FppE905OW*NCaI{|e(T~Af+FUD zl>Nh}En`m38bJlBz~mWZUmO3r^r z6U2}x(^Ju8om96mmG-YTYL|Hm5M2P&Al@cy3xO$ej#Bf${xx*^O&uV-lk=e|aaKi7 z{l462;UJ5f2bzYd&ENaZ%BKO-D02sBiWmt{Tre}cy882y23Evg^s1>PI%6*%sbOl?60>H29dj%JXPALP8@mx7?U+GO}1;1CPAC z5{omQ4NbgZYO+e&r4Oqo+&M}>68#fUI_HgEfLdGRi8MOYum!c%+@N>R1hLg*6CoM0R zDs%Lx;JV?MfXn2QmN#0Z#^NVAy&g*EV6|1bazMhN#)0JAk<8a}M?)h}DiG-te?OJf zzU((+RBq0Ud$dx~B+W=;C5&U@=4qOlsKJhGc_k)?Dr{24X4K`y(7{|$iP~6^%?$eF z^YskB!Gvs$biob zS}{I`$H~H`Z#Y@t;X8K!66|xbWHZgOklq!_7`g(_6GLT^!bFmxG=pMG-i5?LI72J; z%|;_2xv23+Gi*#Fd(smdHdPof@g+fn`J;E|L!}=plZOq+y#!5!t#Ot0B;N=Tr3_ zt%VEMoa*&0~ao7^OJ@l<=E^rQL8(Y|cO-G?9us-n;lN zP$ZHHg56d|+K>r}gbyFZj_~c>-#LS<03B6mY$gTG zDzLBVFY&u3AakX7GzMm39C{A@5=G(=6jQT%a@KvG&P9>sZG=^3Hf-a|dW_-pE6YLM zZAreeYGR$I>PcC%6$lZzZbAnRjH1b|bTJeFA;y%ZtOs=w_p5PL*SRZKjx-To_Jn`a$qJ*I7;RMLhVs*TJil1(Qe*6? zn`DuGD1K7bY_h~~t^}A@3YQVrWgWV_vu<;wufkFH6fie#M(_O9x?8NqspHMD@LYj#3v@2IZ)$i^7$H)W$KO1eo!*4XJbs7 zaKl>r!%;~e#66ex^ybdpiKE2v-zO3owmR$1oFINFnz zp5=#)JNa_#*cIQl`Z!=nOMR?gaN z{TR(tZITleFlIb%$ZrKB%t-iKj>ouPQBQ{_T6~Dgv=l^D!HDQhxbp?B)be7C0(hh% z%4g7?q-@Nzlgt_DnHT_|6_rH2U?5lB@FI-3>_~=crLUO2J1*19O&7v4k)Ic*s2$V& z$C||SS4XsuK_jmFbCl8JO@xQHl&XD|&8v>0PW1U*9kSjKOA#;@iwu+=(|pCD!RD;G zq{ivb(2I4Qj$CA^L&pV9K`PVKNXr?QbQYMU7(*QlAY@-pBzY>u{ZMc(X3}fnyywm* zs7lvVm_B{_9*gEG?)R^`Td-P!}&pE(qjJ_CD3w*n(9$?HO6JN>fT0j@<*a}Ti_C#@3YDyY{72t zYWCx~QL4NC0&MiMaUMGfRadM}_53?mW~P8P6a#~ER6z%Y8J`5LS(};4s(XN{DK}d) z{pBI;a+H+46|Tqp%J7)Q%A;~mmuD98(OvWFd>oU#V2M?XJlhLW#!OrVq8w8 zs?s(PY2^6l%H$`rrJIqu15r(A<_+i3W?)o!I~{c2UPMVpK8U287H9-~pipY9OJ+>c zNjBsa{f+XEO(?ed7<&c3UfP^VroL(jB5#x%F8`rCbPR9?W)lR%c?K1^LOJU9Tz-E6 zG#D*+0$RI4;SB@-c%^G7?bn0@<{`;_aAEO!i}LnL!>Kj_!)6y5@pT0rlOK#4FnRdw z-9LG9D;378#C~Ht#pyg}?#Ux+v;11P#gSE7MKYI0o!U9d`TipXTiLs#DrKh6k$F+^ z@v_&G_O905qQiG4Id4dklm|ClX~+L&w!b*2T9kd(@YduQfVXN+n)-f}Q$x3IC=U$| zJ#_xR--lokqyn2;1|&VgWSOMqbKNEW*Q)?CVYk3zWrI>~&Y38QT(IJ-e<&nQKT!TF z763nRjET^kJT={F-4;(auSI5RV+vVwlA5;O@% zv0+Rkm2wwc63!l=@`w!UqW2-Lg?*P{vkS4(kx>h`M|`k{A=kvEl@P!l%cd!kobW~~ zc{q64W3YR0&n;vz{vo3EBOzw#R`EcvN9o1|W6e`tJq^AQc^H22gyyK(v_I6A>@eTf zhFBQggejFAk4%z62*}sOOs<$R4pcp9jY{sq0xlvuW7Z{HG|pB*>VQPKh(hMx_h<8% ziyq14)fd@m_%yBm6z{5b&p`6<{`u-%rOA_nXhaalUJeWv`xZ5$y8#72QOLRRN|NS!3r7JM6 z9b(w=wc@lM%T^|RBJ)@=X2fO=n7->{V95F^t@E?5f4c~7oQ@2ke2}e{@|=1jJL`~RM$@+6>+k9Z*NsV zyXQcs5QJ6X9n?`_dFbbUN-=?0^A}>!cQP-h>qgEnrp$FC0$U?>&_Zwnh8fn#qtvJB zVX^{a@_Y=gN7tV;cX}Q8r|4V;;Bhw%O=}qtB${^eY9v&rl>0@FpGZyR^vn@{xod&8 z5=ON%ErKd{hS89{YV&$d!`z8E|m_6(orlGLsIOal+y>$~q%xmR?Rw^N!ko;~%#o>fXz+55;vQF5}!8G=rN zW@>DO5Z1E$YCgmPdn1v=nUZ>?u|065jyB}WP8JUKo6&aJvI&P1t=r;K%$B$vR05Ks ze`wB;B3#l+j^uzOUWD;xdDoRlpb^KJ5MX~BuG4T}&{KD_rBu(=dasodK$NXR@YXY^^9^eIyP zjy%ECuW?2%6ph=+CDkA3*sffWWQ=RFn4c*XG;pBb*A&Mq6p3?#Oq zj?ko^CGBMMg^JhG($>R5DffD^$bl&sukOykX}j;fh3Dw6chc;K)=Z&x_AQlVIReCl zxl$Am)-N&zk0Nj-ci*Px6}@{oCw=lIgmmxy5?G^piThy5Vyjo8ZC&Wjn$s>*WQ*?> zR=EReVc&UzmKI&WISMcX;`YiML=NF2R%D2ZIxsX~izAMe9iVKw3e5&}L%I`N7cF+A!8OhUso5panGc%uMPOJs!`-1CWqAD{0 zW$MvN@w7&Q<9TF`YlK%SpSxbR@iy9d23bs|qS3RLoD;M}fGm3-?84=zYyu9)>AWOV z$z30UBJy#aDXjyv)SSv&`EG5Yid-QztHzs<;l60)-hgNH(eLIyJaPM#lb|Bxqa9@2VX9v=O4i}8exH=g?9*8!aa@lgVNOHr$?~KCq?ncUx#H3nKr>9{;@dQ zjCD&uFxKVO^U?d$YGZO`u*`<^K3lfU0}$iLCd^yrC(jw!VVLGp5ng_TFj+6oP-w)R z8^GAdSbbEh2Hs7X96zdh0l^s((`b1GX7&X}A+lg!rhda7C6LD$w ztWyOy(Z93bOnfK?{zNbtM-|Yz8M@2|Y#jxslDIAU1N>$#qL)+*gT{}OYyy#UHthXu zV*|Zo6>6m~VPXP4P;}GD)n-F^jV&+f1F@0TrtU!;Dt``HVBI_n{BrMLjD9K)@RFGd zhxLp3}}Xt18IWkqc_Lv z{SG_RN<&GDVW3g^9MooN)014A^ZSH-WL5lr`pWGj*{aSlUWpy4HhBsSBlItdVN@>ri2 zJ4)h02P3u5R=~hzc+3O>UDiPNLn#TPORguN4I*9CP`@W)gC&zzgCfe{S zEHAl!C0)NOO=E?Z+#9!}xS4+naoPVzUI=r-7{@l8@tF$Jf)h|Yh8L+zetlN-c0tm1 zeG6pM`uXh?nQWHPd=N@JMgmmsAjHmc0@Tqy5|i?YfK0tS-Uw7q0MuNp=L7-xbi-@% zTatI_EJ^b5c^phfufrDG5<-FyBZY(q$K^bn*Er_^v4;e$+h(y?eucV#*5*cOz+)%~{nRh{ zV7w3K5fi#9xG_o>?9}37ghvnaZEoZ=-?YuJ3nzK}?9JxEPZ6iI*IHTzQpey!>*>H) zl*loolVbnrdyht*O1>Z)`5Re<&~QYMj85iZNjWt0^@2_sI97DO(P3&)eSOo86ZO{H zE{tJQ*Cl-797O}Kj_~Z)fPpM`Kvr#JkF9r5uiwk~-}bT0x+c1fE0U$5Ur4e}7%mAgZvjmj}E?xHYG;O@BM0 zn&b&4NJ_i%Xgq8Z4oZaf28_q58tf43a+h?}iNGk8yT!&W;W9J0F*K<=*gWD#^ua*t zSzBKv*ohAbr1kLy$Z)-04d z$-dDN$vaBg8MYo)O_s-S8tuTgH5MQWII0+Ud2$d#4kk_U{t7}&&evnC(ZkEWa1Xd@ zMH3RK$U{c@u4YzCXZMB&PQDA@vsA*p4o#A-6#m-Jf`+$<=N%7(lGqbBh$bb_1gAIY zvvM??VVudR&xqZi%*F^ktr-GFomjXTd&ZG9J*oQ;kzb0XL2J=eDwKo)N%A*%x*@B` zVe~1}rys|KJloWCL0eLOn@sQtx!K44uQL8<>ZSDJ-Ic z0EV9ius9|LJg>nD`j znn71FJCzc?k*!6!K?+X5MXb?=`Qt1F05RSy?L3P7kels_ehn{#tiD6w5~sn37C@KJ z*`4EYC(BEaHO07L?j#`3K<)a{6g34JcW7rLI}?nUm=ysZS%#kz7($Ddb36xT;^q#R zUm6MEZCe$byq;jnu|epRN_n_MF>`#8y2X@3)`pHRaCvf08Z5y*+Wc3PB4gwhVL6s; z^9CS*cT`4=7#1A5C8cE-HP@wpX5u$~{P6x<9^_g)(^)KCEo_^!;oG3zCBBL*jZaKH z9+05={3w@w#Fm5bM;OYB;{!;QD*c~WR$d5=44X*wqO-0Spyy96uQX^9T4tx7E872b zr@e2-Dzmdi)y1ChDe_VNpj7++O{x zT@JLW;30Y-&H3+00n1eN4H1GVpd&9_CoQP(d=uEjeUriq--7J5tAPdtS-q$LOe>*E zVC(ZN>e&3+*gb@>5{QsEG%wcm%Km)79ae?mZ_!{<|JstxfU-Xx!)X%-ss^OM$Sji4 zo?@W9uqX{=w5JGHLk;<`fh<4#_JD)Q&}{?dYn&~aY*PNum1$VSv;&N&jnSnn51l0V z9hdt9M3gy|b#h&fkN5l!7@7twqe7|_TaA0Cx~0C(XVu5`JZ#tnL05M?(d3UAGiHdG zhY7&6Ai}K>S7`-@>XhzTxg(WycB!!O(#l%SObkK_cH%)Cu6_IOeMWxvRluLCQ%?vv4Dja%nf8o5H z&)!vylpBNas=qu@fn^}yuff{y3VsBwZ@r^1d#?#0;EwA{t!8@3jJ%F6_^aHG$JevR zm_SM(g6T`*#h5y5*%CE)2&+^XA8du)&F#Nja!saM9S&9jQoNApx+@|s040~FNVi@@ zV1Mhe#x3MksoMf4N~RzKo0ubw;S7O_nJD9-Aj*ao8?zblblW~--HD@3sLm`q{pw4*U1( zQIQB8-$^*QBo_<^#O}FwaOE1?{*q>{N%Ud+K)D-I|JA`oN%uBw!{!|`bJ5LB$UPvBsq6n41ykvW{o0-TTro{RX zipIIW8Zgyb478b6)C9Ph^B^!9Gdy|I3J>YSeKo#cW!Ase2Ln|+$zi)lZ`05J)Z%HS z;s)ZLo_pY1HI-kn06W$yMIh^MUX1oIgOnjbO-5l9e|DlQOHP$uev${KaAFa5rV?^G z6?XOc-DXOrIVCV9(_=Ic)u@e*21sw^Uoilie(R?s=$_gi!`OxC+%lyHL##%VY6=GF zDrfQxyg&NWty78e!w7V%1L0Fxa-W~magn=XMQmWIYBV-v>3)(7@OH)QRqzllOGl*& zmbbpX-Os-Am`Nw-iqYJGZOF_bQL;$=mPt`UqzmE>_brKp{H7O-5MDG$=BxembP{ix zXfm4s_bb1 zM5{mx&#FZ(zET+|5+X%oVH+Cx9(Y!>B#@W~iw_;adndnTwq4h=Cx}GvD>1K?Rm0Y5 zdMSNc*Yu|T9;TN^9RbGkEF&{QYPSLE@CEfu7D!pZ3?iQ)+%wWd1n6%_Zvh|%7=BhT(&4~Z%xkSlJ9p9?Sg+On`I9cqDgAPv(sV1) z2OweTn@k|3GDgdXZgg;$ct*J2_4nKg$3SPb=WVp688odujZKI@1W4?`xrA=m{vthv zM>

    `l)ElUCl;czOfcV-@uR~N7(I(tWwo}6?P|+5);!BS;>nHFnYXd0MV<)TFQ5b z7OntzN(hq~5t&>K_0{!d$G^m?vMuM(+Yazu>Ynie`FidW49+lW4!%p$V)U}*8AaH4 zF4Pz)dI(JrS0O1!goxx=w+zI8)dI6V#8c6iTSWKw6%LNDU_flUgyQ31GnMRv)(*01Uuvg`ocQwgzZBGV#dnER-|JV(4NLTg;H{%2-ee4I-P zMFf7Hs~~*x5-V*az=_?(6hJEO0H}|MenA6J+;4Lgkf4t?At^?h^j92420r@F9J@Py zSm>B>vmhnnx`Ikev;kLf7%dj6Lea(+F2UJbxIm?w9{G(f?GGHl8C0i_HDOR;qM3N+ zfXEa)H11z~>8g-pym&gz+%QKtl1lLM*Mh)_%PPUTSh(OX-70d%%JZCM#_5w73KKX8 z9a{s_Rq16$V-H#7d94X4?f3wvCpsW87ateb*kT0F*@HEgO4N`5<4AKx*{yLL*ujqW z9RN#}7OyWsop*ELK-Mk0*ZtYu7o|IcWe|*q@P76obTM}1dIHH>ER|*ROoVOfD0a9yt?DngNt#L2=^T@yNMoJ?dtJIuXJx_27#0!~y0!C!swTYsId_Kp0qBeR)8xOZWe>x?wC~*ea;BdEknnSXLStx zGg0o=*PAfKxBmx&!Mf^LY$OIKY`9wWg?$^CU4W;HqV4%u;(G;X+SVNZDrArJF`^27 zLCK|EzgN#a!v?RQUHm0IGV9&?PA>!f4QT1H&veHHLG98 z?sxev$IjMvC*rs@>_g zE#!X?qmD6bY_RT2Ell#Dt9TRextatc4G)mn{6V!on9yzd0PT#jV=R`}#C|>cr;GY! zaw>o;t?qc*af#UwKV}4e9ugIaVlxORY|?=(zuxYND-bd@OVW?nXkLd9td@wVko6yo z&`ob#R84qImh0(z)h%LS&zXrV-HrX)0>6XiN--@1StrRpxKXw5iVjo5JlKpOl%cVG zv2fb5qGph11BuXZFX9piSV181P8vc_b*uMeQFZPwfAv$nTTgdv{y9TmAL&?#dVkEV zfU+PPL*YRM3{=ZC`EGTKy-DwKd6tUSpLth)Gi`yEjCr{N>Vg2r&htl;URI0cI_b}6 z>c5W?)K%z^lxE~S)F?1KR$11W{B7uvbwdJ%-`jk6_5$mr-;Dpo@NLo8qy7;(Y0=?F zCX%%wS0?!Tk9_pY{C^&oyY%*=nX!t(H{Z)_F}i=~i>5D5a-S!!h^TlPe6&FIO3(S- zT^$E5c)KLlS7$~PEJ@p^LmviT{V+xE>y10<+e!3On6JNo6fMJ7e=i9w!=Ky?7sHGP zvo=0%ZEann>H#h0+Itw)-fKdO*r2HFeML@AW-9IycQ1@S;|8O|3cuFy8U0$^>I0kl z0MYy7>+K%PVilgfd-rbb52#I6+t$?8siPIqowDxX)2Diud(4(EUt{^~ecBu*%&}On z_V*z+{ISo?e7u+ca5@|PvGJE*esO=1?S1gtO9+na*(CiGtm@Z&2on9Vey-vUV5R?) z+#hOl;dfi$hDlw?A@s*X9n8&(-nsaa1$Zd#?XXJZdGUiwc4M5Dxvmj#t&^3Iq1(18 zM*1kXq6+#l0REUI@->y|EY`S{#o8rkK**n}#7DE4@s<`cBqYS?r>E@;eE}!;*dGjV z&GpPG^cD-;kU5kbN=ZqPx};w`a2yD1i(#a%Gu~HI`Ye-9_a(ai=O<0Nt;|ROI^zNW z?Khv5y?nV*&jKHH*VaB$rht!8n2E4vag<;tgOW_ zj4C^mNY0hMUiNuU$N#Mp_rLu{EWM}G1)qQZd0d${Agom#xKAyI5f;0}>mpX8_8x}7 z_uP;MlpLzBuXptR8Ndlk+nV?9XV6+YmVNS?y7;QkgZ#k_vrcXd%P%A0haY};R@T_) zss|22^twinLBbq-eI#61w+>?J<<95ls!ww~vgeN(bEB=_ddxn*l7%%xK4ZGa`Gxd=J=YY@&v3=GDw*Y}(~@ z;UJX7Cn6A?ti+DBm~r~_X-+=&Le9Em6wI~D(0S1_Gc#K|j36%VXyuC^JvYGI)guaf zN2LL9HK(5tyP~tF(nD$uu`ukF?H#IxfBMhE#_u+~linH@>&-PV$1R`x0s&Xhgr?L& zNwu ze~HYyvZqOL^S3w+*7_Apcy2Bz>dCoJb!(OGtXV5(DAJ?A3uI5N@?H-Q3ri@Z9Cgov z4#|TIrUFC5W}4@J96W!&3JAoz2eZ=Oo{gS%{pC!@mNLLET>9{Jz8d&n)Tw@4K41L(qp&Id zUPRin{};B;j6gO^t1|P(jrjEw_1q&>Acn6ZiO8d_zOCc+=T+$#b~yb66!ZBn=p*4v zQuUt)X}YI2=Gj85uw=&K#fxLwCQpT6#etsye0=pn`eRwA5B&wH!D+Xio}Q8!?eCvk z9?K6_ji}$I37sSrJ5TZ8YU!+tbxYwtzvsBcyRKhQXWc41d;WYv{dKH~`$BRGF>E}d zp2*2Z%i3bt{Q2`$)abL^vMJVHaZN2JdI)PP|1bGWm)G`OPk=aloQffOo=!jg{PQ<@ z;ogBvF1UDc;BKbD1ZNI*c^{t3x1SyQw6ZMLzfUJ(@sb~mVZAh3;QI2b&Y^&O?`Zqh z!NH-*vnteb?J!7Z+8(=k^QLr&y|I4B+306K*cA_AUCHZv>HM*rvacQcuPdriS5xz& zK_g(K)AG?nw-^Svr+mz3^yFF%+ACJ?e4111FH~sG4y@6b)T!Fk`A?F;yTjjUTX>B(W+xBiVHguHT^MvJ+%)Gc`ott zoiKr}zI`}yK5o{|&7@)1b`csp>-97NX)^E`T@sOdMZ)>GTW0rtfCl3y@Q)n}s{~B% z&BI=o(W6IK86JRA>e_t=pfXcH{FrlBie|S@&_8hXMI}fgaWjI0z*_*?)#BJTiDN~w zy|Erj+uOc;>2B#y+YZ@n$0_PGYC2zkUSfD1h$nY1i0VammGt5xRdv7`#B$ijt}dqG z!pR2;?f%i0gzTFjE!bt5-0tNFRoX%Ovs8YO z;;>k6tt2J;U24JEXty{?F$}P6ZGCE@PTgyQv*fS)*0?w zJgNY2R;LfEXU=+wj?a(Ths(>$-4}W`ZoIb9%d7i)$urH9VzIdP0X~Sg9{D+xFhXv% z_p`7SNst701IVZXG%KY1@F1=GggYwK*>UFLCaSCzsccQxZnU@68{hV_WKWdn$}7 zavy4;gt|)na^qYy4bOz-d@M;a%7vUq?j3O1&xO(CdV6|pT)Zgt(xppl9+R+RZxjAY zkvlOS2p?h}i3M`ppDU~5AAo6kXoLy3E7aQNd`V*AvpV1mbWPmCe*)%0$wYYSH35-( zWo|c!iIg#eJPDLY;fBmDHuOe{hwXI0=(E>OU9SH&{AN>Bd&WXl# ztGW*iP5Ki5c)xkws>@`>6qbCOc%o+~w)}tWeF<2NdH?q@CUjDn5pt-QW{5;MNb9JX zEUAvQMar2_hc-)u7Sb{^DjLdGaz+bEyO1`g(KI4Cp|X@DL~=^BXn8;1`wT|(*Y&vO*=FwU`?q|*pYLaZInH49-$!p+h_I!q^yJ46aXcu7{e!a3vy=ByG;5HMcE=0FVn}LVTD0tOD4k zhWk2$idm~nVQ02m5bwf;lhaf!98oG9n7E14k?Jh0#ZFLECr(2N)_hP9X&Ba2s>CgZ zUVWlgep~L#z@XHI)Au)AHXpIYZbNyXiq*sjLjcd2lMElGCPO@;#9`FF(`dDgMq;Kj zS&@m;k+CA=14|XyP?|~*H6Eh zs9Bfa5JJv)iwdvh;C(&wUS4}PwtelF_GUl3k7NEa-3EV+9eXfrSjD&2Ua;?)=d96m zDYb_zhk}D7!xwd}m9Ct2PG6SS*YBTbr(1cuvZp~W&^ixC(iFc3xQ2qlL1`JUg+SLY zIh1Rly%7#akwzsj$&H9a5X3rXFS2}U0XDAbSAfhN&5+SZ_uxN*@8!G_;I{{j)}E!L zg0gArZzp9E4b<5S8L=g5o~Q@-u~-6v4kTDb7>USY#B{)5<$aM1X{QiQtwT*kxp#1S znG{0fUY_@7gSrLii9yM$R3*;XCI;kTlxP1Oxca;TVYV1+yXT zE7OJ|DU(dt&;EYZ#7k>J-r<0XU*x@}SACxHjl*R?_y@KOtLcPq%f3kd^_~hjnxNU* zBlS=S5p%nVbZ>$obgM@!U0PX_eBT=fP5WTY{QWIB(O~KEWXyEN7>H|N3v@))3lWZj z3n1;4k;QLtI2{Q_k8ucy(?Pu#^5Lo?=z!$1L-TrDZxxnIA!AOFN%Beay(1eT6XLHX zzUT$IJA)7rs}mA1kPE_8%lK|g+Scn{C&hC;W&WDrLMlrxD(Avyt}H_|))C*;7}1)QP?!dn(lG=Vw!eN>HY9Q@ zB_Nxeb-4LGSyBIvOGedJG|Obe;al$xls$^M7?92|xI9h*_l3ay0fAfTo~I-I)@FM! zVk}BX>>ebMS?2xQ1vYc>q;8(I>Wo{#`afV%R#^Nb#?Su5{^9w$U?AG|sFO~n zQ`6e<`q?lJgc1iLu?q4{OrRCTms*F?C&^9G+Gb>aGNnaFQnr>eCV+D~9J4?N2wU6M zOSE?_1W9$3p@tX{5blveE(N+Vx7IdOh(p3kNX-s?kB{-(+aB@~vl8+d3BsXuyG4m_ zG7LhjlaUE0Z-ckHzB3#J|Ls_tVzxI*oE)N7Akz%4UF*YVU+4o(E+kyC&8&bAb}#au+T z9FKRBR*aS64w;WC3qII`bZ&P#!Vq)*lZ}9CgH9R19D@G{l)r@~j%;K8BZTP8D?#c{KoAKtLMRU9-3Ehv=k~^9Of^Y|kdTsO*^Efj zmMn0EltX?t>ekvtIbym7Jq<~x?;yBPsGt`R1nQ&oE11IpC*%bV$Fur^R2Vb_hr>4F zRM*^}&;4rqudneiKCwGY^YqD+C+oiekJllOk1}&gO)5$r+fw1ui6jr!!qLp(V19ov z@-=@=PsL>$#TU4C>c=k|Ut>YJaJHCvkK=OTz1mZg7%Du!yzuBBYqx1_!{4fK-dP8k zIn6Ii$VE32^gyBT&HCe{P-QWds#lKiP6;;o)HoQ!j9L0A1MlvAA3?Ne<&h*c_#AFZOBA-HfRawha zTe5R--bSJZDzRroZ$Vy_xzU$1S8mV?Ft>UUrs;CGR>vo8E2R%W^hD!NHkXMDZ zct}eeKHF}fUW*AsSgetp7XPffKUL%WHExv;@3o3zF8@l}{SZ%V-1zcIs$ZYn!nrWf z-pgw`%IZ;)wdws*zQKiXx3cXmTuK$xDT>DyZi5LzAxeh&y|ZzAXs5$CBa?F9*BdTj zKG@EC?S0%o+Y`Zq<*!4o#7ZW}qoaYGGz8ly>oJJT>$NELsw@?8ED81Gq{n#-CjnEk zd(6%~g*Tv4!^=s=9Xvi{68??W9xD#reNt`f>@`;olxgFl${Y=Sjo=AH=MLY965wG=%yotNRB8+qc5ze6q?4+|AAn(8<}_d)`_m9IJoaF>LlYZrAnR zE=y$_xC7e4Ra}QlLCyliG+Mc}Yqc9G#XO)ep~%ac-9T5wEjWu6(Nn3}xuh(T$!8|IpK@^sFZt{gkzieK2IgWf&jkKUJZ!BY6P{L6J&CuFY5)V~L z{mZ%0DOVpp9IUyid{XH;%MB#n4kuPbJ>{KoC?Ft{Y=)hoTgmAx<+Iqte6z#DSN=S zdSi)}kdLy%yaYu>Kp4 zudo*8sum>=eJ89#V7V?**v{Q*{q>pmn&Bgy&T4LQ)bO3&_2yi@dC8^S1A~Joms9{B z|G7aysX0u9T@da7J*_=^PtZoAUVY6tn~4z+R4i~X`?Kwt`QX~>{#XOMP$dTLhbc?` z{1WoS;!^)w|72LT?t(ZmbWzcfxR5H==6gtY{k765ABDgCeb0UJ2W-M)&#lPNqf8G% znNEHF@pwZ_ASFLh-H3Ul*7I6(3jYxmlh(-;SVc-E{?~kG>vL`^ZIP#=!_8cGYogXD z?!IX?Ka!`PhXlV}CNypx!#9j|@NWLzb}|yNsqG!71yjD6f8?ywME~&Dd*}b|dg18g z9M?P?GD1qXkX1jrYFowTHEwhEWR&^<6l)l}$I=4`s2sy6Pft!Wlw%sj>b%1@tMPu( z-QQjY=ZLK1CA+Sb_+7#4scihY*Yid%sM9Xf(p8xEMStx3`*-ng_(Lq&c(0rLObBRZ z_QKOTi_Z*@?@^yoo$a~a%yIf1RO+wJ?>m!qXQCErF=Xd0J}4TF>%7FP9AQSWYYZ-2 zwX=F$#Ixy8>%EeSE6Qn;U`2pLHU0aX$eTamYFz6vO!{0$qaFV1pxQ_NA|Gt}zrVTv z7Q6eOf6V{9w2y=A{%57Vk9q&kzWKknZ$ck_3Gb#ctoh%~0il%n+4+&PiT_u=)3WWL z^uNA@Hn7}=>rz?fDD9kC$7gxT2*ac#ae?^9=Po$s6b zgw0B=qMLAuHU!|2Ag(e{pgB-(FD6m&QMoH!%We!sD4N*3q5k z6j-aum8Y%#u@8j;P2ZT`;b#a(A11R{XP?A<#;RP6zxi;B`VoIOwEKT$V|?5Q@_&At z|BrXf|6fbs&;8FD^#|1c;{NE&t84X{J{Vy5&COp?OQl@J55_1HqXi-Vk6*qKP)=J# zYb?{HQ^cIDA#$39lwB~xK(1h%2U52J_vaulNYDY#VlRaiH0}N-+Pzs8R?0?Q*)=D$ z7I+=M?DTAx+fp)p40ea1f-MqXPIYy_W6%ik0mW-eqegO08?5!=L1w(R896l5DCi}< z$6=7ez`l%1K4>~3R3W#*Pl2hJjJgXLbZr{|p7q-vlSL5&|MeDQSW%u1`OXZ32K4_U zOgY^4y)ki5G3YkmE1PQLjc&0v6VWDZ8d=T&Cd?CzHa;r$m_Y{eCCCy@d8?IJBkHeZ zST6b2pgj9lzF)6L4lwfgdQ6O$_XLnVk~$_{<|X6IkKEk9=S=v+n7st8zncB(?0@^P zq^UOZOS*6nSoQ~fxeUge=W14MO)#=?Qsml{J45}V+`RC8^CuRS(K^6 ziPF4;46T9yKi+z}al~XhWz%XvkJ@5Pep&`n1c|LZT*ZZaU_b#Th5j;f;*A(B$;o3~Ta>`KK06Z`q(+7Y zzhnG9%3?N6{3tPdy>0@%kC4$De)~c??j--d%$%pc?lCs8enDX=&dzAk-%axo%+fKb?CvYVC&oGzJ!QAbnn)JKCe5AExb| zFswTD%EkaxcEQNJ`5-1>eU_)Ux78znT~-}9y`Tg0lYk(y!3U;l`@$jk0R`BpV{GT8 zd>GDswq!QSRqAz-p%{2w-n}W8S1j65`#etP56K$UNSh6Dfork^%WbXKUXBSM&FpSL{>^|sn#1@Qi zgM*M1s;RYS&&VvhPj^Pd-@u-1c|tFO@%T`-LAsW0DZH1sgVhZ6wa!(oJzA!Xn7m9o zSQk1YM9SQ@^w883ckXV&eDa{X&g+{?$~VHqqJ9+7k~rAx2O<%{!7|9Wx9pQuz6A?){x5kBVPZSjs&>smi0|oiu(HrO420d9eF@j>TGAWsp zX6tv}0)#GiB;V)JbXcF&{{zv7qfH4#Y*CXfd5m=|Cr_qiwlk4l%%zcppb9&ytPH#( zW;~KPsp%5tRI&94CmG3McmnP@&8E&wmI~?n2FnxFs?Gpy!_~^!)dhEXE!fbdx6fDHTm^U!T)R40zbC-`kz_(%^}K)5{&FC%w@n3L__@<{<^6hj=$_ ziqZ7plR$@Lsqp(D=*Fr ztqSfPktYcxpWX|*T-`%cd!Af9Jk*d&mN7wVB3ELIxL#Y3_;OlFa%Sq)bWN?dOHxX) zdu+B?6b7t)!d>|E_EoqzZ4OpT@@vzhP%18E^$H*0K$*1RXJerUZl8oSVh|n2)Kfr_ zMJAV+4~~EkGe0s}7hLsCDU86-!%yqLf$lReVVW+hK2X(b6$fG+H8zup5>)ehy2Cz< z%~Cg8rS^Yc3tl|-ebGkn`zDT~-?tRmc=BHCyPIYdcCNdQC5DJhsQb;TVmek4Fj>Tt zgt~jHha$pZqEA7`t0%$Xpq@+*#SDG04Bfu!w5T~X;Gys&Aeu}KrMZMgJED+mvad6r z1GyxdG`uhjTA(JhpjD}113Mi~8!+Nd)mJbO9;6Ocrvqnhi1MP&K}=pV6R1U!DxTzQ ziqDxmpQa%ge5&2C!?$A0FwQq+KVRTLa~iP@tQ>g~7zqc5L^)h z4i0p)tuqkHB+dPNKtBKKa95w?a}{h4ZYTg@woKKv%S%y-p z%S%k0AY;2b=IxGo?KX$I=cU4qUo7K!1Pl)i0Y((cvU@V1i;CMz{`%T2Sex8bOXu|W z1vnc&2)g^Puc;|?=WKsWZd<0PS(HpM6pSe%!leHcp9V9*Buz~@8Q}6ee(Db|7>Zxr z0AEYt1B?+A)L|vLkcqmz1X6T)B}QmG38E6?HemQ9e1KDK!hr+1R{p6Hc(OFsSeXm~3yr%ku3NWG zTs!`l*H=qJF;6DP#Ugh%}Mr?(=*_oY9xr6Nm44{o-_Oy16RCl?7J~%Oa;Z z94q?9EHc0!9;lH`&xh)dLkea z8WT71wSk$S_QL(|RPV!gKk?O}q2m^wv{H0v7mX0jBNF3z9P8UvQhzG$`O?~6wM{S3 z!4L|+Kpw-aYQ{aSK$a5KU$`r{$iJ`c{qU6dhh=cZ{9QTzrUhq}fx#=-G^=oIuuGL` zyd~Dbu!zTl&uZs71&G|aR1*qU!P8&hjd`r`C5mV3RI0CURud9olgrF;i7yei_X2E) z4or4F->?4wZs*jCFg+_!Z_HexlG1hZ%o*1Q6SmmFv03mEByNR+8^M5$Z^m$SkPOD+ zW=y8XC8nyxsS#5|wxs^#zwn)l5}fywUh);NX-(Zv#QR~mre58h4e)VD4T z0MJgfRgnP^o_(fdCsBo?XSnBetmRlGS>KR2Mn?LaT)uSafu^5Ll_IOMYy?%Zu53-$ zQIj&DJy#Fm2F~4z8u3|I@yvFuAA7*p`X zus*JpK~c#9L{%qw;Hbjj-rPV}}{&jbhgmt#)EuFae=V+Q{b7%=8_ zXqtz!(cT;@YP{ZtPoMBd^$_PV|IH0Tolxsla$pO!!+e&%8jXZNANz(%+397MkD>SxcM734fVvflWTRbESk_;+eu%iAmRd(O5_Fx-`%o<2Zz z?C)f2m?8^tfmK6i<5#Cnotn@cPBAVaOiY(i=Z(F_bKqybC`Lur;SXaWr7>$GL*Qa; z8m9Wf2UM`v;nk?HpV`FD?F^NITN&^VYIAgKY4T{B&=F=_!6)J3Dm- zKH#C{YevksXRf^0E7z{b5R0b0{rq2NT}+VVo}2F8CY7ayes!nI$&)>@3v4rmnDZcw z7S4MUG_cm{DeNI$rcP(Qe%~5n-#=`bf7oaBX=>e0B;BauL;+m;?mm!v?nc5~CZTv^n z2sZ3ZeVx}DHzguD8Z=c7>6LjB=vNXbzD( zzc%42SiQwv%mxENRE#fpj0xiPPrYMx#&#Gx8GIaW7G~*6)aiuepa6+`>%u0MceXVJ zg1Up;%cFU7LNn+vaxzwS8@_MQTmg!q@*jo*Gd*OVE{NF-p4DI(iq(lMqSDVFmvm6L zf{N~eA8`SJ5zK_Wn#{pcF83nZsz0Xxx}lV<$6V~n9Uv(jE&{(Xz+Zb#RSfg(skoQa zt%4z)@Ho~l&yq^Z?p+jUz}TC~fHRr&a{j2vAVl9$(A1igaR$e$CnBBys<@f|h<|v^ zt*yoxn~p@6#Y>*%A^DN5=ik`vKrZwddz&D7m?072WH?kLk=ukC48JSlT(;!`qTqRy zXq}5C(UY7^ZQETa#wRL`MkL>g8+zRDKjCS7Ypxv7qROGOCU_$^tAA4V{-cuf*+Oeh2zD<{}?$IcMvgQ(;@3ZrYS_U5{q9-F45G zCI;JKHwyIev5e<{r6cwtDyTnkNkRh55>K8SB!jbfzBHPIQelnf)e z?jf#VF~v{%aQq~@)dKt}x{XP`e2`kGU{(hh&14P=WKpp~+IA!cs{!Eq-Vn$60yREE zv|zG*iQ^vR&%jSuACZP;#IYkWRgnKn?~M`2pAj#baI zA?*@-fm9dh4=?ZAZLzP<5_!_n8x%`RN7TyHj-B|kZkjhZq1Z4QN1Ny53~gbRdVuV; zQo$DEqoNZ#F6y5%x-_4%{Y*u1Yt-)7TBTb`e zo)@N(H4yjB(;MnaFrl9m3TdCL4AmjZRlu^u=gTdsqnjt3K6ProVje1dk7Uw2rRC)0 z+&KD2&oWo0(gN6IJO|m9;`2E2x!bL5pkJ{39k;LA0?2xD}%|A9RB>+(%m;30AN^}iKb~Pv8fK?7=_+Cb`~#Yb0bQuLEk{Mz=SD{$_>^Q z1{&8QOneDPZ)?+NDk3VLx^m44mwOAjkB#%ITUHL{?>-P!P1wWK+r)?$+?}kSee^(M zMmHUfoD8$HQd#!gN}zTow6M3_(<^dX@MiC*o+*syAyXm!H~W*+P(;y9h|<e@}^ia z%{r*6{@aVVoGx&D{Xn13@=@m-!yO&W_AH-K9s8I<1V~%%@;h5J{O?=-fA~NBS1%^{I;b;MbWr>lBL>>V{f%P%uS6bB^MC?2JMqD9cn!jb%a;4KHXxuKnf2 z@_~s3gNH1b)TRHwa{>OL>k)3;&t{c9McAK;!UfQ-w@0tW?ue7yf=HlO@BC7}mF?48 z`u94Xa~~Lmib4kg|KkHsoea7_)VFB59LGKLn z8cUa+*o$mu{n4exrX?jMwe~Aqkag&29u-&yO(;%cUh93v3cdD`nAQi+`0l$=tc}7p z@%-^|&7f(b>4hb{Ri`p|q<(GANj`e=93lL zaCRQvZBTek&zp0Ct3AtJ5J9yL!AoDTVLN`XXq4Oeu}Y9vj0q(XgN9CHYN4q3(I5NE zbwI^7Ht42q#7LW*;5z_}{F?WBQVNxTmJ31rl|~n|gL^J5N{2+cp{pCdM?eg24Z1na zX89KM8yLIcQE|8s3b6J$oWcdwM=nRbh7v5^5xogtLw2h>5ogCt%4r-~82!iTO%v?B zn=cC=fG9n`?xkPvTPfhvOcDf*K@KO4g=HvD#6C0cLBmw;NO1_Gr|lRE0K>x3I=jm0 zGJqnJIRty?V79>X00%Zc4KFfoM{!oTkA2`wW5p`wU#R3wEoa>jG`@Y-Tf31zr+JzxW+<0iY%ygbm0I@VNE`ae&O5NR=(%YGm z*$nhA=sCnqb2(GMOXsD66wR&1z(BYPuUz0wQn*XF)+&C~e|2@bKp(%}f|~mt!*D-S zOm4Xs?yewz%D4`tevH9uM@lo0&_xFOGx74k2xMiDUcKojSkjC3OvyV`MER!vQ0~kO z0fwGlrmeX=X`WF&#%KdnJ=W)RK1&qbg88&47_+{ETt*5jmoE2`$vi}ypBLvXB5f zbjX;Rd;5YClgKQJiSBKP>6xHJx`I%Q>f~jZi+}_Jaxv-9O&J(m!olhAq=RXR>^EE< zCS3K~k6#D|w`K7(pqLsexN0#M9cy_z(s`3Mzgr`Jt`&+q=k4>cKjV;}SEh}m#Q8=w zfQ7`tcM)%(+;OKOPbxy>9s>tkc>LF2zoOW=9UAR>d)xPNQE~4Vu0o}3R(EKsqwyuP zDY;6fG({?cLUe`_4JCo}4C6{3n|76Qyekns!gXxHp|wJ3j;KK(X@hzW za`O0JkA9SVv574MsK>j(F&X*p@46OqbMprEM@8gBZ&n4Xi1Q>`jN1T+GHyyP#?$=O z(7s6Zi8*N0j4%BM^t&P1a2KWU)tZoUmP4~%o=0uqh)BchK!}b=k2lG{S`1KdlHW>f z!|W?49BVOa^BhUs6rTwpU2pSycjRubw8tRp(6I{uo`vBA-)x@4j2zQ3PY|og8mzwl z<@WZ^U2j&Il(*7m5~dI`8=?>4iC{E%Z4G9#G59MiCcuTeHvcjuB1?0D(v4Q60M!+{ zE`)eLwEuv?gJd92*vxs}b!uShwLX112D!`1r3Ag&C~zv~*G))>`oWgI*v5wAyA>w- z*w6`HE^P)eGLGLs%5)kg-Fve&8Sj=kbba=wl6WMX3D-ouo&0ht=8=bs?%cV#`UP^SAlCNcULvL@mb3Cai##~nYDB7i5|H^~YuD;)2v-YVI8*V&)s zh~lmBJPkxup58DjO$akWdx9=H9NCnugl!GL6@#-oJ6E`R+irpSBE-VTDjpASMqc8@E zKWkD0WlFa?^cFNw+9V|l4yU17Gk`or8EmSBbzlG(U&0V^LCj~XcJygT`|kxU?+!+) zLxH;bwjtFSSsMPd?L!FZ3q?J-UE|PnCkqZS!gxbUr$JuFlOULT29u3Lh;T?IwiSKm zf-FzeY6(xU4DX5>C@76fb8w}AaKf$pr}#GS5rCxd)9mU60O?L=NKl+6S4^Enm^+oA zrZ00WYGcV)C5G%ro_Q90zh}759Rv4KR8;6(r^K3eOcnzD)x>wLfzow<$js=Q96m zZ`TR6&mDTVcd8L@Vja|=Z@8)(i^mGbgdpQ?ni7+ATIJr2d%tiVmi9gaK~`d!>C>@y zO(_<^Q&z2k;BG}mM|cxI+ai}nJDlu&`&D9ePeo!a+F#hS^<$qKWM6R?NC`lT93 z%J$-rmW@X>wYC_i#P<7-k-B7hNhxq$h^vpO{$I(|M}xquprKy(vZm1X@Fkpk3Y z4(0WE5hU$jUjp($dU{Lw#b0}+x4_D5uF}2D<>rE`_U)*;B8#BX{c|Fo!OnEA9P)jIV_NsQs$ZP=uiXd! zkmk)b7;p$KgX%EE@Gp$qQ#B)#6s28ljngGRs)x<1Ys>HL=9S@ZDNUTENxyj=rd?mM zMVq{cheQpNygKGQf<~+z4QnD3!0P%nPa9*(&%WLNzG3o5j}Dk}Yl|~U2w(IzZOu1x z#L!EF@%_*N(TV4Q%)Iz!OjqP(04?3^K6Vy5xDe1-zC?r?BywXz?jcxMaJ4!SWvWpq z$)FqdhmD**PKkDDYas1Y@7t7woBNRD^Y?aAoHLW7)1Y?~zpeI06sd72WG(NFZECjA za}7Rt^Z@=*laZ$cUJQ<+n4$?w;tv=;27|$5&Y|Pbxe5~Bc0cmP(HkG*gW0r5NJX`H zU=4^};&v>@nM$N7Y8}x|3$jA+k zZC+8+xm=?iLdR&P@+bo*kZTXAuyD-V%ZkssbSd9^eTqk-B}S+-7mV`kM9lS($fOnL zCVPK%uR66o;|;=yw6~xbNJztkRJt7WF28og0pRLLBtIF3a7bCS981^_@rLxA8GCWL z$tcfKt2c75(UAh8j_$X z&Z@Nk1k8t|tgPEPpRvq;17dHiPUGn$v6GL0V#HgBjG`BAKJrw{Q0CBl9ERTtYSkFlKm78F)e z9B3$2%_ei;t-A1jf)iSqhO}PXbAd}dLH-NH!e8HMwMav0d6IQFbz2yvFYY`WIO^K`1+i%`sf_=e-!3?m|;3 z<-EsLXKn56t0ntySI|h-u$k!{P))6G-M{wS71%vY46RBQ4Rt{wEoe<%$SB#Wa{ig_8j#Xuc!hf-T2az($w522-nf7mosaZy-2k%a|%7w?0+$|K5yciD^Ob zJv}`+PS=hMW0T(p6Qk-6qDaC9;*nw!Chltd7P#KXBP!tg{)7Zwyj@W-wN!^zT8*&t zn8SfXQ~{4SX?QsUaFhW8(7)$~XT{IXU;4Cu2}_k!W#Vmm+$Rk@b9Px{g2wP@I3#lC zY2%P08icLe=T*z5V$x0r7cSh`4P-7hCaHSQ!&7CD45f_WvE*f`5HA96=%rfuko28Hc(GC5iLp}pQzITaQIuVL630sc6S;%NFeZn$9@z(>gq zC<$oND~yjH7fSYI8iQ(D%_d*?TFJYk#KFQb&3dp5@+**)rRzEE59vZIFnT|p#6D(56?Xn1xN`ZiqPLqR-$__l$fv@$}?T8l?69`4gASJJ_%uVFWg$6-Vj!4 zx1fU!^aodROla-=#TrVJb6dsQEubULme#*2dNV^Yq0jnJ`n(S^{(U$g{cl)1{|^I! z0;hX`91G?D^*+IIl*Z#~qv+-mdqsF0?=$B0TZNcyRZj}0{yuuiSKzua3E$Yv{Xrs2 ziMNP;2X0W}CZPI2|I%nZzuO6H>2qwc?$cTMZ*zs>{Slg0L5ZjE_3M&sGK>ipQ!|BY zLW@2J$Gpv)jT?UfjXCi?h-%mb2vnYGfl zhH#VnDmM&FDqXwf%2mMPG{`qino=ye|I&9>NbB>8Dbg=KYS!dXG;L|`4D=tA_vsP; zZH4Z1T??*u?NT~7r7sjFNn)>?i{=LUGo>8*)72UR`p{#!X(7JopH2 zb0Kroo~J=J0sDde^zjMvR028Y@&USnfZ0X&`Be9w2BzEKn2VT;ms?ZdUnByKO~YWE z$z}YB9#F~b`2F{R4WBtLPPcq4aZ#jtl%No zu&$n6ImW=zMYw)=U>;40Z9aJ-jLn?cWH?9PI`sex({%L5*uO;JYvK#37TGoCn<#QqaQZDgrg>!$+QeoP~n)u+Vbjj7B>Tix3N!e>5rZSU5XKqt-W5KztWy(|m` zOC-qOsHb_a0J%kcjrM0&`FAAH%s$9)M19xQK3tS=bMJaRbXlAF$Q z#Orc@!+7|pZzmi86$hfY-L8D$fxq0njjT^{3a$aR)*BqHrh2*jO;{f8<_51W?l)b%NFnCBUrn%k&8w(ab{DU|@YTOP z>_Pq+WN6!k6crV5XL7j#BJ!szrUu~98XJwlNKt2Qvd>uG#?e^W5f`rW$pF3mz*vJt zOh?l15|3<`&6M*YID1%Gk@tl2va9y4?Gn~*u|FCtGUrDWI%J$5>WDp^|$Z1Hja zBMc-KI3i~*7p7>doKSeEcR!1dkC*&_u18KiLWQ++rRe=M-H)BA3xBv^mzDf&82xqz z7wB5vq!qD%Fu3^|Ksvt)ef|2iP#b~=ZSk+)%e|byT6O(y`WiEx$G8cP6nQ*ZqM;OT z8KY_nXT^x3NhQW(L+CbH+~3=U@Ck?QBH8h=8}N+6A%^Fe^2CFj6vN?4r7oT1)FwJ~ zuagctU`XuA8KGsX#AYUU=#)5YqGu^r0a22>MhmXw%^&iSaT1?WWAXhZ>@77#a6 zm5rhC53e?%GuitPz>JUcYXFO(6uumY`G0_v2`%T)?!R7<)%fMH_ncPy$bg=7u;liz z$`zEYes%Me0}}+Wg%YM>pmIFLt1Z-wZSrJRNAPa)qp(Ba+Z_d3lCP>(T0ZVWb=+g5++rDKkRHd(ly%SyK@K zQA$j_^_7<|$Pt)Bc6@AX5B}Gi$sCy1e(#Cl!6HIRL{!n7hw6fN2;&is-j+sXHmPEi ztK5xxO=hrIdM@Z*YR#BA;gy<#rB<-H1}L7efx?fW$^WKH^k+N^hD0C0!~Y=Cm>5~I z<~iH@E5HC>D6E(mapWgZydVnZ$5M4~6B#I?#;6j@Dp8)5I-M8=zOPY`47ZuqfV{&P!YKh8^5g1EpLaG znA^(+p5y8}!?&wWO**>>p=5i3Hzs_>eC!~Bi?j2fz$-ChF5!;7-<1ScS?Q(q*kLG( zh50j(v3>SI5V!^<5^$oDYr%}EXzCAvSliYY{dVrX)R#^7;Y<6ueq&YkXBU4v>YjHv z@9KdGOGJs03*xwBPNjsyy_`8_>|Dv$*7?gVq6q5+Nbq~ zASq|jVA96Ej%T&-!FR3IC&z5A8$drLN_*69QS6mSHE9||2@5p|R*(-wTi;Yx?+p}K zRE#mHk}1O7j&Oa^aVZ3P#G}<>2ZF~pDHJr>!GVnG$Tt{Je)2TX*;*q^F>A5+!WP%t zei8#x>9mj>Lao1LJ#dt~A720A@BIPC>O+;7_2h$RGqYeFAvUPm(s-k^jxm=b9#AvEYt*H{2r2aA|C6vOCj?erSo zp5S%(C%*(?%2JOoi^=)U)FUb%HuB4h>&G%2kS~!I)F@>BsjK^kHzM6W7buz9<7b-F z!mE@W2ph=RA&^DHPc2F3F9BvAmWPe@ zytycHMCB`LzEn41oXBU>`K(S@U0xaLFRm}-qY8l#1$rNhaXxeliiE5aDH4#mVw-6~ z8+h04qE=``{_{iHd}Cz{@2`eg^k?n#;gNUmez>chJDNXW)GW8b>c~A+P$vzXW4+48 zdU-8Y!Q5I|e`!I7KR>z-{;>VIyzzp|N`6WP-p1xDe)qRTa7?6L`4CFE)ZRx~75hy%`^T2*Aw{~z)W0Uu{BN&1?K0Bjl!LYe?1{@AY z+i!%JhZ(tEQ_CWyB*W}uh#ml%I!1VdcPuKd$a`~ETPgq|=BWm0;X<(pTr^zTa)?pH z?YUOdWv*d|Q<(nbF!9OGJ|h0!l>JhmjAOLnG8 zDEFFHvK#wR0jNms${trGM}x`ZScGmYT3VD~MGZ9_pr{(f6wJ(>^Zfa9liD3MZ|ylN z&aNBArjfeP2ITg2(wz6oyW8HgZvAMC>q9&<&2I7vtI9wa(+#(Gp=*{ow&}x%+`M%w zj@bvW4Ci1UoEeMB#T}RX*)yVV47Jq%Vx0BF2(b3B8903neP5AE$=MmvC|LfXW0pu00VYl_Zr+~Pg8jLiaE)J7gMg;E^wZZgN1~W#$ zEt4}<2~wnrE=}e%B^)g<1`exyI8S#e-eR#Dw*z0xi8n$n+l~+iFDbl+UGVKk^ZJ;D zFC2;5!K{}SvYRq_8)(oGkVa(!>Vgrb=nsEMF6 zwLb`XRDFr&fm_PSm?RfS964|euDnGBUb%zRbkT1yZZ13(V7WLnG*nmy%@=pMZ^-GC z6h(DRs3np3+N)xgO&VT!>g{v`R_gCwpJ+1}eq)ar;^wdD7<@Gm)w(wx)L59DJejGg zNWR0Y2&2@CxllsY4gy(9ppR$;=6&(WQ35c_SFrN-KGZlic=RttCW;1`9T}7j!>lf4 zqJwbu>OB1Mu|r17n+Ap&~83O^|ih{OYRi79y;HcFp6Hv}w1@oCxZmKdbA zyjn#Ikf}Qd#SEm=PY6BR+pa($R1cP%ww@I9Q^zO$)LD482}|SQ$X>MgloC57zh}Gh zsl-Gx$H+B8^0+55hRw)TDITPV5%gfVxuA~b-RxR3%zTvCIL54$Ngc}>HENW}Sns1U zZ&FG3WbgpCttw&pU}bZw!QB)}a$ovP2_-88jlr-m4k3>KK^Ojh95$I7h;`sr%>$0K zf}@$g{~omWGCS|P-T=6_hdhVF5uZmt$b(YX{Lgozy?EKOvndW+$4tR2 zJhyeBE)*gbji(cn7u1>0x}SN%sRxK!0ON`u>d@O+VNy#>g2^@fTKhQbNxly^wa3Oc z|K!o#dxVgUxc6o9F7OTnkQSPmMN8AnmCF_kxHE*XGG?~ty8 z;79YkAhs4)LV@_Al)Xx^5)3vS#_mAb@D{*%U<%qBpJ{}koAfcquAhlIZBDK06*When0Sy zD=1>FJzZAGb{F=Kc#6sXV0F3&IYc^o>`Alaevg@-?DigiGy z;XS3}f|7*T0GrL~V0vUy3n}mXI#BMPu4wecgyyM_ zc@6Z+b>F~0`?|0NkWoT&?0yS&Aeg^8p*8JAv$A%Skq>?-jo&qxLhRP9=BDNYODyJ7 z@cn2uO`^-KJ7TVbD5Po%8g_UQ63c>(NfBm!!QZcKtDjZnwI(o=Ja%G7#Ny7(>lg{; z&GZoRlGf90Nc{>$uv{QEb!vxIJ0l+?iyWag3S?ZISts^?Ua5jSnI5&hRN_xZ!*vg| zXa4F-{xY~_8%NuN>Z~9eC|Q}-aX_^buBJ~?LYU8fLWiU540l?JK;--~tP`A*xMm`r1WH0XlQK%#ffW1@(s-^W%=LM1 z)pg(DrbP(gEkdE*R3?Y@M;KK&c$-{i!XMal|6)Qj*q(y}!I~Eyo{#?pS)(w7NsTTL zPUO^IJ-Ke_SYIz+K4{a)DCUD^=>>x(3yd_O8G!ir8g{6I1v!w48jp=Crr}SmRet9( z4#I^;vjHjb>7C7YM5SRo*6wFuA%P-LlMgcWhlupHMMO6j<@dhL4-O~cKqxcY=(?NV zy@CVM{1E#u$bRL^9&9rt~RXdyX0bf`HlH zAp)1J3Ml`v1{TyA_0$;!iO30uOJ*+DuGdl$k~+{ui#mAo3}F-ZUL9+Gz9XfFjlCC4 z6ECGOgEy62s?(GJq8%u@vLc!xK~u6zGX^??0_VU1C9UNL;7n&zkLCiGt7SoOa<9qI z`Mf(;E7MXFsKBoEIlB_dJ;ewDo-eNJVeN><1j^z92*tI7Ma5^%Rdd)7pwDxx-`awP zG$wo z^Sc}CJ}*9sz1JE-*pLMU=Z0KGNJuEyj~k`O5%O`aoAA5Zn+5m4j0&^A^}lTtIdv1)JPt9M2!c zpo$Jjxr=wuLW!-=9eL^$Fq)q$v#P^vA;oR~8JKiHI2E|01s8(wvGr+c#E4gnO#kO$ znp;|OSo4(~pjYy*QJffrQsRZiYMaO+Jh$&dr+x(%>s(wGIvht6RB@DmOmz4vY%D4F zaX6wV?S%h`A?%VR2pe(fElu{7IMzMp=C8)RbZx|&0?Q)H!qJ9TZapU%3-Pp?o{oj{ z(iE-(-QLQmoOg)5$TvfTnQ*y|Ur!hBe9INh@^;JKR!bqHgjWFPRmmQ_VeM()^E_7E zj*k}GOeSc7vO~wkZUBumFnT#CGY3!R9D>m4QmNWEuSrhDUyV1a95FuLKj<4iwV1cWn?!PZDoMP2X3w>hlJvFKmV^x{^Oby&G%$^Ift_B@_U zkpLdL?Jdmi^y{*A$DyM^C2}ZnJp!TC=lcDK7ulqKwbf4t^tz){r0i_*!MvN^ewbkM zV^K6SZ$fW+@ZPDRFG`{1>Vo5zj}%5Au?J%p@c0Q2*(mcHD#@#AV#L;I)6K_#z_uawB`iVJ!9QK96V-`jJ{GGN{)df)go%Bqv7^){;sC^GfRkjrMwp92 zAmQW9bZQ4e2xY@ee0TZ;^r^VLHQY0Jb7SSynal&Z#jpT`0H+G}X^r1FB;rJ>vrB(FZ94zlWUY1ZPih;s@|_bPXOPvS{V`=NYM@~!Oi0pZMO}FUZ(Qw6PbOE^a;n0 z$U8iXCU@A{g%kr7RdmJSvw#)pxMy})G9{a&;uE##DA}lISeTHOHkAQ5$jvk$oajz; zqcJW}c%K)}In3H=$y>5yiB3D5&%`?L;NVp@U9Wle>={wX_7{<{f)at+U1J&E3|Q{@ z9kWMoe=6iZVq(Myv2(1CV>&Y=xpwfB4YqH_5q%P0ueZH-BngPwBxg__IeX)3p$*+R z5lq=u^!uSghn|*$+8g1h7}xC3``W>T52==*>#CFCP&N|Gd^s?MDCL3n_Pw&~xsf&9 zO1~ekXuz;V(O0rt`^(ZyloAyLMJ*45>7Znoyu3W78fl*wr(xca zFn$(RhDUPk&`#p))M6uAIQsbbXaEQd48Py($V{nr`b73=8~%qL^Dcv*3`X-@4k*#M zmgb5aW-e(H8P|-LBS*Mo)9!c#MRVDMv}Sp=qQC4z8Z`kO;V5isnL?>g2YPxxV{Yah;?Q z&U3@3xQop#v#|~Ab}v44KuW0t*Ww7xificwlJDBRiWEK8J_nlrZg;~MuU(2?;|TRN z27X#Zs5Pa{Aqn)FdbagzOr>97%3&fr6eircVl3n_?wQsdm$C>6BgWlg<~L|u z*{AmTKTM?Vl9)JX0bxJ@r8Ec?=7Y#TmTAQpWE`u(b|h<+dm4(V&G9smKGe=Ic!0yX zUymXCKv6L>=cl$->F3K2$A9yC*q>a0rkD}m(iUv^o`~b;$JH)*!mM)!u&c%c6z_+(;$Hvu3ap|(K5;&C(9{m{fk}BRe)=((zEB!%XPdY4|qsjio1-9 zt$j7l=Lw_z7`kbfz7Dn^mtaXV<)FoC zJRjel4gouGgf#}^0U3-F!h%9diAplUAkrZNdPB(+hE7Z~GU614GbLn%+HD-AV#xUB z%1P&Ode{4cVM|+v#yA3!w40%1jAv#_lmjfCh+sAIX(71WIvvr5Qz*3!(~>2+ZB-dg z!Ak_r&hw<82+a!}>wiDVd`LW$`$%SmR=)aFEA(v`Q7$(DxLn69QEC+#kE6gzB~ouZ zNNXa_fnSxX2T!yKInQACaH#0YbsZ{j>QL~jQhP2)I&(%o5dE_4Lg@o)_UU3=%1|VZ zq=9b2JbRuRu@^p3bnCXjH|=&CY)WEMlQ! z{lI+$QD8Q8V-#pc_-VP)mrwa0fM(I;Ogy3F2kbmErp9BU7b(4#c|y2*l*1HZpsfk^ zLgqG1{>w*_MKa&Nw)_&1b0s#-gruNnR@TfAu-z_=V(JN2yWgk!u-@r7?}vpMVJmXM z4&b$ea(b``&9}5>hlp5%{G@0b8fF8vGulkO2QJxjMx-((O+I@1a}~F52N~l6oAd?q z3MFZM!lc_3hEO_9Di!Q;LRwRy}m z^SGFtmMWpHDX%Om8^Wd+#~G+FTA7WqVgqyqLWs)Nn_>8d@VdeohluRLTsWWz3A!GR z$VcaGpNX|b<#hga2QTK4#<+i~#g=MDq4z$A3Cplz=wNVZlakzsw!^4h@Y2qx!ndc2 z9$U9AAt}R;Hurl>s_;{} z=o2*6e^S8^czSg+Fj?kGl|b(sw}Cv_i3%31sHV!sR%vFaV8A14uOhhMFd&{pk`;%- zR$z<9&5DWydS^-shV84|HJAt7X;9FYbM7xFkFviAcSYr5>1*@W{Zw0YXKxld zXpgC6Ji{Dqhm8Dul^clgPh(fmy%L&XOOQ^~N-{=qB(N*O!>NU&cMRRjdfN)p-I&r# z!=|C1eTtvztFCgQYTf&Fe?|R$%nXjfzG3w(Wls?N014fgJp))f4&w0wI!dEvPY;b~ z8%zvP&h^<(qIiSa1_PZHmL;#$bEjc7O1D0?C=3~(-&Zz?&I;x} z>C371AE-M04C^s095GIZe6Sh9EX~U2k&>7|42D{YM|_>fT2({Ea;qK6%8?eiODD!L z_K<;ae27hJnfs#S336RA)qSER6;2g2)%E2Or3dfMF6z>B63Bdnso)SLd#s4iW~?kjJF~vlph`kJ*ihQARuSC0X95`&1hJhr5a> zhhTG*muTaic`QTv0_O=F!r2tD!klrGVj#xHs!-keI5376VH7K}JlXp?cqsub%yq^z z?U>50w~;=*;c}N1)wbS67@Fp4TNe6b{}&HU=8QglE9=fB^XWfX@)mu* zXvlX;-|hKTWx3mTWf7wyk^}UQ#-1?A94aGo>bT~>A#?6IyACbS6hC`4#dqJ)MDJ5+ z4V&wAwmi9?cwJKM?l?SQ*0;uI;suSGtX>h|D%Bn_CJR@rD?F9kQ6?8&0nM@mIuhll zFJ5TXp_%2UuqJz=^{OA`Qj=$pQ}*D&s*!DtRYM1$Fj`hLz30h^GiT0ZWR#D$iK1^-kV1ov)?1C@e&1`x9ozBsfLECO&M4g({6jJ3?PS{ zY02RH4hD)?glVF-$K_#GmG(O~Ik~t@vU?k1bQgo-6-88s@50ZtH?6G!yGlzfh^t6H zPLJN}+UCuBZ?gO4;`g``0ZQ*BUV z^6ov!YvOQf3uUd1PfJUaRAV7%I<}v>d;4}4hAgS+$Z?-`tY`PRgoK2U=;-LYcS=r= z$vPkP5M$rVa{lnS*Ud0@bm%wF(c4=;=L#kiCG-`QM~;-$gwlBH$i&m^{y=HgM1dUX zKE#8#2%0hLy}Wev*S4QJk4Muc4Z?xuR<)lD3=H^j_=pwKW1Ka4fW_avlfQqQ4_>3K zd3mK3Yi&9PQGw@h{OlO{JX@hZ<&%$mNq{eYctzFK)!M16E`8>pyXv&*+_{A{G@>7A z*}Ls5o^Bd-eS8=zNIxa8=zFHp$1C{eN*~skbkQ&T0~5|G&7ffg=a$Wc(U=!)zfr!In`^uyv~Pst_<(o^)hN?ul`onZc{Bp*zge^Pj;#1z!?=q`7=kB0PqFKB-r|R7jxRx~AM|o5_M}ng(-Ybr z7z!N#SxmdEqGH5ybo<_0&$ow$g#|f{=5QuDwpZN1oGHt@`g8Iss^_9 zj`(_Z)4X@Iy{u6ia68FnNl|%z_Wk?!`Ee&s6yAQf4-XE1A5#6`nEd+}^uft0UG);n z(MG=d3t#;8Xol^_Lx|DPAA;Mo{CuOqn>{_NqVD0zIMwdX&L=|>{8AJ~>+p(TlpnB5 zlKZTwNuj@ripuovP119owU*U~N0WZLg4r7}xor`_J9co}spr`tWK5`h9;Wro&2t_- zYvBSbtApJ+JkVsnY|_`)w<}7m10xX4+8|AEX0+-Wj#l5lzp@DB!AfH_X;;lE*jD#n zKjS~xtW~NF0}sLC3c%R@?=!Z(oFqMZ2t~#-Rve->Tl;`r>f)`k2A; z@`0C9)dwo74(^ZUX95JD{Nood>Lnp9$erWx?o+NR+W23;3qSbCH`g60%KMCUFnQ>B zivXt@C^V(p4aAWWFC+*B?gCA+vIffuc>vxMd{=>pFRN){VzMUbx$a;Xx}=8S7n1K^ zn?ciOWw>`$=lj^dTlb|u_j%o~GDY&%cOBXAjbOVwU@zkERvF-Sp+1s1Q%RPenhxi{ zhVGEP_?*jwf`YE-=;$a9P*BxZ{$K4~c~FyQ8vis(sfESXr3$QowG|6^$4CW{wpJ@D z-~}isU`-H-78EJS87(j#cp!(!WxJfp8APe5L{L-^Lj?x{ieS723CISJYkzMNI$>Ko z7(27OGx!JNKS{ptJ)ZY@pXYa2BVDyAsdOMRtIXKJk2Ft#74`>8rGh#TNcSZc%&RQw!!G!H;lvbktQLS!nvrIOB8DnimzAs6g0~ zP1y1*GGQ;8!CjQZ1(b;j4-%IB1PC4;ggKoW4OPIrP}xlMlq+z!{XT)B+%D&>&uIIw zN9wkUdhNP*U4TQ&-v+JO;g85>m7?C9@eYsJZ-X?%JAwiuW>v6aG}Ul{p!oCeAU_^& zy?F8BQZHn{v5zYKpqSxwghUI`YJc!B4p0@0SGGlHa&EK>_ol2^IZ>!?W;#n`GM;*tn<6j2e&H$ zX>*ziyZ(aUkn9kOJ*q&IAC#zi#*CqOqdh=c3y$GO&q+B*U{n)`CPP_1D5$UcJJAmJ zw)KYGTv_MU@eW8HHcAo=f}z$RqMFaVr2Rq4@v#B{Nji-qx8|*Hd`#p7G{C4VnMrDX z5$@=wIyJPr#$W91?ue?kE%4ly{}78dkQdG3;KwBrO6?jr* z8Zt}guCK<88|U;0niVsI#LhDAR@1mC%K3!UqqQ)w4aTs*1mh1rg zn?%?p{w30<=|Ui}i+K2X2hxzr8qv!v$K!ezw0rMzN?Aas|mA<&XuL zmJWHsGY5&?01aSWLm^Rikc6S^9oR}yt>Do)H2{V(gLE|Y0-A7>o|O({LE=FP*8sQv z=$;d@c=eh5vKiu~LAq>Qh}+-cez0-E3H@+EcL$L_)<{74dS*7cGhJ%Gz09crT8&KN z>s7?VW2_`>z<(LWkC*;BPd?iUemh^bZH%rd5J_a2qP<&&^=aQxg^9AK zaEnyny9Pz2LFw?&0?43`G&9sG$J%M&MBBHa$~m3r-%KfdLW;`fm2@V=r45RCK+Aon zCwt`17zK9e?@pMR%|wd9?FNbPuvVNnG0xW!xU|k8+cYnPkdxM$pE3kbA4Vv`M&1;|U-L^Tu9;VD?My95wceGGv2yaCf z&xr^fpOsx&0}H=+`!b;HT?jqgz71uW=|Tc4Q3AGdZHZXi=~IjT_?i-+AnNA5^=|m{ z9bi-qnBSUuC!&ZHEEEcvO;4XH)6k$bAjA-MrR?X9|M;%UKvH_88cYgsOc$#L0E#tx ziJ$C&spKp2f$PoZ>!6vI-%--KHRTpR z(bU)It{c#M%pQ1z7Mr1xu|bN0p&Akt$nj)fJn*156j=NJc`mO8Cn<8-Q$iA>_J9V` z^{wRFS;`75{k*!W+%rG|EqmRCuM4~aL5WR1l10QaRN(90IKB!@$?!)87R^wbFT*4D zUm39;2jd^KPA~=iBYdB0uL?`;)IUM?F9A=>}V?V$r0jbKC=7{&3B&DZt^yj?+GUuYK$N z)B>u#wV&+TsQ0bk0%?2?43s}~b>(_Y%JRWtq!xGUQ9MS!bI$TPjX!d-)N|A58+$V>=cHs|re?*W35nZ(v&8!{pKXeA^w?Nj@ zB1Z7sh{(uD2}MZ2gL2!LD`8<_M9@AIy@FCD09_+XKxt&r07Mj&!oXN!B+GV0rQYQ( zfV_-sq$zZ`O+@{jX!tfAhQwlYh6y}7Twu4rYW$8B)0EE#1I;BtV&N^!>=33%XpjA?m+yKT93u!=@l$sq@pSZnIE^8VWej+gh) zNr6ZUBH{sOxrCXhZRDn_1rENKW?5+|mjmCAq#P&%Xl-$IT}B+^xg4nMI~yRAH26HV z=E;1YRAbZXi3tx58AzwtOs!E)i*oFn2l!8y7qy@QhC<=nwi5L$-v|5jxExYO3loP<`qMtolKw;TGul@AT1`~fr44-1^Xy= z18PIpt+{bJCSEhOj)VEb>B0;^#TgDiLB8b$YqDzv~1&^B%aaIxy9EFT{qO=Ev`__3N3 zO6(XNkv@dtCU;lBMFNm$9*6A+nfM@nE+G%pgTO7|K{w+>21H$RM6;kb_JVE-$f|$` zidCiU%9Te|FMuE%Wch1t?TL(k7<(FqLTlrelEh06t*Om4B1xhNZLYOmYG`2Iu%2QO zdpv{S??NXQ?zdp_cZsd~3;9s2BmdkoL`q*u|BJth1b-5i1GTpRWG+ZnQkh^?#Xyz( zLKjwCqk4`4QJ2z+#VX(dxLaup{mZ7zc>mYWqyvftE-)i9F(5-o);#F* z(Q^bm^w$zfP{`U$16a1qTH*|k!X}Fb-MX(e>uPJc98eX)d#-|$&K)NKPJ{PSsssd$ zO;vobnofKM=pTA^L~XcnuSAjvBx6^G)ykDCt1{=WM_u_W10EMeIyd}X;J+Z*PX}s? zVUmy=fuina1Hm{CY*jX35~oD#xKGYkhGXtK;Q8!-1{A>gIX9xMt&Q#vJ*c3=R*0Gzglj;!i2`)6?T8U^n5yB%3r2Qn zSy`4sKs<9f;E*Kcz|BmHK<)d=)IDOzHV&DOGegtW)wQ5Eaj%l9zIZZG?h<0n7VKKm z&+u-0xM^WnZ|#zU6OO9Ff?}7u4Z`y@lM1rHfX`CzyS~<>TKdYoydrr+M+NexldI;b zQ+<*@-;ej>%wa{&)gi+cGW6YD!FgG8WEQg&~gyc~piI}L#HHBoODvKvsQav>P> z#>wH~;dep5cQHZbpCLk}BGDaqVSyQw`6%F*J=-hY>%d!v?ncY~`^|dI_X?f{aCfLL zyt+wM+a&)$!TjCrTh6td0?W%l=-=u7l6LP3}EkcB_JrV{ytZ}M{jj~>&H4c-9nKkT#f%(m~|1p z&7mNz@s+suw=S`9PkNW>GrzZnYRH-ck(l-xXx3e~xKmSeoB%#qG>K0&4t*{MU@P{c zNW1Mzg(#67xOfRC4jnNeSJZ=Y!u$m+Vxs^y3YUYiNpeTYEMQa0J)Fu+!H9F)>LN?9 zec6sU)FpgJhUk`YOJYt^(q~#v+h1IS_+`!~_nzT(b3^$Fuv=tdAp`n9}3)&85dCLa!F53o$8rD6x}qtJ6aM{!z25yIs80j z`SFTpvmmwhfttjT4!LXhIOAp(bYui0Vq#({NsEg~L(nt45YklU-SsFcmjjRPzFwQ! zXIZ`a+96GK#=f0yj3a(NmZn{srH3k{|Je<|^OstK>}Q3{w0Nhiz}jxx7cfb>0PuIH znQ)d^?Ah@z{^_hNJ`1um)yL+kP}Pwzp?2;@m|h_SHHFK;A~=7e|7%#kEwk)HUzFvO zcIwn?Jzq7OMl1tC2$GCr(xedb6VF|2Mws!REM!WarRSKucf$~$YS1i^e3@FX#KomA z>KJ79@)s@;AZl0MV;&uegXl=F(=~PJTL)&o>mfIMi~eo>3>Oh(I8l^GhifPU7t!Gw z%5c$bAVer~i}*hbu;%xwrbDN)Fu7x(i$$4z`}WDkqSdQbwFPX{o%Q}iOZ%y043~am Lu_*H^$36cBqM2zo literal 0 HcmV?d00001 diff --git a/previews/PR383/assets/themes/documenter-dark.css b/previews/PR383/assets/themes/documenter-dark.css new file mode 100644 index 000000000..c94a294dc --- /dev/null +++ b/previews/PR383/assets/themes/documenter-dark.css @@ -0,0 +1,7 @@ +@keyframes spinAround{from{transform:rotate(0deg)}to{transform:rotate(359deg)}}html.theme--documenter-dark .tabs,html.theme--documenter-dark .pagination-previous,html.theme--documenter-dark .pagination-next,html.theme--documenter-dark .pagination-link,html.theme--documenter-dark .pagination-ellipsis,html.theme--documenter-dark .breadcrumb,html.theme--documenter-dark .file,html.theme--documenter-dark .button,.is-unselectable,html.theme--documenter-dark .modal-close,html.theme--documenter-dark .delete{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}html.theme--documenter-dark .navbar-link:not(.is-arrowless)::after,html.theme--documenter-dark .select:not(.is-multiple):not(.is-loading)::after{border:3px solid rgba(0,0,0,0);border-radius:2px;border-right:0;border-top:0;content:" ";display:block;height:0.625em;margin-top:-0.4375em;pointer-events:none;position:absolute;top:50%;transform:rotate(-45deg);transform-origin:center;width:0.625em}html.theme--documenter-dark .admonition:not(:last-child),html.theme--documenter-dark .tabs:not(:last-child),html.theme--documenter-dark .message:not(:last-child),html.theme--documenter-dark .list:not(:last-child),html.theme--documenter-dark .level:not(:last-child),html.theme--documenter-dark .breadcrumb:not(:last-child),html.theme--documenter-dark .highlight:not(:last-child),html.theme--documenter-dark .block:not(:last-child),html.theme--documenter-dark .title:not(:last-child),html.theme--documenter-dark .subtitle:not(:last-child),html.theme--documenter-dark .table-container:not(:last-child),html.theme--documenter-dark .table:not(:last-child),html.theme--documenter-dark .progress:not(:last-child),html.theme--documenter-dark .notification:not(:last-child),html.theme--documenter-dark .content:not(:last-child),html.theme--documenter-dark .box:not(:last-child){margin-bottom:1.5rem}html.theme--documenter-dark .modal-close,html.theme--documenter-dark .delete{-moz-appearance:none;-webkit-appearance:none;background-color:rgba(10,10,10,0.2);border:none;border-radius:290486px;cursor:pointer;pointer-events:auto;display:inline-block;flex-grow:0;flex-shrink:0;font-size:0;height:20px;max-height:20px;max-width:20px;min-height:20px;min-width:20px;outline:none;position:relative;vertical-align:top;width:20px}html.theme--documenter-dark .modal-close::before,html.theme--documenter-dark .delete::before,html.theme--documenter-dark .modal-close::after,html.theme--documenter-dark .delete::after{background-color:#fff;content:"";display:block;left:50%;position:absolute;top:50%;transform:translateX(-50%) translateY(-50%) rotate(45deg);transform-origin:center center}html.theme--documenter-dark .modal-close::before,html.theme--documenter-dark .delete::before{height:2px;width:50%}html.theme--documenter-dark .modal-close::after,html.theme--documenter-dark .delete::after{height:50%;width:2px}html.theme--documenter-dark .modal-close:hover,html.theme--documenter-dark .delete:hover,html.theme--documenter-dark .modal-close:focus,html.theme--documenter-dark .delete:focus{background-color:rgba(10,10,10,0.3)}html.theme--documenter-dark .modal-close:active,html.theme--documenter-dark .delete:active{background-color:rgba(10,10,10,0.4)}html.theme--documenter-dark .is-small.modal-close,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.modal-close,html.theme--documenter-dark .is-small.delete,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.delete{height:16px;max-height:16px;max-width:16px;min-height:16px;min-width:16px;width:16px}html.theme--documenter-dark .is-medium.modal-close,html.theme--documenter-dark .is-medium.delete{height:24px;max-height:24px;max-width:24px;min-height:24px;min-width:24px;width:24px}html.theme--documenter-dark .is-large.modal-close,html.theme--documenter-dark .is-large.delete{height:32px;max-height:32px;max-width:32px;min-height:32px;min-width:32px;width:32px}html.theme--documenter-dark .control.is-loading::after,html.theme--documenter-dark .select.is-loading::after,html.theme--documenter-dark .loader,html.theme--documenter-dark .button.is-loading::after{animation:spinAround 500ms infinite linear;border:2px solid #dbdee0;border-radius:290486px;border-right-color:transparent;border-top-color:transparent;content:"";display:block;height:1em;position:relative;width:1em}html.theme--documenter-dark .hero-video,html.theme--documenter-dark .modal-background,html.theme--documenter-dark .modal,html.theme--documenter-dark .image.is-square img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-square img,html.theme--documenter-dark .image.is-square .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-square .has-ratio,html.theme--documenter-dark .image.is-1by1 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by1 img,html.theme--documenter-dark .image.is-1by1 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by1 .has-ratio,html.theme--documenter-dark .image.is-5by4 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-5by4 img,html.theme--documenter-dark .image.is-5by4 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-5by4 .has-ratio,html.theme--documenter-dark .image.is-4by3 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-4by3 img,html.theme--documenter-dark .image.is-4by3 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-4by3 .has-ratio,html.theme--documenter-dark .image.is-3by2 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by2 img,html.theme--documenter-dark .image.is-3by2 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by2 .has-ratio,html.theme--documenter-dark .image.is-5by3 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-5by3 img,html.theme--documenter-dark .image.is-5by3 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-5by3 .has-ratio,html.theme--documenter-dark .image.is-16by9 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-16by9 img,html.theme--documenter-dark .image.is-16by9 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-16by9 .has-ratio,html.theme--documenter-dark .image.is-2by1 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-2by1 img,html.theme--documenter-dark .image.is-2by1 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-2by1 .has-ratio,html.theme--documenter-dark .image.is-3by1 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by1 img,html.theme--documenter-dark .image.is-3by1 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by1 .has-ratio,html.theme--documenter-dark .image.is-4by5 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-4by5 img,html.theme--documenter-dark .image.is-4by5 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-4by5 .has-ratio,html.theme--documenter-dark .image.is-3by4 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by4 img,html.theme--documenter-dark .image.is-3by4 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by4 .has-ratio,html.theme--documenter-dark .image.is-2by3 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-2by3 img,html.theme--documenter-dark .image.is-2by3 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-2by3 .has-ratio,html.theme--documenter-dark .image.is-3by5 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by5 img,html.theme--documenter-dark .image.is-3by5 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by5 .has-ratio,html.theme--documenter-dark .image.is-9by16 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-9by16 img,html.theme--documenter-dark .image.is-9by16 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-9by16 .has-ratio,html.theme--documenter-dark .image.is-1by2 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by2 img,html.theme--documenter-dark .image.is-1by2 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by2 .has-ratio,html.theme--documenter-dark .image.is-1by3 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by3 img,html.theme--documenter-dark .image.is-1by3 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by3 .has-ratio,.is-overlay{bottom:0;left:0;position:absolute;right:0;top:0}html.theme--documenter-dark .pagination-previous,html.theme--documenter-dark .pagination-next,html.theme--documenter-dark .pagination-link,html.theme--documenter-dark .pagination-ellipsis,html.theme--documenter-dark .file-cta,html.theme--documenter-dark .file-name,html.theme--documenter-dark .select select,html.theme--documenter-dark .textarea,html.theme--documenter-dark .input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input,html.theme--documenter-dark .button{-moz-appearance:none;-webkit-appearance:none;align-items:center;border:1px solid transparent;border-radius:.4em;box-shadow:none;display:inline-flex;font-size:15px;height:2.25em;justify-content:flex-start;line-height:1.5;padding-bottom:calc(0.375em - 1px);padding-left:calc(0.625em - 1px);padding-right:calc(0.625em - 1px);padding-top:calc(0.375em - 1px);position:relative;vertical-align:top}html.theme--documenter-dark .pagination-previous:focus,html.theme--documenter-dark .pagination-next:focus,html.theme--documenter-dark .pagination-link:focus,html.theme--documenter-dark .pagination-ellipsis:focus,html.theme--documenter-dark .file-cta:focus,html.theme--documenter-dark .file-name:focus,html.theme--documenter-dark .select select:focus,html.theme--documenter-dark .textarea:focus,html.theme--documenter-dark .input:focus,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input:focus,html.theme--documenter-dark .button:focus,html.theme--documenter-dark .is-focused.pagination-previous,html.theme--documenter-dark .is-focused.pagination-next,html.theme--documenter-dark .is-focused.pagination-link,html.theme--documenter-dark .is-focused.pagination-ellipsis,html.theme--documenter-dark .is-focused.file-cta,html.theme--documenter-dark .is-focused.file-name,html.theme--documenter-dark .select select.is-focused,html.theme--documenter-dark .is-focused.textarea,html.theme--documenter-dark .is-focused.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--documenter-dark .is-focused.button,html.theme--documenter-dark .pagination-previous:active,html.theme--documenter-dark .pagination-next:active,html.theme--documenter-dark .pagination-link:active,html.theme--documenter-dark .pagination-ellipsis:active,html.theme--documenter-dark .file-cta:active,html.theme--documenter-dark .file-name:active,html.theme--documenter-dark .select select:active,html.theme--documenter-dark .textarea:active,html.theme--documenter-dark .input:active,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input:active,html.theme--documenter-dark .button:active,html.theme--documenter-dark .is-active.pagination-previous,html.theme--documenter-dark .is-active.pagination-next,html.theme--documenter-dark .is-active.pagination-link,html.theme--documenter-dark .is-active.pagination-ellipsis,html.theme--documenter-dark .is-active.file-cta,html.theme--documenter-dark .is-active.file-name,html.theme--documenter-dark .select select.is-active,html.theme--documenter-dark .is-active.textarea,html.theme--documenter-dark .is-active.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-active,html.theme--documenter-dark .is-active.button{outline:none}html.theme--documenter-dark .pagination-previous[disabled],html.theme--documenter-dark .pagination-next[disabled],html.theme--documenter-dark .pagination-link[disabled],html.theme--documenter-dark .pagination-ellipsis[disabled],html.theme--documenter-dark .file-cta[disabled],html.theme--documenter-dark .file-name[disabled],html.theme--documenter-dark .select select[disabled],html.theme--documenter-dark .textarea[disabled],html.theme--documenter-dark .input[disabled],html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input[disabled],html.theme--documenter-dark .button[disabled],fieldset[disabled] html.theme--documenter-dark .pagination-previous,html.theme--documenter-dark fieldset[disabled] .pagination-previous,fieldset[disabled] html.theme--documenter-dark .pagination-next,html.theme--documenter-dark fieldset[disabled] .pagination-next,fieldset[disabled] html.theme--documenter-dark .pagination-link,html.theme--documenter-dark fieldset[disabled] .pagination-link,fieldset[disabled] html.theme--documenter-dark .pagination-ellipsis,html.theme--documenter-dark fieldset[disabled] .pagination-ellipsis,fieldset[disabled] html.theme--documenter-dark .file-cta,html.theme--documenter-dark fieldset[disabled] .file-cta,fieldset[disabled] html.theme--documenter-dark .file-name,html.theme--documenter-dark fieldset[disabled] .file-name,fieldset[disabled] html.theme--documenter-dark .select select,fieldset[disabled] html.theme--documenter-dark .textarea,fieldset[disabled] html.theme--documenter-dark .input,fieldset[disabled] html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input,html.theme--documenter-dark fieldset[disabled] .select select,html.theme--documenter-dark .select fieldset[disabled] select,html.theme--documenter-dark fieldset[disabled] .textarea,html.theme--documenter-dark fieldset[disabled] .input,html.theme--documenter-dark fieldset[disabled] #documenter .docs-sidebar form.docs-search>input,html.theme--documenter-dark #documenter .docs-sidebar fieldset[disabled] form.docs-search>input,fieldset[disabled] html.theme--documenter-dark .button,html.theme--documenter-dark fieldset[disabled] .button{cursor:not-allowed}/*! minireset.css v0.0.4 | MIT License | github.com/jgthms/minireset.css */html,body,p,ol,ul,li,dl,dt,dd,blockquote,figure,fieldset,legend,textarea,pre,iframe,hr,h1,h2,h3,h4,h5,h6{margin:0;padding:0}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}ul{list-style:none}button,input,select,textarea{margin:0}html{box-sizing:border-box}*,*::before,*::after{box-sizing:inherit}img,embed,iframe,object,video{height:auto;max-width:100%}audio{max-width:100%}iframe{border:0}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}td:not([align]),th:not([align]){text-align:left}.is-clearfix::after{clear:both;content:" ";display:table}.is-pulled-left{float:left !important}.is-pulled-right{float:right !important}.is-clipped{overflow:hidden !important}.is-size-1{font-size:3rem !important}.is-size-2{font-size:2.5rem !important}.is-size-3{font-size:2rem !important}.is-size-4{font-size:1.5rem !important}.is-size-5{font-size:1.25rem !important}.is-size-6{font-size:15px !important}.is-size-7,html.theme--documenter-dark .docstring>section>a.docs-sourcelink{font-size:.85em !important}@media screen and (max-width: 768px){.is-size-1-mobile{font-size:3rem !important}.is-size-2-mobile{font-size:2.5rem !important}.is-size-3-mobile{font-size:2rem !important}.is-size-4-mobile{font-size:1.5rem !important}.is-size-5-mobile{font-size:1.25rem !important}.is-size-6-mobile{font-size:15px !important}.is-size-7-mobile{font-size:.85em !important}}@media screen and (min-width: 769px),print{.is-size-1-tablet{font-size:3rem !important}.is-size-2-tablet{font-size:2.5rem !important}.is-size-3-tablet{font-size:2rem !important}.is-size-4-tablet{font-size:1.5rem !important}.is-size-5-tablet{font-size:1.25rem !important}.is-size-6-tablet{font-size:15px !important}.is-size-7-tablet{font-size:.85em !important}}@media screen and (max-width: 1055px){.is-size-1-touch{font-size:3rem !important}.is-size-2-touch{font-size:2.5rem !important}.is-size-3-touch{font-size:2rem !important}.is-size-4-touch{font-size:1.5rem !important}.is-size-5-touch{font-size:1.25rem !important}.is-size-6-touch{font-size:15px !important}.is-size-7-touch{font-size:.85em !important}}@media screen and (min-width: 1056px){.is-size-1-desktop{font-size:3rem !important}.is-size-2-desktop{font-size:2.5rem !important}.is-size-3-desktop{font-size:2rem !important}.is-size-4-desktop{font-size:1.5rem !important}.is-size-5-desktop{font-size:1.25rem !important}.is-size-6-desktop{font-size:15px !important}.is-size-7-desktop{font-size:.85em !important}}@media screen and (min-width: 1216px){.is-size-1-widescreen{font-size:3rem !important}.is-size-2-widescreen{font-size:2.5rem !important}.is-size-3-widescreen{font-size:2rem !important}.is-size-4-widescreen{font-size:1.5rem !important}.is-size-5-widescreen{font-size:1.25rem !important}.is-size-6-widescreen{font-size:15px !important}.is-size-7-widescreen{font-size:.85em !important}}@media screen and (min-width: 1408px){.is-size-1-fullhd{font-size:3rem !important}.is-size-2-fullhd{font-size:2.5rem !important}.is-size-3-fullhd{font-size:2rem !important}.is-size-4-fullhd{font-size:1.5rem !important}.is-size-5-fullhd{font-size:1.25rem !important}.is-size-6-fullhd{font-size:15px !important}.is-size-7-fullhd{font-size:.85em !important}}.has-text-centered{text-align:center !important}.has-text-justified{text-align:justify !important}.has-text-left{text-align:left !important}.has-text-right{text-align:right !important}@media screen and (max-width: 768px){.has-text-centered-mobile{text-align:center !important}}@media screen and (min-width: 769px),print{.has-text-centered-tablet{text-align:center !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-centered-tablet-only{text-align:center !important}}@media screen and (max-width: 1055px){.has-text-centered-touch{text-align:center !important}}@media screen and (min-width: 1056px){.has-text-centered-desktop{text-align:center !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-centered-desktop-only{text-align:center !important}}@media screen and (min-width: 1216px){.has-text-centered-widescreen{text-align:center !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-centered-widescreen-only{text-align:center !important}}@media screen and (min-width: 1408px){.has-text-centered-fullhd{text-align:center !important}}@media screen and (max-width: 768px){.has-text-justified-mobile{text-align:justify !important}}@media screen and (min-width: 769px),print{.has-text-justified-tablet{text-align:justify !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-justified-tablet-only{text-align:justify !important}}@media screen and (max-width: 1055px){.has-text-justified-touch{text-align:justify !important}}@media screen and (min-width: 1056px){.has-text-justified-desktop{text-align:justify !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-justified-desktop-only{text-align:justify !important}}@media screen and (min-width: 1216px){.has-text-justified-widescreen{text-align:justify !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-justified-widescreen-only{text-align:justify !important}}@media screen and (min-width: 1408px){.has-text-justified-fullhd{text-align:justify !important}}@media screen and (max-width: 768px){.has-text-left-mobile{text-align:left !important}}@media screen and (min-width: 769px),print{.has-text-left-tablet{text-align:left !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-left-tablet-only{text-align:left !important}}@media screen and (max-width: 1055px){.has-text-left-touch{text-align:left !important}}@media screen and (min-width: 1056px){.has-text-left-desktop{text-align:left !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-left-desktop-only{text-align:left !important}}@media screen and (min-width: 1216px){.has-text-left-widescreen{text-align:left !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-left-widescreen-only{text-align:left !important}}@media screen and (min-width: 1408px){.has-text-left-fullhd{text-align:left !important}}@media screen and (max-width: 768px){.has-text-right-mobile{text-align:right !important}}@media screen and (min-width: 769px),print{.has-text-right-tablet{text-align:right !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-right-tablet-only{text-align:right !important}}@media screen and (max-width: 1055px){.has-text-right-touch{text-align:right !important}}@media screen and (min-width: 1056px){.has-text-right-desktop{text-align:right !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-right-desktop-only{text-align:right !important}}@media screen and (min-width: 1216px){.has-text-right-widescreen{text-align:right !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-right-widescreen-only{text-align:right !important}}@media screen and (min-width: 1408px){.has-text-right-fullhd{text-align:right !important}}.is-capitalized{text-transform:capitalize !important}.is-lowercase{text-transform:lowercase !important}.is-uppercase{text-transform:uppercase !important}.is-italic{font-style:italic !important}.has-text-white{color:#fff !important}a.has-text-white:hover,a.has-text-white:focus{color:#e6e6e6 !important}.has-background-white{background-color:#fff !important}.has-text-black{color:#0a0a0a !important}a.has-text-black:hover,a.has-text-black:focus{color:#000 !important}.has-background-black{background-color:#0a0a0a !important}.has-text-light{color:#ecf0f1 !important}a.has-text-light:hover,a.has-text-light:focus{color:#cfd9db !important}.has-background-light{background-color:#ecf0f1 !important}.has-text-dark{color:#282f2f !important}a.has-text-dark:hover,a.has-text-dark:focus{color:#111414 !important}.has-background-dark{background-color:#282f2f !important}.has-text-primary{color:#375a7f !important}a.has-text-primary:hover,a.has-text-primary:focus{color:#28415b !important}.has-background-primary{background-color:#375a7f !important}.has-text-link{color:#1abc9c !important}a.has-text-link:hover,a.has-text-link:focus{color:#148f77 !important}.has-background-link{background-color:#1abc9c !important}.has-text-info{color:#024c7d !important}a.has-text-info:hover,a.has-text-info:focus{color:#012d4b !important}.has-background-info{background-color:#024c7d !important}.has-text-success{color:#008438 !important}a.has-text-success:hover,a.has-text-success:focus{color:#005122 !important}.has-background-success{background-color:#008438 !important}.has-text-warning{color:#ad8100 !important}a.has-text-warning:hover,a.has-text-warning:focus{color:#7a5b00 !important}.has-background-warning{background-color:#ad8100 !important}.has-text-danger{color:#9e1b0d !important}a.has-text-danger:hover,a.has-text-danger:focus{color:#6f1309 !important}.has-background-danger{background-color:#9e1b0d !important}.has-text-black-bis{color:#121212 !important}.has-background-black-bis{background-color:#121212 !important}.has-text-black-ter{color:#242424 !important}.has-background-black-ter{background-color:#242424 !important}.has-text-grey-darker{color:#282f2f !important}.has-background-grey-darker{background-color:#282f2f !important}.has-text-grey-dark{color:#343c3d !important}.has-background-grey-dark{background-color:#343c3d !important}.has-text-grey{color:#5e6d6f !important}.has-background-grey{background-color:#5e6d6f !important}.has-text-grey-light{color:#8c9b9d !important}.has-background-grey-light{background-color:#8c9b9d !important}.has-text-grey-lighter{color:#dbdee0 !important}.has-background-grey-lighter{background-color:#dbdee0 !important}.has-text-white-ter{color:#ecf0f1 !important}.has-background-white-ter{background-color:#ecf0f1 !important}.has-text-white-bis{color:#fafafa !important}.has-background-white-bis{background-color:#fafafa !important}.has-text-weight-light{font-weight:300 !important}.has-text-weight-normal{font-weight:400 !important}.has-text-weight-medium{font-weight:500 !important}.has-text-weight-semibold{font-weight:600 !important}.has-text-weight-bold{font-weight:700 !important}.is-family-primary{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif !important}.is-family-secondary{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif !important}.is-family-sans-serif{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif !important}.is-family-monospace{font-family:"JuliaMono","SFMono-Regular","Menlo","Consolas","Liberation Mono","DejaVu Sans Mono",monospace !important}.is-family-code{font-family:"JuliaMono","SFMono-Regular","Menlo","Consolas","Liberation Mono","DejaVu Sans Mono",monospace !important}.is-block{display:block !important}@media screen and (max-width: 768px){.is-block-mobile{display:block !important}}@media screen and (min-width: 769px),print{.is-block-tablet{display:block !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-block-tablet-only{display:block !important}}@media screen and (max-width: 1055px){.is-block-touch{display:block !important}}@media screen and (min-width: 1056px){.is-block-desktop{display:block !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-block-desktop-only{display:block !important}}@media screen and (min-width: 1216px){.is-block-widescreen{display:block !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-block-widescreen-only{display:block !important}}@media screen and (min-width: 1408px){.is-block-fullhd{display:block !important}}.is-flex{display:flex !important}@media screen and (max-width: 768px){.is-flex-mobile{display:flex !important}}@media screen and (min-width: 769px),print{.is-flex-tablet{display:flex !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-flex-tablet-only{display:flex !important}}@media screen and (max-width: 1055px){.is-flex-touch{display:flex !important}}@media screen and (min-width: 1056px){.is-flex-desktop{display:flex !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-flex-desktop-only{display:flex !important}}@media screen and (min-width: 1216px){.is-flex-widescreen{display:flex !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-flex-widescreen-only{display:flex !important}}@media screen and (min-width: 1408px){.is-flex-fullhd{display:flex !important}}.is-inline{display:inline !important}@media screen and (max-width: 768px){.is-inline-mobile{display:inline !important}}@media screen and (min-width: 769px),print{.is-inline-tablet{display:inline !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-inline-tablet-only{display:inline !important}}@media screen and (max-width: 1055px){.is-inline-touch{display:inline !important}}@media screen and (min-width: 1056px){.is-inline-desktop{display:inline !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-inline-desktop-only{display:inline !important}}@media screen and (min-width: 1216px){.is-inline-widescreen{display:inline !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-inline-widescreen-only{display:inline !important}}@media screen and (min-width: 1408px){.is-inline-fullhd{display:inline !important}}.is-inline-block{display:inline-block !important}@media screen and (max-width: 768px){.is-inline-block-mobile{display:inline-block !important}}@media screen and (min-width: 769px),print{.is-inline-block-tablet{display:inline-block !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-inline-block-tablet-only{display:inline-block !important}}@media screen and (max-width: 1055px){.is-inline-block-touch{display:inline-block !important}}@media screen and (min-width: 1056px){.is-inline-block-desktop{display:inline-block !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-inline-block-desktop-only{display:inline-block !important}}@media screen and (min-width: 1216px){.is-inline-block-widescreen{display:inline-block !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-inline-block-widescreen-only{display:inline-block !important}}@media screen and (min-width: 1408px){.is-inline-block-fullhd{display:inline-block !important}}.is-inline-flex{display:inline-flex !important}@media screen and (max-width: 768px){.is-inline-flex-mobile{display:inline-flex !important}}@media screen and (min-width: 769px),print{.is-inline-flex-tablet{display:inline-flex !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-inline-flex-tablet-only{display:inline-flex !important}}@media screen and (max-width: 1055px){.is-inline-flex-touch{display:inline-flex !important}}@media screen and (min-width: 1056px){.is-inline-flex-desktop{display:inline-flex !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-inline-flex-desktop-only{display:inline-flex !important}}@media screen and (min-width: 1216px){.is-inline-flex-widescreen{display:inline-flex !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-inline-flex-widescreen-only{display:inline-flex !important}}@media screen and (min-width: 1408px){.is-inline-flex-fullhd{display:inline-flex !important}}.is-hidden{display:none !important}.is-sr-only{border:none !important;clip:rect(0, 0, 0, 0) !important;height:0.01em !important;overflow:hidden !important;padding:0 !important;position:absolute !important;white-space:nowrap !important;width:0.01em !important}@media screen and (max-width: 768px){.is-hidden-mobile{display:none !important}}@media screen and (min-width: 769px),print{.is-hidden-tablet{display:none !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-hidden-tablet-only{display:none !important}}@media screen and (max-width: 1055px){.is-hidden-touch{display:none !important}}@media screen and (min-width: 1056px){.is-hidden-desktop{display:none !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-hidden-desktop-only{display:none !important}}@media screen and (min-width: 1216px){.is-hidden-widescreen{display:none !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-hidden-widescreen-only{display:none !important}}@media screen and (min-width: 1408px){.is-hidden-fullhd{display:none !important}}.is-invisible{visibility:hidden !important}@media screen and (max-width: 768px){.is-invisible-mobile{visibility:hidden !important}}@media screen and (min-width: 769px),print{.is-invisible-tablet{visibility:hidden !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-invisible-tablet-only{visibility:hidden !important}}@media screen and (max-width: 1055px){.is-invisible-touch{visibility:hidden !important}}@media screen and (min-width: 1056px){.is-invisible-desktop{visibility:hidden !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-invisible-desktop-only{visibility:hidden !important}}@media screen and (min-width: 1216px){.is-invisible-widescreen{visibility:hidden !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-invisible-widescreen-only{visibility:hidden !important}}@media screen and (min-width: 1408px){.is-invisible-fullhd{visibility:hidden !important}}.is-marginless{margin:0 !important}.is-paddingless{padding:0 !important}.is-radiusless{border-radius:0 !important}.is-shadowless{box-shadow:none !important}.is-relative{position:relative !important}html.theme--documenter-dark{/*! + Theme: a11y-dark + Author: @ericwbailey + Maintainer: @ericwbailey + + Based on the Tomorrow Night Eighties theme: https://github.com/isagalaev/highlight.js/blob/master/src/styles/tomorrow-night-eighties.css +*/}html.theme--documenter-dark html{background-color:#1f2424;font-size:16px;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;min-width:300px;overflow-x:auto;overflow-y:scroll;text-rendering:optimizeLegibility;text-size-adjust:100%}html.theme--documenter-dark article,html.theme--documenter-dark aside,html.theme--documenter-dark figure,html.theme--documenter-dark footer,html.theme--documenter-dark header,html.theme--documenter-dark hgroup,html.theme--documenter-dark section{display:block}html.theme--documenter-dark body,html.theme--documenter-dark button,html.theme--documenter-dark input,html.theme--documenter-dark select,html.theme--documenter-dark textarea{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif}html.theme--documenter-dark code,html.theme--documenter-dark pre{-moz-osx-font-smoothing:auto;-webkit-font-smoothing:auto;font-family:"JuliaMono","SFMono-Regular","Menlo","Consolas","Liberation Mono","DejaVu Sans Mono",monospace}html.theme--documenter-dark body{color:#fff;font-size:1em;font-weight:400;line-height:1.5}html.theme--documenter-dark a{color:#1abc9c;cursor:pointer;text-decoration:none}html.theme--documenter-dark a strong{color:currentColor}html.theme--documenter-dark a:hover{color:#1dd2af}html.theme--documenter-dark code{background-color:rgba(255,255,255,0.05);color:#ececec;font-size:.875em;font-weight:normal;padding:.1em}html.theme--documenter-dark hr{background-color:#282f2f;border:none;display:block;height:2px;margin:1.5rem 0}html.theme--documenter-dark img{height:auto;max-width:100%}html.theme--documenter-dark input[type="checkbox"],html.theme--documenter-dark input[type="radio"]{vertical-align:baseline}html.theme--documenter-dark small{font-size:.875em}html.theme--documenter-dark span{font-style:inherit;font-weight:inherit}html.theme--documenter-dark strong{color:#f2f2f2;font-weight:700}html.theme--documenter-dark fieldset{border:none}html.theme--documenter-dark pre{-webkit-overflow-scrolling:touch;background-color:#282f2f;color:#fff;font-size:.875em;overflow-x:auto;padding:1.25rem 1.5rem;white-space:pre;word-wrap:normal}html.theme--documenter-dark pre code{background-color:transparent;color:currentColor;font-size:1em;padding:0}html.theme--documenter-dark table td,html.theme--documenter-dark table th{vertical-align:top}html.theme--documenter-dark table td:not([align]),html.theme--documenter-dark table th:not([align]){text-align:left}html.theme--documenter-dark table th{color:#f2f2f2}html.theme--documenter-dark .box{background-color:#343c3d;border-radius:8px;box-shadow:none;color:#fff;display:block;padding:1.25rem}html.theme--documenter-dark a.box:hover,html.theme--documenter-dark a.box:focus{box-shadow:0 2px 3px rgba(10,10,10,0.1),0 0 0 1px #1abc9c}html.theme--documenter-dark a.box:active{box-shadow:inset 0 1px 2px rgba(10,10,10,0.2),0 0 0 1px #1abc9c}html.theme--documenter-dark .button{background-color:#282f2f;border-color:#4c5759;border-width:1px;color:#375a7f;cursor:pointer;justify-content:center;padding-bottom:calc(0.375em - 1px);padding-left:.75em;padding-right:.75em;padding-top:calc(0.375em - 1px);text-align:center;white-space:nowrap}html.theme--documenter-dark .button strong{color:inherit}html.theme--documenter-dark .button .icon,html.theme--documenter-dark .button .icon.is-small,html.theme--documenter-dark .button #documenter .docs-sidebar form.docs-search>input.icon,html.theme--documenter-dark #documenter .docs-sidebar .button form.docs-search>input.icon,html.theme--documenter-dark .button .icon.is-medium,html.theme--documenter-dark .button .icon.is-large{height:1.5em;width:1.5em}html.theme--documenter-dark .button .icon:first-child:not(:last-child){margin-left:calc(-0.375em - 1px);margin-right:0.1875em}html.theme--documenter-dark .button .icon:last-child:not(:first-child){margin-left:0.1875em;margin-right:calc(-0.375em - 1px)}html.theme--documenter-dark .button .icon:first-child:last-child{margin-left:calc(-0.375em - 1px);margin-right:calc(-0.375em - 1px)}html.theme--documenter-dark .button:hover,html.theme--documenter-dark .button.is-hovered{border-color:#8c9b9d;color:#f2f2f2}html.theme--documenter-dark .button:focus,html.theme--documenter-dark .button.is-focused{border-color:#8c9b9d;color:#17a689}html.theme--documenter-dark .button:focus:not(:active),html.theme--documenter-dark .button.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(26,188,156,0.25)}html.theme--documenter-dark .button:active,html.theme--documenter-dark .button.is-active{border-color:#343c3d;color:#f2f2f2}html.theme--documenter-dark .button.is-text{background-color:transparent;border-color:transparent;color:#fff;text-decoration:underline}html.theme--documenter-dark .button.is-text:hover,html.theme--documenter-dark .button.is-text.is-hovered,html.theme--documenter-dark .button.is-text:focus,html.theme--documenter-dark .button.is-text.is-focused{background-color:#282f2f;color:#f2f2f2}html.theme--documenter-dark .button.is-text:active,html.theme--documenter-dark .button.is-text.is-active{background-color:#1d2122;color:#f2f2f2}html.theme--documenter-dark .button.is-text[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-text{background-color:transparent;border-color:transparent;box-shadow:none}html.theme--documenter-dark .button.is-white{background-color:#fff;border-color:transparent;color:#0a0a0a}html.theme--documenter-dark .button.is-white:hover,html.theme--documenter-dark .button.is-white.is-hovered{background-color:#f9f9f9;border-color:transparent;color:#0a0a0a}html.theme--documenter-dark .button.is-white:focus,html.theme--documenter-dark .button.is-white.is-focused{border-color:transparent;color:#0a0a0a}html.theme--documenter-dark .button.is-white:focus:not(:active),html.theme--documenter-dark .button.is-white.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(255,255,255,0.25)}html.theme--documenter-dark .button.is-white:active,html.theme--documenter-dark .button.is-white.is-active{background-color:#f2f2f2;border-color:transparent;color:#0a0a0a}html.theme--documenter-dark .button.is-white[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-white{background-color:#fff;border-color:transparent;box-shadow:none}html.theme--documenter-dark .button.is-white.is-inverted{background-color:#0a0a0a;color:#fff}html.theme--documenter-dark .button.is-white.is-inverted:hover,html.theme--documenter-dark .button.is-white.is-inverted.is-hovered{background-color:#000}html.theme--documenter-dark .button.is-white.is-inverted[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-white.is-inverted{background-color:#0a0a0a;border-color:transparent;box-shadow:none;color:#fff}html.theme--documenter-dark .button.is-white.is-loading::after{border-color:transparent transparent #0a0a0a #0a0a0a !important}html.theme--documenter-dark .button.is-white.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--documenter-dark .button.is-white.is-outlined:hover,html.theme--documenter-dark .button.is-white.is-outlined.is-hovered,html.theme--documenter-dark .button.is-white.is-outlined:focus,html.theme--documenter-dark .button.is-white.is-outlined.is-focused{background-color:#fff;border-color:#fff;color:#0a0a0a}html.theme--documenter-dark .button.is-white.is-outlined.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-white.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-white.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-white.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-white.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #0a0a0a #0a0a0a !important}html.theme--documenter-dark .button.is-white.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-white.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--documenter-dark .button.is-white.is-inverted.is-outlined{background-color:transparent;border-color:#0a0a0a;color:#0a0a0a}html.theme--documenter-dark .button.is-white.is-inverted.is-outlined:hover,html.theme--documenter-dark .button.is-white.is-inverted.is-outlined.is-hovered,html.theme--documenter-dark .button.is-white.is-inverted.is-outlined:focus,html.theme--documenter-dark .button.is-white.is-inverted.is-outlined.is-focused{background-color:#0a0a0a;color:#fff}html.theme--documenter-dark .button.is-white.is-inverted.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-white.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-white.is-inverted.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-white.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-white.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-white.is-inverted.is-outlined{background-color:transparent;border-color:#0a0a0a;box-shadow:none;color:#0a0a0a}html.theme--documenter-dark .button.is-black{background-color:#0a0a0a;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-black:hover,html.theme--documenter-dark .button.is-black.is-hovered{background-color:#040404;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-black:focus,html.theme--documenter-dark .button.is-black.is-focused{border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-black:focus:not(:active),html.theme--documenter-dark .button.is-black.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(10,10,10,0.25)}html.theme--documenter-dark .button.is-black:active,html.theme--documenter-dark .button.is-black.is-active{background-color:#000;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-black[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-black{background-color:#0a0a0a;border-color:transparent;box-shadow:none}html.theme--documenter-dark .button.is-black.is-inverted{background-color:#fff;color:#0a0a0a}html.theme--documenter-dark .button.is-black.is-inverted:hover,html.theme--documenter-dark .button.is-black.is-inverted.is-hovered{background-color:#f2f2f2}html.theme--documenter-dark .button.is-black.is-inverted[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-black.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#0a0a0a}html.theme--documenter-dark .button.is-black.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-black.is-outlined{background-color:transparent;border-color:#0a0a0a;color:#0a0a0a}html.theme--documenter-dark .button.is-black.is-outlined:hover,html.theme--documenter-dark .button.is-black.is-outlined.is-hovered,html.theme--documenter-dark .button.is-black.is-outlined:focus,html.theme--documenter-dark .button.is-black.is-outlined.is-focused{background-color:#0a0a0a;border-color:#0a0a0a;color:#fff}html.theme--documenter-dark .button.is-black.is-outlined.is-loading::after{border-color:transparent transparent #0a0a0a #0a0a0a !important}html.theme--documenter-dark .button.is-black.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-black.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-black.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-black.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-black.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-black.is-outlined{background-color:transparent;border-color:#0a0a0a;box-shadow:none;color:#0a0a0a}html.theme--documenter-dark .button.is-black.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--documenter-dark .button.is-black.is-inverted.is-outlined:hover,html.theme--documenter-dark .button.is-black.is-inverted.is-outlined.is-hovered,html.theme--documenter-dark .button.is-black.is-inverted.is-outlined:focus,html.theme--documenter-dark .button.is-black.is-inverted.is-outlined.is-focused{background-color:#fff;color:#0a0a0a}html.theme--documenter-dark .button.is-black.is-inverted.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-black.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-black.is-inverted.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-black.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #0a0a0a #0a0a0a !important}html.theme--documenter-dark .button.is-black.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-black.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--documenter-dark .button.is-light{background-color:#ecf0f1;border-color:transparent;color:#282f2f}html.theme--documenter-dark .button.is-light:hover,html.theme--documenter-dark .button.is-light.is-hovered{background-color:#e5eaec;border-color:transparent;color:#282f2f}html.theme--documenter-dark .button.is-light:focus,html.theme--documenter-dark .button.is-light.is-focused{border-color:transparent;color:#282f2f}html.theme--documenter-dark .button.is-light:focus:not(:active),html.theme--documenter-dark .button.is-light.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(236,240,241,0.25)}html.theme--documenter-dark .button.is-light:active,html.theme--documenter-dark .button.is-light.is-active{background-color:#dde4e6;border-color:transparent;color:#282f2f}html.theme--documenter-dark .button.is-light[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-light{background-color:#ecf0f1;border-color:transparent;box-shadow:none}html.theme--documenter-dark .button.is-light.is-inverted{background-color:#282f2f;color:#ecf0f1}html.theme--documenter-dark .button.is-light.is-inverted:hover,html.theme--documenter-dark .button.is-light.is-inverted.is-hovered{background-color:#1d2122}html.theme--documenter-dark .button.is-light.is-inverted[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-light.is-inverted{background-color:#282f2f;border-color:transparent;box-shadow:none;color:#ecf0f1}html.theme--documenter-dark .button.is-light.is-loading::after{border-color:transparent transparent #282f2f #282f2f !important}html.theme--documenter-dark .button.is-light.is-outlined{background-color:transparent;border-color:#ecf0f1;color:#ecf0f1}html.theme--documenter-dark .button.is-light.is-outlined:hover,html.theme--documenter-dark .button.is-light.is-outlined.is-hovered,html.theme--documenter-dark .button.is-light.is-outlined:focus,html.theme--documenter-dark .button.is-light.is-outlined.is-focused{background-color:#ecf0f1;border-color:#ecf0f1;color:#282f2f}html.theme--documenter-dark .button.is-light.is-outlined.is-loading::after{border-color:transparent transparent #ecf0f1 #ecf0f1 !important}html.theme--documenter-dark .button.is-light.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-light.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-light.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-light.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #282f2f #282f2f !important}html.theme--documenter-dark .button.is-light.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-light.is-outlined{background-color:transparent;border-color:#ecf0f1;box-shadow:none;color:#ecf0f1}html.theme--documenter-dark .button.is-light.is-inverted.is-outlined{background-color:transparent;border-color:#282f2f;color:#282f2f}html.theme--documenter-dark .button.is-light.is-inverted.is-outlined:hover,html.theme--documenter-dark .button.is-light.is-inverted.is-outlined.is-hovered,html.theme--documenter-dark .button.is-light.is-inverted.is-outlined:focus,html.theme--documenter-dark .button.is-light.is-inverted.is-outlined.is-focused{background-color:#282f2f;color:#ecf0f1}html.theme--documenter-dark .button.is-light.is-inverted.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-light.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-light.is-inverted.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-light.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #ecf0f1 #ecf0f1 !important}html.theme--documenter-dark .button.is-light.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-light.is-inverted.is-outlined{background-color:transparent;border-color:#282f2f;box-shadow:none;color:#282f2f}html.theme--documenter-dark .button.is-dark,html.theme--documenter-dark .content kbd.button{background-color:#282f2f;border-color:transparent;color:#ecf0f1}html.theme--documenter-dark .button.is-dark:hover,html.theme--documenter-dark .content kbd.button:hover,html.theme--documenter-dark .button.is-dark.is-hovered,html.theme--documenter-dark .content kbd.button.is-hovered{background-color:#232829;border-color:transparent;color:#ecf0f1}html.theme--documenter-dark .button.is-dark:focus,html.theme--documenter-dark .content kbd.button:focus,html.theme--documenter-dark .button.is-dark.is-focused,html.theme--documenter-dark .content kbd.button.is-focused{border-color:transparent;color:#ecf0f1}html.theme--documenter-dark .button.is-dark:focus:not(:active),html.theme--documenter-dark .content kbd.button:focus:not(:active),html.theme--documenter-dark .button.is-dark.is-focused:not(:active),html.theme--documenter-dark .content kbd.button.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(40,47,47,0.25)}html.theme--documenter-dark .button.is-dark:active,html.theme--documenter-dark .content kbd.button:active,html.theme--documenter-dark .button.is-dark.is-active,html.theme--documenter-dark .content kbd.button.is-active{background-color:#1d2122;border-color:transparent;color:#ecf0f1}html.theme--documenter-dark .button.is-dark[disabled],html.theme--documenter-dark .content kbd.button[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-dark,fieldset[disabled] html.theme--documenter-dark .content kbd.button{background-color:#282f2f;border-color:transparent;box-shadow:none}html.theme--documenter-dark .button.is-dark.is-inverted,html.theme--documenter-dark .content kbd.button.is-inverted{background-color:#ecf0f1;color:#282f2f}html.theme--documenter-dark .button.is-dark.is-inverted:hover,html.theme--documenter-dark .content kbd.button.is-inverted:hover,html.theme--documenter-dark .button.is-dark.is-inverted.is-hovered,html.theme--documenter-dark .content kbd.button.is-inverted.is-hovered{background-color:#dde4e6}html.theme--documenter-dark .button.is-dark.is-inverted[disabled],html.theme--documenter-dark .content kbd.button.is-inverted[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-dark.is-inverted,fieldset[disabled] html.theme--documenter-dark .content kbd.button.is-inverted{background-color:#ecf0f1;border-color:transparent;box-shadow:none;color:#282f2f}html.theme--documenter-dark .button.is-dark.is-loading::after,html.theme--documenter-dark .content kbd.button.is-loading::after{border-color:transparent transparent #ecf0f1 #ecf0f1 !important}html.theme--documenter-dark .button.is-dark.is-outlined,html.theme--documenter-dark .content kbd.button.is-outlined{background-color:transparent;border-color:#282f2f;color:#282f2f}html.theme--documenter-dark .button.is-dark.is-outlined:hover,html.theme--documenter-dark .content kbd.button.is-outlined:hover,html.theme--documenter-dark .button.is-dark.is-outlined.is-hovered,html.theme--documenter-dark .content kbd.button.is-outlined.is-hovered,html.theme--documenter-dark .button.is-dark.is-outlined:focus,html.theme--documenter-dark .content kbd.button.is-outlined:focus,html.theme--documenter-dark .button.is-dark.is-outlined.is-focused,html.theme--documenter-dark .content kbd.button.is-outlined.is-focused{background-color:#282f2f;border-color:#282f2f;color:#ecf0f1}html.theme--documenter-dark .button.is-dark.is-outlined.is-loading::after,html.theme--documenter-dark .content kbd.button.is-outlined.is-loading::after{border-color:transparent transparent #282f2f #282f2f !important}html.theme--documenter-dark .button.is-dark.is-outlined.is-loading:hover::after,html.theme--documenter-dark .content kbd.button.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-dark.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .content kbd.button.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-dark.is-outlined.is-loading:focus::after,html.theme--documenter-dark .content kbd.button.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-dark.is-outlined.is-loading.is-focused::after,html.theme--documenter-dark .content kbd.button.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #ecf0f1 #ecf0f1 !important}html.theme--documenter-dark .button.is-dark.is-outlined[disabled],html.theme--documenter-dark .content kbd.button.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-dark.is-outlined,fieldset[disabled] html.theme--documenter-dark .content kbd.button.is-outlined{background-color:transparent;border-color:#282f2f;box-shadow:none;color:#282f2f}html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined,html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined{background-color:transparent;border-color:#ecf0f1;color:#ecf0f1}html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined:hover,html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined:hover,html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined.is-hovered,html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined.is-hovered,html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined:focus,html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined:focus,html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined.is-focused,html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined.is-focused{background-color:#ecf0f1;color:#282f2f}html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined.is-loading:hover::after,html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined.is-loading:focus::after,html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined.is-loading.is-focused::after,html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #282f2f #282f2f !important}html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined[disabled],html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined,fieldset[disabled] html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined{background-color:transparent;border-color:#ecf0f1;box-shadow:none;color:#ecf0f1}html.theme--documenter-dark .button.is-primary,html.theme--documenter-dark .docstring>section>a.button.docs-sourcelink{background-color:#375a7f;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-primary:hover,html.theme--documenter-dark .docstring>section>a.button.docs-sourcelink:hover,html.theme--documenter-dark .button.is-primary.is-hovered,html.theme--documenter-dark .docstring>section>a.button.is-hovered.docs-sourcelink{background-color:#335476;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-primary:focus,html.theme--documenter-dark .docstring>section>a.button.docs-sourcelink:focus,html.theme--documenter-dark .button.is-primary.is-focused,html.theme--documenter-dark .docstring>section>a.button.is-focused.docs-sourcelink{border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-primary:focus:not(:active),html.theme--documenter-dark .docstring>section>a.button.docs-sourcelink:focus:not(:active),html.theme--documenter-dark .button.is-primary.is-focused:not(:active),html.theme--documenter-dark .docstring>section>a.button.is-focused.docs-sourcelink:not(:active){box-shadow:0 0 0 0.125em rgba(55,90,127,0.25)}html.theme--documenter-dark .button.is-primary:active,html.theme--documenter-dark .docstring>section>a.button.docs-sourcelink:active,html.theme--documenter-dark .button.is-primary.is-active,html.theme--documenter-dark .docstring>section>a.button.is-active.docs-sourcelink{background-color:#2f4d6d;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-primary[disabled],html.theme--documenter-dark .docstring>section>a.button.docs-sourcelink[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-primary,fieldset[disabled] html.theme--documenter-dark .docstring>section>a.button.docs-sourcelink{background-color:#375a7f;border-color:transparent;box-shadow:none}html.theme--documenter-dark .button.is-primary.is-inverted,html.theme--documenter-dark .docstring>section>a.button.is-inverted.docs-sourcelink{background-color:#fff;color:#375a7f}html.theme--documenter-dark .button.is-primary.is-inverted:hover,html.theme--documenter-dark .docstring>section>a.button.is-inverted.docs-sourcelink:hover,html.theme--documenter-dark .button.is-primary.is-inverted.is-hovered,html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-hovered.docs-sourcelink{background-color:#f2f2f2}html.theme--documenter-dark .button.is-primary.is-inverted[disabled],html.theme--documenter-dark .docstring>section>a.button.is-inverted.docs-sourcelink[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-primary.is-inverted,fieldset[disabled] html.theme--documenter-dark .docstring>section>a.button.is-inverted.docs-sourcelink{background-color:#fff;border-color:transparent;box-shadow:none;color:#375a7f}html.theme--documenter-dark .button.is-primary.is-loading::after,html.theme--documenter-dark .docstring>section>a.button.is-loading.docs-sourcelink::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-primary.is-outlined,html.theme--documenter-dark .docstring>section>a.button.is-outlined.docs-sourcelink{background-color:transparent;border-color:#375a7f;color:#375a7f}html.theme--documenter-dark .button.is-primary.is-outlined:hover,html.theme--documenter-dark .docstring>section>a.button.is-outlined.docs-sourcelink:hover,html.theme--documenter-dark .button.is-primary.is-outlined.is-hovered,html.theme--documenter-dark .docstring>section>a.button.is-outlined.is-hovered.docs-sourcelink,html.theme--documenter-dark .button.is-primary.is-outlined:focus,html.theme--documenter-dark .docstring>section>a.button.is-outlined.docs-sourcelink:focus,html.theme--documenter-dark .button.is-primary.is-outlined.is-focused,html.theme--documenter-dark .docstring>section>a.button.is-outlined.is-focused.docs-sourcelink{background-color:#375a7f;border-color:#375a7f;color:#fff}html.theme--documenter-dark .button.is-primary.is-outlined.is-loading::after,html.theme--documenter-dark .docstring>section>a.button.is-outlined.is-loading.docs-sourcelink::after{border-color:transparent transparent #375a7f #375a7f !important}html.theme--documenter-dark .button.is-primary.is-outlined.is-loading:hover::after,html.theme--documenter-dark .docstring>section>a.button.is-outlined.is-loading.docs-sourcelink:hover::after,html.theme--documenter-dark .button.is-primary.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .docstring>section>a.button.is-outlined.is-loading.is-hovered.docs-sourcelink::after,html.theme--documenter-dark .button.is-primary.is-outlined.is-loading:focus::after,html.theme--documenter-dark .docstring>section>a.button.is-outlined.is-loading.docs-sourcelink:focus::after,html.theme--documenter-dark .button.is-primary.is-outlined.is-loading.is-focused::after,html.theme--documenter-dark .docstring>section>a.button.is-outlined.is-loading.is-focused.docs-sourcelink::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-primary.is-outlined[disabled],html.theme--documenter-dark .docstring>section>a.button.is-outlined.docs-sourcelink[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-primary.is-outlined,fieldset[disabled] html.theme--documenter-dark .docstring>section>a.button.is-outlined.docs-sourcelink{background-color:transparent;border-color:#375a7f;box-shadow:none;color:#375a7f}html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined,html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink{background-color:transparent;border-color:#fff;color:#fff}html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined:hover,html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink:hover,html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined.is-hovered,html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-outlined.is-hovered.docs-sourcelink,html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined:focus,html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink:focus,html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined.is-focused,html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-outlined.is-focused.docs-sourcelink{background-color:#fff;color:#375a7f}html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined.is-loading:hover::after,html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-outlined.is-loading.docs-sourcelink:hover::after,html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-outlined.is-loading.is-hovered.docs-sourcelink::after,html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined.is-loading:focus::after,html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-outlined.is-loading.docs-sourcelink:focus::after,html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined.is-loading.is-focused::after,html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-outlined.is-loading.is-focused.docs-sourcelink::after{border-color:transparent transparent #375a7f #375a7f !important}html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined[disabled],html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined,fieldset[disabled] html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--documenter-dark .button.is-link{background-color:#1abc9c;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-link:hover,html.theme--documenter-dark .button.is-link.is-hovered{background-color:#18b193;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-link:focus,html.theme--documenter-dark .button.is-link.is-focused{border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-link:focus:not(:active),html.theme--documenter-dark .button.is-link.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(26,188,156,0.25)}html.theme--documenter-dark .button.is-link:active,html.theme--documenter-dark .button.is-link.is-active{background-color:#17a689;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-link[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-link{background-color:#1abc9c;border-color:transparent;box-shadow:none}html.theme--documenter-dark .button.is-link.is-inverted{background-color:#fff;color:#1abc9c}html.theme--documenter-dark .button.is-link.is-inverted:hover,html.theme--documenter-dark .button.is-link.is-inverted.is-hovered{background-color:#f2f2f2}html.theme--documenter-dark .button.is-link.is-inverted[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-link.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#1abc9c}html.theme--documenter-dark .button.is-link.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-link.is-outlined{background-color:transparent;border-color:#1abc9c;color:#1abc9c}html.theme--documenter-dark .button.is-link.is-outlined:hover,html.theme--documenter-dark .button.is-link.is-outlined.is-hovered,html.theme--documenter-dark .button.is-link.is-outlined:focus,html.theme--documenter-dark .button.is-link.is-outlined.is-focused{background-color:#1abc9c;border-color:#1abc9c;color:#fff}html.theme--documenter-dark .button.is-link.is-outlined.is-loading::after{border-color:transparent transparent #1abc9c #1abc9c !important}html.theme--documenter-dark .button.is-link.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-link.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-link.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-link.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-link.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-link.is-outlined{background-color:transparent;border-color:#1abc9c;box-shadow:none;color:#1abc9c}html.theme--documenter-dark .button.is-link.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--documenter-dark .button.is-link.is-inverted.is-outlined:hover,html.theme--documenter-dark .button.is-link.is-inverted.is-outlined.is-hovered,html.theme--documenter-dark .button.is-link.is-inverted.is-outlined:focus,html.theme--documenter-dark .button.is-link.is-inverted.is-outlined.is-focused{background-color:#fff;color:#1abc9c}html.theme--documenter-dark .button.is-link.is-inverted.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-link.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-link.is-inverted.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-link.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #1abc9c #1abc9c !important}html.theme--documenter-dark .button.is-link.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-link.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--documenter-dark .button.is-info{background-color:#024c7d;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-info:hover,html.theme--documenter-dark .button.is-info.is-hovered{background-color:#024470;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-info:focus,html.theme--documenter-dark .button.is-info.is-focused{border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-info:focus:not(:active),html.theme--documenter-dark .button.is-info.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(2,76,125,0.25)}html.theme--documenter-dark .button.is-info:active,html.theme--documenter-dark .button.is-info.is-active{background-color:#023d64;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-info[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-info{background-color:#024c7d;border-color:transparent;box-shadow:none}html.theme--documenter-dark .button.is-info.is-inverted{background-color:#fff;color:#024c7d}html.theme--documenter-dark .button.is-info.is-inverted:hover,html.theme--documenter-dark .button.is-info.is-inverted.is-hovered{background-color:#f2f2f2}html.theme--documenter-dark .button.is-info.is-inverted[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-info.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#024c7d}html.theme--documenter-dark .button.is-info.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-info.is-outlined{background-color:transparent;border-color:#024c7d;color:#024c7d}html.theme--documenter-dark .button.is-info.is-outlined:hover,html.theme--documenter-dark .button.is-info.is-outlined.is-hovered,html.theme--documenter-dark .button.is-info.is-outlined:focus,html.theme--documenter-dark .button.is-info.is-outlined.is-focused{background-color:#024c7d;border-color:#024c7d;color:#fff}html.theme--documenter-dark .button.is-info.is-outlined.is-loading::after{border-color:transparent transparent #024c7d #024c7d !important}html.theme--documenter-dark .button.is-info.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-info.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-info.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-info.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-info.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-info.is-outlined{background-color:transparent;border-color:#024c7d;box-shadow:none;color:#024c7d}html.theme--documenter-dark .button.is-info.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--documenter-dark .button.is-info.is-inverted.is-outlined:hover,html.theme--documenter-dark .button.is-info.is-inverted.is-outlined.is-hovered,html.theme--documenter-dark .button.is-info.is-inverted.is-outlined:focus,html.theme--documenter-dark .button.is-info.is-inverted.is-outlined.is-focused{background-color:#fff;color:#024c7d}html.theme--documenter-dark .button.is-info.is-inverted.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-info.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-info.is-inverted.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-info.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #024c7d #024c7d !important}html.theme--documenter-dark .button.is-info.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-info.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--documenter-dark .button.is-success{background-color:#008438;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-success:hover,html.theme--documenter-dark .button.is-success.is-hovered{background-color:#073;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-success:focus,html.theme--documenter-dark .button.is-success.is-focused{border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-success:focus:not(:active),html.theme--documenter-dark .button.is-success.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(0,132,56,0.25)}html.theme--documenter-dark .button.is-success:active,html.theme--documenter-dark .button.is-success.is-active{background-color:#006b2d;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-success[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-success{background-color:#008438;border-color:transparent;box-shadow:none}html.theme--documenter-dark .button.is-success.is-inverted{background-color:#fff;color:#008438}html.theme--documenter-dark .button.is-success.is-inverted:hover,html.theme--documenter-dark .button.is-success.is-inverted.is-hovered{background-color:#f2f2f2}html.theme--documenter-dark .button.is-success.is-inverted[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-success.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#008438}html.theme--documenter-dark .button.is-success.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-success.is-outlined{background-color:transparent;border-color:#008438;color:#008438}html.theme--documenter-dark .button.is-success.is-outlined:hover,html.theme--documenter-dark .button.is-success.is-outlined.is-hovered,html.theme--documenter-dark .button.is-success.is-outlined:focus,html.theme--documenter-dark .button.is-success.is-outlined.is-focused{background-color:#008438;border-color:#008438;color:#fff}html.theme--documenter-dark .button.is-success.is-outlined.is-loading::after{border-color:transparent transparent #008438 #008438 !important}html.theme--documenter-dark .button.is-success.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-success.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-success.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-success.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-success.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-success.is-outlined{background-color:transparent;border-color:#008438;box-shadow:none;color:#008438}html.theme--documenter-dark .button.is-success.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--documenter-dark .button.is-success.is-inverted.is-outlined:hover,html.theme--documenter-dark .button.is-success.is-inverted.is-outlined.is-hovered,html.theme--documenter-dark .button.is-success.is-inverted.is-outlined:focus,html.theme--documenter-dark .button.is-success.is-inverted.is-outlined.is-focused{background-color:#fff;color:#008438}html.theme--documenter-dark .button.is-success.is-inverted.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-success.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-success.is-inverted.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-success.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #008438 #008438 !important}html.theme--documenter-dark .button.is-success.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-success.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--documenter-dark .button.is-warning{background-color:#ad8100;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-warning:hover,html.theme--documenter-dark .button.is-warning.is-hovered{background-color:#a07700;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-warning:focus,html.theme--documenter-dark .button.is-warning.is-focused{border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-warning:focus:not(:active),html.theme--documenter-dark .button.is-warning.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(173,129,0,0.25)}html.theme--documenter-dark .button.is-warning:active,html.theme--documenter-dark .button.is-warning.is-active{background-color:#946e00;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-warning[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-warning{background-color:#ad8100;border-color:transparent;box-shadow:none}html.theme--documenter-dark .button.is-warning.is-inverted{background-color:#fff;color:#ad8100}html.theme--documenter-dark .button.is-warning.is-inverted:hover,html.theme--documenter-dark .button.is-warning.is-inverted.is-hovered{background-color:#f2f2f2}html.theme--documenter-dark .button.is-warning.is-inverted[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-warning.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#ad8100}html.theme--documenter-dark .button.is-warning.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-warning.is-outlined{background-color:transparent;border-color:#ad8100;color:#ad8100}html.theme--documenter-dark .button.is-warning.is-outlined:hover,html.theme--documenter-dark .button.is-warning.is-outlined.is-hovered,html.theme--documenter-dark .button.is-warning.is-outlined:focus,html.theme--documenter-dark .button.is-warning.is-outlined.is-focused{background-color:#ad8100;border-color:#ad8100;color:#fff}html.theme--documenter-dark .button.is-warning.is-outlined.is-loading::after{border-color:transparent transparent #ad8100 #ad8100 !important}html.theme--documenter-dark .button.is-warning.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-warning.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-warning.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-warning.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-warning.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-warning.is-outlined{background-color:transparent;border-color:#ad8100;box-shadow:none;color:#ad8100}html.theme--documenter-dark .button.is-warning.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--documenter-dark .button.is-warning.is-inverted.is-outlined:hover,html.theme--documenter-dark .button.is-warning.is-inverted.is-outlined.is-hovered,html.theme--documenter-dark .button.is-warning.is-inverted.is-outlined:focus,html.theme--documenter-dark .button.is-warning.is-inverted.is-outlined.is-focused{background-color:#fff;color:#ad8100}html.theme--documenter-dark .button.is-warning.is-inverted.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-warning.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-warning.is-inverted.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-warning.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #ad8100 #ad8100 !important}html.theme--documenter-dark .button.is-warning.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-warning.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--documenter-dark .button.is-danger{background-color:#9e1b0d;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-danger:hover,html.theme--documenter-dark .button.is-danger.is-hovered{background-color:#92190c;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-danger:focus,html.theme--documenter-dark .button.is-danger.is-focused{border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-danger:focus:not(:active),html.theme--documenter-dark .button.is-danger.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(158,27,13,0.25)}html.theme--documenter-dark .button.is-danger:active,html.theme--documenter-dark .button.is-danger.is-active{background-color:#86170b;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-danger[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-danger{background-color:#9e1b0d;border-color:transparent;box-shadow:none}html.theme--documenter-dark .button.is-danger.is-inverted{background-color:#fff;color:#9e1b0d}html.theme--documenter-dark .button.is-danger.is-inverted:hover,html.theme--documenter-dark .button.is-danger.is-inverted.is-hovered{background-color:#f2f2f2}html.theme--documenter-dark .button.is-danger.is-inverted[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-danger.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#9e1b0d}html.theme--documenter-dark .button.is-danger.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-danger.is-outlined{background-color:transparent;border-color:#9e1b0d;color:#9e1b0d}html.theme--documenter-dark .button.is-danger.is-outlined:hover,html.theme--documenter-dark .button.is-danger.is-outlined.is-hovered,html.theme--documenter-dark .button.is-danger.is-outlined:focus,html.theme--documenter-dark .button.is-danger.is-outlined.is-focused{background-color:#9e1b0d;border-color:#9e1b0d;color:#fff}html.theme--documenter-dark .button.is-danger.is-outlined.is-loading::after{border-color:transparent transparent #9e1b0d #9e1b0d !important}html.theme--documenter-dark .button.is-danger.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-danger.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-danger.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-danger.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-danger.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-danger.is-outlined{background-color:transparent;border-color:#9e1b0d;box-shadow:none;color:#9e1b0d}html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined:hover,html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined.is-hovered,html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined:focus,html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined.is-focused{background-color:#fff;color:#9e1b0d}html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #9e1b0d #9e1b0d !important}html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--documenter-dark .button.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.button{border-radius:3px;font-size:.85em}html.theme--documenter-dark .button.is-normal{font-size:15px}html.theme--documenter-dark .button.is-medium{font-size:1.25rem}html.theme--documenter-dark .button.is-large{font-size:1.5rem}html.theme--documenter-dark .button[disabled],fieldset[disabled] html.theme--documenter-dark .button{background-color:#8c9b9d;border-color:#dbdee0;box-shadow:none;opacity:.5}html.theme--documenter-dark .button.is-fullwidth{display:flex;width:100%}html.theme--documenter-dark .button.is-loading{color:transparent !important;pointer-events:none}html.theme--documenter-dark .button.is-loading::after{position:absolute;left:calc(50% - (1em / 2));top:calc(50% - (1em / 2));position:absolute !important}html.theme--documenter-dark .button.is-static{background-color:#282f2f;border-color:#5e6d6f;color:#dbdee0;box-shadow:none;pointer-events:none}html.theme--documenter-dark .button.is-rounded,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.button{border-radius:290486px;padding-left:1em;padding-right:1em}html.theme--documenter-dark .buttons{align-items:center;display:flex;flex-wrap:wrap;justify-content:flex-start}html.theme--documenter-dark .buttons .button{margin-bottom:0.5rem}html.theme--documenter-dark .buttons .button:not(:last-child):not(.is-fullwidth){margin-right:0.5rem}html.theme--documenter-dark .buttons:last-child{margin-bottom:-0.5rem}html.theme--documenter-dark .buttons:not(:last-child){margin-bottom:1rem}html.theme--documenter-dark .buttons.are-small .button:not(.is-normal):not(.is-medium):not(.is-large){border-radius:3px;font-size:.85em}html.theme--documenter-dark .buttons.are-medium .button:not(.is-small):not(.is-normal):not(.is-large){font-size:1.25rem}html.theme--documenter-dark .buttons.are-large .button:not(.is-small):not(.is-normal):not(.is-medium){font-size:1.5rem}html.theme--documenter-dark .buttons.has-addons .button:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}html.theme--documenter-dark .buttons.has-addons .button:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0;margin-right:-1px}html.theme--documenter-dark .buttons.has-addons .button:last-child{margin-right:0}html.theme--documenter-dark .buttons.has-addons .button:hover,html.theme--documenter-dark .buttons.has-addons .button.is-hovered{z-index:2}html.theme--documenter-dark .buttons.has-addons .button:focus,html.theme--documenter-dark .buttons.has-addons .button.is-focused,html.theme--documenter-dark .buttons.has-addons .button:active,html.theme--documenter-dark .buttons.has-addons .button.is-active,html.theme--documenter-dark .buttons.has-addons .button.is-selected{z-index:3}html.theme--documenter-dark .buttons.has-addons .button:focus:hover,html.theme--documenter-dark .buttons.has-addons .button.is-focused:hover,html.theme--documenter-dark .buttons.has-addons .button:active:hover,html.theme--documenter-dark .buttons.has-addons .button.is-active:hover,html.theme--documenter-dark .buttons.has-addons .button.is-selected:hover{z-index:4}html.theme--documenter-dark .buttons.has-addons .button.is-expanded{flex-grow:1;flex-shrink:1}html.theme--documenter-dark .buttons.is-centered{justify-content:center}html.theme--documenter-dark .buttons.is-centered:not(.has-addons) .button:not(.is-fullwidth){margin-left:0.25rem;margin-right:0.25rem}html.theme--documenter-dark .buttons.is-right{justify-content:flex-end}html.theme--documenter-dark .buttons.is-right:not(.has-addons) .button:not(.is-fullwidth){margin-left:0.25rem;margin-right:0.25rem}html.theme--documenter-dark .container{flex-grow:1;margin:0 auto;position:relative;width:auto}@media screen and (min-width: 1056px){html.theme--documenter-dark .container{max-width:992px}html.theme--documenter-dark .container.is-fluid{margin-left:32px;margin-right:32px;max-width:none}}@media screen and (max-width: 1215px){html.theme--documenter-dark .container.is-widescreen{max-width:1152px}}@media screen and (max-width: 1407px){html.theme--documenter-dark .container.is-fullhd{max-width:1344px}}@media screen and (min-width: 1216px){html.theme--documenter-dark .container{max-width:1152px}}@media screen and (min-width: 1408px){html.theme--documenter-dark .container{max-width:1344px}}html.theme--documenter-dark .content li+li{margin-top:0.25em}html.theme--documenter-dark .content p:not(:last-child),html.theme--documenter-dark .content dl:not(:last-child),html.theme--documenter-dark .content ol:not(:last-child),html.theme--documenter-dark .content ul:not(:last-child),html.theme--documenter-dark .content blockquote:not(:last-child),html.theme--documenter-dark .content pre:not(:last-child),html.theme--documenter-dark .content table:not(:last-child){margin-bottom:1em}html.theme--documenter-dark .content h1,html.theme--documenter-dark .content h2,html.theme--documenter-dark .content h3,html.theme--documenter-dark .content h4,html.theme--documenter-dark .content h5,html.theme--documenter-dark .content h6{color:#f2f2f2;font-weight:600;line-height:1.125}html.theme--documenter-dark .content h1{font-size:2em;margin-bottom:0.5em}html.theme--documenter-dark .content h1:not(:first-child){margin-top:1em}html.theme--documenter-dark .content h2{font-size:1.75em;margin-bottom:0.5714em}html.theme--documenter-dark .content h2:not(:first-child){margin-top:1.1428em}html.theme--documenter-dark .content h3{font-size:1.5em;margin-bottom:0.6666em}html.theme--documenter-dark .content h3:not(:first-child){margin-top:1.3333em}html.theme--documenter-dark .content h4{font-size:1.25em;margin-bottom:0.8em}html.theme--documenter-dark .content h5{font-size:1.125em;margin-bottom:0.8888em}html.theme--documenter-dark .content h6{font-size:1em;margin-bottom:1em}html.theme--documenter-dark .content blockquote{background-color:#282f2f;border-left:5px solid #5e6d6f;padding:1.25em 1.5em}html.theme--documenter-dark .content ol{list-style-position:outside;margin-left:2em;margin-top:1em}html.theme--documenter-dark .content ol:not([type]){list-style-type:decimal}html.theme--documenter-dark .content ol.is-lower-alpha:not([type]){list-style-type:lower-alpha}html.theme--documenter-dark .content ol.is-lower-roman:not([type]){list-style-type:lower-roman}html.theme--documenter-dark .content ol.is-upper-alpha:not([type]){list-style-type:upper-alpha}html.theme--documenter-dark .content ol.is-upper-roman:not([type]){list-style-type:upper-roman}html.theme--documenter-dark .content ul{list-style:disc outside;margin-left:2em;margin-top:1em}html.theme--documenter-dark .content ul ul{list-style-type:circle;margin-top:0.5em}html.theme--documenter-dark .content ul ul ul{list-style-type:square}html.theme--documenter-dark .content dd{margin-left:2em}html.theme--documenter-dark .content figure{margin-left:2em;margin-right:2em;text-align:center}html.theme--documenter-dark .content figure:not(:first-child){margin-top:2em}html.theme--documenter-dark .content figure:not(:last-child){margin-bottom:2em}html.theme--documenter-dark .content figure img{display:inline-block}html.theme--documenter-dark .content figure figcaption{font-style:italic}html.theme--documenter-dark .content pre{-webkit-overflow-scrolling:touch;overflow-x:auto;padding:0;white-space:pre;word-wrap:normal}html.theme--documenter-dark .content sup,html.theme--documenter-dark .content sub{font-size:75%}html.theme--documenter-dark .content table{width:100%}html.theme--documenter-dark .content table td,html.theme--documenter-dark .content table th{border:1px solid #5e6d6f;border-width:0 0 1px;padding:0.5em 0.75em;vertical-align:top}html.theme--documenter-dark .content table th{color:#f2f2f2}html.theme--documenter-dark .content table th:not([align]){text-align:left}html.theme--documenter-dark .content table thead td,html.theme--documenter-dark .content table thead th{border-width:0 0 2px;color:#f2f2f2}html.theme--documenter-dark .content table tfoot td,html.theme--documenter-dark .content table tfoot th{border-width:2px 0 0;color:#f2f2f2}html.theme--documenter-dark .content table tbody tr:last-child td,html.theme--documenter-dark .content table tbody tr:last-child th{border-bottom-width:0}html.theme--documenter-dark .content .tabs li+li{margin-top:0}html.theme--documenter-dark .content.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.content{font-size:.85em}html.theme--documenter-dark .content.is-medium{font-size:1.25rem}html.theme--documenter-dark .content.is-large{font-size:1.5rem}html.theme--documenter-dark .icon{align-items:center;display:inline-flex;justify-content:center;height:1.5rem;width:1.5rem}html.theme--documenter-dark .icon.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.icon{height:1rem;width:1rem}html.theme--documenter-dark .icon.is-medium{height:2rem;width:2rem}html.theme--documenter-dark .icon.is-large{height:3rem;width:3rem}html.theme--documenter-dark .image,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img{display:block;position:relative}html.theme--documenter-dark .image img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img img{display:block;height:auto;width:100%}html.theme--documenter-dark .image img.is-rounded,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img img.is-rounded{border-radius:290486px}html.theme--documenter-dark .image.is-square img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-square img,html.theme--documenter-dark .image.is-square .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-square .has-ratio,html.theme--documenter-dark .image.is-1by1 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by1 img,html.theme--documenter-dark .image.is-1by1 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by1 .has-ratio,html.theme--documenter-dark .image.is-5by4 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-5by4 img,html.theme--documenter-dark .image.is-5by4 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-5by4 .has-ratio,html.theme--documenter-dark .image.is-4by3 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-4by3 img,html.theme--documenter-dark .image.is-4by3 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-4by3 .has-ratio,html.theme--documenter-dark .image.is-3by2 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by2 img,html.theme--documenter-dark .image.is-3by2 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by2 .has-ratio,html.theme--documenter-dark .image.is-5by3 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-5by3 img,html.theme--documenter-dark .image.is-5by3 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-5by3 .has-ratio,html.theme--documenter-dark .image.is-16by9 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-16by9 img,html.theme--documenter-dark .image.is-16by9 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-16by9 .has-ratio,html.theme--documenter-dark .image.is-2by1 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-2by1 img,html.theme--documenter-dark .image.is-2by1 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-2by1 .has-ratio,html.theme--documenter-dark .image.is-3by1 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by1 img,html.theme--documenter-dark .image.is-3by1 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by1 .has-ratio,html.theme--documenter-dark .image.is-4by5 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-4by5 img,html.theme--documenter-dark .image.is-4by5 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-4by5 .has-ratio,html.theme--documenter-dark .image.is-3by4 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by4 img,html.theme--documenter-dark .image.is-3by4 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by4 .has-ratio,html.theme--documenter-dark .image.is-2by3 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-2by3 img,html.theme--documenter-dark .image.is-2by3 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-2by3 .has-ratio,html.theme--documenter-dark .image.is-3by5 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by5 img,html.theme--documenter-dark .image.is-3by5 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by5 .has-ratio,html.theme--documenter-dark .image.is-9by16 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-9by16 img,html.theme--documenter-dark .image.is-9by16 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-9by16 .has-ratio,html.theme--documenter-dark .image.is-1by2 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by2 img,html.theme--documenter-dark .image.is-1by2 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by2 .has-ratio,html.theme--documenter-dark .image.is-1by3 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by3 img,html.theme--documenter-dark .image.is-1by3 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by3 .has-ratio{height:100%;width:100%}html.theme--documenter-dark .image.is-square,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-square,html.theme--documenter-dark .image.is-1by1,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by1{padding-top:100%}html.theme--documenter-dark .image.is-5by4,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-5by4{padding-top:80%}html.theme--documenter-dark .image.is-4by3,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-4by3{padding-top:75%}html.theme--documenter-dark .image.is-3by2,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by2{padding-top:66.6666%}html.theme--documenter-dark .image.is-5by3,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-5by3{padding-top:60%}html.theme--documenter-dark .image.is-16by9,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-16by9{padding-top:56.25%}html.theme--documenter-dark .image.is-2by1,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-2by1{padding-top:50%}html.theme--documenter-dark .image.is-3by1,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by1{padding-top:33.3333%}html.theme--documenter-dark .image.is-4by5,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-4by5{padding-top:125%}html.theme--documenter-dark .image.is-3by4,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by4{padding-top:133.3333%}html.theme--documenter-dark .image.is-2by3,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-2by3{padding-top:150%}html.theme--documenter-dark .image.is-3by5,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by5{padding-top:166.6666%}html.theme--documenter-dark .image.is-9by16,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-9by16{padding-top:177.7777%}html.theme--documenter-dark .image.is-1by2,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by2{padding-top:200%}html.theme--documenter-dark .image.is-1by3,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by3{padding-top:300%}html.theme--documenter-dark .image.is-16x16,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-16x16{height:16px;width:16px}html.theme--documenter-dark .image.is-24x24,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-24x24{height:24px;width:24px}html.theme--documenter-dark .image.is-32x32,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-32x32{height:32px;width:32px}html.theme--documenter-dark .image.is-48x48,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-48x48{height:48px;width:48px}html.theme--documenter-dark .image.is-64x64,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-64x64{height:64px;width:64px}html.theme--documenter-dark .image.is-96x96,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-96x96{height:96px;width:96px}html.theme--documenter-dark .image.is-128x128,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-128x128{height:128px;width:128px}html.theme--documenter-dark .notification{background-color:#282f2f;border-radius:.4em;padding:1.25rem 2.5rem 1.25rem 1.5rem;position:relative}html.theme--documenter-dark .notification a:not(.button):not(.dropdown-item){color:currentColor;text-decoration:underline}html.theme--documenter-dark .notification strong{color:currentColor}html.theme--documenter-dark .notification code,html.theme--documenter-dark .notification pre{background:#fff}html.theme--documenter-dark .notification pre code{background:transparent}html.theme--documenter-dark .notification>.delete{position:absolute;right:0.5rem;top:0.5rem}html.theme--documenter-dark .notification .title,html.theme--documenter-dark .notification .subtitle,html.theme--documenter-dark .notification .content{color:currentColor}html.theme--documenter-dark .notification.is-white{background-color:#fff;color:#0a0a0a}html.theme--documenter-dark .notification.is-black{background-color:#0a0a0a;color:#fff}html.theme--documenter-dark .notification.is-light{background-color:#ecf0f1;color:#282f2f}html.theme--documenter-dark .notification.is-dark,html.theme--documenter-dark .content kbd.notification{background-color:#282f2f;color:#ecf0f1}html.theme--documenter-dark .notification.is-primary,html.theme--documenter-dark .docstring>section>a.notification.docs-sourcelink{background-color:#375a7f;color:#fff}html.theme--documenter-dark .notification.is-link{background-color:#1abc9c;color:#fff}html.theme--documenter-dark .notification.is-info{background-color:#024c7d;color:#fff}html.theme--documenter-dark .notification.is-success{background-color:#008438;color:#fff}html.theme--documenter-dark .notification.is-warning{background-color:#ad8100;color:#fff}html.theme--documenter-dark .notification.is-danger{background-color:#9e1b0d;color:#fff}html.theme--documenter-dark .progress{-moz-appearance:none;-webkit-appearance:none;border:none;border-radius:290486px;display:block;height:15px;overflow:hidden;padding:0;width:100%}html.theme--documenter-dark .progress::-webkit-progress-bar{background-color:#5e6d6f}html.theme--documenter-dark .progress::-webkit-progress-value{background-color:#dbdee0}html.theme--documenter-dark .progress::-moz-progress-bar{background-color:#dbdee0}html.theme--documenter-dark .progress::-ms-fill{background-color:#dbdee0;border:none}html.theme--documenter-dark .progress.is-white::-webkit-progress-value{background-color:#fff}html.theme--documenter-dark .progress.is-white::-moz-progress-bar{background-color:#fff}html.theme--documenter-dark .progress.is-white::-ms-fill{background-color:#fff}html.theme--documenter-dark .progress.is-white:indeterminate{background-image:linear-gradient(to right, #fff 30%, #5e6d6f 30%)}html.theme--documenter-dark .progress.is-black::-webkit-progress-value{background-color:#0a0a0a}html.theme--documenter-dark .progress.is-black::-moz-progress-bar{background-color:#0a0a0a}html.theme--documenter-dark .progress.is-black::-ms-fill{background-color:#0a0a0a}html.theme--documenter-dark .progress.is-black:indeterminate{background-image:linear-gradient(to right, #0a0a0a 30%, #5e6d6f 30%)}html.theme--documenter-dark .progress.is-light::-webkit-progress-value{background-color:#ecf0f1}html.theme--documenter-dark .progress.is-light::-moz-progress-bar{background-color:#ecf0f1}html.theme--documenter-dark .progress.is-light::-ms-fill{background-color:#ecf0f1}html.theme--documenter-dark .progress.is-light:indeterminate{background-image:linear-gradient(to right, #ecf0f1 30%, #5e6d6f 30%)}html.theme--documenter-dark .progress.is-dark::-webkit-progress-value,html.theme--documenter-dark .content kbd.progress::-webkit-progress-value{background-color:#282f2f}html.theme--documenter-dark .progress.is-dark::-moz-progress-bar,html.theme--documenter-dark .content kbd.progress::-moz-progress-bar{background-color:#282f2f}html.theme--documenter-dark .progress.is-dark::-ms-fill,html.theme--documenter-dark .content kbd.progress::-ms-fill{background-color:#282f2f}html.theme--documenter-dark .progress.is-dark:indeterminate,html.theme--documenter-dark .content kbd.progress:indeterminate{background-image:linear-gradient(to right, #282f2f 30%, #5e6d6f 30%)}html.theme--documenter-dark .progress.is-primary::-webkit-progress-value,html.theme--documenter-dark .docstring>section>a.progress.docs-sourcelink::-webkit-progress-value{background-color:#375a7f}html.theme--documenter-dark .progress.is-primary::-moz-progress-bar,html.theme--documenter-dark .docstring>section>a.progress.docs-sourcelink::-moz-progress-bar{background-color:#375a7f}html.theme--documenter-dark .progress.is-primary::-ms-fill,html.theme--documenter-dark .docstring>section>a.progress.docs-sourcelink::-ms-fill{background-color:#375a7f}html.theme--documenter-dark .progress.is-primary:indeterminate,html.theme--documenter-dark .docstring>section>a.progress.docs-sourcelink:indeterminate{background-image:linear-gradient(to right, #375a7f 30%, #5e6d6f 30%)}html.theme--documenter-dark .progress.is-link::-webkit-progress-value{background-color:#1abc9c}html.theme--documenter-dark .progress.is-link::-moz-progress-bar{background-color:#1abc9c}html.theme--documenter-dark .progress.is-link::-ms-fill{background-color:#1abc9c}html.theme--documenter-dark .progress.is-link:indeterminate{background-image:linear-gradient(to right, #1abc9c 30%, #5e6d6f 30%)}html.theme--documenter-dark .progress.is-info::-webkit-progress-value{background-color:#024c7d}html.theme--documenter-dark .progress.is-info::-moz-progress-bar{background-color:#024c7d}html.theme--documenter-dark .progress.is-info::-ms-fill{background-color:#024c7d}html.theme--documenter-dark .progress.is-info:indeterminate{background-image:linear-gradient(to right, #024c7d 30%, #5e6d6f 30%)}html.theme--documenter-dark .progress.is-success::-webkit-progress-value{background-color:#008438}html.theme--documenter-dark .progress.is-success::-moz-progress-bar{background-color:#008438}html.theme--documenter-dark .progress.is-success::-ms-fill{background-color:#008438}html.theme--documenter-dark .progress.is-success:indeterminate{background-image:linear-gradient(to right, #008438 30%, #5e6d6f 30%)}html.theme--documenter-dark .progress.is-warning::-webkit-progress-value{background-color:#ad8100}html.theme--documenter-dark .progress.is-warning::-moz-progress-bar{background-color:#ad8100}html.theme--documenter-dark .progress.is-warning::-ms-fill{background-color:#ad8100}html.theme--documenter-dark .progress.is-warning:indeterminate{background-image:linear-gradient(to right, #ad8100 30%, #5e6d6f 30%)}html.theme--documenter-dark .progress.is-danger::-webkit-progress-value{background-color:#9e1b0d}html.theme--documenter-dark .progress.is-danger::-moz-progress-bar{background-color:#9e1b0d}html.theme--documenter-dark .progress.is-danger::-ms-fill{background-color:#9e1b0d}html.theme--documenter-dark .progress.is-danger:indeterminate{background-image:linear-gradient(to right, #9e1b0d 30%, #5e6d6f 30%)}html.theme--documenter-dark .progress:indeterminate{animation-duration:1.5s;animation-iteration-count:infinite;animation-name:moveIndeterminate;animation-timing-function:linear;background-color:#5e6d6f;background-image:linear-gradient(to right, #fff 30%, #5e6d6f 30%);background-position:top left;background-repeat:no-repeat;background-size:150% 150%}html.theme--documenter-dark .progress:indeterminate::-webkit-progress-bar{background-color:transparent}html.theme--documenter-dark .progress:indeterminate::-moz-progress-bar{background-color:transparent}html.theme--documenter-dark .progress.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.progress{height:.85em}html.theme--documenter-dark .progress.is-medium{height:1.25rem}html.theme--documenter-dark .progress.is-large{height:1.5rem}@keyframes moveIndeterminate{from{background-position:200% 0}to{background-position:-200% 0}}html.theme--documenter-dark .table{background-color:#343c3d;color:#fff}html.theme--documenter-dark .table td,html.theme--documenter-dark .table th{border:1px solid #5e6d6f;border-width:0 0 1px;padding:0.5em 0.75em;vertical-align:top}html.theme--documenter-dark .table td.is-white,html.theme--documenter-dark .table th.is-white{background-color:#fff;border-color:#fff;color:#0a0a0a}html.theme--documenter-dark .table td.is-black,html.theme--documenter-dark .table th.is-black{background-color:#0a0a0a;border-color:#0a0a0a;color:#fff}html.theme--documenter-dark .table td.is-light,html.theme--documenter-dark .table th.is-light{background-color:#ecf0f1;border-color:#ecf0f1;color:#282f2f}html.theme--documenter-dark .table td.is-dark,html.theme--documenter-dark .table th.is-dark{background-color:#282f2f;border-color:#282f2f;color:#ecf0f1}html.theme--documenter-dark .table td.is-primary,html.theme--documenter-dark .table th.is-primary{background-color:#375a7f;border-color:#375a7f;color:#fff}html.theme--documenter-dark .table td.is-link,html.theme--documenter-dark .table th.is-link{background-color:#1abc9c;border-color:#1abc9c;color:#fff}html.theme--documenter-dark .table td.is-info,html.theme--documenter-dark .table th.is-info{background-color:#024c7d;border-color:#024c7d;color:#fff}html.theme--documenter-dark .table td.is-success,html.theme--documenter-dark .table th.is-success{background-color:#008438;border-color:#008438;color:#fff}html.theme--documenter-dark .table td.is-warning,html.theme--documenter-dark .table th.is-warning{background-color:#ad8100;border-color:#ad8100;color:#fff}html.theme--documenter-dark .table td.is-danger,html.theme--documenter-dark .table th.is-danger{background-color:#9e1b0d;border-color:#9e1b0d;color:#fff}html.theme--documenter-dark .table td.is-narrow,html.theme--documenter-dark .table th.is-narrow{white-space:nowrap;width:1%}html.theme--documenter-dark .table td.is-selected,html.theme--documenter-dark .table th.is-selected{background-color:#375a7f;color:#fff}html.theme--documenter-dark .table td.is-selected a,html.theme--documenter-dark .table td.is-selected strong,html.theme--documenter-dark .table th.is-selected a,html.theme--documenter-dark .table th.is-selected strong{color:currentColor}html.theme--documenter-dark .table th{color:#f2f2f2}html.theme--documenter-dark .table th:not([align]){text-align:left}html.theme--documenter-dark .table tr.is-selected{background-color:#375a7f;color:#fff}html.theme--documenter-dark .table tr.is-selected a,html.theme--documenter-dark .table tr.is-selected strong{color:currentColor}html.theme--documenter-dark .table tr.is-selected td,html.theme--documenter-dark .table tr.is-selected th{border-color:#fff;color:currentColor}html.theme--documenter-dark .table thead{background-color:rgba(0,0,0,0)}html.theme--documenter-dark .table thead td,html.theme--documenter-dark .table thead th{border-width:0 0 2px;color:#f2f2f2}html.theme--documenter-dark .table tfoot{background-color:rgba(0,0,0,0)}html.theme--documenter-dark .table tfoot td,html.theme--documenter-dark .table tfoot th{border-width:2px 0 0;color:#f2f2f2}html.theme--documenter-dark .table tbody{background-color:rgba(0,0,0,0)}html.theme--documenter-dark .table tbody tr:last-child td,html.theme--documenter-dark .table tbody tr:last-child th{border-bottom-width:0}html.theme--documenter-dark .table.is-bordered td,html.theme--documenter-dark .table.is-bordered th{border-width:1px}html.theme--documenter-dark .table.is-bordered tr:last-child td,html.theme--documenter-dark .table.is-bordered tr:last-child th{border-bottom-width:1px}html.theme--documenter-dark .table.is-fullwidth{width:100%}html.theme--documenter-dark .table.is-hoverable tbody tr:not(.is-selected):hover{background-color:#282f2f}html.theme--documenter-dark .table.is-hoverable.is-striped tbody tr:not(.is-selected):hover{background-color:#282f2f}html.theme--documenter-dark .table.is-hoverable.is-striped tbody tr:not(.is-selected):hover:nth-child(even){background-color:#2d3435}html.theme--documenter-dark .table.is-narrow td,html.theme--documenter-dark .table.is-narrow th{padding:0.25em 0.5em}html.theme--documenter-dark .table.is-striped tbody tr:not(.is-selected):nth-child(even){background-color:#282f2f}html.theme--documenter-dark .table-container{-webkit-overflow-scrolling:touch;overflow:auto;overflow-y:hidden;max-width:100%}html.theme--documenter-dark .tags{align-items:center;display:flex;flex-wrap:wrap;justify-content:flex-start}html.theme--documenter-dark .tags .tag,html.theme--documenter-dark .tags .content kbd,html.theme--documenter-dark .content .tags kbd,html.theme--documenter-dark .tags .docstring>section>a.docs-sourcelink{margin-bottom:0.5rem}html.theme--documenter-dark .tags .tag:not(:last-child),html.theme--documenter-dark .tags .content kbd:not(:last-child),html.theme--documenter-dark .content .tags kbd:not(:last-child),html.theme--documenter-dark .tags .docstring>section>a.docs-sourcelink:not(:last-child){margin-right:0.5rem}html.theme--documenter-dark .tags:last-child{margin-bottom:-0.5rem}html.theme--documenter-dark .tags:not(:last-child){margin-bottom:1rem}html.theme--documenter-dark .tags.are-medium .tag:not(.is-normal):not(.is-large),html.theme--documenter-dark .tags.are-medium .content kbd:not(.is-normal):not(.is-large),html.theme--documenter-dark .content .tags.are-medium kbd:not(.is-normal):not(.is-large),html.theme--documenter-dark .tags.are-medium .docstring>section>a.docs-sourcelink:not(.is-normal):not(.is-large){font-size:15px}html.theme--documenter-dark .tags.are-large .tag:not(.is-normal):not(.is-medium),html.theme--documenter-dark .tags.are-large .content kbd:not(.is-normal):not(.is-medium),html.theme--documenter-dark .content .tags.are-large kbd:not(.is-normal):not(.is-medium),html.theme--documenter-dark .tags.are-large .docstring>section>a.docs-sourcelink:not(.is-normal):not(.is-medium){font-size:1.25rem}html.theme--documenter-dark .tags.is-centered{justify-content:center}html.theme--documenter-dark .tags.is-centered .tag,html.theme--documenter-dark .tags.is-centered .content kbd,html.theme--documenter-dark .content .tags.is-centered kbd,html.theme--documenter-dark .tags.is-centered .docstring>section>a.docs-sourcelink{margin-right:0.25rem;margin-left:0.25rem}html.theme--documenter-dark .tags.is-right{justify-content:flex-end}html.theme--documenter-dark .tags.is-right .tag:not(:first-child),html.theme--documenter-dark .tags.is-right .content kbd:not(:first-child),html.theme--documenter-dark .content .tags.is-right kbd:not(:first-child),html.theme--documenter-dark .tags.is-right .docstring>section>a.docs-sourcelink:not(:first-child){margin-left:0.5rem}html.theme--documenter-dark .tags.is-right .tag:not(:last-child),html.theme--documenter-dark .tags.is-right .content kbd:not(:last-child),html.theme--documenter-dark .content .tags.is-right kbd:not(:last-child),html.theme--documenter-dark .tags.is-right .docstring>section>a.docs-sourcelink:not(:last-child){margin-right:0}html.theme--documenter-dark .tags.has-addons .tag,html.theme--documenter-dark .tags.has-addons .content kbd,html.theme--documenter-dark .content .tags.has-addons kbd,html.theme--documenter-dark .tags.has-addons .docstring>section>a.docs-sourcelink{margin-right:0}html.theme--documenter-dark .tags.has-addons .tag:not(:first-child),html.theme--documenter-dark .tags.has-addons .content kbd:not(:first-child),html.theme--documenter-dark .content .tags.has-addons kbd:not(:first-child),html.theme--documenter-dark .tags.has-addons .docstring>section>a.docs-sourcelink:not(:first-child){margin-left:0;border-bottom-left-radius:0;border-top-left-radius:0}html.theme--documenter-dark .tags.has-addons .tag:not(:last-child),html.theme--documenter-dark .tags.has-addons .content kbd:not(:last-child),html.theme--documenter-dark .content .tags.has-addons kbd:not(:last-child),html.theme--documenter-dark .tags.has-addons .docstring>section>a.docs-sourcelink:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}html.theme--documenter-dark .tag:not(body),html.theme--documenter-dark .content kbd:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink:not(body){align-items:center;background-color:#282f2f;border-radius:.4em;color:#fff;display:inline-flex;font-size:.85em;height:2em;justify-content:center;line-height:1.5;padding-left:0.75em;padding-right:0.75em;white-space:nowrap}html.theme--documenter-dark .tag:not(body) .delete,html.theme--documenter-dark .content kbd:not(body) .delete,html.theme--documenter-dark .docstring>section>a.docs-sourcelink:not(body) .delete{margin-left:0.25rem;margin-right:-0.375rem}html.theme--documenter-dark .tag.is-white:not(body),html.theme--documenter-dark .content kbd.is-white:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-white:not(body){background-color:#fff;color:#0a0a0a}html.theme--documenter-dark .tag.is-black:not(body),html.theme--documenter-dark .content kbd.is-black:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-black:not(body){background-color:#0a0a0a;color:#fff}html.theme--documenter-dark .tag.is-light:not(body),html.theme--documenter-dark .content kbd.is-light:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-light:not(body){background-color:#ecf0f1;color:#282f2f}html.theme--documenter-dark .tag.is-dark:not(body),html.theme--documenter-dark .content kbd:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-dark:not(body),html.theme--documenter-dark .content .docstring>section>kbd:not(body){background-color:#282f2f;color:#ecf0f1}html.theme--documenter-dark .tag.is-primary:not(body),html.theme--documenter-dark .content kbd.is-primary:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink:not(body){background-color:#375a7f;color:#fff}html.theme--documenter-dark .tag.is-link:not(body),html.theme--documenter-dark .content kbd.is-link:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-link:not(body){background-color:#1abc9c;color:#fff}html.theme--documenter-dark .tag.is-info:not(body),html.theme--documenter-dark .content kbd.is-info:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-info:not(body){background-color:#024c7d;color:#fff}html.theme--documenter-dark .tag.is-success:not(body),html.theme--documenter-dark .content kbd.is-success:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-success:not(body){background-color:#008438;color:#fff}html.theme--documenter-dark .tag.is-warning:not(body),html.theme--documenter-dark .content kbd.is-warning:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-warning:not(body){background-color:#ad8100;color:#fff}html.theme--documenter-dark .tag.is-danger:not(body),html.theme--documenter-dark .content kbd.is-danger:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-danger:not(body){background-color:#9e1b0d;color:#fff}html.theme--documenter-dark .tag.is-normal:not(body),html.theme--documenter-dark .content kbd.is-normal:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-normal:not(body){font-size:.85em}html.theme--documenter-dark .tag.is-medium:not(body),html.theme--documenter-dark .content kbd.is-medium:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-medium:not(body){font-size:15px}html.theme--documenter-dark .tag.is-large:not(body),html.theme--documenter-dark .content kbd.is-large:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-large:not(body){font-size:1.25rem}html.theme--documenter-dark .tag:not(body) .icon:first-child:not(:last-child),html.theme--documenter-dark .content kbd:not(body) .icon:first-child:not(:last-child),html.theme--documenter-dark .docstring>section>a.docs-sourcelink:not(body) .icon:first-child:not(:last-child){margin-left:-0.375em;margin-right:0.1875em}html.theme--documenter-dark .tag:not(body) .icon:last-child:not(:first-child),html.theme--documenter-dark .content kbd:not(body) .icon:last-child:not(:first-child),html.theme--documenter-dark .docstring>section>a.docs-sourcelink:not(body) .icon:last-child:not(:first-child){margin-left:0.1875em;margin-right:-0.375em}html.theme--documenter-dark .tag:not(body) .icon:first-child:last-child,html.theme--documenter-dark .content kbd:not(body) .icon:first-child:last-child,html.theme--documenter-dark .docstring>section>a.docs-sourcelink:not(body) .icon:first-child:last-child{margin-left:-0.375em;margin-right:-0.375em}html.theme--documenter-dark .tag.is-delete:not(body),html.theme--documenter-dark .content kbd.is-delete:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-delete:not(body){margin-left:1px;padding:0;position:relative;width:2em}html.theme--documenter-dark .tag.is-delete:not(body)::before,html.theme--documenter-dark .content kbd.is-delete:not(body)::before,html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-delete:not(body)::before,html.theme--documenter-dark .tag.is-delete:not(body)::after,html.theme--documenter-dark .content kbd.is-delete:not(body)::after,html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-delete:not(body)::after{background-color:currentColor;content:"";display:block;left:50%;position:absolute;top:50%;transform:translateX(-50%) translateY(-50%) rotate(45deg);transform-origin:center center}html.theme--documenter-dark .tag.is-delete:not(body)::before,html.theme--documenter-dark .content kbd.is-delete:not(body)::before,html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-delete:not(body)::before{height:1px;width:50%}html.theme--documenter-dark .tag.is-delete:not(body)::after,html.theme--documenter-dark .content kbd.is-delete:not(body)::after,html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-delete:not(body)::after{height:50%;width:1px}html.theme--documenter-dark .tag.is-delete:not(body):hover,html.theme--documenter-dark .content kbd.is-delete:not(body):hover,html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-delete:not(body):hover,html.theme--documenter-dark .tag.is-delete:not(body):focus,html.theme--documenter-dark .content kbd.is-delete:not(body):focus,html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-delete:not(body):focus{background-color:#1d2122}html.theme--documenter-dark .tag.is-delete:not(body):active,html.theme--documenter-dark .content kbd.is-delete:not(body):active,html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-delete:not(body):active{background-color:#111414}html.theme--documenter-dark .tag.is-rounded:not(body),html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input:not(body),html.theme--documenter-dark .content kbd.is-rounded:not(body),html.theme--documenter-dark #documenter .docs-sidebar .content form.docs-search>input:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-rounded:not(body){border-radius:290486px}html.theme--documenter-dark a.tag:hover,html.theme--documenter-dark .docstring>section>a.docs-sourcelink:hover{text-decoration:underline}html.theme--documenter-dark .title,html.theme--documenter-dark .subtitle{word-break:break-word}html.theme--documenter-dark .title em,html.theme--documenter-dark .title span,html.theme--documenter-dark .subtitle em,html.theme--documenter-dark .subtitle span{font-weight:inherit}html.theme--documenter-dark .title sub,html.theme--documenter-dark .subtitle sub{font-size:.75em}html.theme--documenter-dark .title sup,html.theme--documenter-dark .subtitle sup{font-size:.75em}html.theme--documenter-dark .title .tag,html.theme--documenter-dark .title .content kbd,html.theme--documenter-dark .content .title kbd,html.theme--documenter-dark .title .docstring>section>a.docs-sourcelink,html.theme--documenter-dark .subtitle .tag,html.theme--documenter-dark .subtitle .content kbd,html.theme--documenter-dark .content .subtitle kbd,html.theme--documenter-dark .subtitle .docstring>section>a.docs-sourcelink{vertical-align:middle}html.theme--documenter-dark .title{color:#fff;font-size:2rem;font-weight:500;line-height:1.125}html.theme--documenter-dark .title strong{color:inherit;font-weight:inherit}html.theme--documenter-dark .title+.highlight{margin-top:-0.75rem}html.theme--documenter-dark .title:not(.is-spaced)+.subtitle{margin-top:-1.25rem}html.theme--documenter-dark .title.is-1{font-size:3rem}html.theme--documenter-dark .title.is-2{font-size:2.5rem}html.theme--documenter-dark .title.is-3{font-size:2rem}html.theme--documenter-dark .title.is-4{font-size:1.5rem}html.theme--documenter-dark .title.is-5{font-size:1.25rem}html.theme--documenter-dark .title.is-6{font-size:15px}html.theme--documenter-dark .title.is-7{font-size:.85em}html.theme--documenter-dark .subtitle{color:#8c9b9d;font-size:1.25rem;font-weight:400;line-height:1.25}html.theme--documenter-dark .subtitle strong{color:#8c9b9d;font-weight:600}html.theme--documenter-dark .subtitle:not(.is-spaced)+.title{margin-top:-1.25rem}html.theme--documenter-dark .subtitle.is-1{font-size:3rem}html.theme--documenter-dark .subtitle.is-2{font-size:2.5rem}html.theme--documenter-dark .subtitle.is-3{font-size:2rem}html.theme--documenter-dark .subtitle.is-4{font-size:1.5rem}html.theme--documenter-dark .subtitle.is-5{font-size:1.25rem}html.theme--documenter-dark .subtitle.is-6{font-size:15px}html.theme--documenter-dark .subtitle.is-7{font-size:.85em}html.theme--documenter-dark .heading{display:block;font-size:11px;letter-spacing:1px;margin-bottom:5px;text-transform:uppercase}html.theme--documenter-dark .highlight{font-weight:400;max-width:100%;overflow:hidden;padding:0}html.theme--documenter-dark .highlight pre{overflow:auto;max-width:100%}html.theme--documenter-dark .number{align-items:center;background-color:#282f2f;border-radius:290486px;display:inline-flex;font-size:1.25rem;height:2em;justify-content:center;margin-right:1.5rem;min-width:2.5em;padding:0.25rem 0.5rem;text-align:center;vertical-align:top}html.theme--documenter-dark .select select,html.theme--documenter-dark .textarea,html.theme--documenter-dark .input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input{background-color:#1f2424;border-color:#5e6d6f;border-radius:.4em;color:#dbdee0}html.theme--documenter-dark .select select::-moz-placeholder,html.theme--documenter-dark .textarea::-moz-placeholder,html.theme--documenter-dark .input::-moz-placeholder,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input::-moz-placeholder{color:rgba(219,222,224,0.3)}html.theme--documenter-dark .select select::-webkit-input-placeholder,html.theme--documenter-dark .textarea::-webkit-input-placeholder,html.theme--documenter-dark .input::-webkit-input-placeholder,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input::-webkit-input-placeholder{color:rgba(219,222,224,0.3)}html.theme--documenter-dark .select select:-moz-placeholder,html.theme--documenter-dark .textarea:-moz-placeholder,html.theme--documenter-dark .input:-moz-placeholder,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input:-moz-placeholder{color:rgba(219,222,224,0.3)}html.theme--documenter-dark .select select:-ms-input-placeholder,html.theme--documenter-dark .textarea:-ms-input-placeholder,html.theme--documenter-dark .input:-ms-input-placeholder,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input:-ms-input-placeholder{color:rgba(219,222,224,0.3)}html.theme--documenter-dark .select select:hover,html.theme--documenter-dark .textarea:hover,html.theme--documenter-dark .input:hover,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input:hover,html.theme--documenter-dark .select select.is-hovered,html.theme--documenter-dark .is-hovered.textarea,html.theme--documenter-dark .is-hovered.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-hovered{border-color:#8c9b9d}html.theme--documenter-dark .select select:focus,html.theme--documenter-dark .textarea:focus,html.theme--documenter-dark .input:focus,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input:focus,html.theme--documenter-dark .select select.is-focused,html.theme--documenter-dark .is-focused.textarea,html.theme--documenter-dark .is-focused.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--documenter-dark .select select:active,html.theme--documenter-dark .textarea:active,html.theme--documenter-dark .input:active,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input:active,html.theme--documenter-dark .select select.is-active,html.theme--documenter-dark .is-active.textarea,html.theme--documenter-dark .is-active.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-active{border-color:#1abc9c;box-shadow:0 0 0 0.125em rgba(26,188,156,0.25)}html.theme--documenter-dark .select select[disabled],html.theme--documenter-dark .textarea[disabled],html.theme--documenter-dark .input[disabled],html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input[disabled],fieldset[disabled] html.theme--documenter-dark .select select,fieldset[disabled] html.theme--documenter-dark .textarea,fieldset[disabled] html.theme--documenter-dark .input,fieldset[disabled] html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input{background-color:#8c9b9d;border-color:#282f2f;box-shadow:none;color:#fff}html.theme--documenter-dark .select select[disabled]::-moz-placeholder,html.theme--documenter-dark .textarea[disabled]::-moz-placeholder,html.theme--documenter-dark .input[disabled]::-moz-placeholder,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input[disabled]::-moz-placeholder,fieldset[disabled] html.theme--documenter-dark .select select::-moz-placeholder,fieldset[disabled] html.theme--documenter-dark .textarea::-moz-placeholder,fieldset[disabled] html.theme--documenter-dark .input::-moz-placeholder,fieldset[disabled] html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input::-moz-placeholder{color:rgba(255,255,255,0.3)}html.theme--documenter-dark .select select[disabled]::-webkit-input-placeholder,html.theme--documenter-dark .textarea[disabled]::-webkit-input-placeholder,html.theme--documenter-dark .input[disabled]::-webkit-input-placeholder,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input[disabled]::-webkit-input-placeholder,fieldset[disabled] html.theme--documenter-dark .select select::-webkit-input-placeholder,fieldset[disabled] html.theme--documenter-dark .textarea::-webkit-input-placeholder,fieldset[disabled] html.theme--documenter-dark .input::-webkit-input-placeholder,fieldset[disabled] html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input::-webkit-input-placeholder{color:rgba(255,255,255,0.3)}html.theme--documenter-dark .select select[disabled]:-moz-placeholder,html.theme--documenter-dark .textarea[disabled]:-moz-placeholder,html.theme--documenter-dark .input[disabled]:-moz-placeholder,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input[disabled]:-moz-placeholder,fieldset[disabled] html.theme--documenter-dark .select select:-moz-placeholder,fieldset[disabled] html.theme--documenter-dark .textarea:-moz-placeholder,fieldset[disabled] html.theme--documenter-dark .input:-moz-placeholder,fieldset[disabled] html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input:-moz-placeholder{color:rgba(255,255,255,0.3)}html.theme--documenter-dark .select select[disabled]:-ms-input-placeholder,html.theme--documenter-dark .textarea[disabled]:-ms-input-placeholder,html.theme--documenter-dark .input[disabled]:-ms-input-placeholder,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input[disabled]:-ms-input-placeholder,fieldset[disabled] html.theme--documenter-dark .select select:-ms-input-placeholder,fieldset[disabled] html.theme--documenter-dark .textarea:-ms-input-placeholder,fieldset[disabled] html.theme--documenter-dark .input:-ms-input-placeholder,fieldset[disabled] html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input:-ms-input-placeholder{color:rgba(255,255,255,0.3)}html.theme--documenter-dark .textarea,html.theme--documenter-dark .input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input{box-shadow:inset 0 1px 2px rgba(10,10,10,0.1);max-width:100%;width:100%}html.theme--documenter-dark .textarea[readonly],html.theme--documenter-dark .input[readonly],html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input[readonly]{box-shadow:none}html.theme--documenter-dark .is-white.textarea,html.theme--documenter-dark .is-white.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-white{border-color:#fff}html.theme--documenter-dark .is-white.textarea:focus,html.theme--documenter-dark .is-white.input:focus,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-white:focus,html.theme--documenter-dark .is-white.is-focused.textarea,html.theme--documenter-dark .is-white.is-focused.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--documenter-dark .is-white.textarea:active,html.theme--documenter-dark .is-white.input:active,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-white:active,html.theme--documenter-dark .is-white.is-active.textarea,html.theme--documenter-dark .is-white.is-active.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(255,255,255,0.25)}html.theme--documenter-dark .is-black.textarea,html.theme--documenter-dark .is-black.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-black{border-color:#0a0a0a}html.theme--documenter-dark .is-black.textarea:focus,html.theme--documenter-dark .is-black.input:focus,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-black:focus,html.theme--documenter-dark .is-black.is-focused.textarea,html.theme--documenter-dark .is-black.is-focused.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--documenter-dark .is-black.textarea:active,html.theme--documenter-dark .is-black.input:active,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-black:active,html.theme--documenter-dark .is-black.is-active.textarea,html.theme--documenter-dark .is-black.is-active.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(10,10,10,0.25)}html.theme--documenter-dark .is-light.textarea,html.theme--documenter-dark .is-light.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-light{border-color:#ecf0f1}html.theme--documenter-dark .is-light.textarea:focus,html.theme--documenter-dark .is-light.input:focus,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-light:focus,html.theme--documenter-dark .is-light.is-focused.textarea,html.theme--documenter-dark .is-light.is-focused.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--documenter-dark .is-light.textarea:active,html.theme--documenter-dark .is-light.input:active,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-light:active,html.theme--documenter-dark .is-light.is-active.textarea,html.theme--documenter-dark .is-light.is-active.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(236,240,241,0.25)}html.theme--documenter-dark .is-dark.textarea,html.theme--documenter-dark .content kbd.textarea,html.theme--documenter-dark .is-dark.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-dark,html.theme--documenter-dark .content kbd.input{border-color:#282f2f}html.theme--documenter-dark .is-dark.textarea:focus,html.theme--documenter-dark .content kbd.textarea:focus,html.theme--documenter-dark .is-dark.input:focus,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-dark:focus,html.theme--documenter-dark .content kbd.input:focus,html.theme--documenter-dark .is-dark.is-focused.textarea,html.theme--documenter-dark .content kbd.is-focused.textarea,html.theme--documenter-dark .is-dark.is-focused.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--documenter-dark .content kbd.is-focused.input,html.theme--documenter-dark #documenter .docs-sidebar .content form.docs-search>input.is-focused,html.theme--documenter-dark .is-dark.textarea:active,html.theme--documenter-dark .content kbd.textarea:active,html.theme--documenter-dark .is-dark.input:active,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-dark:active,html.theme--documenter-dark .content kbd.input:active,html.theme--documenter-dark .is-dark.is-active.textarea,html.theme--documenter-dark .content kbd.is-active.textarea,html.theme--documenter-dark .is-dark.is-active.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-active,html.theme--documenter-dark .content kbd.is-active.input,html.theme--documenter-dark #documenter .docs-sidebar .content form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(40,47,47,0.25)}html.theme--documenter-dark .is-primary.textarea,html.theme--documenter-dark .docstring>section>a.textarea.docs-sourcelink,html.theme--documenter-dark .is-primary.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-primary,html.theme--documenter-dark .docstring>section>a.input.docs-sourcelink{border-color:#375a7f}html.theme--documenter-dark .is-primary.textarea:focus,html.theme--documenter-dark .docstring>section>a.textarea.docs-sourcelink:focus,html.theme--documenter-dark .is-primary.input:focus,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-primary:focus,html.theme--documenter-dark .docstring>section>a.input.docs-sourcelink:focus,html.theme--documenter-dark .is-primary.is-focused.textarea,html.theme--documenter-dark .docstring>section>a.is-focused.textarea.docs-sourcelink,html.theme--documenter-dark .is-primary.is-focused.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--documenter-dark .docstring>section>a.is-focused.input.docs-sourcelink,html.theme--documenter-dark .is-primary.textarea:active,html.theme--documenter-dark .docstring>section>a.textarea.docs-sourcelink:active,html.theme--documenter-dark .is-primary.input:active,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-primary:active,html.theme--documenter-dark .docstring>section>a.input.docs-sourcelink:active,html.theme--documenter-dark .is-primary.is-active.textarea,html.theme--documenter-dark .docstring>section>a.is-active.textarea.docs-sourcelink,html.theme--documenter-dark .is-primary.is-active.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-active,html.theme--documenter-dark .docstring>section>a.is-active.input.docs-sourcelink{box-shadow:0 0 0 0.125em rgba(55,90,127,0.25)}html.theme--documenter-dark .is-link.textarea,html.theme--documenter-dark .is-link.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-link{border-color:#1abc9c}html.theme--documenter-dark .is-link.textarea:focus,html.theme--documenter-dark .is-link.input:focus,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-link:focus,html.theme--documenter-dark .is-link.is-focused.textarea,html.theme--documenter-dark .is-link.is-focused.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--documenter-dark .is-link.textarea:active,html.theme--documenter-dark .is-link.input:active,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-link:active,html.theme--documenter-dark .is-link.is-active.textarea,html.theme--documenter-dark .is-link.is-active.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(26,188,156,0.25)}html.theme--documenter-dark .is-info.textarea,html.theme--documenter-dark .is-info.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-info{border-color:#024c7d}html.theme--documenter-dark .is-info.textarea:focus,html.theme--documenter-dark .is-info.input:focus,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-info:focus,html.theme--documenter-dark .is-info.is-focused.textarea,html.theme--documenter-dark .is-info.is-focused.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--documenter-dark .is-info.textarea:active,html.theme--documenter-dark .is-info.input:active,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-info:active,html.theme--documenter-dark .is-info.is-active.textarea,html.theme--documenter-dark .is-info.is-active.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(2,76,125,0.25)}html.theme--documenter-dark .is-success.textarea,html.theme--documenter-dark .is-success.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-success{border-color:#008438}html.theme--documenter-dark .is-success.textarea:focus,html.theme--documenter-dark .is-success.input:focus,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-success:focus,html.theme--documenter-dark .is-success.is-focused.textarea,html.theme--documenter-dark .is-success.is-focused.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--documenter-dark .is-success.textarea:active,html.theme--documenter-dark .is-success.input:active,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-success:active,html.theme--documenter-dark .is-success.is-active.textarea,html.theme--documenter-dark .is-success.is-active.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(0,132,56,0.25)}html.theme--documenter-dark .is-warning.textarea,html.theme--documenter-dark .is-warning.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-warning{border-color:#ad8100}html.theme--documenter-dark .is-warning.textarea:focus,html.theme--documenter-dark .is-warning.input:focus,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-warning:focus,html.theme--documenter-dark .is-warning.is-focused.textarea,html.theme--documenter-dark .is-warning.is-focused.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--documenter-dark .is-warning.textarea:active,html.theme--documenter-dark .is-warning.input:active,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-warning:active,html.theme--documenter-dark .is-warning.is-active.textarea,html.theme--documenter-dark .is-warning.is-active.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(173,129,0,0.25)}html.theme--documenter-dark .is-danger.textarea,html.theme--documenter-dark .is-danger.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-danger{border-color:#9e1b0d}html.theme--documenter-dark .is-danger.textarea:focus,html.theme--documenter-dark .is-danger.input:focus,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-danger:focus,html.theme--documenter-dark .is-danger.is-focused.textarea,html.theme--documenter-dark .is-danger.is-focused.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--documenter-dark .is-danger.textarea:active,html.theme--documenter-dark .is-danger.input:active,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-danger:active,html.theme--documenter-dark .is-danger.is-active.textarea,html.theme--documenter-dark .is-danger.is-active.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(158,27,13,0.25)}html.theme--documenter-dark .is-small.textarea,html.theme--documenter-dark .is-small.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input{border-radius:3px;font-size:.85em}html.theme--documenter-dark .is-medium.textarea,html.theme--documenter-dark .is-medium.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-medium{font-size:1.25rem}html.theme--documenter-dark .is-large.textarea,html.theme--documenter-dark .is-large.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-large{font-size:1.5rem}html.theme--documenter-dark .is-fullwidth.textarea,html.theme--documenter-dark .is-fullwidth.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-fullwidth{display:block;width:100%}html.theme--documenter-dark .is-inline.textarea,html.theme--documenter-dark .is-inline.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-inline{display:inline;width:auto}html.theme--documenter-dark .input.is-rounded,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input{border-radius:290486px;padding-left:1em;padding-right:1em}html.theme--documenter-dark .input.is-static,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-static{background-color:transparent;border-color:transparent;box-shadow:none;padding-left:0;padding-right:0}html.theme--documenter-dark .textarea{display:block;max-width:100%;min-width:100%;padding:0.625em;resize:vertical}html.theme--documenter-dark .textarea:not([rows]){max-height:600px;min-height:120px}html.theme--documenter-dark .textarea[rows]{height:initial}html.theme--documenter-dark .textarea.has-fixed-size{resize:none}html.theme--documenter-dark .radio,html.theme--documenter-dark .checkbox{cursor:pointer;display:inline-block;line-height:1.25;position:relative}html.theme--documenter-dark .radio input,html.theme--documenter-dark .checkbox input{cursor:pointer}html.theme--documenter-dark .radio:hover,html.theme--documenter-dark .checkbox:hover{color:#8c9b9d}html.theme--documenter-dark .radio[disabled],html.theme--documenter-dark .checkbox[disabled],fieldset[disabled] html.theme--documenter-dark .radio,fieldset[disabled] html.theme--documenter-dark .checkbox{color:#fff;cursor:not-allowed}html.theme--documenter-dark .radio+.radio{margin-left:0.5em}html.theme--documenter-dark .select{display:inline-block;max-width:100%;position:relative;vertical-align:top}html.theme--documenter-dark .select:not(.is-multiple){height:2.25em}html.theme--documenter-dark .select:not(.is-multiple):not(.is-loading)::after{border-color:#1abc9c;right:1.125em;z-index:4}html.theme--documenter-dark .select.is-rounded select,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.select select{border-radius:290486px;padding-left:1em}html.theme--documenter-dark .select select{cursor:pointer;display:block;font-size:1em;max-width:100%;outline:none}html.theme--documenter-dark .select select::-ms-expand{display:none}html.theme--documenter-dark .select select[disabled]:hover,fieldset[disabled] html.theme--documenter-dark .select select:hover{border-color:#282f2f}html.theme--documenter-dark .select select:not([multiple]){padding-right:2.5em}html.theme--documenter-dark .select select[multiple]{height:auto;padding:0}html.theme--documenter-dark .select select[multiple] option{padding:0.5em 1em}html.theme--documenter-dark .select:not(.is-multiple):not(.is-loading):hover::after{border-color:#8c9b9d}html.theme--documenter-dark .select.is-white:not(:hover)::after{border-color:#fff}html.theme--documenter-dark .select.is-white select{border-color:#fff}html.theme--documenter-dark .select.is-white select:hover,html.theme--documenter-dark .select.is-white select.is-hovered{border-color:#f2f2f2}html.theme--documenter-dark .select.is-white select:focus,html.theme--documenter-dark .select.is-white select.is-focused,html.theme--documenter-dark .select.is-white select:active,html.theme--documenter-dark .select.is-white select.is-active{box-shadow:0 0 0 0.125em rgba(255,255,255,0.25)}html.theme--documenter-dark .select.is-black:not(:hover)::after{border-color:#0a0a0a}html.theme--documenter-dark .select.is-black select{border-color:#0a0a0a}html.theme--documenter-dark .select.is-black select:hover,html.theme--documenter-dark .select.is-black select.is-hovered{border-color:#000}html.theme--documenter-dark .select.is-black select:focus,html.theme--documenter-dark .select.is-black select.is-focused,html.theme--documenter-dark .select.is-black select:active,html.theme--documenter-dark .select.is-black select.is-active{box-shadow:0 0 0 0.125em rgba(10,10,10,0.25)}html.theme--documenter-dark .select.is-light:not(:hover)::after{border-color:#ecf0f1}html.theme--documenter-dark .select.is-light select{border-color:#ecf0f1}html.theme--documenter-dark .select.is-light select:hover,html.theme--documenter-dark .select.is-light select.is-hovered{border-color:#dde4e6}html.theme--documenter-dark .select.is-light select:focus,html.theme--documenter-dark .select.is-light select.is-focused,html.theme--documenter-dark .select.is-light select:active,html.theme--documenter-dark .select.is-light select.is-active{box-shadow:0 0 0 0.125em rgba(236,240,241,0.25)}html.theme--documenter-dark .select.is-dark:not(:hover)::after,html.theme--documenter-dark .content kbd.select:not(:hover)::after{border-color:#282f2f}html.theme--documenter-dark .select.is-dark select,html.theme--documenter-dark .content kbd.select select{border-color:#282f2f}html.theme--documenter-dark .select.is-dark select:hover,html.theme--documenter-dark .content kbd.select select:hover,html.theme--documenter-dark .select.is-dark select.is-hovered,html.theme--documenter-dark .content kbd.select select.is-hovered{border-color:#1d2122}html.theme--documenter-dark .select.is-dark select:focus,html.theme--documenter-dark .content kbd.select select:focus,html.theme--documenter-dark .select.is-dark select.is-focused,html.theme--documenter-dark .content kbd.select select.is-focused,html.theme--documenter-dark .select.is-dark select:active,html.theme--documenter-dark .content kbd.select select:active,html.theme--documenter-dark .select.is-dark select.is-active,html.theme--documenter-dark .content kbd.select select.is-active{box-shadow:0 0 0 0.125em rgba(40,47,47,0.25)}html.theme--documenter-dark .select.is-primary:not(:hover)::after,html.theme--documenter-dark .docstring>section>a.select.docs-sourcelink:not(:hover)::after{border-color:#375a7f}html.theme--documenter-dark .select.is-primary select,html.theme--documenter-dark .docstring>section>a.select.docs-sourcelink select{border-color:#375a7f}html.theme--documenter-dark .select.is-primary select:hover,html.theme--documenter-dark .docstring>section>a.select.docs-sourcelink select:hover,html.theme--documenter-dark .select.is-primary select.is-hovered,html.theme--documenter-dark .docstring>section>a.select.docs-sourcelink select.is-hovered{border-color:#2f4d6d}html.theme--documenter-dark .select.is-primary select:focus,html.theme--documenter-dark .docstring>section>a.select.docs-sourcelink select:focus,html.theme--documenter-dark .select.is-primary select.is-focused,html.theme--documenter-dark .docstring>section>a.select.docs-sourcelink select.is-focused,html.theme--documenter-dark .select.is-primary select:active,html.theme--documenter-dark .docstring>section>a.select.docs-sourcelink select:active,html.theme--documenter-dark .select.is-primary select.is-active,html.theme--documenter-dark .docstring>section>a.select.docs-sourcelink select.is-active{box-shadow:0 0 0 0.125em rgba(55,90,127,0.25)}html.theme--documenter-dark .select.is-link:not(:hover)::after{border-color:#1abc9c}html.theme--documenter-dark .select.is-link select{border-color:#1abc9c}html.theme--documenter-dark .select.is-link select:hover,html.theme--documenter-dark .select.is-link select.is-hovered{border-color:#17a689}html.theme--documenter-dark .select.is-link select:focus,html.theme--documenter-dark .select.is-link select.is-focused,html.theme--documenter-dark .select.is-link select:active,html.theme--documenter-dark .select.is-link select.is-active{box-shadow:0 0 0 0.125em rgba(26,188,156,0.25)}html.theme--documenter-dark .select.is-info:not(:hover)::after{border-color:#024c7d}html.theme--documenter-dark .select.is-info select{border-color:#024c7d}html.theme--documenter-dark .select.is-info select:hover,html.theme--documenter-dark .select.is-info select.is-hovered{border-color:#023d64}html.theme--documenter-dark .select.is-info select:focus,html.theme--documenter-dark .select.is-info select.is-focused,html.theme--documenter-dark .select.is-info select:active,html.theme--documenter-dark .select.is-info select.is-active{box-shadow:0 0 0 0.125em rgba(2,76,125,0.25)}html.theme--documenter-dark .select.is-success:not(:hover)::after{border-color:#008438}html.theme--documenter-dark .select.is-success select{border-color:#008438}html.theme--documenter-dark .select.is-success select:hover,html.theme--documenter-dark .select.is-success select.is-hovered{border-color:#006b2d}html.theme--documenter-dark .select.is-success select:focus,html.theme--documenter-dark .select.is-success select.is-focused,html.theme--documenter-dark .select.is-success select:active,html.theme--documenter-dark .select.is-success select.is-active{box-shadow:0 0 0 0.125em rgba(0,132,56,0.25)}html.theme--documenter-dark .select.is-warning:not(:hover)::after{border-color:#ad8100}html.theme--documenter-dark .select.is-warning select{border-color:#ad8100}html.theme--documenter-dark .select.is-warning select:hover,html.theme--documenter-dark .select.is-warning select.is-hovered{border-color:#946e00}html.theme--documenter-dark .select.is-warning select:focus,html.theme--documenter-dark .select.is-warning select.is-focused,html.theme--documenter-dark .select.is-warning select:active,html.theme--documenter-dark .select.is-warning select.is-active{box-shadow:0 0 0 0.125em rgba(173,129,0,0.25)}html.theme--documenter-dark .select.is-danger:not(:hover)::after{border-color:#9e1b0d}html.theme--documenter-dark .select.is-danger select{border-color:#9e1b0d}html.theme--documenter-dark .select.is-danger select:hover,html.theme--documenter-dark .select.is-danger select.is-hovered{border-color:#86170b}html.theme--documenter-dark .select.is-danger select:focus,html.theme--documenter-dark .select.is-danger select.is-focused,html.theme--documenter-dark .select.is-danger select:active,html.theme--documenter-dark .select.is-danger select.is-active{box-shadow:0 0 0 0.125em rgba(158,27,13,0.25)}html.theme--documenter-dark .select.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.select{border-radius:3px;font-size:.85em}html.theme--documenter-dark .select.is-medium{font-size:1.25rem}html.theme--documenter-dark .select.is-large{font-size:1.5rem}html.theme--documenter-dark .select.is-disabled::after{border-color:#fff}html.theme--documenter-dark .select.is-fullwidth{width:100%}html.theme--documenter-dark .select.is-fullwidth select{width:100%}html.theme--documenter-dark .select.is-loading::after{margin-top:0;position:absolute;right:0.625em;top:0.625em;transform:none}html.theme--documenter-dark .select.is-loading.is-small:after,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-loading:after{font-size:.85em}html.theme--documenter-dark .select.is-loading.is-medium:after{font-size:1.25rem}html.theme--documenter-dark .select.is-loading.is-large:after{font-size:1.5rem}html.theme--documenter-dark .file{align-items:stretch;display:flex;justify-content:flex-start;position:relative}html.theme--documenter-dark .file.is-white .file-cta{background-color:#fff;border-color:transparent;color:#0a0a0a}html.theme--documenter-dark .file.is-white:hover .file-cta,html.theme--documenter-dark .file.is-white.is-hovered .file-cta{background-color:#f9f9f9;border-color:transparent;color:#0a0a0a}html.theme--documenter-dark .file.is-white:focus .file-cta,html.theme--documenter-dark .file.is-white.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(255,255,255,0.25);color:#0a0a0a}html.theme--documenter-dark .file.is-white:active .file-cta,html.theme--documenter-dark .file.is-white.is-active .file-cta{background-color:#f2f2f2;border-color:transparent;color:#0a0a0a}html.theme--documenter-dark .file.is-black .file-cta{background-color:#0a0a0a;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-black:hover .file-cta,html.theme--documenter-dark .file.is-black.is-hovered .file-cta{background-color:#040404;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-black:focus .file-cta,html.theme--documenter-dark .file.is-black.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(10,10,10,0.25);color:#fff}html.theme--documenter-dark .file.is-black:active .file-cta,html.theme--documenter-dark .file.is-black.is-active .file-cta{background-color:#000;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-light .file-cta{background-color:#ecf0f1;border-color:transparent;color:#282f2f}html.theme--documenter-dark .file.is-light:hover .file-cta,html.theme--documenter-dark .file.is-light.is-hovered .file-cta{background-color:#e5eaec;border-color:transparent;color:#282f2f}html.theme--documenter-dark .file.is-light:focus .file-cta,html.theme--documenter-dark .file.is-light.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(236,240,241,0.25);color:#282f2f}html.theme--documenter-dark .file.is-light:active .file-cta,html.theme--documenter-dark .file.is-light.is-active .file-cta{background-color:#dde4e6;border-color:transparent;color:#282f2f}html.theme--documenter-dark .file.is-dark .file-cta,html.theme--documenter-dark .content kbd.file .file-cta{background-color:#282f2f;border-color:transparent;color:#ecf0f1}html.theme--documenter-dark .file.is-dark:hover .file-cta,html.theme--documenter-dark .content kbd.file:hover .file-cta,html.theme--documenter-dark .file.is-dark.is-hovered .file-cta,html.theme--documenter-dark .content kbd.file.is-hovered .file-cta{background-color:#232829;border-color:transparent;color:#ecf0f1}html.theme--documenter-dark .file.is-dark:focus .file-cta,html.theme--documenter-dark .content kbd.file:focus .file-cta,html.theme--documenter-dark .file.is-dark.is-focused .file-cta,html.theme--documenter-dark .content kbd.file.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(40,47,47,0.25);color:#ecf0f1}html.theme--documenter-dark .file.is-dark:active .file-cta,html.theme--documenter-dark .content kbd.file:active .file-cta,html.theme--documenter-dark .file.is-dark.is-active .file-cta,html.theme--documenter-dark .content kbd.file.is-active .file-cta{background-color:#1d2122;border-color:transparent;color:#ecf0f1}html.theme--documenter-dark .file.is-primary .file-cta,html.theme--documenter-dark .docstring>section>a.file.docs-sourcelink .file-cta{background-color:#375a7f;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-primary:hover .file-cta,html.theme--documenter-dark .docstring>section>a.file.docs-sourcelink:hover .file-cta,html.theme--documenter-dark .file.is-primary.is-hovered .file-cta,html.theme--documenter-dark .docstring>section>a.file.is-hovered.docs-sourcelink .file-cta{background-color:#335476;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-primary:focus .file-cta,html.theme--documenter-dark .docstring>section>a.file.docs-sourcelink:focus .file-cta,html.theme--documenter-dark .file.is-primary.is-focused .file-cta,html.theme--documenter-dark .docstring>section>a.file.is-focused.docs-sourcelink .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(55,90,127,0.25);color:#fff}html.theme--documenter-dark .file.is-primary:active .file-cta,html.theme--documenter-dark .docstring>section>a.file.docs-sourcelink:active .file-cta,html.theme--documenter-dark .file.is-primary.is-active .file-cta,html.theme--documenter-dark .docstring>section>a.file.is-active.docs-sourcelink .file-cta{background-color:#2f4d6d;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-link .file-cta{background-color:#1abc9c;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-link:hover .file-cta,html.theme--documenter-dark .file.is-link.is-hovered .file-cta{background-color:#18b193;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-link:focus .file-cta,html.theme--documenter-dark .file.is-link.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(26,188,156,0.25);color:#fff}html.theme--documenter-dark .file.is-link:active .file-cta,html.theme--documenter-dark .file.is-link.is-active .file-cta{background-color:#17a689;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-info .file-cta{background-color:#024c7d;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-info:hover .file-cta,html.theme--documenter-dark .file.is-info.is-hovered .file-cta{background-color:#024470;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-info:focus .file-cta,html.theme--documenter-dark .file.is-info.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(2,76,125,0.25);color:#fff}html.theme--documenter-dark .file.is-info:active .file-cta,html.theme--documenter-dark .file.is-info.is-active .file-cta{background-color:#023d64;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-success .file-cta{background-color:#008438;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-success:hover .file-cta,html.theme--documenter-dark .file.is-success.is-hovered .file-cta{background-color:#073;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-success:focus .file-cta,html.theme--documenter-dark .file.is-success.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(0,132,56,0.25);color:#fff}html.theme--documenter-dark .file.is-success:active .file-cta,html.theme--documenter-dark .file.is-success.is-active .file-cta{background-color:#006b2d;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-warning .file-cta{background-color:#ad8100;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-warning:hover .file-cta,html.theme--documenter-dark .file.is-warning.is-hovered .file-cta{background-color:#a07700;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-warning:focus .file-cta,html.theme--documenter-dark .file.is-warning.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(173,129,0,0.25);color:#fff}html.theme--documenter-dark .file.is-warning:active .file-cta,html.theme--documenter-dark .file.is-warning.is-active .file-cta{background-color:#946e00;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-danger .file-cta{background-color:#9e1b0d;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-danger:hover .file-cta,html.theme--documenter-dark .file.is-danger.is-hovered .file-cta{background-color:#92190c;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-danger:focus .file-cta,html.theme--documenter-dark .file.is-danger.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(158,27,13,0.25);color:#fff}html.theme--documenter-dark .file.is-danger:active .file-cta,html.theme--documenter-dark .file.is-danger.is-active .file-cta{background-color:#86170b;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.file{font-size:.85em}html.theme--documenter-dark .file.is-medium{font-size:1.25rem}html.theme--documenter-dark .file.is-medium .file-icon .fa{font-size:21px}html.theme--documenter-dark .file.is-large{font-size:1.5rem}html.theme--documenter-dark .file.is-large .file-icon .fa{font-size:28px}html.theme--documenter-dark .file.has-name .file-cta{border-bottom-right-radius:0;border-top-right-radius:0}html.theme--documenter-dark .file.has-name .file-name{border-bottom-left-radius:0;border-top-left-radius:0}html.theme--documenter-dark .file.has-name.is-empty .file-cta{border-radius:.4em}html.theme--documenter-dark .file.has-name.is-empty .file-name{display:none}html.theme--documenter-dark .file.is-boxed .file-label{flex-direction:column}html.theme--documenter-dark .file.is-boxed .file-cta{flex-direction:column;height:auto;padding:1em 3em}html.theme--documenter-dark .file.is-boxed .file-name{border-width:0 1px 1px}html.theme--documenter-dark .file.is-boxed .file-icon{height:1.5em;width:1.5em}html.theme--documenter-dark .file.is-boxed .file-icon .fa{font-size:21px}html.theme--documenter-dark .file.is-boxed.is-small .file-icon .fa,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-boxed .file-icon .fa{font-size:14px}html.theme--documenter-dark .file.is-boxed.is-medium .file-icon .fa{font-size:28px}html.theme--documenter-dark .file.is-boxed.is-large .file-icon .fa{font-size:35px}html.theme--documenter-dark .file.is-boxed.has-name .file-cta{border-radius:.4em .4em 0 0}html.theme--documenter-dark .file.is-boxed.has-name .file-name{border-radius:0 0 .4em .4em;border-width:0 1px 1px}html.theme--documenter-dark .file.is-centered{justify-content:center}html.theme--documenter-dark .file.is-fullwidth .file-label{width:100%}html.theme--documenter-dark .file.is-fullwidth .file-name{flex-grow:1;max-width:none}html.theme--documenter-dark .file.is-right{justify-content:flex-end}html.theme--documenter-dark .file.is-right .file-cta{border-radius:0 .4em .4em 0}html.theme--documenter-dark .file.is-right .file-name{border-radius:.4em 0 0 .4em;border-width:1px 0 1px 1px;order:-1}html.theme--documenter-dark .file-label{align-items:stretch;display:flex;cursor:pointer;justify-content:flex-start;overflow:hidden;position:relative}html.theme--documenter-dark .file-label:hover .file-cta{background-color:#e5eaec;color:#282f2f}html.theme--documenter-dark .file-label:hover .file-name{border-color:#596668}html.theme--documenter-dark .file-label:active .file-cta{background-color:#dde4e6;color:#282f2f}html.theme--documenter-dark .file-label:active .file-name{border-color:#535f61}html.theme--documenter-dark .file-input{height:100%;left:0;opacity:0;outline:none;position:absolute;top:0;width:100%}html.theme--documenter-dark .file-cta,html.theme--documenter-dark .file-name{border-color:#5e6d6f;border-radius:.4em;font-size:1em;padding-left:1em;padding-right:1em;white-space:nowrap}html.theme--documenter-dark .file-cta{background-color:#ecf0f1;color:#343c3d}html.theme--documenter-dark .file-name{border-color:#5e6d6f;border-style:solid;border-width:1px 1px 1px 0;display:block;max-width:16em;overflow:hidden;text-align:left;text-overflow:ellipsis}html.theme--documenter-dark .file-icon{align-items:center;display:flex;height:1em;justify-content:center;margin-right:0.5em;width:1em}html.theme--documenter-dark .file-icon .fa{font-size:14px}html.theme--documenter-dark .label{color:#282f2f;display:block;font-size:15px;font-weight:700}html.theme--documenter-dark .label:not(:last-child){margin-bottom:0.5em}html.theme--documenter-dark .label.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.label{font-size:.85em}html.theme--documenter-dark .label.is-medium{font-size:1.25rem}html.theme--documenter-dark .label.is-large{font-size:1.5rem}html.theme--documenter-dark .help{display:block;font-size:.85em;margin-top:0.25rem}html.theme--documenter-dark .help.is-white{color:#fff}html.theme--documenter-dark .help.is-black{color:#0a0a0a}html.theme--documenter-dark .help.is-light{color:#ecf0f1}html.theme--documenter-dark .help.is-dark,html.theme--documenter-dark .content kbd.help{color:#282f2f}html.theme--documenter-dark .help.is-primary,html.theme--documenter-dark .docstring>section>a.help.docs-sourcelink{color:#375a7f}html.theme--documenter-dark .help.is-link{color:#1abc9c}html.theme--documenter-dark .help.is-info{color:#024c7d}html.theme--documenter-dark .help.is-success{color:#008438}html.theme--documenter-dark .help.is-warning{color:#ad8100}html.theme--documenter-dark .help.is-danger{color:#9e1b0d}html.theme--documenter-dark .field:not(:last-child){margin-bottom:0.75rem}html.theme--documenter-dark .field.has-addons{display:flex;justify-content:flex-start}html.theme--documenter-dark .field.has-addons .control:not(:last-child){margin-right:-1px}html.theme--documenter-dark .field.has-addons .control:not(:first-child):not(:last-child) .button,html.theme--documenter-dark .field.has-addons .control:not(:first-child):not(:last-child) .input,html.theme--documenter-dark .field.has-addons .control:not(:first-child):not(:last-child) #documenter .docs-sidebar form.docs-search>input,html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control:not(:first-child):not(:last-child) form.docs-search>input,html.theme--documenter-dark .field.has-addons .control:not(:first-child):not(:last-child) .select select{border-radius:0}html.theme--documenter-dark .field.has-addons .control:first-child:not(:only-child) .button,html.theme--documenter-dark .field.has-addons .control:first-child:not(:only-child) .input,html.theme--documenter-dark .field.has-addons .control:first-child:not(:only-child) #documenter .docs-sidebar form.docs-search>input,html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control:first-child:not(:only-child) form.docs-search>input,html.theme--documenter-dark .field.has-addons .control:first-child:not(:only-child) .select select{border-bottom-right-radius:0;border-top-right-radius:0}html.theme--documenter-dark .field.has-addons .control:last-child:not(:only-child) .button,html.theme--documenter-dark .field.has-addons .control:last-child:not(:only-child) .input,html.theme--documenter-dark .field.has-addons .control:last-child:not(:only-child) #documenter .docs-sidebar form.docs-search>input,html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control:last-child:not(:only-child) form.docs-search>input,html.theme--documenter-dark .field.has-addons .control:last-child:not(:only-child) .select select{border-bottom-left-radius:0;border-top-left-radius:0}html.theme--documenter-dark .field.has-addons .control .button:not([disabled]):hover,html.theme--documenter-dark .field.has-addons .control .button.is-hovered:not([disabled]),html.theme--documenter-dark .field.has-addons .control .input:not([disabled]):hover,html.theme--documenter-dark .field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):hover,html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):hover,html.theme--documenter-dark .field.has-addons .control .input.is-hovered:not([disabled]),html.theme--documenter-dark .field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-hovered:not([disabled]),html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-hovered:not([disabled]),html.theme--documenter-dark .field.has-addons .control .select select:not([disabled]):hover,html.theme--documenter-dark .field.has-addons .control .select select.is-hovered:not([disabled]){z-index:2}html.theme--documenter-dark .field.has-addons .control .button:not([disabled]):focus,html.theme--documenter-dark .field.has-addons .control .button.is-focused:not([disabled]),html.theme--documenter-dark .field.has-addons .control .button:not([disabled]):active,html.theme--documenter-dark .field.has-addons .control .button.is-active:not([disabled]),html.theme--documenter-dark .field.has-addons .control .input:not([disabled]):focus,html.theme--documenter-dark .field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):focus,html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):focus,html.theme--documenter-dark .field.has-addons .control .input.is-focused:not([disabled]),html.theme--documenter-dark .field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-focused:not([disabled]),html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-focused:not([disabled]),html.theme--documenter-dark .field.has-addons .control .input:not([disabled]):active,html.theme--documenter-dark .field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):active,html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):active,html.theme--documenter-dark .field.has-addons .control .input.is-active:not([disabled]),html.theme--documenter-dark .field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-active:not([disabled]),html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-active:not([disabled]),html.theme--documenter-dark .field.has-addons .control .select select:not([disabled]):focus,html.theme--documenter-dark .field.has-addons .control .select select.is-focused:not([disabled]),html.theme--documenter-dark .field.has-addons .control .select select:not([disabled]):active,html.theme--documenter-dark .field.has-addons .control .select select.is-active:not([disabled]){z-index:3}html.theme--documenter-dark .field.has-addons .control .button:not([disabled]):focus:hover,html.theme--documenter-dark .field.has-addons .control .button.is-focused:not([disabled]):hover,html.theme--documenter-dark .field.has-addons .control .button:not([disabled]):active:hover,html.theme--documenter-dark .field.has-addons .control .button.is-active:not([disabled]):hover,html.theme--documenter-dark .field.has-addons .control .input:not([disabled]):focus:hover,html.theme--documenter-dark .field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):focus:hover,html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):focus:hover,html.theme--documenter-dark .field.has-addons .control .input.is-focused:not([disabled]):hover,html.theme--documenter-dark .field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-focused:not([disabled]):hover,html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-focused:not([disabled]):hover,html.theme--documenter-dark .field.has-addons .control .input:not([disabled]):active:hover,html.theme--documenter-dark .field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):active:hover,html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):active:hover,html.theme--documenter-dark .field.has-addons .control .input.is-active:not([disabled]):hover,html.theme--documenter-dark .field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-active:not([disabled]):hover,html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-active:not([disabled]):hover,html.theme--documenter-dark .field.has-addons .control .select select:not([disabled]):focus:hover,html.theme--documenter-dark .field.has-addons .control .select select.is-focused:not([disabled]):hover,html.theme--documenter-dark .field.has-addons .control .select select:not([disabled]):active:hover,html.theme--documenter-dark .field.has-addons .control .select select.is-active:not([disabled]):hover{z-index:4}html.theme--documenter-dark .field.has-addons .control.is-expanded{flex-grow:1;flex-shrink:1}html.theme--documenter-dark .field.has-addons.has-addons-centered{justify-content:center}html.theme--documenter-dark .field.has-addons.has-addons-right{justify-content:flex-end}html.theme--documenter-dark .field.has-addons.has-addons-fullwidth .control{flex-grow:1;flex-shrink:0}html.theme--documenter-dark .field.is-grouped{display:flex;justify-content:flex-start}html.theme--documenter-dark .field.is-grouped>.control{flex-shrink:0}html.theme--documenter-dark .field.is-grouped>.control:not(:last-child){margin-bottom:0;margin-right:0.75rem}html.theme--documenter-dark .field.is-grouped>.control.is-expanded{flex-grow:1;flex-shrink:1}html.theme--documenter-dark .field.is-grouped.is-grouped-centered{justify-content:center}html.theme--documenter-dark .field.is-grouped.is-grouped-right{justify-content:flex-end}html.theme--documenter-dark .field.is-grouped.is-grouped-multiline{flex-wrap:wrap}html.theme--documenter-dark .field.is-grouped.is-grouped-multiline>.control:last-child,html.theme--documenter-dark .field.is-grouped.is-grouped-multiline>.control:not(:last-child){margin-bottom:0.75rem}html.theme--documenter-dark .field.is-grouped.is-grouped-multiline:last-child{margin-bottom:-0.75rem}html.theme--documenter-dark .field.is-grouped.is-grouped-multiline:not(:last-child){margin-bottom:0}@media screen and (min-width: 769px),print{html.theme--documenter-dark .field.is-horizontal{display:flex}}html.theme--documenter-dark .field-label .label{font-size:inherit}@media screen and (max-width: 768px){html.theme--documenter-dark .field-label{margin-bottom:0.5rem}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .field-label{flex-basis:0;flex-grow:1;flex-shrink:0;margin-right:1.5rem;text-align:right}html.theme--documenter-dark .field-label.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.field-label{font-size:.85em;padding-top:0.375em}html.theme--documenter-dark .field-label.is-normal{padding-top:0.375em}html.theme--documenter-dark .field-label.is-medium{font-size:1.25rem;padding-top:0.375em}html.theme--documenter-dark .field-label.is-large{font-size:1.5rem;padding-top:0.375em}}html.theme--documenter-dark .field-body .field .field{margin-bottom:0}@media screen and (min-width: 769px),print{html.theme--documenter-dark .field-body{display:flex;flex-basis:0;flex-grow:5;flex-shrink:1}html.theme--documenter-dark .field-body .field{margin-bottom:0}html.theme--documenter-dark .field-body>.field{flex-shrink:1}html.theme--documenter-dark .field-body>.field:not(.is-narrow){flex-grow:1}html.theme--documenter-dark .field-body>.field:not(:last-child){margin-right:0.75rem}}html.theme--documenter-dark .control{box-sizing:border-box;clear:both;font-size:15px;position:relative;text-align:left}html.theme--documenter-dark .control.has-icons-left .input:focus~.icon,html.theme--documenter-dark .control.has-icons-left #documenter .docs-sidebar form.docs-search>input:focus~.icon,html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-left form.docs-search>input:focus~.icon,html.theme--documenter-dark .control.has-icons-left .select:focus~.icon,html.theme--documenter-dark .control.has-icons-right .input:focus~.icon,html.theme--documenter-dark .control.has-icons-right #documenter .docs-sidebar form.docs-search>input:focus~.icon,html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-right form.docs-search>input:focus~.icon,html.theme--documenter-dark .control.has-icons-right .select:focus~.icon{color:#5e6d6f}html.theme--documenter-dark .control.has-icons-left .input.is-small~.icon,html.theme--documenter-dark .control.has-icons-left #documenter .docs-sidebar form.docs-search>input~.icon,html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-left form.docs-search>input~.icon,html.theme--documenter-dark .control.has-icons-left .select.is-small~.icon,html.theme--documenter-dark .control.has-icons-right .input.is-small~.icon,html.theme--documenter-dark .control.has-icons-right #documenter .docs-sidebar form.docs-search>input~.icon,html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-right form.docs-search>input~.icon,html.theme--documenter-dark .control.has-icons-right .select.is-small~.icon{font-size:.85em}html.theme--documenter-dark .control.has-icons-left .input.is-medium~.icon,html.theme--documenter-dark .control.has-icons-left #documenter .docs-sidebar form.docs-search>input.is-medium~.icon,html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-left form.docs-search>input.is-medium~.icon,html.theme--documenter-dark .control.has-icons-left .select.is-medium~.icon,html.theme--documenter-dark .control.has-icons-right .input.is-medium~.icon,html.theme--documenter-dark .control.has-icons-right #documenter .docs-sidebar form.docs-search>input.is-medium~.icon,html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-right form.docs-search>input.is-medium~.icon,html.theme--documenter-dark .control.has-icons-right .select.is-medium~.icon{font-size:1.25rem}html.theme--documenter-dark .control.has-icons-left .input.is-large~.icon,html.theme--documenter-dark .control.has-icons-left #documenter .docs-sidebar form.docs-search>input.is-large~.icon,html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-left form.docs-search>input.is-large~.icon,html.theme--documenter-dark .control.has-icons-left .select.is-large~.icon,html.theme--documenter-dark .control.has-icons-right .input.is-large~.icon,html.theme--documenter-dark .control.has-icons-right #documenter .docs-sidebar form.docs-search>input.is-large~.icon,html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-right form.docs-search>input.is-large~.icon,html.theme--documenter-dark .control.has-icons-right .select.is-large~.icon{font-size:1.5rem}html.theme--documenter-dark .control.has-icons-left .icon,html.theme--documenter-dark .control.has-icons-right .icon{color:#dbdee0;height:2.25em;pointer-events:none;position:absolute;top:0;width:2.25em;z-index:4}html.theme--documenter-dark .control.has-icons-left .input,html.theme--documenter-dark .control.has-icons-left #documenter .docs-sidebar form.docs-search>input,html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-left form.docs-search>input,html.theme--documenter-dark .control.has-icons-left .select select{padding-left:2.25em}html.theme--documenter-dark .control.has-icons-left .icon.is-left{left:0}html.theme--documenter-dark .control.has-icons-right .input,html.theme--documenter-dark .control.has-icons-right #documenter .docs-sidebar form.docs-search>input,html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-right form.docs-search>input,html.theme--documenter-dark .control.has-icons-right .select select{padding-right:2.25em}html.theme--documenter-dark .control.has-icons-right .icon.is-right{right:0}html.theme--documenter-dark .control.is-loading::after{position:absolute !important;right:0.625em;top:0.625em;z-index:4}html.theme--documenter-dark .control.is-loading.is-small:after,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-loading:after{font-size:.85em}html.theme--documenter-dark .control.is-loading.is-medium:after{font-size:1.25rem}html.theme--documenter-dark .control.is-loading.is-large:after{font-size:1.5rem}html.theme--documenter-dark .breadcrumb{font-size:15px;white-space:nowrap}html.theme--documenter-dark .breadcrumb a{align-items:center;color:#1abc9c;display:flex;justify-content:center;padding:0 .75em}html.theme--documenter-dark .breadcrumb a:hover{color:#1dd2af}html.theme--documenter-dark .breadcrumb li{align-items:center;display:flex}html.theme--documenter-dark .breadcrumb li:first-child a{padding-left:0}html.theme--documenter-dark .breadcrumb li.is-active a{color:#f2f2f2;cursor:default;pointer-events:none}html.theme--documenter-dark .breadcrumb li+li::before{color:#8c9b9d;content:"\0002f"}html.theme--documenter-dark .breadcrumb ul,html.theme--documenter-dark .breadcrumb ol{align-items:flex-start;display:flex;flex-wrap:wrap;justify-content:flex-start}html.theme--documenter-dark .breadcrumb .icon:first-child{margin-right:0.5em}html.theme--documenter-dark .breadcrumb .icon:last-child{margin-left:0.5em}html.theme--documenter-dark .breadcrumb.is-centered ol,html.theme--documenter-dark .breadcrumb.is-centered ul{justify-content:center}html.theme--documenter-dark .breadcrumb.is-right ol,html.theme--documenter-dark .breadcrumb.is-right ul{justify-content:flex-end}html.theme--documenter-dark .breadcrumb.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.breadcrumb{font-size:.85em}html.theme--documenter-dark .breadcrumb.is-medium{font-size:1.25rem}html.theme--documenter-dark .breadcrumb.is-large{font-size:1.5rem}html.theme--documenter-dark .breadcrumb.has-arrow-separator li+li::before{content:"\02192"}html.theme--documenter-dark .breadcrumb.has-bullet-separator li+li::before{content:"\02022"}html.theme--documenter-dark .breadcrumb.has-dot-separator li+li::before{content:"\000b7"}html.theme--documenter-dark .breadcrumb.has-succeeds-separator li+li::before{content:"\0227B"}html.theme--documenter-dark .card{background-color:#fff;box-shadow:0 2px 3px rgba(10,10,10,0.1),0 0 0 1px rgba(10,10,10,0.1);color:#fff;max-width:100%;position:relative}html.theme--documenter-dark .card-header{background-color:rgba(0,0,0,0);align-items:stretch;box-shadow:0 1px 2px rgba(10,10,10,0.1);display:flex}html.theme--documenter-dark .card-header-title{align-items:center;color:#f2f2f2;display:flex;flex-grow:1;font-weight:700;padding:.75rem}html.theme--documenter-dark .card-header-title.is-centered{justify-content:center}html.theme--documenter-dark .card-header-icon{align-items:center;cursor:pointer;display:flex;justify-content:center;padding:.75rem}html.theme--documenter-dark .card-image{display:block;position:relative}html.theme--documenter-dark .card-content{background-color:rgba(0,0,0,0);padding:1.5rem}html.theme--documenter-dark .card-footer{background-color:rgba(0,0,0,0);border-top:1px solid #5e6d6f;align-items:stretch;display:flex}html.theme--documenter-dark .card-footer-item{align-items:center;display:flex;flex-basis:0;flex-grow:1;flex-shrink:0;justify-content:center;padding:.75rem}html.theme--documenter-dark .card-footer-item:not(:last-child){border-right:1px solid #5e6d6f}html.theme--documenter-dark .card .media:not(:last-child){margin-bottom:1.5rem}html.theme--documenter-dark .dropdown{display:inline-flex;position:relative;vertical-align:top}html.theme--documenter-dark .dropdown.is-active .dropdown-menu,html.theme--documenter-dark .dropdown.is-hoverable:hover .dropdown-menu{display:block}html.theme--documenter-dark .dropdown.is-right .dropdown-menu{left:auto;right:0}html.theme--documenter-dark .dropdown.is-up .dropdown-menu{bottom:100%;padding-bottom:4px;padding-top:initial;top:auto}html.theme--documenter-dark .dropdown-menu{display:none;left:0;min-width:12rem;padding-top:4px;position:absolute;top:100%;z-index:20}html.theme--documenter-dark .dropdown-content{background-color:#282f2f;border-radius:.4em;box-shadow:0 2px 3px rgba(10,10,10,0.1),0 0 0 1px rgba(10,10,10,0.1);padding-bottom:.5rem;padding-top:.5rem}html.theme--documenter-dark .dropdown-item{color:#fff;display:block;font-size:0.875rem;line-height:1.5;padding:0.375rem 1rem;position:relative}html.theme--documenter-dark a.dropdown-item,html.theme--documenter-dark button.dropdown-item{padding-right:3rem;text-align:left;white-space:nowrap;width:100%}html.theme--documenter-dark a.dropdown-item:hover,html.theme--documenter-dark button.dropdown-item:hover{background-color:#282f2f;color:#0a0a0a}html.theme--documenter-dark a.dropdown-item.is-active,html.theme--documenter-dark button.dropdown-item.is-active{background-color:#1abc9c;color:#fff}html.theme--documenter-dark .dropdown-divider{background-color:#5e6d6f;border:none;display:block;height:1px;margin:0.5rem 0}html.theme--documenter-dark .level{align-items:center;justify-content:space-between}html.theme--documenter-dark .level code{border-radius:.4em}html.theme--documenter-dark .level img{display:inline-block;vertical-align:top}html.theme--documenter-dark .level.is-mobile{display:flex}html.theme--documenter-dark .level.is-mobile .level-left,html.theme--documenter-dark .level.is-mobile .level-right{display:flex}html.theme--documenter-dark .level.is-mobile .level-left+.level-right{margin-top:0}html.theme--documenter-dark .level.is-mobile .level-item:not(:last-child){margin-bottom:0;margin-right:.75rem}html.theme--documenter-dark .level.is-mobile .level-item:not(.is-narrow){flex-grow:1}@media screen and (min-width: 769px),print{html.theme--documenter-dark .level{display:flex}html.theme--documenter-dark .level>.level-item:not(.is-narrow){flex-grow:1}}html.theme--documenter-dark .level-item{align-items:center;display:flex;flex-basis:auto;flex-grow:0;flex-shrink:0;justify-content:center}html.theme--documenter-dark .level-item .title,html.theme--documenter-dark .level-item .subtitle{margin-bottom:0}@media screen and (max-width: 768px){html.theme--documenter-dark .level-item:not(:last-child){margin-bottom:.75rem}}html.theme--documenter-dark .level-left,html.theme--documenter-dark .level-right{flex-basis:auto;flex-grow:0;flex-shrink:0}html.theme--documenter-dark .level-left .level-item.is-flexible,html.theme--documenter-dark .level-right .level-item.is-flexible{flex-grow:1}@media screen and (min-width: 769px),print{html.theme--documenter-dark .level-left .level-item:not(:last-child),html.theme--documenter-dark .level-right .level-item:not(:last-child){margin-right:.75rem}}html.theme--documenter-dark .level-left{align-items:center;justify-content:flex-start}@media screen and (max-width: 768px){html.theme--documenter-dark .level-left+.level-right{margin-top:1.5rem}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .level-left{display:flex}}html.theme--documenter-dark .level-right{align-items:center;justify-content:flex-end}@media screen and (min-width: 769px),print{html.theme--documenter-dark .level-right{display:flex}}html.theme--documenter-dark .list{background-color:#fff;border-radius:.4em;box-shadow:0 2px 3px rgba(10,10,10,0.1),0 0 0 1px rgba(10,10,10,0.1)}html.theme--documenter-dark .list-item{display:block;padding:0.5em 1em}html.theme--documenter-dark .list-item:not(a){color:#fff}html.theme--documenter-dark .list-item:first-child{border-top-left-radius:.4em;border-top-right-radius:.4em}html.theme--documenter-dark .list-item:last-child{border-bottom-left-radius:.4em;border-bottom-right-radius:.4em}html.theme--documenter-dark .list-item:not(:last-child){border-bottom:1px solid #5e6d6f}html.theme--documenter-dark .list-item.is-active{background-color:#1abc9c;color:#fff}html.theme--documenter-dark a.list-item{background-color:#282f2f;cursor:pointer}html.theme--documenter-dark .media{align-items:flex-start;display:flex;text-align:left}html.theme--documenter-dark .media .content:not(:last-child){margin-bottom:0.75rem}html.theme--documenter-dark .media .media{border-top:1px solid rgba(94,109,111,0.5);display:flex;padding-top:0.75rem}html.theme--documenter-dark .media .media .content:not(:last-child),html.theme--documenter-dark .media .media .control:not(:last-child){margin-bottom:0.5rem}html.theme--documenter-dark .media .media .media{padding-top:0.5rem}html.theme--documenter-dark .media .media .media+.media{margin-top:0.5rem}html.theme--documenter-dark .media+.media{border-top:1px solid rgba(94,109,111,0.5);margin-top:1rem;padding-top:1rem}html.theme--documenter-dark .media.is-large+.media{margin-top:1.5rem;padding-top:1.5rem}html.theme--documenter-dark .media-left,html.theme--documenter-dark .media-right{flex-basis:auto;flex-grow:0;flex-shrink:0}html.theme--documenter-dark .media-left{margin-right:1rem}html.theme--documenter-dark .media-right{margin-left:1rem}html.theme--documenter-dark .media-content{flex-basis:auto;flex-grow:1;flex-shrink:1;text-align:left}@media screen and (max-width: 768px){html.theme--documenter-dark .media-content{overflow-x:auto}}html.theme--documenter-dark .menu{font-size:15px}html.theme--documenter-dark .menu.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.menu{font-size:.85em}html.theme--documenter-dark .menu.is-medium{font-size:1.25rem}html.theme--documenter-dark .menu.is-large{font-size:1.5rem}html.theme--documenter-dark .menu-list{line-height:1.25}html.theme--documenter-dark .menu-list a{border-radius:3px;color:#fff;display:block;padding:0.5em 0.75em}html.theme--documenter-dark .menu-list a:hover{background-color:#282f2f;color:#f2f2f2}html.theme--documenter-dark .menu-list a.is-active{background-color:#1abc9c;color:#fff}html.theme--documenter-dark .menu-list li ul{border-left:1px solid #5e6d6f;margin:.75em;padding-left:.75em}html.theme--documenter-dark .menu-label{color:#fff;font-size:.75em;letter-spacing:.1em;text-transform:uppercase}html.theme--documenter-dark .menu-label:not(:first-child){margin-top:1em}html.theme--documenter-dark .menu-label:not(:last-child){margin-bottom:1em}html.theme--documenter-dark .message{background-color:#282f2f;border-radius:.4em;font-size:15px}html.theme--documenter-dark .message strong{color:currentColor}html.theme--documenter-dark .message a:not(.button):not(.tag):not(.dropdown-item){color:currentColor;text-decoration:underline}html.theme--documenter-dark .message.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.message{font-size:.85em}html.theme--documenter-dark .message.is-medium{font-size:1.25rem}html.theme--documenter-dark .message.is-large{font-size:1.5rem}html.theme--documenter-dark .message.is-white{background-color:#fff}html.theme--documenter-dark .message.is-white .message-header{background-color:#fff;color:#0a0a0a}html.theme--documenter-dark .message.is-white .message-body{border-color:#fff;color:#4d4d4d}html.theme--documenter-dark .message.is-black{background-color:#fafafa}html.theme--documenter-dark .message.is-black .message-header{background-color:#0a0a0a;color:#fff}html.theme--documenter-dark .message.is-black .message-body{border-color:#0a0a0a;color:#090909}html.theme--documenter-dark .message.is-light{background-color:#f9fafb}html.theme--documenter-dark .message.is-light .message-header{background-color:#ecf0f1;color:#282f2f}html.theme--documenter-dark .message.is-light .message-body{border-color:#ecf0f1;color:#505050}html.theme--documenter-dark .message.is-dark,html.theme--documenter-dark .content kbd.message{background-color:#f9fafa}html.theme--documenter-dark .message.is-dark .message-header,html.theme--documenter-dark .content kbd.message .message-header{background-color:#282f2f;color:#ecf0f1}html.theme--documenter-dark .message.is-dark .message-body,html.theme--documenter-dark .content kbd.message .message-body{border-color:#282f2f;color:#212526}html.theme--documenter-dark .message.is-primary,html.theme--documenter-dark .docstring>section>a.message.docs-sourcelink{background-color:#f8fafc}html.theme--documenter-dark .message.is-primary .message-header,html.theme--documenter-dark .docstring>section>a.message.docs-sourcelink .message-header{background-color:#375a7f;color:#fff}html.theme--documenter-dark .message.is-primary .message-body,html.theme--documenter-dark .docstring>section>a.message.docs-sourcelink .message-body{border-color:#375a7f;color:#2b4159}html.theme--documenter-dark .message.is-link{background-color:#f6fefc}html.theme--documenter-dark .message.is-link .message-header{background-color:#1abc9c;color:#fff}html.theme--documenter-dark .message.is-link .message-body{border-color:#1abc9c;color:#0b2f28}html.theme--documenter-dark .message.is-info{background-color:#f5fbff}html.theme--documenter-dark .message.is-info .message-header{background-color:#024c7d;color:#fff}html.theme--documenter-dark .message.is-info .message-body{border-color:#024c7d;color:#033659}html.theme--documenter-dark .message.is-success{background-color:#f5fff9}html.theme--documenter-dark .message.is-success .message-header{background-color:#008438;color:#fff}html.theme--documenter-dark .message.is-success .message-body{border-color:#008438;color:#023518}html.theme--documenter-dark .message.is-warning{background-color:#fffcf5}html.theme--documenter-dark .message.is-warning .message-header{background-color:#ad8100;color:#fff}html.theme--documenter-dark .message.is-warning .message-body{border-color:#ad8100;color:#3d2e03}html.theme--documenter-dark .message.is-danger{background-color:#fef6f6}html.theme--documenter-dark .message.is-danger .message-header{background-color:#9e1b0d;color:#fff}html.theme--documenter-dark .message.is-danger .message-body{border-color:#9e1b0d;color:#7a170c}html.theme--documenter-dark .message-header{align-items:center;background-color:#fff;border-radius:.4em .4em 0 0;color:rgba(0,0,0,0.7);display:flex;font-weight:700;justify-content:space-between;line-height:1.25;padding:0.75em 1em;position:relative}html.theme--documenter-dark .message-header .delete{flex-grow:0;flex-shrink:0;margin-left:0.75em}html.theme--documenter-dark .message-header+.message-body{border-width:0;border-top-left-radius:0;border-top-right-radius:0}html.theme--documenter-dark .message-body{border-color:#5e6d6f;border-radius:.4em;border-style:solid;border-width:0 0 0 4px;color:#fff;padding:1.25em 1.5em}html.theme--documenter-dark .message-body code,html.theme--documenter-dark .message-body pre{background-color:#fff}html.theme--documenter-dark .message-body pre code{background-color:rgba(0,0,0,0)}html.theme--documenter-dark .modal{align-items:center;display:none;flex-direction:column;justify-content:center;overflow:hidden;position:fixed;z-index:40}html.theme--documenter-dark .modal.is-active{display:flex}html.theme--documenter-dark .modal-background{background-color:rgba(10,10,10,0.86)}html.theme--documenter-dark .modal-content,html.theme--documenter-dark .modal-card{margin:0 20px;max-height:calc(100vh - 160px);overflow:auto;position:relative;width:100%}@media screen and (min-width: 769px),print{html.theme--documenter-dark .modal-content,html.theme--documenter-dark .modal-card{margin:0 auto;max-height:calc(100vh - 40px);width:640px}}html.theme--documenter-dark .modal-close{background:none;height:40px;position:fixed;right:20px;top:20px;width:40px}html.theme--documenter-dark .modal-card{display:flex;flex-direction:column;max-height:calc(100vh - 40px);overflow:hidden;-ms-overflow-y:visible}html.theme--documenter-dark .modal-card-head,html.theme--documenter-dark .modal-card-foot{align-items:center;background-color:#282f2f;display:flex;flex-shrink:0;justify-content:flex-start;padding:20px;position:relative}html.theme--documenter-dark .modal-card-head{border-bottom:1px solid #5e6d6f;border-top-left-radius:8px;border-top-right-radius:8px}html.theme--documenter-dark .modal-card-title{color:#f2f2f2;flex-grow:1;flex-shrink:0;font-size:1.5rem;line-height:1}html.theme--documenter-dark .modal-card-foot{border-bottom-left-radius:8px;border-bottom-right-radius:8px;border-top:1px solid #5e6d6f}html.theme--documenter-dark .modal-card-foot .button:not(:last-child){margin-right:0.5em}html.theme--documenter-dark .modal-card-body{-webkit-overflow-scrolling:touch;background-color:#fff;flex-grow:1;flex-shrink:1;overflow:auto;padding:20px}html.theme--documenter-dark .navbar{background-color:#375a7f;min-height:4rem;position:relative;z-index:30}html.theme--documenter-dark .navbar.is-white{background-color:#fff;color:#0a0a0a}html.theme--documenter-dark .navbar.is-white .navbar-brand>.navbar-item,html.theme--documenter-dark .navbar.is-white .navbar-brand .navbar-link{color:#0a0a0a}html.theme--documenter-dark .navbar.is-white .navbar-brand>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-white .navbar-brand>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-white .navbar-brand>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-white .navbar-brand .navbar-link:focus,html.theme--documenter-dark .navbar.is-white .navbar-brand .navbar-link:hover,html.theme--documenter-dark .navbar.is-white .navbar-brand .navbar-link.is-active{background-color:#f2f2f2;color:#0a0a0a}html.theme--documenter-dark .navbar.is-white .navbar-brand .navbar-link::after{border-color:#0a0a0a}html.theme--documenter-dark .navbar.is-white .navbar-burger{color:#0a0a0a}@media screen and (min-width: 1056px){html.theme--documenter-dark .navbar.is-white .navbar-start>.navbar-item,html.theme--documenter-dark .navbar.is-white .navbar-start .navbar-link,html.theme--documenter-dark .navbar.is-white .navbar-end>.navbar-item,html.theme--documenter-dark .navbar.is-white .navbar-end .navbar-link{color:#0a0a0a}html.theme--documenter-dark .navbar.is-white .navbar-start>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-white .navbar-start>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-white .navbar-start>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-white .navbar-start .navbar-link:focus,html.theme--documenter-dark .navbar.is-white .navbar-start .navbar-link:hover,html.theme--documenter-dark .navbar.is-white .navbar-start .navbar-link.is-active,html.theme--documenter-dark .navbar.is-white .navbar-end>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-white .navbar-end>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-white .navbar-end>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-white .navbar-end .navbar-link:focus,html.theme--documenter-dark .navbar.is-white .navbar-end .navbar-link:hover,html.theme--documenter-dark .navbar.is-white .navbar-end .navbar-link.is-active{background-color:#f2f2f2;color:#0a0a0a}html.theme--documenter-dark .navbar.is-white .navbar-start .navbar-link::after,html.theme--documenter-dark .navbar.is-white .navbar-end .navbar-link::after{border-color:#0a0a0a}html.theme--documenter-dark .navbar.is-white .navbar-item.has-dropdown:focus .navbar-link,html.theme--documenter-dark .navbar.is-white .navbar-item.has-dropdown:hover .navbar-link,html.theme--documenter-dark .navbar.is-white .navbar-item.has-dropdown.is-active .navbar-link{background-color:#f2f2f2;color:#0a0a0a}html.theme--documenter-dark .navbar.is-white .navbar-dropdown a.navbar-item.is-active{background-color:#fff;color:#0a0a0a}}html.theme--documenter-dark .navbar.is-black{background-color:#0a0a0a;color:#fff}html.theme--documenter-dark .navbar.is-black .navbar-brand>.navbar-item,html.theme--documenter-dark .navbar.is-black .navbar-brand .navbar-link{color:#fff}html.theme--documenter-dark .navbar.is-black .navbar-brand>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-black .navbar-brand>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-black .navbar-brand>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-black .navbar-brand .navbar-link:focus,html.theme--documenter-dark .navbar.is-black .navbar-brand .navbar-link:hover,html.theme--documenter-dark .navbar.is-black .navbar-brand .navbar-link.is-active{background-color:#000;color:#fff}html.theme--documenter-dark .navbar.is-black .navbar-brand .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-black .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--documenter-dark .navbar.is-black .navbar-start>.navbar-item,html.theme--documenter-dark .navbar.is-black .navbar-start .navbar-link,html.theme--documenter-dark .navbar.is-black .navbar-end>.navbar-item,html.theme--documenter-dark .navbar.is-black .navbar-end .navbar-link{color:#fff}html.theme--documenter-dark .navbar.is-black .navbar-start>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-black .navbar-start>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-black .navbar-start>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-black .navbar-start .navbar-link:focus,html.theme--documenter-dark .navbar.is-black .navbar-start .navbar-link:hover,html.theme--documenter-dark .navbar.is-black .navbar-start .navbar-link.is-active,html.theme--documenter-dark .navbar.is-black .navbar-end>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-black .navbar-end>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-black .navbar-end>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-black .navbar-end .navbar-link:focus,html.theme--documenter-dark .navbar.is-black .navbar-end .navbar-link:hover,html.theme--documenter-dark .navbar.is-black .navbar-end .navbar-link.is-active{background-color:#000;color:#fff}html.theme--documenter-dark .navbar.is-black .navbar-start .navbar-link::after,html.theme--documenter-dark .navbar.is-black .navbar-end .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-black .navbar-item.has-dropdown:focus .navbar-link,html.theme--documenter-dark .navbar.is-black .navbar-item.has-dropdown:hover .navbar-link,html.theme--documenter-dark .navbar.is-black .navbar-item.has-dropdown.is-active .navbar-link{background-color:#000;color:#fff}html.theme--documenter-dark .navbar.is-black .navbar-dropdown a.navbar-item.is-active{background-color:#0a0a0a;color:#fff}}html.theme--documenter-dark .navbar.is-light{background-color:#ecf0f1;color:#282f2f}html.theme--documenter-dark .navbar.is-light .navbar-brand>.navbar-item,html.theme--documenter-dark .navbar.is-light .navbar-brand .navbar-link{color:#282f2f}html.theme--documenter-dark .navbar.is-light .navbar-brand>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-light .navbar-brand>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-light .navbar-brand>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-light .navbar-brand .navbar-link:focus,html.theme--documenter-dark .navbar.is-light .navbar-brand .navbar-link:hover,html.theme--documenter-dark .navbar.is-light .navbar-brand .navbar-link.is-active{background-color:#dde4e6;color:#282f2f}html.theme--documenter-dark .navbar.is-light .navbar-brand .navbar-link::after{border-color:#282f2f}html.theme--documenter-dark .navbar.is-light .navbar-burger{color:#282f2f}@media screen and (min-width: 1056px){html.theme--documenter-dark .navbar.is-light .navbar-start>.navbar-item,html.theme--documenter-dark .navbar.is-light .navbar-start .navbar-link,html.theme--documenter-dark .navbar.is-light .navbar-end>.navbar-item,html.theme--documenter-dark .navbar.is-light .navbar-end .navbar-link{color:#282f2f}html.theme--documenter-dark .navbar.is-light .navbar-start>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-light .navbar-start>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-light .navbar-start>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-light .navbar-start .navbar-link:focus,html.theme--documenter-dark .navbar.is-light .navbar-start .navbar-link:hover,html.theme--documenter-dark .navbar.is-light .navbar-start .navbar-link.is-active,html.theme--documenter-dark .navbar.is-light .navbar-end>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-light .navbar-end>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-light .navbar-end>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-light .navbar-end .navbar-link:focus,html.theme--documenter-dark .navbar.is-light .navbar-end .navbar-link:hover,html.theme--documenter-dark .navbar.is-light .navbar-end .navbar-link.is-active{background-color:#dde4e6;color:#282f2f}html.theme--documenter-dark .navbar.is-light .navbar-start .navbar-link::after,html.theme--documenter-dark .navbar.is-light .navbar-end .navbar-link::after{border-color:#282f2f}html.theme--documenter-dark .navbar.is-light .navbar-item.has-dropdown:focus .navbar-link,html.theme--documenter-dark .navbar.is-light .navbar-item.has-dropdown:hover .navbar-link,html.theme--documenter-dark .navbar.is-light .navbar-item.has-dropdown.is-active .navbar-link{background-color:#dde4e6;color:#282f2f}html.theme--documenter-dark .navbar.is-light .navbar-dropdown a.navbar-item.is-active{background-color:#ecf0f1;color:#282f2f}}html.theme--documenter-dark .navbar.is-dark,html.theme--documenter-dark .content kbd.navbar{background-color:#282f2f;color:#ecf0f1}html.theme--documenter-dark .navbar.is-dark .navbar-brand>.navbar-item,html.theme--documenter-dark .content kbd.navbar .navbar-brand>.navbar-item,html.theme--documenter-dark .navbar.is-dark .navbar-brand .navbar-link,html.theme--documenter-dark .content kbd.navbar .navbar-brand .navbar-link{color:#ecf0f1}html.theme--documenter-dark .navbar.is-dark .navbar-brand>a.navbar-item:focus,html.theme--documenter-dark .content kbd.navbar .navbar-brand>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-dark .navbar-brand>a.navbar-item:hover,html.theme--documenter-dark .content kbd.navbar .navbar-brand>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-dark .navbar-brand>a.navbar-item.is-active,html.theme--documenter-dark .content kbd.navbar .navbar-brand>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-dark .navbar-brand .navbar-link:focus,html.theme--documenter-dark .content kbd.navbar .navbar-brand .navbar-link:focus,html.theme--documenter-dark .navbar.is-dark .navbar-brand .navbar-link:hover,html.theme--documenter-dark .content kbd.navbar .navbar-brand .navbar-link:hover,html.theme--documenter-dark .navbar.is-dark .navbar-brand .navbar-link.is-active,html.theme--documenter-dark .content kbd.navbar .navbar-brand .navbar-link.is-active{background-color:#1d2122;color:#ecf0f1}html.theme--documenter-dark .navbar.is-dark .navbar-brand .navbar-link::after,html.theme--documenter-dark .content kbd.navbar .navbar-brand .navbar-link::after{border-color:#ecf0f1}html.theme--documenter-dark .navbar.is-dark .navbar-burger,html.theme--documenter-dark .content kbd.navbar .navbar-burger{color:#ecf0f1}@media screen and (min-width: 1056px){html.theme--documenter-dark .navbar.is-dark .navbar-start>.navbar-item,html.theme--documenter-dark .content kbd.navbar .navbar-start>.navbar-item,html.theme--documenter-dark .navbar.is-dark .navbar-start .navbar-link,html.theme--documenter-dark .content kbd.navbar .navbar-start .navbar-link,html.theme--documenter-dark .navbar.is-dark .navbar-end>.navbar-item,html.theme--documenter-dark .content kbd.navbar .navbar-end>.navbar-item,html.theme--documenter-dark .navbar.is-dark .navbar-end .navbar-link,html.theme--documenter-dark .content kbd.navbar .navbar-end .navbar-link{color:#ecf0f1}html.theme--documenter-dark .navbar.is-dark .navbar-start>a.navbar-item:focus,html.theme--documenter-dark .content kbd.navbar .navbar-start>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-dark .navbar-start>a.navbar-item:hover,html.theme--documenter-dark .content kbd.navbar .navbar-start>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-dark .navbar-start>a.navbar-item.is-active,html.theme--documenter-dark .content kbd.navbar .navbar-start>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-dark .navbar-start .navbar-link:focus,html.theme--documenter-dark .content kbd.navbar .navbar-start .navbar-link:focus,html.theme--documenter-dark .navbar.is-dark .navbar-start .navbar-link:hover,html.theme--documenter-dark .content kbd.navbar .navbar-start .navbar-link:hover,html.theme--documenter-dark .navbar.is-dark .navbar-start .navbar-link.is-active,html.theme--documenter-dark .content kbd.navbar .navbar-start .navbar-link.is-active,html.theme--documenter-dark .navbar.is-dark .navbar-end>a.navbar-item:focus,html.theme--documenter-dark .content kbd.navbar .navbar-end>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-dark .navbar-end>a.navbar-item:hover,html.theme--documenter-dark .content kbd.navbar .navbar-end>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-dark .navbar-end>a.navbar-item.is-active,html.theme--documenter-dark .content kbd.navbar .navbar-end>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-dark .navbar-end .navbar-link:focus,html.theme--documenter-dark .content kbd.navbar .navbar-end .navbar-link:focus,html.theme--documenter-dark .navbar.is-dark .navbar-end .navbar-link:hover,html.theme--documenter-dark .content kbd.navbar .navbar-end .navbar-link:hover,html.theme--documenter-dark .navbar.is-dark .navbar-end .navbar-link.is-active,html.theme--documenter-dark .content kbd.navbar .navbar-end .navbar-link.is-active{background-color:#1d2122;color:#ecf0f1}html.theme--documenter-dark .navbar.is-dark .navbar-start .navbar-link::after,html.theme--documenter-dark .content kbd.navbar .navbar-start .navbar-link::after,html.theme--documenter-dark .navbar.is-dark .navbar-end .navbar-link::after,html.theme--documenter-dark .content kbd.navbar .navbar-end .navbar-link::after{border-color:#ecf0f1}html.theme--documenter-dark .navbar.is-dark .navbar-item.has-dropdown:focus .navbar-link,html.theme--documenter-dark .content kbd.navbar .navbar-item.has-dropdown:focus .navbar-link,html.theme--documenter-dark .navbar.is-dark .navbar-item.has-dropdown:hover .navbar-link,html.theme--documenter-dark .content kbd.navbar .navbar-item.has-dropdown:hover .navbar-link,html.theme--documenter-dark .navbar.is-dark .navbar-item.has-dropdown.is-active .navbar-link,html.theme--documenter-dark .content kbd.navbar .navbar-item.has-dropdown.is-active .navbar-link{background-color:#1d2122;color:#ecf0f1}html.theme--documenter-dark .navbar.is-dark .navbar-dropdown a.navbar-item.is-active,html.theme--documenter-dark .content kbd.navbar .navbar-dropdown a.navbar-item.is-active{background-color:#282f2f;color:#ecf0f1}}html.theme--documenter-dark .navbar.is-primary,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink{background-color:#375a7f;color:#fff}html.theme--documenter-dark .navbar.is-primary .navbar-brand>.navbar-item,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-brand>.navbar-item,html.theme--documenter-dark .navbar.is-primary .navbar-brand .navbar-link,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link{color:#fff}html.theme--documenter-dark .navbar.is-primary .navbar-brand>a.navbar-item:focus,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-brand>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-primary .navbar-brand>a.navbar-item:hover,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-brand>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-primary .navbar-brand>a.navbar-item.is-active,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-brand>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-primary .navbar-brand .navbar-link:focus,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link:focus,html.theme--documenter-dark .navbar.is-primary .navbar-brand .navbar-link:hover,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link:hover,html.theme--documenter-dark .navbar.is-primary .navbar-brand .navbar-link.is-active,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link.is-active{background-color:#2f4d6d;color:#fff}html.theme--documenter-dark .navbar.is-primary .navbar-brand .navbar-link::after,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-primary .navbar-burger,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--documenter-dark .navbar.is-primary .navbar-start>.navbar-item,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-start>.navbar-item,html.theme--documenter-dark .navbar.is-primary .navbar-start .navbar-link,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link,html.theme--documenter-dark .navbar.is-primary .navbar-end>.navbar-item,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-end>.navbar-item,html.theme--documenter-dark .navbar.is-primary .navbar-end .navbar-link,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link{color:#fff}html.theme--documenter-dark .navbar.is-primary .navbar-start>a.navbar-item:focus,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-start>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-primary .navbar-start>a.navbar-item:hover,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-start>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-primary .navbar-start>a.navbar-item.is-active,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-start>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-primary .navbar-start .navbar-link:focus,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link:focus,html.theme--documenter-dark .navbar.is-primary .navbar-start .navbar-link:hover,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link:hover,html.theme--documenter-dark .navbar.is-primary .navbar-start .navbar-link.is-active,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link.is-active,html.theme--documenter-dark .navbar.is-primary .navbar-end>a.navbar-item:focus,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-end>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-primary .navbar-end>a.navbar-item:hover,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-end>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-primary .navbar-end>a.navbar-item.is-active,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-end>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-primary .navbar-end .navbar-link:focus,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link:focus,html.theme--documenter-dark .navbar.is-primary .navbar-end .navbar-link:hover,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link:hover,html.theme--documenter-dark .navbar.is-primary .navbar-end .navbar-link.is-active,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link.is-active{background-color:#2f4d6d;color:#fff}html.theme--documenter-dark .navbar.is-primary .navbar-start .navbar-link::after,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link::after,html.theme--documenter-dark .navbar.is-primary .navbar-end .navbar-link::after,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-primary .navbar-item.has-dropdown:focus .navbar-link,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-item.has-dropdown:focus .navbar-link,html.theme--documenter-dark .navbar.is-primary .navbar-item.has-dropdown:hover .navbar-link,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-item.has-dropdown:hover .navbar-link,html.theme--documenter-dark .navbar.is-primary .navbar-item.has-dropdown.is-active .navbar-link,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-item.has-dropdown.is-active .navbar-link{background-color:#2f4d6d;color:#fff}html.theme--documenter-dark .navbar.is-primary .navbar-dropdown a.navbar-item.is-active,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-dropdown a.navbar-item.is-active{background-color:#375a7f;color:#fff}}html.theme--documenter-dark .navbar.is-link{background-color:#1abc9c;color:#fff}html.theme--documenter-dark .navbar.is-link .navbar-brand>.navbar-item,html.theme--documenter-dark .navbar.is-link .navbar-brand .navbar-link{color:#fff}html.theme--documenter-dark .navbar.is-link .navbar-brand>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-link .navbar-brand>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-link .navbar-brand>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-link .navbar-brand .navbar-link:focus,html.theme--documenter-dark .navbar.is-link .navbar-brand .navbar-link:hover,html.theme--documenter-dark .navbar.is-link .navbar-brand .navbar-link.is-active{background-color:#17a689;color:#fff}html.theme--documenter-dark .navbar.is-link .navbar-brand .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-link .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--documenter-dark .navbar.is-link .navbar-start>.navbar-item,html.theme--documenter-dark .navbar.is-link .navbar-start .navbar-link,html.theme--documenter-dark .navbar.is-link .navbar-end>.navbar-item,html.theme--documenter-dark .navbar.is-link .navbar-end .navbar-link{color:#fff}html.theme--documenter-dark .navbar.is-link .navbar-start>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-link .navbar-start>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-link .navbar-start>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-link .navbar-start .navbar-link:focus,html.theme--documenter-dark .navbar.is-link .navbar-start .navbar-link:hover,html.theme--documenter-dark .navbar.is-link .navbar-start .navbar-link.is-active,html.theme--documenter-dark .navbar.is-link .navbar-end>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-link .navbar-end>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-link .navbar-end>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-link .navbar-end .navbar-link:focus,html.theme--documenter-dark .navbar.is-link .navbar-end .navbar-link:hover,html.theme--documenter-dark .navbar.is-link .navbar-end .navbar-link.is-active{background-color:#17a689;color:#fff}html.theme--documenter-dark .navbar.is-link .navbar-start .navbar-link::after,html.theme--documenter-dark .navbar.is-link .navbar-end .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-link .navbar-item.has-dropdown:focus .navbar-link,html.theme--documenter-dark .navbar.is-link .navbar-item.has-dropdown:hover .navbar-link,html.theme--documenter-dark .navbar.is-link .navbar-item.has-dropdown.is-active .navbar-link{background-color:#17a689;color:#fff}html.theme--documenter-dark .navbar.is-link .navbar-dropdown a.navbar-item.is-active{background-color:#1abc9c;color:#fff}}html.theme--documenter-dark .navbar.is-info{background-color:#024c7d;color:#fff}html.theme--documenter-dark .navbar.is-info .navbar-brand>.navbar-item,html.theme--documenter-dark .navbar.is-info .navbar-brand .navbar-link{color:#fff}html.theme--documenter-dark .navbar.is-info .navbar-brand>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-info .navbar-brand>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-info .navbar-brand>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-info .navbar-brand .navbar-link:focus,html.theme--documenter-dark .navbar.is-info .navbar-brand .navbar-link:hover,html.theme--documenter-dark .navbar.is-info .navbar-brand .navbar-link.is-active{background-color:#023d64;color:#fff}html.theme--documenter-dark .navbar.is-info .navbar-brand .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-info .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--documenter-dark .navbar.is-info .navbar-start>.navbar-item,html.theme--documenter-dark .navbar.is-info .navbar-start .navbar-link,html.theme--documenter-dark .navbar.is-info .navbar-end>.navbar-item,html.theme--documenter-dark .navbar.is-info .navbar-end .navbar-link{color:#fff}html.theme--documenter-dark .navbar.is-info .navbar-start>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-info .navbar-start>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-info .navbar-start>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-info .navbar-start .navbar-link:focus,html.theme--documenter-dark .navbar.is-info .navbar-start .navbar-link:hover,html.theme--documenter-dark .navbar.is-info .navbar-start .navbar-link.is-active,html.theme--documenter-dark .navbar.is-info .navbar-end>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-info .navbar-end>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-info .navbar-end>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-info .navbar-end .navbar-link:focus,html.theme--documenter-dark .navbar.is-info .navbar-end .navbar-link:hover,html.theme--documenter-dark .navbar.is-info .navbar-end .navbar-link.is-active{background-color:#023d64;color:#fff}html.theme--documenter-dark .navbar.is-info .navbar-start .navbar-link::after,html.theme--documenter-dark .navbar.is-info .navbar-end .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-info .navbar-item.has-dropdown:focus .navbar-link,html.theme--documenter-dark .navbar.is-info .navbar-item.has-dropdown:hover .navbar-link,html.theme--documenter-dark .navbar.is-info .navbar-item.has-dropdown.is-active .navbar-link{background-color:#023d64;color:#fff}html.theme--documenter-dark .navbar.is-info .navbar-dropdown a.navbar-item.is-active{background-color:#024c7d;color:#fff}}html.theme--documenter-dark .navbar.is-success{background-color:#008438;color:#fff}html.theme--documenter-dark .navbar.is-success .navbar-brand>.navbar-item,html.theme--documenter-dark .navbar.is-success .navbar-brand .navbar-link{color:#fff}html.theme--documenter-dark .navbar.is-success .navbar-brand>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-success .navbar-brand>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-success .navbar-brand>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-success .navbar-brand .navbar-link:focus,html.theme--documenter-dark .navbar.is-success .navbar-brand .navbar-link:hover,html.theme--documenter-dark .navbar.is-success .navbar-brand .navbar-link.is-active{background-color:#006b2d;color:#fff}html.theme--documenter-dark .navbar.is-success .navbar-brand .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-success .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--documenter-dark .navbar.is-success .navbar-start>.navbar-item,html.theme--documenter-dark .navbar.is-success .navbar-start .navbar-link,html.theme--documenter-dark .navbar.is-success .navbar-end>.navbar-item,html.theme--documenter-dark .navbar.is-success .navbar-end .navbar-link{color:#fff}html.theme--documenter-dark .navbar.is-success .navbar-start>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-success .navbar-start>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-success .navbar-start>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-success .navbar-start .navbar-link:focus,html.theme--documenter-dark .navbar.is-success .navbar-start .navbar-link:hover,html.theme--documenter-dark .navbar.is-success .navbar-start .navbar-link.is-active,html.theme--documenter-dark .navbar.is-success .navbar-end>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-success .navbar-end>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-success .navbar-end>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-success .navbar-end .navbar-link:focus,html.theme--documenter-dark .navbar.is-success .navbar-end .navbar-link:hover,html.theme--documenter-dark .navbar.is-success .navbar-end .navbar-link.is-active{background-color:#006b2d;color:#fff}html.theme--documenter-dark .navbar.is-success .navbar-start .navbar-link::after,html.theme--documenter-dark .navbar.is-success .navbar-end .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-success .navbar-item.has-dropdown:focus .navbar-link,html.theme--documenter-dark .navbar.is-success .navbar-item.has-dropdown:hover .navbar-link,html.theme--documenter-dark .navbar.is-success .navbar-item.has-dropdown.is-active .navbar-link{background-color:#006b2d;color:#fff}html.theme--documenter-dark .navbar.is-success .navbar-dropdown a.navbar-item.is-active{background-color:#008438;color:#fff}}html.theme--documenter-dark .navbar.is-warning{background-color:#ad8100;color:#fff}html.theme--documenter-dark .navbar.is-warning .navbar-brand>.navbar-item,html.theme--documenter-dark .navbar.is-warning .navbar-brand .navbar-link{color:#fff}html.theme--documenter-dark .navbar.is-warning .navbar-brand>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-warning .navbar-brand>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-warning .navbar-brand>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-warning .navbar-brand .navbar-link:focus,html.theme--documenter-dark .navbar.is-warning .navbar-brand .navbar-link:hover,html.theme--documenter-dark .navbar.is-warning .navbar-brand .navbar-link.is-active{background-color:#946e00;color:#fff}html.theme--documenter-dark .navbar.is-warning .navbar-brand .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-warning .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--documenter-dark .navbar.is-warning .navbar-start>.navbar-item,html.theme--documenter-dark .navbar.is-warning .navbar-start .navbar-link,html.theme--documenter-dark .navbar.is-warning .navbar-end>.navbar-item,html.theme--documenter-dark .navbar.is-warning .navbar-end .navbar-link{color:#fff}html.theme--documenter-dark .navbar.is-warning .navbar-start>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-warning .navbar-start>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-warning .navbar-start>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-warning .navbar-start .navbar-link:focus,html.theme--documenter-dark .navbar.is-warning .navbar-start .navbar-link:hover,html.theme--documenter-dark .navbar.is-warning .navbar-start .navbar-link.is-active,html.theme--documenter-dark .navbar.is-warning .navbar-end>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-warning .navbar-end>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-warning .navbar-end>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-warning .navbar-end .navbar-link:focus,html.theme--documenter-dark .navbar.is-warning .navbar-end .navbar-link:hover,html.theme--documenter-dark .navbar.is-warning .navbar-end .navbar-link.is-active{background-color:#946e00;color:#fff}html.theme--documenter-dark .navbar.is-warning .navbar-start .navbar-link::after,html.theme--documenter-dark .navbar.is-warning .navbar-end .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-warning .navbar-item.has-dropdown:focus .navbar-link,html.theme--documenter-dark .navbar.is-warning .navbar-item.has-dropdown:hover .navbar-link,html.theme--documenter-dark .navbar.is-warning .navbar-item.has-dropdown.is-active .navbar-link{background-color:#946e00;color:#fff}html.theme--documenter-dark .navbar.is-warning .navbar-dropdown a.navbar-item.is-active{background-color:#ad8100;color:#fff}}html.theme--documenter-dark .navbar.is-danger{background-color:#9e1b0d;color:#fff}html.theme--documenter-dark .navbar.is-danger .navbar-brand>.navbar-item,html.theme--documenter-dark .navbar.is-danger .navbar-brand .navbar-link{color:#fff}html.theme--documenter-dark .navbar.is-danger .navbar-brand>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-danger .navbar-brand>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-danger .navbar-brand>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-danger .navbar-brand .navbar-link:focus,html.theme--documenter-dark .navbar.is-danger .navbar-brand .navbar-link:hover,html.theme--documenter-dark .navbar.is-danger .navbar-brand .navbar-link.is-active{background-color:#86170b;color:#fff}html.theme--documenter-dark .navbar.is-danger .navbar-brand .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-danger .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--documenter-dark .navbar.is-danger .navbar-start>.navbar-item,html.theme--documenter-dark .navbar.is-danger .navbar-start .navbar-link,html.theme--documenter-dark .navbar.is-danger .navbar-end>.navbar-item,html.theme--documenter-dark .navbar.is-danger .navbar-end .navbar-link{color:#fff}html.theme--documenter-dark .navbar.is-danger .navbar-start>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-danger .navbar-start>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-danger .navbar-start>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-danger .navbar-start .navbar-link:focus,html.theme--documenter-dark .navbar.is-danger .navbar-start .navbar-link:hover,html.theme--documenter-dark .navbar.is-danger .navbar-start .navbar-link.is-active,html.theme--documenter-dark .navbar.is-danger .navbar-end>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-danger .navbar-end>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-danger .navbar-end>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-danger .navbar-end .navbar-link:focus,html.theme--documenter-dark .navbar.is-danger .navbar-end .navbar-link:hover,html.theme--documenter-dark .navbar.is-danger .navbar-end .navbar-link.is-active{background-color:#86170b;color:#fff}html.theme--documenter-dark .navbar.is-danger .navbar-start .navbar-link::after,html.theme--documenter-dark .navbar.is-danger .navbar-end .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-danger .navbar-item.has-dropdown:focus .navbar-link,html.theme--documenter-dark .navbar.is-danger .navbar-item.has-dropdown:hover .navbar-link,html.theme--documenter-dark .navbar.is-danger .navbar-item.has-dropdown.is-active .navbar-link{background-color:#86170b;color:#fff}html.theme--documenter-dark .navbar.is-danger .navbar-dropdown a.navbar-item.is-active{background-color:#9e1b0d;color:#fff}}html.theme--documenter-dark .navbar>.container{align-items:stretch;display:flex;min-height:4rem;width:100%}html.theme--documenter-dark .navbar.has-shadow{box-shadow:0 2px 0 0 #282f2f}html.theme--documenter-dark .navbar.is-fixed-bottom,html.theme--documenter-dark .navbar.is-fixed-top{left:0;position:fixed;right:0;z-index:30}html.theme--documenter-dark .navbar.is-fixed-bottom{bottom:0}html.theme--documenter-dark .navbar.is-fixed-bottom.has-shadow{box-shadow:0 -2px 0 0 #282f2f}html.theme--documenter-dark .navbar.is-fixed-top{top:0}html.theme--documenter-dark html.has-navbar-fixed-top,html.theme--documenter-dark body.has-navbar-fixed-top{padding-top:4rem}html.theme--documenter-dark html.has-navbar-fixed-bottom,html.theme--documenter-dark body.has-navbar-fixed-bottom{padding-bottom:4rem}html.theme--documenter-dark .navbar-brand,html.theme--documenter-dark .navbar-tabs{align-items:stretch;display:flex;flex-shrink:0;min-height:4rem}html.theme--documenter-dark .navbar-brand a.navbar-item:focus,html.theme--documenter-dark .navbar-brand a.navbar-item:hover{background-color:transparent}html.theme--documenter-dark .navbar-tabs{-webkit-overflow-scrolling:touch;max-width:100vw;overflow-x:auto;overflow-y:hidden}html.theme--documenter-dark .navbar-burger{color:#fff;cursor:pointer;display:block;height:4rem;position:relative;width:4rem;margin-left:auto}html.theme--documenter-dark .navbar-burger span{background-color:currentColor;display:block;height:1px;left:calc(50% - 8px);position:absolute;transform-origin:center;transition-duration:86ms;transition-property:background-color, opacity, transform;transition-timing-function:ease-out;width:16px}html.theme--documenter-dark .navbar-burger span:nth-child(1){top:calc(50% - 6px)}html.theme--documenter-dark .navbar-burger span:nth-child(2){top:calc(50% - 1px)}html.theme--documenter-dark .navbar-burger span:nth-child(3){top:calc(50% + 4px)}html.theme--documenter-dark .navbar-burger:hover{background-color:rgba(0,0,0,0.05)}html.theme--documenter-dark .navbar-burger.is-active span:nth-child(1){transform:translateY(5px) rotate(45deg)}html.theme--documenter-dark .navbar-burger.is-active span:nth-child(2){opacity:0}html.theme--documenter-dark .navbar-burger.is-active span:nth-child(3){transform:translateY(-5px) rotate(-45deg)}html.theme--documenter-dark .navbar-menu{display:none}html.theme--documenter-dark .navbar-item,html.theme--documenter-dark .navbar-link{color:#fff;display:block;line-height:1.5;padding:0.5rem 0.75rem;position:relative}html.theme--documenter-dark .navbar-item .icon:only-child,html.theme--documenter-dark .navbar-link .icon:only-child{margin-left:-0.25rem;margin-right:-0.25rem}html.theme--documenter-dark a.navbar-item,html.theme--documenter-dark .navbar-link{cursor:pointer}html.theme--documenter-dark a.navbar-item:focus,html.theme--documenter-dark a.navbar-item:focus-within,html.theme--documenter-dark a.navbar-item:hover,html.theme--documenter-dark a.navbar-item.is-active,html.theme--documenter-dark .navbar-link:focus,html.theme--documenter-dark .navbar-link:focus-within,html.theme--documenter-dark .navbar-link:hover,html.theme--documenter-dark .navbar-link.is-active{background-color:rgba(0,0,0,0);color:#1abc9c}html.theme--documenter-dark .navbar-item{display:block;flex-grow:0;flex-shrink:0}html.theme--documenter-dark .navbar-item img{max-height:1.75rem}html.theme--documenter-dark .navbar-item.has-dropdown{padding:0}html.theme--documenter-dark .navbar-item.is-expanded{flex-grow:1;flex-shrink:1}html.theme--documenter-dark .navbar-item.is-tab{border-bottom:1px solid transparent;min-height:4rem;padding-bottom:calc(0.5rem - 1px)}html.theme--documenter-dark .navbar-item.is-tab:focus,html.theme--documenter-dark .navbar-item.is-tab:hover{background-color:rgba(0,0,0,0);border-bottom-color:#1abc9c}html.theme--documenter-dark .navbar-item.is-tab.is-active{background-color:rgba(0,0,0,0);border-bottom-color:#1abc9c;border-bottom-style:solid;border-bottom-width:3px;color:#1abc9c;padding-bottom:calc(0.5rem - 3px)}html.theme--documenter-dark .navbar-content{flex-grow:1;flex-shrink:1}html.theme--documenter-dark .navbar-link:not(.is-arrowless){padding-right:2.5em}html.theme--documenter-dark .navbar-link:not(.is-arrowless)::after{border-color:#fff;margin-top:-0.375em;right:1.125em}html.theme--documenter-dark .navbar-dropdown{font-size:0.875rem;padding-bottom:0.5rem;padding-top:0.5rem}html.theme--documenter-dark .navbar-dropdown .navbar-item{padding-left:1.5rem;padding-right:1.5rem}html.theme--documenter-dark .navbar-divider{background-color:rgba(0,0,0,0.2);border:none;display:none;height:2px;margin:0.5rem 0}@media screen and (max-width: 1055px){html.theme--documenter-dark .navbar>.container{display:block}html.theme--documenter-dark .navbar-brand .navbar-item,html.theme--documenter-dark .navbar-tabs .navbar-item{align-items:center;display:flex}html.theme--documenter-dark .navbar-link::after{display:none}html.theme--documenter-dark .navbar-menu{background-color:#375a7f;box-shadow:0 8px 16px rgba(10,10,10,0.1);padding:0.5rem 0}html.theme--documenter-dark .navbar-menu.is-active{display:block}html.theme--documenter-dark .navbar.is-fixed-bottom-touch,html.theme--documenter-dark .navbar.is-fixed-top-touch{left:0;position:fixed;right:0;z-index:30}html.theme--documenter-dark .navbar.is-fixed-bottom-touch{bottom:0}html.theme--documenter-dark .navbar.is-fixed-bottom-touch.has-shadow{box-shadow:0 -2px 3px rgba(10,10,10,0.1)}html.theme--documenter-dark .navbar.is-fixed-top-touch{top:0}html.theme--documenter-dark .navbar.is-fixed-top .navbar-menu,html.theme--documenter-dark .navbar.is-fixed-top-touch .navbar-menu{-webkit-overflow-scrolling:touch;max-height:calc(100vh - 4rem);overflow:auto}html.theme--documenter-dark html.has-navbar-fixed-top-touch,html.theme--documenter-dark body.has-navbar-fixed-top-touch{padding-top:4rem}html.theme--documenter-dark html.has-navbar-fixed-bottom-touch,html.theme--documenter-dark body.has-navbar-fixed-bottom-touch{padding-bottom:4rem}}@media screen and (min-width: 1056px){html.theme--documenter-dark .navbar,html.theme--documenter-dark .navbar-menu,html.theme--documenter-dark .navbar-start,html.theme--documenter-dark .navbar-end{align-items:stretch;display:flex}html.theme--documenter-dark .navbar{min-height:4rem}html.theme--documenter-dark .navbar.is-spaced{padding:1rem 2rem}html.theme--documenter-dark .navbar.is-spaced .navbar-start,html.theme--documenter-dark .navbar.is-spaced .navbar-end{align-items:center}html.theme--documenter-dark .navbar.is-spaced a.navbar-item,html.theme--documenter-dark .navbar.is-spaced .navbar-link{border-radius:.4em}html.theme--documenter-dark .navbar.is-transparent a.navbar-item:focus,html.theme--documenter-dark .navbar.is-transparent a.navbar-item:hover,html.theme--documenter-dark .navbar.is-transparent a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-transparent .navbar-link:focus,html.theme--documenter-dark .navbar.is-transparent .navbar-link:hover,html.theme--documenter-dark .navbar.is-transparent .navbar-link.is-active{background-color:transparent !important}html.theme--documenter-dark .navbar.is-transparent .navbar-item.has-dropdown.is-active .navbar-link,html.theme--documenter-dark .navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:focus .navbar-link,html.theme--documenter-dark .navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:focus-within .navbar-link,html.theme--documenter-dark .navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:hover .navbar-link{background-color:transparent !important}html.theme--documenter-dark .navbar.is-transparent .navbar-dropdown a.navbar-item:focus,html.theme--documenter-dark .navbar.is-transparent .navbar-dropdown a.navbar-item:hover{background-color:rgba(0,0,0,0);color:#dbdee0}html.theme--documenter-dark .navbar.is-transparent .navbar-dropdown a.navbar-item.is-active{background-color:rgba(0,0,0,0);color:#1abc9c}html.theme--documenter-dark .navbar-burger{display:none}html.theme--documenter-dark .navbar-item,html.theme--documenter-dark .navbar-link{align-items:center;display:flex}html.theme--documenter-dark .navbar-item{display:flex}html.theme--documenter-dark .navbar-item.has-dropdown{align-items:stretch}html.theme--documenter-dark .navbar-item.has-dropdown-up .navbar-link::after{transform:rotate(135deg) translate(0.25em, -0.25em)}html.theme--documenter-dark .navbar-item.has-dropdown-up .navbar-dropdown{border-bottom:1px solid rgba(0,0,0,0.2);border-radius:8px 8px 0 0;border-top:none;bottom:100%;box-shadow:0 -8px 8px rgba(10,10,10,0.1);top:auto}html.theme--documenter-dark .navbar-item.is-active .navbar-dropdown,html.theme--documenter-dark .navbar-item.is-hoverable:focus .navbar-dropdown,html.theme--documenter-dark .navbar-item.is-hoverable:focus-within .navbar-dropdown,html.theme--documenter-dark .navbar-item.is-hoverable:hover .navbar-dropdown{display:block}.navbar.is-spaced html.theme--documenter-dark .navbar-item.is-active .navbar-dropdown,html.theme--documenter-dark .navbar-item.is-active .navbar-dropdown.is-boxed,.navbar.is-spaced html.theme--documenter-dark .navbar-item.is-hoverable:focus .navbar-dropdown,html.theme--documenter-dark .navbar-item.is-hoverable:focus .navbar-dropdown.is-boxed,.navbar.is-spaced html.theme--documenter-dark .navbar-item.is-hoverable:focus-within .navbar-dropdown,html.theme--documenter-dark .navbar-item.is-hoverable:focus-within .navbar-dropdown.is-boxed,.navbar.is-spaced html.theme--documenter-dark .navbar-item.is-hoverable:hover .navbar-dropdown,html.theme--documenter-dark .navbar-item.is-hoverable:hover .navbar-dropdown.is-boxed{opacity:1;pointer-events:auto;transform:translateY(0)}html.theme--documenter-dark .navbar-menu{flex-grow:1;flex-shrink:0}html.theme--documenter-dark .navbar-start{justify-content:flex-start;margin-right:auto}html.theme--documenter-dark .navbar-end{justify-content:flex-end;margin-left:auto}html.theme--documenter-dark .navbar-dropdown{background-color:#375a7f;border-bottom-left-radius:8px;border-bottom-right-radius:8px;border-top:1px solid rgba(0,0,0,0.2);box-shadow:0 8px 8px rgba(10,10,10,0.1);display:none;font-size:0.875rem;left:0;min-width:100%;position:absolute;top:100%;z-index:20}html.theme--documenter-dark .navbar-dropdown .navbar-item{padding:0.375rem 1rem;white-space:nowrap}html.theme--documenter-dark .navbar-dropdown a.navbar-item{padding-right:3rem}html.theme--documenter-dark .navbar-dropdown a.navbar-item:focus,html.theme--documenter-dark .navbar-dropdown a.navbar-item:hover{background-color:rgba(0,0,0,0);color:#dbdee0}html.theme--documenter-dark .navbar-dropdown a.navbar-item.is-active{background-color:rgba(0,0,0,0);color:#1abc9c}.navbar.is-spaced html.theme--documenter-dark .navbar-dropdown,html.theme--documenter-dark .navbar-dropdown.is-boxed{border-radius:8px;border-top:none;box-shadow:0 8px 8px rgba(10,10,10,0.1), 0 0 0 1px rgba(10,10,10,0.1);display:block;opacity:0;pointer-events:none;top:calc(100% + (-4px));transform:translateY(-5px);transition-duration:86ms;transition-property:opacity, transform}html.theme--documenter-dark .navbar-dropdown.is-right{left:auto;right:0}html.theme--documenter-dark .navbar-divider{display:block}html.theme--documenter-dark .navbar>.container .navbar-brand,html.theme--documenter-dark .container>.navbar .navbar-brand{margin-left:-.75rem}html.theme--documenter-dark .navbar>.container .navbar-menu,html.theme--documenter-dark .container>.navbar .navbar-menu{margin-right:-.75rem}html.theme--documenter-dark .navbar.is-fixed-bottom-desktop,html.theme--documenter-dark .navbar.is-fixed-top-desktop{left:0;position:fixed;right:0;z-index:30}html.theme--documenter-dark .navbar.is-fixed-bottom-desktop{bottom:0}html.theme--documenter-dark .navbar.is-fixed-bottom-desktop.has-shadow{box-shadow:0 -2px 3px rgba(10,10,10,0.1)}html.theme--documenter-dark .navbar.is-fixed-top-desktop{top:0}html.theme--documenter-dark html.has-navbar-fixed-top-desktop,html.theme--documenter-dark body.has-navbar-fixed-top-desktop{padding-top:4rem}html.theme--documenter-dark html.has-navbar-fixed-bottom-desktop,html.theme--documenter-dark body.has-navbar-fixed-bottom-desktop{padding-bottom:4rem}html.theme--documenter-dark html.has-spaced-navbar-fixed-top,html.theme--documenter-dark body.has-spaced-navbar-fixed-top{padding-top:6rem}html.theme--documenter-dark html.has-spaced-navbar-fixed-bottom,html.theme--documenter-dark body.has-spaced-navbar-fixed-bottom{padding-bottom:6rem}html.theme--documenter-dark a.navbar-item.is-active,html.theme--documenter-dark .navbar-link.is-active{color:#1abc9c}html.theme--documenter-dark a.navbar-item.is-active:not(:focus):not(:hover),html.theme--documenter-dark .navbar-link.is-active:not(:focus):not(:hover){background-color:rgba(0,0,0,0)}html.theme--documenter-dark .navbar-item.has-dropdown:focus .navbar-link,html.theme--documenter-dark .navbar-item.has-dropdown:hover .navbar-link,html.theme--documenter-dark .navbar-item.has-dropdown.is-active .navbar-link{background-color:rgba(0,0,0,0)}}html.theme--documenter-dark .hero.is-fullheight-with-navbar{min-height:calc(100vh - 4rem)}html.theme--documenter-dark .pagination{font-size:15px;margin:-.25rem}html.theme--documenter-dark .pagination.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.pagination{font-size:.85em}html.theme--documenter-dark .pagination.is-medium{font-size:1.25rem}html.theme--documenter-dark .pagination.is-large{font-size:1.5rem}html.theme--documenter-dark .pagination.is-rounded .pagination-previous,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.pagination .pagination-previous,html.theme--documenter-dark .pagination.is-rounded .pagination-next,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.pagination .pagination-next{padding-left:1em;padding-right:1em;border-radius:290486px}html.theme--documenter-dark .pagination.is-rounded .pagination-link,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.pagination .pagination-link{border-radius:290486px}html.theme--documenter-dark .pagination,html.theme--documenter-dark .pagination-list{align-items:center;display:flex;justify-content:center;text-align:center}html.theme--documenter-dark .pagination-previous,html.theme--documenter-dark .pagination-next,html.theme--documenter-dark .pagination-link,html.theme--documenter-dark .pagination-ellipsis{font-size:1em;justify-content:center;margin:.25rem;padding-left:.5em;padding-right:.5em;text-align:center}html.theme--documenter-dark .pagination-previous,html.theme--documenter-dark .pagination-next,html.theme--documenter-dark .pagination-link{border-color:#5e6d6f;color:#1abc9c;min-width:2.25em}html.theme--documenter-dark .pagination-previous:hover,html.theme--documenter-dark .pagination-next:hover,html.theme--documenter-dark .pagination-link:hover{border-color:#8c9b9d;color:#1dd2af}html.theme--documenter-dark .pagination-previous:focus,html.theme--documenter-dark .pagination-next:focus,html.theme--documenter-dark .pagination-link:focus{border-color:#8c9b9d}html.theme--documenter-dark .pagination-previous:active,html.theme--documenter-dark .pagination-next:active,html.theme--documenter-dark .pagination-link:active{box-shadow:inset 0 1px 2px rgba(10,10,10,0.2)}html.theme--documenter-dark .pagination-previous[disabled],html.theme--documenter-dark .pagination-next[disabled],html.theme--documenter-dark .pagination-link[disabled]{background-color:#dbdee0;border-color:#dbdee0;box-shadow:none;color:#5e6d6f;opacity:0.5}html.theme--documenter-dark .pagination-previous,html.theme--documenter-dark .pagination-next{padding-left:0.75em;padding-right:0.75em;white-space:nowrap}html.theme--documenter-dark .pagination-link.is-current{background-color:#1abc9c;border-color:#1abc9c;color:#fff}html.theme--documenter-dark .pagination-ellipsis{color:#8c9b9d;pointer-events:none}html.theme--documenter-dark .pagination-list{flex-wrap:wrap}@media screen and (max-width: 768px){html.theme--documenter-dark .pagination{flex-wrap:wrap}html.theme--documenter-dark .pagination-previous,html.theme--documenter-dark .pagination-next{flex-grow:1;flex-shrink:1}html.theme--documenter-dark .pagination-list li{flex-grow:1;flex-shrink:1}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .pagination-list{flex-grow:1;flex-shrink:1;justify-content:flex-start;order:1}html.theme--documenter-dark .pagination-previous{order:2}html.theme--documenter-dark .pagination-next{order:3}html.theme--documenter-dark .pagination{justify-content:space-between}html.theme--documenter-dark .pagination.is-centered .pagination-previous{order:1}html.theme--documenter-dark .pagination.is-centered .pagination-list{justify-content:center;order:2}html.theme--documenter-dark .pagination.is-centered .pagination-next{order:3}html.theme--documenter-dark .pagination.is-right .pagination-previous{order:1}html.theme--documenter-dark .pagination.is-right .pagination-next{order:2}html.theme--documenter-dark .pagination.is-right .pagination-list{justify-content:flex-end;order:3}}html.theme--documenter-dark .panel{font-size:15px}html.theme--documenter-dark .panel:not(:last-child){margin-bottom:1.5rem}html.theme--documenter-dark .panel-heading,html.theme--documenter-dark .panel-tabs,html.theme--documenter-dark .panel-block{border-bottom:1px solid #5e6d6f;border-left:1px solid #5e6d6f;border-right:1px solid #5e6d6f}html.theme--documenter-dark .panel-heading:first-child,html.theme--documenter-dark .panel-tabs:first-child,html.theme--documenter-dark .panel-block:first-child{border-top:1px solid #5e6d6f}html.theme--documenter-dark .panel-heading{background-color:#282f2f;border-radius:.4em .4em 0 0;color:#f2f2f2;font-size:1.25em;font-weight:300;line-height:1.25;padding:0.5em 0.75em}html.theme--documenter-dark .panel-tabs{align-items:flex-end;display:flex;font-size:.875em;justify-content:center}html.theme--documenter-dark .panel-tabs a{border-bottom:1px solid #5e6d6f;margin-bottom:-1px;padding:0.5em}html.theme--documenter-dark .panel-tabs a.is-active{border-bottom-color:#343c3d;color:#17a689}html.theme--documenter-dark .panel-list a{color:#fff}html.theme--documenter-dark .panel-list a:hover{color:#1abc9c}html.theme--documenter-dark .panel-block{align-items:center;color:#f2f2f2;display:flex;justify-content:flex-start;padding:0.5em 0.75em}html.theme--documenter-dark .panel-block input[type="checkbox"]{margin-right:0.75em}html.theme--documenter-dark .panel-block>.control{flex-grow:1;flex-shrink:1;width:100%}html.theme--documenter-dark .panel-block.is-wrapped{flex-wrap:wrap}html.theme--documenter-dark .panel-block.is-active{border-left-color:#1abc9c;color:#17a689}html.theme--documenter-dark .panel-block.is-active .panel-icon{color:#1abc9c}html.theme--documenter-dark a.panel-block,html.theme--documenter-dark label.panel-block{cursor:pointer}html.theme--documenter-dark a.panel-block:hover,html.theme--documenter-dark label.panel-block:hover{background-color:#282f2f}html.theme--documenter-dark .panel-icon{display:inline-block;font-size:14px;height:1em;line-height:1em;text-align:center;vertical-align:top;width:1em;color:#fff;margin-right:0.75em}html.theme--documenter-dark .panel-icon .fa{font-size:inherit;line-height:inherit}html.theme--documenter-dark .tabs{-webkit-overflow-scrolling:touch;align-items:stretch;display:flex;font-size:15px;justify-content:space-between;overflow:hidden;overflow-x:auto;white-space:nowrap}html.theme--documenter-dark .tabs a{align-items:center;border-bottom-color:#5e6d6f;border-bottom-style:solid;border-bottom-width:1px;color:#fff;display:flex;justify-content:center;margin-bottom:-1px;padding:0.5em 1em;vertical-align:top}html.theme--documenter-dark .tabs a:hover{border-bottom-color:#f2f2f2;color:#f2f2f2}html.theme--documenter-dark .tabs li{display:block}html.theme--documenter-dark .tabs li.is-active a{border-bottom-color:#1abc9c;color:#1abc9c}html.theme--documenter-dark .tabs ul{align-items:center;border-bottom-color:#5e6d6f;border-bottom-style:solid;border-bottom-width:1px;display:flex;flex-grow:1;flex-shrink:0;justify-content:flex-start}html.theme--documenter-dark .tabs ul.is-left{padding-right:0.75em}html.theme--documenter-dark .tabs ul.is-center{flex:none;justify-content:center;padding-left:0.75em;padding-right:0.75em}html.theme--documenter-dark .tabs ul.is-right{justify-content:flex-end;padding-left:0.75em}html.theme--documenter-dark .tabs .icon:first-child{margin-right:0.5em}html.theme--documenter-dark .tabs .icon:last-child{margin-left:0.5em}html.theme--documenter-dark .tabs.is-centered ul{justify-content:center}html.theme--documenter-dark .tabs.is-right ul{justify-content:flex-end}html.theme--documenter-dark .tabs.is-boxed a{border:1px solid transparent;border-radius:.4em .4em 0 0}html.theme--documenter-dark .tabs.is-boxed a:hover{background-color:#282f2f;border-bottom-color:#5e6d6f}html.theme--documenter-dark .tabs.is-boxed li.is-active a{background-color:#fff;border-color:#5e6d6f;border-bottom-color:rgba(0,0,0,0) !important}html.theme--documenter-dark .tabs.is-fullwidth li{flex-grow:1;flex-shrink:0}html.theme--documenter-dark .tabs.is-toggle a{border-color:#5e6d6f;border-style:solid;border-width:1px;margin-bottom:0;position:relative}html.theme--documenter-dark .tabs.is-toggle a:hover{background-color:#282f2f;border-color:#8c9b9d;z-index:2}html.theme--documenter-dark .tabs.is-toggle li+li{margin-left:-1px}html.theme--documenter-dark .tabs.is-toggle li:first-child a{border-radius:.4em 0 0 .4em}html.theme--documenter-dark .tabs.is-toggle li:last-child a{border-radius:0 .4em .4em 0}html.theme--documenter-dark .tabs.is-toggle li.is-active a{background-color:#1abc9c;border-color:#1abc9c;color:#fff;z-index:1}html.theme--documenter-dark .tabs.is-toggle ul{border-bottom:none}html.theme--documenter-dark .tabs.is-toggle.is-toggle-rounded li:first-child a{border-bottom-left-radius:290486px;border-top-left-radius:290486px;padding-left:1.25em}html.theme--documenter-dark .tabs.is-toggle.is-toggle-rounded li:last-child a{border-bottom-right-radius:290486px;border-top-right-radius:290486px;padding-right:1.25em}html.theme--documenter-dark .tabs.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.tabs{font-size:.85em}html.theme--documenter-dark .tabs.is-medium{font-size:1.25rem}html.theme--documenter-dark .tabs.is-large{font-size:1.5rem}html.theme--documenter-dark .column{display:block;flex-basis:0;flex-grow:1;flex-shrink:1;padding:.75rem}.columns.is-mobile>html.theme--documenter-dark .column.is-narrow{flex:none}.columns.is-mobile>html.theme--documenter-dark .column.is-full{flex:none;width:100%}.columns.is-mobile>html.theme--documenter-dark .column.is-three-quarters{flex:none;width:75%}.columns.is-mobile>html.theme--documenter-dark .column.is-two-thirds{flex:none;width:66.6666%}.columns.is-mobile>html.theme--documenter-dark .column.is-half{flex:none;width:50%}.columns.is-mobile>html.theme--documenter-dark .column.is-one-third{flex:none;width:33.3333%}.columns.is-mobile>html.theme--documenter-dark .column.is-one-quarter{flex:none;width:25%}.columns.is-mobile>html.theme--documenter-dark .column.is-one-fifth{flex:none;width:20%}.columns.is-mobile>html.theme--documenter-dark .column.is-two-fifths{flex:none;width:40%}.columns.is-mobile>html.theme--documenter-dark .column.is-three-fifths{flex:none;width:60%}.columns.is-mobile>html.theme--documenter-dark .column.is-four-fifths{flex:none;width:80%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-three-quarters{margin-left:75%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-two-thirds{margin-left:66.6666%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-half{margin-left:50%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-one-third{margin-left:33.3333%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-one-quarter{margin-left:25%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-one-fifth{margin-left:20%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-two-fifths{margin-left:40%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-three-fifths{margin-left:60%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-four-fifths{margin-left:80%}.columns.is-mobile>html.theme--documenter-dark .column.is-0{flex:none;width:0%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-0{margin-left:0%}.columns.is-mobile>html.theme--documenter-dark .column.is-1{flex:none;width:8.3333333333%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-1{margin-left:8.3333333333%}.columns.is-mobile>html.theme--documenter-dark .column.is-2{flex:none;width:16.6666666667%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-2{margin-left:16.6666666667%}.columns.is-mobile>html.theme--documenter-dark .column.is-3{flex:none;width:25%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-3{margin-left:25%}.columns.is-mobile>html.theme--documenter-dark .column.is-4{flex:none;width:33.3333333333%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-4{margin-left:33.3333333333%}.columns.is-mobile>html.theme--documenter-dark .column.is-5{flex:none;width:41.6666666667%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-5{margin-left:41.6666666667%}.columns.is-mobile>html.theme--documenter-dark .column.is-6{flex:none;width:50%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-6{margin-left:50%}.columns.is-mobile>html.theme--documenter-dark .column.is-7{flex:none;width:58.3333333333%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-7{margin-left:58.3333333333%}.columns.is-mobile>html.theme--documenter-dark .column.is-8{flex:none;width:66.6666666667%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-8{margin-left:66.6666666667%}.columns.is-mobile>html.theme--documenter-dark .column.is-9{flex:none;width:75%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-9{margin-left:75%}.columns.is-mobile>html.theme--documenter-dark .column.is-10{flex:none;width:83.3333333333%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-10{margin-left:83.3333333333%}.columns.is-mobile>html.theme--documenter-dark .column.is-11{flex:none;width:91.6666666667%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-11{margin-left:91.6666666667%}.columns.is-mobile>html.theme--documenter-dark .column.is-12{flex:none;width:100%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-12{margin-left:100%}@media screen and (max-width: 768px){html.theme--documenter-dark .column.is-narrow-mobile{flex:none}html.theme--documenter-dark .column.is-full-mobile{flex:none;width:100%}html.theme--documenter-dark .column.is-three-quarters-mobile{flex:none;width:75%}html.theme--documenter-dark .column.is-two-thirds-mobile{flex:none;width:66.6666%}html.theme--documenter-dark .column.is-half-mobile{flex:none;width:50%}html.theme--documenter-dark .column.is-one-third-mobile{flex:none;width:33.3333%}html.theme--documenter-dark .column.is-one-quarter-mobile{flex:none;width:25%}html.theme--documenter-dark .column.is-one-fifth-mobile{flex:none;width:20%}html.theme--documenter-dark .column.is-two-fifths-mobile{flex:none;width:40%}html.theme--documenter-dark .column.is-three-fifths-mobile{flex:none;width:60%}html.theme--documenter-dark .column.is-four-fifths-mobile{flex:none;width:80%}html.theme--documenter-dark .column.is-offset-three-quarters-mobile{margin-left:75%}html.theme--documenter-dark .column.is-offset-two-thirds-mobile{margin-left:66.6666%}html.theme--documenter-dark .column.is-offset-half-mobile{margin-left:50%}html.theme--documenter-dark .column.is-offset-one-third-mobile{margin-left:33.3333%}html.theme--documenter-dark .column.is-offset-one-quarter-mobile{margin-left:25%}html.theme--documenter-dark .column.is-offset-one-fifth-mobile{margin-left:20%}html.theme--documenter-dark .column.is-offset-two-fifths-mobile{margin-left:40%}html.theme--documenter-dark .column.is-offset-three-fifths-mobile{margin-left:60%}html.theme--documenter-dark .column.is-offset-four-fifths-mobile{margin-left:80%}html.theme--documenter-dark .column.is-0-mobile{flex:none;width:0%}html.theme--documenter-dark .column.is-offset-0-mobile{margin-left:0%}html.theme--documenter-dark .column.is-1-mobile{flex:none;width:8.3333333333%}html.theme--documenter-dark .column.is-offset-1-mobile{margin-left:8.3333333333%}html.theme--documenter-dark .column.is-2-mobile{flex:none;width:16.6666666667%}html.theme--documenter-dark .column.is-offset-2-mobile{margin-left:16.6666666667%}html.theme--documenter-dark .column.is-3-mobile{flex:none;width:25%}html.theme--documenter-dark .column.is-offset-3-mobile{margin-left:25%}html.theme--documenter-dark .column.is-4-mobile{flex:none;width:33.3333333333%}html.theme--documenter-dark .column.is-offset-4-mobile{margin-left:33.3333333333%}html.theme--documenter-dark .column.is-5-mobile{flex:none;width:41.6666666667%}html.theme--documenter-dark .column.is-offset-5-mobile{margin-left:41.6666666667%}html.theme--documenter-dark .column.is-6-mobile{flex:none;width:50%}html.theme--documenter-dark .column.is-offset-6-mobile{margin-left:50%}html.theme--documenter-dark .column.is-7-mobile{flex:none;width:58.3333333333%}html.theme--documenter-dark .column.is-offset-7-mobile{margin-left:58.3333333333%}html.theme--documenter-dark .column.is-8-mobile{flex:none;width:66.6666666667%}html.theme--documenter-dark .column.is-offset-8-mobile{margin-left:66.6666666667%}html.theme--documenter-dark .column.is-9-mobile{flex:none;width:75%}html.theme--documenter-dark .column.is-offset-9-mobile{margin-left:75%}html.theme--documenter-dark .column.is-10-mobile{flex:none;width:83.3333333333%}html.theme--documenter-dark .column.is-offset-10-mobile{margin-left:83.3333333333%}html.theme--documenter-dark .column.is-11-mobile{flex:none;width:91.6666666667%}html.theme--documenter-dark .column.is-offset-11-mobile{margin-left:91.6666666667%}html.theme--documenter-dark .column.is-12-mobile{flex:none;width:100%}html.theme--documenter-dark .column.is-offset-12-mobile{margin-left:100%}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .column.is-narrow,html.theme--documenter-dark .column.is-narrow-tablet{flex:none}html.theme--documenter-dark .column.is-full,html.theme--documenter-dark .column.is-full-tablet{flex:none;width:100%}html.theme--documenter-dark .column.is-three-quarters,html.theme--documenter-dark .column.is-three-quarters-tablet{flex:none;width:75%}html.theme--documenter-dark .column.is-two-thirds,html.theme--documenter-dark .column.is-two-thirds-tablet{flex:none;width:66.6666%}html.theme--documenter-dark .column.is-half,html.theme--documenter-dark .column.is-half-tablet{flex:none;width:50%}html.theme--documenter-dark .column.is-one-third,html.theme--documenter-dark .column.is-one-third-tablet{flex:none;width:33.3333%}html.theme--documenter-dark .column.is-one-quarter,html.theme--documenter-dark .column.is-one-quarter-tablet{flex:none;width:25%}html.theme--documenter-dark .column.is-one-fifth,html.theme--documenter-dark .column.is-one-fifth-tablet{flex:none;width:20%}html.theme--documenter-dark .column.is-two-fifths,html.theme--documenter-dark .column.is-two-fifths-tablet{flex:none;width:40%}html.theme--documenter-dark .column.is-three-fifths,html.theme--documenter-dark .column.is-three-fifths-tablet{flex:none;width:60%}html.theme--documenter-dark .column.is-four-fifths,html.theme--documenter-dark .column.is-four-fifths-tablet{flex:none;width:80%}html.theme--documenter-dark .column.is-offset-three-quarters,html.theme--documenter-dark .column.is-offset-three-quarters-tablet{margin-left:75%}html.theme--documenter-dark .column.is-offset-two-thirds,html.theme--documenter-dark .column.is-offset-two-thirds-tablet{margin-left:66.6666%}html.theme--documenter-dark .column.is-offset-half,html.theme--documenter-dark .column.is-offset-half-tablet{margin-left:50%}html.theme--documenter-dark .column.is-offset-one-third,html.theme--documenter-dark .column.is-offset-one-third-tablet{margin-left:33.3333%}html.theme--documenter-dark .column.is-offset-one-quarter,html.theme--documenter-dark .column.is-offset-one-quarter-tablet{margin-left:25%}html.theme--documenter-dark .column.is-offset-one-fifth,html.theme--documenter-dark .column.is-offset-one-fifth-tablet{margin-left:20%}html.theme--documenter-dark .column.is-offset-two-fifths,html.theme--documenter-dark .column.is-offset-two-fifths-tablet{margin-left:40%}html.theme--documenter-dark .column.is-offset-three-fifths,html.theme--documenter-dark .column.is-offset-three-fifths-tablet{margin-left:60%}html.theme--documenter-dark .column.is-offset-four-fifths,html.theme--documenter-dark .column.is-offset-four-fifths-tablet{margin-left:80%}html.theme--documenter-dark .column.is-0,html.theme--documenter-dark .column.is-0-tablet{flex:none;width:0%}html.theme--documenter-dark .column.is-offset-0,html.theme--documenter-dark .column.is-offset-0-tablet{margin-left:0%}html.theme--documenter-dark .column.is-1,html.theme--documenter-dark .column.is-1-tablet{flex:none;width:8.3333333333%}html.theme--documenter-dark .column.is-offset-1,html.theme--documenter-dark .column.is-offset-1-tablet{margin-left:8.3333333333%}html.theme--documenter-dark .column.is-2,html.theme--documenter-dark .column.is-2-tablet{flex:none;width:16.6666666667%}html.theme--documenter-dark .column.is-offset-2,html.theme--documenter-dark .column.is-offset-2-tablet{margin-left:16.6666666667%}html.theme--documenter-dark .column.is-3,html.theme--documenter-dark .column.is-3-tablet{flex:none;width:25%}html.theme--documenter-dark .column.is-offset-3,html.theme--documenter-dark .column.is-offset-3-tablet{margin-left:25%}html.theme--documenter-dark .column.is-4,html.theme--documenter-dark .column.is-4-tablet{flex:none;width:33.3333333333%}html.theme--documenter-dark .column.is-offset-4,html.theme--documenter-dark .column.is-offset-4-tablet{margin-left:33.3333333333%}html.theme--documenter-dark .column.is-5,html.theme--documenter-dark .column.is-5-tablet{flex:none;width:41.6666666667%}html.theme--documenter-dark .column.is-offset-5,html.theme--documenter-dark .column.is-offset-5-tablet{margin-left:41.6666666667%}html.theme--documenter-dark .column.is-6,html.theme--documenter-dark .column.is-6-tablet{flex:none;width:50%}html.theme--documenter-dark .column.is-offset-6,html.theme--documenter-dark .column.is-offset-6-tablet{margin-left:50%}html.theme--documenter-dark .column.is-7,html.theme--documenter-dark .column.is-7-tablet{flex:none;width:58.3333333333%}html.theme--documenter-dark .column.is-offset-7,html.theme--documenter-dark .column.is-offset-7-tablet{margin-left:58.3333333333%}html.theme--documenter-dark .column.is-8,html.theme--documenter-dark .column.is-8-tablet{flex:none;width:66.6666666667%}html.theme--documenter-dark .column.is-offset-8,html.theme--documenter-dark .column.is-offset-8-tablet{margin-left:66.6666666667%}html.theme--documenter-dark .column.is-9,html.theme--documenter-dark .column.is-9-tablet{flex:none;width:75%}html.theme--documenter-dark .column.is-offset-9,html.theme--documenter-dark .column.is-offset-9-tablet{margin-left:75%}html.theme--documenter-dark .column.is-10,html.theme--documenter-dark .column.is-10-tablet{flex:none;width:83.3333333333%}html.theme--documenter-dark .column.is-offset-10,html.theme--documenter-dark .column.is-offset-10-tablet{margin-left:83.3333333333%}html.theme--documenter-dark .column.is-11,html.theme--documenter-dark .column.is-11-tablet{flex:none;width:91.6666666667%}html.theme--documenter-dark .column.is-offset-11,html.theme--documenter-dark .column.is-offset-11-tablet{margin-left:91.6666666667%}html.theme--documenter-dark .column.is-12,html.theme--documenter-dark .column.is-12-tablet{flex:none;width:100%}html.theme--documenter-dark .column.is-offset-12,html.theme--documenter-dark .column.is-offset-12-tablet{margin-left:100%}}@media screen and (max-width: 1055px){html.theme--documenter-dark .column.is-narrow-touch{flex:none}html.theme--documenter-dark .column.is-full-touch{flex:none;width:100%}html.theme--documenter-dark .column.is-three-quarters-touch{flex:none;width:75%}html.theme--documenter-dark .column.is-two-thirds-touch{flex:none;width:66.6666%}html.theme--documenter-dark .column.is-half-touch{flex:none;width:50%}html.theme--documenter-dark .column.is-one-third-touch{flex:none;width:33.3333%}html.theme--documenter-dark .column.is-one-quarter-touch{flex:none;width:25%}html.theme--documenter-dark .column.is-one-fifth-touch{flex:none;width:20%}html.theme--documenter-dark .column.is-two-fifths-touch{flex:none;width:40%}html.theme--documenter-dark .column.is-three-fifths-touch{flex:none;width:60%}html.theme--documenter-dark .column.is-four-fifths-touch{flex:none;width:80%}html.theme--documenter-dark .column.is-offset-three-quarters-touch{margin-left:75%}html.theme--documenter-dark .column.is-offset-two-thirds-touch{margin-left:66.6666%}html.theme--documenter-dark .column.is-offset-half-touch{margin-left:50%}html.theme--documenter-dark .column.is-offset-one-third-touch{margin-left:33.3333%}html.theme--documenter-dark .column.is-offset-one-quarter-touch{margin-left:25%}html.theme--documenter-dark .column.is-offset-one-fifth-touch{margin-left:20%}html.theme--documenter-dark .column.is-offset-two-fifths-touch{margin-left:40%}html.theme--documenter-dark .column.is-offset-three-fifths-touch{margin-left:60%}html.theme--documenter-dark .column.is-offset-four-fifths-touch{margin-left:80%}html.theme--documenter-dark .column.is-0-touch{flex:none;width:0%}html.theme--documenter-dark .column.is-offset-0-touch{margin-left:0%}html.theme--documenter-dark .column.is-1-touch{flex:none;width:8.3333333333%}html.theme--documenter-dark .column.is-offset-1-touch{margin-left:8.3333333333%}html.theme--documenter-dark .column.is-2-touch{flex:none;width:16.6666666667%}html.theme--documenter-dark .column.is-offset-2-touch{margin-left:16.6666666667%}html.theme--documenter-dark .column.is-3-touch{flex:none;width:25%}html.theme--documenter-dark .column.is-offset-3-touch{margin-left:25%}html.theme--documenter-dark .column.is-4-touch{flex:none;width:33.3333333333%}html.theme--documenter-dark .column.is-offset-4-touch{margin-left:33.3333333333%}html.theme--documenter-dark .column.is-5-touch{flex:none;width:41.6666666667%}html.theme--documenter-dark .column.is-offset-5-touch{margin-left:41.6666666667%}html.theme--documenter-dark .column.is-6-touch{flex:none;width:50%}html.theme--documenter-dark .column.is-offset-6-touch{margin-left:50%}html.theme--documenter-dark .column.is-7-touch{flex:none;width:58.3333333333%}html.theme--documenter-dark .column.is-offset-7-touch{margin-left:58.3333333333%}html.theme--documenter-dark .column.is-8-touch{flex:none;width:66.6666666667%}html.theme--documenter-dark .column.is-offset-8-touch{margin-left:66.6666666667%}html.theme--documenter-dark .column.is-9-touch{flex:none;width:75%}html.theme--documenter-dark .column.is-offset-9-touch{margin-left:75%}html.theme--documenter-dark .column.is-10-touch{flex:none;width:83.3333333333%}html.theme--documenter-dark .column.is-offset-10-touch{margin-left:83.3333333333%}html.theme--documenter-dark .column.is-11-touch{flex:none;width:91.6666666667%}html.theme--documenter-dark .column.is-offset-11-touch{margin-left:91.6666666667%}html.theme--documenter-dark .column.is-12-touch{flex:none;width:100%}html.theme--documenter-dark .column.is-offset-12-touch{margin-left:100%}}@media screen and (min-width: 1056px){html.theme--documenter-dark .column.is-narrow-desktop{flex:none}html.theme--documenter-dark .column.is-full-desktop{flex:none;width:100%}html.theme--documenter-dark .column.is-three-quarters-desktop{flex:none;width:75%}html.theme--documenter-dark .column.is-two-thirds-desktop{flex:none;width:66.6666%}html.theme--documenter-dark .column.is-half-desktop{flex:none;width:50%}html.theme--documenter-dark .column.is-one-third-desktop{flex:none;width:33.3333%}html.theme--documenter-dark .column.is-one-quarter-desktop{flex:none;width:25%}html.theme--documenter-dark .column.is-one-fifth-desktop{flex:none;width:20%}html.theme--documenter-dark .column.is-two-fifths-desktop{flex:none;width:40%}html.theme--documenter-dark .column.is-three-fifths-desktop{flex:none;width:60%}html.theme--documenter-dark .column.is-four-fifths-desktop{flex:none;width:80%}html.theme--documenter-dark .column.is-offset-three-quarters-desktop{margin-left:75%}html.theme--documenter-dark .column.is-offset-two-thirds-desktop{margin-left:66.6666%}html.theme--documenter-dark .column.is-offset-half-desktop{margin-left:50%}html.theme--documenter-dark .column.is-offset-one-third-desktop{margin-left:33.3333%}html.theme--documenter-dark .column.is-offset-one-quarter-desktop{margin-left:25%}html.theme--documenter-dark .column.is-offset-one-fifth-desktop{margin-left:20%}html.theme--documenter-dark .column.is-offset-two-fifths-desktop{margin-left:40%}html.theme--documenter-dark .column.is-offset-three-fifths-desktop{margin-left:60%}html.theme--documenter-dark .column.is-offset-four-fifths-desktop{margin-left:80%}html.theme--documenter-dark .column.is-0-desktop{flex:none;width:0%}html.theme--documenter-dark .column.is-offset-0-desktop{margin-left:0%}html.theme--documenter-dark .column.is-1-desktop{flex:none;width:8.3333333333%}html.theme--documenter-dark .column.is-offset-1-desktop{margin-left:8.3333333333%}html.theme--documenter-dark .column.is-2-desktop{flex:none;width:16.6666666667%}html.theme--documenter-dark .column.is-offset-2-desktop{margin-left:16.6666666667%}html.theme--documenter-dark .column.is-3-desktop{flex:none;width:25%}html.theme--documenter-dark .column.is-offset-3-desktop{margin-left:25%}html.theme--documenter-dark .column.is-4-desktop{flex:none;width:33.3333333333%}html.theme--documenter-dark .column.is-offset-4-desktop{margin-left:33.3333333333%}html.theme--documenter-dark .column.is-5-desktop{flex:none;width:41.6666666667%}html.theme--documenter-dark .column.is-offset-5-desktop{margin-left:41.6666666667%}html.theme--documenter-dark .column.is-6-desktop{flex:none;width:50%}html.theme--documenter-dark .column.is-offset-6-desktop{margin-left:50%}html.theme--documenter-dark .column.is-7-desktop{flex:none;width:58.3333333333%}html.theme--documenter-dark .column.is-offset-7-desktop{margin-left:58.3333333333%}html.theme--documenter-dark .column.is-8-desktop{flex:none;width:66.6666666667%}html.theme--documenter-dark .column.is-offset-8-desktop{margin-left:66.6666666667%}html.theme--documenter-dark .column.is-9-desktop{flex:none;width:75%}html.theme--documenter-dark .column.is-offset-9-desktop{margin-left:75%}html.theme--documenter-dark .column.is-10-desktop{flex:none;width:83.3333333333%}html.theme--documenter-dark .column.is-offset-10-desktop{margin-left:83.3333333333%}html.theme--documenter-dark .column.is-11-desktop{flex:none;width:91.6666666667%}html.theme--documenter-dark .column.is-offset-11-desktop{margin-left:91.6666666667%}html.theme--documenter-dark .column.is-12-desktop{flex:none;width:100%}html.theme--documenter-dark .column.is-offset-12-desktop{margin-left:100%}}@media screen and (min-width: 1216px){html.theme--documenter-dark .column.is-narrow-widescreen{flex:none}html.theme--documenter-dark .column.is-full-widescreen{flex:none;width:100%}html.theme--documenter-dark .column.is-three-quarters-widescreen{flex:none;width:75%}html.theme--documenter-dark .column.is-two-thirds-widescreen{flex:none;width:66.6666%}html.theme--documenter-dark .column.is-half-widescreen{flex:none;width:50%}html.theme--documenter-dark .column.is-one-third-widescreen{flex:none;width:33.3333%}html.theme--documenter-dark .column.is-one-quarter-widescreen{flex:none;width:25%}html.theme--documenter-dark .column.is-one-fifth-widescreen{flex:none;width:20%}html.theme--documenter-dark .column.is-two-fifths-widescreen{flex:none;width:40%}html.theme--documenter-dark .column.is-three-fifths-widescreen{flex:none;width:60%}html.theme--documenter-dark .column.is-four-fifths-widescreen{flex:none;width:80%}html.theme--documenter-dark .column.is-offset-three-quarters-widescreen{margin-left:75%}html.theme--documenter-dark .column.is-offset-two-thirds-widescreen{margin-left:66.6666%}html.theme--documenter-dark .column.is-offset-half-widescreen{margin-left:50%}html.theme--documenter-dark .column.is-offset-one-third-widescreen{margin-left:33.3333%}html.theme--documenter-dark .column.is-offset-one-quarter-widescreen{margin-left:25%}html.theme--documenter-dark .column.is-offset-one-fifth-widescreen{margin-left:20%}html.theme--documenter-dark .column.is-offset-two-fifths-widescreen{margin-left:40%}html.theme--documenter-dark .column.is-offset-three-fifths-widescreen{margin-left:60%}html.theme--documenter-dark .column.is-offset-four-fifths-widescreen{margin-left:80%}html.theme--documenter-dark .column.is-0-widescreen{flex:none;width:0%}html.theme--documenter-dark .column.is-offset-0-widescreen{margin-left:0%}html.theme--documenter-dark .column.is-1-widescreen{flex:none;width:8.3333333333%}html.theme--documenter-dark .column.is-offset-1-widescreen{margin-left:8.3333333333%}html.theme--documenter-dark .column.is-2-widescreen{flex:none;width:16.6666666667%}html.theme--documenter-dark .column.is-offset-2-widescreen{margin-left:16.6666666667%}html.theme--documenter-dark .column.is-3-widescreen{flex:none;width:25%}html.theme--documenter-dark .column.is-offset-3-widescreen{margin-left:25%}html.theme--documenter-dark .column.is-4-widescreen{flex:none;width:33.3333333333%}html.theme--documenter-dark .column.is-offset-4-widescreen{margin-left:33.3333333333%}html.theme--documenter-dark .column.is-5-widescreen{flex:none;width:41.6666666667%}html.theme--documenter-dark .column.is-offset-5-widescreen{margin-left:41.6666666667%}html.theme--documenter-dark .column.is-6-widescreen{flex:none;width:50%}html.theme--documenter-dark .column.is-offset-6-widescreen{margin-left:50%}html.theme--documenter-dark .column.is-7-widescreen{flex:none;width:58.3333333333%}html.theme--documenter-dark .column.is-offset-7-widescreen{margin-left:58.3333333333%}html.theme--documenter-dark .column.is-8-widescreen{flex:none;width:66.6666666667%}html.theme--documenter-dark .column.is-offset-8-widescreen{margin-left:66.6666666667%}html.theme--documenter-dark .column.is-9-widescreen{flex:none;width:75%}html.theme--documenter-dark .column.is-offset-9-widescreen{margin-left:75%}html.theme--documenter-dark .column.is-10-widescreen{flex:none;width:83.3333333333%}html.theme--documenter-dark .column.is-offset-10-widescreen{margin-left:83.3333333333%}html.theme--documenter-dark .column.is-11-widescreen{flex:none;width:91.6666666667%}html.theme--documenter-dark .column.is-offset-11-widescreen{margin-left:91.6666666667%}html.theme--documenter-dark .column.is-12-widescreen{flex:none;width:100%}html.theme--documenter-dark .column.is-offset-12-widescreen{margin-left:100%}}@media screen and (min-width: 1408px){html.theme--documenter-dark .column.is-narrow-fullhd{flex:none}html.theme--documenter-dark .column.is-full-fullhd{flex:none;width:100%}html.theme--documenter-dark .column.is-three-quarters-fullhd{flex:none;width:75%}html.theme--documenter-dark .column.is-two-thirds-fullhd{flex:none;width:66.6666%}html.theme--documenter-dark .column.is-half-fullhd{flex:none;width:50%}html.theme--documenter-dark .column.is-one-third-fullhd{flex:none;width:33.3333%}html.theme--documenter-dark .column.is-one-quarter-fullhd{flex:none;width:25%}html.theme--documenter-dark .column.is-one-fifth-fullhd{flex:none;width:20%}html.theme--documenter-dark .column.is-two-fifths-fullhd{flex:none;width:40%}html.theme--documenter-dark .column.is-three-fifths-fullhd{flex:none;width:60%}html.theme--documenter-dark .column.is-four-fifths-fullhd{flex:none;width:80%}html.theme--documenter-dark .column.is-offset-three-quarters-fullhd{margin-left:75%}html.theme--documenter-dark .column.is-offset-two-thirds-fullhd{margin-left:66.6666%}html.theme--documenter-dark .column.is-offset-half-fullhd{margin-left:50%}html.theme--documenter-dark .column.is-offset-one-third-fullhd{margin-left:33.3333%}html.theme--documenter-dark .column.is-offset-one-quarter-fullhd{margin-left:25%}html.theme--documenter-dark .column.is-offset-one-fifth-fullhd{margin-left:20%}html.theme--documenter-dark .column.is-offset-two-fifths-fullhd{margin-left:40%}html.theme--documenter-dark .column.is-offset-three-fifths-fullhd{margin-left:60%}html.theme--documenter-dark .column.is-offset-four-fifths-fullhd{margin-left:80%}html.theme--documenter-dark .column.is-0-fullhd{flex:none;width:0%}html.theme--documenter-dark .column.is-offset-0-fullhd{margin-left:0%}html.theme--documenter-dark .column.is-1-fullhd{flex:none;width:8.3333333333%}html.theme--documenter-dark .column.is-offset-1-fullhd{margin-left:8.3333333333%}html.theme--documenter-dark .column.is-2-fullhd{flex:none;width:16.6666666667%}html.theme--documenter-dark .column.is-offset-2-fullhd{margin-left:16.6666666667%}html.theme--documenter-dark .column.is-3-fullhd{flex:none;width:25%}html.theme--documenter-dark .column.is-offset-3-fullhd{margin-left:25%}html.theme--documenter-dark .column.is-4-fullhd{flex:none;width:33.3333333333%}html.theme--documenter-dark .column.is-offset-4-fullhd{margin-left:33.3333333333%}html.theme--documenter-dark .column.is-5-fullhd{flex:none;width:41.6666666667%}html.theme--documenter-dark .column.is-offset-5-fullhd{margin-left:41.6666666667%}html.theme--documenter-dark .column.is-6-fullhd{flex:none;width:50%}html.theme--documenter-dark .column.is-offset-6-fullhd{margin-left:50%}html.theme--documenter-dark .column.is-7-fullhd{flex:none;width:58.3333333333%}html.theme--documenter-dark .column.is-offset-7-fullhd{margin-left:58.3333333333%}html.theme--documenter-dark .column.is-8-fullhd{flex:none;width:66.6666666667%}html.theme--documenter-dark .column.is-offset-8-fullhd{margin-left:66.6666666667%}html.theme--documenter-dark .column.is-9-fullhd{flex:none;width:75%}html.theme--documenter-dark .column.is-offset-9-fullhd{margin-left:75%}html.theme--documenter-dark .column.is-10-fullhd{flex:none;width:83.3333333333%}html.theme--documenter-dark .column.is-offset-10-fullhd{margin-left:83.3333333333%}html.theme--documenter-dark .column.is-11-fullhd{flex:none;width:91.6666666667%}html.theme--documenter-dark .column.is-offset-11-fullhd{margin-left:91.6666666667%}html.theme--documenter-dark .column.is-12-fullhd{flex:none;width:100%}html.theme--documenter-dark .column.is-offset-12-fullhd{margin-left:100%}}html.theme--documenter-dark .columns{margin-left:-.75rem;margin-right:-.75rem;margin-top:-.75rem}html.theme--documenter-dark .columns:last-child{margin-bottom:-.75rem}html.theme--documenter-dark .columns:not(:last-child){margin-bottom:calc(1.5rem - .75rem)}html.theme--documenter-dark .columns.is-centered{justify-content:center}html.theme--documenter-dark .columns.is-gapless{margin-left:0;margin-right:0;margin-top:0}html.theme--documenter-dark .columns.is-gapless>.column{margin:0;padding:0 !important}html.theme--documenter-dark .columns.is-gapless:not(:last-child){margin-bottom:1.5rem}html.theme--documenter-dark .columns.is-gapless:last-child{margin-bottom:0}html.theme--documenter-dark .columns.is-mobile{display:flex}html.theme--documenter-dark .columns.is-multiline{flex-wrap:wrap}html.theme--documenter-dark .columns.is-vcentered{align-items:center}@media screen and (min-width: 769px),print{html.theme--documenter-dark .columns:not(.is-desktop){display:flex}}@media screen and (min-width: 1056px){html.theme--documenter-dark .columns.is-desktop{display:flex}}html.theme--documenter-dark .columns.is-variable{--columnGap: 0.75rem;margin-left:calc(-1 * var(--columnGap));margin-right:calc(-1 * var(--columnGap))}html.theme--documenter-dark .columns.is-variable .column{padding-left:var(--columnGap);padding-right:var(--columnGap)}html.theme--documenter-dark .columns.is-variable.is-0{--columnGap: 0rem}@media screen and (max-width: 768px){html.theme--documenter-dark .columns.is-variable.is-0-mobile{--columnGap: 0rem}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .columns.is-variable.is-0-tablet{--columnGap: 0rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-0-tablet-only{--columnGap: 0rem}}@media screen and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-0-touch{--columnGap: 0rem}}@media screen and (min-width: 1056px){html.theme--documenter-dark .columns.is-variable.is-0-desktop{--columnGap: 0rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--documenter-dark .columns.is-variable.is-0-desktop-only{--columnGap: 0rem}}@media screen and (min-width: 1216px){html.theme--documenter-dark .columns.is-variable.is-0-widescreen{--columnGap: 0rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--documenter-dark .columns.is-variable.is-0-widescreen-only{--columnGap: 0rem}}@media screen and (min-width: 1408px){html.theme--documenter-dark .columns.is-variable.is-0-fullhd{--columnGap: 0rem}}html.theme--documenter-dark .columns.is-variable.is-1{--columnGap: .25rem}@media screen and (max-width: 768px){html.theme--documenter-dark .columns.is-variable.is-1-mobile{--columnGap: .25rem}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .columns.is-variable.is-1-tablet{--columnGap: .25rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-1-tablet-only{--columnGap: .25rem}}@media screen and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-1-touch{--columnGap: .25rem}}@media screen and (min-width: 1056px){html.theme--documenter-dark .columns.is-variable.is-1-desktop{--columnGap: .25rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--documenter-dark .columns.is-variable.is-1-desktop-only{--columnGap: .25rem}}@media screen and (min-width: 1216px){html.theme--documenter-dark .columns.is-variable.is-1-widescreen{--columnGap: .25rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--documenter-dark .columns.is-variable.is-1-widescreen-only{--columnGap: .25rem}}@media screen and (min-width: 1408px){html.theme--documenter-dark .columns.is-variable.is-1-fullhd{--columnGap: .25rem}}html.theme--documenter-dark .columns.is-variable.is-2{--columnGap: .5rem}@media screen and (max-width: 768px){html.theme--documenter-dark .columns.is-variable.is-2-mobile{--columnGap: .5rem}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .columns.is-variable.is-2-tablet{--columnGap: .5rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-2-tablet-only{--columnGap: .5rem}}@media screen and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-2-touch{--columnGap: .5rem}}@media screen and (min-width: 1056px){html.theme--documenter-dark .columns.is-variable.is-2-desktop{--columnGap: .5rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--documenter-dark .columns.is-variable.is-2-desktop-only{--columnGap: .5rem}}@media screen and (min-width: 1216px){html.theme--documenter-dark .columns.is-variable.is-2-widescreen{--columnGap: .5rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--documenter-dark .columns.is-variable.is-2-widescreen-only{--columnGap: .5rem}}@media screen and (min-width: 1408px){html.theme--documenter-dark .columns.is-variable.is-2-fullhd{--columnGap: .5rem}}html.theme--documenter-dark .columns.is-variable.is-3{--columnGap: .75rem}@media screen and (max-width: 768px){html.theme--documenter-dark .columns.is-variable.is-3-mobile{--columnGap: .75rem}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .columns.is-variable.is-3-tablet{--columnGap: .75rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-3-tablet-only{--columnGap: .75rem}}@media screen and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-3-touch{--columnGap: .75rem}}@media screen and (min-width: 1056px){html.theme--documenter-dark .columns.is-variable.is-3-desktop{--columnGap: .75rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--documenter-dark .columns.is-variable.is-3-desktop-only{--columnGap: .75rem}}@media screen and (min-width: 1216px){html.theme--documenter-dark .columns.is-variable.is-3-widescreen{--columnGap: .75rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--documenter-dark .columns.is-variable.is-3-widescreen-only{--columnGap: .75rem}}@media screen and (min-width: 1408px){html.theme--documenter-dark .columns.is-variable.is-3-fullhd{--columnGap: .75rem}}html.theme--documenter-dark .columns.is-variable.is-4{--columnGap: 1rem}@media screen and (max-width: 768px){html.theme--documenter-dark .columns.is-variable.is-4-mobile{--columnGap: 1rem}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .columns.is-variable.is-4-tablet{--columnGap: 1rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-4-tablet-only{--columnGap: 1rem}}@media screen and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-4-touch{--columnGap: 1rem}}@media screen and (min-width: 1056px){html.theme--documenter-dark .columns.is-variable.is-4-desktop{--columnGap: 1rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--documenter-dark .columns.is-variable.is-4-desktop-only{--columnGap: 1rem}}@media screen and (min-width: 1216px){html.theme--documenter-dark .columns.is-variable.is-4-widescreen{--columnGap: 1rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--documenter-dark .columns.is-variable.is-4-widescreen-only{--columnGap: 1rem}}@media screen and (min-width: 1408px){html.theme--documenter-dark .columns.is-variable.is-4-fullhd{--columnGap: 1rem}}html.theme--documenter-dark .columns.is-variable.is-5{--columnGap: 1.25rem}@media screen and (max-width: 768px){html.theme--documenter-dark .columns.is-variable.is-5-mobile{--columnGap: 1.25rem}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .columns.is-variable.is-5-tablet{--columnGap: 1.25rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-5-tablet-only{--columnGap: 1.25rem}}@media screen and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-5-touch{--columnGap: 1.25rem}}@media screen and (min-width: 1056px){html.theme--documenter-dark .columns.is-variable.is-5-desktop{--columnGap: 1.25rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--documenter-dark .columns.is-variable.is-5-desktop-only{--columnGap: 1.25rem}}@media screen and (min-width: 1216px){html.theme--documenter-dark .columns.is-variable.is-5-widescreen{--columnGap: 1.25rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--documenter-dark .columns.is-variable.is-5-widescreen-only{--columnGap: 1.25rem}}@media screen and (min-width: 1408px){html.theme--documenter-dark .columns.is-variable.is-5-fullhd{--columnGap: 1.25rem}}html.theme--documenter-dark .columns.is-variable.is-6{--columnGap: 1.5rem}@media screen and (max-width: 768px){html.theme--documenter-dark .columns.is-variable.is-6-mobile{--columnGap: 1.5rem}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .columns.is-variable.is-6-tablet{--columnGap: 1.5rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-6-tablet-only{--columnGap: 1.5rem}}@media screen and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-6-touch{--columnGap: 1.5rem}}@media screen and (min-width: 1056px){html.theme--documenter-dark .columns.is-variable.is-6-desktop{--columnGap: 1.5rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--documenter-dark .columns.is-variable.is-6-desktop-only{--columnGap: 1.5rem}}@media screen and (min-width: 1216px){html.theme--documenter-dark .columns.is-variable.is-6-widescreen{--columnGap: 1.5rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--documenter-dark .columns.is-variable.is-6-widescreen-only{--columnGap: 1.5rem}}@media screen and (min-width: 1408px){html.theme--documenter-dark .columns.is-variable.is-6-fullhd{--columnGap: 1.5rem}}html.theme--documenter-dark .columns.is-variable.is-7{--columnGap: 1.75rem}@media screen and (max-width: 768px){html.theme--documenter-dark .columns.is-variable.is-7-mobile{--columnGap: 1.75rem}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .columns.is-variable.is-7-tablet{--columnGap: 1.75rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-7-tablet-only{--columnGap: 1.75rem}}@media screen and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-7-touch{--columnGap: 1.75rem}}@media screen and (min-width: 1056px){html.theme--documenter-dark .columns.is-variable.is-7-desktop{--columnGap: 1.75rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--documenter-dark .columns.is-variable.is-7-desktop-only{--columnGap: 1.75rem}}@media screen and (min-width: 1216px){html.theme--documenter-dark .columns.is-variable.is-7-widescreen{--columnGap: 1.75rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--documenter-dark .columns.is-variable.is-7-widescreen-only{--columnGap: 1.75rem}}@media screen and (min-width: 1408px){html.theme--documenter-dark .columns.is-variable.is-7-fullhd{--columnGap: 1.75rem}}html.theme--documenter-dark .columns.is-variable.is-8{--columnGap: 2rem}@media screen and (max-width: 768px){html.theme--documenter-dark .columns.is-variable.is-8-mobile{--columnGap: 2rem}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .columns.is-variable.is-8-tablet{--columnGap: 2rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-8-tablet-only{--columnGap: 2rem}}@media screen and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-8-touch{--columnGap: 2rem}}@media screen and (min-width: 1056px){html.theme--documenter-dark .columns.is-variable.is-8-desktop{--columnGap: 2rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--documenter-dark .columns.is-variable.is-8-desktop-only{--columnGap: 2rem}}@media screen and (min-width: 1216px){html.theme--documenter-dark .columns.is-variable.is-8-widescreen{--columnGap: 2rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--documenter-dark .columns.is-variable.is-8-widescreen-only{--columnGap: 2rem}}@media screen and (min-width: 1408px){html.theme--documenter-dark .columns.is-variable.is-8-fullhd{--columnGap: 2rem}}html.theme--documenter-dark .tile{align-items:stretch;display:block;flex-basis:0;flex-grow:1;flex-shrink:1;min-height:min-content}html.theme--documenter-dark .tile.is-ancestor{margin-left:-.75rem;margin-right:-.75rem;margin-top:-.75rem}html.theme--documenter-dark .tile.is-ancestor:last-child{margin-bottom:-.75rem}html.theme--documenter-dark .tile.is-ancestor:not(:last-child){margin-bottom:.75rem}html.theme--documenter-dark .tile.is-child{margin:0 !important}html.theme--documenter-dark .tile.is-parent{padding:.75rem}html.theme--documenter-dark .tile.is-vertical{flex-direction:column}html.theme--documenter-dark .tile.is-vertical>.tile.is-child:not(:last-child){margin-bottom:1.5rem !important}@media screen and (min-width: 769px),print{html.theme--documenter-dark .tile:not(.is-child){display:flex}html.theme--documenter-dark .tile.is-1{flex:none;width:8.3333333333%}html.theme--documenter-dark .tile.is-2{flex:none;width:16.6666666667%}html.theme--documenter-dark .tile.is-3{flex:none;width:25%}html.theme--documenter-dark .tile.is-4{flex:none;width:33.3333333333%}html.theme--documenter-dark .tile.is-5{flex:none;width:41.6666666667%}html.theme--documenter-dark .tile.is-6{flex:none;width:50%}html.theme--documenter-dark .tile.is-7{flex:none;width:58.3333333333%}html.theme--documenter-dark .tile.is-8{flex:none;width:66.6666666667%}html.theme--documenter-dark .tile.is-9{flex:none;width:75%}html.theme--documenter-dark .tile.is-10{flex:none;width:83.3333333333%}html.theme--documenter-dark .tile.is-11{flex:none;width:91.6666666667%}html.theme--documenter-dark .tile.is-12{flex:none;width:100%}}html.theme--documenter-dark .hero{align-items:stretch;display:flex;flex-direction:column;justify-content:space-between}html.theme--documenter-dark .hero .navbar{background:none}html.theme--documenter-dark .hero .tabs ul{border-bottom:none}html.theme--documenter-dark .hero.is-white{background-color:#fff;color:#0a0a0a}html.theme--documenter-dark .hero.is-white a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--documenter-dark .hero.is-white strong{color:inherit}html.theme--documenter-dark .hero.is-white .title{color:#0a0a0a}html.theme--documenter-dark .hero.is-white .subtitle{color:rgba(10,10,10,0.9)}html.theme--documenter-dark .hero.is-white .subtitle a:not(.button),html.theme--documenter-dark .hero.is-white .subtitle strong{color:#0a0a0a}@media screen and (max-width: 1055px){html.theme--documenter-dark .hero.is-white .navbar-menu{background-color:#fff}}html.theme--documenter-dark .hero.is-white .navbar-item,html.theme--documenter-dark .hero.is-white .navbar-link{color:rgba(10,10,10,0.7)}html.theme--documenter-dark .hero.is-white a.navbar-item:hover,html.theme--documenter-dark .hero.is-white a.navbar-item.is-active,html.theme--documenter-dark .hero.is-white .navbar-link:hover,html.theme--documenter-dark .hero.is-white .navbar-link.is-active{background-color:#f2f2f2;color:#0a0a0a}html.theme--documenter-dark .hero.is-white .tabs a{color:#0a0a0a;opacity:0.9}html.theme--documenter-dark .hero.is-white .tabs a:hover{opacity:1}html.theme--documenter-dark .hero.is-white .tabs li.is-active a{opacity:1}html.theme--documenter-dark .hero.is-white .tabs.is-boxed a,html.theme--documenter-dark .hero.is-white .tabs.is-toggle a{color:#0a0a0a}html.theme--documenter-dark .hero.is-white .tabs.is-boxed a:hover,html.theme--documenter-dark .hero.is-white .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--documenter-dark .hero.is-white .tabs.is-boxed li.is-active a,html.theme--documenter-dark .hero.is-white .tabs.is-boxed li.is-active a:hover,html.theme--documenter-dark .hero.is-white .tabs.is-toggle li.is-active a,html.theme--documenter-dark .hero.is-white .tabs.is-toggle li.is-active a:hover{background-color:#0a0a0a;border-color:#0a0a0a;color:#fff}html.theme--documenter-dark .hero.is-white.is-bold{background-image:linear-gradient(141deg, #e8e3e4 0%, #fff 71%, #fff 100%)}@media screen and (max-width: 768px){html.theme--documenter-dark .hero.is-white.is-bold .navbar-menu{background-image:linear-gradient(141deg, #e8e3e4 0%, #fff 71%, #fff 100%)}}html.theme--documenter-dark .hero.is-black{background-color:#0a0a0a;color:#fff}html.theme--documenter-dark .hero.is-black a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--documenter-dark .hero.is-black strong{color:inherit}html.theme--documenter-dark .hero.is-black .title{color:#fff}html.theme--documenter-dark .hero.is-black .subtitle{color:rgba(255,255,255,0.9)}html.theme--documenter-dark .hero.is-black .subtitle a:not(.button),html.theme--documenter-dark .hero.is-black .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--documenter-dark .hero.is-black .navbar-menu{background-color:#0a0a0a}}html.theme--documenter-dark .hero.is-black .navbar-item,html.theme--documenter-dark .hero.is-black .navbar-link{color:rgba(255,255,255,0.7)}html.theme--documenter-dark .hero.is-black a.navbar-item:hover,html.theme--documenter-dark .hero.is-black a.navbar-item.is-active,html.theme--documenter-dark .hero.is-black .navbar-link:hover,html.theme--documenter-dark .hero.is-black .navbar-link.is-active{background-color:#000;color:#fff}html.theme--documenter-dark .hero.is-black .tabs a{color:#fff;opacity:0.9}html.theme--documenter-dark .hero.is-black .tabs a:hover{opacity:1}html.theme--documenter-dark .hero.is-black .tabs li.is-active a{opacity:1}html.theme--documenter-dark .hero.is-black .tabs.is-boxed a,html.theme--documenter-dark .hero.is-black .tabs.is-toggle a{color:#fff}html.theme--documenter-dark .hero.is-black .tabs.is-boxed a:hover,html.theme--documenter-dark .hero.is-black .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--documenter-dark .hero.is-black .tabs.is-boxed li.is-active a,html.theme--documenter-dark .hero.is-black .tabs.is-boxed li.is-active a:hover,html.theme--documenter-dark .hero.is-black .tabs.is-toggle li.is-active a,html.theme--documenter-dark .hero.is-black .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#0a0a0a}html.theme--documenter-dark .hero.is-black.is-bold{background-image:linear-gradient(141deg, #000 0%, #0a0a0a 71%, #181616 100%)}@media screen and (max-width: 768px){html.theme--documenter-dark .hero.is-black.is-bold .navbar-menu{background-image:linear-gradient(141deg, #000 0%, #0a0a0a 71%, #181616 100%)}}html.theme--documenter-dark .hero.is-light{background-color:#ecf0f1;color:#282f2f}html.theme--documenter-dark .hero.is-light a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--documenter-dark .hero.is-light strong{color:inherit}html.theme--documenter-dark .hero.is-light .title{color:#282f2f}html.theme--documenter-dark .hero.is-light .subtitle{color:rgba(40,47,47,0.9)}html.theme--documenter-dark .hero.is-light .subtitle a:not(.button),html.theme--documenter-dark .hero.is-light .subtitle strong{color:#282f2f}@media screen and (max-width: 1055px){html.theme--documenter-dark .hero.is-light .navbar-menu{background-color:#ecf0f1}}html.theme--documenter-dark .hero.is-light .navbar-item,html.theme--documenter-dark .hero.is-light .navbar-link{color:rgba(40,47,47,0.7)}html.theme--documenter-dark .hero.is-light a.navbar-item:hover,html.theme--documenter-dark .hero.is-light a.navbar-item.is-active,html.theme--documenter-dark .hero.is-light .navbar-link:hover,html.theme--documenter-dark .hero.is-light .navbar-link.is-active{background-color:#dde4e6;color:#282f2f}html.theme--documenter-dark .hero.is-light .tabs a{color:#282f2f;opacity:0.9}html.theme--documenter-dark .hero.is-light .tabs a:hover{opacity:1}html.theme--documenter-dark .hero.is-light .tabs li.is-active a{opacity:1}html.theme--documenter-dark .hero.is-light .tabs.is-boxed a,html.theme--documenter-dark .hero.is-light .tabs.is-toggle a{color:#282f2f}html.theme--documenter-dark .hero.is-light .tabs.is-boxed a:hover,html.theme--documenter-dark .hero.is-light .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--documenter-dark .hero.is-light .tabs.is-boxed li.is-active a,html.theme--documenter-dark .hero.is-light .tabs.is-boxed li.is-active a:hover,html.theme--documenter-dark .hero.is-light .tabs.is-toggle li.is-active a,html.theme--documenter-dark .hero.is-light .tabs.is-toggle li.is-active a:hover{background-color:#282f2f;border-color:#282f2f;color:#ecf0f1}html.theme--documenter-dark .hero.is-light.is-bold{background-image:linear-gradient(141deg, #cadfe0 0%, #ecf0f1 71%, #fafbfc 100%)}@media screen and (max-width: 768px){html.theme--documenter-dark .hero.is-light.is-bold .navbar-menu{background-image:linear-gradient(141deg, #cadfe0 0%, #ecf0f1 71%, #fafbfc 100%)}}html.theme--documenter-dark .hero.is-dark,html.theme--documenter-dark .content kbd.hero{background-color:#282f2f;color:#ecf0f1}html.theme--documenter-dark .hero.is-dark a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--documenter-dark .content kbd.hero a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--documenter-dark .hero.is-dark strong,html.theme--documenter-dark .content kbd.hero strong{color:inherit}html.theme--documenter-dark .hero.is-dark .title,html.theme--documenter-dark .content kbd.hero .title{color:#ecf0f1}html.theme--documenter-dark .hero.is-dark .subtitle,html.theme--documenter-dark .content kbd.hero .subtitle{color:rgba(236,240,241,0.9)}html.theme--documenter-dark .hero.is-dark .subtitle a:not(.button),html.theme--documenter-dark .content kbd.hero .subtitle a:not(.button),html.theme--documenter-dark .hero.is-dark .subtitle strong,html.theme--documenter-dark .content kbd.hero .subtitle strong{color:#ecf0f1}@media screen and (max-width: 1055px){html.theme--documenter-dark .hero.is-dark .navbar-menu,html.theme--documenter-dark .content kbd.hero .navbar-menu{background-color:#282f2f}}html.theme--documenter-dark .hero.is-dark .navbar-item,html.theme--documenter-dark .content kbd.hero .navbar-item,html.theme--documenter-dark .hero.is-dark .navbar-link,html.theme--documenter-dark .content kbd.hero .navbar-link{color:rgba(236,240,241,0.7)}html.theme--documenter-dark .hero.is-dark a.navbar-item:hover,html.theme--documenter-dark .content kbd.hero a.navbar-item:hover,html.theme--documenter-dark .hero.is-dark a.navbar-item.is-active,html.theme--documenter-dark .content kbd.hero a.navbar-item.is-active,html.theme--documenter-dark .hero.is-dark .navbar-link:hover,html.theme--documenter-dark .content kbd.hero .navbar-link:hover,html.theme--documenter-dark .hero.is-dark .navbar-link.is-active,html.theme--documenter-dark .content kbd.hero .navbar-link.is-active{background-color:#1d2122;color:#ecf0f1}html.theme--documenter-dark .hero.is-dark .tabs a,html.theme--documenter-dark .content kbd.hero .tabs a{color:#ecf0f1;opacity:0.9}html.theme--documenter-dark .hero.is-dark .tabs a:hover,html.theme--documenter-dark .content kbd.hero .tabs a:hover{opacity:1}html.theme--documenter-dark .hero.is-dark .tabs li.is-active a,html.theme--documenter-dark .content kbd.hero .tabs li.is-active a{opacity:1}html.theme--documenter-dark .hero.is-dark .tabs.is-boxed a,html.theme--documenter-dark .content kbd.hero .tabs.is-boxed a,html.theme--documenter-dark .hero.is-dark .tabs.is-toggle a,html.theme--documenter-dark .content kbd.hero .tabs.is-toggle a{color:#ecf0f1}html.theme--documenter-dark .hero.is-dark .tabs.is-boxed a:hover,html.theme--documenter-dark .content kbd.hero .tabs.is-boxed a:hover,html.theme--documenter-dark .hero.is-dark .tabs.is-toggle a:hover,html.theme--documenter-dark .content kbd.hero .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--documenter-dark .hero.is-dark .tabs.is-boxed li.is-active a,html.theme--documenter-dark .content kbd.hero .tabs.is-boxed li.is-active a,html.theme--documenter-dark .hero.is-dark .tabs.is-boxed li.is-active a:hover,html.theme--documenter-dark .hero.is-dark .tabs.is-toggle li.is-active a,html.theme--documenter-dark .content kbd.hero .tabs.is-toggle li.is-active a,html.theme--documenter-dark .hero.is-dark .tabs.is-toggle li.is-active a:hover{background-color:#ecf0f1;border-color:#ecf0f1;color:#282f2f}html.theme--documenter-dark .hero.is-dark.is-bold,html.theme--documenter-dark .content kbd.hero.is-bold{background-image:linear-gradient(141deg, #0f1615 0%, #282f2f 71%, #313c40 100%)}@media screen and (max-width: 768px){html.theme--documenter-dark .hero.is-dark.is-bold .navbar-menu,html.theme--documenter-dark .content kbd.hero.is-bold .navbar-menu{background-image:linear-gradient(141deg, #0f1615 0%, #282f2f 71%, #313c40 100%)}}html.theme--documenter-dark .hero.is-primary,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink{background-color:#375a7f;color:#fff}html.theme--documenter-dark .hero.is-primary a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--documenter-dark .hero.is-primary strong,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink strong{color:inherit}html.theme--documenter-dark .hero.is-primary .title,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .title{color:#fff}html.theme--documenter-dark .hero.is-primary .subtitle,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .subtitle{color:rgba(255,255,255,0.9)}html.theme--documenter-dark .hero.is-primary .subtitle a:not(.button),html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .subtitle a:not(.button),html.theme--documenter-dark .hero.is-primary .subtitle strong,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--documenter-dark .hero.is-primary .navbar-menu,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .navbar-menu{background-color:#375a7f}}html.theme--documenter-dark .hero.is-primary .navbar-item,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .navbar-item,html.theme--documenter-dark .hero.is-primary .navbar-link,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .navbar-link{color:rgba(255,255,255,0.7)}html.theme--documenter-dark .hero.is-primary a.navbar-item:hover,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink a.navbar-item:hover,html.theme--documenter-dark .hero.is-primary a.navbar-item.is-active,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink a.navbar-item.is-active,html.theme--documenter-dark .hero.is-primary .navbar-link:hover,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .navbar-link:hover,html.theme--documenter-dark .hero.is-primary .navbar-link.is-active,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .navbar-link.is-active{background-color:#2f4d6d;color:#fff}html.theme--documenter-dark .hero.is-primary .tabs a,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .tabs a{color:#fff;opacity:0.9}html.theme--documenter-dark .hero.is-primary .tabs a:hover,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .tabs a:hover{opacity:1}html.theme--documenter-dark .hero.is-primary .tabs li.is-active a,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .tabs li.is-active a{opacity:1}html.theme--documenter-dark .hero.is-primary .tabs.is-boxed a,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .tabs.is-boxed a,html.theme--documenter-dark .hero.is-primary .tabs.is-toggle a,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .tabs.is-toggle a{color:#fff}html.theme--documenter-dark .hero.is-primary .tabs.is-boxed a:hover,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .tabs.is-boxed a:hover,html.theme--documenter-dark .hero.is-primary .tabs.is-toggle a:hover,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--documenter-dark .hero.is-primary .tabs.is-boxed li.is-active a,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .tabs.is-boxed li.is-active a,html.theme--documenter-dark .hero.is-primary .tabs.is-boxed li.is-active a:hover,html.theme--documenter-dark .hero.is-primary .tabs.is-toggle li.is-active a,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .tabs.is-toggle li.is-active a,html.theme--documenter-dark .hero.is-primary .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#375a7f}html.theme--documenter-dark .hero.is-primary.is-bold,html.theme--documenter-dark .docstring>section>a.hero.is-bold.docs-sourcelink{background-image:linear-gradient(141deg, #214b62 0%, #375a7f 71%, #3a5796 100%)}@media screen and (max-width: 768px){html.theme--documenter-dark .hero.is-primary.is-bold .navbar-menu,html.theme--documenter-dark .docstring>section>a.hero.is-bold.docs-sourcelink .navbar-menu{background-image:linear-gradient(141deg, #214b62 0%, #375a7f 71%, #3a5796 100%)}}html.theme--documenter-dark .hero.is-link{background-color:#1abc9c;color:#fff}html.theme--documenter-dark .hero.is-link a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--documenter-dark .hero.is-link strong{color:inherit}html.theme--documenter-dark .hero.is-link .title{color:#fff}html.theme--documenter-dark .hero.is-link .subtitle{color:rgba(255,255,255,0.9)}html.theme--documenter-dark .hero.is-link .subtitle a:not(.button),html.theme--documenter-dark .hero.is-link .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--documenter-dark .hero.is-link .navbar-menu{background-color:#1abc9c}}html.theme--documenter-dark .hero.is-link .navbar-item,html.theme--documenter-dark .hero.is-link .navbar-link{color:rgba(255,255,255,0.7)}html.theme--documenter-dark .hero.is-link a.navbar-item:hover,html.theme--documenter-dark .hero.is-link a.navbar-item.is-active,html.theme--documenter-dark .hero.is-link .navbar-link:hover,html.theme--documenter-dark .hero.is-link .navbar-link.is-active{background-color:#17a689;color:#fff}html.theme--documenter-dark .hero.is-link .tabs a{color:#fff;opacity:0.9}html.theme--documenter-dark .hero.is-link .tabs a:hover{opacity:1}html.theme--documenter-dark .hero.is-link .tabs li.is-active a{opacity:1}html.theme--documenter-dark .hero.is-link .tabs.is-boxed a,html.theme--documenter-dark .hero.is-link .tabs.is-toggle a{color:#fff}html.theme--documenter-dark .hero.is-link .tabs.is-boxed a:hover,html.theme--documenter-dark .hero.is-link .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--documenter-dark .hero.is-link .tabs.is-boxed li.is-active a,html.theme--documenter-dark .hero.is-link .tabs.is-boxed li.is-active a:hover,html.theme--documenter-dark .hero.is-link .tabs.is-toggle li.is-active a,html.theme--documenter-dark .hero.is-link .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#1abc9c}html.theme--documenter-dark .hero.is-link.is-bold{background-image:linear-gradient(141deg, #0c9764 0%, #1abc9c 71%, #17d8d2 100%)}@media screen and (max-width: 768px){html.theme--documenter-dark .hero.is-link.is-bold .navbar-menu{background-image:linear-gradient(141deg, #0c9764 0%, #1abc9c 71%, #17d8d2 100%)}}html.theme--documenter-dark .hero.is-info{background-color:#024c7d;color:#fff}html.theme--documenter-dark .hero.is-info a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--documenter-dark .hero.is-info strong{color:inherit}html.theme--documenter-dark .hero.is-info .title{color:#fff}html.theme--documenter-dark .hero.is-info .subtitle{color:rgba(255,255,255,0.9)}html.theme--documenter-dark .hero.is-info .subtitle a:not(.button),html.theme--documenter-dark .hero.is-info .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--documenter-dark .hero.is-info .navbar-menu{background-color:#024c7d}}html.theme--documenter-dark .hero.is-info .navbar-item,html.theme--documenter-dark .hero.is-info .navbar-link{color:rgba(255,255,255,0.7)}html.theme--documenter-dark .hero.is-info a.navbar-item:hover,html.theme--documenter-dark .hero.is-info a.navbar-item.is-active,html.theme--documenter-dark .hero.is-info .navbar-link:hover,html.theme--documenter-dark .hero.is-info .navbar-link.is-active{background-color:#023d64;color:#fff}html.theme--documenter-dark .hero.is-info .tabs a{color:#fff;opacity:0.9}html.theme--documenter-dark .hero.is-info .tabs a:hover{opacity:1}html.theme--documenter-dark .hero.is-info .tabs li.is-active a{opacity:1}html.theme--documenter-dark .hero.is-info .tabs.is-boxed a,html.theme--documenter-dark .hero.is-info .tabs.is-toggle a{color:#fff}html.theme--documenter-dark .hero.is-info .tabs.is-boxed a:hover,html.theme--documenter-dark .hero.is-info .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--documenter-dark .hero.is-info .tabs.is-boxed li.is-active a,html.theme--documenter-dark .hero.is-info .tabs.is-boxed li.is-active a:hover,html.theme--documenter-dark .hero.is-info .tabs.is-toggle li.is-active a,html.theme--documenter-dark .hero.is-info .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#024c7d}html.theme--documenter-dark .hero.is-info.is-bold{background-image:linear-gradient(141deg, #003a4c 0%, #024c7d 71%, #004299 100%)}@media screen and (max-width: 768px){html.theme--documenter-dark .hero.is-info.is-bold .navbar-menu{background-image:linear-gradient(141deg, #003a4c 0%, #024c7d 71%, #004299 100%)}}html.theme--documenter-dark .hero.is-success{background-color:#008438;color:#fff}html.theme--documenter-dark .hero.is-success a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--documenter-dark .hero.is-success strong{color:inherit}html.theme--documenter-dark .hero.is-success .title{color:#fff}html.theme--documenter-dark .hero.is-success .subtitle{color:rgba(255,255,255,0.9)}html.theme--documenter-dark .hero.is-success .subtitle a:not(.button),html.theme--documenter-dark .hero.is-success .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--documenter-dark .hero.is-success .navbar-menu{background-color:#008438}}html.theme--documenter-dark .hero.is-success .navbar-item,html.theme--documenter-dark .hero.is-success .navbar-link{color:rgba(255,255,255,0.7)}html.theme--documenter-dark .hero.is-success a.navbar-item:hover,html.theme--documenter-dark .hero.is-success a.navbar-item.is-active,html.theme--documenter-dark .hero.is-success .navbar-link:hover,html.theme--documenter-dark .hero.is-success .navbar-link.is-active{background-color:#006b2d;color:#fff}html.theme--documenter-dark .hero.is-success .tabs a{color:#fff;opacity:0.9}html.theme--documenter-dark .hero.is-success .tabs a:hover{opacity:1}html.theme--documenter-dark .hero.is-success .tabs li.is-active a{opacity:1}html.theme--documenter-dark .hero.is-success .tabs.is-boxed a,html.theme--documenter-dark .hero.is-success .tabs.is-toggle a{color:#fff}html.theme--documenter-dark .hero.is-success .tabs.is-boxed a:hover,html.theme--documenter-dark .hero.is-success .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--documenter-dark .hero.is-success .tabs.is-boxed li.is-active a,html.theme--documenter-dark .hero.is-success .tabs.is-boxed li.is-active a:hover,html.theme--documenter-dark .hero.is-success .tabs.is-toggle li.is-active a,html.theme--documenter-dark .hero.is-success .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#008438}html.theme--documenter-dark .hero.is-success.is-bold{background-image:linear-gradient(141deg, #005115 0%, #008438 71%, #009e5d 100%)}@media screen and (max-width: 768px){html.theme--documenter-dark .hero.is-success.is-bold .navbar-menu{background-image:linear-gradient(141deg, #005115 0%, #008438 71%, #009e5d 100%)}}html.theme--documenter-dark .hero.is-warning{background-color:#ad8100;color:#fff}html.theme--documenter-dark .hero.is-warning a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--documenter-dark .hero.is-warning strong{color:inherit}html.theme--documenter-dark .hero.is-warning .title{color:#fff}html.theme--documenter-dark .hero.is-warning .subtitle{color:rgba(255,255,255,0.9)}html.theme--documenter-dark .hero.is-warning .subtitle a:not(.button),html.theme--documenter-dark .hero.is-warning .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--documenter-dark .hero.is-warning .navbar-menu{background-color:#ad8100}}html.theme--documenter-dark .hero.is-warning .navbar-item,html.theme--documenter-dark .hero.is-warning .navbar-link{color:rgba(255,255,255,0.7)}html.theme--documenter-dark .hero.is-warning a.navbar-item:hover,html.theme--documenter-dark .hero.is-warning a.navbar-item.is-active,html.theme--documenter-dark .hero.is-warning .navbar-link:hover,html.theme--documenter-dark .hero.is-warning .navbar-link.is-active{background-color:#946e00;color:#fff}html.theme--documenter-dark .hero.is-warning .tabs a{color:#fff;opacity:0.9}html.theme--documenter-dark .hero.is-warning .tabs a:hover{opacity:1}html.theme--documenter-dark .hero.is-warning .tabs li.is-active a{opacity:1}html.theme--documenter-dark .hero.is-warning .tabs.is-boxed a,html.theme--documenter-dark .hero.is-warning .tabs.is-toggle a{color:#fff}html.theme--documenter-dark .hero.is-warning .tabs.is-boxed a:hover,html.theme--documenter-dark .hero.is-warning .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--documenter-dark .hero.is-warning .tabs.is-boxed li.is-active a,html.theme--documenter-dark .hero.is-warning .tabs.is-boxed li.is-active a:hover,html.theme--documenter-dark .hero.is-warning .tabs.is-toggle li.is-active a,html.theme--documenter-dark .hero.is-warning .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#ad8100}html.theme--documenter-dark .hero.is-warning.is-bold{background-image:linear-gradient(141deg, #7a4700 0%, #ad8100 71%, #c7b500 100%)}@media screen and (max-width: 768px){html.theme--documenter-dark .hero.is-warning.is-bold .navbar-menu{background-image:linear-gradient(141deg, #7a4700 0%, #ad8100 71%, #c7b500 100%)}}html.theme--documenter-dark .hero.is-danger{background-color:#9e1b0d;color:#fff}html.theme--documenter-dark .hero.is-danger a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--documenter-dark .hero.is-danger strong{color:inherit}html.theme--documenter-dark .hero.is-danger .title{color:#fff}html.theme--documenter-dark .hero.is-danger .subtitle{color:rgba(255,255,255,0.9)}html.theme--documenter-dark .hero.is-danger .subtitle a:not(.button),html.theme--documenter-dark .hero.is-danger .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--documenter-dark .hero.is-danger .navbar-menu{background-color:#9e1b0d}}html.theme--documenter-dark .hero.is-danger .navbar-item,html.theme--documenter-dark .hero.is-danger .navbar-link{color:rgba(255,255,255,0.7)}html.theme--documenter-dark .hero.is-danger a.navbar-item:hover,html.theme--documenter-dark .hero.is-danger a.navbar-item.is-active,html.theme--documenter-dark .hero.is-danger .navbar-link:hover,html.theme--documenter-dark .hero.is-danger .navbar-link.is-active{background-color:#86170b;color:#fff}html.theme--documenter-dark .hero.is-danger .tabs a{color:#fff;opacity:0.9}html.theme--documenter-dark .hero.is-danger .tabs a:hover{opacity:1}html.theme--documenter-dark .hero.is-danger .tabs li.is-active a{opacity:1}html.theme--documenter-dark .hero.is-danger .tabs.is-boxed a,html.theme--documenter-dark .hero.is-danger .tabs.is-toggle a{color:#fff}html.theme--documenter-dark .hero.is-danger .tabs.is-boxed a:hover,html.theme--documenter-dark .hero.is-danger .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--documenter-dark .hero.is-danger .tabs.is-boxed li.is-active a,html.theme--documenter-dark .hero.is-danger .tabs.is-boxed li.is-active a:hover,html.theme--documenter-dark .hero.is-danger .tabs.is-toggle li.is-active a,html.theme--documenter-dark .hero.is-danger .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#9e1b0d}html.theme--documenter-dark .hero.is-danger.is-bold{background-image:linear-gradient(141deg, #75030b 0%, #9e1b0d 71%, #ba380a 100%)}@media screen and (max-width: 768px){html.theme--documenter-dark .hero.is-danger.is-bold .navbar-menu{background-image:linear-gradient(141deg, #75030b 0%, #9e1b0d 71%, #ba380a 100%)}}html.theme--documenter-dark .hero.is-small .hero-body,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.hero .hero-body{padding-bottom:1.5rem;padding-top:1.5rem}@media screen and (min-width: 769px),print{html.theme--documenter-dark .hero.is-medium .hero-body{padding-bottom:9rem;padding-top:9rem}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .hero.is-large .hero-body{padding-bottom:18rem;padding-top:18rem}}html.theme--documenter-dark .hero.is-halfheight .hero-body,html.theme--documenter-dark .hero.is-fullheight .hero-body,html.theme--documenter-dark .hero.is-fullheight-with-navbar .hero-body{align-items:center;display:flex}html.theme--documenter-dark .hero.is-halfheight .hero-body>.container,html.theme--documenter-dark .hero.is-fullheight .hero-body>.container,html.theme--documenter-dark .hero.is-fullheight-with-navbar .hero-body>.container{flex-grow:1;flex-shrink:1}html.theme--documenter-dark .hero.is-halfheight{min-height:50vh}html.theme--documenter-dark .hero.is-fullheight{min-height:100vh}html.theme--documenter-dark .hero-video{overflow:hidden}html.theme--documenter-dark .hero-video video{left:50%;min-height:100%;min-width:100%;position:absolute;top:50%;transform:translate3d(-50%, -50%, 0)}html.theme--documenter-dark .hero-video.is-transparent{opacity:0.3}@media screen and (max-width: 768px){html.theme--documenter-dark .hero-video{display:none}}html.theme--documenter-dark .hero-buttons{margin-top:1.5rem}@media screen and (max-width: 768px){html.theme--documenter-dark .hero-buttons .button{display:flex}html.theme--documenter-dark .hero-buttons .button:not(:last-child){margin-bottom:0.75rem}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .hero-buttons{display:flex;justify-content:center}html.theme--documenter-dark .hero-buttons .button:not(:last-child){margin-right:1.5rem}}html.theme--documenter-dark .hero-head,html.theme--documenter-dark .hero-foot{flex-grow:0;flex-shrink:0}html.theme--documenter-dark .hero-body{flex-grow:1;flex-shrink:0;padding:3rem 1.5rem}html.theme--documenter-dark .section{padding:3rem 1.5rem}@media screen and (min-width: 1056px){html.theme--documenter-dark .section.is-medium{padding:9rem 1.5rem}html.theme--documenter-dark .section.is-large{padding:18rem 1.5rem}}html.theme--documenter-dark .footer{background-color:#282f2f;padding:3rem 1.5rem 6rem}html.theme--documenter-dark hr{height:1px}html.theme--documenter-dark h6{text-transform:uppercase;letter-spacing:0.5px}html.theme--documenter-dark .hero{background-color:#343c3d}html.theme--documenter-dark a{transition:all 200ms ease}html.theme--documenter-dark .button{transition:all 200ms ease;border-width:1px;color:#fff}html.theme--documenter-dark .button.is-active,html.theme--documenter-dark .button.is-focused,html.theme--documenter-dark .button:active,html.theme--documenter-dark .button:focus{box-shadow:0 0 0 2px rgba(140,155,157,0.5)}html.theme--documenter-dark .button.is-white.is-hovered,html.theme--documenter-dark .button.is-white:hover{background-color:#fff}html.theme--documenter-dark .button.is-white.is-active,html.theme--documenter-dark .button.is-white.is-focused,html.theme--documenter-dark .button.is-white:active,html.theme--documenter-dark .button.is-white:focus{border-color:#fff;box-shadow:0 0 0 2px rgba(255,255,255,0.5)}html.theme--documenter-dark .button.is-black.is-hovered,html.theme--documenter-dark .button.is-black:hover{background-color:#1d1d1d}html.theme--documenter-dark .button.is-black.is-active,html.theme--documenter-dark .button.is-black.is-focused,html.theme--documenter-dark .button.is-black:active,html.theme--documenter-dark .button.is-black:focus{border-color:#0a0a0a;box-shadow:0 0 0 2px rgba(10,10,10,0.5)}html.theme--documenter-dark .button.is-light.is-hovered,html.theme--documenter-dark .button.is-light:hover{background-color:#fff}html.theme--documenter-dark .button.is-light.is-active,html.theme--documenter-dark .button.is-light.is-focused,html.theme--documenter-dark .button.is-light:active,html.theme--documenter-dark .button.is-light:focus{border-color:#ecf0f1;box-shadow:0 0 0 2px rgba(236,240,241,0.5)}html.theme--documenter-dark .button.is-dark.is-hovered,html.theme--documenter-dark .content kbd.button.is-hovered,html.theme--documenter-dark .button.is-dark:hover,html.theme--documenter-dark .content kbd.button:hover{background-color:#3a4344}html.theme--documenter-dark .button.is-dark.is-active,html.theme--documenter-dark .content kbd.button.is-active,html.theme--documenter-dark .button.is-dark.is-focused,html.theme--documenter-dark .content kbd.button.is-focused,html.theme--documenter-dark .button.is-dark:active,html.theme--documenter-dark .content kbd.button:active,html.theme--documenter-dark .button.is-dark:focus,html.theme--documenter-dark .content kbd.button:focus{border-color:#282f2f;box-shadow:0 0 0 2px rgba(40,47,47,0.5)}html.theme--documenter-dark .button.is-primary.is-hovered,html.theme--documenter-dark .docstring>section>a.button.is-hovered.docs-sourcelink,html.theme--documenter-dark .button.is-primary:hover,html.theme--documenter-dark .docstring>section>a.button.docs-sourcelink:hover{background-color:#436d9a}html.theme--documenter-dark .button.is-primary.is-active,html.theme--documenter-dark .docstring>section>a.button.is-active.docs-sourcelink,html.theme--documenter-dark .button.is-primary.is-focused,html.theme--documenter-dark .docstring>section>a.button.is-focused.docs-sourcelink,html.theme--documenter-dark .button.is-primary:active,html.theme--documenter-dark .docstring>section>a.button.docs-sourcelink:active,html.theme--documenter-dark .button.is-primary:focus,html.theme--documenter-dark .docstring>section>a.button.docs-sourcelink:focus{border-color:#375a7f;box-shadow:0 0 0 2px rgba(55,90,127,0.5)}html.theme--documenter-dark .button.is-link.is-hovered,html.theme--documenter-dark .button.is-link:hover{background-color:#1fdeb8}html.theme--documenter-dark .button.is-link.is-active,html.theme--documenter-dark .button.is-link.is-focused,html.theme--documenter-dark .button.is-link:active,html.theme--documenter-dark .button.is-link:focus{border-color:#1abc9c;box-shadow:0 0 0 2px rgba(26,188,156,0.5)}html.theme--documenter-dark .button.is-info.is-hovered,html.theme--documenter-dark .button.is-info:hover{background-color:#0363a3}html.theme--documenter-dark .button.is-info.is-active,html.theme--documenter-dark .button.is-info.is-focused,html.theme--documenter-dark .button.is-info:active,html.theme--documenter-dark .button.is-info:focus{border-color:#024c7d;box-shadow:0 0 0 2px rgba(2,76,125,0.5)}html.theme--documenter-dark .button.is-success.is-hovered,html.theme--documenter-dark .button.is-success:hover{background-color:#00aa48}html.theme--documenter-dark .button.is-success.is-active,html.theme--documenter-dark .button.is-success.is-focused,html.theme--documenter-dark .button.is-success:active,html.theme--documenter-dark .button.is-success:focus{border-color:#008438;box-shadow:0 0 0 2px rgba(0,132,56,0.5)}html.theme--documenter-dark .button.is-warning.is-hovered,html.theme--documenter-dark .button.is-warning:hover{background-color:#d39e00}html.theme--documenter-dark .button.is-warning.is-active,html.theme--documenter-dark .button.is-warning.is-focused,html.theme--documenter-dark .button.is-warning:active,html.theme--documenter-dark .button.is-warning:focus{border-color:#ad8100;box-shadow:0 0 0 2px rgba(173,129,0,0.5)}html.theme--documenter-dark .button.is-danger.is-hovered,html.theme--documenter-dark .button.is-danger:hover{background-color:#c12110}html.theme--documenter-dark .button.is-danger.is-active,html.theme--documenter-dark .button.is-danger.is-focused,html.theme--documenter-dark .button.is-danger:active,html.theme--documenter-dark .button.is-danger:focus{border-color:#9e1b0d;box-shadow:0 0 0 2px rgba(158,27,13,0.5)}html.theme--documenter-dark .label{color:#dbdee0}html.theme--documenter-dark .button,html.theme--documenter-dark .control.has-icons-left .icon,html.theme--documenter-dark .control.has-icons-right .icon,html.theme--documenter-dark .input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input,html.theme--documenter-dark .pagination-ellipsis,html.theme--documenter-dark .pagination-link,html.theme--documenter-dark .pagination-next,html.theme--documenter-dark .pagination-previous,html.theme--documenter-dark .select,html.theme--documenter-dark .select select,html.theme--documenter-dark .textarea{height:2.5em}html.theme--documenter-dark .input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input,html.theme--documenter-dark .textarea{transition:all 200ms ease;box-shadow:none;border-width:1px;padding-left:1em;padding-right:1em}html.theme--documenter-dark .select:after,html.theme--documenter-dark .select select{border-width:1px}html.theme--documenter-dark .control.has-addons .button,html.theme--documenter-dark .control.has-addons .input,html.theme--documenter-dark .control.has-addons #documenter .docs-sidebar form.docs-search>input,html.theme--documenter-dark #documenter .docs-sidebar .control.has-addons form.docs-search>input,html.theme--documenter-dark .control.has-addons .select{margin-right:-1px}html.theme--documenter-dark .notification{background-color:#343c3d}html.theme--documenter-dark .card{box-shadow:none;border:1px solid #343c3d;background-color:#282f2f;border-radius:.4em}html.theme--documenter-dark .card .card-image img{border-radius:.4em .4em 0 0}html.theme--documenter-dark .card .card-header{box-shadow:none;background-color:rgba(18,18,18,0.2);border-radius:.4em .4em 0 0}html.theme--documenter-dark .card .card-footer{background-color:rgba(18,18,18,0.2)}html.theme--documenter-dark .card .card-footer,html.theme--documenter-dark .card .card-footer-item{border-width:1px;border-color:#343c3d}html.theme--documenter-dark .notification.is-white a:not(.button){color:#0a0a0a;text-decoration:underline}html.theme--documenter-dark .notification.is-black a:not(.button){color:#fff;text-decoration:underline}html.theme--documenter-dark .notification.is-light a:not(.button){color:#282f2f;text-decoration:underline}html.theme--documenter-dark .notification.is-dark a:not(.button),html.theme--documenter-dark .content kbd.notification a:not(.button){color:#ecf0f1;text-decoration:underline}html.theme--documenter-dark .notification.is-primary a:not(.button),html.theme--documenter-dark .docstring>section>a.notification.docs-sourcelink a:not(.button){color:#fff;text-decoration:underline}html.theme--documenter-dark .notification.is-link a:not(.button){color:#fff;text-decoration:underline}html.theme--documenter-dark .notification.is-info a:not(.button){color:#fff;text-decoration:underline}html.theme--documenter-dark .notification.is-success a:not(.button){color:#fff;text-decoration:underline}html.theme--documenter-dark .notification.is-warning a:not(.button){color:#fff;text-decoration:underline}html.theme--documenter-dark .notification.is-danger a:not(.button){color:#fff;text-decoration:underline}html.theme--documenter-dark .tag,html.theme--documenter-dark .content kbd,html.theme--documenter-dark .docstring>section>a.docs-sourcelink{border-radius:.4em}html.theme--documenter-dark .menu-list a{transition:all 300ms ease}html.theme--documenter-dark .modal-card-body{background-color:#282f2f}html.theme--documenter-dark .modal-card-foot,html.theme--documenter-dark .modal-card-head{border-color:#343c3d}html.theme--documenter-dark .message-header{font-weight:700;background-color:#343c3d;color:#fff}html.theme--documenter-dark .message-body{border-width:1px;border-color:#343c3d}html.theme--documenter-dark .navbar{border-radius:.4em}html.theme--documenter-dark .navbar.is-transparent{background:none}html.theme--documenter-dark .navbar.is-primary .navbar-dropdown a.navbar-item.is-active,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-dropdown a.navbar-item.is-active{background-color:#1abc9c}@media screen and (max-width: 1055px){html.theme--documenter-dark .navbar .navbar-menu{background-color:#375a7f;border-radius:0 0 .4em .4em}}html.theme--documenter-dark .hero .navbar,html.theme--documenter-dark body>.navbar{border-radius:0}html.theme--documenter-dark .pagination-link,html.theme--documenter-dark .pagination-next,html.theme--documenter-dark .pagination-previous{border-width:1px}html.theme--documenter-dark .panel-block,html.theme--documenter-dark .panel-heading,html.theme--documenter-dark .panel-tabs{border-width:1px}html.theme--documenter-dark .panel-block:first-child,html.theme--documenter-dark .panel-heading:first-child,html.theme--documenter-dark .panel-tabs:first-child{border-top-width:1px}html.theme--documenter-dark .panel-heading{font-weight:700}html.theme--documenter-dark .panel-tabs a{border-width:1px;margin-bottom:-1px}html.theme--documenter-dark .panel-tabs a.is-active{border-bottom-color:#17a689}html.theme--documenter-dark .panel-block:hover{color:#1dd2af}html.theme--documenter-dark .panel-block:hover .panel-icon{color:#1dd2af}html.theme--documenter-dark .panel-block.is-active .panel-icon{color:#17a689}html.theme--documenter-dark .tabs a{border-bottom-width:1px;margin-bottom:-1px}html.theme--documenter-dark .tabs ul{border-bottom-width:1px}html.theme--documenter-dark .tabs.is-boxed a{border-width:1px}html.theme--documenter-dark .tabs.is-boxed li.is-active a{background-color:#1f2424}html.theme--documenter-dark .tabs.is-toggle li a{border-width:1px;margin-bottom:0}html.theme--documenter-dark .tabs.is-toggle li+li{margin-left:-1px}html.theme--documenter-dark .hero.is-white .navbar .navbar-dropdown .navbar-item:hover{background-color:rgba(0,0,0,0)}html.theme--documenter-dark .hero.is-black .navbar .navbar-dropdown .navbar-item:hover{background-color:rgba(0,0,0,0)}html.theme--documenter-dark .hero.is-light .navbar .navbar-dropdown .navbar-item:hover{background-color:rgba(0,0,0,0)}html.theme--documenter-dark .hero.is-dark .navbar .navbar-dropdown .navbar-item:hover,html.theme--documenter-dark .content kbd.hero .navbar .navbar-dropdown .navbar-item:hover{background-color:rgba(0,0,0,0)}html.theme--documenter-dark .hero.is-primary .navbar .navbar-dropdown .navbar-item:hover,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .navbar .navbar-dropdown .navbar-item:hover{background-color:rgba(0,0,0,0)}html.theme--documenter-dark .hero.is-link .navbar .navbar-dropdown .navbar-item:hover{background-color:rgba(0,0,0,0)}html.theme--documenter-dark .hero.is-info .navbar .navbar-dropdown .navbar-item:hover{background-color:rgba(0,0,0,0)}html.theme--documenter-dark .hero.is-success .navbar .navbar-dropdown .navbar-item:hover{background-color:rgba(0,0,0,0)}html.theme--documenter-dark .hero.is-warning .navbar .navbar-dropdown .navbar-item:hover{background-color:rgba(0,0,0,0)}html.theme--documenter-dark .hero.is-danger .navbar .navbar-dropdown .navbar-item:hover{background-color:rgba(0,0,0,0)}html.theme--documenter-dark h1 .docs-heading-anchor,html.theme--documenter-dark h1 .docs-heading-anchor:hover,html.theme--documenter-dark h1 .docs-heading-anchor:visited,html.theme--documenter-dark h2 .docs-heading-anchor,html.theme--documenter-dark h2 .docs-heading-anchor:hover,html.theme--documenter-dark h2 .docs-heading-anchor:visited,html.theme--documenter-dark h3 .docs-heading-anchor,html.theme--documenter-dark h3 .docs-heading-anchor:hover,html.theme--documenter-dark h3 .docs-heading-anchor:visited,html.theme--documenter-dark h4 .docs-heading-anchor,html.theme--documenter-dark h4 .docs-heading-anchor:hover,html.theme--documenter-dark h4 .docs-heading-anchor:visited,html.theme--documenter-dark h5 .docs-heading-anchor,html.theme--documenter-dark h5 .docs-heading-anchor:hover,html.theme--documenter-dark h5 .docs-heading-anchor:visited,html.theme--documenter-dark h6 .docs-heading-anchor,html.theme--documenter-dark h6 .docs-heading-anchor:hover,html.theme--documenter-dark h6 .docs-heading-anchor:visited{color:#f2f2f2}html.theme--documenter-dark h1 .docs-heading-anchor-permalink,html.theme--documenter-dark h2 .docs-heading-anchor-permalink,html.theme--documenter-dark h3 .docs-heading-anchor-permalink,html.theme--documenter-dark h4 .docs-heading-anchor-permalink,html.theme--documenter-dark h5 .docs-heading-anchor-permalink,html.theme--documenter-dark h6 .docs-heading-anchor-permalink{visibility:hidden;vertical-align:middle;margin-left:0.5em;font-size:0.7rem}html.theme--documenter-dark h1 .docs-heading-anchor-permalink::before,html.theme--documenter-dark h2 .docs-heading-anchor-permalink::before,html.theme--documenter-dark h3 .docs-heading-anchor-permalink::before,html.theme--documenter-dark h4 .docs-heading-anchor-permalink::before,html.theme--documenter-dark h5 .docs-heading-anchor-permalink::before,html.theme--documenter-dark h6 .docs-heading-anchor-permalink::before{font-family:"Font Awesome 5 Free";font-weight:900;content:"\f0c1"}html.theme--documenter-dark h1:hover .docs-heading-anchor-permalink,html.theme--documenter-dark h2:hover .docs-heading-anchor-permalink,html.theme--documenter-dark h3:hover .docs-heading-anchor-permalink,html.theme--documenter-dark h4:hover .docs-heading-anchor-permalink,html.theme--documenter-dark h5:hover .docs-heading-anchor-permalink,html.theme--documenter-dark h6:hover .docs-heading-anchor-permalink{visibility:visible}html.theme--documenter-dark .docs-light-only{display:none !important}html.theme--documenter-dark pre{position:relative;overflow:hidden}html.theme--documenter-dark pre code,html.theme--documenter-dark pre code.hljs{padding:0 .75rem !important;overflow:auto;display:block}html.theme--documenter-dark pre code:first-of-type,html.theme--documenter-dark pre code.hljs:first-of-type{padding-top:0.5rem !important}html.theme--documenter-dark pre code:last-of-type,html.theme--documenter-dark pre code.hljs:last-of-type{padding-bottom:0.5rem !important}html.theme--documenter-dark pre .copy-button{opacity:0.2;transition:opacity 0.2s;position:absolute;right:0em;top:0em;padding:0.5em;width:2.5em;height:2.5em;background:transparent;border:none;font-family:"Font Awesome 5 Free";color:#fff;cursor:pointer;text-align:center}html.theme--documenter-dark pre .copy-button:focus,html.theme--documenter-dark pre .copy-button:hover{opacity:1;background:rgba(255,255,255,0.1);color:#1abc9c}html.theme--documenter-dark pre .copy-button.success{color:#259a12;opacity:1}html.theme--documenter-dark pre .copy-button.error{color:#cb3c33;opacity:1}html.theme--documenter-dark pre:hover .copy-button{opacity:1}html.theme--documenter-dark .admonition{background-color:#282f2f;border-style:solid;border-width:1px;border-color:#5e6d6f;border-radius:.4em;font-size:15px}html.theme--documenter-dark .admonition strong{color:currentColor}html.theme--documenter-dark .admonition.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.admonition{font-size:.85em}html.theme--documenter-dark .admonition.is-medium{font-size:1.25rem}html.theme--documenter-dark .admonition.is-large{font-size:1.5rem}html.theme--documenter-dark .admonition.is-default{background-color:#282f2f;border-color:#5e6d6f}html.theme--documenter-dark .admonition.is-default>.admonition-header{background-color:#5e6d6f;color:#fff}html.theme--documenter-dark .admonition.is-default>.admonition-body{color:#fff}html.theme--documenter-dark .admonition.is-info{background-color:#282f2f;border-color:#024c7d}html.theme--documenter-dark .admonition.is-info>.admonition-header{background-color:#024c7d;color:#fff}html.theme--documenter-dark .admonition.is-info>.admonition-body{color:#fff}html.theme--documenter-dark .admonition.is-success{background-color:#282f2f;border-color:#008438}html.theme--documenter-dark .admonition.is-success>.admonition-header{background-color:#008438;color:#fff}html.theme--documenter-dark .admonition.is-success>.admonition-body{color:#fff}html.theme--documenter-dark .admonition.is-warning{background-color:#282f2f;border-color:#ad8100}html.theme--documenter-dark .admonition.is-warning>.admonition-header{background-color:#ad8100;color:#fff}html.theme--documenter-dark .admonition.is-warning>.admonition-body{color:#fff}html.theme--documenter-dark .admonition.is-danger{background-color:#282f2f;border-color:#9e1b0d}html.theme--documenter-dark .admonition.is-danger>.admonition-header{background-color:#9e1b0d;color:#fff}html.theme--documenter-dark .admonition.is-danger>.admonition-body{color:#fff}html.theme--documenter-dark .admonition.is-compat{background-color:#282f2f;border-color:#137886}html.theme--documenter-dark .admonition.is-compat>.admonition-header{background-color:#137886;color:#fff}html.theme--documenter-dark .admonition.is-compat>.admonition-body{color:#fff}html.theme--documenter-dark .admonition-header{color:#fff;background-color:#5e6d6f;align-items:center;font-weight:700;justify-content:space-between;line-height:1.25;padding:0.5rem .75rem;position:relative}html.theme--documenter-dark .admonition-header:before{font-family:"Font Awesome 5 Free";font-weight:900;margin-right:.75rem;content:"\f06a"}html.theme--documenter-dark .admonition-body{color:#fff;padding:0.5rem .75rem}html.theme--documenter-dark .admonition-body pre{background-color:#282f2f}html.theme--documenter-dark .admonition-body code{background-color:rgba(255,255,255,0.05)}html.theme--documenter-dark .docstring{margin-bottom:1em;background-color:rgba(0,0,0,0);border:1px solid #5e6d6f;box-shadow:none;max-width:100%}html.theme--documenter-dark .docstring>header{display:flex;flex-grow:1;align-items:stretch;padding:0.5rem .75rem;background-color:#282f2f;box-shadow:0 1px 2px rgba(10,10,10,0.1);box-shadow:none;border-bottom:1px solid #5e6d6f}html.theme--documenter-dark .docstring>header code{background-color:transparent}html.theme--documenter-dark .docstring>header .docstring-binding{margin-right:0.3em}html.theme--documenter-dark .docstring>header .docstring-category{margin-left:0.3em}html.theme--documenter-dark .docstring>section{position:relative;padding:.75rem .75rem;border-bottom:1px solid #5e6d6f}html.theme--documenter-dark .docstring>section:last-child{border-bottom:none}html.theme--documenter-dark .docstring>section>a.docs-sourcelink{transition:opacity 0.3s;opacity:0;position:absolute;right:.375rem;bottom:.375rem}html.theme--documenter-dark .docstring>section>a.docs-sourcelink:focus{opacity:1 !important}html.theme--documenter-dark .docstring:hover>section>a.docs-sourcelink{opacity:0.2}html.theme--documenter-dark .docstring:focus-within>section>a.docs-sourcelink{opacity:0.2}html.theme--documenter-dark .docstring>section:hover a.docs-sourcelink{opacity:1}html.theme--documenter-dark .documenter-example-output{background-color:#1f2424}html.theme--documenter-dark .outdated-warning-overlay{position:fixed;top:0;left:0;right:0;box-shadow:0 0 10px rgba(0,0,0,0.3);z-index:999;background-color:#282f2f;color:#fff;border-bottom:3px solid #9e1b0d;padding:10px 35px;text-align:center;font-size:15px}html.theme--documenter-dark .outdated-warning-overlay .outdated-warning-closer{position:absolute;top:calc(50% - 10px);right:18px;cursor:pointer;width:12px}html.theme--documenter-dark .outdated-warning-overlay a{color:#1abc9c}html.theme--documenter-dark .outdated-warning-overlay a:hover{color:#1dd2af}html.theme--documenter-dark .content pre{border:1px solid #5e6d6f}html.theme--documenter-dark .content code{font-weight:inherit}html.theme--documenter-dark .content a code{color:#1abc9c}html.theme--documenter-dark .content h1 code,html.theme--documenter-dark .content h2 code,html.theme--documenter-dark .content h3 code,html.theme--documenter-dark .content h4 code,html.theme--documenter-dark .content h5 code,html.theme--documenter-dark .content h6 code{color:#f2f2f2}html.theme--documenter-dark .content table{display:block;width:initial;max-width:100%;overflow-x:auto}html.theme--documenter-dark .content blockquote>ul:first-child,html.theme--documenter-dark .content blockquote>ol:first-child,html.theme--documenter-dark .content .admonition-body>ul:first-child,html.theme--documenter-dark .content .admonition-body>ol:first-child{margin-top:0}html.theme--documenter-dark pre,html.theme--documenter-dark code{font-variant-ligatures:no-contextual}html.theme--documenter-dark .breadcrumb a.is-disabled{cursor:default;pointer-events:none}html.theme--documenter-dark .breadcrumb a.is-disabled,html.theme--documenter-dark .breadcrumb a.is-disabled:hover{color:#f2f2f2}html.theme--documenter-dark .hljs{background:initial !important}html.theme--documenter-dark .katex .katex-mathml{top:0;right:0}html.theme--documenter-dark .katex-display,html.theme--documenter-dark mjx-container,html.theme--documenter-dark .MathJax_Display{margin:0.5em 0 !important}html.theme--documenter-dark html{-moz-osx-font-smoothing:auto;-webkit-font-smoothing:auto}html.theme--documenter-dark li.no-marker{list-style:none}html.theme--documenter-dark #documenter .docs-main>article{overflow-wrap:break-word}html.theme--documenter-dark #documenter .docs-main>article .math-container{overflow-x:auto;overflow-y:hidden}@media screen and (min-width: 1056px){html.theme--documenter-dark #documenter .docs-main{max-width:52rem;margin-left:20rem;padding-right:1rem}}@media screen and (max-width: 1055px){html.theme--documenter-dark #documenter .docs-main{width:100%}html.theme--documenter-dark #documenter .docs-main>article{max-width:52rem;margin-left:auto;margin-right:auto;margin-bottom:1rem;padding:0 1rem}html.theme--documenter-dark #documenter .docs-main>header,html.theme--documenter-dark #documenter .docs-main>nav{max-width:100%;width:100%;margin:0}}html.theme--documenter-dark #documenter .docs-main header.docs-navbar{background-color:#1f2424;border-bottom:1px solid #5e6d6f;z-index:2;min-height:4rem;margin-bottom:1rem;display:flex}html.theme--documenter-dark #documenter .docs-main header.docs-navbar .breadcrumb{flex-grow:1}html.theme--documenter-dark #documenter .docs-main header.docs-navbar .docs-right{display:flex;white-space:nowrap}html.theme--documenter-dark #documenter .docs-main header.docs-navbar .docs-right .docs-icon,html.theme--documenter-dark #documenter .docs-main header.docs-navbar .docs-right .docs-label,html.theme--documenter-dark #documenter .docs-main header.docs-navbar .docs-right .docs-sidebar-button{display:inline-block}html.theme--documenter-dark #documenter .docs-main header.docs-navbar .docs-right .docs-label{padding:0;margin-left:0.3em}html.theme--documenter-dark #documenter .docs-main header.docs-navbar .docs-right .docs-settings-button{margin:auto 0 auto 1rem}html.theme--documenter-dark #documenter .docs-main header.docs-navbar .docs-right .docs-sidebar-button{font-size:1.5rem;margin:auto 0 auto 1rem}html.theme--documenter-dark #documenter .docs-main header.docs-navbar>*{margin:auto 0}@media screen and (max-width: 1055px){html.theme--documenter-dark #documenter .docs-main header.docs-navbar{position:sticky;top:0;padding:0 1rem;transition-property:top, box-shadow;-webkit-transition-property:top, box-shadow;transition-duration:0.3s;-webkit-transition-duration:0.3s}html.theme--documenter-dark #documenter .docs-main header.docs-navbar.headroom--not-top{box-shadow:.2rem 0rem .4rem #171717;transition-duration:0.7s;-webkit-transition-duration:0.7s}html.theme--documenter-dark #documenter .docs-main header.docs-navbar.headroom--unpinned.headroom--not-top.headroom--not-bottom{top:-4.5rem;transition-duration:0.7s;-webkit-transition-duration:0.7s}}html.theme--documenter-dark #documenter .docs-main section.footnotes{border-top:1px solid #5e6d6f}html.theme--documenter-dark #documenter .docs-main section.footnotes li .tag:first-child,html.theme--documenter-dark #documenter .docs-main section.footnotes li .docstring>section>a.docs-sourcelink:first-child,html.theme--documenter-dark #documenter .docs-main section.footnotes li .content kbd:first-child,html.theme--documenter-dark .content #documenter .docs-main section.footnotes li kbd:first-child{margin-right:1em;margin-bottom:0.4em}html.theme--documenter-dark #documenter .docs-main .docs-footer{display:flex;flex-wrap:wrap;margin-left:0;margin-right:0;border-top:1px solid #5e6d6f;padding-top:1rem;padding-bottom:1rem}@media screen and (max-width: 1055px){html.theme--documenter-dark #documenter .docs-main .docs-footer{padding-left:1rem;padding-right:1rem}}html.theme--documenter-dark #documenter .docs-main .docs-footer .docs-footer-nextpage,html.theme--documenter-dark #documenter .docs-main .docs-footer .docs-footer-prevpage{flex-grow:1}html.theme--documenter-dark #documenter .docs-main .docs-footer .docs-footer-nextpage{text-align:right}html.theme--documenter-dark #documenter .docs-main .docs-footer .flexbox-break{flex-basis:100%;height:0}html.theme--documenter-dark #documenter .docs-main .docs-footer .footer-message{font-size:0.8em;margin:0.5em auto 0 auto;text-align:center}html.theme--documenter-dark #documenter .docs-sidebar{display:flex;flex-direction:column;color:#fff;background-color:#282f2f;border-right:1px solid #5e6d6f;padding:0;flex:0 0 18rem;z-index:5;font-size:15px;position:fixed;left:-18rem;width:18rem;height:100%;transition:left 0.3s}html.theme--documenter-dark #documenter .docs-sidebar.visible{left:0;box-shadow:.4rem 0rem .8rem #171717}@media screen and (min-width: 1056px){html.theme--documenter-dark #documenter .docs-sidebar.visible{box-shadow:none}}@media screen and (min-width: 1056px){html.theme--documenter-dark #documenter .docs-sidebar{left:0;top:0}}html.theme--documenter-dark #documenter .docs-sidebar .docs-logo{margin-top:1rem;padding:0 1rem}html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img{max-height:6rem;margin:auto}html.theme--documenter-dark #documenter .docs-sidebar .docs-package-name{flex-shrink:0;font-size:1.5rem;font-weight:700;text-align:center;white-space:nowrap;overflow:hidden;padding:0.5rem 0}html.theme--documenter-dark #documenter .docs-sidebar .docs-package-name .docs-autofit{max-width:16.2rem}html.theme--documenter-dark #documenter .docs-sidebar .docs-package-name a,html.theme--documenter-dark #documenter .docs-sidebar .docs-package-name a:hover{color:#fff}html.theme--documenter-dark #documenter .docs-sidebar .docs-version-selector{border-top:1px solid #5e6d6f;display:none;padding:0.5rem}html.theme--documenter-dark #documenter .docs-sidebar .docs-version-selector.visible{display:flex}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu{flex-grow:1;user-select:none;border-top:1px solid #5e6d6f;padding-bottom:1.5rem}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu>li>.tocitem{font-weight:bold}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu>li li{font-size:14.25px;margin-left:1em;border-left:1px solid #5e6d6f}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu input.collapse-toggle{display:none}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu ul.collapsed{display:none}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu input:checked~ul.collapsed{display:block}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu label.tocitem{display:flex}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu label.tocitem .docs-label{flex-grow:2}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu label.tocitem .docs-chevron{display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1;font-size:11.25px;margin-left:1rem;margin-top:auto;margin-bottom:auto}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu label.tocitem .docs-chevron::before{font-family:"Font Awesome 5 Free";font-weight:900;content:"\f054"}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu input:checked~label.tocitem .docs-chevron::before{content:"\f078"}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu .tocitem{display:block;padding:0.5rem 0.5rem}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu .tocitem,html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu .tocitem:hover{color:#fff;background:#282f2f}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu a.tocitem:hover,html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu label.tocitem:hover{color:#fff;background-color:#32393a}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu li.is-active{border-top:1px solid #5e6d6f;border-bottom:1px solid #5e6d6f;background-color:#1f2424}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu li.is-active .tocitem,html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu li.is-active .tocitem:hover{background-color:#1f2424;color:#fff}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu li.is-active ul.internal .tocitem:hover{background-color:#32393a;color:#fff}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu>li.is-active:first-child{border-top:none}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu ul.internal{margin:0 0.5rem 0.5rem;border-top:1px solid #5e6d6f}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu ul.internal li{font-size:12.75px;border-left:none;margin-left:0;margin-top:0.5rem}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu ul.internal .tocitem{width:100%;padding:0}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu ul.internal .tocitem::before{content:"⚬";margin-right:0.4em}html.theme--documenter-dark #documenter .docs-sidebar form.docs-search{margin:auto;margin-top:0.5rem;margin-bottom:0.5rem}html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input{width:14.4rem}@media screen and (min-width: 1056px){html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu{overflow-y:auto;-webkit-overflow-scroll:touch}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu::-webkit-scrollbar{width:.3rem;background:none}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu::-webkit-scrollbar-thumb{border-radius:5px 0px 0px 5px;background:#3b4445}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu::-webkit-scrollbar-thumb:hover{background:#4e5a5c}}@media screen and (max-width: 1055px){html.theme--documenter-dark #documenter .docs-sidebar{overflow-y:auto;-webkit-overflow-scroll:touch}html.theme--documenter-dark #documenter .docs-sidebar::-webkit-scrollbar{width:.3rem;background:none}html.theme--documenter-dark #documenter .docs-sidebar::-webkit-scrollbar-thumb{border-radius:5px 0px 0px 5px;background:#3b4445}html.theme--documenter-dark #documenter .docs-sidebar::-webkit-scrollbar-thumb:hover{background:#4e5a5c}}html.theme--documenter-dark #documenter .docs-main #documenter-search-info{margin-bottom:1rem}html.theme--documenter-dark #documenter .docs-main #documenter-search-results{list-style-type:circle;list-style-position:outside}html.theme--documenter-dark #documenter .docs-main #documenter-search-results li{margin-left:2rem}html.theme--documenter-dark #documenter .docs-main #documenter-search-results .docs-highlight{background-color:yellow}html.theme--documenter-dark{background-color:#1f2424;font-size:16px;min-width:300px;overflow-x:auto;overflow-y:scroll;text-rendering:optimizeLegibility;text-size-adjust:100%}html.theme--documenter-dark .ansi span.sgr1{font-weight:bolder}html.theme--documenter-dark .ansi span.sgr2{font-weight:lighter}html.theme--documenter-dark .ansi span.sgr3{font-style:italic}html.theme--documenter-dark .ansi span.sgr4{text-decoration:underline}html.theme--documenter-dark .ansi span.sgr7{color:#1f2424;background-color:#fff}html.theme--documenter-dark .ansi span.sgr8{color:transparent}html.theme--documenter-dark .ansi span.sgr8 span{color:transparent}html.theme--documenter-dark .ansi span.sgr9{text-decoration:line-through}html.theme--documenter-dark .ansi span.sgr30{color:#242424}html.theme--documenter-dark .ansi span.sgr31{color:#f6705f}html.theme--documenter-dark .ansi span.sgr32{color:#4fb43a}html.theme--documenter-dark .ansi span.sgr33{color:#f4c72f}html.theme--documenter-dark .ansi span.sgr34{color:#7587f0}html.theme--documenter-dark .ansi span.sgr35{color:#bc89d3}html.theme--documenter-dark .ansi span.sgr36{color:#49b6ca}html.theme--documenter-dark .ansi span.sgr37{color:#b3bdbe}html.theme--documenter-dark .ansi span.sgr40{background-color:#242424}html.theme--documenter-dark .ansi span.sgr41{background-color:#f6705f}html.theme--documenter-dark .ansi span.sgr42{background-color:#4fb43a}html.theme--documenter-dark .ansi span.sgr43{background-color:#f4c72f}html.theme--documenter-dark .ansi span.sgr44{background-color:#7587f0}html.theme--documenter-dark .ansi span.sgr45{background-color:#bc89d3}html.theme--documenter-dark .ansi span.sgr46{background-color:#49b6ca}html.theme--documenter-dark .ansi span.sgr47{background-color:#b3bdbe}html.theme--documenter-dark .ansi span.sgr90{color:#92a0a2}html.theme--documenter-dark .ansi span.sgr91{color:#ff8674}html.theme--documenter-dark .ansi span.sgr92{color:#79d462}html.theme--documenter-dark .ansi span.sgr93{color:#ffe76b}html.theme--documenter-dark .ansi span.sgr94{color:#8a98ff}html.theme--documenter-dark .ansi span.sgr95{color:#d2a4e6}html.theme--documenter-dark .ansi span.sgr96{color:#6bc8db}html.theme--documenter-dark .ansi span.sgr97{color:#ecf0f1}html.theme--documenter-dark .ansi span.sgr100{background-color:#92a0a2}html.theme--documenter-dark .ansi span.sgr101{background-color:#ff8674}html.theme--documenter-dark .ansi span.sgr102{background-color:#79d462}html.theme--documenter-dark .ansi span.sgr103{background-color:#ffe76b}html.theme--documenter-dark .ansi span.sgr104{background-color:#8a98ff}html.theme--documenter-dark .ansi span.sgr105{background-color:#d2a4e6}html.theme--documenter-dark .ansi span.sgr106{background-color:#6bc8db}html.theme--documenter-dark .ansi span.sgr107{background-color:#ecf0f1}html.theme--documenter-dark code.language-julia-repl>span.hljs-meta{color:#4fb43a;font-weight:bolder}html.theme--documenter-dark .hljs{background:#2b2b2b;color:#f8f8f2}html.theme--documenter-dark .hljs-comment,html.theme--documenter-dark .hljs-quote{color:#d4d0ab}html.theme--documenter-dark .hljs-variable,html.theme--documenter-dark .hljs-template-variable,html.theme--documenter-dark .hljs-tag,html.theme--documenter-dark .hljs-name,html.theme--documenter-dark .hljs-selector-id,html.theme--documenter-dark .hljs-selector-class,html.theme--documenter-dark .hljs-regexp,html.theme--documenter-dark .hljs-deletion{color:#ffa07a}html.theme--documenter-dark .hljs-number,html.theme--documenter-dark .hljs-built_in,html.theme--documenter-dark .hljs-literal,html.theme--documenter-dark .hljs-type,html.theme--documenter-dark .hljs-params,html.theme--documenter-dark .hljs-meta,html.theme--documenter-dark .hljs-link{color:#f5ab35}html.theme--documenter-dark .hljs-attribute{color:#ffd700}html.theme--documenter-dark .hljs-string,html.theme--documenter-dark .hljs-symbol,html.theme--documenter-dark .hljs-bullet,html.theme--documenter-dark .hljs-addition{color:#abe338}html.theme--documenter-dark .hljs-title,html.theme--documenter-dark .hljs-section{color:#00e0e0}html.theme--documenter-dark .hljs-keyword,html.theme--documenter-dark .hljs-selector-tag{color:#dcc6e0}html.theme--documenter-dark .hljs-emphasis{font-style:italic}html.theme--documenter-dark .hljs-strong{font-weight:bold}@media screen and (-ms-high-contrast: active){html.theme--documenter-dark .hljs-addition,html.theme--documenter-dark .hljs-attribute,html.theme--documenter-dark .hljs-built_in,html.theme--documenter-dark .hljs-bullet,html.theme--documenter-dark .hljs-comment,html.theme--documenter-dark .hljs-link,html.theme--documenter-dark .hljs-literal,html.theme--documenter-dark .hljs-meta,html.theme--documenter-dark .hljs-number,html.theme--documenter-dark .hljs-params,html.theme--documenter-dark .hljs-string,html.theme--documenter-dark .hljs-symbol,html.theme--documenter-dark .hljs-type,html.theme--documenter-dark .hljs-quote{color:highlight}html.theme--documenter-dark .hljs-keyword,html.theme--documenter-dark .hljs-selector-tag{font-weight:bold}}html.theme--documenter-dark .hljs-subst{color:#f8f8f2} diff --git a/previews/PR383/assets/themes/documenter-light.css b/previews/PR383/assets/themes/documenter-light.css new file mode 100644 index 000000000..9b9a14b04 --- /dev/null +++ b/previews/PR383/assets/themes/documenter-light.css @@ -0,0 +1,9 @@ +@keyframes spinAround{from{transform:rotate(0deg)}to{transform:rotate(359deg)}}.tabs,.pagination-previous,.pagination-next,.pagination-link,.pagination-ellipsis,.breadcrumb,.file,.button,.is-unselectable,.modal-close,.delete{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.navbar-link:not(.is-arrowless)::after,.select:not(.is-multiple):not(.is-loading)::after{border:3px solid rgba(0,0,0,0);border-radius:2px;border-right:0;border-top:0;content:" ";display:block;height:0.625em;margin-top:-0.4375em;pointer-events:none;position:absolute;top:50%;transform:rotate(-45deg);transform-origin:center;width:0.625em}.admonition:not(:last-child),.tabs:not(:last-child),.message:not(:last-child),.list:not(:last-child),.level:not(:last-child),.breadcrumb:not(:last-child),.highlight:not(:last-child),.block:not(:last-child),.title:not(:last-child),.subtitle:not(:last-child),.table-container:not(:last-child),.table:not(:last-child),.progress:not(:last-child),.notification:not(:last-child),.content:not(:last-child),.box:not(:last-child){margin-bottom:1.5rem}.modal-close,.delete{-moz-appearance:none;-webkit-appearance:none;background-color:rgba(10,10,10,0.2);border:none;border-radius:290486px;cursor:pointer;pointer-events:auto;display:inline-block;flex-grow:0;flex-shrink:0;font-size:0;height:20px;max-height:20px;max-width:20px;min-height:20px;min-width:20px;outline:none;position:relative;vertical-align:top;width:20px}.modal-close::before,.delete::before,.modal-close::after,.delete::after{background-color:#fff;content:"";display:block;left:50%;position:absolute;top:50%;transform:translateX(-50%) translateY(-50%) rotate(45deg);transform-origin:center center}.modal-close::before,.delete::before{height:2px;width:50%}.modal-close::after,.delete::after{height:50%;width:2px}.modal-close:hover,.delete:hover,.modal-close:focus,.delete:focus{background-color:rgba(10,10,10,0.3)}.modal-close:active,.delete:active{background-color:rgba(10,10,10,0.4)}.is-small.modal-close,#documenter .docs-sidebar form.docs-search>input.modal-close,.is-small.delete,#documenter .docs-sidebar form.docs-search>input.delete{height:16px;max-height:16px;max-width:16px;min-height:16px;min-width:16px;width:16px}.is-medium.modal-close,.is-medium.delete{height:24px;max-height:24px;max-width:24px;min-height:24px;min-width:24px;width:24px}.is-large.modal-close,.is-large.delete{height:32px;max-height:32px;max-width:32px;min-height:32px;min-width:32px;width:32px}.control.is-loading::after,.select.is-loading::after,.loader,.button.is-loading::after{animation:spinAround 500ms infinite linear;border:2px solid #dbdbdb;border-radius:290486px;border-right-color:transparent;border-top-color:transparent;content:"";display:block;height:1em;position:relative;width:1em}.hero-video,.modal-background,.modal,.image.is-square img,#documenter .docs-sidebar .docs-logo>img.is-square img,.image.is-square .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-square .has-ratio,.image.is-1by1 img,#documenter .docs-sidebar .docs-logo>img.is-1by1 img,.image.is-1by1 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-1by1 .has-ratio,.image.is-5by4 img,#documenter .docs-sidebar .docs-logo>img.is-5by4 img,.image.is-5by4 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-5by4 .has-ratio,.image.is-4by3 img,#documenter .docs-sidebar .docs-logo>img.is-4by3 img,.image.is-4by3 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-4by3 .has-ratio,.image.is-3by2 img,#documenter .docs-sidebar .docs-logo>img.is-3by2 img,.image.is-3by2 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-3by2 .has-ratio,.image.is-5by3 img,#documenter .docs-sidebar .docs-logo>img.is-5by3 img,.image.is-5by3 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-5by3 .has-ratio,.image.is-16by9 img,#documenter .docs-sidebar .docs-logo>img.is-16by9 img,.image.is-16by9 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-16by9 .has-ratio,.image.is-2by1 img,#documenter .docs-sidebar .docs-logo>img.is-2by1 img,.image.is-2by1 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-2by1 .has-ratio,.image.is-3by1 img,#documenter .docs-sidebar .docs-logo>img.is-3by1 img,.image.is-3by1 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-3by1 .has-ratio,.image.is-4by5 img,#documenter .docs-sidebar .docs-logo>img.is-4by5 img,.image.is-4by5 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-4by5 .has-ratio,.image.is-3by4 img,#documenter .docs-sidebar .docs-logo>img.is-3by4 img,.image.is-3by4 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-3by4 .has-ratio,.image.is-2by3 img,#documenter .docs-sidebar .docs-logo>img.is-2by3 img,.image.is-2by3 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-2by3 .has-ratio,.image.is-3by5 img,#documenter .docs-sidebar .docs-logo>img.is-3by5 img,.image.is-3by5 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-3by5 .has-ratio,.image.is-9by16 img,#documenter .docs-sidebar .docs-logo>img.is-9by16 img,.image.is-9by16 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-9by16 .has-ratio,.image.is-1by2 img,#documenter .docs-sidebar .docs-logo>img.is-1by2 img,.image.is-1by2 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-1by2 .has-ratio,.image.is-1by3 img,#documenter .docs-sidebar .docs-logo>img.is-1by3 img,.image.is-1by3 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-1by3 .has-ratio,.is-overlay{bottom:0;left:0;position:absolute;right:0;top:0}.pagination-previous,.pagination-next,.pagination-link,.pagination-ellipsis,.file-cta,.file-name,.select select,.textarea,.input,#documenter .docs-sidebar form.docs-search>input,.button{-moz-appearance:none;-webkit-appearance:none;align-items:center;border:1px solid transparent;border-radius:4px;box-shadow:none;display:inline-flex;font-size:1rem;height:2.25em;justify-content:flex-start;line-height:1.5;padding-bottom:calc(0.375em - 1px);padding-left:calc(0.625em - 1px);padding-right:calc(0.625em - 1px);padding-top:calc(0.375em - 1px);position:relative;vertical-align:top}.pagination-previous:focus,.pagination-next:focus,.pagination-link:focus,.pagination-ellipsis:focus,.file-cta:focus,.file-name:focus,.select select:focus,.textarea:focus,.input:focus,#documenter .docs-sidebar form.docs-search>input:focus,.button:focus,.is-focused.pagination-previous,.is-focused.pagination-next,.is-focused.pagination-link,.is-focused.pagination-ellipsis,.is-focused.file-cta,.is-focused.file-name,.select select.is-focused,.is-focused.textarea,.is-focused.input,#documenter .docs-sidebar form.docs-search>input.is-focused,.is-focused.button,.pagination-previous:active,.pagination-next:active,.pagination-link:active,.pagination-ellipsis:active,.file-cta:active,.file-name:active,.select select:active,.textarea:active,.input:active,#documenter .docs-sidebar form.docs-search>input:active,.button:active,.is-active.pagination-previous,.is-active.pagination-next,.is-active.pagination-link,.is-active.pagination-ellipsis,.is-active.file-cta,.is-active.file-name,.select select.is-active,.is-active.textarea,.is-active.input,#documenter .docs-sidebar form.docs-search>input.is-active,.is-active.button{outline:none}.pagination-previous[disabled],.pagination-next[disabled],.pagination-link[disabled],.pagination-ellipsis[disabled],.file-cta[disabled],.file-name[disabled],.select select[disabled],.textarea[disabled],.input[disabled],#documenter .docs-sidebar form.docs-search>input[disabled],.button[disabled],fieldset[disabled] .pagination-previous,fieldset[disabled] .pagination-next,fieldset[disabled] .pagination-link,fieldset[disabled] .pagination-ellipsis,fieldset[disabled] .file-cta,fieldset[disabled] .file-name,fieldset[disabled] .select select,.select fieldset[disabled] select,fieldset[disabled] .textarea,fieldset[disabled] .input,fieldset[disabled] #documenter .docs-sidebar form.docs-search>input,#documenter .docs-sidebar fieldset[disabled] form.docs-search>input,fieldset[disabled] .button{cursor:not-allowed}/*! minireset.css v0.0.4 | MIT License | github.com/jgthms/minireset.css */html,body,p,ol,ul,li,dl,dt,dd,blockquote,figure,fieldset,legend,textarea,pre,iframe,hr,h1,h2,h3,h4,h5,h6{margin:0;padding:0}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}ul{list-style:none}button,input,select,textarea{margin:0}html{box-sizing:border-box}*,*::before,*::after{box-sizing:inherit}img,embed,iframe,object,video{height:auto;max-width:100%}audio{max-width:100%}iframe{border:0}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}td:not([align]),th:not([align]){text-align:left}html{background-color:#fff;font-size:16px;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;min-width:300px;overflow-x:auto;overflow-y:scroll;text-rendering:optimizeLegibility;text-size-adjust:100%}article,aside,figure,footer,header,hgroup,section{display:block}body,button,input,select,textarea{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif}code,pre{-moz-osx-font-smoothing:auto;-webkit-font-smoothing:auto;font-family:"JuliaMono","SFMono-Regular","Menlo","Consolas","Liberation Mono","DejaVu Sans Mono",monospace}body{color:#222;font-size:1em;font-weight:400;line-height:1.5}a{color:#2e63b8;cursor:pointer;text-decoration:none}a strong{color:currentColor}a:hover{color:#363636}code{background-color:rgba(0,0,0,0.05);color:#000;font-size:.875em;font-weight:normal;padding:.1em}hr{background-color:#f5f5f5;border:none;display:block;height:2px;margin:1.5rem 0}img{height:auto;max-width:100%}input[type="checkbox"],input[type="radio"]{vertical-align:baseline}small{font-size:.875em}span{font-style:inherit;font-weight:inherit}strong{color:#222;font-weight:700}fieldset{border:none}pre{-webkit-overflow-scrolling:touch;background-color:#f5f5f5;color:#222;font-size:.875em;overflow-x:auto;padding:1.25rem 1.5rem;white-space:pre;word-wrap:normal}pre code{background-color:transparent;color:currentColor;font-size:1em;padding:0}table td,table th{vertical-align:top}table td:not([align]),table th:not([align]){text-align:left}table th{color:#222}.is-clearfix::after{clear:both;content:" ";display:table}.is-pulled-left{float:left !important}.is-pulled-right{float:right !important}.is-clipped{overflow:hidden !important}.is-size-1{font-size:3rem !important}.is-size-2{font-size:2.5rem !important}.is-size-3{font-size:2rem !important}.is-size-4{font-size:1.5rem !important}.is-size-5{font-size:1.25rem !important}.is-size-6{font-size:1rem !important}.is-size-7,.docstring>section>a.docs-sourcelink{font-size:.75rem !important}@media screen and (max-width: 768px){.is-size-1-mobile{font-size:3rem !important}.is-size-2-mobile{font-size:2.5rem !important}.is-size-3-mobile{font-size:2rem !important}.is-size-4-mobile{font-size:1.5rem !important}.is-size-5-mobile{font-size:1.25rem !important}.is-size-6-mobile{font-size:1rem !important}.is-size-7-mobile{font-size:.75rem !important}}@media screen and (min-width: 769px),print{.is-size-1-tablet{font-size:3rem !important}.is-size-2-tablet{font-size:2.5rem !important}.is-size-3-tablet{font-size:2rem !important}.is-size-4-tablet{font-size:1.5rem !important}.is-size-5-tablet{font-size:1.25rem !important}.is-size-6-tablet{font-size:1rem !important}.is-size-7-tablet{font-size:.75rem !important}}@media screen and (max-width: 1055px){.is-size-1-touch{font-size:3rem !important}.is-size-2-touch{font-size:2.5rem !important}.is-size-3-touch{font-size:2rem !important}.is-size-4-touch{font-size:1.5rem !important}.is-size-5-touch{font-size:1.25rem !important}.is-size-6-touch{font-size:1rem !important}.is-size-7-touch{font-size:.75rem !important}}@media screen and (min-width: 1056px){.is-size-1-desktop{font-size:3rem !important}.is-size-2-desktop{font-size:2.5rem !important}.is-size-3-desktop{font-size:2rem !important}.is-size-4-desktop{font-size:1.5rem !important}.is-size-5-desktop{font-size:1.25rem !important}.is-size-6-desktop{font-size:1rem !important}.is-size-7-desktop{font-size:.75rem !important}}@media screen and (min-width: 1216px){.is-size-1-widescreen{font-size:3rem !important}.is-size-2-widescreen{font-size:2.5rem !important}.is-size-3-widescreen{font-size:2rem !important}.is-size-4-widescreen{font-size:1.5rem !important}.is-size-5-widescreen{font-size:1.25rem !important}.is-size-6-widescreen{font-size:1rem !important}.is-size-7-widescreen{font-size:.75rem !important}}@media screen and (min-width: 1408px){.is-size-1-fullhd{font-size:3rem !important}.is-size-2-fullhd{font-size:2.5rem !important}.is-size-3-fullhd{font-size:2rem !important}.is-size-4-fullhd{font-size:1.5rem !important}.is-size-5-fullhd{font-size:1.25rem !important}.is-size-6-fullhd{font-size:1rem !important}.is-size-7-fullhd{font-size:.75rem !important}}.has-text-centered{text-align:center !important}.has-text-justified{text-align:justify !important}.has-text-left{text-align:left !important}.has-text-right{text-align:right !important}@media screen and (max-width: 768px){.has-text-centered-mobile{text-align:center !important}}@media screen and (min-width: 769px),print{.has-text-centered-tablet{text-align:center !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-centered-tablet-only{text-align:center !important}}@media screen and (max-width: 1055px){.has-text-centered-touch{text-align:center !important}}@media screen and (min-width: 1056px){.has-text-centered-desktop{text-align:center !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-centered-desktop-only{text-align:center !important}}@media screen and (min-width: 1216px){.has-text-centered-widescreen{text-align:center !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-centered-widescreen-only{text-align:center !important}}@media screen and (min-width: 1408px){.has-text-centered-fullhd{text-align:center !important}}@media screen and (max-width: 768px){.has-text-justified-mobile{text-align:justify !important}}@media screen and (min-width: 769px),print{.has-text-justified-tablet{text-align:justify !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-justified-tablet-only{text-align:justify !important}}@media screen and (max-width: 1055px){.has-text-justified-touch{text-align:justify !important}}@media screen and (min-width: 1056px){.has-text-justified-desktop{text-align:justify !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-justified-desktop-only{text-align:justify !important}}@media screen and (min-width: 1216px){.has-text-justified-widescreen{text-align:justify !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-justified-widescreen-only{text-align:justify !important}}@media screen and (min-width: 1408px){.has-text-justified-fullhd{text-align:justify !important}}@media screen and (max-width: 768px){.has-text-left-mobile{text-align:left !important}}@media screen and (min-width: 769px),print{.has-text-left-tablet{text-align:left !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-left-tablet-only{text-align:left !important}}@media screen and (max-width: 1055px){.has-text-left-touch{text-align:left !important}}@media screen and (min-width: 1056px){.has-text-left-desktop{text-align:left !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-left-desktop-only{text-align:left !important}}@media screen and (min-width: 1216px){.has-text-left-widescreen{text-align:left !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-left-widescreen-only{text-align:left !important}}@media screen and (min-width: 1408px){.has-text-left-fullhd{text-align:left !important}}@media screen and (max-width: 768px){.has-text-right-mobile{text-align:right !important}}@media screen and (min-width: 769px),print{.has-text-right-tablet{text-align:right !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-right-tablet-only{text-align:right !important}}@media screen and (max-width: 1055px){.has-text-right-touch{text-align:right !important}}@media screen and (min-width: 1056px){.has-text-right-desktop{text-align:right !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-right-desktop-only{text-align:right !important}}@media screen and (min-width: 1216px){.has-text-right-widescreen{text-align:right !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-right-widescreen-only{text-align:right !important}}@media screen and (min-width: 1408px){.has-text-right-fullhd{text-align:right !important}}.is-capitalized{text-transform:capitalize !important}.is-lowercase{text-transform:lowercase !important}.is-uppercase{text-transform:uppercase !important}.is-italic{font-style:italic !important}.has-text-white{color:#fff !important}a.has-text-white:hover,a.has-text-white:focus{color:#e6e6e6 !important}.has-background-white{background-color:#fff !important}.has-text-black{color:#0a0a0a !important}a.has-text-black:hover,a.has-text-black:focus{color:#000 !important}.has-background-black{background-color:#0a0a0a !important}.has-text-light{color:#f5f5f5 !important}a.has-text-light:hover,a.has-text-light:focus{color:#dbdbdb !important}.has-background-light{background-color:#f5f5f5 !important}.has-text-dark{color:#363636 !important}a.has-text-dark:hover,a.has-text-dark:focus{color:#1c1c1c !important}.has-background-dark{background-color:#363636 !important}.has-text-primary{color:#4eb5de !important}a.has-text-primary:hover,a.has-text-primary:focus{color:#27a1d2 !important}.has-background-primary{background-color:#4eb5de !important}.has-text-link{color:#2e63b8 !important}a.has-text-link:hover,a.has-text-link:focus{color:#244d8f !important}.has-background-link{background-color:#2e63b8 !important}.has-text-info{color:#209cee !important}a.has-text-info:hover,a.has-text-info:focus{color:#1081cb !important}.has-background-info{background-color:#209cee !important}.has-text-success{color:#22c35b !important}a.has-text-success:hover,a.has-text-success:focus{color:#1a9847 !important}.has-background-success{background-color:#22c35b !important}.has-text-warning{color:#ffdd57 !important}a.has-text-warning:hover,a.has-text-warning:focus{color:#ffd324 !important}.has-background-warning{background-color:#ffdd57 !important}.has-text-danger{color:#da0b00 !important}a.has-text-danger:hover,a.has-text-danger:focus{color:#a70800 !important}.has-background-danger{background-color:#da0b00 !important}.has-text-black-bis{color:#121212 !important}.has-background-black-bis{background-color:#121212 !important}.has-text-black-ter{color:#242424 !important}.has-background-black-ter{background-color:#242424 !important}.has-text-grey-darker{color:#363636 !important}.has-background-grey-darker{background-color:#363636 !important}.has-text-grey-dark{color:#4a4a4a !important}.has-background-grey-dark{background-color:#4a4a4a !important}.has-text-grey{color:#6b6b6b !important}.has-background-grey{background-color:#6b6b6b !important}.has-text-grey-light{color:#b5b5b5 !important}.has-background-grey-light{background-color:#b5b5b5 !important}.has-text-grey-lighter{color:#dbdbdb !important}.has-background-grey-lighter{background-color:#dbdbdb !important}.has-text-white-ter{color:#f5f5f5 !important}.has-background-white-ter{background-color:#f5f5f5 !important}.has-text-white-bis{color:#fafafa !important}.has-background-white-bis{background-color:#fafafa !important}.has-text-weight-light{font-weight:300 !important}.has-text-weight-normal{font-weight:400 !important}.has-text-weight-medium{font-weight:500 !important}.has-text-weight-semibold{font-weight:600 !important}.has-text-weight-bold{font-weight:700 !important}.is-family-primary{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif !important}.is-family-secondary{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif !important}.is-family-sans-serif{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif !important}.is-family-monospace{font-family:"JuliaMono","SFMono-Regular","Menlo","Consolas","Liberation Mono","DejaVu Sans Mono",monospace !important}.is-family-code{font-family:"JuliaMono","SFMono-Regular","Menlo","Consolas","Liberation Mono","DejaVu Sans Mono",monospace !important}.is-block{display:block !important}@media screen and (max-width: 768px){.is-block-mobile{display:block !important}}@media screen and (min-width: 769px),print{.is-block-tablet{display:block !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-block-tablet-only{display:block !important}}@media screen and (max-width: 1055px){.is-block-touch{display:block !important}}@media screen and (min-width: 1056px){.is-block-desktop{display:block !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-block-desktop-only{display:block !important}}@media screen and (min-width: 1216px){.is-block-widescreen{display:block !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-block-widescreen-only{display:block !important}}@media screen and (min-width: 1408px){.is-block-fullhd{display:block !important}}.is-flex{display:flex !important}@media screen and (max-width: 768px){.is-flex-mobile{display:flex !important}}@media screen and (min-width: 769px),print{.is-flex-tablet{display:flex !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-flex-tablet-only{display:flex !important}}@media screen and (max-width: 1055px){.is-flex-touch{display:flex !important}}@media screen and (min-width: 1056px){.is-flex-desktop{display:flex !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-flex-desktop-only{display:flex !important}}@media screen and (min-width: 1216px){.is-flex-widescreen{display:flex !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-flex-widescreen-only{display:flex !important}}@media screen and (min-width: 1408px){.is-flex-fullhd{display:flex !important}}.is-inline{display:inline !important}@media screen and (max-width: 768px){.is-inline-mobile{display:inline !important}}@media screen and (min-width: 769px),print{.is-inline-tablet{display:inline !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-inline-tablet-only{display:inline !important}}@media screen and (max-width: 1055px){.is-inline-touch{display:inline !important}}@media screen and (min-width: 1056px){.is-inline-desktop{display:inline !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-inline-desktop-only{display:inline !important}}@media screen and (min-width: 1216px){.is-inline-widescreen{display:inline !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-inline-widescreen-only{display:inline !important}}@media screen and (min-width: 1408px){.is-inline-fullhd{display:inline !important}}.is-inline-block{display:inline-block !important}@media screen and (max-width: 768px){.is-inline-block-mobile{display:inline-block !important}}@media screen and (min-width: 769px),print{.is-inline-block-tablet{display:inline-block !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-inline-block-tablet-only{display:inline-block !important}}@media screen and (max-width: 1055px){.is-inline-block-touch{display:inline-block !important}}@media screen and (min-width: 1056px){.is-inline-block-desktop{display:inline-block !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-inline-block-desktop-only{display:inline-block !important}}@media screen and (min-width: 1216px){.is-inline-block-widescreen{display:inline-block !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-inline-block-widescreen-only{display:inline-block !important}}@media screen and (min-width: 1408px){.is-inline-block-fullhd{display:inline-block !important}}.is-inline-flex{display:inline-flex !important}@media screen and (max-width: 768px){.is-inline-flex-mobile{display:inline-flex !important}}@media screen and (min-width: 769px),print{.is-inline-flex-tablet{display:inline-flex !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-inline-flex-tablet-only{display:inline-flex !important}}@media screen and (max-width: 1055px){.is-inline-flex-touch{display:inline-flex !important}}@media screen and (min-width: 1056px){.is-inline-flex-desktop{display:inline-flex !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-inline-flex-desktop-only{display:inline-flex !important}}@media screen and (min-width: 1216px){.is-inline-flex-widescreen{display:inline-flex !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-inline-flex-widescreen-only{display:inline-flex !important}}@media screen and (min-width: 1408px){.is-inline-flex-fullhd{display:inline-flex !important}}.is-hidden{display:none !important}.is-sr-only{border:none !important;clip:rect(0, 0, 0, 0) !important;height:0.01em !important;overflow:hidden !important;padding:0 !important;position:absolute !important;white-space:nowrap !important;width:0.01em !important}@media screen and (max-width: 768px){.is-hidden-mobile{display:none !important}}@media screen and (min-width: 769px),print{.is-hidden-tablet{display:none !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-hidden-tablet-only{display:none !important}}@media screen and (max-width: 1055px){.is-hidden-touch{display:none !important}}@media screen and (min-width: 1056px){.is-hidden-desktop{display:none !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-hidden-desktop-only{display:none !important}}@media screen and (min-width: 1216px){.is-hidden-widescreen{display:none !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-hidden-widescreen-only{display:none !important}}@media screen and (min-width: 1408px){.is-hidden-fullhd{display:none !important}}.is-invisible{visibility:hidden !important}@media screen and (max-width: 768px){.is-invisible-mobile{visibility:hidden !important}}@media screen and (min-width: 769px),print{.is-invisible-tablet{visibility:hidden !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-invisible-tablet-only{visibility:hidden !important}}@media screen and (max-width: 1055px){.is-invisible-touch{visibility:hidden !important}}@media screen and (min-width: 1056px){.is-invisible-desktop{visibility:hidden !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-invisible-desktop-only{visibility:hidden !important}}@media screen and (min-width: 1216px){.is-invisible-widescreen{visibility:hidden !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-invisible-widescreen-only{visibility:hidden !important}}@media screen and (min-width: 1408px){.is-invisible-fullhd{visibility:hidden !important}}.is-marginless{margin:0 !important}.is-paddingless{padding:0 !important}.is-radiusless{border-radius:0 !important}.is-shadowless{box-shadow:none !important}.is-relative{position:relative !important}.box{background-color:#fff;border-radius:6px;box-shadow:0 2px 3px rgba(10,10,10,0.1),0 0 0 1px rgba(10,10,10,0.1);color:#222;display:block;padding:1.25rem}a.box:hover,a.box:focus{box-shadow:0 2px 3px rgba(10,10,10,0.1),0 0 0 1px #2e63b8}a.box:active{box-shadow:inset 0 1px 2px rgba(10,10,10,0.2),0 0 0 1px #2e63b8}.button{background-color:#fff;border-color:#dbdbdb;border-width:1px;color:#363636;cursor:pointer;justify-content:center;padding-bottom:calc(0.375em - 1px);padding-left:.75em;padding-right:.75em;padding-top:calc(0.375em - 1px);text-align:center;white-space:nowrap}.button strong{color:inherit}.button .icon,.button .icon.is-small,.button #documenter .docs-sidebar form.docs-search>input.icon,#documenter .docs-sidebar .button form.docs-search>input.icon,.button .icon.is-medium,.button .icon.is-large{height:1.5em;width:1.5em}.button .icon:first-child:not(:last-child){margin-left:calc(-0.375em - 1px);margin-right:0.1875em}.button .icon:last-child:not(:first-child){margin-left:0.1875em;margin-right:calc(-0.375em - 1px)}.button .icon:first-child:last-child{margin-left:calc(-0.375em - 1px);margin-right:calc(-0.375em - 1px)}.button:hover,.button.is-hovered{border-color:#b5b5b5;color:#363636}.button:focus,.button.is-focused{border-color:#3c5dcd;color:#363636}.button:focus:not(:active),.button.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(46,99,184,0.25)}.button:active,.button.is-active{border-color:#4a4a4a;color:#363636}.button.is-text{background-color:transparent;border-color:transparent;color:#222;text-decoration:underline}.button.is-text:hover,.button.is-text.is-hovered,.button.is-text:focus,.button.is-text.is-focused{background-color:#f5f5f5;color:#222}.button.is-text:active,.button.is-text.is-active{background-color:#e8e8e8;color:#222}.button.is-text[disabled],fieldset[disabled] .button.is-text{background-color:transparent;border-color:transparent;box-shadow:none}.button.is-white{background-color:#fff;border-color:transparent;color:#0a0a0a}.button.is-white:hover,.button.is-white.is-hovered{background-color:#f9f9f9;border-color:transparent;color:#0a0a0a}.button.is-white:focus,.button.is-white.is-focused{border-color:transparent;color:#0a0a0a}.button.is-white:focus:not(:active),.button.is-white.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(255,255,255,0.25)}.button.is-white:active,.button.is-white.is-active{background-color:#f2f2f2;border-color:transparent;color:#0a0a0a}.button.is-white[disabled],fieldset[disabled] .button.is-white{background-color:#fff;border-color:transparent;box-shadow:none}.button.is-white.is-inverted{background-color:#0a0a0a;color:#fff}.button.is-white.is-inverted:hover,.button.is-white.is-inverted.is-hovered{background-color:#000}.button.is-white.is-inverted[disabled],fieldset[disabled] .button.is-white.is-inverted{background-color:#0a0a0a;border-color:transparent;box-shadow:none;color:#fff}.button.is-white.is-loading::after{border-color:transparent transparent #0a0a0a #0a0a0a !important}.button.is-white.is-outlined{background-color:transparent;border-color:#fff;color:#fff}.button.is-white.is-outlined:hover,.button.is-white.is-outlined.is-hovered,.button.is-white.is-outlined:focus,.button.is-white.is-outlined.is-focused{background-color:#fff;border-color:#fff;color:#0a0a0a}.button.is-white.is-outlined.is-loading::after{border-color:transparent transparent #fff #fff !important}.button.is-white.is-outlined.is-loading:hover::after,.button.is-white.is-outlined.is-loading.is-hovered::after,.button.is-white.is-outlined.is-loading:focus::after,.button.is-white.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #0a0a0a #0a0a0a !important}.button.is-white.is-outlined[disabled],fieldset[disabled] .button.is-white.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}.button.is-white.is-inverted.is-outlined{background-color:transparent;border-color:#0a0a0a;color:#0a0a0a}.button.is-white.is-inverted.is-outlined:hover,.button.is-white.is-inverted.is-outlined.is-hovered,.button.is-white.is-inverted.is-outlined:focus,.button.is-white.is-inverted.is-outlined.is-focused{background-color:#0a0a0a;color:#fff}.button.is-white.is-inverted.is-outlined.is-loading:hover::after,.button.is-white.is-inverted.is-outlined.is-loading.is-hovered::after,.button.is-white.is-inverted.is-outlined.is-loading:focus::after,.button.is-white.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}.button.is-white.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-white.is-inverted.is-outlined{background-color:transparent;border-color:#0a0a0a;box-shadow:none;color:#0a0a0a}.button.is-black{background-color:#0a0a0a;border-color:transparent;color:#fff}.button.is-black:hover,.button.is-black.is-hovered{background-color:#040404;border-color:transparent;color:#fff}.button.is-black:focus,.button.is-black.is-focused{border-color:transparent;color:#fff}.button.is-black:focus:not(:active),.button.is-black.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(10,10,10,0.25)}.button.is-black:active,.button.is-black.is-active{background-color:#000;border-color:transparent;color:#fff}.button.is-black[disabled],fieldset[disabled] .button.is-black{background-color:#0a0a0a;border-color:transparent;box-shadow:none}.button.is-black.is-inverted{background-color:#fff;color:#0a0a0a}.button.is-black.is-inverted:hover,.button.is-black.is-inverted.is-hovered{background-color:#f2f2f2}.button.is-black.is-inverted[disabled],fieldset[disabled] .button.is-black.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#0a0a0a}.button.is-black.is-loading::after{border-color:transparent transparent #fff #fff !important}.button.is-black.is-outlined{background-color:transparent;border-color:#0a0a0a;color:#0a0a0a}.button.is-black.is-outlined:hover,.button.is-black.is-outlined.is-hovered,.button.is-black.is-outlined:focus,.button.is-black.is-outlined.is-focused{background-color:#0a0a0a;border-color:#0a0a0a;color:#fff}.button.is-black.is-outlined.is-loading::after{border-color:transparent transparent #0a0a0a #0a0a0a !important}.button.is-black.is-outlined.is-loading:hover::after,.button.is-black.is-outlined.is-loading.is-hovered::after,.button.is-black.is-outlined.is-loading:focus::after,.button.is-black.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}.button.is-black.is-outlined[disabled],fieldset[disabled] .button.is-black.is-outlined{background-color:transparent;border-color:#0a0a0a;box-shadow:none;color:#0a0a0a}.button.is-black.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}.button.is-black.is-inverted.is-outlined:hover,.button.is-black.is-inverted.is-outlined.is-hovered,.button.is-black.is-inverted.is-outlined:focus,.button.is-black.is-inverted.is-outlined.is-focused{background-color:#fff;color:#0a0a0a}.button.is-black.is-inverted.is-outlined.is-loading:hover::after,.button.is-black.is-inverted.is-outlined.is-loading.is-hovered::after,.button.is-black.is-inverted.is-outlined.is-loading:focus::after,.button.is-black.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #0a0a0a #0a0a0a !important}.button.is-black.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-black.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}.button.is-light{background-color:#f5f5f5;border-color:transparent;color:#363636}.button.is-light:hover,.button.is-light.is-hovered{background-color:#eee;border-color:transparent;color:#363636}.button.is-light:focus,.button.is-light.is-focused{border-color:transparent;color:#363636}.button.is-light:focus:not(:active),.button.is-light.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(245,245,245,0.25)}.button.is-light:active,.button.is-light.is-active{background-color:#e8e8e8;border-color:transparent;color:#363636}.button.is-light[disabled],fieldset[disabled] .button.is-light{background-color:#f5f5f5;border-color:transparent;box-shadow:none}.button.is-light.is-inverted{background-color:#363636;color:#f5f5f5}.button.is-light.is-inverted:hover,.button.is-light.is-inverted.is-hovered{background-color:#292929}.button.is-light.is-inverted[disabled],fieldset[disabled] .button.is-light.is-inverted{background-color:#363636;border-color:transparent;box-shadow:none;color:#f5f5f5}.button.is-light.is-loading::after{border-color:transparent transparent #363636 #363636 !important}.button.is-light.is-outlined{background-color:transparent;border-color:#f5f5f5;color:#f5f5f5}.button.is-light.is-outlined:hover,.button.is-light.is-outlined.is-hovered,.button.is-light.is-outlined:focus,.button.is-light.is-outlined.is-focused{background-color:#f5f5f5;border-color:#f5f5f5;color:#363636}.button.is-light.is-outlined.is-loading::after{border-color:transparent transparent #f5f5f5 #f5f5f5 !important}.button.is-light.is-outlined.is-loading:hover::after,.button.is-light.is-outlined.is-loading.is-hovered::after,.button.is-light.is-outlined.is-loading:focus::after,.button.is-light.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #363636 #363636 !important}.button.is-light.is-outlined[disabled],fieldset[disabled] .button.is-light.is-outlined{background-color:transparent;border-color:#f5f5f5;box-shadow:none;color:#f5f5f5}.button.is-light.is-inverted.is-outlined{background-color:transparent;border-color:#363636;color:#363636}.button.is-light.is-inverted.is-outlined:hover,.button.is-light.is-inverted.is-outlined.is-hovered,.button.is-light.is-inverted.is-outlined:focus,.button.is-light.is-inverted.is-outlined.is-focused{background-color:#363636;color:#f5f5f5}.button.is-light.is-inverted.is-outlined.is-loading:hover::after,.button.is-light.is-inverted.is-outlined.is-loading.is-hovered::after,.button.is-light.is-inverted.is-outlined.is-loading:focus::after,.button.is-light.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #f5f5f5 #f5f5f5 !important}.button.is-light.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-light.is-inverted.is-outlined{background-color:transparent;border-color:#363636;box-shadow:none;color:#363636}.button.is-dark,.content kbd.button{background-color:#363636;border-color:transparent;color:#f5f5f5}.button.is-dark:hover,.content kbd.button:hover,.button.is-dark.is-hovered,.content kbd.button.is-hovered{background-color:#2f2f2f;border-color:transparent;color:#f5f5f5}.button.is-dark:focus,.content kbd.button:focus,.button.is-dark.is-focused,.content kbd.button.is-focused{border-color:transparent;color:#f5f5f5}.button.is-dark:focus:not(:active),.content kbd.button:focus:not(:active),.button.is-dark.is-focused:not(:active),.content kbd.button.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(54,54,54,0.25)}.button.is-dark:active,.content kbd.button:active,.button.is-dark.is-active,.content kbd.button.is-active{background-color:#292929;border-color:transparent;color:#f5f5f5}.button.is-dark[disabled],.content kbd.button[disabled],fieldset[disabled] .button.is-dark,fieldset[disabled] .content kbd.button,.content fieldset[disabled] kbd.button{background-color:#363636;border-color:transparent;box-shadow:none}.button.is-dark.is-inverted,.content kbd.button.is-inverted{background-color:#f5f5f5;color:#363636}.button.is-dark.is-inverted:hover,.content kbd.button.is-inverted:hover,.button.is-dark.is-inverted.is-hovered,.content kbd.button.is-inverted.is-hovered{background-color:#e8e8e8}.button.is-dark.is-inverted[disabled],.content kbd.button.is-inverted[disabled],fieldset[disabled] .button.is-dark.is-inverted,fieldset[disabled] .content kbd.button.is-inverted,.content fieldset[disabled] kbd.button.is-inverted{background-color:#f5f5f5;border-color:transparent;box-shadow:none;color:#363636}.button.is-dark.is-loading::after,.content kbd.button.is-loading::after{border-color:transparent transparent #f5f5f5 #f5f5f5 !important}.button.is-dark.is-outlined,.content kbd.button.is-outlined{background-color:transparent;border-color:#363636;color:#363636}.button.is-dark.is-outlined:hover,.content kbd.button.is-outlined:hover,.button.is-dark.is-outlined.is-hovered,.content kbd.button.is-outlined.is-hovered,.button.is-dark.is-outlined:focus,.content kbd.button.is-outlined:focus,.button.is-dark.is-outlined.is-focused,.content kbd.button.is-outlined.is-focused{background-color:#363636;border-color:#363636;color:#f5f5f5}.button.is-dark.is-outlined.is-loading::after,.content kbd.button.is-outlined.is-loading::after{border-color:transparent transparent #363636 #363636 !important}.button.is-dark.is-outlined.is-loading:hover::after,.content kbd.button.is-outlined.is-loading:hover::after,.button.is-dark.is-outlined.is-loading.is-hovered::after,.content kbd.button.is-outlined.is-loading.is-hovered::after,.button.is-dark.is-outlined.is-loading:focus::after,.content kbd.button.is-outlined.is-loading:focus::after,.button.is-dark.is-outlined.is-loading.is-focused::after,.content kbd.button.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #f5f5f5 #f5f5f5 !important}.button.is-dark.is-outlined[disabled],.content kbd.button.is-outlined[disabled],fieldset[disabled] .button.is-dark.is-outlined,fieldset[disabled] .content kbd.button.is-outlined,.content fieldset[disabled] kbd.button.is-outlined{background-color:transparent;border-color:#363636;box-shadow:none;color:#363636}.button.is-dark.is-inverted.is-outlined,.content kbd.button.is-inverted.is-outlined{background-color:transparent;border-color:#f5f5f5;color:#f5f5f5}.button.is-dark.is-inverted.is-outlined:hover,.content kbd.button.is-inverted.is-outlined:hover,.button.is-dark.is-inverted.is-outlined.is-hovered,.content kbd.button.is-inverted.is-outlined.is-hovered,.button.is-dark.is-inverted.is-outlined:focus,.content kbd.button.is-inverted.is-outlined:focus,.button.is-dark.is-inverted.is-outlined.is-focused,.content kbd.button.is-inverted.is-outlined.is-focused{background-color:#f5f5f5;color:#363636}.button.is-dark.is-inverted.is-outlined.is-loading:hover::after,.content kbd.button.is-inverted.is-outlined.is-loading:hover::after,.button.is-dark.is-inverted.is-outlined.is-loading.is-hovered::after,.content kbd.button.is-inverted.is-outlined.is-loading.is-hovered::after,.button.is-dark.is-inverted.is-outlined.is-loading:focus::after,.content kbd.button.is-inverted.is-outlined.is-loading:focus::after,.button.is-dark.is-inverted.is-outlined.is-loading.is-focused::after,.content kbd.button.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #363636 #363636 !important}.button.is-dark.is-inverted.is-outlined[disabled],.content kbd.button.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-dark.is-inverted.is-outlined,fieldset[disabled] .content kbd.button.is-inverted.is-outlined,.content fieldset[disabled] kbd.button.is-inverted.is-outlined{background-color:transparent;border-color:#f5f5f5;box-shadow:none;color:#f5f5f5}.button.is-primary,.docstring>section>a.button.docs-sourcelink{background-color:#4eb5de;border-color:transparent;color:#fff}.button.is-primary:hover,.docstring>section>a.button.docs-sourcelink:hover,.button.is-primary.is-hovered,.docstring>section>a.button.is-hovered.docs-sourcelink{background-color:#43b1dc;border-color:transparent;color:#fff}.button.is-primary:focus,.docstring>section>a.button.docs-sourcelink:focus,.button.is-primary.is-focused,.docstring>section>a.button.is-focused.docs-sourcelink{border-color:transparent;color:#fff}.button.is-primary:focus:not(:active),.docstring>section>a.button.docs-sourcelink:focus:not(:active),.button.is-primary.is-focused:not(:active),.docstring>section>a.button.is-focused.docs-sourcelink:not(:active){box-shadow:0 0 0 0.125em rgba(78,181,222,0.25)}.button.is-primary:active,.docstring>section>a.button.docs-sourcelink:active,.button.is-primary.is-active,.docstring>section>a.button.is-active.docs-sourcelink{background-color:#39acda;border-color:transparent;color:#fff}.button.is-primary[disabled],.docstring>section>a.button.docs-sourcelink[disabled],fieldset[disabled] .button.is-primary,fieldset[disabled] .docstring>section>a.button.docs-sourcelink{background-color:#4eb5de;border-color:transparent;box-shadow:none}.button.is-primary.is-inverted,.docstring>section>a.button.is-inverted.docs-sourcelink{background-color:#fff;color:#4eb5de}.button.is-primary.is-inverted:hover,.docstring>section>a.button.is-inverted.docs-sourcelink:hover,.button.is-primary.is-inverted.is-hovered,.docstring>section>a.button.is-inverted.is-hovered.docs-sourcelink{background-color:#f2f2f2}.button.is-primary.is-inverted[disabled],.docstring>section>a.button.is-inverted.docs-sourcelink[disabled],fieldset[disabled] .button.is-primary.is-inverted,fieldset[disabled] .docstring>section>a.button.is-inverted.docs-sourcelink{background-color:#fff;border-color:transparent;box-shadow:none;color:#4eb5de}.button.is-primary.is-loading::after,.docstring>section>a.button.is-loading.docs-sourcelink::after{border-color:transparent transparent #fff #fff !important}.button.is-primary.is-outlined,.docstring>section>a.button.is-outlined.docs-sourcelink{background-color:transparent;border-color:#4eb5de;color:#4eb5de}.button.is-primary.is-outlined:hover,.docstring>section>a.button.is-outlined.docs-sourcelink:hover,.button.is-primary.is-outlined.is-hovered,.docstring>section>a.button.is-outlined.is-hovered.docs-sourcelink,.button.is-primary.is-outlined:focus,.docstring>section>a.button.is-outlined.docs-sourcelink:focus,.button.is-primary.is-outlined.is-focused,.docstring>section>a.button.is-outlined.is-focused.docs-sourcelink{background-color:#4eb5de;border-color:#4eb5de;color:#fff}.button.is-primary.is-outlined.is-loading::after,.docstring>section>a.button.is-outlined.is-loading.docs-sourcelink::after{border-color:transparent transparent #4eb5de #4eb5de !important}.button.is-primary.is-outlined.is-loading:hover::after,.docstring>section>a.button.is-outlined.is-loading.docs-sourcelink:hover::after,.button.is-primary.is-outlined.is-loading.is-hovered::after,.docstring>section>a.button.is-outlined.is-loading.is-hovered.docs-sourcelink::after,.button.is-primary.is-outlined.is-loading:focus::after,.docstring>section>a.button.is-outlined.is-loading.docs-sourcelink:focus::after,.button.is-primary.is-outlined.is-loading.is-focused::after,.docstring>section>a.button.is-outlined.is-loading.is-focused.docs-sourcelink::after{border-color:transparent transparent #fff #fff !important}.button.is-primary.is-outlined[disabled],.docstring>section>a.button.is-outlined.docs-sourcelink[disabled],fieldset[disabled] .button.is-primary.is-outlined,fieldset[disabled] .docstring>section>a.button.is-outlined.docs-sourcelink{background-color:transparent;border-color:#4eb5de;box-shadow:none;color:#4eb5de}.button.is-primary.is-inverted.is-outlined,.docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink{background-color:transparent;border-color:#fff;color:#fff}.button.is-primary.is-inverted.is-outlined:hover,.docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink:hover,.button.is-primary.is-inverted.is-outlined.is-hovered,.docstring>section>a.button.is-inverted.is-outlined.is-hovered.docs-sourcelink,.button.is-primary.is-inverted.is-outlined:focus,.docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink:focus,.button.is-primary.is-inverted.is-outlined.is-focused,.docstring>section>a.button.is-inverted.is-outlined.is-focused.docs-sourcelink{background-color:#fff;color:#4eb5de}.button.is-primary.is-inverted.is-outlined.is-loading:hover::after,.docstring>section>a.button.is-inverted.is-outlined.is-loading.docs-sourcelink:hover::after,.button.is-primary.is-inverted.is-outlined.is-loading.is-hovered::after,.docstring>section>a.button.is-inverted.is-outlined.is-loading.is-hovered.docs-sourcelink::after,.button.is-primary.is-inverted.is-outlined.is-loading:focus::after,.docstring>section>a.button.is-inverted.is-outlined.is-loading.docs-sourcelink:focus::after,.button.is-primary.is-inverted.is-outlined.is-loading.is-focused::after,.docstring>section>a.button.is-inverted.is-outlined.is-loading.is-focused.docs-sourcelink::after{border-color:transparent transparent #4eb5de #4eb5de !important}.button.is-primary.is-inverted.is-outlined[disabled],.docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink[disabled],fieldset[disabled] .button.is-primary.is-inverted.is-outlined,fieldset[disabled] .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}.button.is-link{background-color:#2e63b8;border-color:transparent;color:#fff}.button.is-link:hover,.button.is-link.is-hovered{background-color:#2b5eae;border-color:transparent;color:#fff}.button.is-link:focus,.button.is-link.is-focused{border-color:transparent;color:#fff}.button.is-link:focus:not(:active),.button.is-link.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(46,99,184,0.25)}.button.is-link:active,.button.is-link.is-active{background-color:#2958a4;border-color:transparent;color:#fff}.button.is-link[disabled],fieldset[disabled] .button.is-link{background-color:#2e63b8;border-color:transparent;box-shadow:none}.button.is-link.is-inverted{background-color:#fff;color:#2e63b8}.button.is-link.is-inverted:hover,.button.is-link.is-inverted.is-hovered{background-color:#f2f2f2}.button.is-link.is-inverted[disabled],fieldset[disabled] .button.is-link.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#2e63b8}.button.is-link.is-loading::after{border-color:transparent transparent #fff #fff !important}.button.is-link.is-outlined{background-color:transparent;border-color:#2e63b8;color:#2e63b8}.button.is-link.is-outlined:hover,.button.is-link.is-outlined.is-hovered,.button.is-link.is-outlined:focus,.button.is-link.is-outlined.is-focused{background-color:#2e63b8;border-color:#2e63b8;color:#fff}.button.is-link.is-outlined.is-loading::after{border-color:transparent transparent #2e63b8 #2e63b8 !important}.button.is-link.is-outlined.is-loading:hover::after,.button.is-link.is-outlined.is-loading.is-hovered::after,.button.is-link.is-outlined.is-loading:focus::after,.button.is-link.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}.button.is-link.is-outlined[disabled],fieldset[disabled] .button.is-link.is-outlined{background-color:transparent;border-color:#2e63b8;box-shadow:none;color:#2e63b8}.button.is-link.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}.button.is-link.is-inverted.is-outlined:hover,.button.is-link.is-inverted.is-outlined.is-hovered,.button.is-link.is-inverted.is-outlined:focus,.button.is-link.is-inverted.is-outlined.is-focused{background-color:#fff;color:#2e63b8}.button.is-link.is-inverted.is-outlined.is-loading:hover::after,.button.is-link.is-inverted.is-outlined.is-loading.is-hovered::after,.button.is-link.is-inverted.is-outlined.is-loading:focus::after,.button.is-link.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #2e63b8 #2e63b8 !important}.button.is-link.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-link.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}.button.is-info{background-color:#209cee;border-color:transparent;color:#fff}.button.is-info:hover,.button.is-info.is-hovered{background-color:#1497ed;border-color:transparent;color:#fff}.button.is-info:focus,.button.is-info.is-focused{border-color:transparent;color:#fff}.button.is-info:focus:not(:active),.button.is-info.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(32,156,238,0.25)}.button.is-info:active,.button.is-info.is-active{background-color:#1190e3;border-color:transparent;color:#fff}.button.is-info[disabled],fieldset[disabled] .button.is-info{background-color:#209cee;border-color:transparent;box-shadow:none}.button.is-info.is-inverted{background-color:#fff;color:#209cee}.button.is-info.is-inverted:hover,.button.is-info.is-inverted.is-hovered{background-color:#f2f2f2}.button.is-info.is-inverted[disabled],fieldset[disabled] .button.is-info.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#209cee}.button.is-info.is-loading::after{border-color:transparent transparent #fff #fff !important}.button.is-info.is-outlined{background-color:transparent;border-color:#209cee;color:#209cee}.button.is-info.is-outlined:hover,.button.is-info.is-outlined.is-hovered,.button.is-info.is-outlined:focus,.button.is-info.is-outlined.is-focused{background-color:#209cee;border-color:#209cee;color:#fff}.button.is-info.is-outlined.is-loading::after{border-color:transparent transparent #209cee #209cee !important}.button.is-info.is-outlined.is-loading:hover::after,.button.is-info.is-outlined.is-loading.is-hovered::after,.button.is-info.is-outlined.is-loading:focus::after,.button.is-info.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}.button.is-info.is-outlined[disabled],fieldset[disabled] .button.is-info.is-outlined{background-color:transparent;border-color:#209cee;box-shadow:none;color:#209cee}.button.is-info.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}.button.is-info.is-inverted.is-outlined:hover,.button.is-info.is-inverted.is-outlined.is-hovered,.button.is-info.is-inverted.is-outlined:focus,.button.is-info.is-inverted.is-outlined.is-focused{background-color:#fff;color:#209cee}.button.is-info.is-inverted.is-outlined.is-loading:hover::after,.button.is-info.is-inverted.is-outlined.is-loading.is-hovered::after,.button.is-info.is-inverted.is-outlined.is-loading:focus::after,.button.is-info.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #209cee #209cee !important}.button.is-info.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-info.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}.button.is-success{background-color:#22c35b;border-color:transparent;color:#fff}.button.is-success:hover,.button.is-success.is-hovered{background-color:#20b856;border-color:transparent;color:#fff}.button.is-success:focus,.button.is-success.is-focused{border-color:transparent;color:#fff}.button.is-success:focus:not(:active),.button.is-success.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(34,195,91,0.25)}.button.is-success:active,.button.is-success.is-active{background-color:#1ead51;border-color:transparent;color:#fff}.button.is-success[disabled],fieldset[disabled] .button.is-success{background-color:#22c35b;border-color:transparent;box-shadow:none}.button.is-success.is-inverted{background-color:#fff;color:#22c35b}.button.is-success.is-inverted:hover,.button.is-success.is-inverted.is-hovered{background-color:#f2f2f2}.button.is-success.is-inverted[disabled],fieldset[disabled] .button.is-success.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#22c35b}.button.is-success.is-loading::after{border-color:transparent transparent #fff #fff !important}.button.is-success.is-outlined{background-color:transparent;border-color:#22c35b;color:#22c35b}.button.is-success.is-outlined:hover,.button.is-success.is-outlined.is-hovered,.button.is-success.is-outlined:focus,.button.is-success.is-outlined.is-focused{background-color:#22c35b;border-color:#22c35b;color:#fff}.button.is-success.is-outlined.is-loading::after{border-color:transparent transparent #22c35b #22c35b !important}.button.is-success.is-outlined.is-loading:hover::after,.button.is-success.is-outlined.is-loading.is-hovered::after,.button.is-success.is-outlined.is-loading:focus::after,.button.is-success.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}.button.is-success.is-outlined[disabled],fieldset[disabled] .button.is-success.is-outlined{background-color:transparent;border-color:#22c35b;box-shadow:none;color:#22c35b}.button.is-success.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}.button.is-success.is-inverted.is-outlined:hover,.button.is-success.is-inverted.is-outlined.is-hovered,.button.is-success.is-inverted.is-outlined:focus,.button.is-success.is-inverted.is-outlined.is-focused{background-color:#fff;color:#22c35b}.button.is-success.is-inverted.is-outlined.is-loading:hover::after,.button.is-success.is-inverted.is-outlined.is-loading.is-hovered::after,.button.is-success.is-inverted.is-outlined.is-loading:focus::after,.button.is-success.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #22c35b #22c35b !important}.button.is-success.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-success.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}.button.is-warning{background-color:#ffdd57;border-color:transparent;color:rgba(0,0,0,0.7)}.button.is-warning:hover,.button.is-warning.is-hovered{background-color:#ffda4a;border-color:transparent;color:rgba(0,0,0,0.7)}.button.is-warning:focus,.button.is-warning.is-focused{border-color:transparent;color:rgba(0,0,0,0.7)}.button.is-warning:focus:not(:active),.button.is-warning.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(255,221,87,0.25)}.button.is-warning:active,.button.is-warning.is-active{background-color:#ffd83e;border-color:transparent;color:rgba(0,0,0,0.7)}.button.is-warning[disabled],fieldset[disabled] .button.is-warning{background-color:#ffdd57;border-color:transparent;box-shadow:none}.button.is-warning.is-inverted{background-color:rgba(0,0,0,0.7);color:#ffdd57}.button.is-warning.is-inverted:hover,.button.is-warning.is-inverted.is-hovered{background-color:rgba(0,0,0,0.7)}.button.is-warning.is-inverted[disabled],fieldset[disabled] .button.is-warning.is-inverted{background-color:rgba(0,0,0,0.7);border-color:transparent;box-shadow:none;color:#ffdd57}.button.is-warning.is-loading::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}.button.is-warning.is-outlined{background-color:transparent;border-color:#ffdd57;color:#ffdd57}.button.is-warning.is-outlined:hover,.button.is-warning.is-outlined.is-hovered,.button.is-warning.is-outlined:focus,.button.is-warning.is-outlined.is-focused{background-color:#ffdd57;border-color:#ffdd57;color:rgba(0,0,0,0.7)}.button.is-warning.is-outlined.is-loading::after{border-color:transparent transparent #ffdd57 #ffdd57 !important}.button.is-warning.is-outlined.is-loading:hover::after,.button.is-warning.is-outlined.is-loading.is-hovered::after,.button.is-warning.is-outlined.is-loading:focus::after,.button.is-warning.is-outlined.is-loading.is-focused::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}.button.is-warning.is-outlined[disabled],fieldset[disabled] .button.is-warning.is-outlined{background-color:transparent;border-color:#ffdd57;box-shadow:none;color:#ffdd57}.button.is-warning.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,0.7);color:rgba(0,0,0,0.7)}.button.is-warning.is-inverted.is-outlined:hover,.button.is-warning.is-inverted.is-outlined.is-hovered,.button.is-warning.is-inverted.is-outlined:focus,.button.is-warning.is-inverted.is-outlined.is-focused{background-color:rgba(0,0,0,0.7);color:#ffdd57}.button.is-warning.is-inverted.is-outlined.is-loading:hover::after,.button.is-warning.is-inverted.is-outlined.is-loading.is-hovered::after,.button.is-warning.is-inverted.is-outlined.is-loading:focus::after,.button.is-warning.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #ffdd57 #ffdd57 !important}.button.is-warning.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-warning.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,0.7);box-shadow:none;color:rgba(0,0,0,0.7)}.button.is-danger{background-color:#da0b00;border-color:transparent;color:#fff}.button.is-danger:hover,.button.is-danger.is-hovered{background-color:#cd0a00;border-color:transparent;color:#fff}.button.is-danger:focus,.button.is-danger.is-focused{border-color:transparent;color:#fff}.button.is-danger:focus:not(:active),.button.is-danger.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(218,11,0,0.25)}.button.is-danger:active,.button.is-danger.is-active{background-color:#c10a00;border-color:transparent;color:#fff}.button.is-danger[disabled],fieldset[disabled] .button.is-danger{background-color:#da0b00;border-color:transparent;box-shadow:none}.button.is-danger.is-inverted{background-color:#fff;color:#da0b00}.button.is-danger.is-inverted:hover,.button.is-danger.is-inverted.is-hovered{background-color:#f2f2f2}.button.is-danger.is-inverted[disabled],fieldset[disabled] .button.is-danger.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#da0b00}.button.is-danger.is-loading::after{border-color:transparent transparent #fff #fff !important}.button.is-danger.is-outlined{background-color:transparent;border-color:#da0b00;color:#da0b00}.button.is-danger.is-outlined:hover,.button.is-danger.is-outlined.is-hovered,.button.is-danger.is-outlined:focus,.button.is-danger.is-outlined.is-focused{background-color:#da0b00;border-color:#da0b00;color:#fff}.button.is-danger.is-outlined.is-loading::after{border-color:transparent transparent #da0b00 #da0b00 !important}.button.is-danger.is-outlined.is-loading:hover::after,.button.is-danger.is-outlined.is-loading.is-hovered::after,.button.is-danger.is-outlined.is-loading:focus::after,.button.is-danger.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}.button.is-danger.is-outlined[disabled],fieldset[disabled] .button.is-danger.is-outlined{background-color:transparent;border-color:#da0b00;box-shadow:none;color:#da0b00}.button.is-danger.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}.button.is-danger.is-inverted.is-outlined:hover,.button.is-danger.is-inverted.is-outlined.is-hovered,.button.is-danger.is-inverted.is-outlined:focus,.button.is-danger.is-inverted.is-outlined.is-focused{background-color:#fff;color:#da0b00}.button.is-danger.is-inverted.is-outlined.is-loading:hover::after,.button.is-danger.is-inverted.is-outlined.is-loading.is-hovered::after,.button.is-danger.is-inverted.is-outlined.is-loading:focus::after,.button.is-danger.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #da0b00 #da0b00 !important}.button.is-danger.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-danger.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}.button.is-small,#documenter .docs-sidebar form.docs-search>input.button{border-radius:2px;font-size:.75rem}.button.is-normal{font-size:1rem}.button.is-medium{font-size:1.25rem}.button.is-large{font-size:1.5rem}.button[disabled],fieldset[disabled] .button{background-color:#fff;border-color:#dbdbdb;box-shadow:none;opacity:.5}.button.is-fullwidth{display:flex;width:100%}.button.is-loading{color:transparent !important;pointer-events:none}.button.is-loading::after{position:absolute;left:calc(50% - (1em / 2));top:calc(50% - (1em / 2));position:absolute !important}.button.is-static{background-color:#f5f5f5;border-color:#dbdbdb;color:#6b6b6b;box-shadow:none;pointer-events:none}.button.is-rounded,#documenter .docs-sidebar form.docs-search>input.button{border-radius:290486px;padding-left:1em;padding-right:1em}.buttons{align-items:center;display:flex;flex-wrap:wrap;justify-content:flex-start}.buttons .button{margin-bottom:0.5rem}.buttons .button:not(:last-child):not(.is-fullwidth){margin-right:0.5rem}.buttons:last-child{margin-bottom:-0.5rem}.buttons:not(:last-child){margin-bottom:1rem}.buttons.are-small .button:not(.is-normal):not(.is-medium):not(.is-large){border-radius:2px;font-size:.75rem}.buttons.are-medium .button:not(.is-small):not(.is-normal):not(.is-large){font-size:1.25rem}.buttons.are-large .button:not(.is-small):not(.is-normal):not(.is-medium){font-size:1.5rem}.buttons.has-addons .button:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.buttons.has-addons .button:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0;margin-right:-1px}.buttons.has-addons .button:last-child{margin-right:0}.buttons.has-addons .button:hover,.buttons.has-addons .button.is-hovered{z-index:2}.buttons.has-addons .button:focus,.buttons.has-addons .button.is-focused,.buttons.has-addons .button:active,.buttons.has-addons .button.is-active,.buttons.has-addons .button.is-selected{z-index:3}.buttons.has-addons .button:focus:hover,.buttons.has-addons .button.is-focused:hover,.buttons.has-addons .button:active:hover,.buttons.has-addons .button.is-active:hover,.buttons.has-addons .button.is-selected:hover{z-index:4}.buttons.has-addons .button.is-expanded{flex-grow:1;flex-shrink:1}.buttons.is-centered{justify-content:center}.buttons.is-centered:not(.has-addons) .button:not(.is-fullwidth){margin-left:0.25rem;margin-right:0.25rem}.buttons.is-right{justify-content:flex-end}.buttons.is-right:not(.has-addons) .button:not(.is-fullwidth){margin-left:0.25rem;margin-right:0.25rem}.container{flex-grow:1;margin:0 auto;position:relative;width:auto}@media screen and (min-width: 1056px){.container{max-width:992px}.container.is-fluid{margin-left:32px;margin-right:32px;max-width:none}}@media screen and (max-width: 1215px){.container.is-widescreen{max-width:1152px}}@media screen and (max-width: 1407px){.container.is-fullhd{max-width:1344px}}@media screen and (min-width: 1216px){.container{max-width:1152px}}@media screen and (min-width: 1408px){.container{max-width:1344px}}.content li+li{margin-top:0.25em}.content p:not(:last-child),.content dl:not(:last-child),.content ol:not(:last-child),.content ul:not(:last-child),.content blockquote:not(:last-child),.content pre:not(:last-child),.content table:not(:last-child){margin-bottom:1em}.content h1,.content h2,.content h3,.content h4,.content h5,.content h6{color:#222;font-weight:600;line-height:1.125}.content h1{font-size:2em;margin-bottom:0.5em}.content h1:not(:first-child){margin-top:1em}.content h2{font-size:1.75em;margin-bottom:0.5714em}.content h2:not(:first-child){margin-top:1.1428em}.content h3{font-size:1.5em;margin-bottom:0.6666em}.content h3:not(:first-child){margin-top:1.3333em}.content h4{font-size:1.25em;margin-bottom:0.8em}.content h5{font-size:1.125em;margin-bottom:0.8888em}.content h6{font-size:1em;margin-bottom:1em}.content blockquote{background-color:#f5f5f5;border-left:5px solid #dbdbdb;padding:1.25em 1.5em}.content ol{list-style-position:outside;margin-left:2em;margin-top:1em}.content ol:not([type]){list-style-type:decimal}.content ol.is-lower-alpha:not([type]){list-style-type:lower-alpha}.content ol.is-lower-roman:not([type]){list-style-type:lower-roman}.content ol.is-upper-alpha:not([type]){list-style-type:upper-alpha}.content ol.is-upper-roman:not([type]){list-style-type:upper-roman}.content ul{list-style:disc outside;margin-left:2em;margin-top:1em}.content ul ul{list-style-type:circle;margin-top:0.5em}.content ul ul ul{list-style-type:square}.content dd{margin-left:2em}.content figure{margin-left:2em;margin-right:2em;text-align:center}.content figure:not(:first-child){margin-top:2em}.content figure:not(:last-child){margin-bottom:2em}.content figure img{display:inline-block}.content figure figcaption{font-style:italic}.content pre{-webkit-overflow-scrolling:touch;overflow-x:auto;padding:0;white-space:pre;word-wrap:normal}.content sup,.content sub{font-size:75%}.content table{width:100%}.content table td,.content table th{border:1px solid #dbdbdb;border-width:0 0 1px;padding:0.5em 0.75em;vertical-align:top}.content table th{color:#222}.content table th:not([align]){text-align:left}.content table thead td,.content table thead th{border-width:0 0 2px;color:#222}.content table tfoot td,.content table tfoot th{border-width:2px 0 0;color:#222}.content table tbody tr:last-child td,.content table tbody tr:last-child th{border-bottom-width:0}.content .tabs li+li{margin-top:0}.content.is-small,#documenter .docs-sidebar form.docs-search>input.content{font-size:.75rem}.content.is-medium{font-size:1.25rem}.content.is-large{font-size:1.5rem}.icon{align-items:center;display:inline-flex;justify-content:center;height:1.5rem;width:1.5rem}.icon.is-small,#documenter .docs-sidebar form.docs-search>input.icon{height:1rem;width:1rem}.icon.is-medium{height:2rem;width:2rem}.icon.is-large{height:3rem;width:3rem}.image,#documenter .docs-sidebar .docs-logo>img{display:block;position:relative}.image img,#documenter .docs-sidebar .docs-logo>img img{display:block;height:auto;width:100%}.image img.is-rounded,#documenter .docs-sidebar .docs-logo>img img.is-rounded{border-radius:290486px}.image.is-square img,#documenter .docs-sidebar .docs-logo>img.is-square img,.image.is-square .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-square .has-ratio,.image.is-1by1 img,#documenter .docs-sidebar .docs-logo>img.is-1by1 img,.image.is-1by1 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-1by1 .has-ratio,.image.is-5by4 img,#documenter .docs-sidebar .docs-logo>img.is-5by4 img,.image.is-5by4 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-5by4 .has-ratio,.image.is-4by3 img,#documenter .docs-sidebar .docs-logo>img.is-4by3 img,.image.is-4by3 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-4by3 .has-ratio,.image.is-3by2 img,#documenter .docs-sidebar .docs-logo>img.is-3by2 img,.image.is-3by2 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-3by2 .has-ratio,.image.is-5by3 img,#documenter .docs-sidebar .docs-logo>img.is-5by3 img,.image.is-5by3 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-5by3 .has-ratio,.image.is-16by9 img,#documenter .docs-sidebar .docs-logo>img.is-16by9 img,.image.is-16by9 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-16by9 .has-ratio,.image.is-2by1 img,#documenter .docs-sidebar .docs-logo>img.is-2by1 img,.image.is-2by1 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-2by1 .has-ratio,.image.is-3by1 img,#documenter .docs-sidebar .docs-logo>img.is-3by1 img,.image.is-3by1 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-3by1 .has-ratio,.image.is-4by5 img,#documenter .docs-sidebar .docs-logo>img.is-4by5 img,.image.is-4by5 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-4by5 .has-ratio,.image.is-3by4 img,#documenter .docs-sidebar .docs-logo>img.is-3by4 img,.image.is-3by4 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-3by4 .has-ratio,.image.is-2by3 img,#documenter .docs-sidebar .docs-logo>img.is-2by3 img,.image.is-2by3 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-2by3 .has-ratio,.image.is-3by5 img,#documenter .docs-sidebar .docs-logo>img.is-3by5 img,.image.is-3by5 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-3by5 .has-ratio,.image.is-9by16 img,#documenter .docs-sidebar .docs-logo>img.is-9by16 img,.image.is-9by16 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-9by16 .has-ratio,.image.is-1by2 img,#documenter .docs-sidebar .docs-logo>img.is-1by2 img,.image.is-1by2 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-1by2 .has-ratio,.image.is-1by3 img,#documenter .docs-sidebar .docs-logo>img.is-1by3 img,.image.is-1by3 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-1by3 .has-ratio{height:100%;width:100%}.image.is-square,#documenter .docs-sidebar .docs-logo>img.is-square,.image.is-1by1,#documenter .docs-sidebar .docs-logo>img.is-1by1{padding-top:100%}.image.is-5by4,#documenter .docs-sidebar .docs-logo>img.is-5by4{padding-top:80%}.image.is-4by3,#documenter .docs-sidebar .docs-logo>img.is-4by3{padding-top:75%}.image.is-3by2,#documenter .docs-sidebar .docs-logo>img.is-3by2{padding-top:66.6666%}.image.is-5by3,#documenter .docs-sidebar .docs-logo>img.is-5by3{padding-top:60%}.image.is-16by9,#documenter .docs-sidebar .docs-logo>img.is-16by9{padding-top:56.25%}.image.is-2by1,#documenter .docs-sidebar .docs-logo>img.is-2by1{padding-top:50%}.image.is-3by1,#documenter .docs-sidebar .docs-logo>img.is-3by1{padding-top:33.3333%}.image.is-4by5,#documenter .docs-sidebar .docs-logo>img.is-4by5{padding-top:125%}.image.is-3by4,#documenter .docs-sidebar .docs-logo>img.is-3by4{padding-top:133.3333%}.image.is-2by3,#documenter .docs-sidebar .docs-logo>img.is-2by3{padding-top:150%}.image.is-3by5,#documenter .docs-sidebar .docs-logo>img.is-3by5{padding-top:166.6666%}.image.is-9by16,#documenter .docs-sidebar .docs-logo>img.is-9by16{padding-top:177.7777%}.image.is-1by2,#documenter .docs-sidebar .docs-logo>img.is-1by2{padding-top:200%}.image.is-1by3,#documenter .docs-sidebar .docs-logo>img.is-1by3{padding-top:300%}.image.is-16x16,#documenter .docs-sidebar .docs-logo>img.is-16x16{height:16px;width:16px}.image.is-24x24,#documenter .docs-sidebar .docs-logo>img.is-24x24{height:24px;width:24px}.image.is-32x32,#documenter .docs-sidebar .docs-logo>img.is-32x32{height:32px;width:32px}.image.is-48x48,#documenter .docs-sidebar .docs-logo>img.is-48x48{height:48px;width:48px}.image.is-64x64,#documenter .docs-sidebar .docs-logo>img.is-64x64{height:64px;width:64px}.image.is-96x96,#documenter .docs-sidebar .docs-logo>img.is-96x96{height:96px;width:96px}.image.is-128x128,#documenter .docs-sidebar .docs-logo>img.is-128x128{height:128px;width:128px}.notification{background-color:#f5f5f5;border-radius:4px;padding:1.25rem 2.5rem 1.25rem 1.5rem;position:relative}.notification a:not(.button):not(.dropdown-item){color:currentColor;text-decoration:underline}.notification strong{color:currentColor}.notification code,.notification pre{background:#fff}.notification pre code{background:transparent}.notification>.delete{position:absolute;right:0.5rem;top:0.5rem}.notification .title,.notification .subtitle,.notification .content{color:currentColor}.notification.is-white{background-color:#fff;color:#0a0a0a}.notification.is-black{background-color:#0a0a0a;color:#fff}.notification.is-light{background-color:#f5f5f5;color:#363636}.notification.is-dark,.content kbd.notification{background-color:#363636;color:#f5f5f5}.notification.is-primary,.docstring>section>a.notification.docs-sourcelink{background-color:#4eb5de;color:#fff}.notification.is-link{background-color:#2e63b8;color:#fff}.notification.is-info{background-color:#209cee;color:#fff}.notification.is-success{background-color:#22c35b;color:#fff}.notification.is-warning{background-color:#ffdd57;color:rgba(0,0,0,0.7)}.notification.is-danger{background-color:#da0b00;color:#fff}.progress{-moz-appearance:none;-webkit-appearance:none;border:none;border-radius:290486px;display:block;height:1rem;overflow:hidden;padding:0;width:100%}.progress::-webkit-progress-bar{background-color:#dbdbdb}.progress::-webkit-progress-value{background-color:#222}.progress::-moz-progress-bar{background-color:#222}.progress::-ms-fill{background-color:#222;border:none}.progress.is-white::-webkit-progress-value{background-color:#fff}.progress.is-white::-moz-progress-bar{background-color:#fff}.progress.is-white::-ms-fill{background-color:#fff}.progress.is-white:indeterminate{background-image:linear-gradient(to right, #fff 30%, #dbdbdb 30%)}.progress.is-black::-webkit-progress-value{background-color:#0a0a0a}.progress.is-black::-moz-progress-bar{background-color:#0a0a0a}.progress.is-black::-ms-fill{background-color:#0a0a0a}.progress.is-black:indeterminate{background-image:linear-gradient(to right, #0a0a0a 30%, #dbdbdb 30%)}.progress.is-light::-webkit-progress-value{background-color:#f5f5f5}.progress.is-light::-moz-progress-bar{background-color:#f5f5f5}.progress.is-light::-ms-fill{background-color:#f5f5f5}.progress.is-light:indeterminate{background-image:linear-gradient(to right, #f5f5f5 30%, #dbdbdb 30%)}.progress.is-dark::-webkit-progress-value,.content kbd.progress::-webkit-progress-value{background-color:#363636}.progress.is-dark::-moz-progress-bar,.content kbd.progress::-moz-progress-bar{background-color:#363636}.progress.is-dark::-ms-fill,.content kbd.progress::-ms-fill{background-color:#363636}.progress.is-dark:indeterminate,.content kbd.progress:indeterminate{background-image:linear-gradient(to right, #363636 30%, #dbdbdb 30%)}.progress.is-primary::-webkit-progress-value,.docstring>section>a.progress.docs-sourcelink::-webkit-progress-value{background-color:#4eb5de}.progress.is-primary::-moz-progress-bar,.docstring>section>a.progress.docs-sourcelink::-moz-progress-bar{background-color:#4eb5de}.progress.is-primary::-ms-fill,.docstring>section>a.progress.docs-sourcelink::-ms-fill{background-color:#4eb5de}.progress.is-primary:indeterminate,.docstring>section>a.progress.docs-sourcelink:indeterminate{background-image:linear-gradient(to right, #4eb5de 30%, #dbdbdb 30%)}.progress.is-link::-webkit-progress-value{background-color:#2e63b8}.progress.is-link::-moz-progress-bar{background-color:#2e63b8}.progress.is-link::-ms-fill{background-color:#2e63b8}.progress.is-link:indeterminate{background-image:linear-gradient(to right, #2e63b8 30%, #dbdbdb 30%)}.progress.is-info::-webkit-progress-value{background-color:#209cee}.progress.is-info::-moz-progress-bar{background-color:#209cee}.progress.is-info::-ms-fill{background-color:#209cee}.progress.is-info:indeterminate{background-image:linear-gradient(to right, #209cee 30%, #dbdbdb 30%)}.progress.is-success::-webkit-progress-value{background-color:#22c35b}.progress.is-success::-moz-progress-bar{background-color:#22c35b}.progress.is-success::-ms-fill{background-color:#22c35b}.progress.is-success:indeterminate{background-image:linear-gradient(to right, #22c35b 30%, #dbdbdb 30%)}.progress.is-warning::-webkit-progress-value{background-color:#ffdd57}.progress.is-warning::-moz-progress-bar{background-color:#ffdd57}.progress.is-warning::-ms-fill{background-color:#ffdd57}.progress.is-warning:indeterminate{background-image:linear-gradient(to right, #ffdd57 30%, #dbdbdb 30%)}.progress.is-danger::-webkit-progress-value{background-color:#da0b00}.progress.is-danger::-moz-progress-bar{background-color:#da0b00}.progress.is-danger::-ms-fill{background-color:#da0b00}.progress.is-danger:indeterminate{background-image:linear-gradient(to right, #da0b00 30%, #dbdbdb 30%)}.progress:indeterminate{animation-duration:1.5s;animation-iteration-count:infinite;animation-name:moveIndeterminate;animation-timing-function:linear;background-color:#dbdbdb;background-image:linear-gradient(to right, #222 30%, #dbdbdb 30%);background-position:top left;background-repeat:no-repeat;background-size:150% 150%}.progress:indeterminate::-webkit-progress-bar{background-color:transparent}.progress:indeterminate::-moz-progress-bar{background-color:transparent}.progress.is-small,#documenter .docs-sidebar form.docs-search>input.progress{height:.75rem}.progress.is-medium{height:1.25rem}.progress.is-large{height:1.5rem}@keyframes moveIndeterminate{from{background-position:200% 0}to{background-position:-200% 0}}.table{background-color:#fff;color:#363636}.table td,.table th{border:1px solid #dbdbdb;border-width:0 0 1px;padding:0.5em 0.75em;vertical-align:top}.table td.is-white,.table th.is-white{background-color:#fff;border-color:#fff;color:#0a0a0a}.table td.is-black,.table th.is-black{background-color:#0a0a0a;border-color:#0a0a0a;color:#fff}.table td.is-light,.table th.is-light{background-color:#f5f5f5;border-color:#f5f5f5;color:#363636}.table td.is-dark,.table th.is-dark{background-color:#363636;border-color:#363636;color:#f5f5f5}.table td.is-primary,.table th.is-primary{background-color:#4eb5de;border-color:#4eb5de;color:#fff}.table td.is-link,.table th.is-link{background-color:#2e63b8;border-color:#2e63b8;color:#fff}.table td.is-info,.table th.is-info{background-color:#209cee;border-color:#209cee;color:#fff}.table td.is-success,.table th.is-success{background-color:#22c35b;border-color:#22c35b;color:#fff}.table td.is-warning,.table th.is-warning{background-color:#ffdd57;border-color:#ffdd57;color:rgba(0,0,0,0.7)}.table td.is-danger,.table th.is-danger{background-color:#da0b00;border-color:#da0b00;color:#fff}.table td.is-narrow,.table th.is-narrow{white-space:nowrap;width:1%}.table td.is-selected,.table th.is-selected{background-color:#4eb5de;color:#fff}.table td.is-selected a,.table td.is-selected strong,.table th.is-selected a,.table th.is-selected strong{color:currentColor}.table th{color:#222}.table th:not([align]){text-align:left}.table tr.is-selected{background-color:#4eb5de;color:#fff}.table tr.is-selected a,.table tr.is-selected strong{color:currentColor}.table tr.is-selected td,.table tr.is-selected th{border-color:#fff;color:currentColor}.table thead{background-color:rgba(0,0,0,0)}.table thead td,.table thead th{border-width:0 0 2px;color:#222}.table tfoot{background-color:rgba(0,0,0,0)}.table tfoot td,.table tfoot th{border-width:2px 0 0;color:#222}.table tbody{background-color:rgba(0,0,0,0)}.table tbody tr:last-child td,.table tbody tr:last-child th{border-bottom-width:0}.table.is-bordered td,.table.is-bordered th{border-width:1px}.table.is-bordered tr:last-child td,.table.is-bordered tr:last-child th{border-bottom-width:1px}.table.is-fullwidth{width:100%}.table.is-hoverable tbody tr:not(.is-selected):hover{background-color:#fafafa}.table.is-hoverable.is-striped tbody tr:not(.is-selected):hover{background-color:#fafafa}.table.is-hoverable.is-striped tbody tr:not(.is-selected):hover:nth-child(even){background-color:#f5f5f5}.table.is-narrow td,.table.is-narrow th{padding:0.25em 0.5em}.table.is-striped tbody tr:not(.is-selected):nth-child(even){background-color:#fafafa}.table-container{-webkit-overflow-scrolling:touch;overflow:auto;overflow-y:hidden;max-width:100%}.tags{align-items:center;display:flex;flex-wrap:wrap;justify-content:flex-start}.tags .tag,.tags .content kbd,.content .tags kbd,.tags .docstring>section>a.docs-sourcelink{margin-bottom:0.5rem}.tags .tag:not(:last-child),.tags .content kbd:not(:last-child),.content .tags kbd:not(:last-child),.tags .docstring>section>a.docs-sourcelink:not(:last-child){margin-right:0.5rem}.tags:last-child{margin-bottom:-0.5rem}.tags:not(:last-child){margin-bottom:1rem}.tags.are-medium .tag:not(.is-normal):not(.is-large),.tags.are-medium .content kbd:not(.is-normal):not(.is-large),.content .tags.are-medium kbd:not(.is-normal):not(.is-large),.tags.are-medium .docstring>section>a.docs-sourcelink:not(.is-normal):not(.is-large){font-size:1rem}.tags.are-large .tag:not(.is-normal):not(.is-medium),.tags.are-large .content kbd:not(.is-normal):not(.is-medium),.content .tags.are-large kbd:not(.is-normal):not(.is-medium),.tags.are-large .docstring>section>a.docs-sourcelink:not(.is-normal):not(.is-medium){font-size:1.25rem}.tags.is-centered{justify-content:center}.tags.is-centered .tag,.tags.is-centered .content kbd,.content .tags.is-centered kbd,.tags.is-centered .docstring>section>a.docs-sourcelink{margin-right:0.25rem;margin-left:0.25rem}.tags.is-right{justify-content:flex-end}.tags.is-right .tag:not(:first-child),.tags.is-right .content kbd:not(:first-child),.content .tags.is-right kbd:not(:first-child),.tags.is-right .docstring>section>a.docs-sourcelink:not(:first-child){margin-left:0.5rem}.tags.is-right .tag:not(:last-child),.tags.is-right .content kbd:not(:last-child),.content .tags.is-right kbd:not(:last-child),.tags.is-right .docstring>section>a.docs-sourcelink:not(:last-child){margin-right:0}.tags.has-addons .tag,.tags.has-addons .content kbd,.content .tags.has-addons kbd,.tags.has-addons .docstring>section>a.docs-sourcelink{margin-right:0}.tags.has-addons .tag:not(:first-child),.tags.has-addons .content kbd:not(:first-child),.content .tags.has-addons kbd:not(:first-child),.tags.has-addons .docstring>section>a.docs-sourcelink:not(:first-child){margin-left:0;border-bottom-left-radius:0;border-top-left-radius:0}.tags.has-addons .tag:not(:last-child),.tags.has-addons .content kbd:not(:last-child),.content .tags.has-addons kbd:not(:last-child),.tags.has-addons .docstring>section>a.docs-sourcelink:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.tag:not(body),.content kbd:not(body),.docstring>section>a.docs-sourcelink:not(body){align-items:center;background-color:#f5f5f5;border-radius:4px;color:#222;display:inline-flex;font-size:.75rem;height:2em;justify-content:center;line-height:1.5;padding-left:0.75em;padding-right:0.75em;white-space:nowrap}.tag:not(body) .delete,.content kbd:not(body) .delete,.docstring>section>a.docs-sourcelink:not(body) .delete{margin-left:0.25rem;margin-right:-0.375rem}.tag.is-white:not(body),.content kbd.is-white:not(body),.docstring>section>a.docs-sourcelink.is-white:not(body){background-color:#fff;color:#0a0a0a}.tag.is-black:not(body),.content kbd.is-black:not(body),.docstring>section>a.docs-sourcelink.is-black:not(body){background-color:#0a0a0a;color:#fff}.tag.is-light:not(body),.content kbd.is-light:not(body),.docstring>section>a.docs-sourcelink.is-light:not(body){background-color:#f5f5f5;color:#363636}.tag.is-dark:not(body),.content kbd:not(body),.docstring>section>a.docs-sourcelink.is-dark:not(body),.content .docstring>section>kbd:not(body){background-color:#363636;color:#f5f5f5}.tag.is-primary:not(body),.content kbd.is-primary:not(body),.docstring>section>a.docs-sourcelink:not(body){background-color:#4eb5de;color:#fff}.tag.is-link:not(body),.content kbd.is-link:not(body),.docstring>section>a.docs-sourcelink.is-link:not(body){background-color:#2e63b8;color:#fff}.tag.is-info:not(body),.content kbd.is-info:not(body),.docstring>section>a.docs-sourcelink.is-info:not(body){background-color:#209cee;color:#fff}.tag.is-success:not(body),.content kbd.is-success:not(body),.docstring>section>a.docs-sourcelink.is-success:not(body){background-color:#22c35b;color:#fff}.tag.is-warning:not(body),.content kbd.is-warning:not(body),.docstring>section>a.docs-sourcelink.is-warning:not(body){background-color:#ffdd57;color:rgba(0,0,0,0.7)}.tag.is-danger:not(body),.content kbd.is-danger:not(body),.docstring>section>a.docs-sourcelink.is-danger:not(body){background-color:#da0b00;color:#fff}.tag.is-normal:not(body),.content kbd.is-normal:not(body),.docstring>section>a.docs-sourcelink.is-normal:not(body){font-size:.75rem}.tag.is-medium:not(body),.content kbd.is-medium:not(body),.docstring>section>a.docs-sourcelink.is-medium:not(body){font-size:1rem}.tag.is-large:not(body),.content kbd.is-large:not(body),.docstring>section>a.docs-sourcelink.is-large:not(body){font-size:1.25rem}.tag:not(body) .icon:first-child:not(:last-child),.content kbd:not(body) .icon:first-child:not(:last-child),.docstring>section>a.docs-sourcelink:not(body) .icon:first-child:not(:last-child){margin-left:-0.375em;margin-right:0.1875em}.tag:not(body) .icon:last-child:not(:first-child),.content kbd:not(body) .icon:last-child:not(:first-child),.docstring>section>a.docs-sourcelink:not(body) .icon:last-child:not(:first-child){margin-left:0.1875em;margin-right:-0.375em}.tag:not(body) .icon:first-child:last-child,.content kbd:not(body) .icon:first-child:last-child,.docstring>section>a.docs-sourcelink:not(body) .icon:first-child:last-child{margin-left:-0.375em;margin-right:-0.375em}.tag.is-delete:not(body),.content kbd.is-delete:not(body),.docstring>section>a.docs-sourcelink.is-delete:not(body){margin-left:1px;padding:0;position:relative;width:2em}.tag.is-delete:not(body)::before,.content kbd.is-delete:not(body)::before,.docstring>section>a.docs-sourcelink.is-delete:not(body)::before,.tag.is-delete:not(body)::after,.content kbd.is-delete:not(body)::after,.docstring>section>a.docs-sourcelink.is-delete:not(body)::after{background-color:currentColor;content:"";display:block;left:50%;position:absolute;top:50%;transform:translateX(-50%) translateY(-50%) rotate(45deg);transform-origin:center center}.tag.is-delete:not(body)::before,.content kbd.is-delete:not(body)::before,.docstring>section>a.docs-sourcelink.is-delete:not(body)::before{height:1px;width:50%}.tag.is-delete:not(body)::after,.content kbd.is-delete:not(body)::after,.docstring>section>a.docs-sourcelink.is-delete:not(body)::after{height:50%;width:1px}.tag.is-delete:not(body):hover,.content kbd.is-delete:not(body):hover,.docstring>section>a.docs-sourcelink.is-delete:not(body):hover,.tag.is-delete:not(body):focus,.content kbd.is-delete:not(body):focus,.docstring>section>a.docs-sourcelink.is-delete:not(body):focus{background-color:#e8e8e8}.tag.is-delete:not(body):active,.content kbd.is-delete:not(body):active,.docstring>section>a.docs-sourcelink.is-delete:not(body):active{background-color:#dbdbdb}.tag.is-rounded:not(body),#documenter .docs-sidebar form.docs-search>input:not(body),.content kbd.is-rounded:not(body),#documenter .docs-sidebar .content form.docs-search>input:not(body),.docstring>section>a.docs-sourcelink.is-rounded:not(body){border-radius:290486px}a.tag:hover,.docstring>section>a.docs-sourcelink:hover{text-decoration:underline}.title,.subtitle{word-break:break-word}.title em,.title span,.subtitle em,.subtitle span{font-weight:inherit}.title sub,.subtitle sub{font-size:.75em}.title sup,.subtitle sup{font-size:.75em}.title .tag,.title .content kbd,.content .title kbd,.title .docstring>section>a.docs-sourcelink,.subtitle .tag,.subtitle .content kbd,.content .subtitle kbd,.subtitle .docstring>section>a.docs-sourcelink{vertical-align:middle}.title{color:#363636;font-size:2rem;font-weight:600;line-height:1.125}.title strong{color:inherit;font-weight:inherit}.title+.highlight{margin-top:-0.75rem}.title:not(.is-spaced)+.subtitle{margin-top:-1.25rem}.title.is-1{font-size:3rem}.title.is-2{font-size:2.5rem}.title.is-3{font-size:2rem}.title.is-4{font-size:1.5rem}.title.is-5{font-size:1.25rem}.title.is-6{font-size:1rem}.title.is-7{font-size:.75rem}.subtitle{color:#4a4a4a;font-size:1.25rem;font-weight:400;line-height:1.25}.subtitle strong{color:#363636;font-weight:600}.subtitle:not(.is-spaced)+.title{margin-top:-1.25rem}.subtitle.is-1{font-size:3rem}.subtitle.is-2{font-size:2.5rem}.subtitle.is-3{font-size:2rem}.subtitle.is-4{font-size:1.5rem}.subtitle.is-5{font-size:1.25rem}.subtitle.is-6{font-size:1rem}.subtitle.is-7{font-size:.75rem}.heading{display:block;font-size:11px;letter-spacing:1px;margin-bottom:5px;text-transform:uppercase}.highlight{font-weight:400;max-width:100%;overflow:hidden;padding:0}.highlight pre{overflow:auto;max-width:100%}.number{align-items:center;background-color:#f5f5f5;border-radius:290486px;display:inline-flex;font-size:1.25rem;height:2em;justify-content:center;margin-right:1.5rem;min-width:2.5em;padding:0.25rem 0.5rem;text-align:center;vertical-align:top}.select select,.textarea,.input,#documenter .docs-sidebar form.docs-search>input{background-color:#fff;border-color:#dbdbdb;border-radius:4px;color:#363636}.select select::-moz-placeholder,.textarea::-moz-placeholder,.input::-moz-placeholder,#documenter .docs-sidebar form.docs-search>input::-moz-placeholder{color:rgba(54,54,54,0.3)}.select select::-webkit-input-placeholder,.textarea::-webkit-input-placeholder,.input::-webkit-input-placeholder,#documenter .docs-sidebar form.docs-search>input::-webkit-input-placeholder{color:rgba(54,54,54,0.3)}.select select:-moz-placeholder,.textarea:-moz-placeholder,.input:-moz-placeholder,#documenter .docs-sidebar form.docs-search>input:-moz-placeholder{color:rgba(54,54,54,0.3)}.select select:-ms-input-placeholder,.textarea:-ms-input-placeholder,.input:-ms-input-placeholder,#documenter .docs-sidebar form.docs-search>input:-ms-input-placeholder{color:rgba(54,54,54,0.3)}.select select:hover,.textarea:hover,.input:hover,#documenter .docs-sidebar form.docs-search>input:hover,.select select.is-hovered,.is-hovered.textarea,.is-hovered.input,#documenter .docs-sidebar form.docs-search>input.is-hovered{border-color:#b5b5b5}.select select:focus,.textarea:focus,.input:focus,#documenter .docs-sidebar form.docs-search>input:focus,.select select.is-focused,.is-focused.textarea,.is-focused.input,#documenter .docs-sidebar form.docs-search>input.is-focused,.select select:active,.textarea:active,.input:active,#documenter .docs-sidebar form.docs-search>input:active,.select select.is-active,.is-active.textarea,.is-active.input,#documenter .docs-sidebar form.docs-search>input.is-active{border-color:#2e63b8;box-shadow:0 0 0 0.125em rgba(46,99,184,0.25)}.select select[disabled],.textarea[disabled],.input[disabled],#documenter .docs-sidebar form.docs-search>input[disabled],fieldset[disabled] .select select,.select fieldset[disabled] select,fieldset[disabled] .textarea,fieldset[disabled] .input,fieldset[disabled] #documenter .docs-sidebar form.docs-search>input,#documenter .docs-sidebar fieldset[disabled] form.docs-search>input{background-color:#f5f5f5;border-color:#f5f5f5;box-shadow:none;color:#6b6b6b}.select select[disabled]::-moz-placeholder,.textarea[disabled]::-moz-placeholder,.input[disabled]::-moz-placeholder,#documenter .docs-sidebar form.docs-search>input[disabled]::-moz-placeholder,fieldset[disabled] .select select::-moz-placeholder,.select fieldset[disabled] select::-moz-placeholder,fieldset[disabled] .textarea::-moz-placeholder,fieldset[disabled] .input::-moz-placeholder,fieldset[disabled] #documenter .docs-sidebar form.docs-search>input::-moz-placeholder,#documenter .docs-sidebar fieldset[disabled] form.docs-search>input::-moz-placeholder{color:rgba(107,107,107,0.3)}.select select[disabled]::-webkit-input-placeholder,.textarea[disabled]::-webkit-input-placeholder,.input[disabled]::-webkit-input-placeholder,#documenter .docs-sidebar form.docs-search>input[disabled]::-webkit-input-placeholder,fieldset[disabled] .select select::-webkit-input-placeholder,.select fieldset[disabled] select::-webkit-input-placeholder,fieldset[disabled] .textarea::-webkit-input-placeholder,fieldset[disabled] .input::-webkit-input-placeholder,fieldset[disabled] #documenter .docs-sidebar form.docs-search>input::-webkit-input-placeholder,#documenter .docs-sidebar fieldset[disabled] form.docs-search>input::-webkit-input-placeholder{color:rgba(107,107,107,0.3)}.select select[disabled]:-moz-placeholder,.textarea[disabled]:-moz-placeholder,.input[disabled]:-moz-placeholder,#documenter .docs-sidebar form.docs-search>input[disabled]:-moz-placeholder,fieldset[disabled] .select select:-moz-placeholder,.select fieldset[disabled] select:-moz-placeholder,fieldset[disabled] .textarea:-moz-placeholder,fieldset[disabled] .input:-moz-placeholder,fieldset[disabled] #documenter .docs-sidebar form.docs-search>input:-moz-placeholder,#documenter .docs-sidebar fieldset[disabled] form.docs-search>input:-moz-placeholder{color:rgba(107,107,107,0.3)}.select select[disabled]:-ms-input-placeholder,.textarea[disabled]:-ms-input-placeholder,.input[disabled]:-ms-input-placeholder,#documenter .docs-sidebar form.docs-search>input[disabled]:-ms-input-placeholder,fieldset[disabled] .select select:-ms-input-placeholder,.select fieldset[disabled] select:-ms-input-placeholder,fieldset[disabled] .textarea:-ms-input-placeholder,fieldset[disabled] .input:-ms-input-placeholder,fieldset[disabled] #documenter .docs-sidebar form.docs-search>input:-ms-input-placeholder,#documenter .docs-sidebar fieldset[disabled] form.docs-search>input:-ms-input-placeholder{color:rgba(107,107,107,0.3)}.textarea,.input,#documenter .docs-sidebar form.docs-search>input{box-shadow:inset 0 1px 2px rgba(10,10,10,0.1);max-width:100%;width:100%}.textarea[readonly],.input[readonly],#documenter .docs-sidebar form.docs-search>input[readonly]{box-shadow:none}.is-white.textarea,.is-white.input,#documenter .docs-sidebar form.docs-search>input.is-white{border-color:#fff}.is-white.textarea:focus,.is-white.input:focus,#documenter .docs-sidebar form.docs-search>input.is-white:focus,.is-white.is-focused.textarea,.is-white.is-focused.input,#documenter .docs-sidebar form.docs-search>input.is-focused,.is-white.textarea:active,.is-white.input:active,#documenter .docs-sidebar form.docs-search>input.is-white:active,.is-white.is-active.textarea,.is-white.is-active.input,#documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(255,255,255,0.25)}.is-black.textarea,.is-black.input,#documenter .docs-sidebar form.docs-search>input.is-black{border-color:#0a0a0a}.is-black.textarea:focus,.is-black.input:focus,#documenter .docs-sidebar form.docs-search>input.is-black:focus,.is-black.is-focused.textarea,.is-black.is-focused.input,#documenter .docs-sidebar form.docs-search>input.is-focused,.is-black.textarea:active,.is-black.input:active,#documenter .docs-sidebar form.docs-search>input.is-black:active,.is-black.is-active.textarea,.is-black.is-active.input,#documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(10,10,10,0.25)}.is-light.textarea,.is-light.input,#documenter .docs-sidebar form.docs-search>input.is-light{border-color:#f5f5f5}.is-light.textarea:focus,.is-light.input:focus,#documenter .docs-sidebar form.docs-search>input.is-light:focus,.is-light.is-focused.textarea,.is-light.is-focused.input,#documenter .docs-sidebar form.docs-search>input.is-focused,.is-light.textarea:active,.is-light.input:active,#documenter .docs-sidebar form.docs-search>input.is-light:active,.is-light.is-active.textarea,.is-light.is-active.input,#documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(245,245,245,0.25)}.is-dark.textarea,.content kbd.textarea,.is-dark.input,#documenter .docs-sidebar form.docs-search>input.is-dark,.content kbd.input{border-color:#363636}.is-dark.textarea:focus,.content kbd.textarea:focus,.is-dark.input:focus,#documenter .docs-sidebar form.docs-search>input.is-dark:focus,.content kbd.input:focus,.is-dark.is-focused.textarea,.content kbd.is-focused.textarea,.is-dark.is-focused.input,#documenter .docs-sidebar form.docs-search>input.is-focused,.content kbd.is-focused.input,#documenter .docs-sidebar .content form.docs-search>input.is-focused,.is-dark.textarea:active,.content kbd.textarea:active,.is-dark.input:active,#documenter .docs-sidebar form.docs-search>input.is-dark:active,.content kbd.input:active,.is-dark.is-active.textarea,.content kbd.is-active.textarea,.is-dark.is-active.input,#documenter .docs-sidebar form.docs-search>input.is-active,.content kbd.is-active.input,#documenter .docs-sidebar .content form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(54,54,54,0.25)}.is-primary.textarea,.docstring>section>a.textarea.docs-sourcelink,.is-primary.input,#documenter .docs-sidebar form.docs-search>input.is-primary,.docstring>section>a.input.docs-sourcelink{border-color:#4eb5de}.is-primary.textarea:focus,.docstring>section>a.textarea.docs-sourcelink:focus,.is-primary.input:focus,#documenter .docs-sidebar form.docs-search>input.is-primary:focus,.docstring>section>a.input.docs-sourcelink:focus,.is-primary.is-focused.textarea,.docstring>section>a.is-focused.textarea.docs-sourcelink,.is-primary.is-focused.input,#documenter .docs-sidebar form.docs-search>input.is-focused,.docstring>section>a.is-focused.input.docs-sourcelink,.is-primary.textarea:active,.docstring>section>a.textarea.docs-sourcelink:active,.is-primary.input:active,#documenter .docs-sidebar form.docs-search>input.is-primary:active,.docstring>section>a.input.docs-sourcelink:active,.is-primary.is-active.textarea,.docstring>section>a.is-active.textarea.docs-sourcelink,.is-primary.is-active.input,#documenter .docs-sidebar form.docs-search>input.is-active,.docstring>section>a.is-active.input.docs-sourcelink{box-shadow:0 0 0 0.125em rgba(78,181,222,0.25)}.is-link.textarea,.is-link.input,#documenter .docs-sidebar form.docs-search>input.is-link{border-color:#2e63b8}.is-link.textarea:focus,.is-link.input:focus,#documenter .docs-sidebar form.docs-search>input.is-link:focus,.is-link.is-focused.textarea,.is-link.is-focused.input,#documenter .docs-sidebar form.docs-search>input.is-focused,.is-link.textarea:active,.is-link.input:active,#documenter .docs-sidebar form.docs-search>input.is-link:active,.is-link.is-active.textarea,.is-link.is-active.input,#documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(46,99,184,0.25)}.is-info.textarea,.is-info.input,#documenter .docs-sidebar form.docs-search>input.is-info{border-color:#209cee}.is-info.textarea:focus,.is-info.input:focus,#documenter .docs-sidebar form.docs-search>input.is-info:focus,.is-info.is-focused.textarea,.is-info.is-focused.input,#documenter .docs-sidebar form.docs-search>input.is-focused,.is-info.textarea:active,.is-info.input:active,#documenter .docs-sidebar form.docs-search>input.is-info:active,.is-info.is-active.textarea,.is-info.is-active.input,#documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(32,156,238,0.25)}.is-success.textarea,.is-success.input,#documenter .docs-sidebar form.docs-search>input.is-success{border-color:#22c35b}.is-success.textarea:focus,.is-success.input:focus,#documenter .docs-sidebar form.docs-search>input.is-success:focus,.is-success.is-focused.textarea,.is-success.is-focused.input,#documenter .docs-sidebar form.docs-search>input.is-focused,.is-success.textarea:active,.is-success.input:active,#documenter .docs-sidebar form.docs-search>input.is-success:active,.is-success.is-active.textarea,.is-success.is-active.input,#documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(34,195,91,0.25)}.is-warning.textarea,.is-warning.input,#documenter .docs-sidebar form.docs-search>input.is-warning{border-color:#ffdd57}.is-warning.textarea:focus,.is-warning.input:focus,#documenter .docs-sidebar form.docs-search>input.is-warning:focus,.is-warning.is-focused.textarea,.is-warning.is-focused.input,#documenter .docs-sidebar form.docs-search>input.is-focused,.is-warning.textarea:active,.is-warning.input:active,#documenter .docs-sidebar form.docs-search>input.is-warning:active,.is-warning.is-active.textarea,.is-warning.is-active.input,#documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(255,221,87,0.25)}.is-danger.textarea,.is-danger.input,#documenter .docs-sidebar form.docs-search>input.is-danger{border-color:#da0b00}.is-danger.textarea:focus,.is-danger.input:focus,#documenter .docs-sidebar form.docs-search>input.is-danger:focus,.is-danger.is-focused.textarea,.is-danger.is-focused.input,#documenter .docs-sidebar form.docs-search>input.is-focused,.is-danger.textarea:active,.is-danger.input:active,#documenter .docs-sidebar form.docs-search>input.is-danger:active,.is-danger.is-active.textarea,.is-danger.is-active.input,#documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(218,11,0,0.25)}.is-small.textarea,.is-small.input,#documenter .docs-sidebar form.docs-search>input{border-radius:2px;font-size:.75rem}.is-medium.textarea,.is-medium.input,#documenter .docs-sidebar form.docs-search>input.is-medium{font-size:1.25rem}.is-large.textarea,.is-large.input,#documenter .docs-sidebar form.docs-search>input.is-large{font-size:1.5rem}.is-fullwidth.textarea,.is-fullwidth.input,#documenter .docs-sidebar form.docs-search>input.is-fullwidth{display:block;width:100%}.is-inline.textarea,.is-inline.input,#documenter .docs-sidebar form.docs-search>input.is-inline{display:inline;width:auto}.input.is-rounded,#documenter .docs-sidebar form.docs-search>input{border-radius:290486px;padding-left:1em;padding-right:1em}.input.is-static,#documenter .docs-sidebar form.docs-search>input.is-static{background-color:transparent;border-color:transparent;box-shadow:none;padding-left:0;padding-right:0}.textarea{display:block;max-width:100%;min-width:100%;padding:0.625em;resize:vertical}.textarea:not([rows]){max-height:600px;min-height:120px}.textarea[rows]{height:initial}.textarea.has-fixed-size{resize:none}.radio,.checkbox{cursor:pointer;display:inline-block;line-height:1.25;position:relative}.radio input,.checkbox input{cursor:pointer}.radio:hover,.checkbox:hover{color:#363636}.radio[disabled],.checkbox[disabled],fieldset[disabled] .radio,fieldset[disabled] .checkbox{color:#6b6b6b;cursor:not-allowed}.radio+.radio{margin-left:0.5em}.select{display:inline-block;max-width:100%;position:relative;vertical-align:top}.select:not(.is-multiple){height:2.25em}.select:not(.is-multiple):not(.is-loading)::after{border-color:#2e63b8;right:1.125em;z-index:4}.select.is-rounded select,#documenter .docs-sidebar form.docs-search>input.select select{border-radius:290486px;padding-left:1em}.select select{cursor:pointer;display:block;font-size:1em;max-width:100%;outline:none}.select select::-ms-expand{display:none}.select select[disabled]:hover,fieldset[disabled] .select select:hover{border-color:#f5f5f5}.select select:not([multiple]){padding-right:2.5em}.select select[multiple]{height:auto;padding:0}.select select[multiple] option{padding:0.5em 1em}.select:not(.is-multiple):not(.is-loading):hover::after{border-color:#363636}.select.is-white:not(:hover)::after{border-color:#fff}.select.is-white select{border-color:#fff}.select.is-white select:hover,.select.is-white select.is-hovered{border-color:#f2f2f2}.select.is-white select:focus,.select.is-white select.is-focused,.select.is-white select:active,.select.is-white select.is-active{box-shadow:0 0 0 0.125em rgba(255,255,255,0.25)}.select.is-black:not(:hover)::after{border-color:#0a0a0a}.select.is-black select{border-color:#0a0a0a}.select.is-black select:hover,.select.is-black select.is-hovered{border-color:#000}.select.is-black select:focus,.select.is-black select.is-focused,.select.is-black select:active,.select.is-black select.is-active{box-shadow:0 0 0 0.125em rgba(10,10,10,0.25)}.select.is-light:not(:hover)::after{border-color:#f5f5f5}.select.is-light select{border-color:#f5f5f5}.select.is-light select:hover,.select.is-light select.is-hovered{border-color:#e8e8e8}.select.is-light select:focus,.select.is-light select.is-focused,.select.is-light select:active,.select.is-light select.is-active{box-shadow:0 0 0 0.125em rgba(245,245,245,0.25)}.select.is-dark:not(:hover)::after,.content kbd.select:not(:hover)::after{border-color:#363636}.select.is-dark select,.content kbd.select select{border-color:#363636}.select.is-dark select:hover,.content kbd.select select:hover,.select.is-dark select.is-hovered,.content kbd.select select.is-hovered{border-color:#292929}.select.is-dark select:focus,.content kbd.select select:focus,.select.is-dark select.is-focused,.content kbd.select select.is-focused,.select.is-dark select:active,.content kbd.select select:active,.select.is-dark select.is-active,.content kbd.select select.is-active{box-shadow:0 0 0 0.125em rgba(54,54,54,0.25)}.select.is-primary:not(:hover)::after,.docstring>section>a.select.docs-sourcelink:not(:hover)::after{border-color:#4eb5de}.select.is-primary select,.docstring>section>a.select.docs-sourcelink select{border-color:#4eb5de}.select.is-primary select:hover,.docstring>section>a.select.docs-sourcelink select:hover,.select.is-primary select.is-hovered,.docstring>section>a.select.docs-sourcelink select.is-hovered{border-color:#39acda}.select.is-primary select:focus,.docstring>section>a.select.docs-sourcelink select:focus,.select.is-primary select.is-focused,.docstring>section>a.select.docs-sourcelink select.is-focused,.select.is-primary select:active,.docstring>section>a.select.docs-sourcelink select:active,.select.is-primary select.is-active,.docstring>section>a.select.docs-sourcelink select.is-active{box-shadow:0 0 0 0.125em rgba(78,181,222,0.25)}.select.is-link:not(:hover)::after{border-color:#2e63b8}.select.is-link select{border-color:#2e63b8}.select.is-link select:hover,.select.is-link select.is-hovered{border-color:#2958a4}.select.is-link select:focus,.select.is-link select.is-focused,.select.is-link select:active,.select.is-link select.is-active{box-shadow:0 0 0 0.125em rgba(46,99,184,0.25)}.select.is-info:not(:hover)::after{border-color:#209cee}.select.is-info select{border-color:#209cee}.select.is-info select:hover,.select.is-info select.is-hovered{border-color:#1190e3}.select.is-info select:focus,.select.is-info select.is-focused,.select.is-info select:active,.select.is-info select.is-active{box-shadow:0 0 0 0.125em rgba(32,156,238,0.25)}.select.is-success:not(:hover)::after{border-color:#22c35b}.select.is-success select{border-color:#22c35b}.select.is-success select:hover,.select.is-success select.is-hovered{border-color:#1ead51}.select.is-success select:focus,.select.is-success select.is-focused,.select.is-success select:active,.select.is-success select.is-active{box-shadow:0 0 0 0.125em rgba(34,195,91,0.25)}.select.is-warning:not(:hover)::after{border-color:#ffdd57}.select.is-warning select{border-color:#ffdd57}.select.is-warning select:hover,.select.is-warning select.is-hovered{border-color:#ffd83e}.select.is-warning select:focus,.select.is-warning select.is-focused,.select.is-warning select:active,.select.is-warning select.is-active{box-shadow:0 0 0 0.125em rgba(255,221,87,0.25)}.select.is-danger:not(:hover)::after{border-color:#da0b00}.select.is-danger select{border-color:#da0b00}.select.is-danger select:hover,.select.is-danger select.is-hovered{border-color:#c10a00}.select.is-danger select:focus,.select.is-danger select.is-focused,.select.is-danger select:active,.select.is-danger select.is-active{box-shadow:0 0 0 0.125em rgba(218,11,0,0.25)}.select.is-small,#documenter .docs-sidebar form.docs-search>input.select{border-radius:2px;font-size:.75rem}.select.is-medium{font-size:1.25rem}.select.is-large{font-size:1.5rem}.select.is-disabled::after{border-color:#6b6b6b}.select.is-fullwidth{width:100%}.select.is-fullwidth select{width:100%}.select.is-loading::after{margin-top:0;position:absolute;right:0.625em;top:0.625em;transform:none}.select.is-loading.is-small:after,#documenter .docs-sidebar form.docs-search>input.is-loading:after{font-size:.75rem}.select.is-loading.is-medium:after{font-size:1.25rem}.select.is-loading.is-large:after{font-size:1.5rem}.file{align-items:stretch;display:flex;justify-content:flex-start;position:relative}.file.is-white .file-cta{background-color:#fff;border-color:transparent;color:#0a0a0a}.file.is-white:hover .file-cta,.file.is-white.is-hovered .file-cta{background-color:#f9f9f9;border-color:transparent;color:#0a0a0a}.file.is-white:focus .file-cta,.file.is-white.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(255,255,255,0.25);color:#0a0a0a}.file.is-white:active .file-cta,.file.is-white.is-active .file-cta{background-color:#f2f2f2;border-color:transparent;color:#0a0a0a}.file.is-black .file-cta{background-color:#0a0a0a;border-color:transparent;color:#fff}.file.is-black:hover .file-cta,.file.is-black.is-hovered .file-cta{background-color:#040404;border-color:transparent;color:#fff}.file.is-black:focus .file-cta,.file.is-black.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(10,10,10,0.25);color:#fff}.file.is-black:active .file-cta,.file.is-black.is-active .file-cta{background-color:#000;border-color:transparent;color:#fff}.file.is-light .file-cta{background-color:#f5f5f5;border-color:transparent;color:#363636}.file.is-light:hover .file-cta,.file.is-light.is-hovered .file-cta{background-color:#eee;border-color:transparent;color:#363636}.file.is-light:focus .file-cta,.file.is-light.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(245,245,245,0.25);color:#363636}.file.is-light:active .file-cta,.file.is-light.is-active .file-cta{background-color:#e8e8e8;border-color:transparent;color:#363636}.file.is-dark .file-cta,.content kbd.file .file-cta{background-color:#363636;border-color:transparent;color:#f5f5f5}.file.is-dark:hover .file-cta,.content kbd.file:hover .file-cta,.file.is-dark.is-hovered .file-cta,.content kbd.file.is-hovered .file-cta{background-color:#2f2f2f;border-color:transparent;color:#f5f5f5}.file.is-dark:focus .file-cta,.content kbd.file:focus .file-cta,.file.is-dark.is-focused .file-cta,.content kbd.file.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(54,54,54,0.25);color:#f5f5f5}.file.is-dark:active .file-cta,.content kbd.file:active .file-cta,.file.is-dark.is-active .file-cta,.content kbd.file.is-active .file-cta{background-color:#292929;border-color:transparent;color:#f5f5f5}.file.is-primary .file-cta,.docstring>section>a.file.docs-sourcelink .file-cta{background-color:#4eb5de;border-color:transparent;color:#fff}.file.is-primary:hover .file-cta,.docstring>section>a.file.docs-sourcelink:hover .file-cta,.file.is-primary.is-hovered .file-cta,.docstring>section>a.file.is-hovered.docs-sourcelink .file-cta{background-color:#43b1dc;border-color:transparent;color:#fff}.file.is-primary:focus .file-cta,.docstring>section>a.file.docs-sourcelink:focus .file-cta,.file.is-primary.is-focused .file-cta,.docstring>section>a.file.is-focused.docs-sourcelink .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(78,181,222,0.25);color:#fff}.file.is-primary:active .file-cta,.docstring>section>a.file.docs-sourcelink:active .file-cta,.file.is-primary.is-active .file-cta,.docstring>section>a.file.is-active.docs-sourcelink .file-cta{background-color:#39acda;border-color:transparent;color:#fff}.file.is-link .file-cta{background-color:#2e63b8;border-color:transparent;color:#fff}.file.is-link:hover .file-cta,.file.is-link.is-hovered .file-cta{background-color:#2b5eae;border-color:transparent;color:#fff}.file.is-link:focus .file-cta,.file.is-link.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(46,99,184,0.25);color:#fff}.file.is-link:active .file-cta,.file.is-link.is-active .file-cta{background-color:#2958a4;border-color:transparent;color:#fff}.file.is-info .file-cta{background-color:#209cee;border-color:transparent;color:#fff}.file.is-info:hover .file-cta,.file.is-info.is-hovered .file-cta{background-color:#1497ed;border-color:transparent;color:#fff}.file.is-info:focus .file-cta,.file.is-info.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(32,156,238,0.25);color:#fff}.file.is-info:active .file-cta,.file.is-info.is-active .file-cta{background-color:#1190e3;border-color:transparent;color:#fff}.file.is-success .file-cta{background-color:#22c35b;border-color:transparent;color:#fff}.file.is-success:hover .file-cta,.file.is-success.is-hovered .file-cta{background-color:#20b856;border-color:transparent;color:#fff}.file.is-success:focus .file-cta,.file.is-success.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(34,195,91,0.25);color:#fff}.file.is-success:active .file-cta,.file.is-success.is-active .file-cta{background-color:#1ead51;border-color:transparent;color:#fff}.file.is-warning .file-cta{background-color:#ffdd57;border-color:transparent;color:rgba(0,0,0,0.7)}.file.is-warning:hover .file-cta,.file.is-warning.is-hovered .file-cta{background-color:#ffda4a;border-color:transparent;color:rgba(0,0,0,0.7)}.file.is-warning:focus .file-cta,.file.is-warning.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(255,221,87,0.25);color:rgba(0,0,0,0.7)}.file.is-warning:active .file-cta,.file.is-warning.is-active .file-cta{background-color:#ffd83e;border-color:transparent;color:rgba(0,0,0,0.7)}.file.is-danger .file-cta{background-color:#da0b00;border-color:transparent;color:#fff}.file.is-danger:hover .file-cta,.file.is-danger.is-hovered .file-cta{background-color:#cd0a00;border-color:transparent;color:#fff}.file.is-danger:focus .file-cta,.file.is-danger.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(218,11,0,0.25);color:#fff}.file.is-danger:active .file-cta,.file.is-danger.is-active .file-cta{background-color:#c10a00;border-color:transparent;color:#fff}.file.is-small,#documenter .docs-sidebar form.docs-search>input.file{font-size:.75rem}.file.is-medium{font-size:1.25rem}.file.is-medium .file-icon .fa{font-size:21px}.file.is-large{font-size:1.5rem}.file.is-large .file-icon .fa{font-size:28px}.file.has-name .file-cta{border-bottom-right-radius:0;border-top-right-radius:0}.file.has-name .file-name{border-bottom-left-radius:0;border-top-left-radius:0}.file.has-name.is-empty .file-cta{border-radius:4px}.file.has-name.is-empty .file-name{display:none}.file.is-boxed .file-label{flex-direction:column}.file.is-boxed .file-cta{flex-direction:column;height:auto;padding:1em 3em}.file.is-boxed .file-name{border-width:0 1px 1px}.file.is-boxed .file-icon{height:1.5em;width:1.5em}.file.is-boxed .file-icon .fa{font-size:21px}.file.is-boxed.is-small .file-icon .fa,#documenter .docs-sidebar form.docs-search>input.is-boxed .file-icon .fa{font-size:14px}.file.is-boxed.is-medium .file-icon .fa{font-size:28px}.file.is-boxed.is-large .file-icon .fa{font-size:35px}.file.is-boxed.has-name .file-cta{border-radius:4px 4px 0 0}.file.is-boxed.has-name .file-name{border-radius:0 0 4px 4px;border-width:0 1px 1px}.file.is-centered{justify-content:center}.file.is-fullwidth .file-label{width:100%}.file.is-fullwidth .file-name{flex-grow:1;max-width:none}.file.is-right{justify-content:flex-end}.file.is-right .file-cta{border-radius:0 4px 4px 0}.file.is-right .file-name{border-radius:4px 0 0 4px;border-width:1px 0 1px 1px;order:-1}.file-label{align-items:stretch;display:flex;cursor:pointer;justify-content:flex-start;overflow:hidden;position:relative}.file-label:hover .file-cta{background-color:#eee;color:#363636}.file-label:hover .file-name{border-color:#d5d5d5}.file-label:active .file-cta{background-color:#e8e8e8;color:#363636}.file-label:active .file-name{border-color:#cfcfcf}.file-input{height:100%;left:0;opacity:0;outline:none;position:absolute;top:0;width:100%}.file-cta,.file-name{border-color:#dbdbdb;border-radius:4px;font-size:1em;padding-left:1em;padding-right:1em;white-space:nowrap}.file-cta{background-color:#f5f5f5;color:#4a4a4a}.file-name{border-color:#dbdbdb;border-style:solid;border-width:1px 1px 1px 0;display:block;max-width:16em;overflow:hidden;text-align:left;text-overflow:ellipsis}.file-icon{align-items:center;display:flex;height:1em;justify-content:center;margin-right:0.5em;width:1em}.file-icon .fa{font-size:14px}.label{color:#363636;display:block;font-size:1rem;font-weight:700}.label:not(:last-child){margin-bottom:0.5em}.label.is-small,#documenter .docs-sidebar form.docs-search>input.label{font-size:.75rem}.label.is-medium{font-size:1.25rem}.label.is-large{font-size:1.5rem}.help{display:block;font-size:.75rem;margin-top:0.25rem}.help.is-white{color:#fff}.help.is-black{color:#0a0a0a}.help.is-light{color:#f5f5f5}.help.is-dark,.content kbd.help{color:#363636}.help.is-primary,.docstring>section>a.help.docs-sourcelink{color:#4eb5de}.help.is-link{color:#2e63b8}.help.is-info{color:#209cee}.help.is-success{color:#22c35b}.help.is-warning{color:#ffdd57}.help.is-danger{color:#da0b00}.field:not(:last-child){margin-bottom:0.75rem}.field.has-addons{display:flex;justify-content:flex-start}.field.has-addons .control:not(:last-child){margin-right:-1px}.field.has-addons .control:not(:first-child):not(:last-child) .button,.field.has-addons .control:not(:first-child):not(:last-child) .input,.field.has-addons .control:not(:first-child):not(:last-child) #documenter .docs-sidebar form.docs-search>input,#documenter .docs-sidebar .field.has-addons .control:not(:first-child):not(:last-child) form.docs-search>input,.field.has-addons .control:not(:first-child):not(:last-child) .select select{border-radius:0}.field.has-addons .control:first-child:not(:only-child) .button,.field.has-addons .control:first-child:not(:only-child) .input,.field.has-addons .control:first-child:not(:only-child) #documenter .docs-sidebar form.docs-search>input,#documenter .docs-sidebar .field.has-addons .control:first-child:not(:only-child) form.docs-search>input,.field.has-addons .control:first-child:not(:only-child) .select select{border-bottom-right-radius:0;border-top-right-radius:0}.field.has-addons .control:last-child:not(:only-child) .button,.field.has-addons .control:last-child:not(:only-child) .input,.field.has-addons .control:last-child:not(:only-child) #documenter .docs-sidebar form.docs-search>input,#documenter .docs-sidebar .field.has-addons .control:last-child:not(:only-child) form.docs-search>input,.field.has-addons .control:last-child:not(:only-child) .select select{border-bottom-left-radius:0;border-top-left-radius:0}.field.has-addons .control .button:not([disabled]):hover,.field.has-addons .control .button.is-hovered:not([disabled]),.field.has-addons .control .input:not([disabled]):hover,.field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):hover,#documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):hover,.field.has-addons .control .input.is-hovered:not([disabled]),.field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-hovered:not([disabled]),#documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-hovered:not([disabled]),.field.has-addons .control .select select:not([disabled]):hover,.field.has-addons .control .select select.is-hovered:not([disabled]){z-index:2}.field.has-addons .control .button:not([disabled]):focus,.field.has-addons .control .button.is-focused:not([disabled]),.field.has-addons .control .button:not([disabled]):active,.field.has-addons .control .button.is-active:not([disabled]),.field.has-addons .control .input:not([disabled]):focus,.field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):focus,#documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):focus,.field.has-addons .control .input.is-focused:not([disabled]),.field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-focused:not([disabled]),#documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-focused:not([disabled]),.field.has-addons .control .input:not([disabled]):active,.field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):active,#documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):active,.field.has-addons .control .input.is-active:not([disabled]),.field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-active:not([disabled]),#documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-active:not([disabled]),.field.has-addons .control .select select:not([disabled]):focus,.field.has-addons .control .select select.is-focused:not([disabled]),.field.has-addons .control .select select:not([disabled]):active,.field.has-addons .control .select select.is-active:not([disabled]){z-index:3}.field.has-addons .control .button:not([disabled]):focus:hover,.field.has-addons .control .button.is-focused:not([disabled]):hover,.field.has-addons .control .button:not([disabled]):active:hover,.field.has-addons .control .button.is-active:not([disabled]):hover,.field.has-addons .control .input:not([disabled]):focus:hover,.field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):focus:hover,#documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):focus:hover,.field.has-addons .control .input.is-focused:not([disabled]):hover,.field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-focused:not([disabled]):hover,#documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-focused:not([disabled]):hover,.field.has-addons .control .input:not([disabled]):active:hover,.field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):active:hover,#documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):active:hover,.field.has-addons .control .input.is-active:not([disabled]):hover,.field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-active:not([disabled]):hover,#documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-active:not([disabled]):hover,.field.has-addons .control .select select:not([disabled]):focus:hover,.field.has-addons .control .select select.is-focused:not([disabled]):hover,.field.has-addons .control .select select:not([disabled]):active:hover,.field.has-addons .control .select select.is-active:not([disabled]):hover{z-index:4}.field.has-addons .control.is-expanded{flex-grow:1;flex-shrink:1}.field.has-addons.has-addons-centered{justify-content:center}.field.has-addons.has-addons-right{justify-content:flex-end}.field.has-addons.has-addons-fullwidth .control{flex-grow:1;flex-shrink:0}.field.is-grouped{display:flex;justify-content:flex-start}.field.is-grouped>.control{flex-shrink:0}.field.is-grouped>.control:not(:last-child){margin-bottom:0;margin-right:0.75rem}.field.is-grouped>.control.is-expanded{flex-grow:1;flex-shrink:1}.field.is-grouped.is-grouped-centered{justify-content:center}.field.is-grouped.is-grouped-right{justify-content:flex-end}.field.is-grouped.is-grouped-multiline{flex-wrap:wrap}.field.is-grouped.is-grouped-multiline>.control:last-child,.field.is-grouped.is-grouped-multiline>.control:not(:last-child){margin-bottom:0.75rem}.field.is-grouped.is-grouped-multiline:last-child{margin-bottom:-0.75rem}.field.is-grouped.is-grouped-multiline:not(:last-child){margin-bottom:0}@media screen and (min-width: 769px),print{.field.is-horizontal{display:flex}}.field-label .label{font-size:inherit}@media screen and (max-width: 768px){.field-label{margin-bottom:0.5rem}}@media screen and (min-width: 769px),print{.field-label{flex-basis:0;flex-grow:1;flex-shrink:0;margin-right:1.5rem;text-align:right}.field-label.is-small,#documenter .docs-sidebar form.docs-search>input.field-label{font-size:.75rem;padding-top:0.375em}.field-label.is-normal{padding-top:0.375em}.field-label.is-medium{font-size:1.25rem;padding-top:0.375em}.field-label.is-large{font-size:1.5rem;padding-top:0.375em}}.field-body .field .field{margin-bottom:0}@media screen and (min-width: 769px),print{.field-body{display:flex;flex-basis:0;flex-grow:5;flex-shrink:1}.field-body .field{margin-bottom:0}.field-body>.field{flex-shrink:1}.field-body>.field:not(.is-narrow){flex-grow:1}.field-body>.field:not(:last-child){margin-right:0.75rem}}.control{box-sizing:border-box;clear:both;font-size:1rem;position:relative;text-align:left}.control.has-icons-left .input:focus~.icon,.control.has-icons-left #documenter .docs-sidebar form.docs-search>input:focus~.icon,#documenter .docs-sidebar .control.has-icons-left form.docs-search>input:focus~.icon,.control.has-icons-left .select:focus~.icon,.control.has-icons-right .input:focus~.icon,.control.has-icons-right #documenter .docs-sidebar form.docs-search>input:focus~.icon,#documenter .docs-sidebar .control.has-icons-right form.docs-search>input:focus~.icon,.control.has-icons-right .select:focus~.icon{color:#6b6b6b}.control.has-icons-left .input.is-small~.icon,.control.has-icons-left #documenter .docs-sidebar form.docs-search>input~.icon,#documenter .docs-sidebar .control.has-icons-left form.docs-search>input~.icon,.control.has-icons-left .select.is-small~.icon,.control.has-icons-right .input.is-small~.icon,.control.has-icons-right #documenter .docs-sidebar form.docs-search>input~.icon,#documenter .docs-sidebar .control.has-icons-right form.docs-search>input~.icon,.control.has-icons-right .select.is-small~.icon{font-size:.75rem}.control.has-icons-left .input.is-medium~.icon,.control.has-icons-left #documenter .docs-sidebar form.docs-search>input.is-medium~.icon,#documenter .docs-sidebar .control.has-icons-left form.docs-search>input.is-medium~.icon,.control.has-icons-left .select.is-medium~.icon,.control.has-icons-right .input.is-medium~.icon,.control.has-icons-right #documenter .docs-sidebar form.docs-search>input.is-medium~.icon,#documenter .docs-sidebar .control.has-icons-right form.docs-search>input.is-medium~.icon,.control.has-icons-right .select.is-medium~.icon{font-size:1.25rem}.control.has-icons-left .input.is-large~.icon,.control.has-icons-left #documenter .docs-sidebar form.docs-search>input.is-large~.icon,#documenter .docs-sidebar .control.has-icons-left form.docs-search>input.is-large~.icon,.control.has-icons-left .select.is-large~.icon,.control.has-icons-right .input.is-large~.icon,.control.has-icons-right #documenter .docs-sidebar form.docs-search>input.is-large~.icon,#documenter .docs-sidebar .control.has-icons-right form.docs-search>input.is-large~.icon,.control.has-icons-right .select.is-large~.icon{font-size:1.5rem}.control.has-icons-left .icon,.control.has-icons-right .icon{color:#dbdbdb;height:2.25em;pointer-events:none;position:absolute;top:0;width:2.25em;z-index:4}.control.has-icons-left .input,.control.has-icons-left #documenter .docs-sidebar form.docs-search>input,#documenter .docs-sidebar .control.has-icons-left form.docs-search>input,.control.has-icons-left .select select{padding-left:2.25em}.control.has-icons-left .icon.is-left{left:0}.control.has-icons-right .input,.control.has-icons-right #documenter .docs-sidebar form.docs-search>input,#documenter .docs-sidebar .control.has-icons-right form.docs-search>input,.control.has-icons-right .select select{padding-right:2.25em}.control.has-icons-right .icon.is-right{right:0}.control.is-loading::after{position:absolute !important;right:0.625em;top:0.625em;z-index:4}.control.is-loading.is-small:after,#documenter .docs-sidebar form.docs-search>input.is-loading:after{font-size:.75rem}.control.is-loading.is-medium:after{font-size:1.25rem}.control.is-loading.is-large:after{font-size:1.5rem}.breadcrumb{font-size:1rem;white-space:nowrap}.breadcrumb a{align-items:center;color:#2e63b8;display:flex;justify-content:center;padding:0 .75em}.breadcrumb a:hover{color:#363636}.breadcrumb li{align-items:center;display:flex}.breadcrumb li:first-child a{padding-left:0}.breadcrumb li.is-active a{color:#222;cursor:default;pointer-events:none}.breadcrumb li+li::before{color:#b5b5b5;content:"\0002f"}.breadcrumb ul,.breadcrumb ol{align-items:flex-start;display:flex;flex-wrap:wrap;justify-content:flex-start}.breadcrumb .icon:first-child{margin-right:0.5em}.breadcrumb .icon:last-child{margin-left:0.5em}.breadcrumb.is-centered ol,.breadcrumb.is-centered ul{justify-content:center}.breadcrumb.is-right ol,.breadcrumb.is-right ul{justify-content:flex-end}.breadcrumb.is-small,#documenter .docs-sidebar form.docs-search>input.breadcrumb{font-size:.75rem}.breadcrumb.is-medium{font-size:1.25rem}.breadcrumb.is-large{font-size:1.5rem}.breadcrumb.has-arrow-separator li+li::before{content:"\02192"}.breadcrumb.has-bullet-separator li+li::before{content:"\02022"}.breadcrumb.has-dot-separator li+li::before{content:"\000b7"}.breadcrumb.has-succeeds-separator li+li::before{content:"\0227B"}.card{background-color:#fff;box-shadow:0 2px 3px rgba(10,10,10,0.1),0 0 0 1px rgba(10,10,10,0.1);color:#222;max-width:100%;position:relative}.card-header{background-color:rgba(0,0,0,0);align-items:stretch;box-shadow:0 1px 2px rgba(10,10,10,0.1);display:flex}.card-header-title{align-items:center;color:#222;display:flex;flex-grow:1;font-weight:700;padding:.75rem}.card-header-title.is-centered{justify-content:center}.card-header-icon{align-items:center;cursor:pointer;display:flex;justify-content:center;padding:.75rem}.card-image{display:block;position:relative}.card-content{background-color:rgba(0,0,0,0);padding:1.5rem}.card-footer{background-color:rgba(0,0,0,0);border-top:1px solid #dbdbdb;align-items:stretch;display:flex}.card-footer-item{align-items:center;display:flex;flex-basis:0;flex-grow:1;flex-shrink:0;justify-content:center;padding:.75rem}.card-footer-item:not(:last-child){border-right:1px solid #dbdbdb}.card .media:not(:last-child){margin-bottom:1.5rem}.dropdown{display:inline-flex;position:relative;vertical-align:top}.dropdown.is-active .dropdown-menu,.dropdown.is-hoverable:hover .dropdown-menu{display:block}.dropdown.is-right .dropdown-menu{left:auto;right:0}.dropdown.is-up .dropdown-menu{bottom:100%;padding-bottom:4px;padding-top:initial;top:auto}.dropdown-menu{display:none;left:0;min-width:12rem;padding-top:4px;position:absolute;top:100%;z-index:20}.dropdown-content{background-color:#fff;border-radius:4px;box-shadow:0 2px 3px rgba(10,10,10,0.1),0 0 0 1px rgba(10,10,10,0.1);padding-bottom:.5rem;padding-top:.5rem}.dropdown-item{color:#4a4a4a;display:block;font-size:0.875rem;line-height:1.5;padding:0.375rem 1rem;position:relative}a.dropdown-item,button.dropdown-item{padding-right:3rem;text-align:left;white-space:nowrap;width:100%}a.dropdown-item:hover,button.dropdown-item:hover{background-color:#f5f5f5;color:#0a0a0a}a.dropdown-item.is-active,button.dropdown-item.is-active{background-color:#2e63b8;color:#fff}.dropdown-divider{background-color:#dbdbdb;border:none;display:block;height:1px;margin:0.5rem 0}.level{align-items:center;justify-content:space-between}.level code{border-radius:4px}.level img{display:inline-block;vertical-align:top}.level.is-mobile{display:flex}.level.is-mobile .level-left,.level.is-mobile .level-right{display:flex}.level.is-mobile .level-left+.level-right{margin-top:0}.level.is-mobile .level-item:not(:last-child){margin-bottom:0;margin-right:.75rem}.level.is-mobile .level-item:not(.is-narrow){flex-grow:1}@media screen and (min-width: 769px),print{.level{display:flex}.level>.level-item:not(.is-narrow){flex-grow:1}}.level-item{align-items:center;display:flex;flex-basis:auto;flex-grow:0;flex-shrink:0;justify-content:center}.level-item .title,.level-item .subtitle{margin-bottom:0}@media screen and (max-width: 768px){.level-item:not(:last-child){margin-bottom:.75rem}}.level-left,.level-right{flex-basis:auto;flex-grow:0;flex-shrink:0}.level-left .level-item.is-flexible,.level-right .level-item.is-flexible{flex-grow:1}@media screen and (min-width: 769px),print{.level-left .level-item:not(:last-child),.level-right .level-item:not(:last-child){margin-right:.75rem}}.level-left{align-items:center;justify-content:flex-start}@media screen and (max-width: 768px){.level-left+.level-right{margin-top:1.5rem}}@media screen and (min-width: 769px),print{.level-left{display:flex}}.level-right{align-items:center;justify-content:flex-end}@media screen and (min-width: 769px),print{.level-right{display:flex}}.list{background-color:#fff;border-radius:4px;box-shadow:0 2px 3px rgba(10,10,10,0.1),0 0 0 1px rgba(10,10,10,0.1)}.list-item{display:block;padding:0.5em 1em}.list-item:not(a){color:#222}.list-item:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.list-item:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px}.list-item:not(:last-child){border-bottom:1px solid #dbdbdb}.list-item.is-active{background-color:#2e63b8;color:#fff}a.list-item{background-color:#f5f5f5;cursor:pointer}.media{align-items:flex-start;display:flex;text-align:left}.media .content:not(:last-child){margin-bottom:0.75rem}.media .media{border-top:1px solid rgba(219,219,219,0.5);display:flex;padding-top:0.75rem}.media .media .content:not(:last-child),.media .media .control:not(:last-child){margin-bottom:0.5rem}.media .media .media{padding-top:0.5rem}.media .media .media+.media{margin-top:0.5rem}.media+.media{border-top:1px solid rgba(219,219,219,0.5);margin-top:1rem;padding-top:1rem}.media.is-large+.media{margin-top:1.5rem;padding-top:1.5rem}.media-left,.media-right{flex-basis:auto;flex-grow:0;flex-shrink:0}.media-left{margin-right:1rem}.media-right{margin-left:1rem}.media-content{flex-basis:auto;flex-grow:1;flex-shrink:1;text-align:left}@media screen and (max-width: 768px){.media-content{overflow-x:auto}}.menu{font-size:1rem}.menu.is-small,#documenter .docs-sidebar form.docs-search>input.menu{font-size:.75rem}.menu.is-medium{font-size:1.25rem}.menu.is-large{font-size:1.5rem}.menu-list{line-height:1.25}.menu-list a{border-radius:2px;color:#222;display:block;padding:0.5em 0.75em}.menu-list a:hover{background-color:#f5f5f5;color:#222}.menu-list a.is-active{background-color:#2e63b8;color:#fff}.menu-list li ul{border-left:1px solid #dbdbdb;margin:.75em;padding-left:.75em}.menu-label{color:#6b6b6b;font-size:.75em;letter-spacing:.1em;text-transform:uppercase}.menu-label:not(:first-child){margin-top:1em}.menu-label:not(:last-child){margin-bottom:1em}.message{background-color:#f5f5f5;border-radius:4px;font-size:1rem}.message strong{color:currentColor}.message a:not(.button):not(.tag):not(.dropdown-item){color:currentColor;text-decoration:underline}.message.is-small,#documenter .docs-sidebar form.docs-search>input.message{font-size:.75rem}.message.is-medium{font-size:1.25rem}.message.is-large{font-size:1.5rem}.message.is-white{background-color:#fff}.message.is-white .message-header{background-color:#fff;color:#0a0a0a}.message.is-white .message-body{border-color:#fff;color:#4d4d4d}.message.is-black{background-color:#fafafa}.message.is-black .message-header{background-color:#0a0a0a;color:#fff}.message.is-black .message-body{border-color:#0a0a0a;color:#090909}.message.is-light{background-color:#fafafa}.message.is-light .message-header{background-color:#f5f5f5;color:#363636}.message.is-light .message-body{border-color:#f5f5f5;color:#505050}.message.is-dark,.content kbd.message{background-color:#fafafa}.message.is-dark .message-header,.content kbd.message .message-header{background-color:#363636;color:#f5f5f5}.message.is-dark .message-body,.content kbd.message .message-body{border-color:#363636;color:#2a2a2a}.message.is-primary,.docstring>section>a.message.docs-sourcelink{background-color:#f6fbfd}.message.is-primary .message-header,.docstring>section>a.message.docs-sourcelink .message-header{background-color:#4eb5de;color:#fff}.message.is-primary .message-body,.docstring>section>a.message.docs-sourcelink .message-body{border-color:#4eb5de;color:#1f556a}.message.is-link{background-color:#f7f9fd}.message.is-link .message-header{background-color:#2e63b8;color:#fff}.message.is-link .message-body{border-color:#2e63b8;color:#264981}.message.is-info{background-color:#f6fbfe}.message.is-info .message-header{background-color:#209cee;color:#fff}.message.is-info .message-body{border-color:#209cee;color:#12537d}.message.is-success{background-color:#f6fdf9}.message.is-success .message-header{background-color:#22c35b;color:#fff}.message.is-success .message-body{border-color:#22c35b;color:#0f361d}.message.is-warning{background-color:#fffdf5}.message.is-warning .message-header{background-color:#ffdd57;color:rgba(0,0,0,0.7)}.message.is-warning .message-body{border-color:#ffdd57;color:#3c3108}.message.is-danger{background-color:#fff5f5}.message.is-danger .message-header{background-color:#da0b00;color:#fff}.message.is-danger .message-body{border-color:#da0b00;color:#9b0c04}.message-header{align-items:center;background-color:#222;border-radius:4px 4px 0 0;color:#fff;display:flex;font-weight:700;justify-content:space-between;line-height:1.25;padding:0.75em 1em;position:relative}.message-header .delete{flex-grow:0;flex-shrink:0;margin-left:0.75em}.message-header+.message-body{border-width:0;border-top-left-radius:0;border-top-right-radius:0}.message-body{border-color:#dbdbdb;border-radius:4px;border-style:solid;border-width:0 0 0 4px;color:#222;padding:1.25em 1.5em}.message-body code,.message-body pre{background-color:#fff}.message-body pre code{background-color:rgba(0,0,0,0)}.modal{align-items:center;display:none;flex-direction:column;justify-content:center;overflow:hidden;position:fixed;z-index:40}.modal.is-active{display:flex}.modal-background{background-color:rgba(10,10,10,0.86)}.modal-content,.modal-card{margin:0 20px;max-height:calc(100vh - 160px);overflow:auto;position:relative;width:100%}@media screen and (min-width: 769px),print{.modal-content,.modal-card{margin:0 auto;max-height:calc(100vh - 40px);width:640px}}.modal-close{background:none;height:40px;position:fixed;right:20px;top:20px;width:40px}.modal-card{display:flex;flex-direction:column;max-height:calc(100vh - 40px);overflow:hidden;-ms-overflow-y:visible}.modal-card-head,.modal-card-foot{align-items:center;background-color:#f5f5f5;display:flex;flex-shrink:0;justify-content:flex-start;padding:20px;position:relative}.modal-card-head{border-bottom:1px solid #dbdbdb;border-top-left-radius:6px;border-top-right-radius:6px}.modal-card-title{color:#222;flex-grow:1;flex-shrink:0;font-size:1.5rem;line-height:1}.modal-card-foot{border-bottom-left-radius:6px;border-bottom-right-radius:6px;border-top:1px solid #dbdbdb}.modal-card-foot .button:not(:last-child){margin-right:0.5em}.modal-card-body{-webkit-overflow-scrolling:touch;background-color:#fff;flex-grow:1;flex-shrink:1;overflow:auto;padding:20px}.navbar{background-color:#fff;min-height:3.25rem;position:relative;z-index:30}.navbar.is-white{background-color:#fff;color:#0a0a0a}.navbar.is-white .navbar-brand>.navbar-item,.navbar.is-white .navbar-brand .navbar-link{color:#0a0a0a}.navbar.is-white .navbar-brand>a.navbar-item:focus,.navbar.is-white .navbar-brand>a.navbar-item:hover,.navbar.is-white .navbar-brand>a.navbar-item.is-active,.navbar.is-white .navbar-brand .navbar-link:focus,.navbar.is-white .navbar-brand .navbar-link:hover,.navbar.is-white .navbar-brand .navbar-link.is-active{background-color:#f2f2f2;color:#0a0a0a}.navbar.is-white .navbar-brand .navbar-link::after{border-color:#0a0a0a}.navbar.is-white .navbar-burger{color:#0a0a0a}@media screen and (min-width: 1056px){.navbar.is-white .navbar-start>.navbar-item,.navbar.is-white .navbar-start .navbar-link,.navbar.is-white .navbar-end>.navbar-item,.navbar.is-white .navbar-end .navbar-link{color:#0a0a0a}.navbar.is-white .navbar-start>a.navbar-item:focus,.navbar.is-white .navbar-start>a.navbar-item:hover,.navbar.is-white .navbar-start>a.navbar-item.is-active,.navbar.is-white .navbar-start .navbar-link:focus,.navbar.is-white .navbar-start .navbar-link:hover,.navbar.is-white .navbar-start .navbar-link.is-active,.navbar.is-white .navbar-end>a.navbar-item:focus,.navbar.is-white .navbar-end>a.navbar-item:hover,.navbar.is-white .navbar-end>a.navbar-item.is-active,.navbar.is-white .navbar-end .navbar-link:focus,.navbar.is-white .navbar-end .navbar-link:hover,.navbar.is-white .navbar-end .navbar-link.is-active{background-color:#f2f2f2;color:#0a0a0a}.navbar.is-white .navbar-start .navbar-link::after,.navbar.is-white .navbar-end .navbar-link::after{border-color:#0a0a0a}.navbar.is-white .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-white .navbar-item.has-dropdown:hover .navbar-link,.navbar.is-white .navbar-item.has-dropdown.is-active .navbar-link{background-color:#f2f2f2;color:#0a0a0a}.navbar.is-white .navbar-dropdown a.navbar-item.is-active{background-color:#fff;color:#0a0a0a}}.navbar.is-black{background-color:#0a0a0a;color:#fff}.navbar.is-black .navbar-brand>.navbar-item,.navbar.is-black .navbar-brand .navbar-link{color:#fff}.navbar.is-black .navbar-brand>a.navbar-item:focus,.navbar.is-black .navbar-brand>a.navbar-item:hover,.navbar.is-black .navbar-brand>a.navbar-item.is-active,.navbar.is-black .navbar-brand .navbar-link:focus,.navbar.is-black .navbar-brand .navbar-link:hover,.navbar.is-black .navbar-brand .navbar-link.is-active{background-color:#000;color:#fff}.navbar.is-black .navbar-brand .navbar-link::after{border-color:#fff}.navbar.is-black .navbar-burger{color:#fff}@media screen and (min-width: 1056px){.navbar.is-black .navbar-start>.navbar-item,.navbar.is-black .navbar-start .navbar-link,.navbar.is-black .navbar-end>.navbar-item,.navbar.is-black .navbar-end .navbar-link{color:#fff}.navbar.is-black .navbar-start>a.navbar-item:focus,.navbar.is-black .navbar-start>a.navbar-item:hover,.navbar.is-black .navbar-start>a.navbar-item.is-active,.navbar.is-black .navbar-start .navbar-link:focus,.navbar.is-black .navbar-start .navbar-link:hover,.navbar.is-black .navbar-start .navbar-link.is-active,.navbar.is-black .navbar-end>a.navbar-item:focus,.navbar.is-black .navbar-end>a.navbar-item:hover,.navbar.is-black .navbar-end>a.navbar-item.is-active,.navbar.is-black .navbar-end .navbar-link:focus,.navbar.is-black .navbar-end .navbar-link:hover,.navbar.is-black .navbar-end .navbar-link.is-active{background-color:#000;color:#fff}.navbar.is-black .navbar-start .navbar-link::after,.navbar.is-black .navbar-end .navbar-link::after{border-color:#fff}.navbar.is-black .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-black .navbar-item.has-dropdown:hover .navbar-link,.navbar.is-black .navbar-item.has-dropdown.is-active .navbar-link{background-color:#000;color:#fff}.navbar.is-black .navbar-dropdown a.navbar-item.is-active{background-color:#0a0a0a;color:#fff}}.navbar.is-light{background-color:#f5f5f5;color:#363636}.navbar.is-light .navbar-brand>.navbar-item,.navbar.is-light .navbar-brand .navbar-link{color:#363636}.navbar.is-light .navbar-brand>a.navbar-item:focus,.navbar.is-light .navbar-brand>a.navbar-item:hover,.navbar.is-light .navbar-brand>a.navbar-item.is-active,.navbar.is-light .navbar-brand .navbar-link:focus,.navbar.is-light .navbar-brand .navbar-link:hover,.navbar.is-light .navbar-brand .navbar-link.is-active{background-color:#e8e8e8;color:#363636}.navbar.is-light .navbar-brand .navbar-link::after{border-color:#363636}.navbar.is-light .navbar-burger{color:#363636}@media screen and (min-width: 1056px){.navbar.is-light .navbar-start>.navbar-item,.navbar.is-light .navbar-start .navbar-link,.navbar.is-light .navbar-end>.navbar-item,.navbar.is-light .navbar-end .navbar-link{color:#363636}.navbar.is-light .navbar-start>a.navbar-item:focus,.navbar.is-light .navbar-start>a.navbar-item:hover,.navbar.is-light .navbar-start>a.navbar-item.is-active,.navbar.is-light .navbar-start .navbar-link:focus,.navbar.is-light .navbar-start .navbar-link:hover,.navbar.is-light .navbar-start .navbar-link.is-active,.navbar.is-light .navbar-end>a.navbar-item:focus,.navbar.is-light .navbar-end>a.navbar-item:hover,.navbar.is-light .navbar-end>a.navbar-item.is-active,.navbar.is-light .navbar-end .navbar-link:focus,.navbar.is-light .navbar-end .navbar-link:hover,.navbar.is-light .navbar-end .navbar-link.is-active{background-color:#e8e8e8;color:#363636}.navbar.is-light .navbar-start .navbar-link::after,.navbar.is-light .navbar-end .navbar-link::after{border-color:#363636}.navbar.is-light .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-light .navbar-item.has-dropdown:hover .navbar-link,.navbar.is-light .navbar-item.has-dropdown.is-active .navbar-link{background-color:#e8e8e8;color:#363636}.navbar.is-light .navbar-dropdown a.navbar-item.is-active{background-color:#f5f5f5;color:#363636}}.navbar.is-dark,.content kbd.navbar{background-color:#363636;color:#f5f5f5}.navbar.is-dark .navbar-brand>.navbar-item,.content kbd.navbar .navbar-brand>.navbar-item,.navbar.is-dark .navbar-brand .navbar-link,.content kbd.navbar .navbar-brand .navbar-link{color:#f5f5f5}.navbar.is-dark .navbar-brand>a.navbar-item:focus,.content kbd.navbar .navbar-brand>a.navbar-item:focus,.navbar.is-dark .navbar-brand>a.navbar-item:hover,.content kbd.navbar .navbar-brand>a.navbar-item:hover,.navbar.is-dark .navbar-brand>a.navbar-item.is-active,.content kbd.navbar .navbar-brand>a.navbar-item.is-active,.navbar.is-dark .navbar-brand .navbar-link:focus,.content kbd.navbar .navbar-brand .navbar-link:focus,.navbar.is-dark .navbar-brand .navbar-link:hover,.content kbd.navbar .navbar-brand .navbar-link:hover,.navbar.is-dark .navbar-brand .navbar-link.is-active,.content kbd.navbar .navbar-brand .navbar-link.is-active{background-color:#292929;color:#f5f5f5}.navbar.is-dark .navbar-brand .navbar-link::after,.content kbd.navbar .navbar-brand .navbar-link::after{border-color:#f5f5f5}.navbar.is-dark .navbar-burger,.content kbd.navbar .navbar-burger{color:#f5f5f5}@media screen and (min-width: 1056px){.navbar.is-dark .navbar-start>.navbar-item,.content kbd.navbar .navbar-start>.navbar-item,.navbar.is-dark .navbar-start .navbar-link,.content kbd.navbar .navbar-start .navbar-link,.navbar.is-dark .navbar-end>.navbar-item,.content kbd.navbar .navbar-end>.navbar-item,.navbar.is-dark .navbar-end .navbar-link,.content kbd.navbar .navbar-end .navbar-link{color:#f5f5f5}.navbar.is-dark .navbar-start>a.navbar-item:focus,.content kbd.navbar .navbar-start>a.navbar-item:focus,.navbar.is-dark .navbar-start>a.navbar-item:hover,.content kbd.navbar .navbar-start>a.navbar-item:hover,.navbar.is-dark .navbar-start>a.navbar-item.is-active,.content kbd.navbar .navbar-start>a.navbar-item.is-active,.navbar.is-dark .navbar-start .navbar-link:focus,.content kbd.navbar .navbar-start .navbar-link:focus,.navbar.is-dark .navbar-start .navbar-link:hover,.content kbd.navbar .navbar-start .navbar-link:hover,.navbar.is-dark .navbar-start .navbar-link.is-active,.content kbd.navbar .navbar-start .navbar-link.is-active,.navbar.is-dark .navbar-end>a.navbar-item:focus,.content kbd.navbar .navbar-end>a.navbar-item:focus,.navbar.is-dark .navbar-end>a.navbar-item:hover,.content kbd.navbar .navbar-end>a.navbar-item:hover,.navbar.is-dark .navbar-end>a.navbar-item.is-active,.content kbd.navbar .navbar-end>a.navbar-item.is-active,.navbar.is-dark .navbar-end .navbar-link:focus,.content kbd.navbar .navbar-end .navbar-link:focus,.navbar.is-dark .navbar-end .navbar-link:hover,.content kbd.navbar .navbar-end .navbar-link:hover,.navbar.is-dark .navbar-end .navbar-link.is-active,.content kbd.navbar .navbar-end .navbar-link.is-active{background-color:#292929;color:#f5f5f5}.navbar.is-dark .navbar-start .navbar-link::after,.content kbd.navbar .navbar-start .navbar-link::after,.navbar.is-dark .navbar-end .navbar-link::after,.content kbd.navbar .navbar-end .navbar-link::after{border-color:#f5f5f5}.navbar.is-dark .navbar-item.has-dropdown:focus .navbar-link,.content kbd.navbar .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-dark .navbar-item.has-dropdown:hover .navbar-link,.content kbd.navbar .navbar-item.has-dropdown:hover .navbar-link,.navbar.is-dark .navbar-item.has-dropdown.is-active .navbar-link,.content kbd.navbar .navbar-item.has-dropdown.is-active .navbar-link{background-color:#292929;color:#f5f5f5}.navbar.is-dark .navbar-dropdown a.navbar-item.is-active,.content kbd.navbar .navbar-dropdown a.navbar-item.is-active{background-color:#363636;color:#f5f5f5}}.navbar.is-primary,.docstring>section>a.navbar.docs-sourcelink{background-color:#4eb5de;color:#fff}.navbar.is-primary .navbar-brand>.navbar-item,.docstring>section>a.navbar.docs-sourcelink .navbar-brand>.navbar-item,.navbar.is-primary .navbar-brand .navbar-link,.docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link{color:#fff}.navbar.is-primary .navbar-brand>a.navbar-item:focus,.docstring>section>a.navbar.docs-sourcelink .navbar-brand>a.navbar-item:focus,.navbar.is-primary .navbar-brand>a.navbar-item:hover,.docstring>section>a.navbar.docs-sourcelink .navbar-brand>a.navbar-item:hover,.navbar.is-primary .navbar-brand>a.navbar-item.is-active,.docstring>section>a.navbar.docs-sourcelink .navbar-brand>a.navbar-item.is-active,.navbar.is-primary .navbar-brand .navbar-link:focus,.docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link:focus,.navbar.is-primary .navbar-brand .navbar-link:hover,.docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link:hover,.navbar.is-primary .navbar-brand .navbar-link.is-active,.docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link.is-active{background-color:#39acda;color:#fff}.navbar.is-primary .navbar-brand .navbar-link::after,.docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link::after{border-color:#fff}.navbar.is-primary .navbar-burger,.docstring>section>a.navbar.docs-sourcelink .navbar-burger{color:#fff}@media screen and (min-width: 1056px){.navbar.is-primary .navbar-start>.navbar-item,.docstring>section>a.navbar.docs-sourcelink .navbar-start>.navbar-item,.navbar.is-primary .navbar-start .navbar-link,.docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link,.navbar.is-primary .navbar-end>.navbar-item,.docstring>section>a.navbar.docs-sourcelink .navbar-end>.navbar-item,.navbar.is-primary .navbar-end .navbar-link,.docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link{color:#fff}.navbar.is-primary .navbar-start>a.navbar-item:focus,.docstring>section>a.navbar.docs-sourcelink .navbar-start>a.navbar-item:focus,.navbar.is-primary .navbar-start>a.navbar-item:hover,.docstring>section>a.navbar.docs-sourcelink .navbar-start>a.navbar-item:hover,.navbar.is-primary .navbar-start>a.navbar-item.is-active,.docstring>section>a.navbar.docs-sourcelink .navbar-start>a.navbar-item.is-active,.navbar.is-primary .navbar-start .navbar-link:focus,.docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link:focus,.navbar.is-primary .navbar-start .navbar-link:hover,.docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link:hover,.navbar.is-primary .navbar-start .navbar-link.is-active,.docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link.is-active,.navbar.is-primary .navbar-end>a.navbar-item:focus,.docstring>section>a.navbar.docs-sourcelink .navbar-end>a.navbar-item:focus,.navbar.is-primary .navbar-end>a.navbar-item:hover,.docstring>section>a.navbar.docs-sourcelink .navbar-end>a.navbar-item:hover,.navbar.is-primary .navbar-end>a.navbar-item.is-active,.docstring>section>a.navbar.docs-sourcelink .navbar-end>a.navbar-item.is-active,.navbar.is-primary .navbar-end .navbar-link:focus,.docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link:focus,.navbar.is-primary .navbar-end .navbar-link:hover,.docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link:hover,.navbar.is-primary .navbar-end .navbar-link.is-active,.docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link.is-active{background-color:#39acda;color:#fff}.navbar.is-primary .navbar-start .navbar-link::after,.docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link::after,.navbar.is-primary .navbar-end .navbar-link::after,.docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link::after{border-color:#fff}.navbar.is-primary .navbar-item.has-dropdown:focus .navbar-link,.docstring>section>a.navbar.docs-sourcelink .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-primary .navbar-item.has-dropdown:hover .navbar-link,.docstring>section>a.navbar.docs-sourcelink .navbar-item.has-dropdown:hover .navbar-link,.navbar.is-primary .navbar-item.has-dropdown.is-active .navbar-link,.docstring>section>a.navbar.docs-sourcelink .navbar-item.has-dropdown.is-active .navbar-link{background-color:#39acda;color:#fff}.navbar.is-primary .navbar-dropdown a.navbar-item.is-active,.docstring>section>a.navbar.docs-sourcelink .navbar-dropdown a.navbar-item.is-active{background-color:#4eb5de;color:#fff}}.navbar.is-link{background-color:#2e63b8;color:#fff}.navbar.is-link .navbar-brand>.navbar-item,.navbar.is-link .navbar-brand .navbar-link{color:#fff}.navbar.is-link .navbar-brand>a.navbar-item:focus,.navbar.is-link .navbar-brand>a.navbar-item:hover,.navbar.is-link .navbar-brand>a.navbar-item.is-active,.navbar.is-link .navbar-brand .navbar-link:focus,.navbar.is-link .navbar-brand .navbar-link:hover,.navbar.is-link .navbar-brand .navbar-link.is-active{background-color:#2958a4;color:#fff}.navbar.is-link .navbar-brand .navbar-link::after{border-color:#fff}.navbar.is-link .navbar-burger{color:#fff}@media screen and (min-width: 1056px){.navbar.is-link .navbar-start>.navbar-item,.navbar.is-link .navbar-start .navbar-link,.navbar.is-link .navbar-end>.navbar-item,.navbar.is-link .navbar-end .navbar-link{color:#fff}.navbar.is-link .navbar-start>a.navbar-item:focus,.navbar.is-link .navbar-start>a.navbar-item:hover,.navbar.is-link .navbar-start>a.navbar-item.is-active,.navbar.is-link .navbar-start .navbar-link:focus,.navbar.is-link .navbar-start .navbar-link:hover,.navbar.is-link .navbar-start .navbar-link.is-active,.navbar.is-link .navbar-end>a.navbar-item:focus,.navbar.is-link .navbar-end>a.navbar-item:hover,.navbar.is-link .navbar-end>a.navbar-item.is-active,.navbar.is-link .navbar-end .navbar-link:focus,.navbar.is-link .navbar-end .navbar-link:hover,.navbar.is-link .navbar-end .navbar-link.is-active{background-color:#2958a4;color:#fff}.navbar.is-link .navbar-start .navbar-link::after,.navbar.is-link .navbar-end .navbar-link::after{border-color:#fff}.navbar.is-link .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-link .navbar-item.has-dropdown:hover .navbar-link,.navbar.is-link .navbar-item.has-dropdown.is-active .navbar-link{background-color:#2958a4;color:#fff}.navbar.is-link .navbar-dropdown a.navbar-item.is-active{background-color:#2e63b8;color:#fff}}.navbar.is-info{background-color:#209cee;color:#fff}.navbar.is-info .navbar-brand>.navbar-item,.navbar.is-info .navbar-brand .navbar-link{color:#fff}.navbar.is-info .navbar-brand>a.navbar-item:focus,.navbar.is-info .navbar-brand>a.navbar-item:hover,.navbar.is-info .navbar-brand>a.navbar-item.is-active,.navbar.is-info .navbar-brand .navbar-link:focus,.navbar.is-info .navbar-brand .navbar-link:hover,.navbar.is-info .navbar-brand .navbar-link.is-active{background-color:#1190e3;color:#fff}.navbar.is-info .navbar-brand .navbar-link::after{border-color:#fff}.navbar.is-info .navbar-burger{color:#fff}@media screen and (min-width: 1056px){.navbar.is-info .navbar-start>.navbar-item,.navbar.is-info .navbar-start .navbar-link,.navbar.is-info .navbar-end>.navbar-item,.navbar.is-info .navbar-end .navbar-link{color:#fff}.navbar.is-info .navbar-start>a.navbar-item:focus,.navbar.is-info .navbar-start>a.navbar-item:hover,.navbar.is-info .navbar-start>a.navbar-item.is-active,.navbar.is-info .navbar-start .navbar-link:focus,.navbar.is-info .navbar-start .navbar-link:hover,.navbar.is-info .navbar-start .navbar-link.is-active,.navbar.is-info .navbar-end>a.navbar-item:focus,.navbar.is-info .navbar-end>a.navbar-item:hover,.navbar.is-info .navbar-end>a.navbar-item.is-active,.navbar.is-info .navbar-end .navbar-link:focus,.navbar.is-info .navbar-end .navbar-link:hover,.navbar.is-info .navbar-end .navbar-link.is-active{background-color:#1190e3;color:#fff}.navbar.is-info .navbar-start .navbar-link::after,.navbar.is-info .navbar-end .navbar-link::after{border-color:#fff}.navbar.is-info .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-info .navbar-item.has-dropdown:hover .navbar-link,.navbar.is-info .navbar-item.has-dropdown.is-active .navbar-link{background-color:#1190e3;color:#fff}.navbar.is-info .navbar-dropdown a.navbar-item.is-active{background-color:#209cee;color:#fff}}.navbar.is-success{background-color:#22c35b;color:#fff}.navbar.is-success .navbar-brand>.navbar-item,.navbar.is-success .navbar-brand .navbar-link{color:#fff}.navbar.is-success .navbar-brand>a.navbar-item:focus,.navbar.is-success .navbar-brand>a.navbar-item:hover,.navbar.is-success .navbar-brand>a.navbar-item.is-active,.navbar.is-success .navbar-brand .navbar-link:focus,.navbar.is-success .navbar-brand .navbar-link:hover,.navbar.is-success .navbar-brand .navbar-link.is-active{background-color:#1ead51;color:#fff}.navbar.is-success .navbar-brand .navbar-link::after{border-color:#fff}.navbar.is-success .navbar-burger{color:#fff}@media screen and (min-width: 1056px){.navbar.is-success .navbar-start>.navbar-item,.navbar.is-success .navbar-start .navbar-link,.navbar.is-success .navbar-end>.navbar-item,.navbar.is-success .navbar-end .navbar-link{color:#fff}.navbar.is-success .navbar-start>a.navbar-item:focus,.navbar.is-success .navbar-start>a.navbar-item:hover,.navbar.is-success .navbar-start>a.navbar-item.is-active,.navbar.is-success .navbar-start .navbar-link:focus,.navbar.is-success .navbar-start .navbar-link:hover,.navbar.is-success .navbar-start .navbar-link.is-active,.navbar.is-success .navbar-end>a.navbar-item:focus,.navbar.is-success .navbar-end>a.navbar-item:hover,.navbar.is-success .navbar-end>a.navbar-item.is-active,.navbar.is-success .navbar-end .navbar-link:focus,.navbar.is-success .navbar-end .navbar-link:hover,.navbar.is-success .navbar-end .navbar-link.is-active{background-color:#1ead51;color:#fff}.navbar.is-success .navbar-start .navbar-link::after,.navbar.is-success .navbar-end .navbar-link::after{border-color:#fff}.navbar.is-success .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-success .navbar-item.has-dropdown:hover .navbar-link,.navbar.is-success .navbar-item.has-dropdown.is-active .navbar-link{background-color:#1ead51;color:#fff}.navbar.is-success .navbar-dropdown a.navbar-item.is-active{background-color:#22c35b;color:#fff}}.navbar.is-warning{background-color:#ffdd57;color:rgba(0,0,0,0.7)}.navbar.is-warning .navbar-brand>.navbar-item,.navbar.is-warning .navbar-brand .navbar-link{color:rgba(0,0,0,0.7)}.navbar.is-warning .navbar-brand>a.navbar-item:focus,.navbar.is-warning .navbar-brand>a.navbar-item:hover,.navbar.is-warning .navbar-brand>a.navbar-item.is-active,.navbar.is-warning .navbar-brand .navbar-link:focus,.navbar.is-warning .navbar-brand .navbar-link:hover,.navbar.is-warning .navbar-brand .navbar-link.is-active{background-color:#ffd83e;color:rgba(0,0,0,0.7)}.navbar.is-warning .navbar-brand .navbar-link::after{border-color:rgba(0,0,0,0.7)}.navbar.is-warning .navbar-burger{color:rgba(0,0,0,0.7)}@media screen and (min-width: 1056px){.navbar.is-warning .navbar-start>.navbar-item,.navbar.is-warning .navbar-start .navbar-link,.navbar.is-warning .navbar-end>.navbar-item,.navbar.is-warning .navbar-end .navbar-link{color:rgba(0,0,0,0.7)}.navbar.is-warning .navbar-start>a.navbar-item:focus,.navbar.is-warning .navbar-start>a.navbar-item:hover,.navbar.is-warning .navbar-start>a.navbar-item.is-active,.navbar.is-warning .navbar-start .navbar-link:focus,.navbar.is-warning .navbar-start .navbar-link:hover,.navbar.is-warning .navbar-start .navbar-link.is-active,.navbar.is-warning .navbar-end>a.navbar-item:focus,.navbar.is-warning .navbar-end>a.navbar-item:hover,.navbar.is-warning .navbar-end>a.navbar-item.is-active,.navbar.is-warning .navbar-end .navbar-link:focus,.navbar.is-warning .navbar-end .navbar-link:hover,.navbar.is-warning .navbar-end .navbar-link.is-active{background-color:#ffd83e;color:rgba(0,0,0,0.7)}.navbar.is-warning .navbar-start .navbar-link::after,.navbar.is-warning .navbar-end .navbar-link::after{border-color:rgba(0,0,0,0.7)}.navbar.is-warning .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-warning .navbar-item.has-dropdown:hover .navbar-link,.navbar.is-warning .navbar-item.has-dropdown.is-active .navbar-link{background-color:#ffd83e;color:rgba(0,0,0,0.7)}.navbar.is-warning .navbar-dropdown a.navbar-item.is-active{background-color:#ffdd57;color:rgba(0,0,0,0.7)}}.navbar.is-danger{background-color:#da0b00;color:#fff}.navbar.is-danger .navbar-brand>.navbar-item,.navbar.is-danger .navbar-brand .navbar-link{color:#fff}.navbar.is-danger .navbar-brand>a.navbar-item:focus,.navbar.is-danger .navbar-brand>a.navbar-item:hover,.navbar.is-danger .navbar-brand>a.navbar-item.is-active,.navbar.is-danger .navbar-brand .navbar-link:focus,.navbar.is-danger .navbar-brand .navbar-link:hover,.navbar.is-danger .navbar-brand .navbar-link.is-active{background-color:#c10a00;color:#fff}.navbar.is-danger .navbar-brand .navbar-link::after{border-color:#fff}.navbar.is-danger .navbar-burger{color:#fff}@media screen and (min-width: 1056px){.navbar.is-danger .navbar-start>.navbar-item,.navbar.is-danger .navbar-start .navbar-link,.navbar.is-danger .navbar-end>.navbar-item,.navbar.is-danger .navbar-end .navbar-link{color:#fff}.navbar.is-danger .navbar-start>a.navbar-item:focus,.navbar.is-danger .navbar-start>a.navbar-item:hover,.navbar.is-danger .navbar-start>a.navbar-item.is-active,.navbar.is-danger .navbar-start .navbar-link:focus,.navbar.is-danger .navbar-start .navbar-link:hover,.navbar.is-danger .navbar-start .navbar-link.is-active,.navbar.is-danger .navbar-end>a.navbar-item:focus,.navbar.is-danger .navbar-end>a.navbar-item:hover,.navbar.is-danger .navbar-end>a.navbar-item.is-active,.navbar.is-danger .navbar-end .navbar-link:focus,.navbar.is-danger .navbar-end .navbar-link:hover,.navbar.is-danger .navbar-end .navbar-link.is-active{background-color:#c10a00;color:#fff}.navbar.is-danger .navbar-start .navbar-link::after,.navbar.is-danger .navbar-end .navbar-link::after{border-color:#fff}.navbar.is-danger .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-danger .navbar-item.has-dropdown:hover .navbar-link,.navbar.is-danger .navbar-item.has-dropdown.is-active .navbar-link{background-color:#c10a00;color:#fff}.navbar.is-danger .navbar-dropdown a.navbar-item.is-active{background-color:#da0b00;color:#fff}}.navbar>.container{align-items:stretch;display:flex;min-height:3.25rem;width:100%}.navbar.has-shadow{box-shadow:0 2px 0 0 #f5f5f5}.navbar.is-fixed-bottom,.navbar.is-fixed-top{left:0;position:fixed;right:0;z-index:30}.navbar.is-fixed-bottom{bottom:0}.navbar.is-fixed-bottom.has-shadow{box-shadow:0 -2px 0 0 #f5f5f5}.navbar.is-fixed-top{top:0}html.has-navbar-fixed-top,body.has-navbar-fixed-top{padding-top:3.25rem}html.has-navbar-fixed-bottom,body.has-navbar-fixed-bottom{padding-bottom:3.25rem}.navbar-brand,.navbar-tabs{align-items:stretch;display:flex;flex-shrink:0;min-height:3.25rem}.navbar-brand a.navbar-item:focus,.navbar-brand a.navbar-item:hover{background-color:transparent}.navbar-tabs{-webkit-overflow-scrolling:touch;max-width:100vw;overflow-x:auto;overflow-y:hidden}.navbar-burger{color:#4a4a4a;cursor:pointer;display:block;height:3.25rem;position:relative;width:3.25rem;margin-left:auto}.navbar-burger span{background-color:currentColor;display:block;height:1px;left:calc(50% - 8px);position:absolute;transform-origin:center;transition-duration:86ms;transition-property:background-color, opacity, transform;transition-timing-function:ease-out;width:16px}.navbar-burger span:nth-child(1){top:calc(50% - 6px)}.navbar-burger span:nth-child(2){top:calc(50% - 1px)}.navbar-burger span:nth-child(3){top:calc(50% + 4px)}.navbar-burger:hover{background-color:rgba(0,0,0,0.05)}.navbar-burger.is-active span:nth-child(1){transform:translateY(5px) rotate(45deg)}.navbar-burger.is-active span:nth-child(2){opacity:0}.navbar-burger.is-active span:nth-child(3){transform:translateY(-5px) rotate(-45deg)}.navbar-menu{display:none}.navbar-item,.navbar-link{color:#4a4a4a;display:block;line-height:1.5;padding:0.5rem 0.75rem;position:relative}.navbar-item .icon:only-child,.navbar-link .icon:only-child{margin-left:-0.25rem;margin-right:-0.25rem}a.navbar-item,.navbar-link{cursor:pointer}a.navbar-item:focus,a.navbar-item:focus-within,a.navbar-item:hover,a.navbar-item.is-active,.navbar-link:focus,.navbar-link:focus-within,.navbar-link:hover,.navbar-link.is-active{background-color:#fafafa;color:#2e63b8}.navbar-item{display:block;flex-grow:0;flex-shrink:0}.navbar-item img{max-height:1.75rem}.navbar-item.has-dropdown{padding:0}.navbar-item.is-expanded{flex-grow:1;flex-shrink:1}.navbar-item.is-tab{border-bottom:1px solid transparent;min-height:3.25rem;padding-bottom:calc(0.5rem - 1px)}.navbar-item.is-tab:focus,.navbar-item.is-tab:hover{background-color:rgba(0,0,0,0);border-bottom-color:#2e63b8}.navbar-item.is-tab.is-active{background-color:rgba(0,0,0,0);border-bottom-color:#2e63b8;border-bottom-style:solid;border-bottom-width:3px;color:#2e63b8;padding-bottom:calc(0.5rem - 3px)}.navbar-content{flex-grow:1;flex-shrink:1}.navbar-link:not(.is-arrowless){padding-right:2.5em}.navbar-link:not(.is-arrowless)::after{border-color:#2e63b8;margin-top:-0.375em;right:1.125em}.navbar-dropdown{font-size:0.875rem;padding-bottom:0.5rem;padding-top:0.5rem}.navbar-dropdown .navbar-item{padding-left:1.5rem;padding-right:1.5rem}.navbar-divider{background-color:#f5f5f5;border:none;display:none;height:2px;margin:0.5rem 0}@media screen and (max-width: 1055px){.navbar>.container{display:block}.navbar-brand .navbar-item,.navbar-tabs .navbar-item{align-items:center;display:flex}.navbar-link::after{display:none}.navbar-menu{background-color:#fff;box-shadow:0 8px 16px rgba(10,10,10,0.1);padding:0.5rem 0}.navbar-menu.is-active{display:block}.navbar.is-fixed-bottom-touch,.navbar.is-fixed-top-touch{left:0;position:fixed;right:0;z-index:30}.navbar.is-fixed-bottom-touch{bottom:0}.navbar.is-fixed-bottom-touch.has-shadow{box-shadow:0 -2px 3px rgba(10,10,10,0.1)}.navbar.is-fixed-top-touch{top:0}.navbar.is-fixed-top .navbar-menu,.navbar.is-fixed-top-touch .navbar-menu{-webkit-overflow-scrolling:touch;max-height:calc(100vh - 3.25rem);overflow:auto}html.has-navbar-fixed-top-touch,body.has-navbar-fixed-top-touch{padding-top:3.25rem}html.has-navbar-fixed-bottom-touch,body.has-navbar-fixed-bottom-touch{padding-bottom:3.25rem}}@media screen and (min-width: 1056px){.navbar,.navbar-menu,.navbar-start,.navbar-end{align-items:stretch;display:flex}.navbar{min-height:3.25rem}.navbar.is-spaced{padding:1rem 2rem}.navbar.is-spaced .navbar-start,.navbar.is-spaced .navbar-end{align-items:center}.navbar.is-spaced a.navbar-item,.navbar.is-spaced .navbar-link{border-radius:4px}.navbar.is-transparent a.navbar-item:focus,.navbar.is-transparent a.navbar-item:hover,.navbar.is-transparent a.navbar-item.is-active,.navbar.is-transparent .navbar-link:focus,.navbar.is-transparent .navbar-link:hover,.navbar.is-transparent .navbar-link.is-active{background-color:transparent !important}.navbar.is-transparent .navbar-item.has-dropdown.is-active .navbar-link,.navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:focus .navbar-link,.navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:focus-within .navbar-link,.navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:hover .navbar-link{background-color:transparent !important}.navbar.is-transparent .navbar-dropdown a.navbar-item:focus,.navbar.is-transparent .navbar-dropdown a.navbar-item:hover{background-color:#f5f5f5;color:#0a0a0a}.navbar.is-transparent .navbar-dropdown a.navbar-item.is-active{background-color:#f5f5f5;color:#2e63b8}.navbar-burger{display:none}.navbar-item,.navbar-link{align-items:center;display:flex}.navbar-item{display:flex}.navbar-item.has-dropdown{align-items:stretch}.navbar-item.has-dropdown-up .navbar-link::after{transform:rotate(135deg) translate(0.25em, -0.25em)}.navbar-item.has-dropdown-up .navbar-dropdown{border-bottom:2px solid #dbdbdb;border-radius:6px 6px 0 0;border-top:none;bottom:100%;box-shadow:0 -8px 8px rgba(10,10,10,0.1);top:auto}.navbar-item.is-active .navbar-dropdown,.navbar-item.is-hoverable:focus .navbar-dropdown,.navbar-item.is-hoverable:focus-within .navbar-dropdown,.navbar-item.is-hoverable:hover .navbar-dropdown{display:block}.navbar.is-spaced .navbar-item.is-active .navbar-dropdown,.navbar-item.is-active .navbar-dropdown.is-boxed,.navbar.is-spaced .navbar-item.is-hoverable:focus .navbar-dropdown,.navbar-item.is-hoverable:focus .navbar-dropdown.is-boxed,.navbar.is-spaced .navbar-item.is-hoverable:focus-within .navbar-dropdown,.navbar-item.is-hoverable:focus-within .navbar-dropdown.is-boxed,.navbar.is-spaced .navbar-item.is-hoverable:hover .navbar-dropdown,.navbar-item.is-hoverable:hover .navbar-dropdown.is-boxed{opacity:1;pointer-events:auto;transform:translateY(0)}.navbar-menu{flex-grow:1;flex-shrink:0}.navbar-start{justify-content:flex-start;margin-right:auto}.navbar-end{justify-content:flex-end;margin-left:auto}.navbar-dropdown{background-color:#fff;border-bottom-left-radius:6px;border-bottom-right-radius:6px;border-top:2px solid #dbdbdb;box-shadow:0 8px 8px rgba(10,10,10,0.1);display:none;font-size:0.875rem;left:0;min-width:100%;position:absolute;top:100%;z-index:20}.navbar-dropdown .navbar-item{padding:0.375rem 1rem;white-space:nowrap}.navbar-dropdown a.navbar-item{padding-right:3rem}.navbar-dropdown a.navbar-item:focus,.navbar-dropdown a.navbar-item:hover{background-color:#f5f5f5;color:#0a0a0a}.navbar-dropdown a.navbar-item.is-active{background-color:#f5f5f5;color:#2e63b8}.navbar.is-spaced .navbar-dropdown,.navbar-dropdown.is-boxed{border-radius:6px;border-top:none;box-shadow:0 8px 8px rgba(10,10,10,0.1), 0 0 0 1px rgba(10,10,10,0.1);display:block;opacity:0;pointer-events:none;top:calc(100% + (-4px));transform:translateY(-5px);transition-duration:86ms;transition-property:opacity, transform}.navbar-dropdown.is-right{left:auto;right:0}.navbar-divider{display:block}.navbar>.container .navbar-brand,.container>.navbar .navbar-brand{margin-left:-.75rem}.navbar>.container .navbar-menu,.container>.navbar .navbar-menu{margin-right:-.75rem}.navbar.is-fixed-bottom-desktop,.navbar.is-fixed-top-desktop{left:0;position:fixed;right:0;z-index:30}.navbar.is-fixed-bottom-desktop{bottom:0}.navbar.is-fixed-bottom-desktop.has-shadow{box-shadow:0 -2px 3px rgba(10,10,10,0.1)}.navbar.is-fixed-top-desktop{top:0}html.has-navbar-fixed-top-desktop,body.has-navbar-fixed-top-desktop{padding-top:3.25rem}html.has-navbar-fixed-bottom-desktop,body.has-navbar-fixed-bottom-desktop{padding-bottom:3.25rem}html.has-spaced-navbar-fixed-top,body.has-spaced-navbar-fixed-top{padding-top:5.25rem}html.has-spaced-navbar-fixed-bottom,body.has-spaced-navbar-fixed-bottom{padding-bottom:5.25rem}a.navbar-item.is-active,.navbar-link.is-active{color:#0a0a0a}a.navbar-item.is-active:not(:focus):not(:hover),.navbar-link.is-active:not(:focus):not(:hover){background-color:rgba(0,0,0,0)}.navbar-item.has-dropdown:focus .navbar-link,.navbar-item.has-dropdown:hover .navbar-link,.navbar-item.has-dropdown.is-active .navbar-link{background-color:#fafafa}}.hero.is-fullheight-with-navbar{min-height:calc(100vh - 3.25rem)}.pagination{font-size:1rem;margin:-.25rem}.pagination.is-small,#documenter .docs-sidebar form.docs-search>input.pagination{font-size:.75rem}.pagination.is-medium{font-size:1.25rem}.pagination.is-large{font-size:1.5rem}.pagination.is-rounded .pagination-previous,#documenter .docs-sidebar form.docs-search>input.pagination .pagination-previous,.pagination.is-rounded .pagination-next,#documenter .docs-sidebar form.docs-search>input.pagination .pagination-next{padding-left:1em;padding-right:1em;border-radius:290486px}.pagination.is-rounded .pagination-link,#documenter .docs-sidebar form.docs-search>input.pagination .pagination-link{border-radius:290486px}.pagination,.pagination-list{align-items:center;display:flex;justify-content:center;text-align:center}.pagination-previous,.pagination-next,.pagination-link,.pagination-ellipsis{font-size:1em;justify-content:center;margin:.25rem;padding-left:.5em;padding-right:.5em;text-align:center}.pagination-previous,.pagination-next,.pagination-link{border-color:#dbdbdb;color:#363636;min-width:2.25em}.pagination-previous:hover,.pagination-next:hover,.pagination-link:hover{border-color:#b5b5b5;color:#363636}.pagination-previous:focus,.pagination-next:focus,.pagination-link:focus{border-color:#3c5dcd}.pagination-previous:active,.pagination-next:active,.pagination-link:active{box-shadow:inset 0 1px 2px rgba(10,10,10,0.2)}.pagination-previous[disabled],.pagination-next[disabled],.pagination-link[disabled]{background-color:#dbdbdb;border-color:#dbdbdb;box-shadow:none;color:#6b6b6b;opacity:0.5}.pagination-previous,.pagination-next{padding-left:0.75em;padding-right:0.75em;white-space:nowrap}.pagination-link.is-current{background-color:#2e63b8;border-color:#2e63b8;color:#fff}.pagination-ellipsis{color:#b5b5b5;pointer-events:none}.pagination-list{flex-wrap:wrap}@media screen and (max-width: 768px){.pagination{flex-wrap:wrap}.pagination-previous,.pagination-next{flex-grow:1;flex-shrink:1}.pagination-list li{flex-grow:1;flex-shrink:1}}@media screen and (min-width: 769px),print{.pagination-list{flex-grow:1;flex-shrink:1;justify-content:flex-start;order:1}.pagination-previous{order:2}.pagination-next{order:3}.pagination{justify-content:space-between}.pagination.is-centered .pagination-previous{order:1}.pagination.is-centered .pagination-list{justify-content:center;order:2}.pagination.is-centered .pagination-next{order:3}.pagination.is-right .pagination-previous{order:1}.pagination.is-right .pagination-next{order:2}.pagination.is-right .pagination-list{justify-content:flex-end;order:3}}.panel{font-size:1rem}.panel:not(:last-child){margin-bottom:1.5rem}.panel-heading,.panel-tabs,.panel-block{border-bottom:1px solid #dbdbdb;border-left:1px solid #dbdbdb;border-right:1px solid #dbdbdb}.panel-heading:first-child,.panel-tabs:first-child,.panel-block:first-child{border-top:1px solid #dbdbdb}.panel-heading{background-color:#f5f5f5;border-radius:4px 4px 0 0;color:#222;font-size:1.25em;font-weight:300;line-height:1.25;padding:0.5em 0.75em}.panel-tabs{align-items:flex-end;display:flex;font-size:.875em;justify-content:center}.panel-tabs a{border-bottom:1px solid #dbdbdb;margin-bottom:-1px;padding:0.5em}.panel-tabs a.is-active{border-bottom-color:#4a4a4a;color:#363636}.panel-list a{color:#222}.panel-list a:hover{color:#2e63b8}.panel-block{align-items:center;color:#222;display:flex;justify-content:flex-start;padding:0.5em 0.75em}.panel-block input[type="checkbox"]{margin-right:0.75em}.panel-block>.control{flex-grow:1;flex-shrink:1;width:100%}.panel-block.is-wrapped{flex-wrap:wrap}.panel-block.is-active{border-left-color:#2e63b8;color:#363636}.panel-block.is-active .panel-icon{color:#2e63b8}a.panel-block,label.panel-block{cursor:pointer}a.panel-block:hover,label.panel-block:hover{background-color:#f5f5f5}.panel-icon{display:inline-block;font-size:14px;height:1em;line-height:1em;text-align:center;vertical-align:top;width:1em;color:#6b6b6b;margin-right:0.75em}.panel-icon .fa{font-size:inherit;line-height:inherit}.tabs{-webkit-overflow-scrolling:touch;align-items:stretch;display:flex;font-size:1rem;justify-content:space-between;overflow:hidden;overflow-x:auto;white-space:nowrap}.tabs a{align-items:center;border-bottom-color:#dbdbdb;border-bottom-style:solid;border-bottom-width:1px;color:#222;display:flex;justify-content:center;margin-bottom:-1px;padding:0.5em 1em;vertical-align:top}.tabs a:hover{border-bottom-color:#222;color:#222}.tabs li{display:block}.tabs li.is-active a{border-bottom-color:#2e63b8;color:#2e63b8}.tabs ul{align-items:center;border-bottom-color:#dbdbdb;border-bottom-style:solid;border-bottom-width:1px;display:flex;flex-grow:1;flex-shrink:0;justify-content:flex-start}.tabs ul.is-left{padding-right:0.75em}.tabs ul.is-center{flex:none;justify-content:center;padding-left:0.75em;padding-right:0.75em}.tabs ul.is-right{justify-content:flex-end;padding-left:0.75em}.tabs .icon:first-child{margin-right:0.5em}.tabs .icon:last-child{margin-left:0.5em}.tabs.is-centered ul{justify-content:center}.tabs.is-right ul{justify-content:flex-end}.tabs.is-boxed a{border:1px solid transparent;border-radius:4px 4px 0 0}.tabs.is-boxed a:hover{background-color:#f5f5f5;border-bottom-color:#dbdbdb}.tabs.is-boxed li.is-active a{background-color:#fff;border-color:#dbdbdb;border-bottom-color:rgba(0,0,0,0) !important}.tabs.is-fullwidth li{flex-grow:1;flex-shrink:0}.tabs.is-toggle a{border-color:#dbdbdb;border-style:solid;border-width:1px;margin-bottom:0;position:relative}.tabs.is-toggle a:hover{background-color:#f5f5f5;border-color:#b5b5b5;z-index:2}.tabs.is-toggle li+li{margin-left:-1px}.tabs.is-toggle li:first-child a{border-radius:4px 0 0 4px}.tabs.is-toggle li:last-child a{border-radius:0 4px 4px 0}.tabs.is-toggle li.is-active a{background-color:#2e63b8;border-color:#2e63b8;color:#fff;z-index:1}.tabs.is-toggle ul{border-bottom:none}.tabs.is-toggle.is-toggle-rounded li:first-child a{border-bottom-left-radius:290486px;border-top-left-radius:290486px;padding-left:1.25em}.tabs.is-toggle.is-toggle-rounded li:last-child a{border-bottom-right-radius:290486px;border-top-right-radius:290486px;padding-right:1.25em}.tabs.is-small,#documenter .docs-sidebar form.docs-search>input.tabs{font-size:.75rem}.tabs.is-medium{font-size:1.25rem}.tabs.is-large{font-size:1.5rem}.column{display:block;flex-basis:0;flex-grow:1;flex-shrink:1;padding:.75rem}.columns.is-mobile>.column.is-narrow{flex:none}.columns.is-mobile>.column.is-full{flex:none;width:100%}.columns.is-mobile>.column.is-three-quarters{flex:none;width:75%}.columns.is-mobile>.column.is-two-thirds{flex:none;width:66.6666%}.columns.is-mobile>.column.is-half{flex:none;width:50%}.columns.is-mobile>.column.is-one-third{flex:none;width:33.3333%}.columns.is-mobile>.column.is-one-quarter{flex:none;width:25%}.columns.is-mobile>.column.is-one-fifth{flex:none;width:20%}.columns.is-mobile>.column.is-two-fifths{flex:none;width:40%}.columns.is-mobile>.column.is-three-fifths{flex:none;width:60%}.columns.is-mobile>.column.is-four-fifths{flex:none;width:80%}.columns.is-mobile>.column.is-offset-three-quarters{margin-left:75%}.columns.is-mobile>.column.is-offset-two-thirds{margin-left:66.6666%}.columns.is-mobile>.column.is-offset-half{margin-left:50%}.columns.is-mobile>.column.is-offset-one-third{margin-left:33.3333%}.columns.is-mobile>.column.is-offset-one-quarter{margin-left:25%}.columns.is-mobile>.column.is-offset-one-fifth{margin-left:20%}.columns.is-mobile>.column.is-offset-two-fifths{margin-left:40%}.columns.is-mobile>.column.is-offset-three-fifths{margin-left:60%}.columns.is-mobile>.column.is-offset-four-fifths{margin-left:80%}.columns.is-mobile>.column.is-0{flex:none;width:0%}.columns.is-mobile>.column.is-offset-0{margin-left:0%}.columns.is-mobile>.column.is-1{flex:none;width:8.3333333333%}.columns.is-mobile>.column.is-offset-1{margin-left:8.3333333333%}.columns.is-mobile>.column.is-2{flex:none;width:16.6666666667%}.columns.is-mobile>.column.is-offset-2{margin-left:16.6666666667%}.columns.is-mobile>.column.is-3{flex:none;width:25%}.columns.is-mobile>.column.is-offset-3{margin-left:25%}.columns.is-mobile>.column.is-4{flex:none;width:33.3333333333%}.columns.is-mobile>.column.is-offset-4{margin-left:33.3333333333%}.columns.is-mobile>.column.is-5{flex:none;width:41.6666666667%}.columns.is-mobile>.column.is-offset-5{margin-left:41.6666666667%}.columns.is-mobile>.column.is-6{flex:none;width:50%}.columns.is-mobile>.column.is-offset-6{margin-left:50%}.columns.is-mobile>.column.is-7{flex:none;width:58.3333333333%}.columns.is-mobile>.column.is-offset-7{margin-left:58.3333333333%}.columns.is-mobile>.column.is-8{flex:none;width:66.6666666667%}.columns.is-mobile>.column.is-offset-8{margin-left:66.6666666667%}.columns.is-mobile>.column.is-9{flex:none;width:75%}.columns.is-mobile>.column.is-offset-9{margin-left:75%}.columns.is-mobile>.column.is-10{flex:none;width:83.3333333333%}.columns.is-mobile>.column.is-offset-10{margin-left:83.3333333333%}.columns.is-mobile>.column.is-11{flex:none;width:91.6666666667%}.columns.is-mobile>.column.is-offset-11{margin-left:91.6666666667%}.columns.is-mobile>.column.is-12{flex:none;width:100%}.columns.is-mobile>.column.is-offset-12{margin-left:100%}@media screen and (max-width: 768px){.column.is-narrow-mobile{flex:none}.column.is-full-mobile{flex:none;width:100%}.column.is-three-quarters-mobile{flex:none;width:75%}.column.is-two-thirds-mobile{flex:none;width:66.6666%}.column.is-half-mobile{flex:none;width:50%}.column.is-one-third-mobile{flex:none;width:33.3333%}.column.is-one-quarter-mobile{flex:none;width:25%}.column.is-one-fifth-mobile{flex:none;width:20%}.column.is-two-fifths-mobile{flex:none;width:40%}.column.is-three-fifths-mobile{flex:none;width:60%}.column.is-four-fifths-mobile{flex:none;width:80%}.column.is-offset-three-quarters-mobile{margin-left:75%}.column.is-offset-two-thirds-mobile{margin-left:66.6666%}.column.is-offset-half-mobile{margin-left:50%}.column.is-offset-one-third-mobile{margin-left:33.3333%}.column.is-offset-one-quarter-mobile{margin-left:25%}.column.is-offset-one-fifth-mobile{margin-left:20%}.column.is-offset-two-fifths-mobile{margin-left:40%}.column.is-offset-three-fifths-mobile{margin-left:60%}.column.is-offset-four-fifths-mobile{margin-left:80%}.column.is-0-mobile{flex:none;width:0%}.column.is-offset-0-mobile{margin-left:0%}.column.is-1-mobile{flex:none;width:8.3333333333%}.column.is-offset-1-mobile{margin-left:8.3333333333%}.column.is-2-mobile{flex:none;width:16.6666666667%}.column.is-offset-2-mobile{margin-left:16.6666666667%}.column.is-3-mobile{flex:none;width:25%}.column.is-offset-3-mobile{margin-left:25%}.column.is-4-mobile{flex:none;width:33.3333333333%}.column.is-offset-4-mobile{margin-left:33.3333333333%}.column.is-5-mobile{flex:none;width:41.6666666667%}.column.is-offset-5-mobile{margin-left:41.6666666667%}.column.is-6-mobile{flex:none;width:50%}.column.is-offset-6-mobile{margin-left:50%}.column.is-7-mobile{flex:none;width:58.3333333333%}.column.is-offset-7-mobile{margin-left:58.3333333333%}.column.is-8-mobile{flex:none;width:66.6666666667%}.column.is-offset-8-mobile{margin-left:66.6666666667%}.column.is-9-mobile{flex:none;width:75%}.column.is-offset-9-mobile{margin-left:75%}.column.is-10-mobile{flex:none;width:83.3333333333%}.column.is-offset-10-mobile{margin-left:83.3333333333%}.column.is-11-mobile{flex:none;width:91.6666666667%}.column.is-offset-11-mobile{margin-left:91.6666666667%}.column.is-12-mobile{flex:none;width:100%}.column.is-offset-12-mobile{margin-left:100%}}@media screen and (min-width: 769px),print{.column.is-narrow,.column.is-narrow-tablet{flex:none}.column.is-full,.column.is-full-tablet{flex:none;width:100%}.column.is-three-quarters,.column.is-three-quarters-tablet{flex:none;width:75%}.column.is-two-thirds,.column.is-two-thirds-tablet{flex:none;width:66.6666%}.column.is-half,.column.is-half-tablet{flex:none;width:50%}.column.is-one-third,.column.is-one-third-tablet{flex:none;width:33.3333%}.column.is-one-quarter,.column.is-one-quarter-tablet{flex:none;width:25%}.column.is-one-fifth,.column.is-one-fifth-tablet{flex:none;width:20%}.column.is-two-fifths,.column.is-two-fifths-tablet{flex:none;width:40%}.column.is-three-fifths,.column.is-three-fifths-tablet{flex:none;width:60%}.column.is-four-fifths,.column.is-four-fifths-tablet{flex:none;width:80%}.column.is-offset-three-quarters,.column.is-offset-three-quarters-tablet{margin-left:75%}.column.is-offset-two-thirds,.column.is-offset-two-thirds-tablet{margin-left:66.6666%}.column.is-offset-half,.column.is-offset-half-tablet{margin-left:50%}.column.is-offset-one-third,.column.is-offset-one-third-tablet{margin-left:33.3333%}.column.is-offset-one-quarter,.column.is-offset-one-quarter-tablet{margin-left:25%}.column.is-offset-one-fifth,.column.is-offset-one-fifth-tablet{margin-left:20%}.column.is-offset-two-fifths,.column.is-offset-two-fifths-tablet{margin-left:40%}.column.is-offset-three-fifths,.column.is-offset-three-fifths-tablet{margin-left:60%}.column.is-offset-four-fifths,.column.is-offset-four-fifths-tablet{margin-left:80%}.column.is-0,.column.is-0-tablet{flex:none;width:0%}.column.is-offset-0,.column.is-offset-0-tablet{margin-left:0%}.column.is-1,.column.is-1-tablet{flex:none;width:8.3333333333%}.column.is-offset-1,.column.is-offset-1-tablet{margin-left:8.3333333333%}.column.is-2,.column.is-2-tablet{flex:none;width:16.6666666667%}.column.is-offset-2,.column.is-offset-2-tablet{margin-left:16.6666666667%}.column.is-3,.column.is-3-tablet{flex:none;width:25%}.column.is-offset-3,.column.is-offset-3-tablet{margin-left:25%}.column.is-4,.column.is-4-tablet{flex:none;width:33.3333333333%}.column.is-offset-4,.column.is-offset-4-tablet{margin-left:33.3333333333%}.column.is-5,.column.is-5-tablet{flex:none;width:41.6666666667%}.column.is-offset-5,.column.is-offset-5-tablet{margin-left:41.6666666667%}.column.is-6,.column.is-6-tablet{flex:none;width:50%}.column.is-offset-6,.column.is-offset-6-tablet{margin-left:50%}.column.is-7,.column.is-7-tablet{flex:none;width:58.3333333333%}.column.is-offset-7,.column.is-offset-7-tablet{margin-left:58.3333333333%}.column.is-8,.column.is-8-tablet{flex:none;width:66.6666666667%}.column.is-offset-8,.column.is-offset-8-tablet{margin-left:66.6666666667%}.column.is-9,.column.is-9-tablet{flex:none;width:75%}.column.is-offset-9,.column.is-offset-9-tablet{margin-left:75%}.column.is-10,.column.is-10-tablet{flex:none;width:83.3333333333%}.column.is-offset-10,.column.is-offset-10-tablet{margin-left:83.3333333333%}.column.is-11,.column.is-11-tablet{flex:none;width:91.6666666667%}.column.is-offset-11,.column.is-offset-11-tablet{margin-left:91.6666666667%}.column.is-12,.column.is-12-tablet{flex:none;width:100%}.column.is-offset-12,.column.is-offset-12-tablet{margin-left:100%}}@media screen and (max-width: 1055px){.column.is-narrow-touch{flex:none}.column.is-full-touch{flex:none;width:100%}.column.is-three-quarters-touch{flex:none;width:75%}.column.is-two-thirds-touch{flex:none;width:66.6666%}.column.is-half-touch{flex:none;width:50%}.column.is-one-third-touch{flex:none;width:33.3333%}.column.is-one-quarter-touch{flex:none;width:25%}.column.is-one-fifth-touch{flex:none;width:20%}.column.is-two-fifths-touch{flex:none;width:40%}.column.is-three-fifths-touch{flex:none;width:60%}.column.is-four-fifths-touch{flex:none;width:80%}.column.is-offset-three-quarters-touch{margin-left:75%}.column.is-offset-two-thirds-touch{margin-left:66.6666%}.column.is-offset-half-touch{margin-left:50%}.column.is-offset-one-third-touch{margin-left:33.3333%}.column.is-offset-one-quarter-touch{margin-left:25%}.column.is-offset-one-fifth-touch{margin-left:20%}.column.is-offset-two-fifths-touch{margin-left:40%}.column.is-offset-three-fifths-touch{margin-left:60%}.column.is-offset-four-fifths-touch{margin-left:80%}.column.is-0-touch{flex:none;width:0%}.column.is-offset-0-touch{margin-left:0%}.column.is-1-touch{flex:none;width:8.3333333333%}.column.is-offset-1-touch{margin-left:8.3333333333%}.column.is-2-touch{flex:none;width:16.6666666667%}.column.is-offset-2-touch{margin-left:16.6666666667%}.column.is-3-touch{flex:none;width:25%}.column.is-offset-3-touch{margin-left:25%}.column.is-4-touch{flex:none;width:33.3333333333%}.column.is-offset-4-touch{margin-left:33.3333333333%}.column.is-5-touch{flex:none;width:41.6666666667%}.column.is-offset-5-touch{margin-left:41.6666666667%}.column.is-6-touch{flex:none;width:50%}.column.is-offset-6-touch{margin-left:50%}.column.is-7-touch{flex:none;width:58.3333333333%}.column.is-offset-7-touch{margin-left:58.3333333333%}.column.is-8-touch{flex:none;width:66.6666666667%}.column.is-offset-8-touch{margin-left:66.6666666667%}.column.is-9-touch{flex:none;width:75%}.column.is-offset-9-touch{margin-left:75%}.column.is-10-touch{flex:none;width:83.3333333333%}.column.is-offset-10-touch{margin-left:83.3333333333%}.column.is-11-touch{flex:none;width:91.6666666667%}.column.is-offset-11-touch{margin-left:91.6666666667%}.column.is-12-touch{flex:none;width:100%}.column.is-offset-12-touch{margin-left:100%}}@media screen and (min-width: 1056px){.column.is-narrow-desktop{flex:none}.column.is-full-desktop{flex:none;width:100%}.column.is-three-quarters-desktop{flex:none;width:75%}.column.is-two-thirds-desktop{flex:none;width:66.6666%}.column.is-half-desktop{flex:none;width:50%}.column.is-one-third-desktop{flex:none;width:33.3333%}.column.is-one-quarter-desktop{flex:none;width:25%}.column.is-one-fifth-desktop{flex:none;width:20%}.column.is-two-fifths-desktop{flex:none;width:40%}.column.is-three-fifths-desktop{flex:none;width:60%}.column.is-four-fifths-desktop{flex:none;width:80%}.column.is-offset-three-quarters-desktop{margin-left:75%}.column.is-offset-two-thirds-desktop{margin-left:66.6666%}.column.is-offset-half-desktop{margin-left:50%}.column.is-offset-one-third-desktop{margin-left:33.3333%}.column.is-offset-one-quarter-desktop{margin-left:25%}.column.is-offset-one-fifth-desktop{margin-left:20%}.column.is-offset-two-fifths-desktop{margin-left:40%}.column.is-offset-three-fifths-desktop{margin-left:60%}.column.is-offset-four-fifths-desktop{margin-left:80%}.column.is-0-desktop{flex:none;width:0%}.column.is-offset-0-desktop{margin-left:0%}.column.is-1-desktop{flex:none;width:8.3333333333%}.column.is-offset-1-desktop{margin-left:8.3333333333%}.column.is-2-desktop{flex:none;width:16.6666666667%}.column.is-offset-2-desktop{margin-left:16.6666666667%}.column.is-3-desktop{flex:none;width:25%}.column.is-offset-3-desktop{margin-left:25%}.column.is-4-desktop{flex:none;width:33.3333333333%}.column.is-offset-4-desktop{margin-left:33.3333333333%}.column.is-5-desktop{flex:none;width:41.6666666667%}.column.is-offset-5-desktop{margin-left:41.6666666667%}.column.is-6-desktop{flex:none;width:50%}.column.is-offset-6-desktop{margin-left:50%}.column.is-7-desktop{flex:none;width:58.3333333333%}.column.is-offset-7-desktop{margin-left:58.3333333333%}.column.is-8-desktop{flex:none;width:66.6666666667%}.column.is-offset-8-desktop{margin-left:66.6666666667%}.column.is-9-desktop{flex:none;width:75%}.column.is-offset-9-desktop{margin-left:75%}.column.is-10-desktop{flex:none;width:83.3333333333%}.column.is-offset-10-desktop{margin-left:83.3333333333%}.column.is-11-desktop{flex:none;width:91.6666666667%}.column.is-offset-11-desktop{margin-left:91.6666666667%}.column.is-12-desktop{flex:none;width:100%}.column.is-offset-12-desktop{margin-left:100%}}@media screen and (min-width: 1216px){.column.is-narrow-widescreen{flex:none}.column.is-full-widescreen{flex:none;width:100%}.column.is-three-quarters-widescreen{flex:none;width:75%}.column.is-two-thirds-widescreen{flex:none;width:66.6666%}.column.is-half-widescreen{flex:none;width:50%}.column.is-one-third-widescreen{flex:none;width:33.3333%}.column.is-one-quarter-widescreen{flex:none;width:25%}.column.is-one-fifth-widescreen{flex:none;width:20%}.column.is-two-fifths-widescreen{flex:none;width:40%}.column.is-three-fifths-widescreen{flex:none;width:60%}.column.is-four-fifths-widescreen{flex:none;width:80%}.column.is-offset-three-quarters-widescreen{margin-left:75%}.column.is-offset-two-thirds-widescreen{margin-left:66.6666%}.column.is-offset-half-widescreen{margin-left:50%}.column.is-offset-one-third-widescreen{margin-left:33.3333%}.column.is-offset-one-quarter-widescreen{margin-left:25%}.column.is-offset-one-fifth-widescreen{margin-left:20%}.column.is-offset-two-fifths-widescreen{margin-left:40%}.column.is-offset-three-fifths-widescreen{margin-left:60%}.column.is-offset-four-fifths-widescreen{margin-left:80%}.column.is-0-widescreen{flex:none;width:0%}.column.is-offset-0-widescreen{margin-left:0%}.column.is-1-widescreen{flex:none;width:8.3333333333%}.column.is-offset-1-widescreen{margin-left:8.3333333333%}.column.is-2-widescreen{flex:none;width:16.6666666667%}.column.is-offset-2-widescreen{margin-left:16.6666666667%}.column.is-3-widescreen{flex:none;width:25%}.column.is-offset-3-widescreen{margin-left:25%}.column.is-4-widescreen{flex:none;width:33.3333333333%}.column.is-offset-4-widescreen{margin-left:33.3333333333%}.column.is-5-widescreen{flex:none;width:41.6666666667%}.column.is-offset-5-widescreen{margin-left:41.6666666667%}.column.is-6-widescreen{flex:none;width:50%}.column.is-offset-6-widescreen{margin-left:50%}.column.is-7-widescreen{flex:none;width:58.3333333333%}.column.is-offset-7-widescreen{margin-left:58.3333333333%}.column.is-8-widescreen{flex:none;width:66.6666666667%}.column.is-offset-8-widescreen{margin-left:66.6666666667%}.column.is-9-widescreen{flex:none;width:75%}.column.is-offset-9-widescreen{margin-left:75%}.column.is-10-widescreen{flex:none;width:83.3333333333%}.column.is-offset-10-widescreen{margin-left:83.3333333333%}.column.is-11-widescreen{flex:none;width:91.6666666667%}.column.is-offset-11-widescreen{margin-left:91.6666666667%}.column.is-12-widescreen{flex:none;width:100%}.column.is-offset-12-widescreen{margin-left:100%}}@media screen and (min-width: 1408px){.column.is-narrow-fullhd{flex:none}.column.is-full-fullhd{flex:none;width:100%}.column.is-three-quarters-fullhd{flex:none;width:75%}.column.is-two-thirds-fullhd{flex:none;width:66.6666%}.column.is-half-fullhd{flex:none;width:50%}.column.is-one-third-fullhd{flex:none;width:33.3333%}.column.is-one-quarter-fullhd{flex:none;width:25%}.column.is-one-fifth-fullhd{flex:none;width:20%}.column.is-two-fifths-fullhd{flex:none;width:40%}.column.is-three-fifths-fullhd{flex:none;width:60%}.column.is-four-fifths-fullhd{flex:none;width:80%}.column.is-offset-three-quarters-fullhd{margin-left:75%}.column.is-offset-two-thirds-fullhd{margin-left:66.6666%}.column.is-offset-half-fullhd{margin-left:50%}.column.is-offset-one-third-fullhd{margin-left:33.3333%}.column.is-offset-one-quarter-fullhd{margin-left:25%}.column.is-offset-one-fifth-fullhd{margin-left:20%}.column.is-offset-two-fifths-fullhd{margin-left:40%}.column.is-offset-three-fifths-fullhd{margin-left:60%}.column.is-offset-four-fifths-fullhd{margin-left:80%}.column.is-0-fullhd{flex:none;width:0%}.column.is-offset-0-fullhd{margin-left:0%}.column.is-1-fullhd{flex:none;width:8.3333333333%}.column.is-offset-1-fullhd{margin-left:8.3333333333%}.column.is-2-fullhd{flex:none;width:16.6666666667%}.column.is-offset-2-fullhd{margin-left:16.6666666667%}.column.is-3-fullhd{flex:none;width:25%}.column.is-offset-3-fullhd{margin-left:25%}.column.is-4-fullhd{flex:none;width:33.3333333333%}.column.is-offset-4-fullhd{margin-left:33.3333333333%}.column.is-5-fullhd{flex:none;width:41.6666666667%}.column.is-offset-5-fullhd{margin-left:41.6666666667%}.column.is-6-fullhd{flex:none;width:50%}.column.is-offset-6-fullhd{margin-left:50%}.column.is-7-fullhd{flex:none;width:58.3333333333%}.column.is-offset-7-fullhd{margin-left:58.3333333333%}.column.is-8-fullhd{flex:none;width:66.6666666667%}.column.is-offset-8-fullhd{margin-left:66.6666666667%}.column.is-9-fullhd{flex:none;width:75%}.column.is-offset-9-fullhd{margin-left:75%}.column.is-10-fullhd{flex:none;width:83.3333333333%}.column.is-offset-10-fullhd{margin-left:83.3333333333%}.column.is-11-fullhd{flex:none;width:91.6666666667%}.column.is-offset-11-fullhd{margin-left:91.6666666667%}.column.is-12-fullhd{flex:none;width:100%}.column.is-offset-12-fullhd{margin-left:100%}}.columns{margin-left:-.75rem;margin-right:-.75rem;margin-top:-.75rem}.columns:last-child{margin-bottom:-.75rem}.columns:not(:last-child){margin-bottom:calc(1.5rem - .75rem)}.columns.is-centered{justify-content:center}.columns.is-gapless{margin-left:0;margin-right:0;margin-top:0}.columns.is-gapless>.column{margin:0;padding:0 !important}.columns.is-gapless:not(:last-child){margin-bottom:1.5rem}.columns.is-gapless:last-child{margin-bottom:0}.columns.is-mobile{display:flex}.columns.is-multiline{flex-wrap:wrap}.columns.is-vcentered{align-items:center}@media screen and (min-width: 769px),print{.columns:not(.is-desktop){display:flex}}@media screen and (min-width: 1056px){.columns.is-desktop{display:flex}}.columns.is-variable{--columnGap: 0.75rem;margin-left:calc(-1 * var(--columnGap));margin-right:calc(-1 * var(--columnGap))}.columns.is-variable .column{padding-left:var(--columnGap);padding-right:var(--columnGap)}.columns.is-variable.is-0{--columnGap: 0rem}@media screen and (max-width: 768px){.columns.is-variable.is-0-mobile{--columnGap: 0rem}}@media screen and (min-width: 769px),print{.columns.is-variable.is-0-tablet{--columnGap: 0rem}}@media screen and (min-width: 769px) and (max-width: 1055px){.columns.is-variable.is-0-tablet-only{--columnGap: 0rem}}@media screen and (max-width: 1055px){.columns.is-variable.is-0-touch{--columnGap: 0rem}}@media screen and (min-width: 1056px){.columns.is-variable.is-0-desktop{--columnGap: 0rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){.columns.is-variable.is-0-desktop-only{--columnGap: 0rem}}@media screen and (min-width: 1216px){.columns.is-variable.is-0-widescreen{--columnGap: 0rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){.columns.is-variable.is-0-widescreen-only{--columnGap: 0rem}}@media screen and (min-width: 1408px){.columns.is-variable.is-0-fullhd{--columnGap: 0rem}}.columns.is-variable.is-1{--columnGap: .25rem}@media screen and (max-width: 768px){.columns.is-variable.is-1-mobile{--columnGap: .25rem}}@media screen and (min-width: 769px),print{.columns.is-variable.is-1-tablet{--columnGap: .25rem}}@media screen and (min-width: 769px) and (max-width: 1055px){.columns.is-variable.is-1-tablet-only{--columnGap: .25rem}}@media screen and (max-width: 1055px){.columns.is-variable.is-1-touch{--columnGap: .25rem}}@media screen and (min-width: 1056px){.columns.is-variable.is-1-desktop{--columnGap: .25rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){.columns.is-variable.is-1-desktop-only{--columnGap: .25rem}}@media screen and (min-width: 1216px){.columns.is-variable.is-1-widescreen{--columnGap: .25rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){.columns.is-variable.is-1-widescreen-only{--columnGap: .25rem}}@media screen and (min-width: 1408px){.columns.is-variable.is-1-fullhd{--columnGap: .25rem}}.columns.is-variable.is-2{--columnGap: .5rem}@media screen and (max-width: 768px){.columns.is-variable.is-2-mobile{--columnGap: .5rem}}@media screen and (min-width: 769px),print{.columns.is-variable.is-2-tablet{--columnGap: .5rem}}@media screen and (min-width: 769px) and (max-width: 1055px){.columns.is-variable.is-2-tablet-only{--columnGap: .5rem}}@media screen and (max-width: 1055px){.columns.is-variable.is-2-touch{--columnGap: .5rem}}@media screen and (min-width: 1056px){.columns.is-variable.is-2-desktop{--columnGap: .5rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){.columns.is-variable.is-2-desktop-only{--columnGap: .5rem}}@media screen and (min-width: 1216px){.columns.is-variable.is-2-widescreen{--columnGap: .5rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){.columns.is-variable.is-2-widescreen-only{--columnGap: .5rem}}@media screen and (min-width: 1408px){.columns.is-variable.is-2-fullhd{--columnGap: .5rem}}.columns.is-variable.is-3{--columnGap: .75rem}@media screen and (max-width: 768px){.columns.is-variable.is-3-mobile{--columnGap: .75rem}}@media screen and (min-width: 769px),print{.columns.is-variable.is-3-tablet{--columnGap: .75rem}}@media screen and (min-width: 769px) and (max-width: 1055px){.columns.is-variable.is-3-tablet-only{--columnGap: .75rem}}@media screen and (max-width: 1055px){.columns.is-variable.is-3-touch{--columnGap: .75rem}}@media screen and (min-width: 1056px){.columns.is-variable.is-3-desktop{--columnGap: .75rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){.columns.is-variable.is-3-desktop-only{--columnGap: .75rem}}@media screen and (min-width: 1216px){.columns.is-variable.is-3-widescreen{--columnGap: .75rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){.columns.is-variable.is-3-widescreen-only{--columnGap: .75rem}}@media screen and (min-width: 1408px){.columns.is-variable.is-3-fullhd{--columnGap: .75rem}}.columns.is-variable.is-4{--columnGap: 1rem}@media screen and (max-width: 768px){.columns.is-variable.is-4-mobile{--columnGap: 1rem}}@media screen and (min-width: 769px),print{.columns.is-variable.is-4-tablet{--columnGap: 1rem}}@media screen and (min-width: 769px) and (max-width: 1055px){.columns.is-variable.is-4-tablet-only{--columnGap: 1rem}}@media screen and (max-width: 1055px){.columns.is-variable.is-4-touch{--columnGap: 1rem}}@media screen and (min-width: 1056px){.columns.is-variable.is-4-desktop{--columnGap: 1rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){.columns.is-variable.is-4-desktop-only{--columnGap: 1rem}}@media screen and (min-width: 1216px){.columns.is-variable.is-4-widescreen{--columnGap: 1rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){.columns.is-variable.is-4-widescreen-only{--columnGap: 1rem}}@media screen and (min-width: 1408px){.columns.is-variable.is-4-fullhd{--columnGap: 1rem}}.columns.is-variable.is-5{--columnGap: 1.25rem}@media screen and (max-width: 768px){.columns.is-variable.is-5-mobile{--columnGap: 1.25rem}}@media screen and (min-width: 769px),print{.columns.is-variable.is-5-tablet{--columnGap: 1.25rem}}@media screen and (min-width: 769px) and (max-width: 1055px){.columns.is-variable.is-5-tablet-only{--columnGap: 1.25rem}}@media screen and (max-width: 1055px){.columns.is-variable.is-5-touch{--columnGap: 1.25rem}}@media screen and (min-width: 1056px){.columns.is-variable.is-5-desktop{--columnGap: 1.25rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){.columns.is-variable.is-5-desktop-only{--columnGap: 1.25rem}}@media screen and (min-width: 1216px){.columns.is-variable.is-5-widescreen{--columnGap: 1.25rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){.columns.is-variable.is-5-widescreen-only{--columnGap: 1.25rem}}@media screen and (min-width: 1408px){.columns.is-variable.is-5-fullhd{--columnGap: 1.25rem}}.columns.is-variable.is-6{--columnGap: 1.5rem}@media screen and (max-width: 768px){.columns.is-variable.is-6-mobile{--columnGap: 1.5rem}}@media screen and (min-width: 769px),print{.columns.is-variable.is-6-tablet{--columnGap: 1.5rem}}@media screen and (min-width: 769px) and (max-width: 1055px){.columns.is-variable.is-6-tablet-only{--columnGap: 1.5rem}}@media screen and (max-width: 1055px){.columns.is-variable.is-6-touch{--columnGap: 1.5rem}}@media screen and (min-width: 1056px){.columns.is-variable.is-6-desktop{--columnGap: 1.5rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){.columns.is-variable.is-6-desktop-only{--columnGap: 1.5rem}}@media screen and (min-width: 1216px){.columns.is-variable.is-6-widescreen{--columnGap: 1.5rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){.columns.is-variable.is-6-widescreen-only{--columnGap: 1.5rem}}@media screen and (min-width: 1408px){.columns.is-variable.is-6-fullhd{--columnGap: 1.5rem}}.columns.is-variable.is-7{--columnGap: 1.75rem}@media screen and (max-width: 768px){.columns.is-variable.is-7-mobile{--columnGap: 1.75rem}}@media screen and (min-width: 769px),print{.columns.is-variable.is-7-tablet{--columnGap: 1.75rem}}@media screen and (min-width: 769px) and (max-width: 1055px){.columns.is-variable.is-7-tablet-only{--columnGap: 1.75rem}}@media screen and (max-width: 1055px){.columns.is-variable.is-7-touch{--columnGap: 1.75rem}}@media screen and (min-width: 1056px){.columns.is-variable.is-7-desktop{--columnGap: 1.75rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){.columns.is-variable.is-7-desktop-only{--columnGap: 1.75rem}}@media screen and (min-width: 1216px){.columns.is-variable.is-7-widescreen{--columnGap: 1.75rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){.columns.is-variable.is-7-widescreen-only{--columnGap: 1.75rem}}@media screen and (min-width: 1408px){.columns.is-variable.is-7-fullhd{--columnGap: 1.75rem}}.columns.is-variable.is-8{--columnGap: 2rem}@media screen and (max-width: 768px){.columns.is-variable.is-8-mobile{--columnGap: 2rem}}@media screen and (min-width: 769px),print{.columns.is-variable.is-8-tablet{--columnGap: 2rem}}@media screen and (min-width: 769px) and (max-width: 1055px){.columns.is-variable.is-8-tablet-only{--columnGap: 2rem}}@media screen and (max-width: 1055px){.columns.is-variable.is-8-touch{--columnGap: 2rem}}@media screen and (min-width: 1056px){.columns.is-variable.is-8-desktop{--columnGap: 2rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){.columns.is-variable.is-8-desktop-only{--columnGap: 2rem}}@media screen and (min-width: 1216px){.columns.is-variable.is-8-widescreen{--columnGap: 2rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){.columns.is-variable.is-8-widescreen-only{--columnGap: 2rem}}@media screen and (min-width: 1408px){.columns.is-variable.is-8-fullhd{--columnGap: 2rem}}.tile{align-items:stretch;display:block;flex-basis:0;flex-grow:1;flex-shrink:1;min-height:min-content}.tile.is-ancestor{margin-left:-.75rem;margin-right:-.75rem;margin-top:-.75rem}.tile.is-ancestor:last-child{margin-bottom:-.75rem}.tile.is-ancestor:not(:last-child){margin-bottom:.75rem}.tile.is-child{margin:0 !important}.tile.is-parent{padding:.75rem}.tile.is-vertical{flex-direction:column}.tile.is-vertical>.tile.is-child:not(:last-child){margin-bottom:1.5rem !important}@media screen and (min-width: 769px),print{.tile:not(.is-child){display:flex}.tile.is-1{flex:none;width:8.3333333333%}.tile.is-2{flex:none;width:16.6666666667%}.tile.is-3{flex:none;width:25%}.tile.is-4{flex:none;width:33.3333333333%}.tile.is-5{flex:none;width:41.6666666667%}.tile.is-6{flex:none;width:50%}.tile.is-7{flex:none;width:58.3333333333%}.tile.is-8{flex:none;width:66.6666666667%}.tile.is-9{flex:none;width:75%}.tile.is-10{flex:none;width:83.3333333333%}.tile.is-11{flex:none;width:91.6666666667%}.tile.is-12{flex:none;width:100%}}.hero{align-items:stretch;display:flex;flex-direction:column;justify-content:space-between}.hero .navbar{background:none}.hero .tabs ul{border-bottom:none}.hero.is-white{background-color:#fff;color:#0a0a0a}.hero.is-white a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-white strong{color:inherit}.hero.is-white .title{color:#0a0a0a}.hero.is-white .subtitle{color:rgba(10,10,10,0.9)}.hero.is-white .subtitle a:not(.button),.hero.is-white .subtitle strong{color:#0a0a0a}@media screen and (max-width: 1055px){.hero.is-white .navbar-menu{background-color:#fff}}.hero.is-white .navbar-item,.hero.is-white .navbar-link{color:rgba(10,10,10,0.7)}.hero.is-white a.navbar-item:hover,.hero.is-white a.navbar-item.is-active,.hero.is-white .navbar-link:hover,.hero.is-white .navbar-link.is-active{background-color:#f2f2f2;color:#0a0a0a}.hero.is-white .tabs a{color:#0a0a0a;opacity:0.9}.hero.is-white .tabs a:hover{opacity:1}.hero.is-white .tabs li.is-active a{opacity:1}.hero.is-white .tabs.is-boxed a,.hero.is-white .tabs.is-toggle a{color:#0a0a0a}.hero.is-white .tabs.is-boxed a:hover,.hero.is-white .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}.hero.is-white .tabs.is-boxed li.is-active a,.hero.is-white .tabs.is-boxed li.is-active a:hover,.hero.is-white .tabs.is-toggle li.is-active a,.hero.is-white .tabs.is-toggle li.is-active a:hover{background-color:#0a0a0a;border-color:#0a0a0a;color:#fff}.hero.is-white.is-bold{background-image:linear-gradient(141deg, #e8e3e4 0%, #fff 71%, #fff 100%)}@media screen and (max-width: 768px){.hero.is-white.is-bold .navbar-menu{background-image:linear-gradient(141deg, #e8e3e4 0%, #fff 71%, #fff 100%)}}.hero.is-black{background-color:#0a0a0a;color:#fff}.hero.is-black a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-black strong{color:inherit}.hero.is-black .title{color:#fff}.hero.is-black .subtitle{color:rgba(255,255,255,0.9)}.hero.is-black .subtitle a:not(.button),.hero.is-black .subtitle strong{color:#fff}@media screen and (max-width: 1055px){.hero.is-black .navbar-menu{background-color:#0a0a0a}}.hero.is-black .navbar-item,.hero.is-black .navbar-link{color:rgba(255,255,255,0.7)}.hero.is-black a.navbar-item:hover,.hero.is-black a.navbar-item.is-active,.hero.is-black .navbar-link:hover,.hero.is-black .navbar-link.is-active{background-color:#000;color:#fff}.hero.is-black .tabs a{color:#fff;opacity:0.9}.hero.is-black .tabs a:hover{opacity:1}.hero.is-black .tabs li.is-active a{opacity:1}.hero.is-black .tabs.is-boxed a,.hero.is-black .tabs.is-toggle a{color:#fff}.hero.is-black .tabs.is-boxed a:hover,.hero.is-black .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}.hero.is-black .tabs.is-boxed li.is-active a,.hero.is-black .tabs.is-boxed li.is-active a:hover,.hero.is-black .tabs.is-toggle li.is-active a,.hero.is-black .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#0a0a0a}.hero.is-black.is-bold{background-image:linear-gradient(141deg, #000 0%, #0a0a0a 71%, #181616 100%)}@media screen and (max-width: 768px){.hero.is-black.is-bold .navbar-menu{background-image:linear-gradient(141deg, #000 0%, #0a0a0a 71%, #181616 100%)}}.hero.is-light{background-color:#f5f5f5;color:#363636}.hero.is-light a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-light strong{color:inherit}.hero.is-light .title{color:#363636}.hero.is-light .subtitle{color:rgba(54,54,54,0.9)}.hero.is-light .subtitle a:not(.button),.hero.is-light .subtitle strong{color:#363636}@media screen and (max-width: 1055px){.hero.is-light .navbar-menu{background-color:#f5f5f5}}.hero.is-light .navbar-item,.hero.is-light .navbar-link{color:rgba(54,54,54,0.7)}.hero.is-light a.navbar-item:hover,.hero.is-light a.navbar-item.is-active,.hero.is-light .navbar-link:hover,.hero.is-light .navbar-link.is-active{background-color:#e8e8e8;color:#363636}.hero.is-light .tabs a{color:#363636;opacity:0.9}.hero.is-light .tabs a:hover{opacity:1}.hero.is-light .tabs li.is-active a{opacity:1}.hero.is-light .tabs.is-boxed a,.hero.is-light .tabs.is-toggle a{color:#363636}.hero.is-light .tabs.is-boxed a:hover,.hero.is-light .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}.hero.is-light .tabs.is-boxed li.is-active a,.hero.is-light .tabs.is-boxed li.is-active a:hover,.hero.is-light .tabs.is-toggle li.is-active a,.hero.is-light .tabs.is-toggle li.is-active a:hover{background-color:#363636;border-color:#363636;color:#f5f5f5}.hero.is-light.is-bold{background-image:linear-gradient(141deg, #dfd8d9 0%, #f5f5f5 71%, #fff 100%)}@media screen and (max-width: 768px){.hero.is-light.is-bold .navbar-menu{background-image:linear-gradient(141deg, #dfd8d9 0%, #f5f5f5 71%, #fff 100%)}}.hero.is-dark,.content kbd.hero{background-color:#363636;color:#f5f5f5}.hero.is-dark a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.content kbd.hero a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-dark strong,.content kbd.hero strong{color:inherit}.hero.is-dark .title,.content kbd.hero .title{color:#f5f5f5}.hero.is-dark .subtitle,.content kbd.hero .subtitle{color:rgba(245,245,245,0.9)}.hero.is-dark .subtitle a:not(.button),.content kbd.hero .subtitle a:not(.button),.hero.is-dark .subtitle strong,.content kbd.hero .subtitle strong{color:#f5f5f5}@media screen and (max-width: 1055px){.hero.is-dark .navbar-menu,.content kbd.hero .navbar-menu{background-color:#363636}}.hero.is-dark .navbar-item,.content kbd.hero .navbar-item,.hero.is-dark .navbar-link,.content kbd.hero .navbar-link{color:rgba(245,245,245,0.7)}.hero.is-dark a.navbar-item:hover,.content kbd.hero a.navbar-item:hover,.hero.is-dark a.navbar-item.is-active,.content kbd.hero a.navbar-item.is-active,.hero.is-dark .navbar-link:hover,.content kbd.hero .navbar-link:hover,.hero.is-dark .navbar-link.is-active,.content kbd.hero .navbar-link.is-active{background-color:#292929;color:#f5f5f5}.hero.is-dark .tabs a,.content kbd.hero .tabs a{color:#f5f5f5;opacity:0.9}.hero.is-dark .tabs a:hover,.content kbd.hero .tabs a:hover{opacity:1}.hero.is-dark .tabs li.is-active a,.content kbd.hero .tabs li.is-active a{opacity:1}.hero.is-dark .tabs.is-boxed a,.content kbd.hero .tabs.is-boxed a,.hero.is-dark .tabs.is-toggle a,.content kbd.hero .tabs.is-toggle a{color:#f5f5f5}.hero.is-dark .tabs.is-boxed a:hover,.content kbd.hero .tabs.is-boxed a:hover,.hero.is-dark .tabs.is-toggle a:hover,.content kbd.hero .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}.hero.is-dark .tabs.is-boxed li.is-active a,.content kbd.hero .tabs.is-boxed li.is-active a,.hero.is-dark .tabs.is-boxed li.is-active a:hover,.hero.is-dark .tabs.is-toggle li.is-active a,.content kbd.hero .tabs.is-toggle li.is-active a,.hero.is-dark .tabs.is-toggle li.is-active a:hover{background-color:#f5f5f5;border-color:#f5f5f5;color:#363636}.hero.is-dark.is-bold,.content kbd.hero.is-bold{background-image:linear-gradient(141deg, #1f191a 0%, #363636 71%, #46403f 100%)}@media screen and (max-width: 768px){.hero.is-dark.is-bold .navbar-menu,.content kbd.hero.is-bold .navbar-menu{background-image:linear-gradient(141deg, #1f191a 0%, #363636 71%, #46403f 100%)}}.hero.is-primary,.docstring>section>a.hero.docs-sourcelink{background-color:#4eb5de;color:#fff}.hero.is-primary a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.docstring>section>a.hero.docs-sourcelink a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-primary strong,.docstring>section>a.hero.docs-sourcelink strong{color:inherit}.hero.is-primary .title,.docstring>section>a.hero.docs-sourcelink .title{color:#fff}.hero.is-primary .subtitle,.docstring>section>a.hero.docs-sourcelink .subtitle{color:rgba(255,255,255,0.9)}.hero.is-primary .subtitle a:not(.button),.docstring>section>a.hero.docs-sourcelink .subtitle a:not(.button),.hero.is-primary .subtitle strong,.docstring>section>a.hero.docs-sourcelink .subtitle strong{color:#fff}@media screen and (max-width: 1055px){.hero.is-primary .navbar-menu,.docstring>section>a.hero.docs-sourcelink .navbar-menu{background-color:#4eb5de}}.hero.is-primary .navbar-item,.docstring>section>a.hero.docs-sourcelink .navbar-item,.hero.is-primary .navbar-link,.docstring>section>a.hero.docs-sourcelink .navbar-link{color:rgba(255,255,255,0.7)}.hero.is-primary a.navbar-item:hover,.docstring>section>a.hero.docs-sourcelink a.navbar-item:hover,.hero.is-primary a.navbar-item.is-active,.docstring>section>a.hero.docs-sourcelink a.navbar-item.is-active,.hero.is-primary .navbar-link:hover,.docstring>section>a.hero.docs-sourcelink .navbar-link:hover,.hero.is-primary .navbar-link.is-active,.docstring>section>a.hero.docs-sourcelink .navbar-link.is-active{background-color:#39acda;color:#fff}.hero.is-primary .tabs a,.docstring>section>a.hero.docs-sourcelink .tabs a{color:#fff;opacity:0.9}.hero.is-primary .tabs a:hover,.docstring>section>a.hero.docs-sourcelink .tabs a:hover{opacity:1}.hero.is-primary .tabs li.is-active a,.docstring>section>a.hero.docs-sourcelink .tabs li.is-active a{opacity:1}.hero.is-primary .tabs.is-boxed a,.docstring>section>a.hero.docs-sourcelink .tabs.is-boxed a,.hero.is-primary .tabs.is-toggle a,.docstring>section>a.hero.docs-sourcelink .tabs.is-toggle a{color:#fff}.hero.is-primary .tabs.is-boxed a:hover,.docstring>section>a.hero.docs-sourcelink .tabs.is-boxed a:hover,.hero.is-primary .tabs.is-toggle a:hover,.docstring>section>a.hero.docs-sourcelink .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}.hero.is-primary .tabs.is-boxed li.is-active a,.docstring>section>a.hero.docs-sourcelink .tabs.is-boxed li.is-active a,.hero.is-primary .tabs.is-boxed li.is-active a:hover,.hero.is-primary .tabs.is-toggle li.is-active a,.docstring>section>a.hero.docs-sourcelink .tabs.is-toggle li.is-active a,.hero.is-primary .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#4eb5de}.hero.is-primary.is-bold,.docstring>section>a.hero.is-bold.docs-sourcelink{background-image:linear-gradient(141deg, #1bc7de 0%, #4eb5de 71%, #5fa9e7 100%)}@media screen and (max-width: 768px){.hero.is-primary.is-bold .navbar-menu,.docstring>section>a.hero.is-bold.docs-sourcelink .navbar-menu{background-image:linear-gradient(141deg, #1bc7de 0%, #4eb5de 71%, #5fa9e7 100%)}}.hero.is-link{background-color:#2e63b8;color:#fff}.hero.is-link a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-link strong{color:inherit}.hero.is-link .title{color:#fff}.hero.is-link .subtitle{color:rgba(255,255,255,0.9)}.hero.is-link .subtitle a:not(.button),.hero.is-link .subtitle strong{color:#fff}@media screen and (max-width: 1055px){.hero.is-link .navbar-menu{background-color:#2e63b8}}.hero.is-link .navbar-item,.hero.is-link .navbar-link{color:rgba(255,255,255,0.7)}.hero.is-link a.navbar-item:hover,.hero.is-link a.navbar-item.is-active,.hero.is-link .navbar-link:hover,.hero.is-link .navbar-link.is-active{background-color:#2958a4;color:#fff}.hero.is-link .tabs a{color:#fff;opacity:0.9}.hero.is-link .tabs a:hover{opacity:1}.hero.is-link .tabs li.is-active a{opacity:1}.hero.is-link .tabs.is-boxed a,.hero.is-link .tabs.is-toggle a{color:#fff}.hero.is-link .tabs.is-boxed a:hover,.hero.is-link .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}.hero.is-link .tabs.is-boxed li.is-active a,.hero.is-link .tabs.is-boxed li.is-active a:hover,.hero.is-link .tabs.is-toggle li.is-active a,.hero.is-link .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#2e63b8}.hero.is-link.is-bold{background-image:linear-gradient(141deg, #1b6098 0%, #2e63b8 71%, #2d51d2 100%)}@media screen and (max-width: 768px){.hero.is-link.is-bold .navbar-menu{background-image:linear-gradient(141deg, #1b6098 0%, #2e63b8 71%, #2d51d2 100%)}}.hero.is-info{background-color:#209cee;color:#fff}.hero.is-info a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-info strong{color:inherit}.hero.is-info .title{color:#fff}.hero.is-info .subtitle{color:rgba(255,255,255,0.9)}.hero.is-info .subtitle a:not(.button),.hero.is-info .subtitle strong{color:#fff}@media screen and (max-width: 1055px){.hero.is-info .navbar-menu{background-color:#209cee}}.hero.is-info .navbar-item,.hero.is-info .navbar-link{color:rgba(255,255,255,0.7)}.hero.is-info a.navbar-item:hover,.hero.is-info a.navbar-item.is-active,.hero.is-info .navbar-link:hover,.hero.is-info .navbar-link.is-active{background-color:#1190e3;color:#fff}.hero.is-info .tabs a{color:#fff;opacity:0.9}.hero.is-info .tabs a:hover{opacity:1}.hero.is-info .tabs li.is-active a{opacity:1}.hero.is-info .tabs.is-boxed a,.hero.is-info .tabs.is-toggle a{color:#fff}.hero.is-info .tabs.is-boxed a:hover,.hero.is-info .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}.hero.is-info .tabs.is-boxed li.is-active a,.hero.is-info .tabs.is-boxed li.is-active a:hover,.hero.is-info .tabs.is-toggle li.is-active a,.hero.is-info .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#209cee}.hero.is-info.is-bold{background-image:linear-gradient(141deg, #05a6d6 0%, #209cee 71%, #3287f5 100%)}@media screen and (max-width: 768px){.hero.is-info.is-bold .navbar-menu{background-image:linear-gradient(141deg, #05a6d6 0%, #209cee 71%, #3287f5 100%)}}.hero.is-success{background-color:#22c35b;color:#fff}.hero.is-success a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-success strong{color:inherit}.hero.is-success .title{color:#fff}.hero.is-success .subtitle{color:rgba(255,255,255,0.9)}.hero.is-success .subtitle a:not(.button),.hero.is-success .subtitle strong{color:#fff}@media screen and (max-width: 1055px){.hero.is-success .navbar-menu{background-color:#22c35b}}.hero.is-success .navbar-item,.hero.is-success .navbar-link{color:rgba(255,255,255,0.7)}.hero.is-success a.navbar-item:hover,.hero.is-success a.navbar-item.is-active,.hero.is-success .navbar-link:hover,.hero.is-success .navbar-link.is-active{background-color:#1ead51;color:#fff}.hero.is-success .tabs a{color:#fff;opacity:0.9}.hero.is-success .tabs a:hover{opacity:1}.hero.is-success .tabs li.is-active a{opacity:1}.hero.is-success .tabs.is-boxed a,.hero.is-success .tabs.is-toggle a{color:#fff}.hero.is-success .tabs.is-boxed a:hover,.hero.is-success .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}.hero.is-success .tabs.is-boxed li.is-active a,.hero.is-success .tabs.is-boxed li.is-active a:hover,.hero.is-success .tabs.is-toggle li.is-active a,.hero.is-success .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#22c35b}.hero.is-success.is-bold{background-image:linear-gradient(141deg, #12a02c 0%, #22c35b 71%, #1fdf83 100%)}@media screen and (max-width: 768px){.hero.is-success.is-bold .navbar-menu{background-image:linear-gradient(141deg, #12a02c 0%, #22c35b 71%, #1fdf83 100%)}}.hero.is-warning{background-color:#ffdd57;color:rgba(0,0,0,0.7)}.hero.is-warning a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-warning strong{color:inherit}.hero.is-warning .title{color:rgba(0,0,0,0.7)}.hero.is-warning .subtitle{color:rgba(0,0,0,0.9)}.hero.is-warning .subtitle a:not(.button),.hero.is-warning .subtitle strong{color:rgba(0,0,0,0.7)}@media screen and (max-width: 1055px){.hero.is-warning .navbar-menu{background-color:#ffdd57}}.hero.is-warning .navbar-item,.hero.is-warning .navbar-link{color:rgba(0,0,0,0.7)}.hero.is-warning a.navbar-item:hover,.hero.is-warning a.navbar-item.is-active,.hero.is-warning .navbar-link:hover,.hero.is-warning .navbar-link.is-active{background-color:#ffd83e;color:rgba(0,0,0,0.7)}.hero.is-warning .tabs a{color:rgba(0,0,0,0.7);opacity:0.9}.hero.is-warning .tabs a:hover{opacity:1}.hero.is-warning .tabs li.is-active a{opacity:1}.hero.is-warning .tabs.is-boxed a,.hero.is-warning .tabs.is-toggle a{color:rgba(0,0,0,0.7)}.hero.is-warning .tabs.is-boxed a:hover,.hero.is-warning .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}.hero.is-warning .tabs.is-boxed li.is-active a,.hero.is-warning .tabs.is-boxed li.is-active a:hover,.hero.is-warning .tabs.is-toggle li.is-active a,.hero.is-warning .tabs.is-toggle li.is-active a:hover{background-color:rgba(0,0,0,0.7);border-color:rgba(0,0,0,0.7);color:#ffdd57}.hero.is-warning.is-bold{background-image:linear-gradient(141deg, #ffae24 0%, #ffdd57 71%, #fffa71 100%)}@media screen and (max-width: 768px){.hero.is-warning.is-bold .navbar-menu{background-image:linear-gradient(141deg, #ffae24 0%, #ffdd57 71%, #fffa71 100%)}}.hero.is-danger{background-color:#da0b00;color:#fff}.hero.is-danger a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-danger strong{color:inherit}.hero.is-danger .title{color:#fff}.hero.is-danger .subtitle{color:rgba(255,255,255,0.9)}.hero.is-danger .subtitle a:not(.button),.hero.is-danger .subtitle strong{color:#fff}@media screen and (max-width: 1055px){.hero.is-danger .navbar-menu{background-color:#da0b00}}.hero.is-danger .navbar-item,.hero.is-danger .navbar-link{color:rgba(255,255,255,0.7)}.hero.is-danger a.navbar-item:hover,.hero.is-danger a.navbar-item.is-active,.hero.is-danger .navbar-link:hover,.hero.is-danger .navbar-link.is-active{background-color:#c10a00;color:#fff}.hero.is-danger .tabs a{color:#fff;opacity:0.9}.hero.is-danger .tabs a:hover{opacity:1}.hero.is-danger .tabs li.is-active a{opacity:1}.hero.is-danger .tabs.is-boxed a,.hero.is-danger .tabs.is-toggle a{color:#fff}.hero.is-danger .tabs.is-boxed a:hover,.hero.is-danger .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}.hero.is-danger .tabs.is-boxed li.is-active a,.hero.is-danger .tabs.is-boxed li.is-active a:hover,.hero.is-danger .tabs.is-toggle li.is-active a,.hero.is-danger .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#da0b00}.hero.is-danger.is-bold{background-image:linear-gradient(141deg, #a70013 0%, #da0b00 71%, #f43500 100%)}@media screen and (max-width: 768px){.hero.is-danger.is-bold .navbar-menu{background-image:linear-gradient(141deg, #a70013 0%, #da0b00 71%, #f43500 100%)}}.hero.is-small .hero-body,#documenter .docs-sidebar form.docs-search>input.hero .hero-body{padding-bottom:1.5rem;padding-top:1.5rem}@media screen and (min-width: 769px),print{.hero.is-medium .hero-body{padding-bottom:9rem;padding-top:9rem}}@media screen and (min-width: 769px),print{.hero.is-large .hero-body{padding-bottom:18rem;padding-top:18rem}}.hero.is-halfheight .hero-body,.hero.is-fullheight .hero-body,.hero.is-fullheight-with-navbar .hero-body{align-items:center;display:flex}.hero.is-halfheight .hero-body>.container,.hero.is-fullheight .hero-body>.container,.hero.is-fullheight-with-navbar .hero-body>.container{flex-grow:1;flex-shrink:1}.hero.is-halfheight{min-height:50vh}.hero.is-fullheight{min-height:100vh}.hero-video{overflow:hidden}.hero-video video{left:50%;min-height:100%;min-width:100%;position:absolute;top:50%;transform:translate3d(-50%, -50%, 0)}.hero-video.is-transparent{opacity:0.3}@media screen and (max-width: 768px){.hero-video{display:none}}.hero-buttons{margin-top:1.5rem}@media screen and (max-width: 768px){.hero-buttons .button{display:flex}.hero-buttons .button:not(:last-child){margin-bottom:0.75rem}}@media screen and (min-width: 769px),print{.hero-buttons{display:flex;justify-content:center}.hero-buttons .button:not(:last-child){margin-right:1.5rem}}.hero-head,.hero-foot{flex-grow:0;flex-shrink:0}.hero-body{flex-grow:1;flex-shrink:0;padding:3rem 1.5rem}.section{padding:3rem 1.5rem}@media screen and (min-width: 1056px){.section.is-medium{padding:9rem 1.5rem}.section.is-large{padding:18rem 1.5rem}}.footer{background-color:#fafafa;padding:3rem 1.5rem 6rem}h1 .docs-heading-anchor,h1 .docs-heading-anchor:hover,h1 .docs-heading-anchor:visited,h2 .docs-heading-anchor,h2 .docs-heading-anchor:hover,h2 .docs-heading-anchor:visited,h3 .docs-heading-anchor,h3 .docs-heading-anchor:hover,h3 .docs-heading-anchor:visited,h4 .docs-heading-anchor,h4 .docs-heading-anchor:hover,h4 .docs-heading-anchor:visited,h5 .docs-heading-anchor,h5 .docs-heading-anchor:hover,h5 .docs-heading-anchor:visited,h6 .docs-heading-anchor,h6 .docs-heading-anchor:hover,h6 .docs-heading-anchor:visited{color:#222}h1 .docs-heading-anchor-permalink,h2 .docs-heading-anchor-permalink,h3 .docs-heading-anchor-permalink,h4 .docs-heading-anchor-permalink,h5 .docs-heading-anchor-permalink,h6 .docs-heading-anchor-permalink{visibility:hidden;vertical-align:middle;margin-left:0.5em;font-size:0.7rem}h1 .docs-heading-anchor-permalink::before,h2 .docs-heading-anchor-permalink::before,h3 .docs-heading-anchor-permalink::before,h4 .docs-heading-anchor-permalink::before,h5 .docs-heading-anchor-permalink::before,h6 .docs-heading-anchor-permalink::before{font-family:"Font Awesome 5 Free";font-weight:900;content:"\f0c1"}h1:hover .docs-heading-anchor-permalink,h2:hover .docs-heading-anchor-permalink,h3:hover .docs-heading-anchor-permalink,h4:hover .docs-heading-anchor-permalink,h5:hover .docs-heading-anchor-permalink,h6:hover .docs-heading-anchor-permalink{visibility:visible}.docs-dark-only{display:none !important}pre{position:relative;overflow:hidden}pre code,pre code.hljs{padding:0 .75rem !important;overflow:auto;display:block}pre code:first-of-type,pre code.hljs:first-of-type{padding-top:0.5rem !important}pre code:last-of-type,pre code.hljs:last-of-type{padding-bottom:0.5rem !important}pre .copy-button{opacity:0.2;transition:opacity 0.2s;position:absolute;right:0em;top:0em;padding:0.5em;width:2.5em;height:2.5em;background:transparent;border:none;font-family:"Font Awesome 5 Free";color:#222;cursor:pointer;text-align:center}pre .copy-button:focus,pre .copy-button:hover{opacity:1;background:rgba(34,34,34,0.1);color:#2e63b8}pre .copy-button.success{color:#259a12;opacity:1}pre .copy-button.error{color:#cb3c33;opacity:1}pre:hover .copy-button{opacity:1}.admonition{background-color:#b5b5b5;border-style:solid;border-width:1px;border-color:#363636;border-radius:4px;font-size:1rem}.admonition strong{color:currentColor}.admonition.is-small,#documenter .docs-sidebar form.docs-search>input.admonition{font-size:.75rem}.admonition.is-medium{font-size:1.25rem}.admonition.is-large{font-size:1.5rem}.admonition.is-default{background-color:#b5b5b5;border-color:#363636}.admonition.is-default>.admonition-header{background-color:#363636;color:#fff}.admonition.is-default>.admonition-body{color:#fff}.admonition.is-info{background-color:#def0fc;border-color:#209cee}.admonition.is-info>.admonition-header{background-color:#209cee;color:#fff}.admonition.is-info>.admonition-body{color:rgba(0,0,0,0.7)}.admonition.is-success{background-color:#bdf4d1;border-color:#22c35b}.admonition.is-success>.admonition-header{background-color:#22c35b;color:#fff}.admonition.is-success>.admonition-body{color:rgba(0,0,0,0.7)}.admonition.is-warning{background-color:#fff3c5;border-color:#ffdd57}.admonition.is-warning>.admonition-header{background-color:#ffdd57;color:rgba(0,0,0,0.7)}.admonition.is-warning>.admonition-body{color:rgba(0,0,0,0.7)}.admonition.is-danger{background-color:#ffaba7;border-color:#da0b00}.admonition.is-danger>.admonition-header{background-color:#da0b00;color:#fff}.admonition.is-danger>.admonition-body{color:rgba(0,0,0,0.7)}.admonition.is-compat{background-color:#bdeff5;border-color:#1db5c9}.admonition.is-compat>.admonition-header{background-color:#1db5c9;color:#fff}.admonition.is-compat>.admonition-body{color:rgba(0,0,0,0.7)}.admonition-header{color:#fff;background-color:#363636;align-items:center;font-weight:700;justify-content:space-between;line-height:1.25;padding:0.5rem .75rem;position:relative}.admonition-header:before{font-family:"Font Awesome 5 Free";font-weight:900;margin-right:.75rem;content:"\f06a"}.admonition-body{color:#222;padding:0.5rem .75rem}.admonition-body pre{background-color:#f5f5f5}.admonition-body code{background-color:rgba(0,0,0,0.05)}.docstring{margin-bottom:1em;background-color:rgba(0,0,0,0);border:1px solid #dbdbdb;box-shadow:2px 2px 3px rgba(10,10,10,0.1);max-width:100%}.docstring>header{display:flex;flex-grow:1;align-items:stretch;padding:0.5rem .75rem;background-color:#f5f5f5;box-shadow:0 1px 2px rgba(10,10,10,0.1);box-shadow:none;border-bottom:1px solid #dbdbdb}.docstring>header code{background-color:transparent}.docstring>header .docstring-binding{margin-right:0.3em}.docstring>header .docstring-category{margin-left:0.3em}.docstring>section{position:relative;padding:.75rem .75rem;border-bottom:1px solid #dbdbdb}.docstring>section:last-child{border-bottom:none}.docstring>section>a.docs-sourcelink{transition:opacity 0.3s;opacity:0;position:absolute;right:.375rem;bottom:.375rem}.docstring>section>a.docs-sourcelink:focus{opacity:1 !important}.docstring:hover>section>a.docs-sourcelink{opacity:0.2}.docstring:focus-within>section>a.docs-sourcelink{opacity:0.2}.docstring>section:hover a.docs-sourcelink{opacity:1}.documenter-example-output{background-color:#fff}.outdated-warning-overlay{position:fixed;top:0;left:0;right:0;box-shadow:0 0 10px rgba(0,0,0,0.3);z-index:999;background-color:#ffaba7;color:rgba(0,0,0,0.7);border-bottom:3px solid #da0b00;padding:10px 35px;text-align:center;font-size:15px}.outdated-warning-overlay .outdated-warning-closer{position:absolute;top:calc(50% - 10px);right:18px;cursor:pointer;width:12px}.outdated-warning-overlay a{color:#2e63b8}.outdated-warning-overlay a:hover{color:#363636}.content pre{border:1px solid #dbdbdb}.content code{font-weight:inherit}.content a code{color:#2e63b8}.content h1 code,.content h2 code,.content h3 code,.content h4 code,.content h5 code,.content h6 code{color:#222}.content table{display:block;width:initial;max-width:100%;overflow-x:auto}.content blockquote>ul:first-child,.content blockquote>ol:first-child,.content .admonition-body>ul:first-child,.content .admonition-body>ol:first-child{margin-top:0}pre,code{font-variant-ligatures:no-contextual}.breadcrumb a.is-disabled{cursor:default;pointer-events:none}.breadcrumb a.is-disabled,.breadcrumb a.is-disabled:hover{color:#222}.hljs{background:initial !important}.katex .katex-mathml{top:0;right:0}.katex-display,mjx-container,.MathJax_Display{margin:0.5em 0 !important}html{-moz-osx-font-smoothing:auto;-webkit-font-smoothing:auto}li.no-marker{list-style:none}#documenter .docs-main>article{overflow-wrap:break-word}#documenter .docs-main>article .math-container{overflow-x:auto;overflow-y:hidden}@media screen and (min-width: 1056px){#documenter .docs-main{max-width:52rem;margin-left:20rem;padding-right:1rem}}@media screen and (max-width: 1055px){#documenter .docs-main{width:100%}#documenter .docs-main>article{max-width:52rem;margin-left:auto;margin-right:auto;margin-bottom:1rem;padding:0 1rem}#documenter .docs-main>header,#documenter .docs-main>nav{max-width:100%;width:100%;margin:0}}#documenter .docs-main header.docs-navbar{background-color:#fff;border-bottom:1px solid #dbdbdb;z-index:2;min-height:4rem;margin-bottom:1rem;display:flex}#documenter .docs-main header.docs-navbar .breadcrumb{flex-grow:1}#documenter .docs-main header.docs-navbar .docs-right{display:flex;white-space:nowrap}#documenter .docs-main header.docs-navbar .docs-right .docs-icon,#documenter .docs-main header.docs-navbar .docs-right .docs-label,#documenter .docs-main header.docs-navbar .docs-right .docs-sidebar-button{display:inline-block}#documenter .docs-main header.docs-navbar .docs-right .docs-label{padding:0;margin-left:0.3em}#documenter .docs-main header.docs-navbar .docs-right .docs-settings-button{margin:auto 0 auto 1rem}#documenter .docs-main header.docs-navbar .docs-right .docs-sidebar-button{font-size:1.5rem;margin:auto 0 auto 1rem}#documenter .docs-main header.docs-navbar>*{margin:auto 0}@media screen and (max-width: 1055px){#documenter .docs-main header.docs-navbar{position:sticky;top:0;padding:0 1rem;transition-property:top, box-shadow;-webkit-transition-property:top, box-shadow;transition-duration:0.3s;-webkit-transition-duration:0.3s}#documenter .docs-main header.docs-navbar.headroom--not-top{box-shadow:.2rem 0rem .4rem #bbb;transition-duration:0.7s;-webkit-transition-duration:0.7s}#documenter .docs-main header.docs-navbar.headroom--unpinned.headroom--not-top.headroom--not-bottom{top:-4.5rem;transition-duration:0.7s;-webkit-transition-duration:0.7s}}#documenter .docs-main section.footnotes{border-top:1px solid #dbdbdb}#documenter .docs-main section.footnotes li .tag:first-child,#documenter .docs-main section.footnotes li .docstring>section>a.docs-sourcelink:first-child,#documenter .docs-main section.footnotes li .content kbd:first-child,.content #documenter .docs-main section.footnotes li kbd:first-child{margin-right:1em;margin-bottom:0.4em}#documenter .docs-main .docs-footer{display:flex;flex-wrap:wrap;margin-left:0;margin-right:0;border-top:1px solid #dbdbdb;padding-top:1rem;padding-bottom:1rem}@media screen and (max-width: 1055px){#documenter .docs-main .docs-footer{padding-left:1rem;padding-right:1rem}}#documenter .docs-main .docs-footer .docs-footer-nextpage,#documenter .docs-main .docs-footer .docs-footer-prevpage{flex-grow:1}#documenter .docs-main .docs-footer .docs-footer-nextpage{text-align:right}#documenter .docs-main .docs-footer .flexbox-break{flex-basis:100%;height:0}#documenter .docs-main .docs-footer .footer-message{font-size:0.8em;margin:0.5em auto 0 auto;text-align:center}#documenter .docs-sidebar{display:flex;flex-direction:column;color:#0a0a0a;background-color:#f5f5f5;border-right:1px solid #dbdbdb;padding:0;flex:0 0 18rem;z-index:5;font-size:1rem;position:fixed;left:-18rem;width:18rem;height:100%;transition:left 0.3s}#documenter .docs-sidebar.visible{left:0;box-shadow:.4rem 0rem .8rem #bbb}@media screen and (min-width: 1056px){#documenter .docs-sidebar.visible{box-shadow:none}}@media screen and (min-width: 1056px){#documenter .docs-sidebar{left:0;top:0}}#documenter .docs-sidebar .docs-logo{margin-top:1rem;padding:0 1rem}#documenter .docs-sidebar .docs-logo>img{max-height:6rem;margin:auto}#documenter .docs-sidebar .docs-package-name{flex-shrink:0;font-size:1.5rem;font-weight:700;text-align:center;white-space:nowrap;overflow:hidden;padding:0.5rem 0}#documenter .docs-sidebar .docs-package-name .docs-autofit{max-width:16.2rem}#documenter .docs-sidebar .docs-package-name a,#documenter .docs-sidebar .docs-package-name a:hover{color:#0a0a0a}#documenter .docs-sidebar .docs-version-selector{border-top:1px solid #dbdbdb;display:none;padding:0.5rem}#documenter .docs-sidebar .docs-version-selector.visible{display:flex}#documenter .docs-sidebar ul.docs-menu{flex-grow:1;user-select:none;border-top:1px solid #dbdbdb;padding-bottom:1.5rem}#documenter .docs-sidebar ul.docs-menu>li>.tocitem{font-weight:bold}#documenter .docs-sidebar ul.docs-menu>li li{font-size:.95rem;margin-left:1em;border-left:1px solid #dbdbdb}#documenter .docs-sidebar ul.docs-menu input.collapse-toggle{display:none}#documenter .docs-sidebar ul.docs-menu ul.collapsed{display:none}#documenter .docs-sidebar ul.docs-menu input:checked~ul.collapsed{display:block}#documenter .docs-sidebar ul.docs-menu label.tocitem{display:flex}#documenter .docs-sidebar ul.docs-menu label.tocitem .docs-label{flex-grow:2}#documenter .docs-sidebar ul.docs-menu label.tocitem .docs-chevron{display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1;font-size:.75rem;margin-left:1rem;margin-top:auto;margin-bottom:auto}#documenter .docs-sidebar ul.docs-menu label.tocitem .docs-chevron::before{font-family:"Font Awesome 5 Free";font-weight:900;content:"\f054"}#documenter .docs-sidebar ul.docs-menu input:checked~label.tocitem .docs-chevron::before{content:"\f078"}#documenter .docs-sidebar ul.docs-menu .tocitem{display:block;padding:0.5rem 0.5rem}#documenter .docs-sidebar ul.docs-menu .tocitem,#documenter .docs-sidebar ul.docs-menu .tocitem:hover{color:#0a0a0a;background:#f5f5f5}#documenter .docs-sidebar ul.docs-menu a.tocitem:hover,#documenter .docs-sidebar ul.docs-menu label.tocitem:hover{color:#0a0a0a;background-color:#ebebeb}#documenter .docs-sidebar ul.docs-menu li.is-active{border-top:1px solid #dbdbdb;border-bottom:1px solid #dbdbdb;background-color:#fff}#documenter .docs-sidebar ul.docs-menu li.is-active .tocitem,#documenter .docs-sidebar ul.docs-menu li.is-active .tocitem:hover{background-color:#fff;color:#0a0a0a}#documenter .docs-sidebar ul.docs-menu li.is-active ul.internal .tocitem:hover{background-color:#ebebeb;color:#0a0a0a}#documenter .docs-sidebar ul.docs-menu>li.is-active:first-child{border-top:none}#documenter .docs-sidebar ul.docs-menu ul.internal{margin:0 0.5rem 0.5rem;border-top:1px solid #dbdbdb}#documenter .docs-sidebar ul.docs-menu ul.internal li{font-size:.85rem;border-left:none;margin-left:0;margin-top:0.5rem}#documenter .docs-sidebar ul.docs-menu ul.internal .tocitem{width:100%;padding:0}#documenter .docs-sidebar ul.docs-menu ul.internal .tocitem::before{content:"⚬";margin-right:0.4em}#documenter .docs-sidebar form.docs-search{margin:auto;margin-top:0.5rem;margin-bottom:0.5rem}#documenter .docs-sidebar form.docs-search>input{width:14.4rem}@media screen and (min-width: 1056px){#documenter .docs-sidebar ul.docs-menu{overflow-y:auto;-webkit-overflow-scroll:touch}#documenter .docs-sidebar ul.docs-menu::-webkit-scrollbar{width:.3rem;background:none}#documenter .docs-sidebar ul.docs-menu::-webkit-scrollbar-thumb{border-radius:5px 0px 0px 5px;background:#e0e0e0}#documenter .docs-sidebar ul.docs-menu::-webkit-scrollbar-thumb:hover{background:#ccc}}@media screen and (max-width: 1055px){#documenter .docs-sidebar{overflow-y:auto;-webkit-overflow-scroll:touch}#documenter .docs-sidebar::-webkit-scrollbar{width:.3rem;background:none}#documenter .docs-sidebar::-webkit-scrollbar-thumb{border-radius:5px 0px 0px 5px;background:#e0e0e0}#documenter .docs-sidebar::-webkit-scrollbar-thumb:hover{background:#ccc}}#documenter .docs-main #documenter-search-info{margin-bottom:1rem}#documenter .docs-main #documenter-search-results{list-style-type:circle;list-style-position:outside}#documenter .docs-main #documenter-search-results li{margin-left:2rem}#documenter .docs-main #documenter-search-results .docs-highlight{background-color:yellow}.ansi span.sgr1{font-weight:bolder}.ansi span.sgr2{font-weight:lighter}.ansi span.sgr3{font-style:italic}.ansi span.sgr4{text-decoration:underline}.ansi span.sgr7{color:#fff;background-color:#222}.ansi span.sgr8{color:transparent}.ansi span.sgr8 span{color:transparent}.ansi span.sgr9{text-decoration:line-through}.ansi span.sgr30{color:#242424}.ansi span.sgr31{color:#a7201f}.ansi span.sgr32{color:#066f00}.ansi span.sgr33{color:#856b00}.ansi span.sgr34{color:#2149b0}.ansi span.sgr35{color:#7d4498}.ansi span.sgr36{color:#007989}.ansi span.sgr37{color:gray}.ansi span.sgr40{background-color:#242424}.ansi span.sgr41{background-color:#a7201f}.ansi span.sgr42{background-color:#066f00}.ansi span.sgr43{background-color:#856b00}.ansi span.sgr44{background-color:#2149b0}.ansi span.sgr45{background-color:#7d4498}.ansi span.sgr46{background-color:#007989}.ansi span.sgr47{background-color:gray}.ansi span.sgr90{color:#616161}.ansi span.sgr91{color:#cb3c33}.ansi span.sgr92{color:#0e8300}.ansi span.sgr93{color:#a98800}.ansi span.sgr94{color:#3c5dcd}.ansi span.sgr95{color:#9256af}.ansi span.sgr96{color:#008fa3}.ansi span.sgr97{color:#f5f5f5}.ansi span.sgr100{background-color:#616161}.ansi span.sgr101{background-color:#cb3c33}.ansi span.sgr102{background-color:#0e8300}.ansi span.sgr103{background-color:#a98800}.ansi span.sgr104{background-color:#3c5dcd}.ansi span.sgr105{background-color:#9256af}.ansi span.sgr106{background-color:#008fa3}.ansi span.sgr107{background-color:#f5f5f5}code.language-julia-repl>span.hljs-meta{color:#066f00;font-weight:bolder}/*! + Theme: Default + Description: Original highlight.js style + Author: (c) Ivan Sagalaev + Maintainer: @highlightjs/core-team + Website: https://highlightjs.org/ + License: see project LICENSE + Touched: 2021 +*/pre code.hljs{display:block;overflow-x:auto}code.hljs{padding:3px 5px}.hljs{background:#F0F0F0;color:#444}.hljs-comment{color:#888888}.hljs-tag,.hljs-punctuation{color:#444a}.hljs-tag .hljs-name,.hljs-tag .hljs-attr{color:#444}.hljs-keyword,.hljs-attribute,.hljs-selector-tag,.hljs-meta .hljs-keyword,.hljs-doctag,.hljs-name{font-weight:bold}.hljs-type,.hljs-string,.hljs-number,.hljs-selector-id,.hljs-selector-class,.hljs-quote,.hljs-template-tag,.hljs-deletion{color:#880000}.hljs-title,.hljs-section{color:#880000;font-weight:bold}.hljs-regexp,.hljs-symbol,.hljs-variable,.hljs-template-variable,.hljs-link,.hljs-selector-attr,.hljs-operator,.hljs-selector-pseudo{color:#BC6060}.hljs-literal{color:#78A960}.hljs-built_in,.hljs-bullet,.hljs-code,.hljs-addition{color:#397300}.hljs-meta{color:#1f7199}.hljs-meta .hljs-string{color:#4d99bf}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:bold} diff --git a/previews/PR383/assets/themeswap.js b/previews/PR383/assets/themeswap.js new file mode 100644 index 000000000..c58e993e3 --- /dev/null +++ b/previews/PR383/assets/themeswap.js @@ -0,0 +1,66 @@ +// Small function to quickly swap out themes. Gets put into the tag.. +function set_theme_from_local_storage() { + // Intialize the theme to null, which means default + var theme = null; + // If the browser supports the localstorage and is not disabled then try to get the + // documenter theme + if(window.localStorage != null) { + // Get the user-picked theme from localStorage. May be `null`, which means the default + // theme. + theme = window.localStorage.getItem("documenter-theme"); + } + // Check if the browser supports user color preference + var darkPreference = false; + // Check if the users preference is for dark color scheme + if(window.matchMedia('(prefers-color-scheme: dark)').matches === true) { + darkPreference = true; + } + // Initialize a few variables for the loop: + // + // - active: will contain the index of the theme that should be active. Note that there + // is no guarantee that localStorage contains sane values. If `active` stays `null` + // we either could not find the theme or it is the default (primary) theme anyway. + // Either way, we then need to stick to the primary theme. + // + // - disabled: style sheets that should be disabled (i.e. all the theme style sheets + // that are not the currently active theme) + var active = null; var disabled = []; var darkTheme = null; + for (var i = 0; i < document.styleSheets.length; i++) { + var ss = document.styleSheets[i]; + // The tag of each style sheet is expected to have a data-theme-name attribute + // which must contain the name of the theme. The names in localStorage much match this. + var themename = ss.ownerNode.getAttribute("data-theme-name"); + // attribute not set => non-theme stylesheet => ignore + if(themename === null) continue; + // To distinguish the default (primary) theme, it needs to have the data-theme-primary + // attribute set. + var isprimary = (ss.ownerNode.getAttribute("data-theme-primary") !== null); + // Check if the theme is primary dark theme + var isDarkTheme = (ss.ownerNode.getAttribute("data-theme-primary-dark") !== null); + // If ss is for dark theme then set the value of darkTheme to the name of the theme + if(isDarkTheme) darkTheme = themename; + // If we find a matching theme (and it's not the default), we'll set active to non-null + if(themename === theme) active = i; + // Store the style sheets of inactive themes so that we could disable them + if(themename !== theme) disabled.push(ss); + } + if(active !== null) { + // If we did find an active theme, we'll (1) add the theme--$(theme) class to + document.getElementsByTagName('html')[0].className = "theme--" + theme; + // and (2) disable all the other theme stylesheets + disabled.forEach(function(ss){ + ss.disabled = true; + }); + } + else if(darkTheme !== null && darkPreference === true) { + // If we did find an active theme, we'll (1) add the theme--$(theme) class to + document.getElementsByTagName('html')[0].className = "theme--" + darkTheme; + // and (2) disable all the other theme stylesheets + disabled.forEach(function(ss){ + if (ss.ownerNode.getAttribute("data-theme-name") !== darkTheme) { + ss.disabled = true; + } + }); + } +} +set_theme_from_local_storage(); diff --git a/previews/PR383/assets/unicode.png b/previews/PR383/assets/unicode.png new file mode 100644 index 0000000000000000000000000000000000000000..6575482b55f5b433c58cc6298370578dcee05ec9 GIT binary patch literal 67853 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 here to go to the documentation for the latest stable release.'; + div.appendChild(closer); + document.body.appendChild(div); +}; + +if (document.readyState === 'loading') { + document.addEventListener('DOMContentLoaded', maybeAddWarning); +} else { + maybeAddWarning(); +}; diff --git a/previews/PR383/code_base_developer_guide/developer/index.html b/previews/PR383/code_base_developer_guide/developer/index.html new file mode 100644 index 000000000..0d4965d7a --- /dev/null +++ b/previews/PR383/code_base_developer_guide/developer/index.html @@ -0,0 +1,2 @@ + +Developer Guide · PowerSimulationsDynamics.jl

    diff --git a/previews/PR383/component_models/avr/index.html b/previews/PR383/component_models/avr/index.html new file mode 100644 index 000000000..269d7b72f --- /dev/null +++ b/previews/PR383/component_models/avr/index.html @@ -0,0 +1,75 @@ + +AVR · PowerSimulationsDynamics.jl

    Automatic Voltage Regulators (AVR)

    AVR are used to determine the voltage in the field winding $v_f$ (or $V_f$) in the model.

    Fixed AVR [AVRFixed]

    This is a simple model that set the field voltage to be equal to a desired constant value $v_f = v_{\text{fix}}$.

    Simple AVR [AVRSimple]

    This depicts the most basic AVR, on which the field voltage is an integrator over the difference of the measured voltage and a reference:

    \[\begin{align} +\dot{v}_f = K_v(v_{\text{ref}} - v_h) \tag{1a} +\end{align}\]

    AVR Type I [AVRTypeI]

    This AVR is a simplified version of the IEEE DC1 AVR model:

    \[\begin{align} +\dot{v}_f &= -\frac{1}{T_e} \left[ V_f(K_e + S_e(v_f))-v_{r1} \right] \tag{2a} \\ +\dot{v}_{r1} &= \frac{1}{T_a} \left[ K_a\left(v_{\text{ref}} - v_m - v_{r2} - \frac{K_f}{T_f}v_f\right) - v_{r1} \right] \tag{2b} \\ +\dot{v}_{r2} &= -\frac{1}{T_f} \left[ \frac{K_f}{T_f}v_f + v_{r2} \right] \tag{2c} \\ +\dot{v}_m &= \frac{1}{T_r} (v_h - v_m) \tag{2d} +\end{align}\]

    with the ceiling function:

    \[\begin{align*} +S_e(v_f) = A_e \exp(B_e|v_f|) +\end{align*}\]

    AVR Type II [AVRTypeII]

    This model represents a static exciter with higher gains and faster response than the Type I:

    \[\begin{align} +\dot{v}_f &= -\frac{1}{T_e} \left[ V_f(1 + S_e(v_f))-v_{r} \right] \tag{3a} \\ +\dot{v}_{r1} &= \frac{1}{T_1} \left[ K_0\left(1 - \frac{T_2}{T_1} \right)(v_{\text{ref}} - v_m) - v_{r1} \right] \tag{3b} \\ +\dot{v}_{r2} &= \frac{1}{K_0 T_3} \left[ \left( 1 - \frac{T_4}{T_3} \right) \left( v_{r1} + K_0\frac{T_2}{T_1}(v_{\text{ref}} - v_m)\right) - K_0 v_{r2} \right] \tag{3c} \\ +\dot{v}_m &= \frac{1}{T_r} (v_h - v_m) \tag{3d} +\end{align}\]

    with

    \[\begin{align*} +v_r &= K_0v_{r2} + \frac{T_4}{T_3} \left( v_{r1} + K_0\frac{T_2}{T_1}(v_{\text{ref}} - v_m)\right) \\ +S_e(v_f) &= A_e \exp(B_e|v_f|) +\end{align*}\]

    Excitation System AC1A [ESAC1A]

    The model represents the 5-states IEEE Type AC1A Excitation System Model:

    \[\begin{align} +\dot{V}_m &= \frac{1}{T_r} (V_{h} - V_m) \tag{4a} \\ +\dot{V}_{r1} &= \frac{1}{T_b} \left(V_{in} \left(1 - \frac{T_c}{T_b}\right) - V_{r1}\right) \tag{4b} \\ +\dot{V}_{r2} &= \frac{1}{T_a} (K_a V_{out} - V_{r2}) \tag{4c} \\ +\dot{V}_e &= \frac{1}{T_e} (V_r - V_{FE}) \tag{4d} \\ +\dot{V}_{r3} &= \frac{1}{T_f} \left( - \frac{K_f}{T_f}V_{FE} - V_{r3} \right) \tag{4e} \\ +\end{align}\]

    with

    \[\begin{align*} +I_N &= \frac{K_c}{V_e} X_{ad}I_{fd} \\ +V_{FE} &= K_d X_{ad}I_{fd} + K_e V_e + S_e V_e \\ +S_e &= B\frac{(V_e-A)^2}{V_e} \\ +V_{F1} &= V_{r3} + \frac{K_f}{T_f} V_{FE} \\ +V_{in} &= V_{ref} - V_m - V_{F1} \\ +V_{out} &= V_{r1} + \frac{T_c}{T_b} V_{in} \\ +V_f &= V_e f(I_N) \\ +f(I_N) &= \left\{\begin{array}{cl} + 1 & \text{ if }I_N \le 0 \\ + 1 - 0.577 I_N & \text{ if } 0 < I_N \le 0.433 \\ + \sqrt{0.75 - I_N^2} & \text{ if } 0.433 < I_N \le 0.75 \\ + 1.732(1-I_N) & \text{ if } 0.75 < I_N \le 1 \\ + 0 & \text{ if } I_N > 1 \end{array} \right. +\end{align*}\]

    on which $X_{ad}I_{fd}$ is the field current coming from the generator and $V_{h}$ is the terminal voltage, and $A,B$ are the saturation coefficients computed using the $E_1, E_2, S_e(E_1), S_e(E_2)$ data.

    Simplified Excitation System [SEXS]

    The model for the 2 states excitation system SEXS:

    \[\begin{align} +\dot{V}_f &= \frac{1}{T_e} (V_{LL} - V_f) \tag{5a} \\ +\dot{V}_r &= \frac{1}{T_b} \left[\left(1 - \frac{T_a}{T_b}\right) V_{in} - V_r \right] \tag{5b} +\end{align}\]

    with

    \[\begin{align*} +V_{in} &= V_{ref} + V_s - V_h \\ +V_{LL} &= V_r + \frac{T_a}{T_b}V_{in} \\ +\end{align*}\]

    on which $V_h$ is the terminal voltage and $V_s$ is the PSS output signal.

    Excitation System ST1 [EXST1]

    The model represents the 4-states IEEE Type ST1 Excitation System Model:

    \[\begin{align} +\dot{V}_m &= \frac{1}{T_r} (V_{h} - V_m) \tag{6a} \\ +\dot{V}_{rll} &= \frac{1}{T_b} \left(V_{in} \left(1 - \frac{T_c}{T_b}\right) - V_{rll}\right) \tag{6b} \\ +\dot{V}_{r} &= \frac{1}{T_a} (V_{LL} - V_{r}) \tag{6c} \\ +\dot{V}_{fb} &= \frac{1}{T_f} \left( - \frac{K_f}{T_f}V_{r} - V_{fb} \right) \tag{6d} \\ +\end{align}\]

    with

    \[\begin{align*} +V_{in} &= V_{ref} - V_m - y_{hp} \\ +V_{LL} &= V_{r} + \frac{T_c}{T_b} V_{in} \\ +y_{hp} &= V_{fb} + \frac{K_f}{T_f} V_r \\ +V_f &= V_r \\ +\end{align*}\]

    on which $V_h$ is the terminal voltage.

    Excitation System EXAC1 [EXAC1]

    The model represents the 5-states IEEE Type EXAC1 Excitation System Model:

    \[\begin{align} +\dot{V}_m &= \frac{1}{T_r} (V_{h} - V_m) \tag{7a} \\ +\dot{V}_{r1} &= \frac{1}{T_b} \left(V_{in} \left(1 - \frac{T_c}{T_b}\right) - V_{r1}\right) \tag{7b} \\ +\dot{V}_{r2} &= \frac{1}{T_a} (K_a V_{out} - V_{r2}) \tag{7c} \\ +\dot{V}_e &= \frac{1}{T_e} (V_r - V_{FE}) \tag{7d} \\ +\dot{V}_{r3} &= \frac{1}{T_f} \left( - \frac{K_f}{T_f}V_{FE} - V_{r3} \right) \tag{7e} \\ +\end{align}\]

    with

    \[\begin{align*} +I_N &= \frac{K_c}{V_e} X_{ad}I_{fd} \\ +V_{FE} &= K_d X_{ad}I_{fd} + K_e V_e + S_e V_e \\ +S_e &= B\frac{(V_e-A)^2}{V_e} \\ +V_{F1} &= V_{r3} + \frac{K_f}{T_f} V_{FE} \\ +V_{in} &= V_{ref} - V_m - V_{F1} \\ +V_{out} &= V_{r1} + \frac{T_c}{T_b} V_{in} \\ +V_f &= V_e f(I_N) \\ +f(I_N) &= \left\{\begin{array}{cl} + 1 & \text{ if }I_N \le 0 \\ + 1 - 0.577 I_N & \text{ if } 0 < I_N \le 0.433 \\ + \sqrt{0.75 - I_N^2} & \text{ if } 0.433 < I_N \le 0.75 \\ + 1.732(1-I_N) & \text{ if } 0.75 < I_N \le 1 \\ + 0 & \text{ if } I_N > 1 \end{array} \right. +\end{align*}\]

    on which $X_{ad}I_{fd}$ is the field current coming from the generator and $V_{h}$ is the terminal voltage, and $A,B$ are the saturation coefficients computed using the $E_1, E_2, S_e(E_1), S_e(E_2)$ data.

    diff --git a/previews/PR383/component_models/converter/index.html b/previews/PR383/component_models/converter/index.html new file mode 100644 index 000000000..01a504352 --- /dev/null +++ b/previews/PR383/component_models/converter/index.html @@ -0,0 +1,25 @@ + +Converter · PowerSimulationsDynamics.jl

    Converter

    This component can be used to model the dynamics of the switching process.

    Average Model [AverageConverter]

    The average model outputs the desired reference signal since:

    \[\begin{align} +v_{d}^{\text{cv}} \approx m_{d} v_{\text{dc}} \approx \frac{v_{d}^{\text{ref-signal}}}{v_{\text{dc}}} v_{\text{dc}} \approx v_{d}^{\text{ref-signal}} \tag{1a} \\ +v_{q}^{\text{cv}} \approx m_{q} v_{\text{dc}} \approx \frac{v_{q}^{\text{ref-signal}}}{v_{\text{dc}}} v_{\text{dc}} \approx v_{q}^{\text{ref-signal}} \tag{1b} +\end{align}\]

    where $m_{dq}$ is the modulation signal, and $v_{dq}^{\text{ref-signal}}$ is the voltage reference signal from the inner loop control.

    Generic Renewable Converter Type A ```[RenewableEnergyConverterTypeA]

    This block represents the REGCA model. The equations (without the limiters) are:

    \[\begin{align} + \dot{I}_p &= \frac{1}{T_g} (I_\text{pcmd} - I_p) \tag{2a} \\ + \dot{I}_q &= \frac{1}{T_g} (I_\text{qcmd} - I_q) \tag{2b} \\ + \dot{V}_\text{meas} &= \frac{1}{T_{fltr}} (V_t - V_\text{meas} \tag{2c}) +\end{align}\]

    on which $I_\text{pcmd}$ and $I_\text{qcmd}$ are the current commands from the inner control and $V_t$ is the bus voltage magnitude. The additional terms and output current are computed as:

    \[\begin{align} + I_q^\text{cv} &= -I_q - I_\text{q,extra} \tag{2d} \\ + I_\text{q,extra} &= \max(K_{hv} (V_t - V_\text{olim})) \tag{2e} \\ + I_p^\text{cv} &= G_{lv} I_p \tag{2f} +\end{align}\]

    on which $G_{lv}$ is the gain used for Low Voltage Active Current Management and $I_\text{q,extra}$ is the additional current for High Voltage Reactive Current Management.

    It is important to note that both current commands coming from the inner control were obtained by dividing the active (or reactive) power by the magnitude voltage instead of using the correct phasor formula $I = (S/V)^*$. For that purpose, a correction factor must be applied to obtain the correct output currents in the network reference frame:

    \[\begin{align*} + I_r + jI_i &= (I_p + jI_q) \cdot V_t \cdot \frac{1}{V_r + jV_i} \\ + &= (I_p + jI_q) \cdot \frac{V_t}{V_t e^{j\theta}} \\ + &= (I_p + jI_q) \cdot e^{-j\theta} +\end{align*}\]

    This correction factor looks like a reference transformation that must be used to properly inject current into the grid. With that the output current is computed as:

    \[\begin{align} + I_r &= I_p^\text{cv} \cos(\theta) - I_q^\text{cv} \sin(\theta) \tag{2g} \\ + I_i &= I_p^\text{cv} \sin(\theta) + I_q^\text{cv} \cos(\theta) \tag{2h} +\end{align}\]

    This current source is usually modeled as a Norton equivalent using a parallel impedance with values $R_{sorce}$ and $X_{sorce}$ provided in the .raw file. If an RL filter is used, a Voltage Source behind that RL filter (i.e. the converter output voltage) can be computed as:

    \[\begin{align*} + Z_f &= r_f + jl_f \\ + Z_{sorce} &= R_{sorce} + jX_{sorce} \\ + I_{cv} &= I_r + jI_i \\ + v_r^\text{cv} + jv_i^\text{cv} &= \frac{I_{cv} + \frac{v^\text{grid}}{Z_f}}{\frac{1}{Z_{sorce}} + \frac{1}{Z_f}} \tag{2i} +\end{align*}\]

    diff --git a/previews/PR383/component_models/dc_source/index.html b/previews/PR383/component_models/dc_source/index.html new file mode 100644 index 000000000..477881022 --- /dev/null +++ b/previews/PR383/component_models/dc_source/index.html @@ -0,0 +1,2 @@ + +DC Sources · PowerSimulationsDynamics.jl

    DC Source

    This component can be used to model the dynamics of the DC side of the converter.

    Fixed DC Source [FixedDCSource]

    This is a model that set the DC voltage to a fixed value $v_{\text{dc}} = v_{\text{dc}}^{\text{fix}}$.

    diff --git a/previews/PR383/component_models/filters/index.html b/previews/PR383/component_models/filters/index.html new file mode 100644 index 000000000..5f513c216 --- /dev/null +++ b/previews/PR383/component_models/filters/index.html @@ -0,0 +1,13 @@ + +Filter · PowerSimulationsDynamics.jl

    Filters

    LCL Filter [LCLFilter]

    A standard LCL filter is proposed to connect the output of the converter to the grid. In this case, $v_r$ and $v_i$ are voltages in the capacitor, while $v_r^{\text{grid}}$ and $v_i^{\text{grid}}$ represent the voltage at the bus. The L filter after the capacitor can also include a step-up transformer to increase the voltage, that is model as an extra impedance.

    \[\begin{align} + \dot{i}_{r,\text{cv}} &= \frac{\Omega_b}{l_f}\left( v_r^{\text{cv}} - v_r - r_f i_{r,\text{cv}} + \omega_{\text{grid}} l_f i_{i,\text{cv}} \right) \tag{1a} \\ + \dot{i}_{i,\text{cv}} &= \frac{\Omega_b}{l_f}\left( v_i^{\text{cv}} - v_i - r_f i_{i,\text{cv}} - \omega_{\text{grid}} l_f i_{r,\text{cv}} \right) \tag{1b} \\ + \dot{v}_{r} &= \frac{\Omega_b}{c_f}\left( i_r^{\text{cv}} - i_r + \omega_{\text{grid}} c_f v_i \right) \tag{1c} \\ + \dot{v}_{i} &= \frac{\Omega_b}{c_f}\left( i_i^{\text{cv}} - i_i - \omega_{\text{grid}} c_f v_r \right) \tag{1d} \\ + \dot{i}_{r} &= \frac{\Omega_b}{l_g}\left( v_r - v_r^{\text{grid}} - r_g i_{r} + \omega_{\text{grid}} l_g i_{i} \right) \tag{1e} \\ + \dot{i}_{i} &= \frac{\Omega_b}{l_g}\left( v_i - v_i^{\text{grid}} - r_g i_{i} - \omega_{\text{grid}} l_g i_{r} \right) \tag{1f} +\end{align}\]

    on which

    \[\begin{align*} +v_r^\text{cv} + jv_i^\text{cv} = (v_d^\text{cv} + jv_q^\text{cv})e^{j\delta\theta_{olc}} +\end{align*}\]

    that comes from the converter model.

    RL Filter [RLFilter]

    The algebraic RL filter is used to connect the output of the converter through a RL series filter using algebraic phasor equations. The equations for the output current are:

    \[\begin{align} + i_r + ji_i &= \frac{(v_r^\text{cv} + j v_i^\text{cv}) - (v_r^\text{grid} + jv_i^\text{grid})}{r_f + jl_f} \tag{2a} +\end{align}\]

    on which $v_r^\text{cv} + jv_i^\text{cv}$ comes from the converter model.

    diff --git a/previews/PR383/component_models/freq_esti/index.html b/previews/PR383/component_models/freq_esti/index.html new file mode 100644 index 000000000..92ef814b5 --- /dev/null +++ b/previews/PR383/component_models/freq_esti/index.html @@ -0,0 +1,20 @@ + +Frequency Estimators · PowerSimulationsDynamics.jl

    Frequency Estimators

    This component is used to estimate the frequency of the grid based on the voltage at the bus.

    Fixed Frequency [FixedFrequency]

    This is a simple model that set the measured frequency to a desired constant value (i.e. does not measure the frequency) $\omega_{pll} = \omega_{\text{fix}}$ (usually $\omega_{\text{fix}} = 1.0$ p.u.). Used by default when grid-forming inverters do not use frequency estimators.

    Phase-Locked Loop (PLL) for VSM [KauraPLL]

    The following equations present a PLL used to estimate the frequency and PLL angle of the grid. There are two reference frames considered in this inverter. Those are the VSM of the outer-loop control $\theta_{\text{olc}}$ and the PLL one $\theta_{\text{pll}}$. The notation used a $\delta\theta$ refers as the variation of the respective angle $\theta^\text{grid}$ with respect to the grid SRF (instead of the fixed $\alpha$ component of the $\alpha\beta$ transformation):

    \[\begin{align} + +\dot{v}_{d,\text{pll}} &= \omega_{\text{lp}} \left [v_{d,\text{out}} - v_{d,\text{pll}} \right] \tag{1a} \\ +\dot{v}_{q,\text{pll}} &= \omega_{\text{lp}} \left [v_{q,\text{out}} - v_{q,\text{pll}} \right] \tag{1b} \\ +\dot{\varepsilon}_{\text{pll}} &= \tan^{-1}\left(\frac{v_{q,\text{pll}}}{v_{d,\text{pll}}} \right) \tag{1c} \\ +\dot{\theta}_{\text{pll}} &= \Omega_b \delta \omega_{\text{pll}} \tag{1d} +\end{align}\]

    with

    \[\begin{align} +\delta\omega_{\text{pll}} &= 1.0 - \omega_{\text{sys}} + k_{p,\text{pll}} \tan^{-1} \left(\frac{v_{q,\text{pll}}}{v_{d,\text{pll}}} \right) + k_{i,\text{pll}} \varepsilon_{\text{pll}} \tag{1e} \\ +\omega_{\text{pll}} &= \delta\omega_{\text{pll}} + \omega_{\text{sys}} \tag{1f} \\ +v_{d,\text{out}} + jv_{q,\text{out}} &= (v_r + jv_i)e^{-\delta\theta_\text{pll}} \tag{1g} +\end{align}\]

    on which $v_r + jv_i$ is the voltage in the grid reference frame on which the PLL is measuring (i.e. point of common coupling), that could be in the capacitor of an LCL filter or the last branch of such filter.

    Reduced Order Phase-Locked Loop (PLL) [ReducedOrderPLL]

    The following equations presents a simplified PLL used to estimate the frequency and PLL angle of the grid. The model attempts to steer the voltage in the q-axis to zero (i.e. lock the q-axis to zero) using a PI controller. With that the equations are given by:

    \[\begin{align} +\dot{v}_{q,\text{pll}} &= \omega_{\text{lp}} \left [v_{q,\text{out}} - v_{q,\text{pll}} \right] \tag{2a} \\ +\dot{\varepsilon}_{\text{pll}} &= v_{q,\text{pll}} \tag{2b} \\ +\dot{\theta}_{\text{pll}} &= \Omega_b \delta \omega_{\text{pll}} \tag{2c} +\end{align}\]

    with

    \[\begin{align} +\delta\omega_{\text{pll}} &= 1.0 - \omega_{\text{sys}} + k_{p,\text{pll}} v_{q,\text{pll}} + k_{i,\text{pll}} \varepsilon_{\text{pll}} \tag{2d} \\ +\omega_{\text{pll}} &= \delta\omega_{\text{pll}} + \omega_{\text{sys}} \tag{2e} \\ +v_{d,\text{out}} + jv_{q,\text{out}} &= (v_r + jv_i)e^{-\delta\theta_\text{pll}} \tag{2f} +\end{align}\]

    on which $v_r + jv_i$ is the voltage in the grid reference frame on which the PLL is measuring (i.e. point of common coupling), that could be in the capacitor of an LCL filter or the last branch of such filter.

    diff --git a/previews/PR383/component_models/inner_control/index.html b/previews/PR383/component_models/inner_control/index.html new file mode 100644 index 000000000..920def5e2 --- /dev/null +++ b/previews/PR383/component_models/inner_control/index.html @@ -0,0 +1,44 @@ + +Inner Control · PowerSimulationsDynamics.jl

    Inner Loop Controls

    This component defines voltage and current controllers to generate the reference signal for the converter. Although in many controls the current and voltage control are separate blocks we propose a more general control approach that considers them as a joint control logic.

    Integrated Virtual Impedance, Voltage and Current Controller [VoltageModeControl]

    The following model receives both the outer loop control frequency and reference voltage signal to generate the reference signal for the converters. The virtual impedance plays a similar role of the impedance of a synchronous generator. A PI voltage controller is used to generate the current signal that is used in the PI current controller to finally generate the voltage reference signal for the converters.

    \[\begin{align*} + \dot{\xi}_d &= v_{d,\text{vi}}^{\text{ref}} - v_d \tag{1a} \\ + \dot{\xi}_q &= v_{q,\text{vi}}^{\text{ref}} - v_q \tag{1b} \\ + \dot{\gamma}_d &= i_{d,\text{cv}}^{\text{ref}} - i_{d,\text{cv}} \tag{1c} \\ + \dot{\gamma}_q &= i_{q,\text{cv}}^{\text{ref}} - i_{q,\text{cv}} \tag{1d} \\ + \dot{\phi}_d &= \omega_{\text{ad}}(v_d - \phi_d) \tag{1e} \\ + \dot{\phi}_q &= \omega_{\text{ad}}(v_q - \phi_q) \tag{1f} +\end{align*}\]

    with

    \[\begin{align} + v_{d,\text{vi}}^{\text{ref}} &= v_{\text{olc}}^{\text{ref}} - r_v i_d + \omega_{\text{olc}} l_v i_q \tag{1g} \\ + v_{q,\text{vi}}^{\text{ref}} &= - r_v i_q - \omega_{\text{olc}} l_v i_d \tag{1h} \\ + i_{d,\text{cv}}^{\text{ref}} &= k_{pv}\left(v_{d,\text{vi}}^{\text{ref}} - v_d\right) + k_{iv} \xi_d - c_f \omega_{\text{olc}} v_q + k_{\text{ffi}}i_d \tag{1i} \\ + i_{q,\text{cv}}^{\text{ref}} &= k_{pv}\left(v_{q,\text{vi}}^{\text{ref}} - v_q\right) + k_{iv} \xi_q + c_f \omega_{\text{olc}} v_d + k_{\text{ffi}}i_q \tag{1j} \\ + v_d^{\text{ref-signal}} &= k_{pc} \left(i_{d,\text{cv}}^{\text{ref}} - i_{d,\text{cv}}\right) + k_{ic} \gamma_d - \omega_{\text{olc}} l_f i_{q,\text{cv}} + k_{\text{ffv}}v_d - k_{\text{ad}}(v_d - \phi_d) \tag{1k} \\ + v_q^{\text{ref-signal}} &= k_{pc} \left(i_{q,\text{cv}}^{\text{ref}} - i_{q,\text{cv}}\right) + k_{ic} \gamma_q + \omega_{\text{olc}} l_f i_{d,\text{cv}} + k_{\text{ffv}}v_q - k_{\text{ad}}(v_q - \phi_q) \tag{1l} +\end{align}\]

    In here the transformation to the $dq$ reference frame is using the outer-loop reference angle as:

    \[\begin{align*} +v_d + jv_q = (v_r + jv_i)e^{-j\delta\theta_{olc}} \\ +i_d + ji_q = (i_r + ji_i)e^{-j\delta\theta_{olc}} +\end{align*}\]

    that again $v_r + jv_i$ could be in the capacitor or the last branch of the filter (i.e. the point of common coupling). For LCL filters it is considered in the capacitor. In the case of the converter, the transformation is directly

    \[\begin{align*} +i_{d,\text{cv}} + ji_{q,\text{cv}} = (i_{r,\text{cv}} + ji_{i,\text{cv}})e^{-j\delta\theta_{olc}} +\end{align*}\]

    Current Mode Controller [CurrentModeControl]

    The following model receives the current reference (in $dq$ axis) from an outer loop controller that outputs current references such as the PI outer controller used for grid following inverters. A PI current controller is used to generate the voltage reference signal for the converters.

    \[\begin{align*} + \dot{\gamma}_d &= i_{d,\text{cv}}^{\text{ref}} - i_{d,\text{cv}} \tag{2a} \\ + \dot{\gamma}_q &= i_{q,\text{cv}}^{\text{ref}} - i_{q,\text{cv}} \tag{2b} \\ +\end{align*}\]

    with

    \[\begin{align} + v_d^{\text{ref-signal}} &= k_{pc} \left(i_{d,\text{cv}}^{\text{ref}} - i_{d,\text{cv}}\right) + k_{ic} \gamma_d - \omega_{\text{olc}} l_f i_{q,\text{cv}} + k_{\text{ffv}}v_d \tag{2b} \\ + v_q^{\text{ref-signal}} &= k_{pc} \left(i_{q,\text{cv}}^{\text{ref}} - i_{q,\text{cv}}\right) + k_{ic} \gamma_q + \omega_{\text{olc}} l_f i_{d,\text{cv}} + k_{\text{ffv}}v_q \tag{2c} +\end{align}\]

    The transformation for the converter current is computed as:

    \[\begin{align*} +i_{d,\text{cv}} + ji_{q,\text{cv}} = (i_{r,\text{cv}} + ji_{i,\text{cv}})e^{-j\theta_{olc}} +\end{align*}\]

    In here $\theta_{olc}$ is the outer-loop angle. In the case of grid-following models, this angle is equal to the angle provided from the PLL.

    Generic Renewable Inner Controller Type B [RECurrentControlB]

    This models the inner control part of the REECB model. The equations (without limiters) when Q_Flag = 1 are:

    \[\begin{align} + T_{rv} \dot{V}_\text{t,flt} &= V_t - \dot{V}_\text{t,flt} \tag{3a} \\ + \dot{\xi}_{icv} &= V_\text{oc,qcmd} \tag{3b} +\end{align}\]

    on which $V_\text{oc,qcmd}$ comes from the Outer Controller and the output current commands $I_\text{pcmd}$ and $I_\text{qcmd}$ are computed as:

    \[\begin{align} + I_\text{pcmd} &= I_\text{oc, pcmd} \tag{3c} \\ + I_\text{qcmd} &= I_{icv} + I_\text{qinj} \tag{3d} \\ + I_{icv} &= K_{vp} V_\text{oc,qcmd} + K_{vi} \xi_{icv} \tag{3e} \\ + I_{\text{qinj}} &= K_{qv} (V_\text{ref0} - V_\text{t,flt}) \tag{3f} +\end{align}\]

    The equations when Q_Flag = 0 are:

    \[\begin{align} + T_{rv} \dot{V}_\text{t,flt} &= V_t - \dot{V}_\text{t,flt} \tag{3g} \\ + T_{iq} \dot{I}_{icv} &= I_\text{oc,qcmd} - I_{icv} \tag{3h} +\end{align}\]

    on which $I_\text{oc,qcmd}$ comes from the Outer Controller and the output current commands $I_\text{pcmd}$ and $I_\text{qcmd}$ are computed as:

    \[\begin{align} + I_\text{pcmd} &= I_\text{oc, pcmd} \tag{3i} \\ + I_\text{qcmd} &= I_{icv} + I_\text{qinj} \tag{3j} \\ + I_{\text{qinj}} &= K_{qv} (V_\text{ref0} - V_\text{t,flt}) \tag{3k} +\end{align}\]

    diff --git a/previews/PR383/component_models/loads/index.html b/previews/PR383/component_models/loads/index.html new file mode 100644 index 000000000..7cff67dc7 --- /dev/null +++ b/previews/PR383/component_models/loads/index.html @@ -0,0 +1,75 @@ + +Load Models · PowerSimulationsDynamics.jl

    Here we discuss the models used to describe load modeling in PowerSimulationsDynamics.jl. In a similar fashion of other devices, loads will withdraw power (i.e. current) from the current-injection balances at the nodal level. Based on the specified parameters and model chosen, the equations for computing such withdrawal will change.

    Static Loads (or Algebraic Loads)

    ZIP + Exponential Load Model

    PowerSimulationsDynamics.jl uses all the static ZIP and exponential loads at each bus to obtain a single structure that creates an aggregate ZIP load model and a collection of all exponential loads.

    The ZIP load model given by:

    \[\begin{align} +P_\text{zip} &= P_\text{power} + P_\text{current} \cdot \frac{V}{V_0} + P_\text{impedance} \cdot \left(\frac{V}{V_0}\right)^2 \tag{1a}\\ +Q_\text{zip} &= Q_\text{power} + Q_\text{current} \cdot \frac{V}{V_0} + Q_\text{impedance} \cdot \left(\frac{V}{V_0}\right)^2\tag{1b} +\end{align}\]

    with $V = \sqrt{V_r^2 + V_i^2}$ and $V_0$ the voltage magnitude from the power flow solution.

    The current taken for the load is computed as:

    \[\begin{align} +I_\text{zip} &= \frac{(P_\text{zip} + j Q_\text{zip})^*}{(V_r + j V_i)^*}\tag{1c} \\ +I_\text{zip} &= \frac{P_\text{zip} - j Q_\text{zip}}{V_r - j V_i}\tag{1d} +\end{align}\]

    For constant impedance load, the current obtained is:

    \[\begin{align} +I_\text{re}^z &= \frac{1}{V_0^2} \cdot (V_r \cdot P_\text{impedance} + V_i \cdot Q_\text{impedance})\tag{1e} \\ +I_\text{im}^z &= \frac{1}{V_0^2} \cdot (V_i \cdot P_\text{impedance} - V_r \cdot Q_\text{impedance})\tag{1f} +\end{align}\]

    For constant current load, the current obtained is:

    \[\begin{align} +I_\text{re}^i &= \frac{1}{V_0} \cdot \frac{V_r * P_\text{current} + V_i * Q_\text{current}}{V} \tag{1g}\\ +I_\text{im}^i &= \frac{1}{V_0} \cdot \frac{V_i * P_\text{current} - V_r * Q_\text{current}}{V} \tag{1h} +\end{align}\]

    For constant power load, the current obtained is:

    \[\begin{align} +I_\text{re}^p = \frac{V_r \cdot P_\text{power} + V_i \cdot Q_\text{power}}{V^2} \tag{1i} \\ +I_\text{im}^p = \frac{V_i \cdot P_\text{power} - V_r \cdot Q_\text{power}}{V^2} \tag{1j} +\end{align}\]

    Then the total current withdrawed from the ZIP load model is simply

    \[\begin{align} +I_\text{zip}^\text{re} &= I_\text{re}^z + I_\text{re}^i + I_\text{re}^p \tag{1k} \\ +I_\text{zip}^\text{im} &= I_\text{im}^z + I_\text{im}^i + I_\text{im}^p \tag{1l} +\end{align}\]

    On the case of Exponential Loads, the model is given by:

    \[\begin{align} +P_\text{exp} = P_0 \cdot \left(\frac{V}{V_0}\right)^\alpha \tag{1m}\\ +Q_\text{exp} = Q_0 \cdot \left(\frac{V}{V_0}\right)^\beta \tag{1n} +\end{align}\]

    The current taken for the load is computed as:

    \[\begin{align} +I_\text{exp} &= \frac{(P_\text{exp} + j Q_\text{exp})^*}{(V_r + j V_i)^*} \tag{1o} \\ +I_\text{exp} &= \frac{P_\text{exp} - j Q_\text{exp}}{V_r - j V_i} \tag{1p} +\end{align}\]

    that results:

    \[\begin{align} +I_\text{exp}^\text{re} &= V_r \cdot P_0 \cdot \frac{V^{\alpha - 2}}{V_0^\alpha} + V_i \cdot Q_0 \cdot \frac{V^{\beta - 2}}{V_0^\beta} \tag{1q}\\ +I_\text{exp}^\text{im} &= V_i \cdot P_0 \cdot \frac{V^{\alpha - 2}}{V_0^\alpha} - V_r \cdot Q_0 \cdot \frac{V^{\beta - 2}}{V_0^\beta} \tag{1r} +\end{align}\]

    Dynamic loads

    5th-order Single Cage Induction Machine [SingleCageInductionMachine]

    The following model is used to model a 5th-order induction machine with a quadratic relationship speed-torque. Refer to "Analysis of Electric Machinery and Drive Systems" by Paul Krause, Oleg Wasynczuk and Scott Sudhoff for the equations derivation

    \[\begin{align} +\dot{\psi}_{qs} &= \Omega_b (v_{qs} - \omega_\text{sys} \psi_{ds} - R_s i_{qs}) \tag{2a}\\ +\dot{\psi}_{ds} &= \Omega_b (v_{ds} + \omega_\text{sys} \psi_{qs} - R_s i_{ds}) \tag{2b} \\ +\dot{\psi}_{qr} &= \Omega_b \left(v_{qr} - (\omega_\text{sys} - \omega_r) \psi_{dr} + \frac{R_r}{X_{lr}} (\psi_{mq} - \psi_{qr})\right) \tag{2c}\\ +\dot{\psi}_{dr} &= \Omega_b \left(v_{dr} + (\omega_\text{sys} - \omega_r) \psi_{qr} + \frac{R_r}{X_{lr}} (\psi_{md} - \psi_{dr})\right) \tag{2d}\\ +\dot{\omega}_r &= \frac{1}{2H} (\tau_e - \tau_{m0}(A \omega_r^2 + B \omega_r + C)) \tag{2e} +\end{align}\]

    where:

    \[\begin{align*} +X_{ad} = X_{aq} &= \left(\frac{1}{X_m} + \frac{1}{X_{ls}} + \frac{1}{X_{lr}}\right)^{-1} \\ +v_{qs} &= V_i^\text{bus} \\ +v_{ds} &= V_r^\text{bus} \\ +v_{qr} = v_{dr} &= 0 \\ +\psi_{mq} &= X_{aq} \left(\frac{\psi_{qs}}{X_{ls}}+ \frac{\psi_{qr}}{X_{lr}}\right) \\ +\psi_{md} &= X_{ad} \left(\frac{\psi_{ds}}{X_{ls}}+ \frac{\psi_{dr}}{X_{lr}}\right) \\ +i_{qs} &= \frac{1}{X_{ls}} (\psi_{qs} - \psi_{mq}) \\ +i_{ds} &= \frac{1}{X_{ls}} (\psi_{ds} - \psi_{md}) \\ +\tau_e &= \psi_{ds} i_{qs} - \psi_{qs} i_{ds} +\end{align*}\]

    Finally, the withdrawed current from the bus is:

    \[\begin{align*} +I_r = \left(\frac{S_\text{motor}}{S_\text{base}}\right) (i_{ds} - v_{qs} B_{sh}) \\ +I_i = \left(\frac{S_\text{motor}}{S_\text{base}}\right) (i_{qs} + v_{ds} B_{sh}) +\end{align*}\]

    3rd-order Single Cage Induction Machine [SimplifiedSingleCageInductionMachine]

    The following models approximates the stator fluxes dynamics of the 5th-order model by using algebraic equations.

    \[\begin{align} +\dot{\psi}_{qr} &= \Omega_b \left(v_{qr} - (\omega_\text{sys} - \omega_r) \psi_{dr} - R_r i_{qr} \right) \tag{3a} \\ +\dot{\psi}_{dr} &= \Omega_b \left(v_{dr} + (\omega_\text{sys} - \omega_r) \psi_{qr} - R_r i_{dr}\right) \tag{3b} \\ +\dot{\omega}_r &= \frac{1}{2H} (\tau_e - \tau_{m0}(A \omega_r^2 + B \omega_r + C)) \tag{3c} +\end{align}\]

    where

    \[\begin{align*} +v_{qs} &= V_i^\text{bus} \\ +v_{ds} &= V_r^\text{bus} \\ +v_{qr} = v_{dr} &= 0 \\ +i_{qs} &= \frac{1}{R_s^2 + \omega_\text{sys}^2 X_p^2} \left( (R_s v_{qs} - \omega_\text{sys} X_p v_{ds}) - \left(R_s \omega_\text{sys} \frac{X_m}{X_{rr}} \psi_{dr} + \omega_\text{sys}^2 X_p \frac{X_m}{X_{rr}} \psi_{qr} \right) \right) \\ +i_{ds} &= \frac{1}{R_s^2 + \omega_\text{sys}^2 X_p^2} \left( (R_s v_{ds} + \omega_\text{sys} X_p v_{qs}) - \left(-R_s \omega_\text{sys} \frac{X_m}{X_{rr}} \psi_{qr} + \omega_\text{sys}^2 X_p \frac{X_m}{X_{rr}} \psi_{dr} \right) \right) \\ +i_{qr} &= \frac{1}{X_{rr}} (\psi_{qr} - X_m i_{qs}) \\ +i_{dr} &= \frac{1}{X_{rr}} (\psi_{dr} - X_m i_{ds}) \\ +\tau_e &= \psi_{qr} i_{dr} - \psi_{dr} i_{qr} +\end{align*}\]

    Finally, the withdrawed current from the bus is:

    \[\begin{align*} +I_r = \left(\frac{S_\text{motor}}{S_\text{base}}\right) (i_{ds} - v_{qs} B_{sh}) \\ +I_i = \left(\frac{S_\text{motor}}{S_\text{base}}\right) (i_{qs} + v_{ds} B_{sh}) +\end{align*}\]

    Active Constant Power Load Model

    The following 12-state model Active Load model that measures the AC side using a Phase-Lock-Loop (PLL) and regulates a DC voltage to supply a resistor $r_L$. This model induces a constant power load-like behavior as it tries to maintain a fixed DC voltage to supply $P = v_\text{DC}^2 / r_L$. The model is based on the following reference.

    The complete model is given by:

    \[\begin{align} + \dot{\theta} &= \Omega_b (\omega_\text{pll} - \omega_s) \tag{4a} \\ + \dot{\epsilon} &= v_\text{o}^q \tag{4b}\\ + \omega_\text{pll} &= \omega^\star + k^p_\text{pll} v_\text{o}^q + k_\text{pll}^i \epsilon \tag{4c}\\ + \dot{\zeta} &= v_\text{DC}^\star - v_\text{DC} \tag{4d} \\ + i_\text{cv}^{d,\star} &= k_\text{DC}^p ( v_\text{DC}^\star - v_\text{DC}) + k_\text{DC}^i \zeta \tag{4e} \\ + \frac{c_\text{DC}}{\Omega_b} \dot{v}_\text{DC} &= \frac{p_\text{cv}}{v_\text{DC}} - \frac{v_\text{DC}}{r_L} \tag{4f} \\ + \dot{\gamma}_d &= i_\text{cv}^d - i_\text{cv}^{d,\star} \tag{4g}\\ + \dot{\gamma}_q &= i_\text{cv}^q - i_\text{cv}^{q,\star} \tag{4h} \\ + v_\text{cv}^{d,\star} &= k_\text{pc}( i_\text{cv}^d - i_\text{cv}^{d,\star}) + k_\text{ic} \gamma_d + \omega_\text{pll} l_f i_\text{cv}^q \tag{4i}\\ + v_\text{cv}^{q,\star} &= k_\text{pc}( i_\text{cv}^q - i_\text{cv}^{q,\star}) + k_\text{ic} \gamma_q - \omega_\text{pll} l_f i_\text{cv}^d \tag{4j} +\end{align}\]

    Equations (4a)–(4c) describes the PLL dynamics to lock the active load to the grid. Equations (4d)-(4e) describes the DC Voltage Controller to steer the DC voltage to $v_\text{DC}^\star$, while equation (4f) describes the DC voltage dynamics at the capacitor assuming an ideal converter. Finally, equations (4g)–(4j) describes the dynamics of the AC Current Controller. Additionally six states are defined for the LCL filter in a similar fashion of GFM inverters.

    diff --git a/previews/PR383/component_models/machines/index.html b/previews/PR383/component_models/machines/index.html new file mode 100644 index 000000000..7e53c431e --- /dev/null +++ b/previews/PR383/component_models/machines/index.html @@ -0,0 +1,103 @@ + +Machine · PowerSimulationsDynamics.jl

    Machines

    The machine component describes the stator-rotor electromagnetic dynamics.

    Classical Model (Zero Order) [BaseMachine]

    This is the classical order model that does not have differential equations in its machine model ($\delta$ and $\omega$ are defined in the shaft):

    \[\begin{align} + \left[ \begin{array}{c} i_d \\ i_q \end{array} \right] &= \left[ \begin{array}{cc} r_a & -x_d' \\ x_d' & r_a \end{array} \right]^{-1} \left[ \begin{array}{c} -v_d \\ e_q' - v_q \end{array} \right] \tag{1a}\\ +p_e \approx \tau_e &= (v_q + r_a i_q)i_q + (v_d + r_ai_d)i_d \tag{1b} +\end{align}\]

    One d- One q- Model (2nd Order) [OneDOneQMachine]

    This model includes two transient emf with their respective differential equations:

    \[\begin{align} +\dot{e}_q' &= \frac{1}{T_{d0}'} \left[-e_q' + (x_d-x_d')i_d + v_f\right] \tag{2a}\\ +\dot{e}_d' &= \frac{1}{T_{q0}'} \left[-e_d' + (x_q-x_q')i_q \right] \tag{2b}\\ + \left[ \begin{array}{c} i_d \\ i_q \end{array} \right] &= \left[ \begin{array}{cc} r_a & -x_q' \\ x_d' & r_a \end{array} \right]^{-1} \left[ \begin{array}{c} e_d'-v_d \\ e_q' - v_q \end{array} \right] \tag{2c}\\ +p_e \approx \tau_e &= (v_q + r_a i_q)i_q + (v_d + r_ai_d)i_d \tag{2d} +\end{align}\]

    Marconato Machine (6th Order) [MarconatoMachine]

    The Marconato model defines 6 differential equations, two for stator fluxes and 4 for transient and subtransient emfs:

    \[\begin{align} +\dot{\psi}_d &= \Omega_b(r_ai_d + \omega \psi_q + v_d) \tag{3a} \\ +\dot{\psi}_q &= \Omega_b(r_ai_q - \omega \psi_d + v_q) \tag{3b} \\ +\dot{e}_q' &= \frac{1}{T_{d0}'} \left[-e_q' - (x_d-x_d'-\gamma_d)i_d + \left(1- \frac{T_{AA}}{T_{d0}'} \right) v_f\right] \tag{3c}\\ +\dot{e}_d' &= \frac{1}{T_{q0}'} \left[-e_d' + (x_q-x_q'-\gamma_q)i_q \right] \tag{3d}\\ +\dot{e}_q'' &= \frac{1}{T_{d0}''} \left[-e_q'' + e_q' - (x_d'-x_d''+\gamma_d)i_d + \frac{T_{AA}}{T_{d0}'}v_f \right] \tag{3e} \\ +\dot{e}_d'' &= \frac{1}{T_{q0}''} \left[-e_d'' + e_d' + (x_q'-x_q''+\gamma_q)i_q \right] \tag{3f} \\ +i_d &= \frac{1}{x_d''} (e_q'' - \psi_d) \tag{3g} \\ +i_q &= \frac{1}{x_q''} (-e_d'' - \psi_q) \tag{3h} \\ +\tau_e &= \psi_d i_q - \psi_q i_d \tag{3i} +\end{align}\]

    with

    \[\begin{align*} + \gamma_d &= \frac{T_{d0}'' x_d''}{T_{d0}' x_d'} (x_d - x_d') \\ + \gamma_q &= \frac{T_{q0}'' x_q''}{T_{q0}' x_q'} (x_q - x_q') +\end{align*}\]

    Simplified Marconato Machine (4th Order) [SimpleMarconatoMachine]

    This model neglects the derivative of stator fluxes ($\dot{\psi}_d$ and $\dot{\psi}_q$) and assume that the rotor speed stays close to 1 pu ($\omega\psi_{d}=\psi_{d}$ and $\omega\psi_{q}=\psi_{q}$) that allows to remove the stator fluxes variables from the Marconato model.

    \[\begin{align} +\dot{e}_q' &= \frac{1}{T_{d0}'} \left[-e_q' - (x_d-x_d'-\gamma_d)i_d + \left(1- \frac{T_{AA}}{T_{d0}'} \right) v_f\right] \tag{4a}\\ +\dot{e}_d' &= \frac{1}{T_{q0}'} \left[-e_d' + (x_q-x_q'-\gamma_q)i_q \right] \tag{4b}\\ +\dot{e}_q'' &= \frac{1}{T_{d0}''} \left[-e_q'' + e_q' - (x_d'-x_d''+\gamma_d)i_d + \frac{T_{AA}}{T_{d0}'}v_f \right] \tag{4c} \\ +\dot{e}_d'' &= \frac{1}{T_{q0}''} \left[-e_d'' + e_d' + (x_q'-x_q''+\gamma_q)i_q \right] \tag{4d} \\ +\left[ \begin{array}{c} i_d \\ i_q \end{array} \right] &= \left[ \begin{array}{cc} r_a & -x_q'' \\ x_d'' & r_a \end{array} \right]^{-1} \left[ \begin{array}{c} e_d''-v_d \\ e_q'' - v_q \end{array} \right] \tag{4e}\\ +p_e \approx \tau_e &= (v_q + r_a i_q)i_q + (v_d + r_ai_d)i_d \tag{4f} +\end{align}\]

    with

    \[\begin{align*} + \gamma_d &= \frac{T_{d0}'' x_d''}{T_{d0}' x_d'} (x_d - x_d') \\ + \gamma_q &= \frac{T_{q0}'' x_q''}{T_{q0}' x_q'} (x_q - x_q') +\end{align*}\]

    Anderson-Fouad Machine (6th Order) [AndersonFouadMachine]

    The Anderson-Fouad model also defines 6 differential equations, two for stator fluxes and 4 for transient and subtransient emfs and is derived from the Marconato model by defining $\gamma_d \approx \gamma_q \approx T_{AA} \approx 0$:

    \[\begin{align} +\dot{\psi}_d &= \Omega_b(r_ai_d + \omega \psi_q + v_d) \tag{5a} \\ +\dot{\psi}_q &= \Omega_b(r_ai_q - \omega \psi_d + v_q) \tag{5b} \\ +\dot{e}_q' &= \frac{1}{T_{d0}'} \left[-e_q' - (x_d-x_d')i_d + v_f\right] \tag{5c}\\ +\dot{e}_d' &= \frac{1}{T_{q0}'} \left[-e_d' + (x_q-x_q')i_q \right] \tag{5d}\\ +\dot{e}_q'' &= \frac{1}{T_{d0}''} \left[-e_q'' + e_q' - (x_d'-x_d'')i_d \right] \tag{5e} \\ +\dot{e}_d'' &= \frac{1}{T_{q0}''} \left[-e_d'' + e_d' + (x_q'-x_q'')i_q \right] \tag{5f} \\ +i_d &= \frac{1}{x_d''} (e_q'' - \psi_d) \tag{5g} \\ +i_q &= \frac{1}{x_q''} (-e_d'' - \psi_q) \tag{5h} \\ +\tau_e &= \psi_d i_q - \psi_q i_d \tag{5i} +\end{align}\]

    Simplified Anderson-Fouad Machine (4th Order) [SimpleAFMachine]

    Similar to the Simplified Marconato Model, this model neglects the derivative of stator fluxes ($\dot{\psi}_d$ and $\dot{\psi}_q$) and assume that the rotor speed stays close to 1 pu ($\omega \psi_d = \psi_d$ and $\omega \psi_q = \psi_q$) that allows to remove the stator fluxes variables from the model:

    \[\begin{align} +\dot{e}_q' &= \frac{1}{T_{d0}'} \left[-e_q' - (x_d-x_d')i_d + v_f\right] \tag{6a}\\ +\dot{e}_d' &= \frac{1}{T_{q0}'} \left[-e_d' + (x_q-x_q')i_q \right] \tag{6b}\\ +\dot{e}_q'' &= \frac{1}{T_{d0}''} \left[-e_q'' + e_q' - (x_d'-x_d'')i_d \right] \tag{6c} \\ +\dot{e}_d'' &= \frac{1}{T_{q0}''} \left[-e_d'' + e_d' + (x_q'-x_q'')i_q \right] \tag{6d} \\ +\left[ \begin{array}{c} i_d \\ i_q \end{array} \right] &= \left[ \begin{array}{cc} r_a & -x_q'' \\ x_d'' & r_a \end{array} \right]^{-1} \left[ \begin{array}{c} e_d''-v_d \\ e_q'' - v_q \end{array} \right] \tag{6e}\\ +p_e \approx \tau_e &= (v_q + r_a i_q)i_q + (v_d + r_ai_d)i_d \tag{6f} +\end{align}\]

    Round Rotor Machine (4th Order) [RoundRotorQuadratic, RoundRotorExponential]

    This model represents the traditional round rotor models GENROU/GENROE models implemented in PSLF/PSSE/PowerWorld. Similar to the Simplified Marconato Model, this model neglects the derivative of stator fluxes ($\dot{\psi}_d$ and $\dot{\psi}_q$). Round rotor machines must satisfy $x_d'' = x_q''$.

    \[\begin{align} +\dot{e}_q' &= \frac{1}{T_{d0}'} \left[v_f - X_{ad}I_{fd}\right] \tag{7a}\\ +\dot{e}_d' &= \frac{1}{T_{q0}'} \left[-X_{aq}I_{1q} \right] \tag{7b}\\ +\dot{\psi}_{kd} &= \frac{1}{T_{d0}''} \left[-\psi_{kd} + e_q' - (x_d'-x_l)i_d \right] \tag{7c} \\ +\dot{\psi}_{kq} &= \frac{1}{T_{q0}''} \left[-\psi_{kq} + e_d' + (x_q'-x_l)i_q \right] \tag{7d} \\ +\end{align}\]

    with:

    \[\begin{align} +\gamma_{d1} &= \frac{x_d'' - x_l}{x_d' - x_l} \tag{7e}\\ +\gamma_{q1} &= \frac{x_q'' - x_l}{x_q' - x_l} \tag{7f}\\ +\gamma_{d2} &= \frac{x_d' - x_d''}{(x_d'-x_l)^2} \tag{7g}\\ +\gamma_{q2} &= \frac{x_q' - x_q''}{(x_q' - x_l)^2} \tag{7h}\\ +\gamma_{qd} &= \frac{x_q - x_l}{x_d - x_l} \tag{7i}\\ +\psi_q'' &= \gamma_{q1} e_d' + \psi_{kq} (1 - \gamma_{q1}) \tag{7j}\\ +\psi_d'' &= \gamma_{d1} e_q' + \gamma_{d2} (x_d' - x_l) \psi_{kd} \tag{7k}\\ +\psi'' &= \sqrt{(\psi_d'')^2 + (\psi_q'')^2} \tag{7l}\\ +\left[ \begin{array}{c} i_d \\ i_q \end{array} \right] &= \left[ \begin{array}{cc} -r_a & x_q'' \\ -x_d'' & r_a \end{array} \right]^{-1} \left[ \begin{array}{c} v_d - \psi_q'' \\ -v_q + \psi_d'' \end{array} \right] \tag{7m}\\ +X_{ad}I_{fd} &= e_q' + (x_d - x_d') (\gamma_{d1} i_d - \gamma_{d2} \psi_{kd} + \gamma_{d2} + e_q') + \text{Se}(\psi'') \psi_d'' \tag{7n}\\ +X_{aq}I_{1q} &= e_d' + (x_q - x_q') (\gamma_{q2} e_d' - \gamma_{q2}\psi_{kq} - \gamma_{q1} i_q) + \text{Se}(\psi'') \psi_q'' \gamma_{qd} \tag{7o} \\ +\tau_e &= i_d (r_a i_d + v_d) + i_q(r_a i_q + v_q) \tag{7p} +\end{align}\]

    The difference between GENROU and GENROE occurs in which additive saturation function $\text{Se}(\psi'')$ is used. Input data is provided by the saturation values at $\psi'' = 1.0$ and $\psi'' = 1.2$ p.u. For the GENROU model, the function used is:

    \[\begin{align} +\text{Se}(\psi'') &= \frac{B(\psi'' - A)^2 }{\psi''} \tag{7q} +\end{align}\]

    and for the GENROE model the function used is:

    \[\begin{align} +\text{Se}(\psi'') &= B(\psi'')^A \tag{7r} +\end{align}\]

    The parameters $A$ and $B$ for each function are computed using the two points given $(1.0, \text{Se}(1.0))$ and $(1.2, \text{Se}(1.2))$.

    Salient Pole Machine (3rd Order) [SalientPoleQuadratic, SalientPoleExponential]

    This model represents the traditional round rotor models GENSAL/GENSAE models implemented in PSLF/PSSE/PowerWorld. Similar to the GENROU Model, this model neglects the derivative of stator fluxes ($\dot{\psi}_d$ and $\dot{\psi}_q$).

    \[\begin{align} +\dot{e}_q' &= \frac{1}{T_{d0}'} \left[v_f - X_{ad}I_{fd}\right] \tag{8a}\\ +\dot{\psi}_{kd} &= \frac{1}{T_{d0}''} \left[-\psi_{kd} + e_q' - (x_d'-x_l)i_d \right] \tag{8b} \\ +\dot{\psi}_{q}'' &= \frac{1}{T_{q0}''} \left[-\psi_{q}'' - (x_q-x_q'')i_q \right] \tag{8c} \\ +\end{align}\]

    with:

    \[\begin{align} +\gamma_{d1} &= \frac{x_d'' - x_l}{x_d' - x_l} \tag{8d}\\ +\gamma_{q1} &= \frac{x_q'' - x_l}{x_q' - x_l} \tag{8e}\\ +\gamma_{d2} &= \frac{x_d' - x_d''}{(x_d'-x_l)^2} \tag{8f}\\ +\psi_d'' &= \gamma_{d1} e_q' + \gamma_{q1} \psi_{kd} \tag{8g}\\ +\left[ \begin{array}{c} i_d \\ i_q \end{array} \right] &= \left[ \begin{array}{cc} -r_a & x_q'' \\ -x_d'' & r_a \end{array} \right]^{-1} \left[ \begin{array}{c} v_d - \psi_q'' \\ -v_q + \psi_d'' \end{array} \right] \tag{8h}\\ +X_{ad}I_{fd} &= e_q' + \text{Se}(e_q') e_q' + (x_d - x_d') (i_d + \gamma_{d2} (e_q' - \psi_{kd} - (x_d' - x_l)i_d) \tag{8i}\\ +\tau_e &= i_d (r_a i_d + v_d) + i_q(r_a i_q + v_q) \tag{8j} +\end{align}\]

    The difference between GENSAL and GENSAE occurs in which additive saturation function $\text{Se}(e_q')$ is used. Input data is provided by the saturation values at $e_q' = 1.0$ and $e_q' = 1.2$ p.u. For the GENSAL model, the function used is:

    \[\begin{align} +\text{Se}(e_q') &= \frac{B(e_q' - A)^2 }{\e_q'} \tag{8k} +\end{align}\]

    and for the GENSAE model the function used is:

    \[\begin{align} +\text{Se}(e_q') &= B(e_q')^A \tag{8l} +\end{align}\]

    The parameters $A$ and $B$ for each function are computed using the two points given $(1.0, \text{Se}(1.0))$ and $(1.2, \text{Se}(1.2))$.

    SauerPai Machine (6th Order) [SauerPaiMachine]

    The Sauer Pai model defines 6 differential equations as follows:

    \[\begin{align} +\dot{\psi}_d &= \Omega_b(r_ai_d + \omega \psi_q + v_d) \tag{9a} \\ +\dot{\psi}_q &= \Omega_b(r_ai_q - \omega \psi_d + v_q) \tag{9b} \\ +\dot{e}_q' &= \frac{1}{T_{d0}'} \left[(-e_q' - (x_d - x_d')(i_d + \gamma_{d2} \cdot \dot{\psi}_d'') + v_f)\right] \tag{9c}\\ +\dot{e}_q' &= \frac{1}{T_{q0}'} \left[(-e_d' + (x_q - x_q')(i_q + \gamma_{q2} \cdot \dot{\psi}_q''))\right] \tag{9d}\\ +\dot{\psi}_d'' &= \frac{1}{T_{d0}''} \left[(-\psi_d'' + e_q' - (x_d' - x_l)\cdot i_d)\right] \tag{9e} \\ +\dot{\psi}_q'' &= \frac{1}{T_{q0}''} \left[(-\psi_q'' - e_d' - (x_q' - x_l)\cdot i_q)\right] \tag{9f} \\ +i_d &= \frac{1}{x_d''} (\gamma_{d1} \cdot e_q' - \psi_d + (1 - \gamma_{d1}) * \psi_d'') \tag{9g} \\ +i_q &= \frac{1}{x_q''} ((-\gamma_{q1} \cdot e_d' - \psi_q + (1 - \gamma_{q1}) \cdot \psi_q'') \tag{9h} \\ +\tau_e &= \psi_d i_q - \psi_q i_d \tag{9i} +\end{align}\]

    with

    \[\begin{align*} + \gamma_{d1} &= \frac{x_d'' - x_l}{x_d' - x_l} \\ + \gamma_{q1} &= \frac{x_q'' - x_l}{x_q' - x_l} \\ + \gamma_{d2} &= \frac{1 - \gamma_d1}{x_d' - x_l} \\ + \gamma_{q2} &= \frac{1 - \gamma_q1}{x_q' - x_l} +\end{align*}\]

    diff --git a/previews/PR383/component_models/network/index.html b/previews/PR383/component_models/network/index.html new file mode 100644 index 000000000..db3595397 --- /dev/null +++ b/previews/PR383/component_models/network/index.html @@ -0,0 +1,13 @@ + +Network · PowerSimulationsDynamics.jl

    Network model

    Here we discuss the models used to describe the network in PowerSimulationsDynamics.jl. This is based on a standard current injection model as defined in Power System Modelling and Scripting. The numerical advantages of current injection models outweigh the complexities of implementing constant power loads for longer-term transient stability analysis. The network is defined in a synchronous reference frame (SRF), named the RI (real-imaginary) reference frame, rotating at the constant base frequency $\Omega_b$.

    In simple terms, PowerSimulationsDynamics.jl internally tracks the current-injection balances at the nodal level from all the devices on the system. Based on the buses and branches information, the system constructor computes the admittance matrix $\boldsymbol{Y}$ assuming nominal frequency and this is used for static branch modeling. The algebraic equations for the static portions of the network are as follows:

    \[ \begin{align} + 0 = \boldsymbol{i}(\boldsymbol{x}, \boldsymbol{v}) - \boldsymbol{Y}\boldsymbol{v} + \end{align}\]

    where $\boldsymbol{i} = i_r + ji_i$ is the vector of the sum of complex current injections from devices , $\boldsymbol{x}$ is the vector of states and $\boldsymbol{v} = v_r + jv_i$ is the vector of complex bus voltages. Equations (1) connect all the port variables, i.e., currents, defined for each injection device. Components that contribute to (1) by modifying the current $\boldsymbol{i}$ are (i) static injection devices, (ii) dynamic injection devices, and (iii) dynamic network branches. Components that contribute to modify the admittance matrix $\boldsymbol{Y}$ are static branches.

    Static Branches (or Algebraic Branches)

    Lines

    Each line is defined using a $\pi$ model connecting two buses $(n,m)$, with a series resistance $r$ and reactance $x$, and a shunt capacitance at both ends $(c_n, c_m)$. The values are already in system per unit. Then each branch contributes to the admittance matrix as follows:

    \[\begin{align} +Y_{nn} &+\!= \frac{1}{r+jx} + jc_n \\ +Y_{nm} &+\!= \frac{-1}{r+jx} \\ +Y_{mm} &+\!= \frac{1}{r+jx} + jc_m \\ +Y_{mn} &+\!= \frac{-1}{r+jx} \\ +\end{align}\]

    Two-Windings Transformers

    Similarly to lines these are defined by a series reactance and impedance. The equations are equivalently of the lines without the shunt capacitance.

    Dynamic Branches

    Dynamic network branches contribute directly to (1) by modifying the vector of complex currents. Their parameters are also the series resistance $r$ and reactance $x$, and a shunt capacitance at both ends $(c_n, c_m)$ for a line $\ell$. In addition, they define 3 new additional differential equations per line (6 in total for real and imaginary part):

    \[\begin{align} + \frac{l}{\Omega_b} \frac{d\boldsymbol{i}_{\ell}}{dt} &= (\boldsymbol{v}_n - \boldsymbol{v}_m) - (r+jl) \boldsymbol{i}_{\ell} \\ + \frac{c_n}{\Omega_b} \frac{d\boldsymbol{v}_n}{dt} &= \boldsymbol{i}_n^{\text{cap}} - jc_n\boldsymbol{v}_n \\ + \frac{c_m}{\Omega_b} \frac{d\boldsymbol{v}_m}{dt} &= \boldsymbol{i}_m^{\text{cap}} - jc_m\boldsymbol{v}_m +\end{align}\]

    Since all the values are in per unit, the reactance is equal to the inductance.

    A detail discussion about the effects of different line models in the modeling of inverters is presented in Grid Forming Inverter Small Signal Stability: Examining Role of Line and Voltage Dynamics

    diff --git a/previews/PR383/component_models/outer_control/index.html b/previews/PR383/component_models/outer_control/index.html new file mode 100644 index 000000000..44679005f --- /dev/null +++ b/previews/PR383/component_models/outer_control/index.html @@ -0,0 +1,69 @@ + +Outer Control · PowerSimulationsDynamics.jl

    Outer Loop Controls

    This component defines controllers for both active and reactive power. The joint design is based on the fact that many novel control techniques can be based on joint control of active and reactive power.

    Virtual Inertia and Q-droop [OuterControl]

    The following model represent a virtual synchronous machine model to represent how active power is going to be deployed. The constructor is OuterControl{VirtualInertia, ReactivePowerDroop}. It defines a new SRF denoted as $\theta_{\text{olc}}$ for the active power controller and uses a simple voltage droop for dispatching reactive power:

    \[\begin{align} + \dot{\omega}_{\text{olc}} &= \frac{p_{\text{ref}}}{T_a} - \frac{p_e}{T_a} - \frac{k_d(\omega_{\text{olc}} - \omega_{\text{pll}})}{T_a} - \frac{k_\omega(\omega_{\text{olc}} - \omega_{\text{ref}})}{T_a} \tag{1a} \\ + \dot{\theta}_{\text{olc}} &= \Omega_b (\omega_{\text{olc}} - \omega_{\text{sys}}) \tag{1b} \\ + \dot{q}_m &= \omega_f (q_e - q_m) \tag{1c} +\end{align}\]

    with

    \[\begin{align} + p_e &= v_ri_r + v_ii_i \tag{1d} \\ + q_e &= v_ii_r - v_ri_i \tag{1e} \\ + v_{\text{olc}}^{\text{ref}} &= v_{\text{ref}} + k_q(q_{\text{ref}} - q_m) \tag{1f} +\end{align}\]

    In this case, the measurement of power are being done in the capacitor of the LCL filter. However, depending on the model, this measurements could be different depending on where is the point of common coupling.

    Active Power Droop (P-droop) and Q-droop [OuterControl]

    The following model represent a $P\text{-}f$ droop model to represent how active power is going to be deployed. The constructor is OuterControl{ActivePowerDroop, ReactivePowerDroop}. It defines a new SRF denoted as $\theta_{\text{olc}}$ for the active power controller and uses a simple voltage droop for dispatching reactive power. Both active and reactive power are measured via a low-pass filter:

    \[\begin{align} + \dot{\theta}_{\text{olc}} &= \Omega_b (\omega_{\text{olc}} - \omega_{\text{sys}}) \tag{2a} \\ + \dot{p}_m &= \omega_z (p_e - p_m) \tag{2b} \\ + \dot{q}_m &= \omega_f (q_e - q_m) \tag{2c} +\end{align}\]

    with

    \[\begin{align} + p_e &= v_ri_r + v_ii_i \tag{2d} \\ + q_e &= v_ii_r - v_ri_i \tag{2e} \\ + \omega_{\text{olc}} &= \omega_{\text{ref}} + R_p (p_{\text{ref}} - p_m) \tag{2f} \\ + v_{\text{olc}}^{\text{ref}} &= v_{\text{ref}} + k_q(q_{\text{ref}} - q_m) \tag{2g} +\end{align}\]

    In this case, the measurement of power are being done in the capacitor of the LCL filter. However, depending on the model, this measurements could be different depending on where is the point of common coupling.

    Active and Reactive Virtual Oscillator Controllers [OuterControl]

    The following model represents a Virtual Oscillator Controller for both active and reactive power to generate the voltage references that will be used in the Voltage Controller. The contructor is OuterControl{ActiveVirtualOscillator, ReactiveVirtualOscillator} It defines a new SRF denoted as $\theta_{\text{olc}}$ and a voltage reference $E_{\text{olc}}$. The equations are:

    \[\begin{align} + \dot{\theta}_{\text{olc}} &= \Omega_b (\omega_{\text{olc}} - \omega_{\text{sys}}) \tag{3a} \\ + \dot{E}_{olc} &= \Omega_b \left(\frac{k_1}{E_{oc}} (-\sin(\gamma) (p_\text{ref} - p_e) + \cos(\gamma)(q_\text{ref} - q_e)) + k_2 (V_\text{ref} - E_{oc}^2)E_{oc} \right) \tag{3b} \\ +\end{align}\]

    with

    \[\begin{align} + \gamma &= \psi - \frac{\pi}{2} \tag{3c} \\ + \omega_{\text{olc}} &= \omega_{\text{sys}} + \frac{k_1}{E_{oc}^2} \left(\cos(\gamma) (p_\text{ref} - p_e) + \sin(\gamma)(q_\text{ref} - q_e) \right) \tag{3d} \\ + p_e &= v_ri_r + v_ii_i \tag{3e} \\ + q_e &= v_ii_r - v_ri_i \tag{3f} \\ +\end{align}\]

    Active and Reactive Power PI Controllers (Grid Following) [OuterControl]

    The following model represents a PI controller for both active and reactive power to generate the current references that will be used in the Current Controller of the inner control CurrentModeControl. The constructor is OuterControl{ActivePowerPI, ReactivePowerPI}. The equations are:

    \[\begin{align} + \dot{\sigma}_{p} &= p_\text{ref} - p_m \tag{4a} \\ + \dot{p}_m &= \omega_z (p_e - p_m) \tag{4b} \\ + \dot{\sigma}_{q} &= q_\text{ref} - q_m \tag{4c} \\ + \dot{q}_m &= \omega_f (q_e - p_m) \tag{4d} \\ +\end{align}\]

    with

    \[\begin{align} + p_e &= v_ri_r + v_ii_i \tag{4e} \\ + q_e &= v_ii_r - v_ri_i \tag{4f} \\ + \omega_{\text{olc}} &= \omega_{\text{pll}} \tag{4g} \\ + \theta_{\text{olc}} &= \theta_{\text{pll}} \tag{4h} \\ + i_\text{d,cv}^\text{ref} &= k_p^q (q_\text{ref} - q_m) + k_i^q \sigma_q \tag{4i} \\ + i_\text{q,cv}^\text{ref} &= k_p^p (p_\text{ref} - p_m) + k_i^p \sigma_p \tag{4j} \\ +\end{align}\]

    This models requires a PLL to have a SRF for an internal $dq$ reference frame. Contrary to the Grid-Forming model, it cannot work without a PLL. Since this Outer Control outputs a current reference, it can only be used with a current mode inner control (i.e. that receives a current reference instead of a voltage reference).

    Active and Reactive Generic Renewable Controller Type AB [OuterControl]

    The following model represents an outer controller for both active and reactive power from generic industrial models REPCA and REECB to generate the current references that will be used in the Current Controller of the inner control RECurrentControlB. The constructor is OuterControl{ActiveRenewableControllerAB, ReactiveRenewableControllerAB}. The equations will depend on the flags used.

    Active part

    In the case of F_Flag = 1 the equations (without limits and freezing) are:

    \[\begin{align} + \dot{p}_{\text{flt}} &= \frac{1}{T_p} (p_e - p_{\text{flt}}) \tag{5a} \\ + \dot{\xi}_{P} &= p_{\text{err}} \tag{5b} \\ + \dot{p}_{\text{ext}} &= \frac{1}{T_g} (K_{pg} p_{\text{err}} + K_{ig} \xi_P) \tag{5c} \\ + \dot{p}_{\text{ord}} &= \frac{1}{T_{\text{pord}}} (p_{\text{ext}} - p_{\text{ord}}) \tag{5d} +\end{align}\]

    with

    \[\begin{align} + p_e &= v_ri_r + v_ii_i \tag{5e} \\ + p_\text{err} &= p_\text{ref} + p_\text{droop} - p_\text{flt} \tag{5f} +\end{align}\]

    In the case of F_Flag = 0 the equations (without limits) are simply

    \[\begin{align} + \dot{p}_{\text{ord}} &= \frac{1}{T_{\text{pord}}} (p_{\text{ref}} - p_{\text{ord}}) \tag{5g} +\end{align}\]

    The current command going to the Inner Loop is computed as:

    \[\begin{align} + I_{\text{oc,pcmd}} &= \frac{p_{\text{ord}}}{V_{\text{t,flt}}} \tag{5h} +\end{align}\]

    on which $V_\text{t,flt}$ is the filtered terminal bus voltage coming from the inner controller.

    Reactive part

    In the case of VC_Flag = 0, Ref_Flag = 0, PF_Flag = 0, V_Flag = 1 the equations (without limits and freezing) are:

    \[\begin{align} + \dot{q}_\text{flt} &= \frac{1}{T_\text{fltr}} (q_e - q_\text{flt}) \tag{5i} \\ + \dot{\xi}_\text{q,oc} &= q_\text{err} \tag{5j} \\ + \dot{q}_{LL} &= \frac{1}{T_{fv}}(Q_\text{pi} ( 1 - T_{ft}/T_{fv}) - q_{LL}) \tag{5k} \\ + \dot{\xi}_Q &= V_\text{pi,in} \tag{5l} +\end{align}\]

    with

    \[\begin{align} + q_e &= v_ii_r - v_ri_i \tag{5m} \\ + q_\text{err} &= q_\text{ref} - q_flt \tag{5n} \\ + Q_\text{pi} &= K_p q_\text{err} + K_i \xi_\text{q,oc} \tag{5o} \\ + Q_\text{ext} &= q_{LL} + \frac{T_{ft}}{T_{fv}} Q_\text{pi} \tag{5p} \\ + V_\text{pi,in} &= Q_\text{ext} - q_e \tag{5q} +\end{align}\]

    The output to the inner controller are $V_\text{oc,qcmd}$ if the Q_Flag = 1 on the Inner Controller, or $I_\text{oc,qcmd}$ if Q_Flag = 0:

    \[\begin{align} + V_\text{oc,qcmd} &= (K_{qp} V_\text{pi,in} + K_{qi} \xi_Q) - V_\text{t,flt} \tag{5r} \\ + I_\text{oc,qmcd} &= \frac{Q_\text{ext}}{\max(V_\text{t,flt}, 0.01)} \tag{5s} +\end{align}\]

    In the case of VC_Flag = 0, Ref_Flag = 0, PF_Flag = 0, V_Flag = 1 the equations (without limits and freezing) are:

    \[\begin{align} + \dot{q}_\text{flt} &= \frac{1}{T_\text{fltr}} (q_e - q_\text{flt}) \tag{5t} \\ + \dot{\xi}_\text{q,oc} &= q_\text{err} \tag{5u} \\ + \dot{q}_{LL} &= \frac{1}{T_{fv}}(Q_\text{pi} ( 1 - T_{ft}/T_{fv}) - q_{LL}) \tag{5v} \\ +\end{align}\]

    The remaining models for other flags will be included when implemented in PowerSimulationsDynamics.jl.

    diff --git a/previews/PR383/component_models/pss/index.html b/previews/PR383/component_models/pss/index.html new file mode 100644 index 000000000..3befc77bd --- /dev/null +++ b/previews/PR383/component_models/pss/index.html @@ -0,0 +1,26 @@ + +PSS · PowerSimulationsDynamics.jl

    Power System Stabilizers (PSS)

    PSS are used to add an additional signal $v_s$ to the input signal of the AVR: $v_\text{ref} = v_\text{ref}^{\text{avr}} + v_s$.

    Fixed PSS [PSSFixed]

    This is a simple model that set the stabilization signal to be equal to a desired constant value $v_s = v_{s}^{\text{fix}}$. The absence of PSS can be modelled using this component with $v_s^{\text{fix}} = 0$.

    Simple PSS [PSSSimple]

    This is the most basic PSS that can be implemented, on which the stabilization signal is a proportional controller over the frequency and electrical power:

    \[\begin{align} +v_s = K_{\omega}(\omega - \omega_s) + K_p(\omega \tau_e - P_{\text{ref}}) \tag{1a} +\end{align}\]

    IEEE Stabilizer [IEEEST]

    The 7th-order PSS model is:

    \[\begin{align} +A_4 \dot{x}_1 &= u - A_3 x_1 - x_2 \tag{2a} \\ +\dot{x}_2 &= x_1 \tag{2b} \\ +A_2\dot{x}_3 &= x_2 - A_1 x_3 - x_4 \tag{2c}\\ +\dot{x}_4 &= x_3 \tag{2d}\\ +T_2\dot{x}_5 &= \left(1 - \frac{T_1}{T_2}\right) y_f - x_5 \tag{2e}\\ +T_4\dot{x}_6 &= \left(1 - \frac{T_3}{T_4}\right) y_{LL1} - x_6 \tag{2f}\\ +T_6\dot{x}_7 &= -\left(\frac{K_s T_5}{T_6} y_{LL2} + x_7 \right) \tag{2g} +\end{align}\]

    with

    \[\begin{align*} +y_f &= \frac{T_4}{T_2} x_2 + \left(T_3 - T_1 \frac{T_4}{T_2}\right) x_3 + \left(1 - \frac{T_4}{T_2}\right)x_4 \\ +y_{LL1} &= x_5 + \frac{T_1}{T_2} y_f \\ +y_{LL2} &= x_6 + \frac{T_3}{T_4} y_{LL1} \\ +y_{out} &= x_7 + \frac{K_s T_5}{T_6} y_{LL2} \\ +V_s &= \text{clamp}(y_{out}, \text{Ls}_\text{min}, \text{Ls}_\text{max}) +\end{align*}\]

    on which $u$ is the input signal to the PSS, that depends on the flag. Currently, rotor speed, electric torque, mechanical torque and voltage magnitude are supported inputs.

    STAB1 PSS [STAB1]

    The 3rd-order PSS model is:

    \[\begin{align} +T \dot{x}_1 &= K \omega - x_1 \tag{3a} \\ +T_3\dot{x}_2 &= \left(1 - \frac{T_1}{T_3}\right) x_1 - x_2 \tag{3b} \\ +T_4\dot{x}_3 &= \left(1 - \frac{T_2}{T_4}\right) y_{LL} - x_2 \tag{3c} \\ +\end{align}\]

    with

    \[\begin{align*} +y_{LL} = x_2 + \frac{T_1}{T_3} x_1 \\ +y_{out} = x_3 + \frac{T_2}{T_4} y_{LL} \\ +V_s = \text{clamp}(y_{out}, -H_{lim}, H_{lim}) +\end{align*}\]

    diff --git a/previews/PR383/component_models/shafts/index.html b/previews/PR383/component_models/shafts/index.html new file mode 100644 index 000000000..9f11a6cca --- /dev/null +++ b/previews/PR383/component_models/shafts/index.html @@ -0,0 +1,16 @@ + +Shaft · PowerSimulationsDynamics.jl

    Shafts

    The shaft component defines the rotating mass of the synchronous generator.

    Rotor Mass Shaft [SingleMass]

    This is the standard model, on which one single mass (typically the rotor) is used to model the entire inertia of the synchronous generator. Each generator's rotating frame use a reference frequency $\omega_s$, that typically is the synchronous one (i.e. $\omega_s = 1.0$). The model defines two differential equations for the rotor angle $\delta$ and the rotor speed $\omega$:

    \[\begin{align} +\dot{\delta} &= \Omega_b(\omega - \omega_s) \tag{1a} \\ +\dot{\omega} &= \frac{1}{2H}(\tau_m - \tau_e - D(\omega-\omega_s)) \tag{1b} +\end{align}\]

    Five-Mass Shaft [FiveMassShaft]

    This model describes model connecting a high-pressure (hp) steam turbine, intermediate-pressure (ip) steam turbine, low-pressure (lp) steam pressure, rotor and exciter (ex) connected in series (in that order) in the same shaft using a spring-mass model:

    \[\begin{align} +\dot{\delta} &= \Omega_b(\omega - \omega_s) \tag{2a} \\ +\dot{\omega} &= \frac{1}{2H} \left[- \tau_e - D(\omega-\omega_s)) - D_{34} (\omega-\omega_{lp}) - D_{45}(\omega-\omega_{ex}) + K_{lp}(\delta_{lp-\delta}) +K_{ex}(\delta_{ex}-\delta) \right] \tag{2b} \\ +\dot{\delta}_{hp} &= \Omega_b(\omega_{hp} - \omega_s) \tag{2c} \\ +\dot{\omega}_{hp} &= \frac{1}{2H_{hp}} \left[ \tau_m - D_{hp}(\omega_{hp}-\omega_s) - D_{12}(\omega_{hp} - \omega_{ip}) + K_{hp}(\delta_{ip} - \delta_{hp}) \right] \tag{2d} \\ +\dot{\delta}_{ip} &= \Omega_b(\omega_{ip} - \omega_s) \tag{2e} \\ +\dot{\omega}_{ip} &= \frac{1}{2H_{ip}} \left[- D_{ip}(\omega_{ip}-\omega_s) - D_{12}(\omega_{ip} - \omega_{hp}) -D_{23}(\omega_{ip} - \omega_{lp} ) + K_{hp}(\delta_{hp} - \delta_{ip}) + K_{ip}(\delta_{lp}-\delta_{ip}) \right] \tag{2f} \\ +\dot{\delta}_{lp} &= \Omega_b(\omega_{lp}-\omega_s) \tag{2g} \\ +\dot{\omega}_{lp} &= \frac{1}{2H_{lp}} \left[ - D_{lp}(\omega_{lp}-\omega_s) - D_{23}(\omega_{lp} - \omega_{ip}) -D_{34}(\omega_{lp} - \omega ) + K_{ip}(\delta_{ip} - \delta_{lp}) + K_{lp}(\delta-\delta_{lp}) \right] \tag{2h} \\ +\dot{\delta}_{ex} &= \Omega_b(\omega_{ex}-\omega_s) \tag{2i} \\ +\dot{\omega}_{ex} &= \frac{1}{2H_{ex}} \left[ - D_{ex}(\omega_{ex}-\omega_s) - D_{45}(\omega_{ex} - \omega) + K_{ex}(\delta - \delta_{ex}) \right] \tag{2j} +\end{align}\]

    diff --git a/previews/PR383/component_models/turbine_gov/index.html b/previews/PR383/component_models/turbine_gov/index.html new file mode 100644 index 000000000..76dd61146 --- /dev/null +++ b/previews/PR383/component_models/turbine_gov/index.html @@ -0,0 +1,45 @@ + +Turbine and Governor · PowerSimulationsDynamics.jl

    Prime Movers and Turbine Governors (TG)

    This section describes how mechanical power is modified to provide primary frequency control with synchronous generators. It is assumed that $\tau_{\text{ref}} = P_{\text{ref}}$ since they are decided at nominal frequency $\omega = 1$.

    Fixed TG [TGFixed]

    This a simple model that set the mechanical torque to be equal to a proportion of the desired reference $\tau_m = \eta P_{\text{ref}}$. To set the mechanical torque to be equal to the desired power, the value of $\eta$ is set to 1.

    TG Type I [TGTypeI]

    This turbine governor is described by a droop controller and a low-pass filter to model the governor and two lead-lag blocks to model the servo and reheat of the turbine governor.

    \[\begin{align} +\dot{x}_{g1} &= \frac{1}{T_s}(p_{\text{in}} - x_{g1}) \tag{1a} \\ +\dot{x}_{g2} &= \frac{1}{T_c} \left[ \left(1- \frac{t_3}{T_c}\right)x_{g1} - x_{g2} \right] \tag{1b} \\ +\dot{x}_{g3} &= \frac{1}{T_5} \left[\left(1 - \frac{T_4}{T_5}\right)\left(x_{g2} + \frac{T_3}{T_c}x_{g1}\right) - x_{g3} \right] \tag{1c} \\ +\tau_m &= x_{g3} + \frac{T_4}{T_5}\left(x_{g2} + \frac{T_3}{T_c}x_{g1}\right) \tag{1d} +\end{align}\]

    with

    \[\begin{align*} +p_{\text{in}} = P_{\text{ref}} + \frac{1}{R}(\omega_s - 1.0) +\end{align*}\]

    TG Type II [TGTypeII]

    This turbine governor is a simplified model of the Type I.

    \[\begin{align} +\dot{x}_g &= \frac{1}{T_2}\left[\frac{1}{R}\left(1 - \frac{T_1}{T_2}\right) (\omega_s - \omega) - x_g\right] \tag{2a} \\ +\tau_m &= P_{\text{ref}} + \frac{1}{R}\frac{T_1}{T_2}(\omega_s - \omega) \tag{2b} +\end{align}\]

    TGOV1 [SteamTurbineGov1]

    This represents a classical Steam-Turbine Governor, known as TGOV1.

    \[\begin{align} +\dot{x}_{g1} &= \frac{1}{T_1} (\text{ref}_{in} - x_{g1}) \tag{3a} \\ +\dot{x}_{g2} &= \frac{1}{T_3} \left(x_{g1}^\text{sat} \left(1 - \frac{T_2}{T_3}\right) - x_{g2}\right) \tag{3b} +\end{align}\]

    with

    \[\begin{align} +\text{ref}_{in} &= \frac{1}{R} (P_{ref} - (\omega - 1.0)) \tag{3c} \\ +x_{g1}^\text{sat} &= \left\{ \begin{array}{cl} + x_{g1} & \text{ if } V_{min} \le x_{g1} \le V_{max}\\ + V_{max} & \text{ if } x_{g1} > V_{max} \\ + V_{min} & \text{ if } x_{g1} < V_{min} + \end{array} \right. \tag{3d} \\ +\tau_m &= x_{g2} + \frac{T_2}{T_3} x_{g1} - D_T(\omega - 1.0) \tag{3e} +\end{align}\]

    GAST [GasTG]

    This turbine governor represents the Gas Turbine representation, known as GAST.

    \[\begin{align} +\dot{x}_{g1} &= \frac{1}{T_1} (x_{in} - x_{g1}) \tag{4a} \\ +\dot{x}_{g2} &= \frac{1}{T_2} \left(x_{g1}^\text{sat} - x_{g2}\right) \tag{4b} \\ +\dot{x}_{g3} &= \frac{1}{T_3} (x_{g2} - x_{g3}) \tag{4c} +\end{align}\]

    with

    \[\begin{align} +x_{in} &= \min\left\{P_{ref} - \frac{1}{R}(\omega - 1.0), A_T + K_T (A_T - x_{g3}) \right\} \tag{4d} \\ +x_{g1}^\text{sat} &= \left\{ \begin{array}{cl} + x_{g1} & \text{ if } V_{min} \le x_{g1} \le V_{max}\\ + V_{max} & \text{ if } x_{g1} > V_{max} \\ + V_{min} & \text{ if } x_{g1} < V_{min} + \end{array} \right. \tag{4e} \\ +\tau_m &= x_{g2} - D_T(\omega - 1.0) \tag{4f} +\end{align}\]

    HYGOV [HydroTurbineGov]

    This represents a classical hydro governor, known as HYGOV.

    \[\begin{align} +T_f\dot{x}_{g1} &= P_{in} - x_{g1} \tag{5a} \\ +\dot{x}_{g2} &= x_{g1} \tag{5b}\\ +T_g \dot{x}_{g3} &= c - x_{g3} \tag{5c}\\ +\dot{x}_{g4} &= \frac{1 - h}{T_w} \tag{5d} +\end{align}\]

    with

    \[\begin{align} +P_{in} &= P_{ref} - \Delta \omega - R x_{g2} \tag{5e} \\ +c &= \frac{x_{g1}}{r} + \frac{x_{g2}}{rT_r} \tag{5f} \\ +h &= \left(\frac{x_{g4}}{x_{g3}}\right)^2 \tag{5g}\\ +\tau_m &= h\cdot A_t(x_{g4} - q_{NL}) - D_{turb} \Delta\omega \cdot x_{g3} \tag{5h} +\end{align}\]

    diff --git a/previews/PR383/execute/index.html b/previews/PR383/execute/index.html new file mode 100644 index 000000000..c1ed17a92 --- /dev/null +++ b/previews/PR383/execute/index.html @@ -0,0 +1,18 @@ + +Simulation Execution · PowerSimulationsDynamics.jl

    Executing a Simulation

    After constructing the System data from PowerSystems.jl with its dynamic components, a Simulation structure must be constructed. Check the API for Simulation and Simulation! for its construction and available arguments.

    Once a Simulation is constructed and properly initialized, the execute! command is used to run the Simulation. If no perturbation was included, then a steady state simulation will be run over the time span defined. See the API of execute! for more details.

    Solvers

    Solvers must be chosen accordingly depending on the type of model used in the Simulation. For example, a Residual model can be executed using Sundials IDA solver:

    using Sundials
    +sim = Simulation(
    +    ResidualModel,
    +    sys,
    +    pwd(),
    +    (0.0, 20.0),
    +    perturbation,
    +)
    +execute!(sim, IDA())

    Results can be explored using:

    results = read_results(sim)

    Similarly, a Mass Matrix model can be executed using Rodas4 solver.

    using OrdinaryDiffEq
    +sim2 = Simulation(
    +    MassMatrixModel,
    +    sys,
    +    pwd(),
    +    (0.0, 20.0),
    +    perturbation,
    +)
    +execute!(sim2, Rodas4())

    Exploring the Solution

    Once a Simulation is executed and the results are stored via results = read_results(sim), the following functions can be used to explore the Simulation solution:

    Show initial conditions

    The function show_states_initial_value(results) can be used to display the initial condition of the voltages and dynamic states of each dynamic component.

    Explore bus voltages

    The function get_voltage_magnitude_series(results, BusNumber) can be used to obtain the voltage magnitude time series of the specified bus. Similarly, get_voltage_angle_series(results, BusNumber) can be used to obtain the voltage angle time series of the specified bus.

    Explore output currents

    The functions get_real_current_series(results, "DeviceName") and get_imaginary_current_series(results, "DeviceName") can be used to obtain the output current time series of the specified device.

    Explore output power

    The functions get_activepower_series(results, "DeviceName") and get_reactivepower_series(results, "DeviceName") can be used to obtain the output power time series of the specified device.

    Explore dynamic states

    The function get_state_series(results, ("DeviceName", :StateSymbol) can be used to obtain the specified state time series of the specified device.

    Explore Reference Setpoints

    The function get_setpoints(sim) can be used to obtain the reference setpoints of each dynamic device. Note: If a setpoint was changed via a perturbation, this function will return the modified setpoint.

    Keyword Arguments

    Any solver option available in DifferentialEquations.jl can be passed as keyword arguments in the execute! function. Please see the Common Solver Options in the DifferentialEquations.jl documentation for more details.

    Most common solver options used are dtmax to control the maximum dt for adaptive timestepping. abstol and reltol are also commonly used to control the tolerance in the adaptive timestepping. saveat is also used to store the results at a specified time stamps. For example, the following code is valid to further specify your solver options:

    execute!(sim, IDA(), dtmax = 0.01, abstol = 1e-9, reltol = 1e-6, saveat = 0.01)

    In addition, the keyword argument enable_progress_bar = false can be used to disable the progress bar.

    diff --git a/previews/PR383/generic/index.html b/previews/PR383/generic/index.html new file mode 100644 index 000000000..5e5d40bea --- /dev/null +++ b/previews/PR383/generic/index.html @@ -0,0 +1,2 @@ + +Industrial Renewable Models · PowerSimulationsDynamics.jl

    Industrial (Generic) Renewable Models

    Connection with the Inverter Metamodel

    Generic Renewable Models for PV solar or battery devices used in industrial tools, such as PSS/E or PowerWorld, does not necessary resemble the proposed structure of our proposed metamodel.

    In general terms, a generic renewable model (for PV plant or battery) is typically a Grid Following inverter that uses a Renewable Energy Plant Controller (REPC), a Renewable Energy Electrical Controller (REEC) and a Renewable Energy Generic Converter (REGC) model. The following figure is useful to understand the general structure of such models:

    In comparison to the proposed inverter metamodel it is clear that the REPC resembles the Outer Control. However, the REEC has a purpose of both Outer Control and Inner Control and the REGC has a similar purpose of the Converter and Filter in the proposed structure. For such purpose, it was necessary to split the REEC and part of its model was included in both Outer Control and Inner Control.

    Example of implementation of generic models

    The following includes examples of the implementation of the proposed model in the inverter metamodel.

    Active Renewable Outer Control

    The following example join the active power controllers from REPCA and REECB as ActiveRenewableControllerAB in PowerSimulationsDynamics.jl

    An important thing to consider with the industrial models, is that the change of Flags can significantly vary the model and purpose of the controller.

    Reactive Renewable Outer Control

    Similar to the active controller, the following figure presents the reactive controller part from REPCA and REECB as ReactiveRenewableControllerAB in PowerSimulationsDynamics.jl

    Inner Controller

    Finally, the remaining part from REECB was included RECurrentControllerB

    The REGCAmodel was directly included in a Converter Block, and the filter can be bypassed using an RLFilter block with rf = lf = 0.

    Current availability of model flags in PSID

    Active Controller

    For the active controller, both Freq_Flag = 0 (ignoring frequency regulation) and Freq_Flag = 1 (considering frequency regulation) are available.

    Reactive Controller

    The following table describes the current available combination of flags in PSID:

    REF_FlagPF_FlagV_FlagQ_Flag
    0000
    0010
    1011
    1000

    Any combination outside of these cases may not converge to a feasible operating point. Check the following CAISO report for the description and compliance of each flag combination.

    diff --git a/previews/PR383/index.html b/previews/PR383/index.html new file mode 100644 index 000000000..6f885d6db --- /dev/null +++ b/previews/PR383/index.html @@ -0,0 +1,7 @@ + +Welcome Page · PowerSimulationsDynamics.jl

    PowerSimulationsDynamics.jl

    Overview

    PowerSimulationsDynamics.jl is a Julia package for doing Power Systems Dynamic Modeling with Low Inertia Energy Sources.

    The synchronous machine components supported here are based on commercial models and the academic components are derived from Power System Modelling and Scripting.

    Inverter models support both commercial models, such as REPC, REEC and REGC type of models; and academic models obtained from grid-following and grid-forming literature such as in "A Virtual Synchronous Machine implementation for distributed control of power converters in SmartGrids"

    The background work on PowerSimulationsDynamics.jl is explained in Revisiting Power Systems Time-domain Simulation Methods and Models

    @article{lara2023revisiting,
    +title={Revisiting Power Systems Time-domain Simulation Methods and Models},
    +author={Lara, Jose Daniel and Henriquez-Auba, Rodrigo and Ramasubramanian, Deepak and Dhople, Sairaj and Callaway, Duncan S and Sanders, Seth},
    +journal={arXiv preprint arXiv:2301.10043},
    +year={2023}
    +}

    Installation

    The latest stable release of PowerSimulationsDynamics.jl can be installed using the Julia package manager with

    ] add PowerSimulationsDynamics

    For the current development version, "checkout" this package with

    ] add PowerSimulationsDynamics#master

    Structure

    The following figure shows the interactions between PowerSimulationsDynamics.jl, PowerSystems.jl, ForwardDiff.jl, DiffEqBase.jl and the integrators. The architecture of PowerSimulationsDynamics.jl is such that the power system models are all self-contained and return the model function evaluations. The Jacobian is calculated using automatic differentiation through ForwardDiff.jl, that is used for both numerical integration and small signal analysis. Considering that the resulting models are differential-algebraic equations (DAE), the implementation focuses on the use of implicit solvers, in particular BDF and Rosenbrock methods.


    PowerSimulationsDynamics.jl has been developed as part of the Scalable Integrated Infrastructure Planning (SIIP) initiative at the U.S. Department of Energy's National Renewable Energy Laboratory (NREL)

    diff --git a/previews/PR383/initialization/index.html b/previews/PR383/initialization/index.html new file mode 100644 index 000000000..b4cac144a --- /dev/null +++ b/previews/PR383/initialization/index.html @@ -0,0 +1,23 @@ + +Initialization · PowerSimulationsDynamics.jl

    Initialization Routine

    Dynamic Simulations require a reasonable initial condition for the system model. In most analysis, power systems models are initialized at a stable equilibrium, which implies that:

    \[\begin{align} +0 = F(x, u, \eta) +\end{align}\]

    Finding the solution of a large non-linear system is challenging and requires a reasonable initial guess. In classical power systems literature, the routine to find equilibrium points for the dynamic injection devices' components is well known and used in free and commercial software (see Power System Modelling and Scripting page 224). However, in the case of converter interface dynamic injection models, such routines are not documented.

    Initializing the system also requires finding valid set-points for the devices in the system. For instance, finding the reference voltage in an AVR to match the voltage magnitude resulting from the power flow solution. PowerSimulationsDynamics.jl prioritizes mathching the dynamic components control references to match the power flow results.

    Finally, the initialization must instantiate not only the values of the states but also the inner vars. PowerSimulationsDynamics.jl handles all this initializations by default.

    Initialization interface

    By default PowerSimulationsDynamics.jl initializes the system following the steps described below. it is possible to provide an initial guess for the initial conditions to speed up the initialization process.

    Simulation(
    +        ResidualModel,
    +        sys,
    +        pwd(),
    +        (0.0, 20.0);
    +        initial_conditions = x0_init,
    +    )

    It is also possible to initialize the simulation using a flat start (V_mag = 1.0, V_angle = 0.0 and x0 = zeros) using initialize_simulation = false. However, for medium or large system this is unlikely to result in a valid initial condition for the simulation.

    Simulation(
    +        ResidualModel,
    +        sys,
    +        pwd(),
    +        (0.0, 20.0);
    +        initialize_simulation = false,
    +    )

    If you want to avoid PowerSimulationsDynamics.jl from finding an stable equilibrium automatically and provide the initial condition manually you can use the following flag combination.

    Simulation(
    +        ResidualModel,
    +        sys,
    +        pwd(),
    +        (0.0, 20.0);
    +        initialize_simulation = false,
    +        initial_conditions = x0_init,
    +    )

    <span style="color:red">WARNING!</span>: when the initialize_simulation is set to false, neither the device set points nor the inner vars are initialized. Use these keywords with care and make sure the values in the system components match the initial conditions provided.

    System-wide initialization routine

    The initialization routine starts from the solution of the power flow equations. For each dynamic injection device PowerSimulationsDynamics.jl finds the solution of the systems of non-linear equations for each dynamic component following the sequences described in the forthcoming sections.

    Once each device is individually initialized, the system-wide initial guess is used to solve the system (1). In a first attempt at finding the solution, the tolerance is set to a stringent tolerance. If the non-linear solver is unable to get a solution, it might usually reflect small signal stability problems in the system. In a second attempt, the tolerances are relaxed. If the solver succeeds, the simulation continues, but the user is warned.

    Initialization of the Synchronous Machines

    The initialization of Synchronous Machines is standard in power systems and follows the scheme shown in the figure. Other internal variables are calculated recursively from the power flow solution for the node on which the dynamic device isconnected. (Adapted from Power System Modelling and Scripting Figure 9.2)

    init_machine

    Initialization of the Inverters

    Initializing the inverters follows the sequence shown in the figure and has been developed to be compatible with the implementation of custom dynamic components. Given that the process is less studied and standard than the one of the synchronous machine, this page contains more detailed documentation of the process.

    init_machine

    1. The first component to be initialized is the filter. Given that the filter is an RLC circuit connected to the grid, its currents and voltages need to match the results of the power flow. The initialization of the filter provides the values for the $P$ and $Q$ used in the outer control and the $V$ and $I$ needed in the inner controls.
    2. Based on the bus voltage in the system's reference frame $V_r$ and the bus angle $\theta$ the PLL's can be initialized to obtain the angle and frequency estimates needed by the outer control.
    3. The Outer Control calculates the internal angle $\delta_{olc}$ required by the inner control to estimate the voltage and current phase difference.
    4. The DC Source uses the power set-point consistent with the power outputs of the filter to initialize the $V_{dc}$ set-points. This value is used in the inner control.
    5. The inner control takes the phase angle $\delta_{olc}$ and the $V_{dc}$ to estimate the modulation values of the PWM converter.

    Note: The initialization of an inverter through the proposed meta-model is actively under development and subject to change. This page will maintain the latest version of the sequence.

    diff --git a/previews/PR383/models/index.html b/previews/PR383/models/index.html new file mode 100644 index 000000000..9f8e6e68e --- /dev/null +++ b/previews/PR383/models/index.html @@ -0,0 +1,8 @@ + +Models · PowerSimulationsDynamics.jl

    Models

    Simulation Models

    PowerSimulations dynamics supports two formulations for the simulation model and define different methods for each simulation model. You can pass ResidualModel or MassMatrixModel to a call to Simulation to define the preferred formulation.

    In this way, we provide a common set of development requirements for contributors of new models that maintains the same flexibility in choosing the solving algorithm.

    • MassMatrixModel: Defines models that can be solved using Mass-Matrix Solvers. The model is formulated as follows:

    \[\begin{align} +M\frac{dx(t)}{dt} = f(x(t)) +\end{align}\]

    At this stage we have not conducted extensive tests with all the solvers in DifferentialEquations most of our tests use Rodas5().

    • ResidualModel: Define models that can be solved using Implicit ODE solvers and also the solver IDA from Sundials. The model is formulated to solved the following problem:

    \[\begin{align} +r(t) = \frac{dx(t)}{dt} - f(x(t)) +\end{align}\]

    At this stage we have not conducted extensive tests with all the solvers in DifferentialEquations if you are solving a larger system use IDA().

    The dynamic system model in PowerSimulationsDynamics

    In order to support both formulations, the default implementation of the ResidualModel solves the following problem:

    \[\begin{align} +r(t) = M\frac{dx(t)}{dt} - f(x(t)) +\end{align}\]

    Solution approaches

    PowerSimulationsDynamics.jl construct the entire function that is passed to DifferentialEquations to solve it using different solvers. This is called the Simultaneous-solution approach to numerically integrate over time. It gives the user the flexibility to model devices with a combination of differential and algebraic states. In addition, it gives the flexibility to model the network using an algebraic or differential model.

    On the other hand, industrial tools such as PSS/E uses a Partitioned-solution approach, on which the network must be modeled using an algebraic approach, and the differential equations and algebraic equations are solved sequentially. This method is usually faster if the heuristics for convergence when solving sequentially are properly tuned. However, boundary techniques must be considered when the connection with the devices and network is not converging when applying the partitioned-solution approach.

    The difference in solution methods can complicate the validation and comparison between software tools. In addition it can affect the computational properties due to reliance of heuristics. These solution aspects are important to consider when using different tools for simulating power systems dynamics.

    For more details, check Brian Stott paper "Power system dynamic response calculations".

    Generator Models

    Here we discuss the structure and models used to model generators in PowerSimulationsDynamics.jl. See PowerSystems.jl dynamic devices for details.

    Each generator is a data structure composed of the following components defined in PowerSystems.jl:

    The implementation of Synchronous generators as components uses the following structure to share values across components.

    Inverter Models

    Here we discuss the structure and models used to model inverters in PowerSimulationsDynamics.jl. See PowerSystems.jl dynamic devices for details. One of the key contributions in this software package is a separation of the components in a way that resembles current practices for synchronoues machine modeling.

    • DC Source: Defines the dynamics of the DC side of the converter.
    • Frequency Estimator: That describes how the frequency of the grid can be estimated using the grid voltages. Typically a phase-locked loop (PLL).
    • Outer Loop Control: That describes the active and reactive power control dynamics.
    • Inner Loop Control: That can describe virtual impedance, voltage control and current control dynamics.
    • Converter: That describes the dynamics of the pulse width modulation (PWM) or space vector modulation (SVM).
    • Filter: Used to connect the converter output to the grid.

    The following figure summarizes the components of a inverter and which variables they share:

    Contrary to the generator, there are many control structures that can be used to model inverter controllers (e.g. grid-following, grid feeding or virtual synchronous machine). For this purpose, more variables are shared among the components in order to cover all these posibilities.

    Reference

    For models, check the library in PowerSystems.jl

    diff --git a/previews/PR383/perturbations/index.html b/previews/PR383/perturbations/index.html new file mode 100644 index 000000000..9fcd2c248 --- /dev/null +++ b/previews/PR383/perturbations/index.html @@ -0,0 +1,44 @@ + +Perturbations · PowerSimulationsDynamics.jl

    Perturbations

    Perturbations are used to alter the system from its steady state operation. If a Simulation is properly initialized, all states will remain fixed in their initial condition if no perturbation is applied to the system.

    List of perturbations

    • NetworkSwitch: allows to modify directly the admittance matrix, Ybus, used in the Simulation.
    • BranchTrip: completely disconnects a branch from the system.
    • BranchImpedanceChange: change the impedance of a branch by a user defined multiplier.
    • GeneratorTrip: allows to disconnect a Dynamic Generation unit from the system.
    • ControlReferenceChange: allows to change the reference setpoint provided by a generator/inverter.
    • LoadChange: allows to change the active or reactive power setpoint from a load.
    • LoadTrip: allows the user to disconnect a load from the system.
    • SourceBusVoltageChange: allows to change the reference setpoint provided by a voltage source.

    Examples

    Example 1: Circuit Disconnection using NetworkSwitch

    Consider a two bus system connected via a double circuit line, on which each circuit has parameters, r = 0.0, x = 0.1, b = 0.0 per unit, then the admittance matrix of the original system is given by:

    yb = [0.0 - 20.0im 0.0 + 20.0im
    +      0.0 + 20.0im 0.0 - 20.0im]

    Triping one circuit can be modeled by doubling the impedance, i.e., dividing by 2 the admittance:

    new_yb = [0.0 - 10.0im 0.0 + 10.0im
    +          0.0 + 10.0im 0.0 - 10.0im]

    To apply a Network Switch, we require to use a sparse matrix, so we can do this by simply:

    using SparseArrays
    +new_yb = sparse(new_yb)

    Then, this perturbation ocurring at $t = 1.0$ seconds can be included as:

    ns1 = NetworkSwitch(1.0, new_yb)

    Example 2: Three Phase Fault using NetworkSwitch

    Another perturbation that can be modeled is a three phase fault at Bus 1 with impedance r_f = 0.0001, x_f = 0.0 per unit, then the admittance of this new system is:

    new_yb2 = [10000.0 - 20.0im  0.0 + 20.0im
    +           0.0 + 20.0im  0.0 - 20.0im]

    Then, this perturbation ocurring at $t = 1.0$ seconds can be included as:

    new_yb2 = sparse(new_yb2)
    +ns2 = NetworkSwitch(1.0, new_yb2)

    Now, consider that the fault is cleared at $t = 1.05$ seconds by disconnecting the Circuit 2 of the line. This can be modeled with the single circuit admittance matrix:

    new_yb3 = [0.0 - 10.0im 0.0 + 10.0im
    +           0.0 + 10.0im 0.0 - 10.0im]

    and the perturbation as:

    new_yb3 = sparse(new_yb3)
    +ns3 = NetworkSwitch(1.05, new_yb3)

    Then, the entire perturbation for the Simulation can be included in a vector of perturbations as:

    three_fault = [ns2, ns3]

    that can be passed as a perturbation argument in the Simulation construction.

    Example 3: BranchTrip

    Consider the following 2 bus system defined by:

    buses = [
    +    Bus(1, "nodeA", "REF", 0, 1.0, (min = 0.9, max = 1.05), 230, nothing, nothing),
    +    Bus(2, "nodeB", "PV", 0, 1.0, (min = 0.9, max = 1.05), 230, nothing, nothing),
    +]
    +
    +line1 = Line(
    +        "Circuit1",
    +        true,
    +        0.0,
    +        0.0,
    +        Arc(from = buses[1], to = buses[2]),
    +        0.00,
    +        0.1,
    +        (from = 0.0, to = 0.0),
    +        2.0,
    +        (min = -0.7, max = 0.7),
    +    )
    +line2 = Line(
    +        "Circuit2",
    +        true,
    +        0.0,
    +        0.0,
    +        Arc(from = buses[1], to = buses[2]),
    +        0.0,
    +        0.1,
    +        (from = 0.0, to = 0.0),
    +        2.0,
    +        (min = -0.7, max = 0.7),
    +    )
    +
    +sys = System(100.0, buses, [], [], [line1, line2])

    A Branch Trip of Circuit 2 at time $t = 1.0$ seconds, can be implemented as:

    b_trip = BranchTrip(1.0, Line, "Circuit2")

    Note: Islanding is currently not supported in PowerSimulationsDynamics.jl. If a BranchTrip isolates a generation unit, the system may diverge due to the isolated generator.

    Example 4: BranchImpedanceChange

    Following the same example as before, it is possible to amplify the impedance of a single circuit by 2.0 (that would represent that this Circuit is actually composed by 2 circuits) using the following perturbation:

    b_change = BranchImpedanceChange(1.0, Line, "Circuit2", 2.0)

    Example 5: GeneratorTrip

    Consider that you have a generator at bus 102, named "generator-102-1" in your system called sys. The constructor to trip it from the system is:

    g = get_component(DynamicGenerator, sys, "generator-102-1")
    +g_trip = GeneratorTrip(1.0, g)

    Example 6: ControlReferenceChange

    Consider that you have a generator at bus 102, named "generator-102-1" in your system called sys. The constructor to change is active power reference to 0.5 is:

    g = get_component(DynamicGenerator, sys, "generator-102-1")
    +crc = ControlReferenceChange(1.0, g, :P_ref, 0.5)

    Example 7: LoadChange

    Consider that you have a load at bus 103, named "load-103-1" in your system called sys. The constructor to change is active power reference to 0.8 per unit at $t = 1.0$ seconds is:

    l_device = get_component(ElectricLoad, sys, "load-103-1")
    +l_change = LoadChange(1.0, l_device, :P_ref, 0.8)

    Example 8: LoadTrip

    Consider that you have a load at bus 103, named "load-103-1" in your system called sys. The constructor to disconnect such load at $t = 1.0$ seconds is:

    l_device = get_component(ElectricLoad, sys, "load-103-1")
    +l_trip = LoadTrip(1.0, l_device)

    Example 9: SourceBusVoltageChange

    Consider that you have a voltage source at bus 101, named "source-101-1" in your system called sys. The constructor to change is voltage magnitude reference to 1.02 per unit at $t = 1.0$ seconds is:

    s_device = get_component(Source, sys, "source-101-1")
    +s_change = SourceBusVoltageChange(1.0, s_device, 1, 1.02)
    diff --git a/previews/PR383/power-simulations-dynamics.log b/previews/PR383/power-simulations-dynamics.log new file mode 100644 index 000000000..e046a4128 --- /dev/null +++ b/previews/PR383/power-simulations-dynamics.log @@ -0,0 +1,44 @@ +┌ Info: 2024-07-02T15:44:54.500 [5617:1]: The reference Bus has a Source connected to it. The frequency reference model will change to ConstantFrequency +└ @ PowerSimulationsDynamics /home/runner/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/base/frequency_reference.jl:70 +┌ Info: 2024-07-02T15:44:54.534 [5617:1]: Pre-Initializing Simulation States +└ @ PowerSimulationsDynamics /home/runner/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/base/simulation.jl:265 +┌ Info: 2024-07-02T15:44:54.534 [5617:1]: Unit System changed to UnitSystem.SYSTEM_BASE = 0 +└ @ PowerSystems /home/runner/.julia/packages/PowerSystems/xh3fM/src/base.jl:395 +┌ Info: 2024-07-02T15:44:56.413 [5617:1]: PowerFlow solve converged, the results have been stored in the system +└ @ PowerFlows /home/runner/.julia/packages/PowerFlows/6nw6s/src/nlsolve_ac_powerflow.jl:47 +┌ Info: 2024-07-02T15:44:56.414 [5617:1]: Unit System changed to UnitSystem.DEVICE_BASE = 1 +└ @ PowerSystems /home/runner/.julia/packages/PowerSystems/xh3fM/src/base.jl:395 +┌ Info: 2024-07-02T15:45:10.168 [5617:1]: Residual from initial guess: max = 4.212807880321634e-11 at 4, total = 5.4841923110646186e-11 +└ @ PowerSimulationsDynamics /home/runner/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/base/nlsolve_wrapper.jl:115 +┌ Info: 2024-07-02T15:45:10.213 [5617:1]: Initialization non-linear solve succeeded with a tolerance of 1.0e-9 using solver trust_region. Saving solution. +└ @ PowerSimulationsDynamics /home/runner/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/base/nlsolve_wrapper.jl:82 +┌ Info: 2024-07-02T15:45:10.214 [5617:1]: Attaching Perturbations +└ @ PowerSimulationsDynamics /home/runner/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/base/simulation.jl:299 +┌ Info: 2024-07-02T15:45:10.789 [5617:1]: Simulations status = BUILT +└ @ PowerSimulationsDynamics /home/runner/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/base/simulation.jl:462 +┌ Info: 2024-07-02T15:45:10.789 [5617:1]: +│ ─────────────────────────────────────────────────────────────────────────────── +│ Time Allocations +│ ─────────────── ─────────────── +│ Total measured: 18.4s 817MiB +│ +│ Section ncalls time %tot alloc %tot +│ ─────────────────────────────────────────────────────────────────────────────── +│ Build Simulation 1 18.4s 100.0% 817MiB 100.0% +│ Build Simulation Inputs 1 2.10s 11.4% 124MiB 15.1% +│ Wrap Branches 1 12.1μs 0.0% 208B 0.0% +│ Wrap Dynamic Injectors 1 1.21s 6.6% 77.9MiB 9.5% +│ Calculate MM, DAE_vector, Tota... 1 84.3ms 0.5% 6.28MiB 0.8% +│ Wrap Static Injectors 1 66.2ms 0.4% 1.63MiB 0.2% +│ Pre-initialization 1 5.35s 29.2% 241MiB 29.5% +│ Power Flow solution 1 1.92s 10.5% 41.5MiB 5.1% +│ Initialize Static Injectors 1 2.39s 13.0% 27.4MiB 3.3% +│ Initialize Dynamic Injectors 1 1.04s 5.7% 172MiB 21.1% +│ Calculate Jacobian 1 4.91s 26.8% 395MiB 48.4% +│ Make Model Function 1 6.54ms 0.0% 122KiB 0.0% +│ Initial Condition NLsolve refine... 1 5.41s 29.5% 29.9MiB 3.7% +│ Build Perturbations 1 262ms 1.4% 13.5MiB 1.6% +│ Make DiffEq Problem 1 306ms 1.7% 14.0MiB 1.7% +│ ─────────────────────────────────────────────────────────────────────────────── +│ +└ @ PowerSimulationsDynamics /home/runner/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/base/simulation.jl:487 diff --git a/previews/PR383/quick_start_guide/index.html b/previews/PR383/quick_start_guide/index.html new file mode 100644 index 000000000..a0bd8b065 --- /dev/null +++ b/previews/PR383/quick_start_guide/index.html @@ -0,0 +1,103 @@ + +Quick Start Guide · PowerSimulationsDynamics.jl

    Quick Start Guide

    The data for these tutorials is provided in PowerSystemCaseBuilder. If you want to build your own case, take a look at the tutorial Creating and Handling Data for Dynamic Simulations

    For more details about loading data and adding more dynamic components check the Creating a System with Dynamic devices section of the documentation in PowerSystems.jl.

    For a detailed tutorial about this case visit One Machine against Infinite Bus (OMIB) Simulation

    Loading data

    Data can be loaded from a pss/e raw file and a pss/e dyr file.

    julia> using PowerSystems
    julia> using PowerSimulationsDynamics
    julia> using PowerSystemCaseBuilder
    julia> using Sundials
    julia> using Plots
    julia> omib_sys = build_system(PSIDSystems, "OMIB System")┌ Info: Building new system OMIB System from raw data +└ sys_descriptor.raw_data = "" +┌ Warning: System is saved in the data format version 2.0.0 will be automatically upgraded to 3.0.0 upon saving +└ @ PowerSystems ~/.julia/packages/PowerSystems/xh3fM/src/data_format_conversions.jl:82 +┌ Warning: struct ACBus does not exist in validation configuration file, validation skipped +└ @ InfrastructureSystems ~/.julia/packages/InfrastructureSystems/9btGb/src/validation.jl:51 +┌ Warning: struct ACBus does not exist in validation configuration file, validation skipped +└ @ InfrastructureSystems ~/.julia/packages/InfrastructureSystems/9btGb/src/validation.jl:51 +┌ Warning: struct DynamicGenerator does not exist in validation configuration file, validation skipped +└ @ InfrastructureSystems ~/.julia/packages/InfrastructureSystems/9btGb/src/validation.jl:51 +┌ Warning: field prime_mover_type does not exist in ThermalStandard validation config +└ @ InfrastructureSystems ~/.julia/packages/InfrastructureSystems/9btGb/src/validation.jl:65 +┌ Warning: struct DynamicGenerator does not exist in validation configuration file, validation skipped +└ @ InfrastructureSystems ~/.julia/packages/InfrastructureSystems/9btGb/src/validation.jl:51 +┌ Warning: System is saved in the data format version 2.0.0 will be automatically upgraded to 3.0.0 upon saving +└ @ PowerSystems ~/.julia/packages/PowerSystems/xh3fM/src/data_format_conversions.jl:110 +┌ Warning: There are no ElectricLoad Components in the System +└ @ PowerSystems ~/.julia/packages/PowerSystems/xh3fM/src/utils/IO/system_checks.jl:59 +[ Info: Serialized System to /home/runner/.julia/packages/PowerSystemCaseBuilder/vlTjU/data/serialized_system/NoArgs/OMIB System.json +[ Info: Serialized System metadata to /home/runner/.julia/packages/PowerSystemCaseBuilder/vlTjU/data/serialized_system/NoArgs/OMIB System_metadata.json +System +┌───────────────────┬─────────────┐ +│ Property │ Value │ +├───────────────────┼─────────────┤ +│ Name │ │ +│ Description │ │ +│ System Units Base │ SYSTEM_BASE │ +│ Base Power │ 100.0 │ +│ Base Frequency │ 60.0 │ +│ Num Components │ 10 │ +└───────────────────┴─────────────┘ + +Static Components +┌─────────────────┬───────┬────────────────────────┬───────────────┐ +│ Type │ Count │ Has Static Time Series │ Has Forecasts │ +├─────────────────┼───────┼────────────────────────┼───────────────┤ +│ ACBus │ 2 │ false │ false │ +│ Arc │ 1 │ false │ false │ +│ Area │ 1 │ false │ false │ +│ Line │ 2 │ false │ false │ +│ LoadZone │ 1 │ false │ false │ +│ Source │ 1 │ false │ false │ +│ ThermalStandard │ 1 │ false │ false │ +└─────────────────┴───────┴────────────────────────┴───────────────┘ + +Dynamic Components +┌──────────────────┬───────┐ +│ Type │ Count │ +├──────────────────┼───────┤ +│ DynamicGenerator │ 1 │ +└──────────────────┴───────┘

    Define the Simulation

    julia> time_span = (0.0, 30.0)(0.0, 30.0)
    julia> perturbation_trip = BranchTrip(1.0, Line, "BUS 1-BUS 2-i_1")BranchTrip(1.0, Line, "BUS 1-BUS 2-i_1")
    julia> sim = Simulation!(ResidualModel, omib_sys, pwd(), time_span, perturbation_trip)[ Info: Unit System changed to UnitSystem.DEVICE_BASE = 1 +Simulation Summary +┌─────────────────────────┬────────────────┐ +│ Property │ Value │ +├─────────────────────────┼────────────────┤ +│ Status │ BUILT │ +│ Simulation Type │ Residual Model │ +│ Initialized? │ Yes │ +│ Multimachine system? │ No │ +│ Time Span │ (0.0, 30.0) │ +│ Number of States │ 6 │ +│ Number of Perturbations │ 1 │ +└─────────────────────────┴────────────────┘

    Explore initial conditions for the simulation

    julia> x0_init = read_initial_conditions(sim)Dict{String, Any} with 5 entries:
    +  "generator-102-1" => Dict(:ω=>1.0, :δ=>0.168525)
    +  "V_R"             => Dict(102=>1.03973, 101=>1.05)
    +  "Vm"              => Dict(102=>1.04, 101=>1.05)
    +  "θ"               => Dict(102=>0.0228958, 101=>0.0)
    +  "V_I"             => Dict(102=>0.0238095, 101=>0.0)
    julia> show_states_initial_value(sim)Voltage Variables
    +====================
    +BUS 1
    +====================
    +Vm 1.05
    +θ 0.0
    +====================
    +BUS 2
    +====================
    +Vm 1.04
    +θ 0.0229
    +====================
    +====================
    +Differential States
    +generator-102-1
    +====================
    +δ 0.1685
    +ω 1.0
    +====================

    Obtain small signal results for initial conditions

    Show eigenvalues for operating point

    julia>     small_sig = small_signal_analysis(sim)The system is small signal stable
    julia> summary_eigenvalues(small_sig)2×6 DataFrame + Row │ Most Associated Part. Factor Real Part Imag. Part Damping [%] Fr ⋯ + │ Any Any Any Any Any An ⋯ +─────┼────────────────────────────────────────────────────────────────────────── + 1 │ generator-102-1 δ 0.5 -0.158831 -13.2643 1.19735 2. ⋯ + 2 │ generator-102-1 δ 0.5 -0.158831 13.2643 1.19735 2. + 1 column omitted

    Execute the simulation

    julia>     execute!(sim, IDA(), dtmax = 0.02, saveat = 0.02, enable_progress_bar = false)SIMULATION_FINALIZED::BUILD_STATUS = 6

    Make a plot of the results

    julia> results = read_results(sim)Simulation Results Summary
    +┌────────────────────────────┬─────────────┐
    +│ Property                   │ Value       │
    +├────────────────────────────┼─────────────┤
    +│ System Base Power [MVA]    │ 100.0       │
    +│ System Base Frequency [Hz] │ 60.0        │
    +│ Time Span                  │ (0.0, 30.0) │
    +│ Total Time Steps           │ 1502        │
    +│ Number of States           │ 6           │
    +│ Total solve time           │ 2.200453186 │
    +└────────────────────────────┴─────────────┘
    julia> angle = get_state_series(results, ("generator-102-1", :δ));
    julia> plot(angle, xlabel = "time", ylabel = "rotor angle [rad]", label = "gen-102-1")Plot{Plots.GRBackend() n=1}

    plot

    If you miss PSS/e's plotting aesthetics and want something that resembles that, you can use UnicodePlots.

    julia> using UnicodePlots
    julia> unicodeplots()Plots.UnicodePlotsBackend()
    julia> plot(angle, xlabel = "time", ylabel = "rotor angle [rad]", label = "gen-102-1");

    plot

    diff --git a/previews/PR383/reference_frames/index.html b/previews/PR383/reference_frames/index.html new file mode 100644 index 000000000..d74002e7b --- /dev/null +++ b/previews/PR383/reference_frames/index.html @@ -0,0 +1,11 @@ + +Reference Frames · PowerSimulationsDynamics.jl

    Reference Frames

    Each dynamic device is defined in its own $dq$ synchronous reference frame (SRF). It is important to note that there are several conventions to do reference frame transformations.

    Synchronous Machines

    The grid is modeled in its own real-imaginary (RI) reference frame. With such, this follows the standard convention that for a voltage angle $\theta = 0$, there is no imaginary part and hence $v_h = v_r + j0$. Traditionally, the reference frame $dq$ with rotor angle $\delta$ for synchronous machines connected to a bus $v_h\angle \theta = v_r + jv_i$ follows the following convention for transformation of per-unit RMS phasors:

    \[\begin{align} +v_d + jv_q &= (v_r + jv_i) e^{-j(\delta- \pi/2)} \tag{1a} \\ +v_d &= v_h \sin(\delta - \theta) \tag{1b} \\ +v_q &= v_h \cos(\delta - \theta) \tag{1c} \\ +\left[ \begin{array}{c} v_d \\ v_q \end{array} \right] &= \left[ \begin{array}{cc} \sin(\delta) & -\cos(\delta) \\ \cos(\delta) & \sin(\delta) \end{array} \right] \left[ \begin{array}{c} v_r \\ v_i \end{array} \right] \tag{1d} +\end{align}\]

    Note that hence in a bus of $1.0\angle 0$, a rotor angle of $\delta = 0$ implies that $v_q = 1.0$ and $v_d = 0.0$. This transformation is the one that can be found in most books of Power Systems, such as Kundur, Sauer Pai and in Milano too, and is the convention used in the software to model dynamic models of synchronous machines in their own reference frame.

    Inverters

    The previously convention is not the standard one used for modeling inverters. Most of inverter and phase-lock loop (PLL) models follow the next convention:

    \[\begin{align} +v_d + jv_q &= (v_r + jv_i) e^{-j \delta} \tag{2a} \\ +v_d &= v_h \cos(\delta - \theta) \tag{2b} \\ +v_q &= -v_h \sin(\delta - \theta) \tag{2c} +\end{align}\]

    That, contrary to the previous case, when $\delta = \theta = 0$ implies that $v_d = 1.0$ and $v_q = 0.0$. This yields the typical PLL conditions that steer $v_q \to 0$ when $\delta$ locks in $\theta$, or when both SRF lock between each other.

    Transformation used

    Given the predominancy of both convention in current work, the software uses both conventions depending on the device modeled. For synchronous machines we used the standard convention (1a)-(1d), while for inverter models we use the predominant convention used nowadays in such models, i.e. (2a)-(2c).

    diff --git a/previews/PR383/search/index.html b/previews/PR383/search/index.html new file mode 100644 index 000000000..82bf4e336 --- /dev/null +++ b/previews/PR383/search/index.html @@ -0,0 +1,2 @@ + +Search · PowerSimulationsDynamics.jl diff --git a/previews/PR383/search_index.js b/previews/PR383/search_index.js new file mode 100644 index 000000000..4680e1366 --- /dev/null +++ b/previews/PR383/search_index.js @@ -0,0 +1,3 @@ +var documenterSearchIndex = {"docs": +[{"location":"execute/#Executing-a-Simulation","page":"Simulation Execution","title":"Executing a Simulation","text":"","category":"section"},{"location":"execute/","page":"Simulation Execution","title":"Simulation Execution","text":"After constructing the System data from PowerSystems.jl with its dynamic components, a Simulation structure must be constructed. Check the API for Simulation and Simulation! for its construction and available arguments.","category":"page"},{"location":"execute/","page":"Simulation Execution","title":"Simulation Execution","text":"Once a Simulation is constructed and properly initialized, the execute! command is used to run the Simulation. If no perturbation was included, then a steady state simulation will be run over the time span defined. See the API of execute! for more details.","category":"page"},{"location":"execute/#Solvers","page":"Simulation Execution","title":"Solvers","text":"","category":"section"},{"location":"execute/","page":"Simulation Execution","title":"Simulation Execution","text":"Solvers must be chosen accordingly depending on the type of model used in the Simulation. For example, a Residual model can be executed using Sundials IDA solver:","category":"page"},{"location":"execute/","page":"Simulation Execution","title":"Simulation Execution","text":"using Sundials\nsim = Simulation(\n ResidualModel,\n sys,\n pwd(),\n (0.0, 20.0),\n perturbation,\n)\nexecute!(sim, IDA())","category":"page"},{"location":"execute/","page":"Simulation Execution","title":"Simulation Execution","text":"Results can be explored using:","category":"page"},{"location":"execute/","page":"Simulation Execution","title":"Simulation Execution","text":"results = read_results(sim)","category":"page"},{"location":"execute/","page":"Simulation Execution","title":"Simulation Execution","text":"Similarly, a Mass Matrix model can be executed using Rodas4 solver.","category":"page"},{"location":"execute/","page":"Simulation Execution","title":"Simulation Execution","text":"using OrdinaryDiffEq\nsim2 = Simulation(\n MassMatrixModel,\n sys,\n pwd(),\n (0.0, 20.0),\n perturbation,\n)\nexecute!(sim2, Rodas4())","category":"page"},{"location":"execute/#Exploring-the-Solution","page":"Simulation Execution","title":"Exploring the Solution","text":"","category":"section"},{"location":"execute/","page":"Simulation Execution","title":"Simulation Execution","text":"Once a Simulation is executed and the results are stored via results = read_results(sim), the following functions can be used to explore the Simulation solution:","category":"page"},{"location":"execute/#Show-initial-conditions","page":"Simulation Execution","title":"Show initial conditions","text":"","category":"section"},{"location":"execute/","page":"Simulation Execution","title":"Simulation Execution","text":"The function show_states_initial_value(results) can be used to display the initial condition of the voltages and dynamic states of each dynamic component.","category":"page"},{"location":"execute/#Explore-bus-voltages","page":"Simulation Execution","title":"Explore bus voltages","text":"","category":"section"},{"location":"execute/","page":"Simulation Execution","title":"Simulation Execution","text":"The function get_voltage_magnitude_series(results, BusNumber) can be used to obtain the voltage magnitude time series of the specified bus. Similarly, get_voltage_angle_series(results, BusNumber) can be used to obtain the voltage angle time series of the specified bus.","category":"page"},{"location":"execute/#Explore-output-currents","page":"Simulation Execution","title":"Explore output currents","text":"","category":"section"},{"location":"execute/","page":"Simulation Execution","title":"Simulation Execution","text":"The functions get_real_current_series(results, \"DeviceName\") and get_imaginary_current_series(results, \"DeviceName\") can be used to obtain the output current time series of the specified device.","category":"page"},{"location":"execute/#Explore-output-power","page":"Simulation Execution","title":"Explore output power","text":"","category":"section"},{"location":"execute/","page":"Simulation Execution","title":"Simulation Execution","text":"The functions get_activepower_series(results, \"DeviceName\") and get_reactivepower_series(results, \"DeviceName\") can be used to obtain the output power time series of the specified device.","category":"page"},{"location":"execute/#Explore-dynamic-states","page":"Simulation Execution","title":"Explore dynamic states","text":"","category":"section"},{"location":"execute/","page":"Simulation Execution","title":"Simulation Execution","text":"The function get_state_series(results, (\"DeviceName\", :StateSymbol) can be used to obtain the specified state time series of the specified device.","category":"page"},{"location":"execute/#Explore-Reference-Setpoints","page":"Simulation Execution","title":"Explore Reference Setpoints","text":"","category":"section"},{"location":"execute/","page":"Simulation Execution","title":"Simulation Execution","text":"The function get_setpoints(sim) can be used to obtain the reference setpoints of each dynamic device. Note: If a setpoint was changed via a perturbation, this function will return the modified setpoint.","category":"page"},{"location":"execute/#Keyword-Arguments","page":"Simulation Execution","title":"Keyword Arguments","text":"","category":"section"},{"location":"execute/","page":"Simulation Execution","title":"Simulation Execution","text":"Any solver option available in DifferentialEquations.jl can be passed as keyword arguments in the execute! function. Please see the Common Solver Options in the DifferentialEquations.jl documentation for more details.","category":"page"},{"location":"execute/","page":"Simulation Execution","title":"Simulation Execution","text":"Most common solver options used are dtmax to control the maximum dt for adaptive timestepping. abstol and reltol are also commonly used to control the tolerance in the adaptive timestepping. saveat is also used to store the results at a specified time stamps. For example, the following code is valid to further specify your solver options:","category":"page"},{"location":"execute/","page":"Simulation Execution","title":"Simulation Execution","text":"execute!(sim, IDA(), dtmax = 0.01, abstol = 1e-9, reltol = 1e-6, saveat = 0.01)","category":"page"},{"location":"execute/","page":"Simulation Execution","title":"Simulation Execution","text":"In addition, the keyword argument enable_progress_bar = false can be used to disable the progress bar.","category":"page"},{"location":"component_models/inner_control/#Inner-Loop-Controls","page":"Inner Control","title":"Inner Loop Controls","text":"","category":"section"},{"location":"component_models/inner_control/","page":"Inner Control","title":"Inner Control","text":"This component defines voltage and current controllers to generate the reference signal for the converter. Although in many controls the current and voltage control are separate blocks we propose a more general control approach that considers them as a joint control logic.","category":"page"},{"location":"component_models/inner_control/#Integrated-Virtual-Impedance,-Voltage-and-Current-Controller-[VoltageModeControl]","page":"Inner Control","title":"Integrated Virtual Impedance, Voltage and Current Controller [VoltageModeControl]","text":"","category":"section"},{"location":"component_models/inner_control/","page":"Inner Control","title":"Inner Control","text":"The following model receives both the outer loop control frequency and reference voltage signal to generate the reference signal for the converters. The virtual impedance plays a similar role of the impedance of a synchronous generator. A PI voltage controller is used to generate the current signal that is used in the PI current controller to finally generate the voltage reference signal for the converters.","category":"page"},{"location":"component_models/inner_control/","page":"Inner Control","title":"Inner Control","text":"beginalign*\n dotxi_d = v_dtextvi^textref - v_d tag1a \n dotxi_q = v_qtextvi^textref - v_q tag1b \n dotgamma_d = i_dtextcv^textref - i_dtextcv tag1c \n dotgamma_q = i_qtextcv^textref - i_qtextcv tag1d \n dotphi_d = omega_textad(v_d - phi_d) tag1e \n dotphi_q = omega_textad(v_q - phi_q) tag1f\nendalign*","category":"page"},{"location":"component_models/inner_control/","page":"Inner Control","title":"Inner Control","text":"with","category":"page"},{"location":"component_models/inner_control/","page":"Inner Control","title":"Inner Control","text":"beginalign\n v_dtextvi^textref = v_textolc^textref - r_v i_d + omega_textolc l_v i_q tag1g \n v_qtextvi^textref = - r_v i_q - omega_textolc l_v i_d tag1h \n i_dtextcv^textref = k_pvleft(v_dtextvi^textref - v_dright) + k_iv xi_d - c_f omega_textolc v_q + k_textffii_d tag1i \n i_qtextcv^textref = k_pvleft(v_qtextvi^textref - v_qright) + k_iv xi_q + c_f omega_textolc v_d + k_textffii_q tag1j \n v_d^textref-signal = k_pc left(i_dtextcv^textref - i_dtextcvright) + k_ic gamma_d - omega_textolc l_f i_qtextcv + k_textffvv_d - k_textad(v_d - phi_d) tag1k \n v_q^textref-signal = k_pc left(i_qtextcv^textref - i_qtextcvright) + k_ic gamma_q + omega_textolc l_f i_dtextcv + k_textffvv_q - k_textad(v_q - phi_q) tag1l\nendalign","category":"page"},{"location":"component_models/inner_control/","page":"Inner Control","title":"Inner Control","text":"In here the transformation to the dq reference frame is using the outer-loop reference angle as:","category":"page"},{"location":"component_models/inner_control/","page":"Inner Control","title":"Inner Control","text":"beginalign*\nv_d + jv_q = (v_r + jv_i)e^-jdeltatheta_olc \ni_d + ji_q = (i_r + ji_i)e^-jdeltatheta_olc\nendalign*","category":"page"},{"location":"component_models/inner_control/","page":"Inner Control","title":"Inner Control","text":"that again v_r + jv_i could be in the capacitor or the last branch of the filter (i.e. the point of common coupling). For LCL filters it is considered in the capacitor. In the case of the converter, the transformation is directly","category":"page"},{"location":"component_models/inner_control/","page":"Inner Control","title":"Inner Control","text":"beginalign*\ni_dtextcv + ji_qtextcv = (i_rtextcv + ji_itextcv)e^-jdeltatheta_olc\nendalign*","category":"page"},{"location":"component_models/inner_control/#Current-Mode-Controller-[CurrentModeControl]","page":"Inner Control","title":"Current Mode Controller [CurrentModeControl]","text":"","category":"section"},{"location":"component_models/inner_control/","page":"Inner Control","title":"Inner Control","text":"The following model receives the current reference (in dq axis) from an outer loop controller that outputs current references such as the PI outer controller used for grid following inverters. A PI current controller is used to generate the voltage reference signal for the converters.","category":"page"},{"location":"component_models/inner_control/","page":"Inner Control","title":"Inner Control","text":"beginalign*\n dotgamma_d = i_dtextcv^textref - i_dtextcv tag2a \n dotgamma_q = i_qtextcv^textref - i_qtextcv tag2b \nendalign*","category":"page"},{"location":"component_models/inner_control/","page":"Inner Control","title":"Inner Control","text":"with","category":"page"},{"location":"component_models/inner_control/","page":"Inner Control","title":"Inner Control","text":"beginalign\n v_d^textref-signal = k_pc left(i_dtextcv^textref - i_dtextcvright) + k_ic gamma_d - omega_textolc l_f i_qtextcv + k_textffvv_d tag2b \n v_q^textref-signal = k_pc left(i_qtextcv^textref - i_qtextcvright) + k_ic gamma_q + omega_textolc l_f i_dtextcv + k_textffvv_q tag2c\nendalign","category":"page"},{"location":"component_models/inner_control/","page":"Inner Control","title":"Inner Control","text":"The transformation for the converter current is computed as:","category":"page"},{"location":"component_models/inner_control/","page":"Inner Control","title":"Inner Control","text":"beginalign*\ni_dtextcv + ji_qtextcv = (i_rtextcv + ji_itextcv)e^-jtheta_olc\nendalign*","category":"page"},{"location":"component_models/inner_control/","page":"Inner Control","title":"Inner Control","text":"In here theta_olc is the outer-loop angle. In the case of grid-following models, this angle is equal to the angle provided from the PLL.","category":"page"},{"location":"component_models/inner_control/#Generic-Renewable-Inner-Controller-Type-B-[RECurrentControlB]","page":"Inner Control","title":"Generic Renewable Inner Controller Type B [RECurrentControlB]","text":"","category":"section"},{"location":"component_models/inner_control/","page":"Inner Control","title":"Inner Control","text":"This models the inner control part of the REECB model. The equations (without limiters) when Q_Flag = 1 are:","category":"page"},{"location":"component_models/inner_control/","page":"Inner Control","title":"Inner Control","text":"beginalign\n T_rv dotV_texttflt = V_t - dotV_texttflt tag3a \n dotxi_icv = V_textocqcmd tag3b\nendalign","category":"page"},{"location":"component_models/inner_control/","page":"Inner Control","title":"Inner Control","text":"on which V_textocqcmd comes from the Outer Controller and the output current commands I_textpcmd and I_textqcmd are computed as:","category":"page"},{"location":"component_models/inner_control/","page":"Inner Control","title":"Inner Control","text":"beginalign\n I_textpcmd = I_textoc pcmd tag3c \n I_textqcmd = I_icv + I_textqinj tag3d \n I_icv = K_vp V_textocqcmd + K_vi xi_icv tag3e \n I_textqinj = K_qv (V_textref0 - V_texttflt) tag3f\nendalign","category":"page"},{"location":"component_models/inner_control/","page":"Inner Control","title":"Inner Control","text":"The equations when Q_Flag = 0 are:","category":"page"},{"location":"component_models/inner_control/","page":"Inner Control","title":"Inner Control","text":"beginalign\n T_rv dotV_texttflt = V_t - dotV_texttflt tag3g \n T_iq dotI_icv = I_textocqcmd - I_icv tag3h\nendalign","category":"page"},{"location":"component_models/inner_control/","page":"Inner Control","title":"Inner Control","text":"on which I_textocqcmd comes from the Outer Controller and the output current commands I_textpcmd and I_textqcmd are computed as:","category":"page"},{"location":"component_models/inner_control/","page":"Inner Control","title":"Inner Control","text":"beginalign\n I_textpcmd = I_textoc pcmd tag3i \n I_textqcmd = I_icv + I_textqinj tag3j \n I_textqinj = K_qv (V_textref0 - V_texttflt) tag3k\nendalign","category":"page"},{"location":"quick_start_guide/#Quick-Start-Guide","page":"Quick Start Guide","title":"Quick Start Guide","text":"","category":"section"},{"location":"quick_start_guide/","page":"Quick Start Guide","title":"Quick Start Guide","text":"The data for these tutorials is provided in PowerSystemCaseBuilder. If you want to build your own case, take a look at the tutorial Creating and Handling Data for Dynamic Simulations","category":"page"},{"location":"quick_start_guide/","page":"Quick Start Guide","title":"Quick Start Guide","text":"For more details about loading data and adding more dynamic components check the Creating a System with Dynamic devices section of the documentation in PowerSystems.jl.","category":"page"},{"location":"quick_start_guide/","page":"Quick Start Guide","title":"Quick Start Guide","text":"For a detailed tutorial about this case visit One Machine against Infinite Bus (OMIB) Simulation","category":"page"},{"location":"quick_start_guide/#Loading-data","page":"Quick Start Guide","title":"Loading data","text":"","category":"section"},{"location":"quick_start_guide/","page":"Quick Start Guide","title":"Quick Start Guide","text":"Data can be loaded from a pss/e raw file and a pss/e dyr file.","category":"page"},{"location":"quick_start_guide/","page":"Quick Start Guide","title":"Quick Start Guide","text":"using PowerSystems\nusing PowerSimulationsDynamics\nusing PowerSystemCaseBuilder\nusing Sundials\nusing Plots\n\nomib_sys = build_system(PSIDSystems, \"OMIB System\")","category":"page"},{"location":"quick_start_guide/#Define-the-Simulation","page":"Quick Start Guide","title":"Define the Simulation","text":"","category":"section"},{"location":"quick_start_guide/","page":"Quick Start Guide","title":"Quick Start Guide","text":"time_span = (0.0, 30.0)\nperturbation_trip = BranchTrip(1.0, Line, \"BUS 1-BUS 2-i_1\")\nsim = Simulation!(ResidualModel, omib_sys, pwd(), time_span, perturbation_trip)","category":"page"},{"location":"quick_start_guide/#Explore-initial-conditions-for-the-simulation","page":"Quick Start Guide","title":"Explore initial conditions for the simulation","text":"","category":"section"},{"location":"quick_start_guide/","page":"Quick Start Guide","title":"Quick Start Guide","text":"x0_init = read_initial_conditions(sim)","category":"page"},{"location":"quick_start_guide/","page":"Quick Start Guide","title":"Quick Start Guide","text":"show_states_initial_value(sim)","category":"page"},{"location":"quick_start_guide/#Obtain-small-signal-results-for-initial-conditions","page":"Quick Start Guide","title":"Obtain small signal results for initial conditions","text":"","category":"section"},{"location":"quick_start_guide/","page":"Quick Start Guide","title":"Quick Start Guide","text":"Show eigenvalues for operating point","category":"page"},{"location":"quick_start_guide/","page":"Quick Start Guide","title":"Quick Start Guide","text":" small_sig = small_signal_analysis(sim)\n summary_eigenvalues(small_sig)","category":"page"},{"location":"quick_start_guide/#Execute-the-simulation","page":"Quick Start Guide","title":"Execute the simulation","text":"","category":"section"},{"location":"quick_start_guide/","page":"Quick Start Guide","title":"Quick Start Guide","text":" execute!(sim, IDA(), dtmax = 0.02, saveat = 0.02, enable_progress_bar = false)","category":"page"},{"location":"quick_start_guide/#Make-a-plot-of-the-results","page":"Quick Start Guide","title":"Make a plot of the results","text":"","category":"section"},{"location":"quick_start_guide/","page":"Quick Start Guide","title":"Quick Start Guide","text":"results = read_results(sim)\nangle = get_state_series(results, (\"generator-102-1\", :δ));\nplot(angle, xlabel = \"time\", ylabel = \"rotor angle [rad]\", label = \"gen-102-1\")","category":"page"},{"location":"quick_start_guide/","page":"Quick Start Guide","title":"Quick Start Guide","text":"(Image: plot)","category":"page"},{"location":"quick_start_guide/","page":"Quick Start Guide","title":"Quick Start Guide","text":"If you miss PSS/e's plotting aesthetics and want something that resembles that, you can use UnicodePlots.","category":"page"},{"location":"quick_start_guide/","page":"Quick Start Guide","title":"Quick Start Guide","text":"using UnicodePlots\nunicodeplots()\nplot(angle, xlabel = \"time\", ylabel = \"rotor angle [rad]\", label = \"gen-102-1\");","category":"page"},{"location":"quick_start_guide/","page":"Quick Start Guide","title":"Quick Start Guide","text":"(Image: plot)","category":"page"},{"location":"component_models/filters/#Filters","page":"Filter","title":"Filters","text":"","category":"section"},{"location":"component_models/filters/#LCL-Filter-[LCLFilter]","page":"Filter","title":"LCL Filter [LCLFilter]","text":"","category":"section"},{"location":"component_models/filters/","page":"Filter","title":"Filter","text":"A standard LCL filter is proposed to connect the output of the converter to the grid. In this case, v_r and v_i are voltages in the capacitor, while v_r^textgrid and v_i^textgrid represent the voltage at the bus. The L filter after the capacitor can also include a step-up transformer to increase the voltage, that is model as an extra impedance.","category":"page"},{"location":"component_models/filters/","page":"Filter","title":"Filter","text":"beginalign\n doti_rtextcv = fracOmega_bl_fleft( v_r^textcv - v_r - r_f i_rtextcv + omega_textgrid l_f i_itextcv right) tag1a \n doti_itextcv = fracOmega_bl_fleft( v_i^textcv - v_i - r_f i_itextcv - omega_textgrid l_f i_rtextcv right) tag1b \n dotv_r = fracOmega_bc_fleft( i_r^textcv - i_r + omega_textgrid c_f v_i right) tag1c \n dotv_i = fracOmega_bc_fleft( i_i^textcv - i_i - omega_textgrid c_f v_r right) tag1d \n doti_r = fracOmega_bl_gleft( v_r - v_r^textgrid - r_g i_r + omega_textgrid l_g i_i right) tag1e \n doti_i = fracOmega_bl_gleft( v_i - v_i^textgrid - r_g i_i - omega_textgrid l_g i_r right) tag1f\nendalign","category":"page"},{"location":"component_models/filters/","page":"Filter","title":"Filter","text":"on which","category":"page"},{"location":"component_models/filters/","page":"Filter","title":"Filter","text":"beginalign*\nv_r^textcv + jv_i^textcv = (v_d^textcv + jv_q^textcv)e^jdeltatheta_olc\nendalign*","category":"page"},{"location":"component_models/filters/","page":"Filter","title":"Filter","text":"that comes from the converter model.","category":"page"},{"location":"component_models/filters/#RL-Filter-[RLFilter]","page":"Filter","title":"RL Filter [RLFilter]","text":"","category":"section"},{"location":"component_models/filters/","page":"Filter","title":"Filter","text":"The algebraic RL filter is used to connect the output of the converter through a RL series filter using algebraic phasor equations. The equations for the output current are:","category":"page"},{"location":"component_models/filters/","page":"Filter","title":"Filter","text":"beginalign\n i_r + ji_i = frac(v_r^textcv + j v_i^textcv) - (v_r^textgrid + jv_i^textgrid)r_f + jl_f tag2a\nendalign","category":"page"},{"location":"component_models/filters/","page":"Filter","title":"Filter","text":"on which v_r^textcv + jv_i^textcv comes from the converter model.","category":"page"},{"location":"tutorials/tutorial_activeload/#Tutorial-Active-Constant-Power-Load-model","page":"Active Load Model","title":"Tutorial Active Constant Power Load model","text":"","category":"section"},{"location":"tutorials/tutorial_activeload/","page":"Active Load Model","title":"Active Load Model","text":"Originally Contributed by: Rodrigo Henriquez-Auba","category":"page"},{"location":"tutorials/tutorial_activeload/#Introduction","page":"Active Load Model","title":"Introduction","text":"","category":"section"},{"location":"tutorials/tutorial_activeload/","page":"Active Load Model","title":"Active Load Model","text":"This tutorial will introduce you to the functionality of PowerSimulationsDynamics and PowerSystems to explore active load components and a small-signal analysis.","category":"page"},{"location":"tutorials/tutorial_activeload/","page":"Active Load Model","title":"Active Load Model","text":"This tutorial presents a simulation of a two-bus system with a GFM inverter at bus 1, and a load on bus 2. We will change the model from a constant power load model, to a constant impedance model and then to a 12-state active constant power load model.","category":"page"},{"location":"tutorials/tutorial_activeload/#Dependencies","page":"Active Load Model","title":"Dependencies","text":"","category":"section"},{"location":"tutorials/tutorial_activeload/","page":"Active Load Model","title":"Active Load Model","text":"using PowerSimulationsDynamics;\nPSID = PowerSimulationsDynamics\nusing PowerSystemCaseBuilder\nusing PowerSystems\nconst PSY = PowerSystems;","category":"page"},{"location":"tutorials/tutorial_activeload/","page":"Active Load Model","title":"Active Load Model","text":"note: Note\nPowerSystemCaseBuilder.jl is a helper library that makes it easier to reproduce examples in the documentation and tutorials. Normally you would pass your local files to create the system data instead of calling the function build_system. For more details visit PowerSystemCaseBuilder Documentation","category":"page"},{"location":"tutorials/tutorial_activeload/","page":"Active Load Model","title":"Active Load Model","text":"PowerSystems (abbreviated with PSY) is used to properly define the data structure and establish an equilibrium point initial condition with a power flow routine using PowerFlows.","category":"page"},{"location":"tutorials/tutorial_activeload/#Load-the-system","page":"Active Load Model","title":"Load the system","text":"","category":"section"},{"location":"tutorials/tutorial_activeload/","page":"Active Load Model","title":"Active Load Model","text":"We load the system using PowerSystemCaseBuilder.jl. This system has an inverter located at bus 1.","category":"page"},{"location":"tutorials/tutorial_activeload/","page":"Active Load Model","title":"Active Load Model","text":"sys = build_system(PSIDSystems, \"2 Bus Load Tutorial Droop\")","category":"page"},{"location":"tutorials/tutorial_activeload/","page":"Active Load Model","title":"Active Load Model","text":"first(get_components(DynamicInverter, sys))","category":"page"},{"location":"tutorials/tutorial_activeload/","page":"Active Load Model","title":"Active Load Model","text":"The load is an exponential load modeled as a constant power load since the coefficients are set to zero.","category":"page"},{"location":"tutorials/tutorial_activeload/","page":"Active Load Model","title":"Active Load Model","text":"first(get_components(PSY.ExponentialLoad, sys))","category":"page"},{"location":"tutorials/tutorial_activeload/#Run-a-small-signal-analysis","page":"Active Load Model","title":"Run a small-signal analysis","text":"","category":"section"},{"location":"tutorials/tutorial_activeload/","page":"Active Load Model","title":"Active Load Model","text":"We set up the Simulation. Since the droop model does not have a frequency state, we use a constant frequency reference frame for the network.","category":"page"},{"location":"tutorials/tutorial_activeload/","page":"Active Load Model","title":"Active Load Model","text":"sim = Simulation(ResidualModel,\n sys,\n mktempdir(),\n (0.0, 1.0),\n frequency_reference = ConstantFrequency())","category":"page"},{"location":"tutorials/tutorial_activeload/","page":"Active Load Model","title":"Active Load Model","text":"The following provides a summary of eigenvalues for this droop system with a constant power load:","category":"page"},{"location":"tutorials/tutorial_activeload/","page":"Active Load Model","title":"Active Load Model","text":"sm = small_signal_analysis(sim);\ndf = summary_eigenvalues(sm);\nshow(df, allrows = true, allcols = true)","category":"page"},{"location":"tutorials/tutorial_activeload/","page":"Active Load Model","title":"Active Load Model","text":"In this inverter model, the filter is modeled using differential equations, and as described in the literature, interfacing a RL filter against an algebraic constant power load usually results in unstable behavior as observed with the positive real part eigenvalue.","category":"page"},{"location":"tutorials/tutorial_activeload/#Change-to-a-constant-impedance-load-model","page":"Active Load Model","title":"Change to a constant impedance load model","text":"","category":"section"},{"location":"tutorials/tutorial_activeload/","page":"Active Load Model","title":"Active Load Model","text":"Since the load is an exponential load model we can change the exponent coefficients to 2.0 to behave as a constant impedance model:","category":"page"},{"location":"tutorials/tutorial_activeload/","page":"Active Load Model","title":"Active Load Model","text":"# Update load coefficients to 2.0\nload = first(get_components(PSY.ExponentialLoad, sys));\nPSY.set_active_power_coefficient!(load, 2.0);\nPSY.set_reactive_power_coefficient!(load, 2.0);","category":"page"},{"location":"tutorials/tutorial_activeload/","page":"Active Load Model","title":"Active Load Model","text":"We then re-run the small-signal analysis:","category":"page"},{"location":"tutorials/tutorial_activeload/","page":"Active Load Model","title":"Active Load Model","text":"sim = Simulation(ResidualModel,\n sys,\n mktempdir(),\n (0.0, 1.0),\n frequency_reference = ConstantFrequency())","category":"page"},{"location":"tutorials/tutorial_activeload/","page":"Active Load Model","title":"Active Load Model","text":"sm = small_signal_analysis(sim);\ndf = summary_eigenvalues(sm);\nshow(df, allrows = true, allcols = true)","category":"page"},{"location":"tutorials/tutorial_activeload/","page":"Active Load Model","title":"Active Load Model","text":"Observe that now the system is small-signal stable (since there is only one device the angle of the inverter is used as a reference, and hence is zero).","category":"page"},{"location":"tutorials/tutorial_activeload/#Adding-a-dynamic-active-load-model","page":"Active Load Model","title":"Adding a dynamic active load model","text":"","category":"section"},{"location":"tutorials/tutorial_activeload/","page":"Active Load Model","title":"Active Load Model","text":"To consider a dynamic model in the load it is only required to attach a dynamic component to the static load model. When a dynamic load model is attached, the active and reactive power of the static model are used to define reference parameters to ensure that the dynamic load model matches the static load output power.","category":"page"},{"location":"tutorials/tutorial_activeload/","page":"Active Load Model","title":"Active Load Model","text":"Note that when a dynamic model is attached to a static model, the static model does not participate in the dynamic system equations, i.e. the only model interfacing to the network equations is the dynamic model and not the static model (the exponential load).","category":"page"},{"location":"tutorials/tutorial_activeload/","page":"Active Load Model","title":"Active Load Model","text":"We define a function to create a active load model with the specific parameters:","category":"page"},{"location":"tutorials/tutorial_activeload/","page":"Active Load Model","title":"Active Load Model","text":"# Parameters taken from active load model from N. Bottrell Masters\n# Thesis \"Small-Signal Analysis of Active Loads and Large-signal Analysis\n# of Faults in Inverter Interfaced Microgrid Applications\", 2014.\n\n# The parameters are then per-unitized to be scalable to represent an aggregation\n# of multiple active loads\n\n# Base AC Voltage: Vb = 380 V\n# Base Power (AC and DC): Pb = 10000 VA\n# Base AC Current: Ib = 10000 / 380 = 26.32 A\n# Base AC Impedance: Zb = 380 / 26.32 = 14.44 Ω\n# Base AC Inductance: Lb = Zb / Ωb = 14.44 / 377 = 0.3831 H\n# Base AC Capacitance: Cb = 1 / (Zb * Ωb) = 0.000183697 F\n# Base DC Voltage: Vb_dc = (√8/√3) Vb = 620.54 V\n# Base DC Current: Ib_dc = Pb / V_dc = 10000/620.54 = 16.12 A\n# Base DC Impedance: Zb_dc = Vb_dc / Ib_dc = 38.50 Ω\n# Base DC Capacitance: Cb_dc = 1 / (Zb_dc * Ωb) = 6.8886315e-5 F\n\nΩb = 2*pi*60;\nVb = 380;\nPb = 10000;\nIb = Pb / Vb;\nZb = Vb / Ib;\nLb = Zb / Ωb;\nCb = 1 / (Zb * Ωb);\nVb_dc = sqrt(8)/sqrt(3) * Vb;\nIb_dc = Pb / Vb_dc;\nZb_dc = Vb_dc / Ib_dc;\nCb_dc = 1/(Zb_dc * Ωb);\n\nfunction active_cpl(load)\n return PSY.ActiveConstantPowerLoad(\n name = get_name(load),\n r_load = 70.0 / Zb_dc,\n c_dc = 2040e-6 / Cb_dc,\n rf = 0.1 / Zb,\n lf = 2.3e-3 / Lb,\n cf = 8.8e-6 / Cb,\n rg = 0.03 / Zb,\n lg = 0.93e-3 / Lb,\n kp_pll = 0.4,\n ki_pll = 4.69,\n kpv = 0.5 * (Vb_dc / Ib_dc),\n kiv = 150.0 * (Vb_dc / Ib_dc),\n kpc = 15.0 * (Ib / Vb),\n kic = 30000.0 * (Ib / Vb),\n base_power = 100.0,\n )\nend","category":"page"},{"location":"tutorials/tutorial_activeload/","page":"Active Load Model","title":"Active Load Model","text":"We then attach the model to the system:","category":"page"},{"location":"tutorials/tutorial_activeload/","page":"Active Load Model","title":"Active Load Model","text":"load = first(get_components(PSY.ExponentialLoad, sys));\ndyn_load = active_cpl(load)\nadd_component!(sys, dyn_load, load)","category":"page"},{"location":"tutorials/tutorial_activeload/","page":"Active Load Model","title":"Active Load Model","text":"Finally, we set up the simulation:","category":"page"},{"location":"tutorials/tutorial_activeload/","page":"Active Load Model","title":"Active Load Model","text":"sim = Simulation(ResidualModel,\n sys,\n mktempdir(),\n (0.0, 1.0),\n frequency_reference = ConstantFrequency())","category":"page"},{"location":"tutorials/tutorial_activeload/","page":"Active Load Model","title":"Active Load Model","text":"sm = small_signal_analysis(sim);\ndf = summary_eigenvalues(sm);\nshow(df, allrows = true, allcols = true)","category":"page"},{"location":"tutorials/tutorial_activeload/","page":"Active Load Model","title":"Active Load Model","text":"Observe the new states of the active load model and that the system is small-signal stable.","category":"page"},{"location":"component_models/turbine_gov/#Prime-Movers-and-Turbine-Governors-(TG)","page":"Turbine and Governor","title":"Prime Movers and Turbine Governors (TG)","text":"","category":"section"},{"location":"component_models/turbine_gov/","page":"Turbine and Governor","title":"Turbine and Governor","text":"This section describes how mechanical power is modified to provide primary frequency control with synchronous generators. It is assumed that tau_textref = P_textref since they are decided at nominal frequency omega = 1.","category":"page"},{"location":"component_models/turbine_gov/#Fixed-TG-[TGFixed]","page":"Turbine and Governor","title":"Fixed TG [TGFixed]","text":"","category":"section"},{"location":"component_models/turbine_gov/","page":"Turbine and Governor","title":"Turbine and Governor","text":"This a simple model that set the mechanical torque to be equal to a proportion of the desired reference tau_m = eta P_textref. To set the mechanical torque to be equal to the desired power, the value of eta is set to 1.","category":"page"},{"location":"component_models/turbine_gov/#TG-Type-I-[TGTypeI]","page":"Turbine and Governor","title":"TG Type I [TGTypeI]","text":"","category":"section"},{"location":"component_models/turbine_gov/","page":"Turbine and Governor","title":"Turbine and Governor","text":"This turbine governor is described by a droop controller and a low-pass filter to model the governor and two lead-lag blocks to model the servo and reheat of the turbine governor.","category":"page"},{"location":"component_models/turbine_gov/","page":"Turbine and Governor","title":"Turbine and Governor","text":"beginalign\ndotx_g1 = frac1T_s(p_textin - x_g1) tag1a \ndotx_g2 = frac1T_c left left(1- fract_3T_cright)x_g1 - x_g2 right tag1b \ndotx_g3 = frac1T_5 leftleft(1 - fracT_4T_5right)left(x_g2 + fracT_3T_cx_g1right) - x_g3 right tag1c \ntau_m = x_g3 + fracT_4T_5left(x_g2 + fracT_3T_cx_g1right) tag1d\nendalign","category":"page"},{"location":"component_models/turbine_gov/","page":"Turbine and Governor","title":"Turbine and Governor","text":"with","category":"page"},{"location":"component_models/turbine_gov/","page":"Turbine and Governor","title":"Turbine and Governor","text":"beginalign*\np_textin = P_textref + frac1R(omega_s - 10)\nendalign*","category":"page"},{"location":"component_models/turbine_gov/#TG-Type-II-[TGTypeII]","page":"Turbine and Governor","title":"TG Type II [TGTypeII]","text":"","category":"section"},{"location":"component_models/turbine_gov/","page":"Turbine and Governor","title":"Turbine and Governor","text":"This turbine governor is a simplified model of the Type I.","category":"page"},{"location":"component_models/turbine_gov/","page":"Turbine and Governor","title":"Turbine and Governor","text":"beginalign\ndotx_g = frac1T_2leftfrac1Rleft(1 - fracT_1T_2right) (omega_s - omega) - x_gright tag2a \ntau_m = P_textref + frac1RfracT_1T_2(omega_s - omega) tag2b\nendalign","category":"page"},{"location":"component_models/turbine_gov/#TGOV1-[SteamTurbineGov1]","page":"Turbine and Governor","title":"TGOV1 [SteamTurbineGov1]","text":"","category":"section"},{"location":"component_models/turbine_gov/","page":"Turbine and Governor","title":"Turbine and Governor","text":"This represents a classical Steam-Turbine Governor, known as TGOV1.","category":"page"},{"location":"component_models/turbine_gov/","page":"Turbine and Governor","title":"Turbine and Governor","text":"beginalign\ndotx_g1 = frac1T_1 (textref_in - x_g1) tag3a \ndotx_g2 = frac1T_3 left(x_g1^textsat left(1 - fracT_2T_3right) - x_g2right) tag3b\nendalign","category":"page"},{"location":"component_models/turbine_gov/","page":"Turbine and Governor","title":"Turbine and Governor","text":"with","category":"page"},{"location":"component_models/turbine_gov/","page":"Turbine and Governor","title":"Turbine and Governor","text":"beginalign\ntextref_in = frac1R (P_ref - (omega - 10)) tag3c \nx_g1^textsat = left beginarraycl\n x_g1 text if V_min le x_g1 le V_max\n V_max text if x_g1 V_max \n V_min text if x_g1 V_min\n endarray right tag3d \ntau_m = x_g2 + fracT_2T_3 x_g1 - D_T(omega - 10) tag3e\nendalign","category":"page"},{"location":"component_models/turbine_gov/#GAST-[GasTG]","page":"Turbine and Governor","title":"GAST [GasTG]","text":"","category":"section"},{"location":"component_models/turbine_gov/","page":"Turbine and Governor","title":"Turbine and Governor","text":"This turbine governor represents the Gas Turbine representation, known as GAST.","category":"page"},{"location":"component_models/turbine_gov/","page":"Turbine and Governor","title":"Turbine and Governor","text":"beginalign\ndotx_g1 = frac1T_1 (x_in - x_g1) tag4a \ndotx_g2 = frac1T_2 left(x_g1^textsat - x_g2right) tag4b \ndotx_g3 = frac1T_3 (x_g2 - x_g3) tag4c\nendalign","category":"page"},{"location":"component_models/turbine_gov/","page":"Turbine and Governor","title":"Turbine and Governor","text":"with","category":"page"},{"location":"component_models/turbine_gov/","page":"Turbine and Governor","title":"Turbine and Governor","text":"beginalign\nx_in = minleftP_ref - frac1R(omega - 10) A_T + K_T (A_T - x_g3) right tag4d \nx_g1^textsat = left beginarraycl\n x_g1 text if V_min le x_g1 le V_max\n V_max text if x_g1 V_max \n V_min text if x_g1 V_min\n endarray right tag4e \ntau_m = x_g2 - D_T(omega - 10) tag4f\nendalign","category":"page"},{"location":"component_models/turbine_gov/#HYGOV-[HydroTurbineGov]","page":"Turbine and Governor","title":"HYGOV [HydroTurbineGov]","text":"","category":"section"},{"location":"component_models/turbine_gov/","page":"Turbine and Governor","title":"Turbine and Governor","text":"This represents a classical hydro governor, known as HYGOV.","category":"page"},{"location":"component_models/turbine_gov/","page":"Turbine and Governor","title":"Turbine and Governor","text":"beginalign\nT_fdotx_g1 = P_in - x_g1 tag5a \ndotx_g2 = x_g1 tag5b\nT_g dotx_g3 = c - x_g3 tag5c\ndotx_g4 = frac1 - hT_w tag5d\nendalign","category":"page"},{"location":"component_models/turbine_gov/","page":"Turbine and Governor","title":"Turbine and Governor","text":"with","category":"page"},{"location":"component_models/turbine_gov/","page":"Turbine and Governor","title":"Turbine and Governor","text":"beginalign\nP_in = P_ref - Delta omega - R x_g2 tag5e \nc = fracx_g1r + fracx_g2rT_r tag5f \nh = left(fracx_g4x_g3right)^2 tag5g\ntau_m = hcdot A_t(x_g4 - q_NL) - D_turb Deltaomega cdot x_g3 tag5h\nendalign","category":"page"},{"location":"small/#Small-Signal-Analysis","page":"Small Signal","title":"Small Signal Analysis","text":"","category":"section"},{"location":"small/","page":"Small Signal","title":"Small Signal","text":"Here we discuss the method used to do a small signal analysis on the DAE system defined in PowerSimulationsDynamics.jl. The package defines algebraic variables for both real and imaginary voltages on all buses (except if they have a dynamic line connected, on which the voltage of those buses are treated as differential variables). In addition, each dynamic device can add differential variables (or states) that are concatenated to construct the system of differential algebraic equations.","category":"page"},{"location":"small/","page":"Small Signal","title":"Small Signal","text":"Note: The validation of small signal results is still work in progress due to the differences in the way that different software packages perform the calculations.","category":"page"},{"location":"small/#Automatic-Differentiation","page":"Small Signal","title":"Automatic Differentiation","text":"","category":"section"},{"location":"small/","page":"Small Signal","title":"Small Signal","text":"Once an equilibrium point is found, the complete jacobian of the non-linear system can be obtained using automatic differentiation in Julia. In particular, the package ForwardDiff.jl is used to obtain the jacobian of the non-linear algebraic system of equations. PowerSimulationsDynamics.jl handles the resulting jacobian and reports the reduced jacobian and the corresponding eigenvalues and eigenvectors.","category":"page"},{"location":"small/#Jacobian-Reduction","page":"Small Signal","title":"Jacobian Reduction","text":"","category":"section"},{"location":"small/","page":"Small Signal","title":"Small Signal","text":"We define y as the vector of algebraic variables, x as the vector of differential variables (states) and p the parameters of the system, we can define g(yxp) as the vector of algebraic equations and f(yxp) as the vector of differential equations. With that, the non-linear differential algebraic system of equations can be written as:","category":"page"},{"location":"small/","page":"Small Signal","title":"Small Signal","text":"beginalign\nleftbeginarrayc\n 0 \n dotx\n endarrayright = leftbeginarrayc\n g(yxp) \n f(yxp) endarrayright\nendalign","category":"page"},{"location":"small/","page":"Small Signal","title":"Small Signal","text":"For small signal analysis, we are interested in the stability around an equilbrium point y_eqx_eq that satisfies dotx = 0 or equivalently f(y_eqx_eqp) = 0, while obviously satisfying g(y_eq x_eq p) = 0. To do that we use a first order approximation:","category":"page"},{"location":"small/","page":"Small Signal","title":"Small Signal","text":"beginalign\nleftbeginarrayc\n 0 \n Deltadotx\n endarrayright = underbraceleftbeginarray\n g(y_eqx_eqp) \n f(y_eqx_eqp) endarrayright_ = 0\n + Jy_eq x_eq p leftbeginarrayc\n Delta y \n Delta x\n endarrayright\n endalign","category":"page"},{"location":"small/","page":"Small Signal","title":"Small Signal","text":"The first to note is that the jacobian matrix can be splitted in 4 blocks depending on the specific variables we are taking the partial derivatives:","category":"page"},{"location":"small/","page":"Small Signal","title":"Small Signal","text":"beginalign\nJy_eq x_eq p =\nleftbeginarraycc\n g_y g_x \n f_y f_x \n endarrayright\nendalign","category":"page"},{"location":"small/","page":"Small Signal","title":"Small Signal","text":"For small signal analyses, we are interested in the stability of the differential states, while still considering that those need to evolve in the manifold defined by the linearized algebraic equations. Assuming that g_y is not singular (see chapter 7 of Federico Milano's book: Power System Modelling and Scripting or the following paper) we can eliminate the algebraic variables to obtain the reduced jacobian:","category":"page"},{"location":"small/","page":"Small Signal","title":"Small Signal","text":"beginalign\nJ_textred = f_x - f_y g_y^-1 g_x\nendalign","category":"page"},{"location":"small/","page":"Small Signal","title":"Small Signal","text":"that defines our reduced system for the differential variables","category":"page"},{"location":"small/","page":"Small Signal","title":"Small Signal","text":"beginalign\nDelta dotx = J_textred Delta x\nendalign","category":"page"},{"location":"small/","page":"Small Signal","title":"Small Signal","text":"on which we can compute its eigenvalues to analyze local stability.","category":"page"},{"location":"small/#Accessing-the-Jacobian-function","page":"Small Signal","title":"Accessing the Jacobian function","text":"","category":"section"},{"location":"small/","page":"Small Signal","title":"Small Signal","text":"You can retrieve the Jacobian function for a simulation using the get_jacobian function as follows:","category":"page"},{"location":"small/","page":"Small Signal","title":"Small Signal","text":"jacobian = function get_jacobian(ResidualModel, system)","category":"page"},{"location":"small/","page":"Small Signal","title":"Small Signal","text":"optionally you can pass the number of iterations to check for sparsity as follows:","category":"page"},{"location":"small/","page":"Small Signal","title":"Small Signal","text":"jacobian = function get_jacobian(ResidualModel, system, 0)","category":"page"},{"location":"small/","page":"Small Signal","title":"Small Signal","text":"if you specify 0, the jacobian function will use a full matrix.","category":"page"},{"location":"small/","page":"Small Signal","title":"Small Signal","text":"The return of get_jacobian is known as a functor in Julia and can be used to make evaluations. Currently, any function can be evaluated with the following inputs:","category":"page"},{"location":"small/","page":"Small Signal","title":"Small Signal","text":"jacobian(x)","category":"page"},{"location":"small/","page":"Small Signal","title":"Small Signal","text":"This version of the function is type unstable should only be used for non-critial ops. It works to get the eigenvalues given an operating point x","category":"page"},{"location":"small/","page":"Small Signal","title":"Small Signal","text":"jacobian(JM, x)","category":"page"},{"location":"small/","page":"Small Signal","title":"Small Signal","text":"This version evaluates in place the value of the jacobian for an operating point x and writes to the matrix JM","category":"page"},{"location":"small/","page":"Small Signal","title":"Small Signal","text":"jacobian(JM, x, p, t)","category":"page"},{"location":"small/","page":"Small Signal","title":"Small Signal","text":"This version complied with the requirements to be used in DiffEq for ODE solvers. p and t aren't used they just mean to match the interfaces. See DiffEqDocs","category":"page"},{"location":"small/","page":"Small Signal","title":"Small Signal","text":"jacobian(JM, dx, x, p, gamma, t)","category":"page"},{"location":"small/","page":"Small Signal","title":"Small Signal","text":"This version complied with the requirements to be used in DiffEq for DAE solvers. p and t aren't used they just mean to match the interfaces. It assumes that the jacobian has the form:","category":"page"},{"location":"small/","page":"Small Signal","title":"Small Signal","text":"beginalign\n JM = gamma * I + J(x)\nendalign","category":"page"},{"location":"small/","page":"Small Signal","title":"Small Signal","text":"See DiffEqDocs for additional details.","category":"page"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"Here we discuss the models used to describe load modeling in PowerSimulationsDynamics.jl. In a similar fashion of other devices, loads will withdraw power (i.e. current) from the current-injection balances at the nodal level. Based on the specified parameters and model chosen, the equations for computing such withdrawal will change.","category":"page"},{"location":"component_models/loads/#Static-Loads-(or-Algebraic-Loads)","page":"Load Models","title":"Static Loads (or Algebraic Loads)","text":"","category":"section"},{"location":"component_models/loads/#ZIP-Exponential-Load-Model","page":"Load Models","title":"ZIP + Exponential Load Model","text":"","category":"section"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"PowerSimulationsDynamics.jl uses all the static ZIP and exponential loads at each bus to obtain a single structure that creates an aggregate ZIP load model and a collection of all exponential loads.","category":"page"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"The ZIP load model given by:","category":"page"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"beginalign\nP_textzip = P_textpower + P_textcurrent cdot fracVV_0 + P_textimpedance cdot left(fracVV_0right)^2 tag1a\nQ_textzip = Q_textpower + Q_textcurrent cdot fracVV_0 + Q_textimpedance cdot left(fracVV_0right)^2tag1b\nendalign","category":"page"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"with V = sqrtV_r^2 + V_i^2 and V_0 the voltage magnitude from the power flow solution.","category":"page"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"The current taken for the load is computed as:","category":"page"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"beginalign\nI_textzip = frac(P_textzip + j Q_textzip)^*(V_r + j V_i)^*tag1c \nI_textzip = fracP_textzip - j Q_textzipV_r - j V_itag1d\nendalign","category":"page"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"For constant impedance load, the current obtained is:","category":"page"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"beginalign\nI_textre^z = frac1V_0^2 cdot (V_r cdot P_textimpedance + V_i cdot Q_textimpedance)tag1e \nI_textim^z = frac1V_0^2 cdot (V_i cdot P_textimpedance - V_r cdot Q_textimpedance)tag1f\nendalign","category":"page"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"For constant current load, the current obtained is:","category":"page"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"beginalign\nI_textre^i = frac1V_0 cdot fracV_r * P_textcurrent + V_i * Q_textcurrentV tag1g\nI_textim^i = frac1V_0 cdot fracV_i * P_textcurrent - V_r * Q_textcurrentV tag1h\nendalign","category":"page"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"For constant power load, the current obtained is:","category":"page"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"beginalign\nI_textre^p = fracV_r cdot P_textpower + V_i cdot Q_textpowerV^2 tag1i \nI_textim^p = fracV_i cdot P_textpower - V_r cdot Q_textpowerV^2 tag1j\nendalign","category":"page"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"Then the total current withdrawed from the ZIP load model is simply","category":"page"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"beginalign\nI_textzip^textre = I_textre^z + I_textre^i + I_textre^p tag1k \nI_textzip^textim = I_textim^z + I_textim^i + I_textim^p tag1l\nendalign","category":"page"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"On the case of Exponential Loads, the model is given by:","category":"page"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"beginalign\nP_textexp = P_0 cdot left(fracVV_0right)^alpha tag1m\nQ_textexp = Q_0 cdot left(fracVV_0right)^beta tag1n\nendalign","category":"page"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"The current taken for the load is computed as:","category":"page"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"beginalign\nI_textexp = frac(P_textexp + j Q_textexp)^*(V_r + j V_i)^* tag1o \nI_textexp = fracP_textexp - j Q_textexpV_r - j V_i tag1p\nendalign","category":"page"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"that results:","category":"page"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"beginalign\nI_textexp^textre = V_r cdot P_0 cdot fracV^alpha - 2V_0^alpha + V_i cdot Q_0 cdot fracV^beta - 2V_0^beta tag1q\nI_textexp^textim = V_i cdot P_0 cdot fracV^alpha - 2V_0^alpha - V_r cdot Q_0 cdot fracV^beta - 2V_0^beta tag1r\nendalign","category":"page"},{"location":"component_models/loads/#Dynamic-loads","page":"Load Models","title":"Dynamic loads","text":"","category":"section"},{"location":"component_models/loads/#th-order-Single-Cage-Induction-Machine-[SingleCageInductionMachine]","page":"Load Models","title":"5th-order Single Cage Induction Machine [SingleCageInductionMachine]","text":"","category":"section"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"The following model is used to model a 5th-order induction machine with a quadratic relationship speed-torque. Refer to \"Analysis of Electric Machinery and Drive Systems\" by Paul Krause, Oleg Wasynczuk and Scott Sudhoff for the equations derivation","category":"page"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"beginalign\ndotpsi_qs = Omega_b (v_qs - omega_textsys psi_ds - R_s i_qs) tag2a\ndotpsi_ds = Omega_b (v_ds + omega_textsys psi_qs - R_s i_ds) tag2b \ndotpsi_qr = Omega_b left(v_qr - (omega_textsys - omega_r) psi_dr + fracR_rX_lr (psi_mq - psi_qr)right) tag2c\ndotpsi_dr = Omega_b left(v_dr + (omega_textsys - omega_r) psi_qr + fracR_rX_lr (psi_md - psi_dr)right) tag2d\ndotomega_r = frac12H (tau_e - tau_m0(A omega_r^2 + B omega_r + C)) tag2e\nendalign","category":"page"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"where:","category":"page"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"beginalign*\nX_ad = X_aq = left(frac1X_m + frac1X_ls + frac1X_lrright)^-1 \nv_qs = V_i^textbus \nv_ds = V_r^textbus \nv_qr = v_dr = 0 \npsi_mq = X_aq left(fracpsi_qsX_ls+ fracpsi_qrX_lrright) \npsi_md = X_ad left(fracpsi_dsX_ls+ fracpsi_drX_lrright) \ni_qs = frac1X_ls (psi_qs - psi_mq) \ni_ds = frac1X_ls (psi_ds - psi_md) \ntau_e = psi_ds i_qs - psi_qs i_ds \nendalign*","category":"page"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"Finally, the withdrawed current from the bus is:","category":"page"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"beginalign*\nI_r = left(fracS_textmotorS_textbaseright) (i_ds - v_qs B_sh) \nI_i = left(fracS_textmotorS_textbaseright) (i_qs + v_ds B_sh) \nendalign*","category":"page"},{"location":"component_models/loads/#rd-order-Single-Cage-Induction-Machine-[SimplifiedSingleCageInductionMachine]","page":"Load Models","title":"3rd-order Single Cage Induction Machine [SimplifiedSingleCageInductionMachine]","text":"","category":"section"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"The following models approximates the stator fluxes dynamics of the 5th-order model by using algebraic equations.","category":"page"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"beginalign\ndotpsi_qr = Omega_b left(v_qr - (omega_textsys - omega_r) psi_dr - R_r i_qr right) tag3a \ndotpsi_dr = Omega_b left(v_dr + (omega_textsys - omega_r) psi_qr - R_r i_drright) tag3b \ndotomega_r = frac12H (tau_e - tau_m0(A omega_r^2 + B omega_r + C)) tag3c\nendalign","category":"page"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"where","category":"page"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"beginalign*\nv_qs = V_i^textbus \nv_ds = V_r^textbus \nv_qr = v_dr = 0 \ni_qs = frac1R_s^2 + omega_textsys^2 X_p^2 left( (R_s v_qs - omega_textsys X_p v_ds) - left(R_s omega_textsys fracX_mX_rr psi_dr + omega_textsys^2 X_p fracX_mX_rr psi_qr right) right) \ni_ds = frac1R_s^2 + omega_textsys^2 X_p^2 left( (R_s v_ds + omega_textsys X_p v_qs) - left(-R_s omega_textsys fracX_mX_rr psi_qr + omega_textsys^2 X_p fracX_mX_rr psi_dr right) right) \ni_qr = frac1X_rr (psi_qr - X_m i_qs) \ni_dr = frac1X_rr (psi_dr - X_m i_ds) \ntau_e = psi_qr i_dr - psi_dr i_qr \nendalign*","category":"page"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"Finally, the withdrawed current from the bus is:","category":"page"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"beginalign*\nI_r = left(fracS_textmotorS_textbaseright) (i_ds - v_qs B_sh) \nI_i = left(fracS_textmotorS_textbaseright) (i_qs + v_ds B_sh) \nendalign*","category":"page"},{"location":"component_models/loads/#Active-Constant-Power-Load-Model","page":"Load Models","title":"Active Constant Power Load Model","text":"","category":"section"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"The following 12-state model Active Load model that measures the AC side using a Phase-Lock-Loop (PLL) and regulates a DC voltage to supply a resistor r_L. This model induces a constant power load-like behavior as it tries to maintain a fixed DC voltage to supply P = v_textDC^2 r_L. The model is based on the following reference. ","category":"page"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"The complete model is given by:","category":"page"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"beginalign\n dottheta = Omega_b (omega_textpll - omega_s) tag4a \n dotepsilon = v_texto^q tag4b\n omega_textpll = omega^star + k^p_textpll v_texto^q + k_textpll^i epsilon tag4c\n dotzeta = v_textDC^star - v_textDC tag4d \n i_textcv^dstar = k_textDC^p ( v_textDC^star - v_textDC) + k_textDC^i zeta tag4e \n fracc_textDCOmega_b dotv_textDC = fracp_textcvv_textDC - fracv_textDCr_L tag4f \n dotgamma_d = i_textcv^d - i_textcv^dstar tag4g\n dotgamma_q = i_textcv^q - i_textcv^qstar tag4h \n v_textcv^dstar = k_textpc( i_textcv^d - i_textcv^dstar) + k_textic gamma_d + omega_textpll l_f i_textcv^q tag4i\n v_textcv^qstar = k_textpc( i_textcv^q - i_textcv^qstar) + k_textic gamma_q - omega_textpll l_f i_textcv^d tag4j\nendalign","category":"page"},{"location":"component_models/loads/","page":"Load Models","title":"Load Models","text":"Equations (4a)–(4c) describes the PLL dynamics to lock the active load to the grid. Equations (4d)-(4e) describes the DC Voltage Controller to steer the DC voltage to v_textDC^star, while equation (4f) describes the DC voltage dynamics at the capacitor assuming an ideal converter. Finally, equations (4g)–(4j) describes the dynamics of the AC Current Controller. Additionally six states are defined for the LCL filter in a similar fashion of GFM inverters.","category":"page"},{"location":"tutorials/tutorial_240bus/#[PSSE-240-Bus-Case-system-with-Renewables](https://www.nrel.gov/grid/test-case-repository.html)","page":"240 WECC solver comparison","title":"PSSE 240 Bus Case system with Renewables","text":"","category":"section"},{"location":"tutorials/tutorial_240bus/","page":"240 WECC solver comparison","title":"240 WECC solver comparison","text":"Originally Contributed by: José Daniel Lara","category":"page"},{"location":"tutorials/tutorial_240bus/#Introduction","page":"240 WECC solver comparison","title":"Introduction","text":"","category":"section"},{"location":"tutorials/tutorial_240bus/","page":"240 WECC solver comparison","title":"240 WECC solver comparison","text":"This tutorial will introduce the industry models of Renewable Energy the comparisons between DiffEq Integration techniques for comparison. We show the uses of Sundials and OrdinaryDiffEq to obtain the transient response of a system to a perturbation.","category":"page"},{"location":"tutorials/tutorial_240bus/","page":"240 WECC solver comparison","title":"240 WECC solver comparison","text":"using PowerSimulationsDynamics\nusing PowerSystemCaseBuilder\nusing PowerSystems\nconst PSY = PowerSystems\nusing Sundials\nusing Plots\nusing OrdinaryDiffEq","category":"page"},{"location":"tutorials/tutorial_240bus/","page":"240 WECC solver comparison","title":"240 WECC solver comparison","text":"note: Note\nPowerSystemCaseBuilder.jl is a helper library that makes it easier to reproduce examples in the documentation and tutorials. Normally you would pass your local files to create the system data instead of calling the function build_system. For more details visit PowerSystemCaseBuilder Documentation","category":"page"},{"location":"tutorials/tutorial_240bus/#Load-the-system-and-transform-load-data","page":"240 WECC solver comparison","title":"Load the system and transform load data","text":"","category":"section"},{"location":"tutorials/tutorial_240bus/","page":"240 WECC solver comparison","title":"240 WECC solver comparison","text":"To load the system we use PowerSystemCaseBuilder.jl:","category":"page"},{"location":"tutorials/tutorial_240bus/","page":"240 WECC solver comparison","title":"240 WECC solver comparison","text":"# We remove the checks in this example to avoid large prints\nsys = build_system(PSIDSystems, \"WECC 240 Bus\"; runchecks = false)\n\n# Transform the system's load\nfor l in get_components(PSY.StandardLoad, sys)\n transform_load_to_constant_impedance(l)\nend","category":"page"},{"location":"tutorials/tutorial_240bus/#Build-the-simulation-and-initialize-the-problem","page":"240 WECC solver comparison","title":"Build the simulation and initialize the problem","text":"","category":"section"},{"location":"tutorials/tutorial_240bus/","page":"240 WECC solver comparison","title":"240 WECC solver comparison","text":"The next step is to create the simulation structure. This will create the indexing of our system that will be used to formulate the differential-algebraic system of equations. To do so, it is required to specify the perturbation that will occur in the system. In this case, we will use a ResidualModel formulation, for more details about the formulation checkout the Models Section in PowerSimulationsDynamics.jl documentation.","category":"page"},{"location":"tutorials/tutorial_240bus/","page":"240 WECC solver comparison","title":"240 WECC solver comparison","text":"using Logging\nsim_ida = Simulation(\n ResidualModel,\n sys, #system\n pwd(),\n (0.0, 20.0), #time span\n BranchTrip(1.0, Line, \"CORONADO -1101-PALOVRDE -1401-i_10\");\n console_level = Logging.Info,\n)","category":"page"},{"location":"tutorials/tutorial_240bus/#Run-the-simulation-using-Sundials","page":"240 WECC solver comparison","title":"Run the simulation using Sundials","text":"","category":"section"},{"location":"tutorials/tutorial_240bus/","page":"240 WECC solver comparison","title":"240 WECC solver comparison","text":"We will now run the simulation using Sundials.jl solver IDA() by specifying the maximum dt we want for the simulation. In our experience with this solver, solution times are faster when supplying information about the maximum time step than the tolerances as we can see in the example","category":"page"},{"location":"tutorials/tutorial_240bus/","page":"240 WECC solver comparison","title":"240 WECC solver comparison","text":"execute!(sim_ida, IDA(), dtmax = 0.01)","category":"page"},{"location":"tutorials/tutorial_240bus/#Read-the-results-and-plot-a-system-variable","page":"240 WECC solver comparison","title":"Read the results and plot a system variable","text":"","category":"section"},{"location":"tutorials/tutorial_240bus/","page":"240 WECC solver comparison","title":"240 WECC solver comparison","text":"After the simulation is completed, we can extract the results and make plots as desired. In this case, we will plot the voltage magnitude at the bus at which the line was connected.","category":"page"},{"location":"tutorials/tutorial_240bus/","page":"240 WECC solver comparison","title":"240 WECC solver comparison","text":"res_ida = read_results(sim_ida)\nv1101_ida = get_voltage_magnitude_series(res_ida, 1101);\nplot(v1101_ida);","category":"page"},{"location":"tutorials/tutorial_240bus/","page":"240 WECC solver comparison","title":"240 WECC solver comparison","text":"(Image: plot)","category":"page"},{"location":"tutorials/tutorial_240bus/#Run-the-simulation-using-Rodas4()","page":"240 WECC solver comparison","title":"Run the simulation using Rodas4()","text":"","category":"section"},{"location":"tutorials/tutorial_240bus/","page":"240 WECC solver comparison","title":"240 WECC solver comparison","text":"In this case, we will use a MassMatrixModel formulation, for more details about the formulation checkout the Models Section in PowerSimulationsDynamics.jl documentation","category":"page"},{"location":"tutorials/tutorial_240bus/","page":"240 WECC solver comparison","title":"240 WECC solver comparison","text":"sim_rodas = Simulation(\n MassMatrixModel,\n sys, #system\n pwd(),\n (0.0, 20.0), #time span\n BranchTrip(1.0, Line, \"CORONADO -1101-PALOVRDE -1401-i_10\");\n console_level = Logging.Info,\n)","category":"page"},{"location":"tutorials/tutorial_240bus/","page":"240 WECC solver comparison","title":"240 WECC solver comparison","text":"We will now run the simulation using OrdinaryDiffEq.jl solver Rodas4() by specifying the tolerance we want for the simulation. In our experience with this solver, solution times are faster when supplying information about the atol and rtol values as we can see in the example. The solver will also work with a specified dtmax but take a significantly longer time to solve. When using OrdinaryDiffEq.jl solvers always pass the option initializealg = NoInit() to avoid unnecessary re-initialization of the algebraic equations.","category":"page"},{"location":"tutorials/tutorial_240bus/","page":"240 WECC solver comparison","title":"240 WECC solver comparison","text":"execute!(\n sim_rodas,\n Rodas4(),\n saveat = 0.01,\n atol = 1e-10,\n rtol = 1e-10,\n initializealg = NoInit(),\n)","category":"page"},{"location":"tutorials/tutorial_240bus/#Read-the-results","page":"240 WECC solver comparison","title":"Read the results","text":"","category":"section"},{"location":"tutorials/tutorial_240bus/","page":"240 WECC solver comparison","title":"240 WECC solver comparison","text":"After the simulation is completed, we can extract the results and make plots as desired. In this case, we will plot the voltage magnitude at the bus at which the line was connected.","category":"page"},{"location":"tutorials/tutorial_240bus/","page":"240 WECC solver comparison","title":"240 WECC solver comparison","text":"res_rodas = read_results(sim_rodas)","category":"page"},{"location":"tutorials/tutorial_240bus/#Compare-the-results","page":"240 WECC solver comparison","title":"Compare the results","text":"","category":"section"},{"location":"tutorials/tutorial_240bus/","page":"240 WECC solver comparison","title":"240 WECC solver comparison","text":"After the simulation is completed, we can extract the results and make plots as desired. In this case, we will plot the voltage magnitude at the bus at which the line was connected. For both of the solution techniques.","category":"page"},{"location":"tutorials/tutorial_240bus/","page":"240 WECC solver comparison","title":"240 WECC solver comparison","text":"v1101 = get_voltage_magnitude_series(res_rodas, 1101);\nplot(v1101, label = \"RODAS4\");\nplot!(v1101_ida, label = \"IDA\");","category":"page"},{"location":"tutorials/tutorial_240bus/","page":"240 WECC solver comparison","title":"240 WECC solver comparison","text":"(Image: plot)","category":"page"},{"location":"component_models/freq_esti/#Frequency-Estimators","page":"Frequency Estimators","title":"Frequency Estimators","text":"","category":"section"},{"location":"component_models/freq_esti/","page":"Frequency Estimators","title":"Frequency Estimators","text":"This component is used to estimate the frequency of the grid based on the voltage at the bus.","category":"page"},{"location":"component_models/freq_esti/#Fixed-Frequency-[FixedFrequency]","page":"Frequency Estimators","title":"Fixed Frequency [FixedFrequency]","text":"","category":"section"},{"location":"component_models/freq_esti/","page":"Frequency Estimators","title":"Frequency Estimators","text":"This is a simple model that set the measured frequency to a desired constant value (i.e. does not measure the frequency) omega_pll = omega_textfix (usually omega_textfix = 10 p.u.). Used by default when grid-forming inverters do not use frequency estimators. ","category":"page"},{"location":"component_models/freq_esti/#Phase-Locked-Loop-(PLL)-for-VSM-[KauraPLL]","page":"Frequency Estimators","title":"Phase-Locked Loop (PLL) for VSM [KauraPLL]","text":"","category":"section"},{"location":"component_models/freq_esti/","page":"Frequency Estimators","title":"Frequency Estimators","text":"The following equations present a PLL used to estimate the frequency and PLL angle of the grid. There are two reference frames considered in this inverter. Those are the VSM of the outer-loop control theta_textolc and the PLL one theta_textpll. The notation used a deltatheta refers as the variation of the respective angle theta^textgrid with respect to the grid SRF (instead of the fixed alpha component of the alphabeta transformation):","category":"page"},{"location":"component_models/freq_esti/","page":"Frequency Estimators","title":"Frequency Estimators","text":"beginalign\n\ndotv_dtextpll = omega_textlp left v_dtextout - v_dtextpll right tag1a \ndotv_qtextpll = omega_textlp left v_qtextout - v_qtextpll right tag1b \ndotvarepsilon_textpll = tan^-1left(fracv_qtextpllv_dtextpll right) tag1c \ndottheta_textpll = Omega_b delta omega_textpll tag1d\nendalign","category":"page"},{"location":"component_models/freq_esti/","page":"Frequency Estimators","title":"Frequency Estimators","text":"with","category":"page"},{"location":"component_models/freq_esti/","page":"Frequency Estimators","title":"Frequency Estimators","text":"beginalign\ndeltaomega_textpll = 10 - omega_textsys + k_ptextpll tan^-1 left(fracv_qtextpllv_dtextpll right) + k_itextpll varepsilon_textpll tag1e \nomega_textpll = deltaomega_textpll + omega_textsys tag1f \nv_dtextout + jv_qtextout = (v_r + jv_i)e^-deltatheta_textpll tag1g\nendalign","category":"page"},{"location":"component_models/freq_esti/","page":"Frequency Estimators","title":"Frequency Estimators","text":"on which v_r + jv_i is the voltage in the grid reference frame on which the PLL is measuring (i.e. point of common coupling), that could be in the capacitor of an LCL filter or the last branch of such filter.","category":"page"},{"location":"component_models/freq_esti/#Reduced-Order-Phase-Locked-Loop-(PLL)-[ReducedOrderPLL]","page":"Frequency Estimators","title":"Reduced Order Phase-Locked Loop (PLL) [ReducedOrderPLL]","text":"","category":"section"},{"location":"component_models/freq_esti/","page":"Frequency Estimators","title":"Frequency Estimators","text":"The following equations presents a simplified PLL used to estimate the frequency and PLL angle of the grid. The model attempts to steer the voltage in the q-axis to zero (i.e. lock the q-axis to zero) using a PI controller. With that the equations are given by:","category":"page"},{"location":"component_models/freq_esti/","page":"Frequency Estimators","title":"Frequency Estimators","text":"beginalign\ndotv_qtextpll = omega_textlp left v_qtextout - v_qtextpll right tag2a \ndotvarepsilon_textpll = v_qtextpll tag2b \ndottheta_textpll = Omega_b delta omega_textpll tag2c\nendalign","category":"page"},{"location":"component_models/freq_esti/","page":"Frequency Estimators","title":"Frequency Estimators","text":"with","category":"page"},{"location":"component_models/freq_esti/","page":"Frequency Estimators","title":"Frequency Estimators","text":"beginalign\ndeltaomega_textpll = 10 - omega_textsys + k_ptextpll v_qtextpll + k_itextpll varepsilon_textpll tag2d \nomega_textpll = deltaomega_textpll + omega_textsys tag2e \nv_dtextout + jv_qtextout = (v_r + jv_i)e^-deltatheta_textpll tag2f\nendalign","category":"page"},{"location":"component_models/freq_esti/","page":"Frequency Estimators","title":"Frequency Estimators","text":"on which v_r + jv_i is the voltage in the grid reference frame on which the PLL is measuring (i.e. point of common coupling), that could be in the capacitor of an LCL filter or the last branch of such filter.","category":"page"},{"location":"code_base_developer_guide/developer/#Guidelines-for-Developers","page":"Developer Guide","title":"Guidelines for Developers","text":"","category":"section"},{"location":"code_base_developer_guide/developer/","page":"Developer Guide","title":"Developer Guide","text":"In order to contribute to PowerSimulationsDynamics.jl repository please read the following sections of InfrastructureSystems.jl documentation in detail:","category":"page"},{"location":"code_base_developer_guide/developer/","page":"Developer Guide","title":"Developer Guide","text":"Style Guide\nContributing Guidelines","category":"page"},{"location":"code_base_developer_guide/developer/","page":"Developer Guide","title":"Developer Guide","text":"Pull requests are always welcome to fix bugs or add additional modeling capabilities.","category":"page"},{"location":"code_base_developer_guide/developer/","page":"Developer Guide","title":"Developer Guide","text":"All the code contributions need to include tests with a minimum coverage of 70%","category":"page"},{"location":"tutorials/tutorial_dynamic_data/#Creating-and-Handling-Data-for-Dynamic-Simulations","page":"Create Dynamic Data","title":"Creating and Handling Data for Dynamic Simulations","text":"","category":"section"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"Originally Contributed by: Rodrigo Henriquez and José Daniel Lara","category":"page"},{"location":"tutorials/tutorial_dynamic_data/#Introduction","page":"Create Dynamic Data","title":"Introduction","text":"","category":"section"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"This tutorial briefly introduces how to create a system using PowerSystems.jl data structures. For more details visit PowerSystems.jl Documentation","category":"page"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"Start by calling PowerSystems.jl and PowerSystemCaseBuilder.jl:","category":"page"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"using PowerSystems\nusing PowerSystemCaseBuilder\nconst PSY = PowerSystems;","category":"page"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"note: Note\nPowerSystemCaseBuilder.jl is a helper library that makes it easier to reproduce examples in the documentation and tutorials. Normally you would pass your local files to create the system data instead of calling the function build_system. For more details visit PowerSystemCaseBuilder Documentation","category":"page"},{"location":"tutorials/tutorial_dynamic_data/#System-description","page":"Create Dynamic Data","title":"System description","text":"","category":"section"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"Next we need to define the different elements required to run a simulation. To run a simulation in PowerSimulationsDynamics, it is required to define a System that contains the following components:","category":"page"},{"location":"tutorials/tutorial_dynamic_data/#Static-Components","page":"Create Dynamic Data","title":"Static Components","text":"","category":"section"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"We called static components to those that are used to run a Power Flow problem.","category":"page"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"Vector of Bus elements, that define all the buses in the network.\nVector of Branch elements, that define all the branches elements (that connect two buses) in the network.\nVector of StaticInjection elements, that define all the devices connected to buses that can inject (or withdraw) power. These static devices, typically generators, in PowerSimulationsDynamics are used to solve the Power Flow problem that determines the active and reactive power provided for each device.\nVector of PowerLoad elements, that define all the loads connected to buses that can withdraw current. These are also used to solve the Power Flow.\nVector of Source elements, that define source components behind a reactance that can inject or withdraw current.\nThe base of power used to define per unit values, in MVA as a Float64 value.\nThe base frequency used in the system, in Hz as a Float64 value.","category":"page"},{"location":"tutorials/tutorial_dynamic_data/#Dynamic-Components","page":"Create Dynamic Data","title":"Dynamic Components","text":"","category":"section"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"Dynamic components are those that define differential equations to run a transient simulation.","category":"page"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"Vector of DynamicInjection elements. These components must be attached to a StaticInjection that connects the power flow solution to the dynamic formulation of such device. DynamicInjection can be DynamicGenerator or DynamicInverter, and its specific formulation (i.e. differential equations) will depend on the specific components that define such device.\n(Optional) Selecting which of the Lines (of the Branch vector) elements must be modeled of DynamicLines elements, that can be used to model lines with differential equations.","category":"page"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"To start we will define the data structures for the network.","category":"page"},{"location":"tutorials/tutorial_dynamic_data/#Three-Bus-case-manual-data-creation","page":"Create Dynamic Data","title":"Three Bus case manual data creation","text":"","category":"section"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"The following describes the system creation for this dynamic simulation case.","category":"page"},{"location":"tutorials/tutorial_dynamic_data/#Static-System-creation","page":"Create Dynamic Data","title":"Static System creation","text":"","category":"section"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"To create the system you need to load data using PowerSystemCaseBuilder.jl. This system was originally created from following raw file. ","category":"page"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"sys = build_system(PSIDSystems, \"3 Bus Inverter Base\"; force_build=true)","category":"page"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"This system does not have an injection device in bus 1 (the reference bus). We can add a source with small impedance directly as follows:","category":"page"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"slack_bus = [b for b in get_components(ACBus, sys) if get_bustype(b) == ACBusTypes.REF][1]\ninf_source = Source(\n name = \"InfBus\", #name\n available = true, #availability\n active_power = 0.0,\n reactive_power = 0.0,\n bus = slack_bus, #bus\n R_th = 0.0, #Rth\n X_th = 5e-6, #Xth\n)\nadd_component!(sys, inf_source)","category":"page"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"We just added a infinite source with X_th = 5cdot 10^-6 pu. The system can be explored directly using functions like:","category":"page"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"show_components(sys, Source)","category":"page"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"show_components(sys, ThermalStandard)","category":"page"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"By exploring those it can be seen that the generators are named as: generator-bus_number-id. Then, the generator attached at bus 2 is named generator-102-1.","category":"page"},{"location":"tutorials/tutorial_dynamic_data/#Dynamic-Injections","page":"Create Dynamic Data","title":"Dynamic Injections","text":"","category":"section"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"We are now interested in attaching to the system the dynamic component that will be modeling our dynamic generator.","category":"page"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"Dynamic generator devices are composed by 5 components, namely, machine, shaft, avr, tg and pss. So we will be adding functions to create all of its components and the generator itself:","category":"page"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"# *Machine*\nmachine_classic() = BaseMachine(\n 0.0, #R\n 0.2995, #Xd_p\n 0.7087, #eq_p\n)\n\n# *Shaft*\nshaft_damping() = SingleMass(\n 3.148, #H\n 2.0, #D\n)\n\n# *AVR: No AVR*\navr_none() = AVRFixed(0.0)\n\n# *TG: No TG*\ntg_none() = TGFixed(1.0) #efficiency\n\n# *PSS: No PSS*\npss_none() = PSSFixed(0.0)","category":"page"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"The next lines receives a static generator name, and creates a DynamicGenerator based on that specific static generator, with the specific components defined previously. This is a classic machine model without AVR, Turbine Governor and PSS.","category":"page"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"static_gen = get_component(Generator, sys, \"generator-102-1\")\n\ndyn_gen = DynamicGenerator(\n name = get_name(static_gen),\n ω_ref = 1.0,\n machine = machine_classic(),\n shaft = shaft_damping(),\n avr = avr_none(),\n prime_mover = tg_none(),\n pss = pss_none(),\n)","category":"page"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"The dynamic generator is added to the system by specifying the dynamic and static generator","category":"page"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"add_component!(sys, dyn_gen, static_gen)","category":"page"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"Then we can serialize our system data to a json file that can be later read as:","category":"page"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"file_dir = @__DIR__ #hide\nto_json(sys, joinpath(file_dir, \"modified_sys.json\"), force = true)","category":"page"},{"location":"tutorials/tutorial_dynamic_data/#Dynamic-Lines-case:-Data-creation","page":"Create Dynamic Data","title":"Dynamic Lines case: Data creation","text":"","category":"section"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"We will now create a three bus system with one inverter and one generator. In order to do so, we will parse the following ThreebusInverter.raw network:","category":"page"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"threebus_sys = build_system(PSIDSystems, \"3 Bus Inverter Base\")\nslack_bus = first(get_components(x -> get_bustype(x) == BusTypes.REF, Bus, threebus_sys))\ninf_source = Source(\n name = \"InfBus\", #name\n available = true, #availability\n active_power = 0.0,\n reactive_power = 0.0,\n bus = slack_bus, #bus\n R_th = 0.0, #Rth\n X_th = 5e-6, #Xth\n)\nadd_component!(threebus_sys, inf_source)","category":"page"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"We will connect a One-d-one-q machine at bus 102, and a Virtual Synchronous Generator Inverter at bus 103. An inverter is composed by a converter, outer control, inner control, dc source, frequency estimator and a filter.","category":"page"},{"location":"tutorials/tutorial_dynamic_data/#Dynamic-Inverter-definition","page":"Create Dynamic Data","title":"Dynamic Inverter definition","text":"","category":"section"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"We will create specific functions to create the components of the inverter as follows:","category":"page"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"#Define converter as an AverageConverter\nconverter_high_power() = AverageConverter(\n rated_voltage = 138.0,\n rated_current = 100.0\n )\n\n#Define Outer Control as a composition of Virtual Inertia + Reactive Power Droop\nouter_control() = OuterControl(\n VirtualInertia(Ta = 2.0, kd = 400.0, kω = 20.0),\n ReactivePowerDroop(kq = 0.2, ωf = 1000.0),\n)\n\n#Define an Inner Control as a Voltage+Current Controler with Virtual Impedance:\ninner_control() = VoltageModeControl(\n kpv = 0.59, #Voltage controller proportional gain\n kiv = 736.0, #Voltage controller integral gain\n kffv = 0.0, #Binary variable enabling voltage feed-forward in current controllers\n rv = 0.0, #Virtual resistance in pu\n lv = 0.2, #Virtual inductance in pu\n kpc = 1.27, #Current controller proportional gain\n kic = 14.3, #Current controller integral gain\n kffi = 0.0, #Binary variable enabling the current feed-forward in output of current controllers\n ωad = 50.0, #Active damping low pass filter cut-off frequency\n kad = 0.2, #Active damping gain\n)\n\n#Define DC Source as a FixedSource:\ndc_source_lv() = FixedDCSource(voltage = 600.0)\n\n#Define a Frequency Estimator as a PLL\n#based on Vikram Kaura and Vladimir Blaskoc 1997 paper:\npll() = KauraPLL(\n ω_lp = 500.0, #Cut-off frequency for LowPass filter of PLL filter.\n kp_pll = 0.084, #PLL proportional gain\n ki_pll = 4.69, #PLL integral gain\n)\n\n#Define an LCL filter:\nfilt() = LCLFilter(lf = 0.08, rf = 0.003, cf = 0.074, lg = 0.2, rg = 0.01)","category":"page"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"We will construct the inverter later by specifying to which static device is assigned.","category":"page"},{"location":"tutorials/tutorial_dynamic_data/#Dynamic-Generator-definition","page":"Create Dynamic Data","title":"Dynamic Generator definition","text":"","category":"section"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"Similarly we will construct a dynamic generator as follows:","category":"page"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"# Create the machine\nmachine_oneDoneQ() = OneDOneQMachine(\n 0.0, #R\n 1.3125, #Xd\n 1.2578, #Xq\n 0.1813, #Xd_p\n 0.25, #Xq_p\n 5.89, #Td0_p\n 0.6, #Tq0_p\n)\n\n# Shaft\nshaft_no_damping() = SingleMass(\n 3.01, #H (M = 6.02 -> H = M/2)\n 0.0, #D\n)\n\n# AVR: Type I: Resembles a DC1 AVR\navr_type1() = AVRTypeI(\n 20.0, #Ka - Gain\n 0.01, #Ke\n 0.063, #Kf\n 0.2, #Ta\n 0.314, #Te\n 0.35, #Tf\n 0.001, #Tr\n (min = -5.0, max = 5.0),\n 0.0039, #Ae - 1st ceiling coefficient\n 1.555, #Be - 2nd ceiling coefficient\n)\n\n#No TG\ntg_none() = TGFixed(1.0) #efficiency\n\n#No PSS\npss_none() = PSSFixed(0.0) #Vs","category":"page"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"Now we will construct the dynamic generator and inverter.","category":"page"},{"location":"tutorials/tutorial_dynamic_data/#Add-the-components-to-the-system","page":"Create Dynamic Data","title":"Add the components to the system","text":"","category":"section"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"for g in get_components(Generator, threebus_sys)\n #Find the generator at bus 102\n if get_number(get_bus(g)) == 102\n #Create the dynamic generator\n case_gen = DynamicGenerator(\n get_name(g),\n 1.0, # ω_ref,\n machine_oneDoneQ(), #machine\n shaft_no_damping(), #shaft\n avr_type1(), #avr\n tg_none(), #tg\n pss_none(), #pss\n )\n #Attach the dynamic generator to the system by\n # specifying the dynamic and static components\n add_component!(threebus_sys, case_gen, g)\n #Find the generator at bus 103\n elseif get_number(get_bus(g)) == 103\n #Create the dynamic inverter\n case_inv = DynamicInverter(\n get_name(g),\n 1.0, # ω_ref,\n converter_high_power(), #converter\n outer_control(), #outer control\n inner_control(), #inner control voltage source\n dc_source_lv(), #dc source\n pll(), #pll\n filt(), #filter\n )\n #Attach the dynamic inverter to the system\n add_component!(threebus_sys, case_inv, g)\n end\nend","category":"page"},{"location":"tutorials/tutorial_dynamic_data/#Save-the-system-in-a-JSON-file","page":"Create Dynamic Data","title":"Save the system in a JSON file","text":"","category":"section"},{"location":"tutorials/tutorial_dynamic_data/","page":"Create Dynamic Data","title":"Create Dynamic Data","text":"file_dir = @__DIR__ #hide\nto_json(threebus_sys, joinpath(file_dir, \"threebus_sys.json\"), force = true)","category":"page"},{"location":"tutorials/tutorial_dynamic_lines/#Line-Modeling-Simulations","page":"Dynamic Lines Simulation","title":"Line Modeling Simulations","text":"","category":"section"},{"location":"tutorials/tutorial_dynamic_lines/","page":"Dynamic Lines Simulation","title":"Dynamic Lines Simulation","text":"Originally Contributed by: Rodrigo Henriquez-Auba and José Daniel Lara","category":"page"},{"location":"tutorials/tutorial_dynamic_lines/#Introduction","page":"Dynamic Lines Simulation","title":"Introduction","text":"","category":"section"},{"location":"tutorials/tutorial_dynamic_lines/","page":"Dynamic Lines Simulation","title":"Dynamic Lines Simulation","text":"This tutorial will introduce an example of considering dynamic lines in PowerSimulationsDynamics.","category":"page"},{"location":"tutorials/tutorial_dynamic_lines/","page":"Dynamic Lines Simulation","title":"Dynamic Lines Simulation","text":"This tutorial presents a simulation of a three-bus system, with an infinite bus (represented as a voltage source behind an impedance) at bus 1, a one d- one q- machine on bus 2 and an inverter of 19 states, as a virtual synchronous machine at bus 3. The perturbation will be the trip of two of the three circuits (triplicating its resistance and impedance) of the line that connects bus 1 and bus 3. This case also consider a dynamic line model for connection between buses 2 and 3. We will compare it against a system without dynamic lines.","category":"page"},{"location":"tutorials/tutorial_dynamic_lines/","page":"Dynamic Lines Simulation","title":"Dynamic Lines Simulation","text":"It is recommended to check the OMIB tutorial first, since that includes more details and explanations on all definitions and functions.","category":"page"},{"location":"tutorials/tutorial_dynamic_lines/#Step-1:-Package-Initialization","page":"Dynamic Lines Simulation","title":"Step 1: Package Initialization","text":"","category":"section"},{"location":"tutorials/tutorial_dynamic_lines/","page":"Dynamic Lines Simulation","title":"Dynamic Lines Simulation","text":"using PowerSimulationsDynamics\nusing PowerSystems\nusing PowerNetworkMatrices\nusing PowerSystemCaseBuilder\nusing Sundials\nusing Plots","category":"page"},{"location":"tutorials/tutorial_dynamic_lines/","page":"Dynamic Lines Simulation","title":"Dynamic Lines Simulation","text":"note: Note\nPowerSystemCaseBuilder.jl is a helper library that makes it easier to reproduce examples in the documentation and tutorials. Normally you would pass your local files to create the system data instead of calling the function build_system. For more details visit PowerSystemCaseBuilder Documentation","category":"page"},{"location":"tutorials/tutorial_dynamic_lines/#Step-2:-Data-creation","page":"Dynamic Lines Simulation","title":"Step 2: Data creation","text":"","category":"section"},{"location":"tutorials/tutorial_dynamic_lines/","page":"Dynamic Lines Simulation","title":"Dynamic Lines Simulation","text":"Load the system using PowerSystemCaseBuilder.jl:","category":"page"},{"location":"tutorials/tutorial_dynamic_lines/","page":"Dynamic Lines Simulation","title":"Dynamic Lines Simulation","text":"threebus_sys = build_system(PSIDSystems, \"Three Bus Dynamic data Example System\")","category":"page"},{"location":"tutorials/tutorial_dynamic_lines/","page":"Dynamic Lines Simulation","title":"Dynamic Lines Simulation","text":"In addition, we will create a new copy of the system on which we will simulate the same case, but will consider dynamic lines:","category":"page"},{"location":"tutorials/tutorial_dynamic_lines/","page":"Dynamic Lines Simulation","title":"Dynamic Lines Simulation","text":"threebus_sys_dyn = deepcopy(threebus_sys);","category":"page"},{"location":"tutorials/tutorial_dynamic_lines/#Step-3:-Create-the-fault-and-simulation-on-the-Static-Lines-system","page":"Dynamic Lines Simulation","title":"Step 3: Create the fault and simulation on the Static Lines system","text":"","category":"section"},{"location":"tutorials/tutorial_dynamic_lines/","page":"Dynamic Lines Simulation","title":"Dynamic Lines Simulation","text":"First, we construct the perturbation, by properly computing the new Ybus on the system:","category":"page"},{"location":"tutorials/tutorial_dynamic_lines/","page":"Dynamic Lines Simulation","title":"Dynamic Lines Simulation","text":"#Make a copy of the original system\nsys2 = deepcopy(threebus_sys)\n#Triplicates the impedance of the line named \"BUS 1-BUS 3-i_1\"\nfault_branches = get_components(ACBranch, sys2)\nfor br in fault_branches\n if get_name(br) == \"BUS 1-BUS 3-i_1\"\n br.r = 3 * br.r\n br.x = 3 * br.x\n b_new = (from = br.b.from / 3, to = br.b.to / 3)\n br.b = b_new\n end\nend\n#Obtain the new Ybus\nYbus_fault = Ybus(sys2).data\n#Define Fault: Change of YBus\nYbus_change = NetworkSwitch(\n 1.0, #change at t = 1.0\n Ybus_fault, #New YBus\n);","category":"page"},{"location":"tutorials/tutorial_dynamic_lines/","page":"Dynamic Lines Simulation","title":"Dynamic Lines Simulation","text":"Now, we construct the simulation:","category":"page"},{"location":"tutorials/tutorial_dynamic_lines/","page":"Dynamic Lines Simulation","title":"Dynamic Lines Simulation","text":"#Time span of our simulation\ntspan = (0.0, 30.0)\n\n#Define Simulation\nsim = Simulation(\n ResidualModel, #Type of model used\n threebus_sys, #system\n pwd(), #folder to output results\n tspan, #time span\n Ybus_change, #Type of perturbation\n)","category":"page"},{"location":"tutorials/tutorial_dynamic_lines/","page":"Dynamic Lines Simulation","title":"Dynamic Lines Simulation","text":"We can obtain the initial conditions as:","category":"page"},{"location":"tutorials/tutorial_dynamic_lines/","page":"Dynamic Lines Simulation","title":"Dynamic Lines Simulation","text":"#Print the initial states. It also give the symbols used to describe those states.\nshow_states_initial_value(sim)","category":"page"},{"location":"tutorials/tutorial_dynamic_lines/#Step-4:-Run-the-simulation-of-the-Static-Lines-System","page":"Dynamic Lines Simulation","title":"Step 4: Run the simulation of the Static Lines System","text":"","category":"section"},{"location":"tutorials/tutorial_dynamic_lines/","page":"Dynamic Lines Simulation","title":"Dynamic Lines Simulation","text":"#Run the simulation\nexecute!(\n sim, #simulation structure\n IDA(), #Sundials DAE Solver\n dtmax = 0.02, #Maximum step size\n)","category":"page"},{"location":"tutorials/tutorial_dynamic_lines/#Step-5:-Store-the-solution","page":"Dynamic Lines Simulation","title":"Step 5: Store the solution","text":"","category":"section"},{"location":"tutorials/tutorial_dynamic_lines/","page":"Dynamic Lines Simulation","title":"Dynamic Lines Simulation","text":"results = read_results(sim)\nseries2 = get_voltage_magnitude_series(results, 102)\nzoom = [\n (series2[1][ix], series2[2][ix]) for\n (ix, s) in enumerate(series2[1]) if (s > 0.90 && s < 1.6)\n];","category":"page"},{"location":"tutorials/tutorial_dynamic_lines/#Step-3.1:-Create-the-fault-and-simulation-on-the-Dynamic-Lines-system","page":"Dynamic Lines Simulation","title":"Step 3.1: Create the fault and simulation on the Dynamic Lines system","text":"","category":"section"},{"location":"tutorials/tutorial_dynamic_lines/","page":"Dynamic Lines Simulation","title":"Dynamic Lines Simulation","text":"An important aspect to consider is that DynamicLines must not be considered in the computation of the Ybus. First we construct the Dynamic Line, by finding the Line named \"BUS 2-BUS 3-i_1\", and then adding it to the system.","category":"page"},{"location":"tutorials/tutorial_dynamic_lines/","page":"Dynamic Lines Simulation","title":"Dynamic Lines Simulation","text":"# get component return the Branch on threebus_sys_dyn named \"BUS 2-BUS 3-i_1\"\ndyn_branch = DynamicBranch(get_component(Line, threebus_sys_dyn,\"BUS 2-BUS 3-i_1\"))\n# Adding a dynamic line will immediately remove the static line from the system.\nadd_component!(threebus_sys_dyn, dyn_branch)","category":"page"},{"location":"tutorials/tutorial_dynamic_lines/","page":"Dynamic Lines Simulation","title":"Dynamic Lines Simulation","text":"Similarly, we construct the Ybus fault by creating a copy of the original system, but removing the Line \"BUS 2-BUS 3-i_1\" to avoid considering it in the Ybus:","category":"page"},{"location":"tutorials/tutorial_dynamic_lines/","page":"Dynamic Lines Simulation","title":"Dynamic Lines Simulation","text":"#Make a copy of the original system\nsys3 = deepcopy(threebus_sys);\n#Remove Line \"BUS 2-BUS 3-i_1\"\nremove_component!(Line, sys3, \"BUS 2-BUS 3-i_1\")\n#Triplicates the impedance of the line named \"BUS 1-BUS 2-i_1\"\nfault_branches2 = get_components(Line, sys3)\nfor br in fault_branches2\n if get_name(br) == \"BUS 1-BUS 3-i_1\"\n br.r = 3 * br.r\n br.x = 3 * br.x\n b_new = (from = br.b.from / 3, to = br.b.to / 3)\n br.b = b_new\n end\nend\n#Obtain the new Ybus\nYbus_fault_dyn = Ybus(sys3).data\n#Define Fault: Change of YBus\nYbus_change_dyn = NetworkSwitch(\n 1.0, #change at t = 1.0\n Ybus_fault_dyn, #New YBus\n)","category":"page"},{"location":"tutorials/tutorial_dynamic_lines/#Step-4.1:-Run-the-simulation-of-the-Dynamic-Lines-System","page":"Dynamic Lines Simulation","title":"Step 4.1: Run the simulation of the Dynamic Lines System","text":"","category":"section"},{"location":"tutorials/tutorial_dynamic_lines/","page":"Dynamic Lines Simulation","title":"Dynamic Lines Simulation","text":"Now, we construct the simulation:","category":"page"},{"location":"tutorials/tutorial_dynamic_lines/","page":"Dynamic Lines Simulation","title":"Dynamic Lines Simulation","text":"# Define Simulation\nsim_dyn = Simulation(\n ResidualModel, #Type of model used\n threebus_sys_dyn, #system\n pwd(), #folder to output results\n (0.0, 30.0), #time span\n Ybus_change_dyn, #Type of perturbation\n)","category":"page"},{"location":"tutorials/tutorial_dynamic_lines/","page":"Dynamic Lines Simulation","title":"Dynamic Lines Simulation","text":"# Run the simulation\nexecute!(\n sim_dyn, #simulation structure\n IDA(), #Sundials DAE Solver\n dtmax = 0.02, #Maximum step size\n)","category":"page"},{"location":"tutorials/tutorial_dynamic_lines/","page":"Dynamic Lines Simulation","title":"Dynamic Lines Simulation","text":"We can obtain the initial conditions as:","category":"page"},{"location":"tutorials/tutorial_dynamic_lines/","page":"Dynamic Lines Simulation","title":"Dynamic Lines Simulation","text":"#Print the initial states. It also give the symbols used to describe those states.\nshow_states_initial_value(sim_dyn)","category":"page"},{"location":"tutorials/tutorial_dynamic_lines/#Step-5.1:-Store-the-solution","page":"Dynamic Lines Simulation","title":"Step 5.1: Store the solution","text":"","category":"section"},{"location":"tutorials/tutorial_dynamic_lines/","page":"Dynamic Lines Simulation","title":"Dynamic Lines Simulation","text":"results_dyn = read_results(sim_dyn)\nseries2_dyn = get_voltage_magnitude_series(results_dyn, 102);\nzoom_dyn = [\n (series2_dyn[1][ix], series2_dyn[2][ix]) for\n (ix, s) in enumerate(series2_dyn[1]) if (s > 0.90 && s < 1.6)\n];","category":"page"},{"location":"tutorials/tutorial_dynamic_lines/#Step-6.1:-Compare-the-solutions:","page":"Dynamic Lines Simulation","title":"Step 6.1: Compare the solutions:","text":"","category":"section"},{"location":"tutorials/tutorial_dynamic_lines/","page":"Dynamic Lines Simulation","title":"Dynamic Lines Simulation","text":"We can observe the effect of Dynamic Lines","category":"page"},{"location":"tutorials/tutorial_dynamic_lines/","page":"Dynamic Lines Simulation","title":"Dynamic Lines Simulation","text":"plot(series2_dyn, label = \"V_gen_dyn\");\nplot!(series2, label = \"V_gen_st\", xlabel = \"Time [s]\", ylabel = \"Voltage [pu]\");","category":"page"},{"location":"tutorials/tutorial_dynamic_lines/","page":"Dynamic Lines Simulation","title":"Dynamic Lines Simulation","text":"(Image: plot)","category":"page"},{"location":"tutorials/tutorial_dynamic_lines/","page":"Dynamic Lines Simulation","title":"Dynamic Lines Simulation","text":"that looks quite similar. The differences can be observed in the zoom plot:","category":"page"},{"location":"tutorials/tutorial_dynamic_lines/","page":"Dynamic Lines Simulation","title":"Dynamic Lines Simulation","text":"plot(zoom_dyn, label = \"V_gen_dyn\");\nplot!(zoom, label = \"V_gen_st\", xlabel = \"Time [s]\", ylabel = \"Voltage [pu]\");","category":"page"},{"location":"tutorials/tutorial_dynamic_lines/","page":"Dynamic Lines Simulation","title":"Dynamic Lines Simulation","text":"(Image: plot)","category":"page"},{"location":"models/#Models","page":"Models","title":"Models","text":"","category":"section"},{"location":"models/#Simulation-Models","page":"Models","title":"Simulation Models","text":"","category":"section"},{"location":"models/","page":"Models","title":"Models","text":"PowerSimulations dynamics supports two formulations for the simulation model and define different methods for each simulation model. You can pass ResidualModel or MassMatrixModel to a call to Simulation to define the preferred formulation.","category":"page"},{"location":"models/","page":"Models","title":"Models","text":"In this way, we provide a common set of development requirements for contributors of new models that maintains the same flexibility in choosing the solving algorithm.","category":"page"},{"location":"models/","page":"Models","title":"Models","text":"MassMatrixModel: Defines models that can be solved using Mass-Matrix Solvers. The model is formulated as follows:","category":"page"},{"location":"models/","page":"Models","title":"Models","text":"beginalign\nMfracdx(t)dt = f(x(t))\nendalign","category":"page"},{"location":"models/","page":"Models","title":"Models","text":"At this stage we have not conducted extensive tests with all the solvers in DifferentialEquations most of our tests use Rodas5().","category":"page"},{"location":"models/","page":"Models","title":"Models","text":"ResidualModel: Define models that can be solved using Implicit ODE solvers and also the solver IDA from Sundials. The model is formulated to solved the following problem:","category":"page"},{"location":"models/","page":"Models","title":"Models","text":"beginalign\nr(t) = fracdx(t)dt - f(x(t))\nendalign","category":"page"},{"location":"models/","page":"Models","title":"Models","text":"At this stage we have not conducted extensive tests with all the solvers in DifferentialEquations if you are solving a larger system use IDA().","category":"page"},{"location":"models/#The-dynamic-system-model-in-PowerSimulationsDynamics","page":"Models","title":"The dynamic system model in PowerSimulationsDynamics","text":"","category":"section"},{"location":"models/","page":"Models","title":"Models","text":"In order to support both formulations, the default implementation of the ResidualModel solves the following problem:","category":"page"},{"location":"models/","page":"Models","title":"Models","text":"beginalign\nr(t) = Mfracdx(t)dt - f(x(t))\nendalign","category":"page"},{"location":"models/#Solution-approaches","page":"Models","title":"Solution approaches","text":"","category":"section"},{"location":"models/","page":"Models","title":"Models","text":"PowerSimulationsDynamics.jl construct the entire function that is passed to DifferentialEquations to solve it using different solvers. This is called the Simultaneous-solution approach to numerically integrate over time. It gives the user the flexibility to model devices with a combination of differential and algebraic states. In addition, it gives the flexibility to model the network using an algebraic or differential model.","category":"page"},{"location":"models/","page":"Models","title":"Models","text":"On the other hand, industrial tools such as PSS/E uses a Partitioned-solution approach, on which the network must be modeled using an algebraic approach, and the differential equations and algebraic equations are solved sequentially. This method is usually faster if the heuristics for convergence when solving sequentially are properly tuned. However, boundary techniques must be considered when the connection with the devices and network is not converging when applying the partitioned-solution approach.","category":"page"},{"location":"models/","page":"Models","title":"Models","text":"The difference in solution methods can complicate the validation and comparison between software tools. In addition it can affect the computational properties due to reliance of heuristics. These solution aspects are important to consider when using different tools for simulating power systems dynamics.","category":"page"},{"location":"models/","page":"Models","title":"Models","text":"For more details, check Brian Stott paper \"Power system dynamic response calculations\".","category":"page"},{"location":"models/#Generator-Models","page":"Models","title":"Generator Models","text":"","category":"section"},{"location":"models/","page":"Models","title":"Models","text":"Here we discuss the structure and models used to model generators in PowerSimulationsDynamics.jl. See PowerSystems.jl dynamic devices for details.","category":"page"},{"location":"models/","page":"Models","title":"Models","text":"Each generator is a data structure composed of the following components defined in PowerSystems.jl:","category":"page"},{"location":"models/","page":"Models","title":"Models","text":"Machine: That defines the stator electro-magnetic dynamics.\nShaft: That describes the rotor electro-mechanical dynamics.\nAutomatic Voltage Regulator: Electromotive dynamics to model an AVR controller.\nPower System Stabilizer: Control dynamics to define an stabilization signal for the AVR.\nPrime Mover and Turbine Governor: Thermo-mechanical dynamics and associated controllers.","category":"page"},{"location":"models/","page":"Models","title":"Models","text":"The implementation of Synchronous generators as components uses the following structure to share values across components.","category":"page"},{"location":"models/","page":"Models","title":"Models","text":"","category":"page"},{"location":"models/#Inverter-Models","page":"Models","title":"Inverter Models","text":"","category":"section"},{"location":"models/","page":"Models","title":"Models","text":"Here we discuss the structure and models used to model inverters in PowerSimulationsDynamics.jl. See PowerSystems.jl dynamic devices for details. One of the key contributions in this software package is a separation of the components in a way that resembles current practices for synchronoues machine modeling.","category":"page"},{"location":"models/","page":"Models","title":"Models","text":"DC Source: Defines the dynamics of the DC side of the converter.\nFrequency Estimator: That describes how the frequency of the grid can be estimated using the grid voltages. Typically a phase-locked loop (PLL).\nOuter Loop Control: That describes the active and reactive power control dynamics.\nInner Loop Control: That can describe virtual impedance, voltage control and current control dynamics.\nConverter: That describes the dynamics of the pulse width modulation (PWM) or space vector modulation (SVM).\nFilter: Used to connect the converter output to the grid.","category":"page"},{"location":"models/","page":"Models","title":"Models","text":"The following figure summarizes the components of a inverter and which variables they share:","category":"page"},{"location":"models/","page":"Models","title":"Models","text":"","category":"page"},{"location":"models/","page":"Models","title":"Models","text":"Contrary to the generator, there are many control structures that can be used to model inverter controllers (e.g. grid-following, grid feeding or virtual synchronous machine). For this purpose, more variables are shared among the components in order to cover all these posibilities.","category":"page"},{"location":"models/#Reference","page":"Models","title":"Reference","text":"","category":"section"},{"location":"models/","page":"Models","title":"Models","text":"For models, check the library in PowerSystems.jl","category":"page"},{"location":"component_models/avr/#Automatic-Voltage-Regulators-(AVR)","page":"AVR","title":"Automatic Voltage Regulators (AVR)","text":"","category":"section"},{"location":"component_models/avr/","page":"AVR","title":"AVR","text":"AVR are used to determine the voltage in the field winding v_f (or V_f) in the model.","category":"page"},{"location":"component_models/avr/#Fixed-AVR-[AVRFixed]","page":"AVR","title":"Fixed AVR [AVRFixed]","text":"","category":"section"},{"location":"component_models/avr/","page":"AVR","title":"AVR","text":"This is a simple model that set the field voltage to be equal to a desired constant value v_f = v_textfix.","category":"page"},{"location":"component_models/avr/#Simple-AVR-[AVRSimple]","page":"AVR","title":"Simple AVR [AVRSimple]","text":"","category":"section"},{"location":"component_models/avr/","page":"AVR","title":"AVR","text":"This depicts the most basic AVR, on which the field voltage is an integrator over the difference of the measured voltage and a reference:","category":"page"},{"location":"component_models/avr/","page":"AVR","title":"AVR","text":"beginalign\ndotv_f = K_v(v_textref - v_h) tag1a\nendalign","category":"page"},{"location":"component_models/avr/#AVR-Type-I-[AVRTypeI]","page":"AVR","title":"AVR Type I [AVRTypeI]","text":"","category":"section"},{"location":"component_models/avr/","page":"AVR","title":"AVR","text":"This AVR is a simplified version of the IEEE DC1 AVR model:","category":"page"},{"location":"component_models/avr/","page":"AVR","title":"AVR","text":"beginalign\ndotv_f = -frac1T_e left V_f(K_e + S_e(v_f))-v_r1 right tag2a \ndotv_r1 = frac1T_a left K_aleft(v_textref - v_m - v_r2 - fracK_fT_fv_fright) - v_r1 right tag2b \ndotv_r2 = -frac1T_f left fracK_fT_fv_f + v_r2 right tag2c \ndotv_m = frac1T_r (v_h - v_m) tag2d\nendalign","category":"page"},{"location":"component_models/avr/","page":"AVR","title":"AVR","text":"with the ceiling function:","category":"page"},{"location":"component_models/avr/","page":"AVR","title":"AVR","text":"beginalign*\nS_e(v_f) = A_e exp(B_ev_f)\nendalign*","category":"page"},{"location":"component_models/avr/#AVR-Type-II-[AVRTypeII]","page":"AVR","title":"AVR Type II [AVRTypeII]","text":"","category":"section"},{"location":"component_models/avr/","page":"AVR","title":"AVR","text":"This model represents a static exciter with higher gains and faster response than the Type I:","category":"page"},{"location":"component_models/avr/","page":"AVR","title":"AVR","text":"beginalign\ndotv_f = -frac1T_e left V_f(1 + S_e(v_f))-v_r right tag3a \ndotv_r1 = frac1T_1 left K_0left(1 - fracT_2T_1 right)(v_textref - v_m) - v_r1 right tag3b \ndotv_r2 = frac1K_0 T_3 left left( 1 - fracT_4T_3 right) left( v_r1 + K_0fracT_2T_1(v_textref - v_m)right) - K_0 v_r2 right tag3c \ndotv_m = frac1T_r (v_h - v_m) tag3d\nendalign","category":"page"},{"location":"component_models/avr/","page":"AVR","title":"AVR","text":"with","category":"page"},{"location":"component_models/avr/","page":"AVR","title":"AVR","text":"beginalign*\nv_r = K_0v_r2 + fracT_4T_3 left( v_r1 + K_0fracT_2T_1(v_textref - v_m)right) \nS_e(v_f) = A_e exp(B_ev_f)\nendalign*","category":"page"},{"location":"component_models/avr/#Excitation-System-AC1A-[ESAC1A]","page":"AVR","title":"Excitation System AC1A [ESAC1A]","text":"","category":"section"},{"location":"component_models/avr/","page":"AVR","title":"AVR","text":"The model represents the 5-states IEEE Type AC1A Excitation System Model:","category":"page"},{"location":"component_models/avr/","page":"AVR","title":"AVR","text":"beginalign\ndotV_m = frac1T_r (V_h - V_m) tag4a \ndotV_r1 = frac1T_b left(V_in left(1 - fracT_cT_bright) - V_r1right) tag4b \ndotV_r2 = frac1T_a (K_a V_out - V_r2) tag4c \ndotV_e = frac1T_e (V_r - V_FE) tag4d \ndotV_r3 = frac1T_f left( - fracK_fT_fV_FE - V_r3 right) tag4e \nendalign","category":"page"},{"location":"component_models/avr/","page":"AVR","title":"AVR","text":"with","category":"page"},{"location":"component_models/avr/","page":"AVR","title":"AVR","text":"beginalign*\nI_N = fracK_cV_e X_adI_fd \nV_FE = K_d X_adI_fd + K_e V_e + S_e V_e \nS_e = Bfrac(V_e-A)^2V_e \nV_F1 = V_r3 + fracK_fT_f V_FE \nV_in = V_ref - V_m - V_F1 \nV_out = V_r1 + fracT_cT_b V_in \nV_f = V_e f(I_N) \nf(I_N) = leftbeginarraycl\n 1 text if I_N le 0 \n 1 - 0577 I_N text if 0 I_N le 0433 \n sqrt075 - I_N^2 text if 0433 I_N le 075 \n 1732(1-I_N) text if 075 I_N le 1 \n 0 text if I_N 1 endarray right\nendalign*","category":"page"},{"location":"component_models/avr/","page":"AVR","title":"AVR","text":"on which X_adI_fd is the field current coming from the generator and V_h is the terminal voltage, and AB are the saturation coefficients computed using the E_1 E_2 S_e(E_1) S_e(E_2) data.","category":"page"},{"location":"component_models/avr/#Simplified-Excitation-System-[SEXS]","page":"AVR","title":"Simplified Excitation System [SEXS]","text":"","category":"section"},{"location":"component_models/avr/","page":"AVR","title":"AVR","text":"The model for the 2 states excitation system SEXS:","category":"page"},{"location":"component_models/avr/","page":"AVR","title":"AVR","text":"beginalign\ndotV_f = frac1T_e (V_LL - V_f) tag5a \ndotV_r = frac1T_b leftleft(1 - fracT_aT_bright) V_in - V_r right tag5b\nendalign","category":"page"},{"location":"component_models/avr/","page":"AVR","title":"AVR","text":"with","category":"page"},{"location":"component_models/avr/","page":"AVR","title":"AVR","text":"beginalign*\nV_in = V_ref + V_s - V_h \nV_LL = V_r + fracT_aT_bV_in \nendalign*","category":"page"},{"location":"component_models/avr/","page":"AVR","title":"AVR","text":"on which V_h is the terminal voltage and V_s is the PSS output signal.","category":"page"},{"location":"component_models/avr/#Excitation-System-ST1-[EXST1]","page":"AVR","title":"Excitation System ST1 [EXST1]","text":"","category":"section"},{"location":"component_models/avr/","page":"AVR","title":"AVR","text":"The model represents the 4-states IEEE Type ST1 Excitation System Model:","category":"page"},{"location":"component_models/avr/","page":"AVR","title":"AVR","text":"beginalign\ndotV_m = frac1T_r (V_h - V_m) tag6a \ndotV_rll = frac1T_b left(V_in left(1 - fracT_cT_bright) - V_rllright) tag6b \ndotV_r = frac1T_a (V_LL - V_r) tag6c \ndotV_fb = frac1T_f left( - fracK_fT_fV_r - V_fb right) tag6d \nendalign","category":"page"},{"location":"component_models/avr/","page":"AVR","title":"AVR","text":"with ","category":"page"},{"location":"component_models/avr/","page":"AVR","title":"AVR","text":"beginalign*\nV_in = V_ref - V_m - y_hp \nV_LL = V_r + fracT_cT_b V_in \ny_hp = V_fb + fracK_fT_f V_r \nV_f = V_r \nendalign*","category":"page"},{"location":"component_models/avr/","page":"AVR","title":"AVR","text":"on which V_h is the terminal voltage.","category":"page"},{"location":"component_models/avr/#Excitation-System-EXAC1-[EXAC1]","page":"AVR","title":"Excitation System EXAC1 [EXAC1]","text":"","category":"section"},{"location":"component_models/avr/","page":"AVR","title":"AVR","text":"The model represents the 5-states IEEE Type EXAC1 Excitation System Model:","category":"page"},{"location":"component_models/avr/","page":"AVR","title":"AVR","text":"beginalign\ndotV_m = frac1T_r (V_h - V_m) tag7a \ndotV_r1 = frac1T_b left(V_in left(1 - fracT_cT_bright) - V_r1right) tag7b \ndotV_r2 = frac1T_a (K_a V_out - V_r2) tag7c \ndotV_e = frac1T_e (V_r - V_FE) tag7d \ndotV_r3 = frac1T_f left( - fracK_fT_fV_FE - V_r3 right) tag7e \nendalign","category":"page"},{"location":"component_models/avr/","page":"AVR","title":"AVR","text":"with","category":"page"},{"location":"component_models/avr/","page":"AVR","title":"AVR","text":"beginalign*\nI_N = fracK_cV_e X_adI_fd \nV_FE = K_d X_adI_fd + K_e V_e + S_e V_e \nS_e = Bfrac(V_e-A)^2V_e \nV_F1 = V_r3 + fracK_fT_f V_FE \nV_in = V_ref - V_m - V_F1 \nV_out = V_r1 + fracT_cT_b V_in \nV_f = V_e f(I_N) \nf(I_N) = leftbeginarraycl\n 1 text if I_N le 0 \n 1 - 0577 I_N text if 0 I_N le 0433 \n sqrt075 - I_N^2 text if 0433 I_N le 075 \n 1732(1-I_N) text if 075 I_N le 1 \n 0 text if I_N 1 endarray right\nendalign*","category":"page"},{"location":"component_models/avr/","page":"AVR","title":"AVR","text":"on which X_adI_fd is the field current coming from the generator and V_h is the terminal voltage, and AB are the saturation coefficients computed using the E_1 E_2 S_e(E_1) S_e(E_2) data.","category":"page"},{"location":"component_models/outer_control/#Outer-Loop-Controls","page":"Outer Control","title":"Outer Loop Controls","text":"","category":"section"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"This component defines controllers for both active and reactive power. The joint design is based on the fact that many novel control techniques can be based on joint control of active and reactive power.","category":"page"},{"location":"component_models/outer_control/#Virtual-Inertia-and-Q-droop-[OuterControl]","page":"Outer Control","title":"Virtual Inertia and Q-droop [OuterControl]","text":"","category":"section"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"The following model represent a virtual synchronous machine model to represent how active power is going to be deployed. The constructor is OuterControl{VirtualInertia, ReactivePowerDroop}. It defines a new SRF denoted as theta_textolc for the active power controller and uses a simple voltage droop for dispatching reactive power:","category":"page"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"beginalign\n dotomega_textolc = fracp_textrefT_a - fracp_eT_a - frack_d(omega_textolc - omega_textpll)T_a - frack_omega(omega_textolc - omega_textref)T_a tag1a \n dottheta_textolc = Omega_b (omega_textolc - omega_textsys) tag1b \n dotq_m = omega_f (q_e - q_m) tag1c\nendalign","category":"page"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"with","category":"page"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"beginalign\n p_e = v_ri_r + v_ii_i tag1d \n q_e = v_ii_r - v_ri_i tag1e \n v_textolc^textref = v_textref + k_q(q_textref - q_m) tag1f\nendalign","category":"page"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"In this case, the measurement of power are being done in the capacitor of the LCL filter. However, depending on the model, this measurements could be different depending on where is the point of common coupling.","category":"page"},{"location":"component_models/outer_control/#Active-Power-Droop-(P-droop)-and-Q-droop-[OuterControl]","page":"Outer Control","title":"Active Power Droop (P-droop) and Q-droop [OuterControl]","text":"","category":"section"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"The following model represent a Ptext-f droop model to represent how active power is going to be deployed. The constructor is OuterControl{ActivePowerDroop, ReactivePowerDroop}. It defines a new SRF denoted as theta_textolc for the active power controller and uses a simple voltage droop for dispatching reactive power. Both active and reactive power are measured via a low-pass filter:","category":"page"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"beginalign\n dottheta_textolc = Omega_b (omega_textolc - omega_textsys) tag2a \n dotp_m = omega_z (p_e - p_m) tag2b \n dotq_m = omega_f (q_e - q_m) tag2c\nendalign","category":"page"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"with","category":"page"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"beginalign\n p_e = v_ri_r + v_ii_i tag2d \n q_e = v_ii_r - v_ri_i tag2e \n omega_textolc = omega_textref + R_p (p_textref - p_m) tag2f \n v_textolc^textref = v_textref + k_q(q_textref - q_m) tag2g\nendalign","category":"page"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"In this case, the measurement of power are being done in the capacitor of the LCL filter. However, depending on the model, this measurements could be different depending on where is the point of common coupling.","category":"page"},{"location":"component_models/outer_control/#Active-and-Reactive-Virtual-Oscillator-Controllers-[OuterControl]","page":"Outer Control","title":"Active and Reactive Virtual Oscillator Controllers [OuterControl]","text":"","category":"section"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"The following model represents a Virtual Oscillator Controller for both active and reactive power to generate the voltage references that will be used in the Voltage Controller. The contructor is OuterControl{ActiveVirtualOscillator, ReactiveVirtualOscillator} It defines a new SRF denoted as theta_textolc and a voltage reference E_textolc. The equations are:","category":"page"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"beginalign\n dottheta_textolc = Omega_b (omega_textolc - omega_textsys) tag3a \n dotE_olc = Omega_b left(frack_1E_oc (-sin(gamma) (p_textref - p_e) + cos(gamma)(q_textref - q_e)) + k_2 (V_textref - E_oc^2)E_oc right) tag3b \nendalign","category":"page"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"with","category":"page"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"beginalign\n gamma = psi - fracpi2 tag3c \n omega_textolc = omega_textsys + frack_1E_oc^2 left(cos(gamma) (p_textref - p_e) + sin(gamma)(q_textref - q_e) right) tag3d \n p_e = v_ri_r + v_ii_i tag3e \n q_e = v_ii_r - v_ri_i tag3f \nendalign","category":"page"},{"location":"component_models/outer_control/#Active-and-Reactive-Power-PI-Controllers-(Grid-Following)-[OuterControl]","page":"Outer Control","title":"Active and Reactive Power PI Controllers (Grid Following) [OuterControl]","text":"","category":"section"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"The following model represents a PI controller for both active and reactive power to generate the current references that will be used in the Current Controller of the inner control CurrentModeControl. The constructor is OuterControl{ActivePowerPI, ReactivePowerPI}. The equations are:","category":"page"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"beginalign\n dotsigma_p = p_textref - p_m tag4a \n dotp_m = omega_z (p_e - p_m) tag4b \n dotsigma_q = q_textref - q_m tag4c \n dotq_m = omega_f (q_e - p_m) tag4d \nendalign","category":"page"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"with","category":"page"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"beginalign\n p_e = v_ri_r + v_ii_i tag4e \n q_e = v_ii_r - v_ri_i tag4f \n omega_textolc = omega_textpll tag4g \n theta_textolc = theta_textpll tag4h \n i_textdcv^textref = k_p^q (q_textref - q_m) + k_i^q sigma_q tag4i \n i_textqcv^textref = k_p^p (p_textref - p_m) + k_i^p sigma_p tag4j \nendalign","category":"page"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"This models requires a PLL to have a SRF for an internal dq reference frame. Contrary to the Grid-Forming model, it cannot work without a PLL. Since this Outer Control outputs a current reference, it can only be used with a current mode inner control (i.e. that receives a current reference instead of a voltage reference).","category":"page"},{"location":"component_models/outer_control/#Active-and-Reactive-Generic-Renewable-Controller-Type-AB-[OuterControl]","page":"Outer Control","title":"Active and Reactive Generic Renewable Controller Type AB [OuterControl]","text":"","category":"section"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"The following model represents an outer controller for both active and reactive power from generic industrial models REPCA and REECB to generate the current references that will be used in the Current Controller of the inner control RECurrentControlB. The constructor is OuterControl{ActiveRenewableControllerAB, ReactiveRenewableControllerAB}. The equations will depend on the flags used.","category":"page"},{"location":"component_models/outer_control/#Active-part","page":"Outer Control","title":"Active part","text":"","category":"section"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"In the case of F_Flag = 1 the equations (without limits and freezing) are:","category":"page"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"beginalign\n dotp_textflt = frac1T_p (p_e - p_textflt) tag5a \n dotxi_P = p_texterr tag5b \n dotp_textext = frac1T_g (K_pg p_texterr + K_ig xi_P) tag5c \n dotp_textord = frac1T_textpord (p_textext - p_textord) tag5d\nendalign","category":"page"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"with","category":"page"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"beginalign\n p_e = v_ri_r + v_ii_i tag5e \n p_texterr = p_textref + p_textdroop - p_textflt tag5f \nendalign","category":"page"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"In the case of F_Flag = 0 the equations (without limits) are simply","category":"page"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"beginalign\n dotp_textord = frac1T_textpord (p_textref - p_textord) tag5g\nendalign","category":"page"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"The current command going to the Inner Loop is computed as:","category":"page"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"beginalign\n I_textocpcmd = fracp_textordV_texttflt tag5h\nendalign","category":"page"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"on which V_texttflt is the filtered terminal bus voltage coming from the inner controller.","category":"page"},{"location":"component_models/outer_control/#Reactive-part","page":"Outer Control","title":"Reactive part","text":"","category":"section"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"In the case of VC_Flag = 0, Ref_Flag = 0, PF_Flag = 0, V_Flag = 1 the equations (without limits and freezing) are:","category":"page"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"beginalign\n dotq_textflt = frac1T_textfltr (q_e - q_textflt) tag5i \n dotxi_textqoc = q_texterr tag5j \n dotq_LL = frac1T_fv(Q_textpi ( 1 - T_ftT_fv) - q_LL) tag5k \n dotxi_Q = V_textpiin tag5l \nendalign","category":"page"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"with","category":"page"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"beginalign\n q_e = v_ii_r - v_ri_i tag5m \n q_texterr = q_textref - q_flt tag5n \n Q_textpi = K_p q_texterr + K_i xi_textqoc tag5o \n Q_textext = q_LL + fracT_ftT_fv Q_textpi tag5p \n V_textpiin = Q_textext - q_e tag5q \nendalign","category":"page"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"The output to the inner controller are V_textocqcmd if the Q_Flag = 1 on the Inner Controller, or I_textocqcmd if Q_Flag = 0:","category":"page"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"beginalign\n V_textocqcmd = (K_qp V_textpiin + K_qi xi_Q) - V_texttflt tag5r \n I_textocqmcd = fracQ_textextmax(V_texttflt 001) tag5s\nendalign","category":"page"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"In the case of VC_Flag = 0, Ref_Flag = 0, PF_Flag = 0, V_Flag = 1 the equations (without limits and freezing) are:","category":"page"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"beginalign\n dotq_textflt = frac1T_textfltr (q_e - q_textflt) tag5t \n dotxi_textqoc = q_texterr tag5u \n dotq_LL = frac1T_fv(Q_textpi ( 1 - T_ftT_fv) - q_LL) tag5v \nendalign","category":"page"},{"location":"component_models/outer_control/","page":"Outer Control","title":"Outer Control","text":"The remaining models for other flags will be included when implemented in PowerSimulationsDynamics.jl.","category":"page"},{"location":"perturbations/#Perturbations","page":"Perturbations","title":"Perturbations","text":"","category":"section"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"Perturbations are used to alter the system from its steady state operation. If a Simulation is properly initialized, all states will remain fixed in their initial condition if no perturbation is applied to the system.","category":"page"},{"location":"perturbations/#List-of-perturbations","page":"Perturbations","title":"List of perturbations","text":"","category":"section"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"NetworkSwitch: allows to modify directly the admittance matrix, Ybus, used in the Simulation.\nBranchTrip: completely disconnects a branch from the system.\nBranchImpedanceChange: change the impedance of a branch by a user defined multiplier. \nGeneratorTrip: allows to disconnect a Dynamic Generation unit from the system.\nControlReferenceChange: allows to change the reference setpoint provided by a generator/inverter.\nLoadChange: allows to change the active or reactive power setpoint from a load.\nLoadTrip: allows the user to disconnect a load from the system.\nSourceBusVoltageChange: allows to change the reference setpoint provided by a voltage source.","category":"page"},{"location":"perturbations/#Examples","page":"Perturbations","title":"Examples","text":"","category":"section"},{"location":"perturbations/#Example-1:-Circuit-Disconnection-using-NetworkSwitch","page":"Perturbations","title":"Example 1: Circuit Disconnection using NetworkSwitch","text":"","category":"section"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"Consider a two bus system connected via a double circuit line, on which each circuit has parameters, r = 0.0, x = 0.1, b = 0.0 per unit, then the admittance matrix of the original system is given by:","category":"page"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"yb = [0.0 - 20.0im 0.0 + 20.0im\n 0.0 + 20.0im 0.0 - 20.0im]","category":"page"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"Triping one circuit can be modeled by doubling the impedance, i.e., dividing by 2 the admittance:","category":"page"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"new_yb = [0.0 - 10.0im 0.0 + 10.0im\n 0.0 + 10.0im 0.0 - 10.0im]","category":"page"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"To apply a Network Switch, we require to use a sparse matrix, so we can do this by simply:","category":"page"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"using SparseArrays\nnew_yb = sparse(new_yb)","category":"page"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"Then, this perturbation ocurring at t = 10 seconds can be included as:","category":"page"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"ns1 = NetworkSwitch(1.0, new_yb)","category":"page"},{"location":"perturbations/#Example-2:-Three-Phase-Fault-using-NetworkSwitch","page":"Perturbations","title":"Example 2: Three Phase Fault using NetworkSwitch","text":"","category":"section"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"Another perturbation that can be modeled is a three phase fault at Bus 1 with impedance r_f = 0.0001, x_f = 0.0 per unit, then the admittance of this new system is:","category":"page"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"new_yb2 = [10000.0 - 20.0im 0.0 + 20.0im\n 0.0 + 20.0im 0.0 - 20.0im]","category":"page"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"Then, this perturbation ocurring at t = 10 seconds can be included as:","category":"page"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"new_yb2 = sparse(new_yb2)\nns2 = NetworkSwitch(1.0, new_yb2)","category":"page"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"Now, consider that the fault is cleared at t = 105 seconds by disconnecting the Circuit 2 of the line. This can be modeled with the single circuit admittance matrix:","category":"page"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"new_yb3 = [0.0 - 10.0im 0.0 + 10.0im\n 0.0 + 10.0im 0.0 - 10.0im]","category":"page"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"and the perturbation as:","category":"page"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"new_yb3 = sparse(new_yb3)\nns3 = NetworkSwitch(1.05, new_yb3)","category":"page"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"Then, the entire perturbation for the Simulation can be included in a vector of perturbations as:","category":"page"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"three_fault = [ns2, ns3]","category":"page"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"that can be passed as a perturbation argument in the Simulation construction.","category":"page"},{"location":"perturbations/#Example-3:-BranchTrip","page":"Perturbations","title":"Example 3: BranchTrip","text":"","category":"section"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"Consider the following 2 bus system defined by:","category":"page"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"buses = [\n Bus(1, \"nodeA\", \"REF\", 0, 1.0, (min = 0.9, max = 1.05), 230, nothing, nothing),\n Bus(2, \"nodeB\", \"PV\", 0, 1.0, (min = 0.9, max = 1.05), 230, nothing, nothing),\n]\n\nline1 = Line(\n \"Circuit1\",\n true,\n 0.0,\n 0.0,\n Arc(from = buses[1], to = buses[2]),\n 0.00,\n 0.1,\n (from = 0.0, to = 0.0),\n 2.0,\n (min = -0.7, max = 0.7),\n )\nline2 = Line(\n \"Circuit2\",\n true,\n 0.0,\n 0.0,\n Arc(from = buses[1], to = buses[2]),\n 0.0,\n 0.1,\n (from = 0.0, to = 0.0),\n 2.0,\n (min = -0.7, max = 0.7),\n )\n\nsys = System(100.0, buses, [], [], [line1, line2])","category":"page"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"A Branch Trip of Circuit 2 at time t = 10 seconds, can be implemented as:","category":"page"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"b_trip = BranchTrip(1.0, Line, \"Circuit2\")","category":"page"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"Note: Islanding is currently not supported in PowerSimulationsDynamics.jl. If a BranchTrip isolates a generation unit, the system may diverge due to the isolated generator.","category":"page"},{"location":"perturbations/#Example-4:-BranchImpedanceChange","page":"Perturbations","title":"Example 4: BranchImpedanceChange","text":"","category":"section"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"Following the same example as before, it is possible to amplify the impedance of a single circuit by 2.0 (that would represent that this Circuit is actually composed by 2 circuits) using the following perturbation:","category":"page"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"b_change = BranchImpedanceChange(1.0, Line, \"Circuit2\", 2.0)","category":"page"},{"location":"perturbations/#Example-5:-GeneratorTrip","page":"Perturbations","title":"Example 5: GeneratorTrip","text":"","category":"section"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"Consider that you have a generator at bus 102, named \"generator-102-1\" in your system called sys. The constructor to trip it from the system is:","category":"page"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"g = get_component(DynamicGenerator, sys, \"generator-102-1\")\ng_trip = GeneratorTrip(1.0, g)","category":"page"},{"location":"perturbations/#Example-6:-ControlReferenceChange","page":"Perturbations","title":"Example 6: ControlReferenceChange","text":"","category":"section"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"Consider that you have a generator at bus 102, named \"generator-102-1\" in your system called sys. The constructor to change is active power reference to 0.5 is:","category":"page"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"g = get_component(DynamicGenerator, sys, \"generator-102-1\")\ncrc = ControlReferenceChange(1.0, g, :P_ref, 0.5)","category":"page"},{"location":"perturbations/#Example-7:-LoadChange","page":"Perturbations","title":"Example 7: LoadChange","text":"","category":"section"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"Consider that you have a load at bus 103, named \"load-103-1\" in your system called sys. The constructor to change is active power reference to 0.8 per unit at t = 10 seconds is:","category":"page"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"l_device = get_component(ElectricLoad, sys, \"load-103-1\")\nl_change = LoadChange(1.0, l_device, :P_ref, 0.8)","category":"page"},{"location":"perturbations/#Example-8:-LoadTrip","page":"Perturbations","title":"Example 8: LoadTrip","text":"","category":"section"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"Consider that you have a load at bus 103, named \"load-103-1\" in your system called sys. The constructor to disconnect such load at t = 10 seconds is:","category":"page"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"l_device = get_component(ElectricLoad, sys, \"load-103-1\")\nl_trip = LoadTrip(1.0, l_device)","category":"page"},{"location":"perturbations/#Example-9:-SourceBusVoltageChange","page":"Perturbations","title":"Example 9: SourceBusVoltageChange","text":"","category":"section"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"Consider that you have a voltage source at bus 101, named \"source-101-1\" in your system called sys. The constructor to change is voltage magnitude reference to 1.02 per unit at t = 10 seconds is:","category":"page"},{"location":"perturbations/","page":"Perturbations","title":"Perturbations","text":"s_device = get_component(Source, sys, \"source-101-1\")\ns_change = SourceBusVoltageChange(1.0, s_device, 1, 1.02)","category":"page"},{"location":"component_models/machines/#Machines","page":"Machine","title":"Machines","text":"","category":"section"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"The machine component describes the stator-rotor electromagnetic dynamics.","category":"page"},{"location":"component_models/machines/#Classical-Model-(Zero-Order)-[BaseMachine]","page":"Machine","title":"Classical Model (Zero Order) [BaseMachine]","text":"","category":"section"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"This is the classical order model that does not have differential equations in its machine model (delta and omega are defined in the shaft):","category":"page"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"beginalign\n left beginarrayc i_d i_q endarray right = left beginarraycc r_a -x_d x_d r_a endarray right^-1 left beginarrayc -v_d e_q - v_q endarray right tag1a\np_e approx tau_e = (v_q + r_a i_q)i_q + (v_d + r_ai_d)i_d tag1b\nendalign","category":"page"},{"location":"component_models/machines/#One-d-One-q-Model-(2nd-Order)-[OneDOneQMachine]","page":"Machine","title":"One d- One q- Model (2nd Order) [OneDOneQMachine]","text":"","category":"section"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"This model includes two transient emf with their respective differential equations:","category":"page"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"beginalign\ndote_q = frac1T_d0 left-e_q + (x_d-x_d)i_d + v_fright tag2a\ndote_d = frac1T_q0 left-e_d + (x_q-x_q)i_q right tag2b\n left beginarrayc i_d i_q endarray right = left beginarraycc r_a -x_q x_d r_a endarray right^-1 left beginarrayc e_d-v_d e_q - v_q endarray right tag2c\np_e approx tau_e = (v_q + r_a i_q)i_q + (v_d + r_ai_d)i_d tag2d\nendalign","category":"page"},{"location":"component_models/machines/#Marconato-Machine-(6th-Order)-[MarconatoMachine]","page":"Machine","title":"Marconato Machine (6th Order) [MarconatoMachine]","text":"","category":"section"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"The Marconato model defines 6 differential equations, two for stator fluxes and 4 for transient and subtransient emfs:","category":"page"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"beginalign\ndotpsi_d = Omega_b(r_ai_d + omega psi_q + v_d) tag3a \ndotpsi_q = Omega_b(r_ai_q - omega psi_d + v_q) tag3b \ndote_q = frac1T_d0 left-e_q - (x_d-x_d-gamma_d)i_d + left(1- fracT_AAT_d0 right) v_fright tag3c\ndote_d = frac1T_q0 left-e_d + (x_q-x_q-gamma_q)i_q right tag3d\ndote_q = frac1T_d0 left-e_q + e_q - (x_d-x_d+gamma_d)i_d + fracT_AAT_d0v_f right tag3e \ndote_d = frac1T_q0 left-e_d + e_d + (x_q-x_q+gamma_q)i_q right tag3f \ni_d = frac1x_d (e_q - psi_d) tag3g \ni_q = frac1x_q (-e_d - psi_q) tag3h \ntau_e = psi_d i_q - psi_q i_d tag3i\nendalign","category":"page"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"with","category":"page"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"beginalign*\n gamma_d = fracT_d0 x_dT_d0 x_d (x_d - x_d) \n gamma_q = fracT_q0 x_qT_q0 x_q (x_q - x_q)\nendalign*","category":"page"},{"location":"component_models/machines/#Simplified-Marconato-Machine-(4th-Order)-[SimpleMarconatoMachine]","page":"Machine","title":"Simplified Marconato Machine (4th Order) [SimpleMarconatoMachine]","text":"","category":"section"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"This model neglects the derivative of stator fluxes (dotpsi_d and dotpsi_q) and assume that the rotor speed stays close to 1 pu (omegapsi_d=psi_d and omegapsi_q=psi_q) that allows to remove the stator fluxes variables from the Marconato model.","category":"page"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"beginalign\ndote_q = frac1T_d0 left-e_q - (x_d-x_d-gamma_d)i_d + left(1- fracT_AAT_d0 right) v_fright tag4a\ndote_d = frac1T_q0 left-e_d + (x_q-x_q-gamma_q)i_q right tag4b\ndote_q = frac1T_d0 left-e_q + e_q - (x_d-x_d+gamma_d)i_d + fracT_AAT_d0v_f right tag4c \ndote_d = frac1T_q0 left-e_d + e_d + (x_q-x_q+gamma_q)i_q right tag4d \nleft beginarrayc i_d i_q endarray right = left beginarraycc r_a -x_q x_d r_a endarray right^-1 left beginarrayc e_d-v_d e_q - v_q endarray right tag4e\np_e approx tau_e = (v_q + r_a i_q)i_q + (v_d + r_ai_d)i_d tag4f\nendalign","category":"page"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"with","category":"page"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"beginalign*\n gamma_d = fracT_d0 x_dT_d0 x_d (x_d - x_d) \n gamma_q = fracT_q0 x_qT_q0 x_q (x_q - x_q)\nendalign*","category":"page"},{"location":"component_models/machines/#Anderson-Fouad-Machine-(6th-Order)-[AndersonFouadMachine]","page":"Machine","title":"Anderson-Fouad Machine (6th Order) [AndersonFouadMachine]","text":"","category":"section"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"The Anderson-Fouad model also defines 6 differential equations, two for stator fluxes and 4 for transient and subtransient emfs and is derived from the Marconato model by defining gamma_d approx gamma_q approx T_AA approx 0:","category":"page"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"beginalign\ndotpsi_d = Omega_b(r_ai_d + omega psi_q + v_d) tag5a \ndotpsi_q = Omega_b(r_ai_q - omega psi_d + v_q) tag5b \ndote_q = frac1T_d0 left-e_q - (x_d-x_d)i_d + v_fright tag5c\ndote_d = frac1T_q0 left-e_d + (x_q-x_q)i_q right tag5d\ndote_q = frac1T_d0 left-e_q + e_q - (x_d-x_d)i_d right tag5e \ndote_d = frac1T_q0 left-e_d + e_d + (x_q-x_q)i_q right tag5f \ni_d = frac1x_d (e_q - psi_d) tag5g \ni_q = frac1x_q (-e_d - psi_q) tag5h \ntau_e = psi_d i_q - psi_q i_d tag5i\nendalign","category":"page"},{"location":"component_models/machines/#Simplified-Anderson-Fouad-Machine-(4th-Order)-[SimpleAFMachine]","page":"Machine","title":"Simplified Anderson-Fouad Machine (4th Order) [SimpleAFMachine]","text":"","category":"section"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"Similar to the Simplified Marconato Model, this model neglects the derivative of stator fluxes (dotpsi_d and dotpsi_q) and assume that the rotor speed stays close to 1 pu (omega psi_d = psi_d and omega psi_q = psi_q) that allows to remove the stator fluxes variables from the model:","category":"page"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"beginalign\ndote_q = frac1T_d0 left-e_q - (x_d-x_d)i_d + v_fright tag6a\ndote_d = frac1T_q0 left-e_d + (x_q-x_q)i_q right tag6b\ndote_q = frac1T_d0 left-e_q + e_q - (x_d-x_d)i_d right tag6c \ndote_d = frac1T_q0 left-e_d + e_d + (x_q-x_q)i_q right tag6d \nleft beginarrayc i_d i_q endarray right = left beginarraycc r_a -x_q x_d r_a endarray right^-1 left beginarrayc e_d-v_d e_q - v_q endarray right tag6e\np_e approx tau_e = (v_q + r_a i_q)i_q + (v_d + r_ai_d)i_d tag6f\nendalign","category":"page"},{"location":"component_models/machines/#Round-Rotor-Machine-(4th-Order)-[RoundRotorQuadratic,-RoundRotorExponential]","page":"Machine","title":"Round Rotor Machine (4th Order) [RoundRotorQuadratic, RoundRotorExponential]","text":"","category":"section"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"This model represents the traditional round rotor models GENROU/GENROE models implemented in PSLF/PSSE/PowerWorld. Similar to the Simplified Marconato Model, this model neglects the derivative of stator fluxes (dotpsi_d and dotpsi_q). Round rotor machines must satisfy x_d = x_q.","category":"page"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"beginalign\ndote_q = frac1T_d0 leftv_f - X_adI_fdright tag7a\ndote_d = frac1T_q0 left-X_aqI_1q right tag7b\ndotpsi_kd = frac1T_d0 left-psi_kd + e_q - (x_d-x_l)i_d right tag7c \ndotpsi_kq = frac1T_q0 left-psi_kq + e_d + (x_q-x_l)i_q right tag7d \nendalign","category":"page"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"with:","category":"page"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"beginalign\ngamma_d1 = fracx_d - x_lx_d - x_l tag7e\ngamma_q1 = fracx_q - x_lx_q - x_l tag7f\ngamma_d2 = fracx_d - x_d(x_d-x_l)^2 tag7g\ngamma_q2 = fracx_q - x_q(x_q - x_l)^2 tag7h\ngamma_qd = fracx_q - x_lx_d - x_l tag7i\npsi_q = gamma_q1 e_d + psi_kq (1 - gamma_q1) tag7j\npsi_d = gamma_d1 e_q + gamma_d2 (x_d - x_l) psi_kd tag7k\npsi = sqrt(psi_d)^2 + (psi_q)^2 tag7l\nleft beginarrayc i_d i_q endarray right = left beginarraycc -r_a x_q -x_d r_a endarray right^-1 left beginarrayc v_d - psi_q -v_q + psi_d endarray right tag7m\nX_adI_fd = e_q + (x_d - x_d) (gamma_d1 i_d - gamma_d2 psi_kd + gamma_d2 + e_q) + textSe(psi) psi_d tag7n\nX_aqI_1q = e_d + (x_q - x_q) (gamma_q2 e_d - gamma_q2psi_kq - gamma_q1 i_q) + textSe(psi) psi_q gamma_qd tag7o \ntau_e = i_d (r_a i_d + v_d) + i_q(r_a i_q + v_q) tag7p\nendalign","category":"page"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"The difference between GENROU and GENROE occurs in which additive saturation function textSe(psi) is used. Input data is provided by the saturation values at psi = 10 and psi = 12 p.u. For the GENROU model, the function used is:","category":"page"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"beginalign\ntextSe(psi) = fracB(psi - A)^2 psi tag7q\nendalign","category":"page"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"and for the GENROE model the function used is:","category":"page"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"beginalign\ntextSe(psi) = B(psi)^A tag7r\nendalign","category":"page"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"The parameters A and B for each function are computed using the two points given (10 textSe(10)) and (12 textSe(12)).","category":"page"},{"location":"component_models/machines/#Salient-Pole-Machine-(3rd-Order)-[SalientPoleQuadratic,-SalientPoleExponential]","page":"Machine","title":"Salient Pole Machine (3rd Order) [SalientPoleQuadratic, SalientPoleExponential]","text":"","category":"section"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"This model represents the traditional round rotor models GENSAL/GENSAE models implemented in PSLF/PSSE/PowerWorld. Similar to the GENROU Model, this model neglects the derivative of stator fluxes (dotpsi_d and dotpsi_q).","category":"page"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"beginalign\ndote_q = frac1T_d0 leftv_f - X_adI_fdright tag8a\ndotpsi_kd = frac1T_d0 left-psi_kd + e_q - (x_d-x_l)i_d right tag8b \ndotpsi_q = frac1T_q0 left-psi_q - (x_q-x_q)i_q right tag8c \nendalign","category":"page"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"with:","category":"page"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"beginalign\ngamma_d1 = fracx_d - x_lx_d - x_l tag8d\ngamma_q1 = fracx_q - x_lx_q - x_l tag8e\ngamma_d2 = fracx_d - x_d(x_d-x_l)^2 tag8f\npsi_d = gamma_d1 e_q + gamma_q1 psi_kd tag8g\nleft beginarrayc i_d i_q endarray right = left beginarraycc -r_a x_q -x_d r_a endarray right^-1 left beginarrayc v_d - psi_q -v_q + psi_d endarray right tag8h\nX_adI_fd = e_q + textSe(e_q) e_q + (x_d - x_d) (i_d + gamma_d2 (e_q - psi_kd - (x_d - x_l)i_d) tag8i\ntau_e = i_d (r_a i_d + v_d) + i_q(r_a i_q + v_q) tag8j\nendalign","category":"page"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"The difference between GENSAL and GENSAE occurs in which additive saturation function textSe(e_q) is used. Input data is provided by the saturation values at e_q = 10 and e_q = 12 p.u. For the GENSAL model, the function used is:","category":"page"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"beginalign\ntextSe(e_q) = fracB(e_q - A)^2 e_q tag8k\nendalign","category":"page"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"and for the GENSAE model the function used is:","category":"page"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"beginalign\ntextSe(e_q) = B(e_q)^A tag8l\nendalign","category":"page"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"The parameters A and B for each function are computed using the two points given (10 textSe(10)) and (12 textSe(12)).","category":"page"},{"location":"component_models/machines/#SauerPai-Machine-(6th-Order)-[SauerPaiMachine]","page":"Machine","title":"SauerPai Machine (6th Order) [SauerPaiMachine]","text":"","category":"section"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"The Sauer Pai model defines 6 differential equations as follows:","category":"page"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"beginalign\ndotpsi_d = Omega_b(r_ai_d + omega psi_q + v_d) tag9a \ndotpsi_q = Omega_b(r_ai_q - omega psi_d + v_q) tag9b \ndote_q = frac1T_d0 left(-e_q - (x_d - x_d)(i_d + gamma_d2 cdot dotpsi_d) + v_f)right tag9c\ndote_q = frac1T_q0 left(-e_d + (x_q - x_q)(i_q + gamma_q2 cdot dotpsi_q))right tag9d\ndotpsi_d = frac1T_d0 left(-psi_d + e_q - (x_d - x_l)cdot i_d)right tag9e \ndotpsi_q = frac1T_q0 left(-psi_q - e_d - (x_q - x_l)cdot i_q)right tag9f \ni_d = frac1x_d (gamma_d1 cdot e_q - psi_d + (1 - gamma_d1) * psi_d) tag9g \ni_q = frac1x_q ((-gamma_q1 cdot e_d - psi_q + (1 - gamma_q1) cdot psi_q) tag9h \ntau_e = psi_d i_q - psi_q i_d tag9i\nendalign","category":"page"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"with","category":"page"},{"location":"component_models/machines/","page":"Machine","title":"Machine","text":"beginalign*\n gamma_d1 = fracx_d - x_lx_d - x_l \n gamma_q1 = fracx_q - x_lx_q - x_l \n gamma_d2 = frac1 - gamma_d1x_d - x_l \n gamma_q2 = frac1 - gamma_q1x_q - x_l\nendalign*","category":"page"},{"location":"component_models/shafts/#Shafts","page":"Shaft","title":"Shafts","text":"","category":"section"},{"location":"component_models/shafts/","page":"Shaft","title":"Shaft","text":"The shaft component defines the rotating mass of the synchronous generator.","category":"page"},{"location":"component_models/shafts/#Rotor-Mass-Shaft-[SingleMass]","page":"Shaft","title":"Rotor Mass Shaft [SingleMass]","text":"","category":"section"},{"location":"component_models/shafts/","page":"Shaft","title":"Shaft","text":"This is the standard model, on which one single mass (typically the rotor) is used to model the entire inertia of the synchronous generator. Each generator's rotating frame use a reference frequency omega_s, that typically is the synchronous one (i.e. omega_s = 10). The model defines two differential equations for the rotor angle delta and the rotor speed omega:","category":"page"},{"location":"component_models/shafts/","page":"Shaft","title":"Shaft","text":"beginalign\ndotdelta = Omega_b(omega - omega_s) tag1a \ndotomega = frac12H(tau_m - tau_e - D(omega-omega_s)) tag1b\nendalign","category":"page"},{"location":"component_models/shafts/#Five-Mass-Shaft-[FiveMassShaft]","page":"Shaft","title":"Five-Mass Shaft [FiveMassShaft]","text":"","category":"section"},{"location":"component_models/shafts/","page":"Shaft","title":"Shaft","text":"This model describes model connecting a high-pressure (hp) steam turbine, intermediate-pressure (ip) steam turbine, low-pressure (lp) steam pressure, rotor and exciter (ex) connected in series (in that order) in the same shaft using a spring-mass model:","category":"page"},{"location":"component_models/shafts/","page":"Shaft","title":"Shaft","text":"beginalign\ndotdelta = Omega_b(omega - omega_s) tag2a \ndotomega = frac12H left- tau_e - D(omega-omega_s)) - D_34 (omega-omega_lp) - D_45(omega-omega_ex) + K_lp(delta_lp-delta) +K_ex(delta_ex-delta) right tag2b \ndotdelta_hp = Omega_b(omega_hp - omega_s) tag2c \ndotomega_hp = frac12H_hp left tau_m - D_hp(omega_hp-omega_s) - D_12(omega_hp - omega_ip) + K_hp(delta_ip - delta_hp) right tag2d \ndotdelta_ip = Omega_b(omega_ip - omega_s) tag2e \ndotomega_ip = frac12H_ip left- D_ip(omega_ip-omega_s) - D_12(omega_ip - omega_hp) -D_23(omega_ip - omega_lp ) + K_hp(delta_hp - delta_ip) + K_ip(delta_lp-delta_ip) right tag2f \ndotdelta_lp = Omega_b(omega_lp-omega_s) tag2g \ndotomega_lp = frac12H_lp left - D_lp(omega_lp-omega_s) - D_23(omega_lp - omega_ip) -D_34(omega_lp - omega ) + K_ip(delta_ip - delta_lp) + K_lp(delta-delta_lp) right tag2h \ndotdelta_ex = Omega_b(omega_ex-omega_s) tag2i \ndotomega_ex = frac12H_ex left - D_ex(omega_ex-omega_s) - D_45(omega_ex - omega) + K_ex(delta - delta_ex) right tag2j\nendalign","category":"page"},{"location":"api/public/#PowerSimulationsDynamics","page":"Public API Reference","title":"PowerSimulationsDynamics","text":"","category":"section"},{"location":"api/public/","page":"Public API Reference","title":"Public API Reference","text":"CurrentModule = PowerSimulationsDynamics\nDocTestSetup = quote\n using PowerSimulationsDynamics\nend","category":"page"},{"location":"api/public/","page":"Public API Reference","title":"Public API Reference","text":"Modules = [PowerSimulationsDynamics]\nPublic = true\nPrivate = false","category":"page"},{"location":"api/public/#PowerSimulationsDynamics.BranchImpedanceChange","page":"Public API Reference","title":"PowerSimulationsDynamics.BranchImpedanceChange","text":"mutable struct BranchImpedanceChange <: Perturbation\n time::Float64\n branch_type::Type{<:PSY.ACBranch}\n branch_name::String\n multiplier::Float64\nend\n\nA BranchImpedanceChange change the impedance of a branch by a user defined multiplier. Currently there is only support for static branches disconnection, PowerSystems.Line and PowerSystems.Transformer2W. Future releases will provide support for a Dynamic Line disconnection.\n\nArguments:\n\ntime::Float64 : Defines when the Branch Impedance Change will happen. This time should be inside the time span considered in the Simulation\nbranch_tipe::Type{<:PowerSystems.ACBranch} : Type of branch modified\nbranch_name::String : User defined name for identifying the branch\nmultiplier::Float64 : User defined value for impedance multiplier.\n\n\n\n\n\n","category":"type"},{"location":"api/public/#PowerSimulationsDynamics.BranchTrip","page":"Public API Reference","title":"PowerSimulationsDynamics.BranchTrip","text":"mutable struct BranchTrip <: Perturbation\n time::Float64\n branch_type::Type{<:PowerSystems.ACBranch}\n branch_name::String\nend\n\nA BranchTrip completely disconnects a branch from the system. Currently there is only support for static branches disconnection, PowerSystems.Line and PowerSystems.Transformer2W. Future releases will provide support for a Dynamic Line disconnection. Note: Islanding is currently not supported in PowerSimulationsDynamics.jl. If a BranchTrip isolates a generation unit, the system may diverge due to the isolated generator.\n\nArguments:\n\ntime::Float64 : Defines when the Branch Trip will happen. This time should be inside the time span considered in the Simulation\nbranch_tipe::Type{<:PowerSystems.ACBranch} : Type of branch disconnected\nbranch_name::String : User defined name for identifying the branch\n\n\n\n\n\n","category":"type"},{"location":"api/public/#PowerSimulationsDynamics.ControlReferenceChange","page":"Public API Reference","title":"PowerSimulationsDynamics.ControlReferenceChange","text":"mutable struct ControlReferenceChange <: Perturbation\n time::Float64\n device::PowerSystems.DynamicInjection\n signal::Symbol\n ref_value::Float64\nend\n\nA ControlReferenceChange allows to change the reference setpoint provided by a generator/inverter.\n\nArguments:\n\ntime::Float64 : Defines when the Control Reference Change will happen. This time should be inside the time span considered in the Simulation\ndevice::Type{<:PowerSystems.DynamicInjection} : Dynamic device modified\nsignal::Symbol : determines which reference setpoint will be modified. The accepted signals are:\n:P_ref: Modifies the active power reference setpoint.\n:V_ref: Modifies the voltage magnitude reference setpoint (if used).\n:Q_ref: Modifies the reactive power reference setpoint (if used).\n:ω_ref: Modifies the frequency setpoint.\nref_value::Float64 : User defined value for setpoint reference.\n\n\n\n\n\n","category":"type"},{"location":"api/public/#PowerSimulationsDynamics.GeneratorTrip","page":"Public API Reference","title":"PowerSimulationsDynamics.GeneratorTrip","text":"mutable struct GeneratorTrip <: Perturbation\n time::Float64\n device::PowerSystems.DynamicInjection\nend\n\nA GeneratorTrip allows to disconnect a Dynamic Generation unit from the system at a specified time.\n\nArguments:\n\ntime::Float64 : Defines when the Generator Trip will happen. This time should be inside the time span considered in the Simulation\ndevice::Type{<:PowerSystems.DynamicInjection} : Device to be disconnected\n\n\n\n\n\n","category":"type"},{"location":"api/public/#PowerSimulationsDynamics.LoadChange","page":"Public API Reference","title":"PowerSimulationsDynamics.LoadChange","text":"mutable struct LoadChange <: Perturbation\n time::Float64\n device::PowerSystems.ElectricLoad\n signal::Symbol\n ref_value::Float64\nend\n\nA LoadChange allows to change the active or reactive power setpoint from a load.\n\nArguments:\n\ntime::Float64 : Defines when the Load Change will happen. This time should be inside the time span considered in the Simulation\ndevice::Type{<:PowerSystems.ElectricLoad} : Dynamic device modified\nsignal::Symbol : determines which reference setpoint will be modified. The accepted signals are:\n:P_ref: Modifies the active power reference setpoint.\n:Q_ref: Modifies the reactive power reference setpoint.\nref_value::Float64 : User defined value for setpoint reference.\n\n\n\n\n\n","category":"type"},{"location":"api/public/#PowerSimulationsDynamics.LoadTrip","page":"Public API Reference","title":"PowerSimulationsDynamics.LoadTrip","text":"mutable struct LoadTrip <: Perturbation\n time::Float64\n device::PowerSystems.ElectricLoad\nend\n\nA LoadTrip allows the user to disconnect a load from the system.\n\nArguments:\n\ntime::Float64 : Defines when the Generator Trip will happen. This time should be inside the time span considered in the Simulation\ndevice::Type{<:PowerSystems.ElectricLoad} : Device to be disconnected\n\n\n\n\n\n","category":"type"},{"location":"api/public/#PowerSimulationsDynamics.MassMatrixModel-Union{Tuple{Ctype}, Tuple{Any, Vector{Float64}, Type{Ctype}}} where Ctype<:PowerSimulationsDynamics.SimCache","page":"Public API Reference","title":"PowerSimulationsDynamics.MassMatrixModel","text":"Instantiate a MassMatrixModel for ODE inputs.\n\n\n\n\n\n","category":"method"},{"location":"api/public/#PowerSimulationsDynamics.MassMatrixModel-Union{Tuple{Ctype}, Tuple{T}, Tuple{PowerSimulationsDynamics.SimulationInputs, Vector{T}, Type{Ctype}}} where {T<:Float64, Ctype<:PowerSimulationsDynamics.JacobianCache}","page":"Public API Reference","title":"PowerSimulationsDynamics.MassMatrixModel","text":"Instantiate a MassMatrixModel for ForwardDiff calculations\n\n\n\n\n\n","category":"method"},{"location":"api/public/#PowerSimulationsDynamics.NetworkSwitch","page":"Public API Reference","title":"PowerSimulationsDynamics.NetworkSwitch","text":"function NetworkSwitch(\n time::Float64,\n ybus::SparseArrays.SparseMatrixCSC{Complex{Float64}, Int},\n)\n\nAllows to modify directly the admittance matrix, Ybus, used in the Simulation. This allows the user to perform branch modifications, three phase faults (with impedance larger than zero) or branch trips, as long as the new Ybus provided captures that perturbation.\n\nArguments:\n\ntime::Float64 : Defines when the Network Switch will happen. This time should be inside the time span considered in the Simulation\nybus::SparseArrays.SparseMatrixCSC{Complex{Float64}, Int} : Complex admittance matrix\n\n\n\n\n\n","category":"type"},{"location":"api/public/#PowerSimulationsDynamics.PerturbState","page":"Public API Reference","title":"PowerSimulationsDynamics.PerturbState","text":"function PerturbState(\n time::Float64,\n index::Int,\n value::Float64,\n)\n\nAllows the user to modify the state index by adding value. The user should modify dynamic states only, since algebraic state may require to do a reinitialization.\n\nArguments:\n\ntime::Float64 : Defines when the modification of the state will happen. This time should be inside the time span considered in the Simulation.\nindex::Int : Defines which state index you want to modify\nvalue::Float64 : Defines how much the state will increase in value\n\n\n\n\n\n","category":"type"},{"location":"api/public/#PowerSimulationsDynamics.ResidualModel-Union{Tuple{Ctype}, Tuple{Any, Vector{Float64}, Type{Ctype}}} where Ctype<:PowerSimulationsDynamics.SimCache","page":"Public API Reference","title":"PowerSimulationsDynamics.ResidualModel","text":"Instantiate an ResidualModel for ODE inputs.\n\n\n\n\n\n","category":"method"},{"location":"api/public/#PowerSimulationsDynamics.ResidualModel-Union{Tuple{Ctype}, Tuple{T}, Tuple{PowerSimulationsDynamics.SimulationInputs, Vector{T}, Type{Ctype}}} where {T<:Float64, Ctype<:PowerSimulationsDynamics.JacobianCache}","page":"Public API Reference","title":"PowerSimulationsDynamics.ResidualModel","text":"Instantiate an ResidualModel for ForwardDiff calculations\n\n\n\n\n\n","category":"method"},{"location":"api/public/#PowerSimulationsDynamics.Simulation-Union{Tuple{T}, Tuple{Type{T}, System, String, Tuple{Float64, Float64}}, Tuple{Type{T}, System, String, Tuple{Float64, Float64}, Vector{<:PowerSimulationsDynamics.Perturbation}}} where T<:PowerSimulationsDynamics.SimulationModel","page":"Public API Reference","title":"PowerSimulationsDynamics.Simulation","text":"function Simulation\n ::SimulationModel\n system::PowerSystems.System\n simulation_folder::String\n tspan::NTuple{2, Float64},\n perturbations::Vector{<:Perturbation} = Vector{Perturbation}();\n kwargs...,\nend\n\nBuilds the simulation object and conducts the indexing process. The original system is not modified and a copy its created and stored in the Simulation.\n\nArguments:\n\n::SimulationModel : Type of Simulation Model. ResidualModel or MassMatrixModel. See Models Section for more details\nsystem::PowerSystems.System : System data\nsimulation_folder::String : Folder directory\ntspan::NTuple{2, Float64} : Time span for simulation\nperturbations::Vector{<:Perturbation} : Vector of Perturbations for the Simulation. Default: No Perturbations\ninitialize_simulation::Bool : Runs the initialization routine. If false, simulation runs based on the operation point stored in System\ninitial_conditions::Vector{Float64} : Allows the user to pass a vector with the initial condition values desired in the simulation. If initialize_simulation = true, these values are used as a first guess and overwritten.\nfrequency_reference : Default ReferenceBus. Determines which frequency model is used for the network. Currently there are two options available:\nConstantFrequency assumes that the network frequency is 1.0 per unit at all times.\nReferenceBus will use the frequency state of a Dynamic Generator (rotor speed) or Dynamic Inverter (virtual speed) connected to the Reference Bus (defined in the Power Flow data) as the network frequency. If multiple devices are connected to such bus, the device with larger base power will be used as a reference. If a Voltage Source is connected to the Reference Bus, then a ConstantFrequency model will be used.\nsystem_to_file::Bool : Default false. Serializes the initialized system\nconsole_level::Logging : Default Logging.Warn. Sets the level of logging output to the console. Can be set to Logging.Error, Logging.Warn, Logging.Info or Logging.Debug\nfile_level::Logging : Default Logging.Info. Sets the level of logging output to file. Can be set to Logging.Error, Logging.Warn, Logging.Info or Logging.Debug\ndisable_timer_outputs::Bool : Default false. Allows the user to display timer information about the construction and initilization of the Simulation.\n\n\n\n\n\n","category":"method"},{"location":"api/public/#PowerSimulationsDynamics.SourceBusVoltageChange","page":"Public API Reference","title":"PowerSimulationsDynamics.SourceBusVoltageChange","text":"mutable struct SourceBusVoltageChange <: Perturbation\n time::Float64\n device::PSY.Source\n signal::Symbol\n ref_value::Float64\nend\n\nA SourceBusVoltageChange allows to change the reference setpoint provided by a voltage source.\n\nArguments:\n\ntime::Float64 : Defines when the Control Reference Change will happen. This time should be inside the time span considered in the Simulation\ndevice::Type{<:PowerSystems.Source} : Device modified\nsignal::Symbol : determines which reference setpoint will be modified. The accepted signals are:\n:V_ref Modifies the internal voltage magnitude reference setpoint.\n:θ_ref Modifies the internal voltage angle reference setpoint.\nref_value::Float64 : User defined value for setpoint reference.\n\n\n\n\n\n","category":"type"},{"location":"api/public/#PowerSimulationsDynamics.Simulation!-Union{Tuple{T}, Tuple{Type{T}, System, String, Tuple{Float64, Float64}}, Tuple{Type{T}, System, String, Tuple{Float64, Float64}, Vector{<:PowerSimulationsDynamics.Perturbation}}} where T<:PowerSimulationsDynamics.SimulationModel","page":"Public API Reference","title":"PowerSimulationsDynamics.Simulation!","text":"function Simulation!\n ::SimulationModel\n system::PowerSystems.System\n simulation_folder::String\n tspan::NTuple{2, Float64},\n perturbations::Vector{<:Perturbation} = Vector{Perturbation}();\n kwargs...,\nend\n\nBuilds the simulation object and conducts the indexing process. The initial conditions are stored in the system.\n\nArguments:\n\n::SimulationModel : Type of Simulation Model. ResidualModel or MassMatrixModel. See Models Section for more details\nsystem::PowerSystems.System : System data\nsimulation_folder::String : Folder directory\ntspan::NTuple{2, Float64} : Time span for simulation\nperturbations::Vector{<:Perturbation} : Vector of Perturbations for the Simulation. Default: No Perturbations\ninitialize_simulation::Bool : Runs the initialization routine. If false, simulation runs based on the operation point stored in System\ninitial_conditions::Vector{Float64} : Allows the user to pass a vector with the initial condition values desired in the simulation. If initialize_simulation = true, these values are used as a first guess and overwritten.\nfrequency_reference : Default ReferenceBus. Determines which frequency model is used for the network. Currently there are two options available:\nConstantFrequency assumes that the network frequency is 1.0 per unit at all times.\nReferenceBus will use the frequency state of a Dynamic Generator (rotor speed) or Dynamic Inverter (virtual speed) connected to the Reference Bus (defined in the Power Flow data) as the network frequency. If multiple devices are connected to such bus, the device with larger base power will be used as a reference. If a Voltage Source is connected to the Reference Bus, then a ConstantFrequency model will be used.\nsystem_to_file::Bool : Default false. Serializes the initialized system\nconsole_level::Logging : Default Logging.Warn. Sets the level of logging output to the console. Can be set to Logging.Error, Logging.Warn, Logging.Info or Logging.Debug\nfile_level::Logging : Default Logging.Info. Sets the level of logging output to file. Can be set to Logging.Error, Logging.Warn, Logging.Info or Logging.Debug\ndisable_timer_outputs::Bool : Default false. Allows the user to display timer information about the construction and initilization of the Simulation.\n\n\n\n\n\n","category":"method"},{"location":"api/public/#PowerSimulationsDynamics.execute!-Tuple{Simulation, Any}","page":"Public API Reference","title":"PowerSimulationsDynamics.execute!","text":"execute!(\n sim::Simulation,\n solver;\n kwargs...\n)\n\nSolves the time-domain dynamic simulation model.\n\nArguments\n\nsim::Simulation : Initialized simulation object\nsolver : Solver used for numerical integration. Must be passed correctly depending on the Type of Simulation Model\nenable_progress_bar::Bool : Default: true. Enables progress bar for the integration routine.\nAdditional solver keyword arguments can be included. See Common Solver Options in the DifferentialEquations.jl documentation for more details.\n\n\n\n\n\n","category":"method"},{"location":"api/public/#PowerSimulationsDynamics.get_activepower_branch_flow-Tuple{SimulationResults, String, Symbol}","page":"Public API Reference","title":"PowerSimulationsDynamics.get_activepower_branch_flow","text":"get_activepower_branch_flow(\n res::SimulationResults,\n name::String,\n location::Symbol,\n)\n\nFunction to obtain the active power flowing through the series element of a Branch. The user must specified is the power should be computed in the :from or to :bus, by specifying a symbol.\n\nIf :from is specified, the power is computed flowing outwards the :from bus. If :to is specified, the power is computed flowing into the :to bus.\n\nArguments\n\nres::SimulationResults : Simulation Results object that contains the solution\nname::String : Name to identify the specified line\nlocation::Symbol : :from or :to to specify a bus\n\n\n\n\n\n","category":"method"},{"location":"api/public/#PowerSimulationsDynamics.get_activepower_series-Tuple{SimulationResults, String}","page":"Public API Reference","title":"PowerSimulationsDynamics.get_activepower_series","text":"get_activepower_series(\n res::SimulationResults,\n name::String,\n)\n\nFunction to obtain the active power output time series of a Dynamic Injection series out of the DAE Solution.\n\nArguments\n\nres::SimulationResults : Simulation Results object that contains the solution\nname::String : Name to identify the specified device\n\n\n\n\n\n","category":"method"},{"location":"api/public/#PowerSimulationsDynamics.get_field_current_series-Tuple{SimulationResults, String}","page":"Public API Reference","title":"PowerSimulationsDynamics.get_field_current_series","text":"get_field_current_series(\n res::SimulationResults,\n name::String,\n)\n\nFunction to obtain the field current time series of a Dynamic Generator out of the DAE Solution.\n\nArguments\n\nres::SimulationResults : Simulation Results object that contains the solution\nname::String : Name to identify the specified device\n\n\n\n\n\n","category":"method"},{"location":"api/public/#PowerSimulationsDynamics.get_field_voltage_series-Tuple{SimulationResults, String}","page":"Public API Reference","title":"PowerSimulationsDynamics.get_field_voltage_series","text":"get_field_voltage_series(\n res::SimulationResults,\n name::String,\n)\n\nFunction to obtain the field voltage time series of a Dynamic Generator out of the DAE Solution.\n\nArguments\n\nres::SimulationResults : Simulation Results object that contains the solution\nname::String : Name to identify the specified device\n\n\n\n\n\n","category":"method"},{"location":"api/public/#PowerSimulationsDynamics.get_frequency_series-Tuple{SimulationResults, String}","page":"Public API Reference","title":"PowerSimulationsDynamics.get_frequency_series","text":"get_frequency_series(\n res::SimulationResults,\n name::String,\n)\n\nFunction to obtain the frequency time series of a Dynamic Injection out of the DAE Solution.\n\nArguments\n\nres::SimulationResults : Simulation Results object that contains the solution\nname::String : Name to identify the specified device\n\n\n\n\n\n","category":"method"},{"location":"api/public/#PowerSimulationsDynamics.get_imaginary_current_branch_flow-Tuple{SimulationResults, String}","page":"Public API Reference","title":"PowerSimulationsDynamics.get_imaginary_current_branch_flow","text":"get_imaginary_current_branch_flow(\n res::SimulationResults,\n name::String,\n)\n\nFunction to obtain the imaginary current flowing through the series element of a Branch\n\nArguments\n\nres::SimulationResults : Simulation Results object that contains the solution\nname::String : Name to identify the specified line\n\n\n\n\n\n","category":"method"},{"location":"api/public/#PowerSimulationsDynamics.get_imaginary_current_series-Tuple{SimulationResults, String}","page":"Public API Reference","title":"PowerSimulationsDynamics.get_imaginary_current_series","text":"get_imaginary_current_series(\n res::SimulationResults,\n name::String,\n)\n\nFunction to obtain the imaginary current time series of a Dynamic Injection series out of the DAE Solution.\n\nArguments\n\nres::SimulationResults : Simulation Results object that contains the solution\nname::String : Name to identify the specified device\n\n\n\n\n\n","category":"method"},{"location":"api/public/#PowerSimulationsDynamics.get_jacobian-Union{Tuple{T}, Tuple{Type{T}, System}, Tuple{Type{T}, System, Int64}} where T<:PowerSimulationsDynamics.SimulationModel","page":"Public API Reference","title":"PowerSimulationsDynamics.get_jacobian","text":"function get_jacobian(\n::Type{T},\nsystem::PSY.System,\nsparse_retrieve_loop::Int = 3,\n) where {T <: SimulationModel}\n\nReturns the jacobian function of the system model resulting from the system data.\n\nArguments:\n\n::SimulationModel : Type of Simulation Model. ResidualModel or MassMatrixModel. See Models Section for more details\nsystem::PowerSystems.System : System data\nsparse_retrieve_loop::Int : Number of loops for sparsity detection. If 0, builds the Jacobian with a DenseMatrix\n\n\n\n\n\n","category":"method"},{"location":"api/public/#PowerSimulationsDynamics.get_mechanical_torque_series-Tuple{SimulationResults, String}","page":"Public API Reference","title":"PowerSimulationsDynamics.get_mechanical_torque_series","text":"get_mechanical_torque_series(\n res::SimulationResults,\n name::String,\n)\n\nFunction to obtain the mechanical torque time series of the mechanical torque out of the DAE Solution.\n\nArguments\n\nres::SimulationResults : Simulation Results object that contains the solution\nname::String : Name to identify the specified device\n\n\n\n\n\n","category":"method"},{"location":"api/public/#PowerSimulationsDynamics.get_pss_output_series-Tuple{SimulationResults, String}","page":"Public API Reference","title":"PowerSimulationsDynamics.get_pss_output_series","text":"get_pss_output_series(\n res::SimulationResults,\n name::String,\n)\n\nFunction to obtain the pss output time series of a Dynamic Generator out of the DAE Solution.\n\nArguments\n\nres::SimulationResults : Simulation Results object that contains the solution\nname::String : Name to identify the specified device\n\n\n\n\n\n","category":"method"},{"location":"api/public/#PowerSimulationsDynamics.get_reactivepower_branch_flow-Tuple{SimulationResults, String, Symbol}","page":"Public API Reference","title":"PowerSimulationsDynamics.get_reactivepower_branch_flow","text":"get_reactivepower_branch_flow(\n res::SimulationResults,\n name::String,\n location::Symbol,\n)\n\nFunction to obtain the reactive power flowing through the series element of a Branch. The user must specified is the power should be computed in the :from or to :bus, by specifying a symbol.\n\nIf :from is specified, the power is computed flowing outwards the :from bus. If :to is specified, the power is computed flowing into the :to bus.\n\nArguments\n\nres::SimulationResults : Simulation Results object that contains the solution\nname::String : Name to identify the specified line\nlocation::Symbol : :from or :to to specify a bus\n\n\n\n\n\n","category":"method"},{"location":"api/public/#PowerSimulationsDynamics.get_reactivepower_series-Tuple{SimulationResults, String}","page":"Public API Reference","title":"PowerSimulationsDynamics.get_reactivepower_series","text":"get_reactivepower_series(\n res::SimulationResults,\n name::String,\n)\n\nFunction to obtain the reactive power output time series of a Dynamic Injection series out of the DAE Solution.\n\nArguments\n\nres::SimulationResults : Simulation Results object that contains the solution\nname::String : Name to identify the specified device\n\n\n\n\n\n","category":"method"},{"location":"api/public/#PowerSimulationsDynamics.get_real_current_branch_flow-Tuple{SimulationResults, String}","page":"Public API Reference","title":"PowerSimulationsDynamics.get_real_current_branch_flow","text":"get_real_current_branch_flow(\n res::SimulationResults,\n name::String,\n)\n\nFunction to obtain the real current flowing through the series element of a Branch\n\nArguments\n\nres::SimulationResults : Simulation Results object that contains the solution\nname::String : Name to identify the specified line\n\n\n\n\n\n","category":"method"},{"location":"api/public/#PowerSimulationsDynamics.get_real_current_series-Tuple{SimulationResults, String}","page":"Public API Reference","title":"PowerSimulationsDynamics.get_real_current_series","text":"get_real_current_series(\n res::SimulationResults,\n name::String,\n)\n\nFunction to obtain the real current time series of a Dynamic Injection series out of the DAE Solution.\n\nArguments\n\nres::SimulationResults : Simulation Results object that contains the solution\nname::String : Name to identify the specified device\n\n\n\n\n\n","category":"method"},{"location":"api/public/#PowerSimulationsDynamics.get_setpoints-Tuple{Simulation}","page":"Public API Reference","title":"PowerSimulationsDynamics.get_setpoints","text":"get_setpoints(sim::Simulation)\n\nFunction that returns the reference setpoints for all the dynamic devices.\n\nArguments\n\nsim::Simulation : Simulation object that contains the initial condition and setpoints.\n\n\n\n\n\n","category":"method"},{"location":"api/public/#PowerSimulationsDynamics.get_source_imaginary_current_series","page":"Public API Reference","title":"PowerSimulationsDynamics.get_source_imaginary_current_series","text":"Function to obtain output imaginary current for a source. It receives the simulation results, the Source name and an optional argument of the time step of the results.\n\n\n\n\n\n","category":"function"},{"location":"api/public/#PowerSimulationsDynamics.get_source_real_current_series","page":"Public API Reference","title":"PowerSimulationsDynamics.get_source_real_current_series","text":"Function to obtain output real current for a source. It receives the simulation results, the Source name and an optional argument of the time step of the results.\n\n\n\n\n\n","category":"function"},{"location":"api/public/#PowerSimulationsDynamics.get_state_series-Tuple{SimulationResults, Tuple{String, Symbol}}","page":"Public API Reference","title":"PowerSimulationsDynamics.get_state_series","text":"get_state_series(\n res::SimulationResults,\n ref::Tuple{String, Symbol};\n dt::Union{Nothing, Float64, Vector{Float64}} = nothing\n)\nend\n\nFunction to obtain series of states out of DAE Solution.\n\nArguments\n\nres::SimulationResults : Simulation Results object that contains the solution\nref:Tuple{String, Symbol} : Tuple used to identify the dynamic device, via its name, as a String, and the associated state as a Symbol.\n\n\n\n\n\n","category":"method"},{"location":"api/public/#PowerSimulationsDynamics.get_voltage_angle_series-Tuple{SimulationResults, Int64}","page":"Public API Reference","title":"PowerSimulationsDynamics.get_voltage_angle_series","text":"get_voltage_angle_series(\n res::SimulationResults,\n bus_number::Int\n)\n\nFunction to obtain the voltage angle series out of the DAE Solution.\n\nArguments\n\nres::SimulationResults : Simulation Results object that contains the solution\nbus_number::Int : Bus number identifier\n\n\n\n\n\n","category":"method"},{"location":"api/public/#PowerSimulationsDynamics.get_voltage_magnitude_series-Tuple{SimulationResults, Int64}","page":"Public API Reference","title":"PowerSimulationsDynamics.get_voltage_magnitude_series","text":"get_voltage_magnitude_series(\n res::SimulationResults,\n bus_number::Int\n)\n\nFunction to obtain the voltage magnitude series out of the DAE Solution.\n\nArguments:\n\nres::SimulationResults : Simulation Results object that contains the solution\nbus_number::Int : Bus number identifier\n\n\n\n\n\n","category":"method"},{"location":"api/public/#PowerSimulationsDynamics.read_initial_conditions-Tuple{Simulation}","page":"Public API Reference","title":"PowerSimulationsDynamics.read_initial_conditions","text":"Returns a Dictionary with the resulting initial conditions of the simulation\n\n\n\n\n\n","category":"method"},{"location":"api/public/#PowerSimulationsDynamics.show_states_initial_value-Tuple{SimulationResults}","page":"Public API Reference","title":"PowerSimulationsDynamics.show_states_initial_value","text":"show_states_initial_value(res::SimulationResults)\n\nFunction to print initial states.\n\nArguments\n\nres::SimulationResults : Simulation Results object that contains the solution\n\n\n\n\n\n","category":"method"},{"location":"api/public/#PowerSimulationsDynamics.show_states_initial_value-Tuple{Simulation}","page":"Public API Reference","title":"PowerSimulationsDynamics.show_states_initial_value","text":"show_states_initial_value(sim::Simulation)\n\nFunction to print initial states.\n\nArguments\n\nsim::Simulation : Simulation object that contains the initial condition\n\n\n\n\n\n","category":"method"},{"location":"api/public/#PowerSimulationsDynamics.small_signal_analysis-Union{Tuple{Simulation{T}}, Tuple{T}} where T<:PowerSimulationsDynamics.SimulationModel","page":"Public API Reference","title":"PowerSimulationsDynamics.small_signal_analysis","text":"small_signal_analysis(\n sim::Simulation,\n)\n\nReturns the Small Signal Output object that contains the eigenvalues and participation factors.\n\nArguments\n\nsim::Simulation : Small Signal Output object that contains the eigenvalues and participation factors\n\n\n\n\n\n","category":"method"},{"location":"api/public/#PowerSimulationsDynamics.summary_eigenvalues-Tuple{PowerSimulationsDynamics.SmallSignalOutput}","page":"Public API Reference","title":"PowerSimulationsDynamics.summary_eigenvalues","text":"summary_eigenvalues(\n sm::SmallSignalOutput,\n)\n\nFunction to obtain a summary of the eigenvalues of the Jacobian at the operating point. It returns a DataFrame with the most associated state for each eigenvalue, its real and imaginary part, damping and frequency.\n\nArguments\n\nsm::SmallSignalOutput : Small Signal Output object that contains the eigenvalues and participation factors\n\n\n\n\n\n","category":"method"},{"location":"api/public/#PowerSimulationsDynamics.summary_participation_factors-Tuple{PowerSimulationsDynamics.SmallSignalOutput}","page":"Public API Reference","title":"PowerSimulationsDynamics.summary_participation_factors","text":"summary_participation_factors(\n sm::SmallSignalOutput,\n)\n\nFunction to obtain the participation factor of each state to each eigenvalue. It returns a DataFrame with the participation factors of each state to all eigenvalues.\n\nArguments\n\nsm::SmallSignalOutput : Small Signal Output object that contains the eigenvalues and participation factors\n\n\n\n\n\n","category":"method"},{"location":"component_models/network/#Network-model","page":"Network","title":"Network model","text":"","category":"section"},{"location":"component_models/network/","page":"Network","title":"Network","text":"Here we discuss the models used to describe the network in PowerSimulationsDynamics.jl. This is based on a standard current injection model as defined in Power System Modelling and Scripting. The numerical advantages of current injection models outweigh the complexities of implementing constant power loads for longer-term transient stability analysis. The network is defined in a synchronous reference frame (SRF), named the RI (real-imaginary) reference frame, rotating at the constant base frequency Omega_b.","category":"page"},{"location":"component_models/network/","page":"Network","title":"Network","text":"In simple terms, PowerSimulationsDynamics.jl internally tracks the current-injection balances at the nodal level from all the devices on the system. Based on the buses and branches information, the system constructor computes the admittance matrix boldsymbolY assuming nominal frequency and this is used for static branch modeling. The algebraic equations for the static portions of the network are as follows:","category":"page"},{"location":"component_models/network/","page":"Network","title":"Network","text":" beginalign\n 0 = boldsymboli(boldsymbolx boldsymbolv) - boldsymbolYboldsymbolv\n endalign","category":"page"},{"location":"component_models/network/","page":"Network","title":"Network","text":"where boldsymboli = i_r + ji_i is the vector of the sum of complex current injections from devices , boldsymbolx is the vector of states and boldsymbolv = v_r + jv_i is the vector of complex bus voltages. Equations (1) connect all the port variables, i.e., currents, defined for each injection device. Components that contribute to (1) by modifying the current boldsymboli are (i) static injection devices, (ii) dynamic injection devices, and (iii) dynamic network branches. Components that contribute to modify the admittance matrix boldsymbolY are static branches.","category":"page"},{"location":"component_models/network/#Static-Branches-(or-Algebraic-Branches)","page":"Network","title":"Static Branches (or Algebraic Branches)","text":"","category":"section"},{"location":"component_models/network/#Lines","page":"Network","title":"Lines","text":"","category":"section"},{"location":"component_models/network/","page":"Network","title":"Network","text":"Each line is defined using a pi model connecting two buses (nm), with a series resistance r and reactance x, and a shunt capacitance at both ends (c_n c_m). The values are already in system per unit. Then each branch contributes to the admittance matrix as follows:","category":"page"},{"location":"component_models/network/","page":"Network","title":"Network","text":"beginalign\nY_nn += frac1r+jx + jc_n \nY_nm += frac-1r+jx \nY_mm += frac1r+jx + jc_m \nY_mn += frac-1r+jx \nendalign","category":"page"},{"location":"component_models/network/#Two-Windings-Transformers","page":"Network","title":"Two-Windings Transformers","text":"","category":"section"},{"location":"component_models/network/","page":"Network","title":"Network","text":"Similarly to lines these are defined by a series reactance and impedance. The equations are equivalently of the lines without the shunt capacitance.","category":"page"},{"location":"component_models/network/#Dynamic-Branches","page":"Network","title":"Dynamic Branches","text":"","category":"section"},{"location":"component_models/network/","page":"Network","title":"Network","text":"Dynamic network branches contribute directly to (1) by modifying the vector of complex currents. Their parameters are also the series resistance r and reactance x, and a shunt capacitance at both ends (c_n c_m) for a line ell. In addition, they define 3 new additional differential equations per line (6 in total for real and imaginary part):","category":"page"},{"location":"component_models/network/","page":"Network","title":"Network","text":"beginalign\n fraclOmega_b fracdboldsymboli_elldt = (boldsymbolv_n - boldsymbolv_m) - (r+jl) boldsymboli_ell \n fracc_nOmega_b fracdboldsymbolv_ndt = boldsymboli_n^textcap - jc_nboldsymbolv_n \n fracc_mOmega_b fracdboldsymbolv_mdt = boldsymboli_m^textcap - jc_mboldsymbolv_m\nendalign","category":"page"},{"location":"component_models/network/","page":"Network","title":"Network","text":"Since all the values are in per unit, the reactance is equal to the inductance.","category":"page"},{"location":"component_models/network/","page":"Network","title":"Network","text":"A detail discussion about the effects of different line models in the modeling of inverters is presented in Grid Forming Inverter Small Signal Stability: Examining Role of Line and Voltage Dynamics","category":"page"},{"location":"component_models/pss/#Power-System-Stabilizers-(PSS)","page":"PSS","title":"Power System Stabilizers (PSS)","text":"","category":"section"},{"location":"component_models/pss/","page":"PSS","title":"PSS","text":"PSS are used to add an additional signal v_s to the input signal of the AVR: v_textref = v_textref^textavr + v_s.","category":"page"},{"location":"component_models/pss/#Fixed-PSS-[PSSFixed]","page":"PSS","title":"Fixed PSS [PSSFixed]","text":"","category":"section"},{"location":"component_models/pss/","page":"PSS","title":"PSS","text":"This is a simple model that set the stabilization signal to be equal to a desired constant value v_s = v_s^textfix. The absence of PSS can be modelled using this component with v_s^textfix = 0.","category":"page"},{"location":"component_models/pss/#Simple-PSS-[PSSSimple]","page":"PSS","title":"Simple PSS [PSSSimple]","text":"","category":"section"},{"location":"component_models/pss/","page":"PSS","title":"PSS","text":"This is the most basic PSS that can be implemented, on which the stabilization signal is a proportional controller over the frequency and electrical power:","category":"page"},{"location":"component_models/pss/","page":"PSS","title":"PSS","text":"beginalign\nv_s = K_omega(omega - omega_s) + K_p(omega tau_e - P_textref) tag1a\nendalign","category":"page"},{"location":"component_models/pss/#IEEE-Stabilizer-[IEEEST]","page":"PSS","title":"IEEE Stabilizer [IEEEST]","text":"","category":"section"},{"location":"component_models/pss/","page":"PSS","title":"PSS","text":"The 7th-order PSS model is:","category":"page"},{"location":"component_models/pss/","page":"PSS","title":"PSS","text":"beginalign\nA_4 dotx_1 = u - A_3 x_1 - x_2 tag2a \ndotx_2 = x_1 tag2b \nA_2dotx_3 = x_2 - A_1 x_3 - x_4 tag2c\ndotx_4 = x_3 tag2d\nT_2dotx_5 = left(1 - fracT_1T_2right) y_f - x_5 tag2e\nT_4dotx_6 = left(1 - fracT_3T_4right) y_LL1 - x_6 tag2f\nT_6dotx_7 = -left(fracK_s T_5T_6 y_LL2 + x_7 right) tag2g\nendalign","category":"page"},{"location":"component_models/pss/","page":"PSS","title":"PSS","text":"with","category":"page"},{"location":"component_models/pss/","page":"PSS","title":"PSS","text":"beginalign*\ny_f = fracT_4T_2 x_2 + left(T_3 - T_1 fracT_4T_2right) x_3 + left(1 - fracT_4T_2right)x_4 \ny_LL1 = x_5 + fracT_1T_2 y_f \ny_LL2 = x_6 + fracT_3T_4 y_LL1 \ny_out = x_7 + fracK_s T_5T_6 y_LL2 \nV_s = textclamp(y_out textLs_textmin textLs_textmax)\nendalign*","category":"page"},{"location":"component_models/pss/","page":"PSS","title":"PSS","text":"on which u is the input signal to the PSS, that depends on the flag. Currently, rotor speed, electric torque, mechanical torque and voltage magnitude are supported inputs.","category":"page"},{"location":"component_models/pss/#STAB1-PSS-[STAB1]","page":"PSS","title":"STAB1 PSS [STAB1]","text":"","category":"section"},{"location":"component_models/pss/","page":"PSS","title":"PSS","text":"The 3rd-order PSS model is:","category":"page"},{"location":"component_models/pss/","page":"PSS","title":"PSS","text":"beginalign\nT dotx_1 = K omega - x_1 tag3a \nT_3dotx_2 = left(1 - fracT_1T_3right) x_1 - x_2 tag3b \nT_4dotx_3 = left(1 - fracT_2T_4right) y_LL - x_2 tag3c \nendalign","category":"page"},{"location":"component_models/pss/","page":"PSS","title":"PSS","text":"with","category":"page"},{"location":"component_models/pss/","page":"PSS","title":"PSS","text":"beginalign*\ny_LL = x_2 + fracT_1T_3 x_1 \ny_out = x_3 + fracT_2T_4 y_LL \nV_s = textclamp(y_out -H_lim H_lim)\nendalign*","category":"page"},{"location":"initialization/#Initialization-Routine","page":"Initialization","title":"Initialization Routine","text":"","category":"section"},{"location":"initialization/","page":"Initialization","title":"Initialization","text":"Dynamic Simulations require a reasonable initial condition for the system model. In most analysis, power systems models are initialized at a stable equilibrium, which implies that:","category":"page"},{"location":"initialization/","page":"Initialization","title":"Initialization","text":"beginalign\n0 = F(x u eta)\nendalign","category":"page"},{"location":"initialization/","page":"Initialization","title":"Initialization","text":"Finding the solution of a large non-linear system is challenging and requires a reasonable initial guess. In classical power systems literature, the routine to find equilibrium points for the dynamic injection devices' components is well known and used in free and commercial software (see Power System Modelling and Scripting page 224). However, in the case of converter interface dynamic injection models, such routines are not documented.","category":"page"},{"location":"initialization/","page":"Initialization","title":"Initialization","text":"Initializing the system also requires finding valid set-points for the devices in the system. For instance, finding the reference voltage in an AVR to match the voltage magnitude resulting from the power flow solution. PowerSimulationsDynamics.jl prioritizes mathching the dynamic components control references to match the power flow results.","category":"page"},{"location":"initialization/","page":"Initialization","title":"Initialization","text":"Finally, the initialization must instantiate not only the values of the states but also the inner vars. PowerSimulationsDynamics.jl handles all this initializations by default.","category":"page"},{"location":"initialization/#Initialization-interface","page":"Initialization","title":"Initialization interface","text":"","category":"section"},{"location":"initialization/","page":"Initialization","title":"Initialization","text":"By default PowerSimulationsDynamics.jl initializes the system following the steps described below. it is possible to provide an initial guess for the initial conditions to speed up the initialization process.","category":"page"},{"location":"initialization/","page":"Initialization","title":"Initialization","text":"Simulation(\n ResidualModel,\n sys,\n pwd(),\n (0.0, 20.0);\n initial_conditions = x0_init,\n )","category":"page"},{"location":"initialization/","page":"Initialization","title":"Initialization","text":"It is also possible to initialize the simulation using a flat start (V_mag = 1.0, V_angle = 0.0 and x0 = zeros) using initialize_simulation = false. However, for medium or large system this is unlikely to result in a valid initial condition for the simulation.","category":"page"},{"location":"initialization/","page":"Initialization","title":"Initialization","text":"Simulation(\n ResidualModel,\n sys,\n pwd(),\n (0.0, 20.0);\n initialize_simulation = false,\n )","category":"page"},{"location":"initialization/","page":"Initialization","title":"Initialization","text":"If you want to avoid PowerSimulationsDynamics.jl from finding an stable equilibrium automatically and provide the initial condition manually you can use the following flag combination.","category":"page"},{"location":"initialization/","page":"Initialization","title":"Initialization","text":"Simulation(\n ResidualModel,\n sys,\n pwd(),\n (0.0, 20.0);\n initialize_simulation = false,\n initial_conditions = x0_init,\n )","category":"page"},{"location":"initialization/","page":"Initialization","title":"Initialization","text":"WARNING!: when the initialize_simulation is set to false, neither the device set points nor the inner vars are initialized. Use these keywords with care and make sure the values in the system components match the initial conditions provided.","category":"page"},{"location":"initialization/#System-wide-initialization-routine","page":"Initialization","title":"System-wide initialization routine","text":"","category":"section"},{"location":"initialization/","page":"Initialization","title":"Initialization","text":"The initialization routine starts from the solution of the power flow equations. For each dynamic injection device PowerSimulationsDynamics.jl finds the solution of the systems of non-linear equations for each dynamic component following the sequences described in the forthcoming sections.","category":"page"},{"location":"initialization/","page":"Initialization","title":"Initialization","text":"Once each device is individually initialized, the system-wide initial guess is used to solve the system (1). In a first attempt at finding the solution, the tolerance is set to a stringent tolerance. If the non-linear solver is unable to get a solution, it might usually reflect small signal stability problems in the system. In a second attempt, the tolerances are relaxed. If the solver succeeds, the simulation continues, but the user is warned.","category":"page"},{"location":"initialization/","page":"Initialization","title":"Initialization","text":"","category":"page"},{"location":"initialization/#Initialization-of-the-Synchronous-Machines","page":"Initialization","title":"Initialization of the Synchronous Machines","text":"","category":"section"},{"location":"initialization/","page":"Initialization","title":"Initialization","text":"The initialization of Synchronous Machines is standard in power systems and follows the scheme shown in the figure. Other internal variables are calculated recursively from the power flow solution for the node on which the dynamic device isconnected. (Adapted from Power System Modelling and Scripting Figure 9.2)","category":"page"},{"location":"initialization/","page":"Initialization","title":"Initialization","text":"(Image: init_machine)","category":"page"},{"location":"initialization/#Initialization-of-the-Inverters","page":"Initialization","title":"Initialization of the Inverters","text":"","category":"section"},{"location":"initialization/","page":"Initialization","title":"Initialization","text":"Initializing the inverters follows the sequence shown in the figure and has been developed to be compatible with the implementation of custom dynamic components. Given that the process is less studied and standard than the one of the synchronous machine, this page contains more detailed documentation of the process.","category":"page"},{"location":"initialization/","page":"Initialization","title":"Initialization","text":"(Image: init_machine)","category":"page"},{"location":"initialization/","page":"Initialization","title":"Initialization","text":"The first component to be initialized is the filter. Given that the filter is an RLC circuit connected to the grid, its currents and voltages need to match the results of the power flow. The initialization of the filter provides the values for the P and Q used in the outer control and the V and I needed in the inner controls.\nBased on the bus voltage in the system's reference frame V_r and the bus angle theta the PLL's can be initialized to obtain the angle and frequency estimates needed by the outer control.\nThe Outer Control calculates the internal angle delta_olc required by the inner control to estimate the voltage and current phase difference.\nThe DC Source uses the power set-point consistent with the power outputs of the filter to initialize the V_dc set-points. This value is used in the inner control.\nThe inner control takes the phase angle delta_olc and the V_dc to estimate the modulation values of the PWM converter.","category":"page"},{"location":"initialization/","page":"Initialization","title":"Initialization","text":"Note: The initialization of an inverter through the proposed meta-model is actively under development and subject to change. This page will maintain the latest version of the sequence.","category":"page"},{"location":"tutorials_page/#SIIP-Examples","page":"SIIP-Examples","title":"SIIP-Examples","text":"","category":"section"},{"location":"tutorials_page/","page":"SIIP-Examples","title":"SIIP-Examples","text":"All the tutorials for the SIIP project are part of a separate repository SIIP-Examples. You can access the latest PowerSimulationsDynamics.jl tutorial notebooks in this link","category":"page"},{"location":"tutorials_page/","page":"SIIP-Examples","title":"SIIP-Examples","text":"Specific examples of common workflows and models:","category":"page"},{"location":"tutorials_page/","page":"SIIP-Examples","title":"SIIP-Examples","text":"Loading Dynamic Data\nSolving a One Machine against Infinite Bus model\nChanging line modeling assumptions\nUsing an Inverter in a Multi-Machine Model","category":"page"},{"location":"tutorials/tutorial_continuation_pf/#Tutorial-Small-Signal-Analysis-with-Continuation-Power-Flow","page":"Small-Signal Analysis","title":"Tutorial Small Signal Analysis with Continuation Power Flow","text":"","category":"section"},{"location":"tutorials/tutorial_continuation_pf/","page":"Small-Signal Analysis","title":"Small-Signal Analysis","text":"Originally Contributed by: Rodrigo Henriquez-Auba","category":"page"},{"location":"tutorials/tutorial_continuation_pf/#Introduction","page":"Small-Signal Analysis","title":"Introduction","text":"","category":"section"},{"location":"tutorials/tutorial_continuation_pf/","page":"Small-Signal Analysis","title":"Small-Signal Analysis","text":"This tutorial will introduce you to the functionality of PowerSimulationsDynamics and PowerFlows for running small signal analysis in a continuation power flow.","category":"page"},{"location":"tutorials/tutorial_continuation_pf/","page":"Small-Signal Analysis","title":"Small-Signal Analysis","text":"This tutorial presents a simulation of a two-bus system with a generator (represented with a GENROU + SEXS + TGOV1 model) at bus 1, and a load on bus 2. We will increase the load demand to observe the P-V curve and run a small-signal analysis to check if the system satisfies small-signal stability at different operating points.","category":"page"},{"location":"tutorials/tutorial_continuation_pf/#Dependencies","page":"Small-Signal Analysis","title":"Dependencies","text":"","category":"section"},{"location":"tutorials/tutorial_continuation_pf/","page":"Small-Signal Analysis","title":"Small-Signal Analysis","text":"using PowerSimulationsDynamics\nPSID = PowerSimulationsDynamics\nusing PowerSystemCaseBuilder\nusing PowerSystems\nusing PowerFlows\nconst PSY = PowerSystems\nusing Plots\ngr()\n\n# Disable Logging to avoid excessive information\nusing Logging\nLogging.disable_logging(Logging.Info); \nLogging.disable_logging(Logging.Warn); ","category":"page"},{"location":"tutorials/tutorial_continuation_pf/","page":"Small-Signal Analysis","title":"Small-Signal Analysis","text":"note: Note\nPowerSystemCaseBuilder.jl is a helper library that makes it easier to reproduce examples in the documentation and tutorials. Normally you would pass your local files to create the system data instead of calling the function build_system. For more details visit PowerSystemCaseBuilder Documentation","category":"page"},{"location":"tutorials/tutorial_continuation_pf/","page":"Small-Signal Analysis","title":"Small-Signal Analysis","text":"PowerSystems (abbreviated with PSY) is used to properly define the data structure and establish an equilibrium point initial condition with a power flow routine using PowerFlows.","category":"page"},{"location":"tutorials/tutorial_continuation_pf/#Load-the-system","page":"Small-Signal Analysis","title":"Load the system","text":"","category":"section"},{"location":"tutorials/tutorial_continuation_pf/","page":"Small-Signal Analysis","title":"Small-Signal Analysis","text":"We load the system using PowerSystemCaseBuilder.jl. This system only have a generator without dynamic data on which we can use PowerFlows to generate a P-V (or nose) curve.","category":"page"},{"location":"tutorials/tutorial_continuation_pf/","page":"Small-Signal Analysis","title":"Small-Signal Analysis","text":"sys_static = build_system(PSIDSystems, \"2 Bus Load Tutorial\")","category":"page"},{"location":"tutorials/tutorial_continuation_pf/","page":"Small-Signal Analysis","title":"Small-Signal Analysis","text":"Note that this system contains an Exponential Load, but the parameters are set up to zero, so it behaves a Constant Power Load:","category":"page"},{"location":"tutorials/tutorial_continuation_pf/","page":"Small-Signal Analysis","title":"Small-Signal Analysis","text":"first(get_components(PSY.ExponentialLoad, sys_static))","category":"page"},{"location":"tutorials/tutorial_continuation_pf/#Create-a-P-V-curve","page":"Small-Signal Analysis","title":"Create a P-V curve","text":"","category":"section"},{"location":"tutorials/tutorial_continuation_pf/","page":"Small-Signal Analysis","title":"Small-Signal Analysis","text":"The next step is to run multiple power flows and store the voltage at the load and the active power. For this example we will set up the power factor to be unitary (i.e. no reactive power at the load). ","category":"page"},{"location":"tutorials/tutorial_continuation_pf/","page":"Small-Signal Analysis","title":"Small-Signal Analysis","text":"# Create a Power Range to change the power load active power\nP_range = 0.01:0.01:4.6;\n# Choose the power factor\nload_pf = 1.0;","category":"page"},{"location":"tutorials/tutorial_continuation_pf/","page":"Small-Signal Analysis","title":"Small-Signal Analysis","text":"Then create vectors to store the results","category":"page"},{"location":"tutorials/tutorial_continuation_pf/","page":"Small-Signal Analysis","title":"Small-Signal Analysis","text":"# PV Curve Results\nP_load_p = Vector{Float64}();\nV_load_p = Vector{Float64}();","category":"page"},{"location":"tutorials/tutorial_continuation_pf/","page":"Small-Signal Analysis","title":"Small-Signal Analysis","text":"Then, we run multiple power flows in a for loop by changing the active power of the load:","category":"page"},{"location":"tutorials/tutorial_continuation_pf/","page":"Small-Signal Analysis","title":"Small-Signal Analysis","text":"for p in P_range\n # Change the active power and reactive power of the load\n power = p * 1.0\n load = get_component(PSY.ExponentialLoad, sys_static, \"load1021\")\n set_active_power!(load, power)\n q_power = power * tan(acos(load_pf))\n set_reactive_power!(load, q_power)\n # Run Power Flow\n status = solve_ac_powerflow!(sys_static)\n if !status\n # Finish the loop if the power flow fails\n print(\"Power Flow failed at p = $(power)\")\n break\n end\n # Obtain the bus voltage information\n bus = get_component(Bus, sys_static, \"BUS 2\")\n Vm = get_magnitude(bus)\n # Store values in the vectors\n push!(V_load_p, Vm)\n push!(P_load_p, power)\nend","category":"page"},{"location":"tutorials/tutorial_continuation_pf/","page":"Small-Signal Analysis","title":"Small-Signal Analysis","text":"The plot can be visualized with:","category":"page"},{"location":"tutorials/tutorial_continuation_pf/","page":"Small-Signal Analysis","title":"Small-Signal Analysis","text":"plot(P_load_p,\n V_load_p,\n label = \"PV Curve\",\n xlabel = \"Load Power [pu]\",\n ylabel = \"Load Bus Voltage [pu]\",\n color = :black\n)","category":"page"},{"location":"tutorials/tutorial_continuation_pf/","page":"Small-Signal Analysis","title":"Small-Signal Analysis","text":"(Image: plot)","category":"page"},{"location":"tutorials/tutorial_continuation_pf/#Run-Small-Signal-Analysis-besides-the-Continuation-Power-Flow","page":"Small-Signal Analysis","title":"Run Small-Signal Analysis besides the Continuation Power Flow","text":"","category":"section"},{"location":"tutorials/tutorial_continuation_pf/","page":"Small-Signal Analysis","title":"Small-Signal Analysis","text":"To run a small-signal analysis we require a dynamic model of the machine. We can use PowerSystemCaseBuilder to the load the same system, but with a dynamic model for the generator, including a GENROU + SEXS exciter + TGOV1 governor.","category":"page"},{"location":"tutorials/tutorial_continuation_pf/","page":"Small-Signal Analysis","title":"Small-Signal Analysis","text":"sys = build_system(PSIDSystems, \"2 Bus Load Tutorial GENROU\")","category":"page"},{"location":"tutorials/tutorial_continuation_pf/","page":"Small-Signal Analysis","title":"Small-Signal Analysis","text":"Here are the components of the generator:","category":"page"},{"location":"tutorials/tutorial_continuation_pf/","page":"Small-Signal Analysis","title":"Small-Signal Analysis","text":"first(get_components(DynamicGenerator, sys))","category":"page"},{"location":"tutorials/tutorial_continuation_pf/","page":"Small-Signal Analysis","title":"Small-Signal Analysis","text":"Besides the results of the P-V curve, we need to store if the system is small-signal stable or not by looking if there is a positive real part eigenvalue.","category":"page"},{"location":"tutorials/tutorial_continuation_pf/","page":"Small-Signal Analysis","title":"Small-Signal Analysis","text":"# Vectors to store stability using a boolean (true for stable).\nstable_vec = Vector{Bool}();\nstatus_vec = Vector{Bool}();\n\n# PV Curve Results\nP_load_p = Vector{Float64}();\nV_load_p = Vector{Float64}();","category":"page"},{"location":"tutorials/tutorial_continuation_pf/","page":"Small-Signal Analysis","title":"Small-Signal Analysis","text":"We then run the main for loop by updating the load active power, but in addition we create a PowerSimulationsDynamics simulation on which we can run a small-signal analysis to check stability.","category":"page"},{"location":"tutorials/tutorial_continuation_pf/","page":"Small-Signal Analysis","title":"Small-Signal Analysis","text":"for p in P_range\n # Change the active power and reactive power of the load\n power = p * 1.0\n load = get_component(PSY.ExponentialLoad, sys_static, \"load1021\")\n set_active_power!(load, power)\n q_power = power * tan(acos(load_pf))\n set_reactive_power!(load, q_power)\n # Run Power Flow\n status = solve_ac_powerflow!(sys_static)\n if !status\n # Finish the loop if the power flow fails\n print(\"Power Flow failed at p = $(power)\")\n break\n end\n # Obtain the bus voltage information\n bus = get_component(Bus, sys_static, \"BUS 2\")\n Vm = get_magnitude(bus)\n # Store values in the vectors\n push!(V_load_p, Vm)\n push!(P_load_p, power)\n\n # Update Load Power in the GENROU system\n load = get_component(PSY.ExponentialLoad, sys, \"load1021\")\n set_active_power!(load, power)\n q_power = power * tan(acos(load_pf))\n set_reactive_power!(load, q_power)\n # Construct Simulation\n sim = Simulation(ResidualModel, sys, mktempdir(), (0.0, 1.0))\n if sim.status == PSID.BUILT\n # Check small-signal stability\n sm = small_signal_analysis(sim).stable\n # Push results of small-signal stability\n push!(stable_vec, sm)\n # Push results if the simulation was able to be constructed\n push!(status_vec, true)\n else\n # Push results if the simulation was not able to be constructed\n push!(status_vec, false)\n end\nend","category":"page"},{"location":"tutorials/tutorial_continuation_pf/","page":"Small-Signal Analysis","title":"Small-Signal Analysis","text":"The following plot showcases the P-V curve, while also showcasing (in red) the regions on which the system is small-signal stable.","category":"page"},{"location":"tutorials/tutorial_continuation_pf/","page":"Small-Signal Analysis","title":"Small-Signal Analysis","text":"\n# Find where is stable and unstable\ndict_true_ixs_p = Vector();\ndict_false_ixs_p = Vector();\ndict_true_ixs_p = findall(x->x, stable_vec);\ndict_false_ixs_p = findall(x->!x, stable_vec);\n\n# Create plot\ntrue_ixs = dict_true_ixs_p;\nplot(P_load_p, V_load_p, color = :blue, label = \"PV Curve\", xlabel = \"Load Power [pu]\", ylabel = \"Load Bus Voltage [pu]\")\nplot!(Plots.scatter!(P_load_p[true_ixs] , V_load_p[true_ixs], markerstrokewidth= 0, label = \"GENROU SSA\"))","category":"page"},{"location":"tutorials/tutorial_continuation_pf/","page":"Small-Signal Analysis","title":"Small-Signal Analysis","text":"(Image: plot)","category":"page"},{"location":"tutorials/tutorial_continuation_pf/","page":"Small-Signal Analysis","title":"Small-Signal Analysis","text":"This results is consistent with most of the literature for dynamic generator models supplying constant power loads, on which by increasing the active power of the load, produce critical eigenvalues which cross the jomega axis at some point. This is called a Hopf Bifurcation, in this case a subcritical one since the limit cycles are unstable.","category":"page"},{"location":"reference_frames/#Reference-Frames","page":"Reference Frames","title":"Reference Frames","text":"","category":"section"},{"location":"reference_frames/","page":"Reference Frames","title":"Reference Frames","text":"Each dynamic device is defined in its own dq synchronous reference frame (SRF). It is important to note that there are several conventions to do reference frame transformations.","category":"page"},{"location":"reference_frames/#Synchronous-Machines","page":"Reference Frames","title":"Synchronous Machines","text":"","category":"section"},{"location":"reference_frames/","page":"Reference Frames","title":"Reference Frames","text":"The grid is modeled in its own real-imaginary (RI) reference frame. With such, this follows the standard convention that for a voltage angle theta = 0, there is no imaginary part and hence v_h = v_r + j0. Traditionally, the reference frame dq with rotor angle delta for synchronous machines connected to a bus v_hangle theta = v_r + jv_i follows the following convention for transformation of per-unit RMS phasors:","category":"page"},{"location":"reference_frames/","page":"Reference Frames","title":"Reference Frames","text":"beginalign\nv_d + jv_q = (v_r + jv_i) e^-j(delta- pi2) tag1a \nv_d = v_h sin(delta - theta) tag1b \nv_q = v_h cos(delta - theta) tag1c \nleft beginarrayc v_d v_q endarray right = left beginarraycc sin(delta) -cos(delta) cos(delta) sin(delta) endarray right left beginarrayc v_r v_i endarray right tag1d\nendalign","category":"page"},{"location":"reference_frames/","page":"Reference Frames","title":"Reference Frames","text":"Note that hence in a bus of 10angle 0, a rotor angle of delta = 0 implies that v_q = 10 and v_d = 00. This transformation is the one that can be found in most books of Power Systems, such as Kundur, Sauer Pai and in Milano too, and is the convention used in the software to model dynamic models of synchronous machines in their own reference frame.","category":"page"},{"location":"reference_frames/#Inverters","page":"Reference Frames","title":"Inverters","text":"","category":"section"},{"location":"reference_frames/","page":"Reference Frames","title":"Reference Frames","text":"The previously convention is not the standard one used for modeling inverters. Most of inverter and phase-lock loop (PLL) models follow the next convention:","category":"page"},{"location":"reference_frames/","page":"Reference Frames","title":"Reference Frames","text":"beginalign\nv_d + jv_q = (v_r + jv_i) e^-j delta tag2a \nv_d = v_h cos(delta - theta) tag2b \nv_q = -v_h sin(delta - theta) tag2c\nendalign","category":"page"},{"location":"reference_frames/","page":"Reference Frames","title":"Reference Frames","text":"That, contrary to the previous case, when delta = theta = 0 implies that v_d = 10 and v_q = 00. This yields the typical PLL conditions that steer v_q to 0 when delta locks in theta, or when both SRF lock between each other.","category":"page"},{"location":"reference_frames/#Transformation-used","page":"Reference Frames","title":"Transformation used","text":"","category":"section"},{"location":"reference_frames/","page":"Reference Frames","title":"Reference Frames","text":"Given the predominancy of both convention in current work, the software uses both conventions depending on the device modeled. For synchronous machines we used the standard convention (1a)-(1d), while for inverter models we use the predominant convention used nowadays in such models, i.e. (2a)-(2c).","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/#Inverter-Modeling-simulation","page":"Inverter Modeling","title":"Inverter Modeling simulation","text":"","category":"section"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"Originally Contributed by: José Daniel Lara","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/#Introduction","page":"Inverter Modeling","title":"Introduction","text":"","category":"section"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"This tutorial will introduce the modeling of an inverter with Virtual Inertia in a multi-machine model of the system. We will load the data directly from PSS/e dynamic files.","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"The tutorial uses a modified 14-bus system on which all the synchronous machines have been substituted by generators with ESAC1A AVR's and no Turbine Governors.","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"In the first portion of the tutorial we will simulate the system with the original data and cause a line trip between Buses 2 and 4. In the second part of the simulation, we will switch generator 6 with a battery using an inverter and perform the same fault.","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/#Load-the-packages","page":"Inverter Modeling","title":"Load the packages","text":"","category":"section"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"using PowerSimulationsDynamics\nusing PowerSystemCaseBuilder\nusing PowerSystems\nconst PSY = PowerSystems\nusing PowerFlows\nusing Logging\nusing Sundials\nusing Plots","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"note: Note\nPowerSystemCaseBuilder.jl is a helper library that makes it easier to reproduce examples in the documentation and tutorials. Normally you would pass your local files to create the system data instead of calling the function build_system. For more details visit PowerSystemCaseBuilder Documentation","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"Create the system using PowerSystemCaseBuilder.jl:","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"sys = build_system(PSIDSystems, \"14 Bus Base Case\")","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"PowerSystemCaseBuilder.jl is a helper library that makes it easier to reproduce examples in the documentation and tutorials. Normally you would pass your local files to create the system data.","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"Define Simulation Problem with a 20 second simulation period and the branch trip at t = 1.0:","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"sim = Simulation(\n ResidualModel, #Type of model used\n sys, #system\n mktempdir(), #path for the simulation output\n (0.0, 20.0), #time span\n BranchTrip(1.0, Line, \"BUS 02-BUS 04-i_1\");\n console_level = Logging.Info,\n)","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"Now that the system is initialized, we can verify the system states for potential issues.","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"show_states_initial_value(sim)","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"We execute the simulation with an additional tolerance for the solver set at 1e-8:","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"execute!(sim, IDA(); abstol = 1e-8)","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"Using PowerSimulationsDynamics tools for exploring the results, we can plot all the voltage results for the buses:","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"result = read_results(sim)\np = plot();\nfor b in get_components(ACBus, sys)\n voltage_series = get_voltage_magnitude_series(result, get_number(b))\n plot!(\n p,\n voltage_series;\n xlabel = \"Time\",\n ylabel = \"Voltage Magnitude [pu]\",\n label = \"Bus - $(get_name(b))\",\n );\nend","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"(Image: plot)","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"We can also explore the frequency of the different generators","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"p2 = plot();\nfor g in get_components(ThermalStandard, sys)\n state_series = get_state_series(result, (get_name(g), :ω))\n plot!(\n p2,\n state_series;\n xlabel = \"Time\",\n ylabel = \"Speed [pu]\",\n label = \"$(get_name(g)) - ω\",\n );\nend","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"(Image: plot)","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"It is also possible to explore the small signal stability of this system we created.","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"res = small_signal_analysis(sim)","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/#The-eigenvalues-can-be-explored","page":"Inverter Modeling","title":"The eigenvalues can be explored","text":"","category":"section"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"res.eigenvalues","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/#Modifying-the-system-and-adding-storage","page":"Inverter Modeling","title":"Modifying the system and adding storage","text":"","category":"section"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"Reload the system for this example:","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"sys = build_system(PSIDSystems, \"14 Bus Base Case\")\n\n# We want to remove the generator 6 and the dynamic component attached to it.\nthermal_gen = get_component(ThermalStandard, sys, \"generator-6-1\")\nremove_component!(sys, get_dynamic_injector(thermal_gen))\nremove_component!(sys, thermal_gen)\n\n# We can now define our storage device and add it to the system\nstorage = GenericBattery(\n name = \"Battery\",\n bus = get_component(Bus, sys, \"BUS 06\"),\n available = true,\n prime_mover = PrimeMovers.BA,\n active_power = 0.6,\n reactive_power = 0.16,\n rating = 1.1,\n base_power = 25.0,\n initial_energy = 50.0,\n state_of_charge_limits = (min = 5.0, max = 100.0),\n input_active_power_limits = (min = 0.0, max = 1.0),\n output_active_power_limits = (min = 0.0, max = 1.0),\n reactive_power_limits = (min = -1.0, max = 1.0),\n efficiency = (in = 0.80, out = 0.90),\n)\n\nadd_component!(sys, storage)","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"A good sanity check it running a power flow on the system to make sure all the components are properly scaled and that the system is properly balanced. We can use PowerSystems to perform this check. We can get the results back and perform a sanity check.","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"res = solve_powerflow(ACPowerFlow(), sys)\nres[\"bus_results\"]","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"After verifying that the system works, we can define our inverter dynamics and add it to the battery that has already been stored in the system.","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"inverter = DynamicInverter(\n name = get_name(storage),\n ω_ref = 1.0, # ω_ref,\n converter = AverageConverter(rated_voltage = 138.0, rated_current = 100.0),\n outer_control = OuterControl(\n VirtualInertia(Ta = 2.0, kd = 400.0, kω = 20.0),\n ReactivePowerDroop(kq = 0.2, ωf = 1000.0),\n ),\n inner_control = VoltageModeControl(\n kpv = 0.59, #Voltage controller proportional gain\n kiv = 736.0, #Voltage controller integral gain\n kffv = 0.0, #Binary variable enabling the voltage feed-forward in output of current controllers\n rv = 0.0, #Virtual resistance in pu\n lv = 0.2, #Virtual inductance in pu\n kpc = 1.27, #Current controller proportional gain\n kic = 14.3, #Current controller integral gain\n kffi = 0.0, #Binary variable enabling the current feed-forward in output of current controllers\n ωad = 50.0, #Active damping low pass filter cut-off frequency\n kad = 0.2,\n ),\n dc_source = FixedDCSource(voltage = 600.0),\n freq_estimator = KauraPLL(\n ω_lp = 500.0, #Cut-off frequency for LowPass filter of PLL filter.\n kp_pll = 0.084, #PLL proportional gain\n ki_pll = 4.69, #PLL integral gain\n ),\n filter = LCLFilter(lf = 0.08, rf = 0.003, cf = 0.074, lg = 0.2, rg = 0.01),\n)\nadd_component!(sys, inverter, storage)","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"These are the current system components:","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"sys","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"Define Simulation problem using the same parameters:","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"sim = Simulation(\n ResidualModel, #Type of model used\n sys, #system\n mktempdir(), #path for the simulation output\n (0.0, 20.0), #time span\n BranchTrip(1.0, Line, \"BUS 02-BUS 04-i_1\");\n console_level = Logging.Info,\n)","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"We can verify the small signal stability of the system before running the simulation:","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"res = small_signal_analysis(sim)","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"Exploring the eigenvalues:","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"res.eigenvalues","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"We execute the simulation","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"execute!(sim, IDA(); abstol = 1e-8)","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"Using PowerSimulationsDynamics tools for exploring the results, we can plot all the voltage results for the buses","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"result = read_results(sim)\np = plot();\nfor b in get_components(ACBus, sys)\n voltage_series = get_voltage_magnitude_series(result, get_number(b))\n plot!(\n p,\n voltage_series;\n xlabel = \"Time\",\n ylabel = \"Voltage Magnitude [pu]\",\n label = \"Bus - $(get_name(b))\",\n );\nend","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"(Image: plot)","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"We can also explore the frequency of the different static generators and storage","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"p2 = plot();\nfor g in get_components(ThermalStandard, sys)\n state_series = get_state_series(result, (get_name(g), :ω))\n plot!(\n p2,\n state_series;\n xlabel = \"Time\",\n ylabel = \"Speed [pu]\",\n label = \"$(get_name(g)) - ω\",\n );\nend\nstate_series = get_state_series(result, (\"Battery\", :ω_oc))\nplot!(p2, state_series; xlabel = \"Time\", ylabel = \"Speed [pu]\", label = \"Battery - ω\");","category":"page"},{"location":"tutorials/tutorial_inverter_modeling/","page":"Inverter Modeling","title":"Inverter Modeling","text":"(Image: plot)","category":"page"},{"location":"time_delays/#Delays","page":"Time Delays","title":"Delays","text":"","category":"section"},{"location":"time_delays/","page":"Time Delays","title":"Time Delays","text":"PowerSimulationsDynamics supports models with constant delays in a mass matrix formulation:","category":"page"},{"location":"time_delays/","page":"Time Delays","title":"Time Delays","text":"beginalign\nMfracdx(t)dt = f(x(t) x(t-tau_1) x(t-tau_N)) \nendalign","category":"page"},{"location":"time_delays/","page":"Time Delays","title":"Time Delays","text":"For more information on solving such models, refer to the documentation for DelayDiffEq.jl package.","category":"page"},{"location":"time_delays/","page":"Time Delays","title":"Time Delays","text":"The following models include time delays:","category":"page"},{"location":"time_delays/","page":"Time Delays","title":"Time Delays","text":"DEGOV","category":"page"},{"location":"time_delays/","page":"Time Delays","title":"Time Delays","text":"There is currently limited support for including models with time delays. The following limitations apply:","category":"page"},{"location":"time_delays/","page":"Time Delays","title":"Time Delays","text":"Only constant delays are supported (state dependent delays are not).\nSystem models with delays must use MassMatrixModel formulation (ResidualModel is not currently compatible).\nSystem models with delays are not compatible with small signal analysis tools.\nThe system formulation with delays is not compatible with automatic differentiation for calculating the gradient with respect to time. The setting autodiff=false should be set when passing the solver (e.g. MethodofSteps(Rodas5(autodiff=false))).","category":"page"},{"location":"component_models/dc_source/#DC-Source","page":"DC Sources","title":"DC Source","text":"","category":"section"},{"location":"component_models/dc_source/","page":"DC Sources","title":"DC Sources","text":"This component can be used to model the dynamics of the DC side of the converter.","category":"page"},{"location":"component_models/dc_source/#Fixed-DC-Source-[FixedDCSource]","page":"DC Sources","title":"Fixed DC Source [FixedDCSource]","text":"","category":"section"},{"location":"component_models/dc_source/","page":"DC Sources","title":"DC Sources","text":"This is a model that set the DC voltage to a fixed value v_textdc = v_textdc^textfix.","category":"page"},{"location":"tutorials/tutorial_omib/#One-Machine-against-Infinite-Bus-(OMIB)-Simulation","page":"OMIB","title":"One Machine against Infinite Bus (OMIB) Simulation","text":"","category":"section"},{"location":"tutorials/tutorial_omib/","page":"OMIB","title":"OMIB","text":"Originally Contributed by: Rodrigo Henriquez-Auba and José Daniel Lara","category":"page"},{"location":"tutorials/tutorial_omib/#Introduction","page":"OMIB","title":"Introduction","text":"","category":"section"},{"location":"tutorials/tutorial_omib/","page":"OMIB","title":"OMIB","text":"This tutorial will introduce you to the functionality of PowerSimulationsDynamics for running power system dynamic simulations.","category":"page"},{"location":"tutorials/tutorial_omib/","page":"OMIB","title":"OMIB","text":"This tutorial presents a simulation of a two-bus system with an infinite bus (represented as a voltage source behind an impedance) at bus 1, and a classic machine on bus 2. The perturbation will be the trip of one of the two circuits (doubling its resistance and impedance) of the line that connects both buses.","category":"page"},{"location":"tutorials/tutorial_omib/#Dependencies","page":"OMIB","title":"Dependencies","text":"","category":"section"},{"location":"tutorials/tutorial_omib/","page":"OMIB","title":"OMIB","text":"using PowerSimulationsDynamics\nPSID = PowerSimulationsDynamics\nusing PowerSystemCaseBuilder\nusing PowerSystems\nconst PSY = PowerSystems\nusing Sundials\nusing Plots\ngr()","category":"page"},{"location":"tutorials/tutorial_omib/","page":"OMIB","title":"OMIB","text":"note: Note\nPowerSystemCaseBuilder.jl is a helper library that makes it easier to reproduce examples in the documentation and tutorials. Normally you would pass your local files to create the system data instead of calling the function build_system. For more details visit PowerSystemCaseBuilder Documentation","category":"page"},{"location":"tutorials/tutorial_omib/","page":"OMIB","title":"OMIB","text":"PowerSystems (abbreviated with PSY) is used to properly define the data structure and establish an equilibrium point initial condition with a power flow routine, while Sundials is used to solve the problem defined in PowerSimulationsDynamics.","category":"page"},{"location":"tutorials/tutorial_omib/#Load-the-system","page":"OMIB","title":"Load the system","text":"","category":"section"},{"location":"tutorials/tutorial_omib/","page":"OMIB","title":"OMIB","text":"We load the system using PowerSystemCaseBuilder.jl:","category":"page"},{"location":"tutorials/tutorial_omib/","page":"OMIB","title":"OMIB","text":"omib_sys = build_system(PSIDSystems, \"OMIB System\")","category":"page"},{"location":"tutorials/tutorial_omib/#Build-the-simulation-and-initialize-the-problem","page":"OMIB","title":"Build the simulation and initialize the problem","text":"","category":"section"},{"location":"tutorials/tutorial_omib/","page":"OMIB","title":"OMIB","text":"The next step is to create the simulation structure. This will create the indexing of our system that will be used to formulate the differential-algebraic system of equations. To do so, it is required to specify the perturbation that will occur in the system. PowerSimulationsDynamics supports multiple types of perturbations. See Perturbations","category":"page"},{"location":"tutorials/tutorial_omib/","page":"OMIB","title":"OMIB","text":"Here, we will use a Branch Trip perturbation, that is modeled by modifying the specifying which line we want to trip. In this case we disconnect one of the lines that connects BUS 1 and BUS 2, named \"BUS 1-BUS 2-i_1\".","category":"page"},{"location":"tutorials/tutorial_omib/","page":"OMIB","title":"OMIB","text":"With this, we are ready to create our simulation structure:","category":"page"},{"location":"tutorials/tutorial_omib/","page":"OMIB","title":"OMIB","text":"time_span = (0.0, 30.0)\nperturbation_trip = BranchTrip(1.0, Line, \"BUS 1-BUS 2-i_1\")\nsim = PSID.Simulation(\n ResidualModel, # Type of formulation\n omib_sys, # System\n mktempdir(), # Output directory\n time_span,\n perturbation_trip)","category":"page"},{"location":"tutorials/tutorial_omib/","page":"OMIB","title":"OMIB","text":"This will automatically initialize the system by running a power flow and update V_ref, P_ref and hence eq_p (the internal voltage) to match the solution of the power flow. It will also initialize the states in the equilibrium, which can be printed with:","category":"page"},{"location":"tutorials/tutorial_omib/","page":"OMIB","title":"OMIB","text":"show_states_initial_value(sim)","category":"page"},{"location":"tutorials/tutorial_omib/#Run-the-Simulation","page":"OMIB","title":"Run the Simulation","text":"","category":"section"},{"location":"tutorials/tutorial_omib/","page":"OMIB","title":"OMIB","text":"Finally, to run the simulation we simply use:","category":"page"},{"location":"tutorials/tutorial_omib/","page":"OMIB","title":"OMIB","text":"execute!(\n sim, #simulation structure\n IDA(), #Sundials DAE Solver\n dtmax = 0.02, #Arguments: Maximum timestep allowed\n);","category":"page"},{"location":"tutorials/tutorial_omib/","page":"OMIB","title":"OMIB","text":"In some cases, the dynamic time step used for the simulation may fail. In such case, the keyword argument dtmax can be used to limit the maximum time step allowed for the simulation.","category":"page"},{"location":"tutorials/tutorial_omib/#Exploring-the-solution","page":"OMIB","title":"Exploring the solution","text":"","category":"section"},{"location":"tutorials/tutorial_omib/","page":"OMIB","title":"OMIB","text":"First, we need to load the simulation results into memory:","category":"page"},{"location":"tutorials/tutorial_omib/","page":"OMIB","title":"OMIB","text":"results = read_results(sim)","category":"page"},{"location":"tutorials/tutorial_omib/","page":"OMIB","title":"OMIB","text":"PowerSimulationsDynamics has two functions to obtain different states of the solution:","category":"page"},{"location":"tutorials/tutorial_omib/","page":"OMIB","title":"OMIB","text":"get_state_series(results, (\"generator-102-1\", :δ)): can be used to obtain the solution as a tuple of time and the required state. In this case, we are obtaining the rotor angle :δ of the generator named \"generator-102-1\"`.","category":"page"},{"location":"tutorials/tutorial_omib/","page":"OMIB","title":"OMIB","text":"angle = get_state_series(results, (\"generator-102-1\", :δ));\nplot(angle, xlabel = \"time\", ylabel = \"rotor angle [rad]\", label = \"rotor angle\")","category":"page"},{"location":"tutorials/tutorial_omib/","page":"OMIB","title":"OMIB","text":"(Image: plot)","category":"page"},{"location":"tutorials/tutorial_omib/","page":"OMIB","title":"OMIB","text":"get_voltage_magnitude_series(results, 102): can be used to obtain the voltage magnitude as a tuple of time and voltage. In this case, we are obtaining the voltage magnitude at bus 102 (where the generator is located).","category":"page"},{"location":"tutorials/tutorial_omib/","page":"OMIB","title":"OMIB","text":"volt = get_voltage_magnitude_series(results, 102);\nplot(volt, xlabel = \"time\", ylabel = \"Voltage [pu]\", label = \"V_2\")","category":"page"},{"location":"tutorials/tutorial_omib/","page":"OMIB","title":"OMIB","text":"(Image: plot)","category":"page"},{"location":"tutorials/tutorial_omib/#Optional:-Small-Signal-Analysis","page":"OMIB","title":"Optional: Small Signal Analysis","text":"","category":"section"},{"location":"tutorials/tutorial_omib/","page":"OMIB","title":"OMIB","text":"PowerSimulationsDynamics uses automatic differentiation to compute the reduced Jacobian of the system for the differential states. This can be used to analyze the local stability of the linearized system. We need to re-initialize our simulation:","category":"page"},{"location":"tutorials/tutorial_omib/","page":"OMIB","title":"OMIB","text":"sim2 = Simulation(ResidualModel, omib_sys, mktempdir(), time_span)\nsmall_sig = small_signal_analysis(sim2)","category":"page"},{"location":"tutorials/tutorial_omib/","page":"OMIB","title":"OMIB","text":"The small_sig result can report the reduced jacobian for delta and omega,","category":"page"},{"location":"tutorials/tutorial_omib/","page":"OMIB","title":"OMIB","text":"small_sig.reduced_jacobian","category":"page"},{"location":"tutorials/tutorial_omib/","page":"OMIB","title":"OMIB","text":"and can also be used to report the eigenvalues of the reduced linearized system:","category":"page"},{"location":"tutorials/tutorial_omib/","page":"OMIB","title":"OMIB","text":"small_sig.eigenvalues","category":"page"},{"location":"api/internal/#Internal","page":"Internal API Reference","title":"Internal","text":"","category":"section"},{"location":"api/internal/","page":"Internal API Reference","title":"Internal API Reference","text":"CurrentModule = PowerSimulationsDynamics\nDocTestSetup = quote\n using PowerSimulationsDynamics\nend","category":"page"},{"location":"api/internal/","page":"Internal API Reference","title":"Internal API Reference","text":"Modules = [PowerSimulationsDynamics]\nPublic = false\nPrivate = true","category":"page"},{"location":"api/internal/#PowerSimulationsDynamics.BUILD_STATUS","page":"Internal API Reference","title":"PowerSimulationsDynamics.BUILD_STATUS","text":"Defines the status of the simulation object\n\n\n\n\n\n","category":"type"},{"location":"api/internal/#PowerSimulationsDynamics.BranchWrapper","page":"Internal API Reference","title":"PowerSimulationsDynamics.BranchWrapper","text":"Wraps DynamicBranch devices from PowerSystems to handle changes in controls and connection status, and allocate the required indexes of the state space.\n\n\n\n\n\n","category":"type"},{"location":"api/internal/#PowerSimulationsDynamics.DynamicWrapper","page":"Internal API Reference","title":"PowerSimulationsDynamics.DynamicWrapper","text":"Wraps DynamicInjection devices from PowerSystems to handle changes in controls and connection status, and allocate the required indexes of the state space.\n\n\n\n\n\n","category":"type"},{"location":"api/internal/#PowerSimulationsDynamics.SimulationInputs-Tuple{Type{MassMatrixModel}, System, Union{ConstantFrequency, ReferenceBus}}","page":"Internal API Reference","title":"PowerSimulationsDynamics.SimulationInputs","text":"SimulationInputs build function for MassMatrixModels\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.SimulationInputs-Tuple{Type{ResidualModel}, System, Union{ConstantFrequency, ReferenceBus}}","page":"Internal API Reference","title":"PowerSimulationsDynamics.SimulationInputs","text":"SimulationInputs build function for ResidualModels\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.generator_inner_vars","page":"Internal API Reference","title":"PowerSimulationsDynamics.generator_inner_vars","text":"Generator Inner Vars:\n\nτe_var :: Electric torque\nτm_var :: Mechanical torque\nVf_var :: Field voltage\nV_pss_var :: Additional PSS voltage\nVR_gen_var :: Real part of the terminal voltage\nVI_gen_var :: Imaginary part of the terminal voltage\nψd_var :: Stator Flux (if defined) in the d-axis\nψq_var :: Stator Flux (if defined) in the q-axis\n\n\n\n\n\n","category":"type"},{"location":"api/internal/#PowerSimulationsDynamics.inverter_inner_vars","page":"Internal API Reference","title":"PowerSimulationsDynamics.inverter_inner_vars","text":"Inverter Inner Vars:\n\nmd_var :: Modulation signal on the d-component\nmq_var :: Modulation signal on the q-component\nVdc_var :: DC voltage supplied by the DC source\nVr_filter_var :: Voltage seen in the capacitor of the filter in the R-component\nVi_filter_var :: Voltage seen in the capacitor of the filter in the I-component\nθ_freq_estimator_var :: Angle estimated by the frequency estimator.\nω_freq_estimator_var :: Frequency estimated by the frequency estimator.\nV_oc_var :: Control voltage reference in the d-axis supplied from the outer loop control to the inner loop (for Voltage Mode Control)\nId_oc_var :: Control current reference in the d-axis supplied from the outer loop control to the inner loop (for Current Mode Control)\nIq_oc_var :: Control current reference in the q-axis supplied from the outer loop control to the inner loop (for Current Mode Control)\nId_ic_var :: Control current reference in the d-axis supplied from the inner loop control to the converter (for Generic Models)\nIq_ic_var :: Control current reference in the q-axis supplied from the inner loop control to the converter (for Generic Models)\nIr_cnv_var :: Control current reference in the R-axis supplied from the converter to the filter (for Generic Models)\nIi_cnv_var :: Control current reference in the I-axis supplied from the converter to the filter (for Generic Models)\nω_oc_var :: Control frequency supplied from the outer loop control the inner loop\nθ_oc_var :: Variation of the angle (PLL or VSM) of the inverter\nVr_inv_var :: Real terminal voltage on the inverter\nVi_inv_var :: Imaginary terminal voltage on the inverter\nVr_cnv_var :: Voltage supplied from the converter in the R-component\nVi_cnv_var :: Voltage supplied from the converter in the I-component\nP_ES_var :: Power supplied from the Energy Source side\n\n\n\n\n\n","category":"type"},{"location":"api/internal/#PowerSimulationsDynamics._field_current-Tuple{SalientPoleExponential, String, Vector{Float64}, Vector{Float64}, SimulationResults, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics._field_current","text":"Function to obtain the field current time series of a Dynamic Generator with machine type GENSAE.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics._field_current-Tuple{SalientPoleQuadratic, String, Vector{Float64}, Vector{Float64}, SimulationResults, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics._field_current","text":"Function to obtain the field current time series of a Dynamic Generator with machine type GENSAL.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics._field_current-Union{Tuple{M}, Tuple{M, String, Vector{Float64}, Vector{Float64}, SimulationResults, Union{Nothing, Float64, Vector{Float64}}}} where M<:Machine","page":"Internal API Reference","title":"PowerSimulationsDynamics._field_current","text":"Function to obtain the field current time series of a Dynamic Generator. It is dispatched via the machine type. By default, machine does not have support for field current\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics._field_current-Union{Tuple{M}, Tuple{M, String, Vector{Float64}, Vector{Float64}, SimulationResults, Union{Nothing, Float64, Vector{Float64}}}} where M<:Union{RoundRotorExponential, RoundRotorQuadratic}","page":"Internal API Reference","title":"PowerSimulationsDynamics._field_current","text":"Function to obtain the field current time series of a Dynamic Generator with machine type GENROU/GENROE.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics._field_voltage-Tuple{AVRFixed, String, SimulationResults, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics._field_voltage","text":"Function to obtain the field voltage time series of a Dynamic Generator with avr AVRFixed.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics._field_voltage-Tuple{ESST1A, String, SimulationResults, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics._field_voltage","text":"Function to obtain the field voltage time series of a Dynamic Generator with avr ESST1A.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics._field_voltage-Tuple{SCRX, String, SimulationResults, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics._field_voltage","text":"Function to obtain the field voltage time series of a Dynamic Generator with avr SCRX.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics._field_voltage-Tuple{Union{ESAC1A, EXAC1}, String, SimulationResults, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics._field_voltage","text":"Function to obtain the field voltage time series of a Dynamic Generator with avr ESAC1A and EXAC1.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics._field_voltage-Union{Tuple{A}, Tuple{A, String, SimulationResults, Union{Nothing, Float64, Vector{Float64}}}} where A<:AVR","page":"Internal API Reference","title":"PowerSimulationsDynamics._field_voltage","text":"Function to obtain the field voltage time series of a Dynamic Generator with avrs that have the field voltage as a state. By default it is assumed that the models have that state.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics._frequency-Union{Tuple{G}, Tuple{F}, Tuple{OuterControl{ActivePowerDroop, ReactivePowerDroop}, F, String, SimulationResults, G, Union{Nothing, Float64, Vector{Float64}}}} where {F<:FrequencyEstimator, G<:DynamicInverter}","page":"Internal API Reference","title":"PowerSimulationsDynamics._frequency","text":"Function to obtain the frequency time series of a droop grid forming inverter out of the DAE Solution. It is dispatched via the OuterControl type.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics._frequency-Union{Tuple{G}, Tuple{F}, Tuple{OuterControl{ActiveVirtualOscillator, ReactiveVirtualOscillator}, F, String, SimulationResults, G, Union{Nothing, Float64, Vector{Float64}}}} where {F<:FrequencyEstimator, G<:DynamicInverter}","page":"Internal API Reference","title":"PowerSimulationsDynamics._frequency","text":"Function to obtain the frequency time series of a VOC grid forming inverter out of the DAE Solution. It is dispatched via the OuterControl type.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics._frequency-Union{Tuple{G}, Tuple{F}, Tuple{OuterControl{VirtualInertia, ReactivePowerDroop}, F, String, SimulationResults, G, Union{Nothing, Float64, Vector{Float64}}}} where {F<:FrequencyEstimator, G<:DynamicInverter}","page":"Internal API Reference","title":"PowerSimulationsDynamics._frequency","text":"Function to obtain the frequency time series of a virtual inertia grid forming inverter out of the DAE Solution. It is dispatched via the OuterControl type.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics._frequency-Union{Tuple{G}, Tuple{OuterControl{ActivePowerPI, ReactivePowerPI}, KauraPLL, String, SimulationResults, G, Union{Nothing, Float64, Vector{Float64}}}} where G<:DynamicInverter","page":"Internal API Reference","title":"PowerSimulationsDynamics._frequency","text":"Function to obtain the frequency time series of a grid-following inverter with KauraPLL out of the DAE Solution. It is dispatched via the OuterControl and FrequencyEstimator type.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics._frequency-Union{Tuple{G}, Tuple{OuterControl{ActivePowerPI, ReactivePowerPI}, ReducedOrderPLL, String, SimulationResults, G, Union{Nothing, Float64, Vector{Float64}}}} where G<:DynamicInverter","page":"Internal API Reference","title":"PowerSimulationsDynamics._frequency","text":"Function to obtain the frequency time series of a grid-following inverter with ReducedOrderPLL out of the DAE Solution. It is dispatched via the OuterControl and FrequencyEstimator type.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics._machine_current-Tuple{BaseMachine, String, Vector{Float64}, Vector{Float64}, Float64, SimulationResults, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics._machine_current","text":"Function to obtain the output current time series of a Classic Machine model out of the DAE Solution. It is dispatched via the machine type.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics._machine_current-Tuple{OneDOneQMachine, String, Vector{Float64}, Vector{Float64}, Float64, SimulationResults, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics._machine_current","text":"Function to obtain the output current time series of a One-D-One-Q model out of the DAE Solution. It is dispatched via the machine type.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics._machine_current-Tuple{SauerPaiMachine, String, Vector{Float64}, Vector{Float64}, Float64, SimulationResults, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics._machine_current","text":"Function to obtain the output current time series of a SauerPaiMachine model out of the DAE Solution. It is dispatched via the machine type.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics._machine_current-Tuple{Union{AndersonFouadMachine, MarconatoMachine}, String, Vector{Float64}, Vector{Float64}, Float64, SimulationResults, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics._machine_current","text":"Function to obtain the output current time series of a Marconato or AndersonFouad model out of the DAE Solution. It is dispatched via the machine type.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics._machine_current-Tuple{Union{RoundRotorExponential, RoundRotorQuadratic}, String, Vector{Float64}, Vector{Float64}, Float64, SimulationResults, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics._machine_current","text":"Function to obtain the output current time series of a GENROU/GENROE model out of the DAE Solution. It is dispatched via the machine type.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics._machine_current-Tuple{Union{SalientPoleExponential, SalientPoleQuadratic}, String, Vector{Float64}, Vector{Float64}, Float64, SimulationResults, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics._machine_current","text":"Function to obtain the output current time series of a GENSAL/GENSAE model out of the DAE Solution. It is dispatched via the machine type.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics._machine_current-Tuple{Union{SimpleAFMachine, SimpleMarconatoMachine}, String, Vector{Float64}, Vector{Float64}, Float64, SimulationResults, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics._machine_current","text":"Function to obtain the output current time series of a SimpleMarconato or SimpleAndersonFouad model out of the DAE Solution. It is dispatched via the machine type.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics._make_reduced_jacobian_index-Tuple{Any, Any}","page":"Internal API Reference","title":"PowerSimulationsDynamics._make_reduced_jacobian_index","text":"Finds the location of the differential states in the reduced Jacobian\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics._mechanical_torque-Tuple{DEGOV, String, SimulationResults, Union{Nothing, Float64}}","page":"Internal API Reference","title":"PowerSimulationsDynamics._mechanical_torque","text":"Function to obtain the mechanical torque time series of a Dynamic Generator with DEGOV Turbine Governor.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics._mechanical_torque-Tuple{GasTG, String, SimulationResults, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics._mechanical_torque","text":"Function to obtain the mechanical torque time series of a Dynamic Generator with GasTG (GAST) Turbine Governor.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics._mechanical_torque-Tuple{HydroTurbineGov, String, SimulationResults, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics._mechanical_torque","text":"Function to obtain the mechanical torque time series of a Dynamic Generator with HydroTurbineGov (HYGOV) Turbine Governor.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics._mechanical_torque-Tuple{SteamTurbineGov1, String, SimulationResults, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics._mechanical_torque","text":"Function to obtain the mechanical torque time series of a Dynamic Generator with SteamTurbineGov1 (TGOV1) Turbine Governor.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics._mechanical_torque-Tuple{TGFixed, String, SimulationResults, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics._mechanical_torque","text":"Function to obtain the mechanical torque time series of a Dynamic Generator with TGFixed Turbine Governor.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics._mechanical_torque-Tuple{TGTypeI, String, SimulationResults, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics._mechanical_torque","text":"Function to obtain the mechanical torque time series of a Dynamic Generator with TGTypeI Turbine Governor.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics._mechanical_torque-Tuple{TGTypeII, String, SimulationResults, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics._mechanical_torque","text":"Function to obtain the mechanical torque time series of a Dynamic Generator with TGTypeII Turbine Governor.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics._output_current-Union{Tuple{G}, Tuple{C}, Tuple{LCLFilter, C, String, Vector{Float64}, Vector{Float64}, Float64, SimulationResults, G, Union{Nothing, Float64, Vector{Float64}}}} where {C<:Converter, G<:DynamicInverter}","page":"Internal API Reference","title":"PowerSimulationsDynamics._output_current","text":"Function to obtain the output current time series of a LCL Filter model out of the DAE Solution. It is dispatched via the Filter type.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics._output_current-Union{Tuple{G}, Tuple{RLFilter, RenewableEnergyConverterTypeA, String, Vector{Float64}, Vector{Float64}, Float64, SimulationResults, G, Union{Nothing, Float64, Vector{Float64}}}} where G<:DynamicInverter","page":"Internal API Reference","title":"PowerSimulationsDynamics._output_current","text":"Function to obtain the output current time series of a REGCA converter model out of the DAE Solution. It is dispatched via the Converter type.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics._post_proc_state_series-Tuple{Any, Int64, Nothing}","page":"Internal API Reference","title":"PowerSimulationsDynamics._post_proc_state_series","text":"Internal function to obtain as a Vector of Float64 of a specific state. It receives the solution and the global index for a state.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics._pss_output-Tuple{IEEEST, String, SimulationResults, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics._pss_output","text":"Function to obtain the pss output time series of a Dynamic Generator with pss IEEEST.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics._pss_output-Tuple{PSSFixed, String, SimulationResults, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics._pss_output","text":"Function to obtain the pss output time series of a Dynamic Generator with pss PSSFixed.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.compute_field_current-Union{Tuple{G}, Tuple{SimulationResults, G, Vector{Float64}, Vector{Float64}, Union{Nothing, Float64, Vector{Float64}}}} where G<:DynamicGenerator","page":"Internal API Reference","title":"PowerSimulationsDynamics.compute_field_current","text":"Function to obtain the field current time series of a Dynamic Generator model out of the DAE Solution. It receives the simulation inputs, the dynamic device and bus voltage. It is dispatched for device type to compute the specific current.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.compute_field_current-Union{Tuple{G}, Tuple{SimulationResults, G, Vector{Float64}, Vector{Float64}, Union{Nothing, Float64, Vector{Float64}}}} where G<:DynamicInverter","page":"Internal API Reference","title":"PowerSimulationsDynamics.compute_field_current","text":"Function to obtain the field current time series of a Dynamic Inverter model out of the DAE Solution. It receives the simulation inputs, the dynamic device and bus voltage. It must return nothing since field current does not exists in inverters.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.compute_field_voltage-Union{Tuple{G}, Tuple{SimulationResults, G, Union{Nothing, Float64, Vector{Float64}}}} where G<:DynamicGenerator","page":"Internal API Reference","title":"PowerSimulationsDynamics.compute_field_voltage","text":"Function to obtain the field voltage time series of a Dynamic Generator model out of the DAE Solution. It receives the simulation inputs, the dynamic device and bus voltage. It is dispatched for device type to compute the specific voltage.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.compute_field_voltage-Union{Tuple{G}, Tuple{SimulationResults, G, Union{Nothing, Float64, Vector{Float64}}}} where G<:DynamicInverter","page":"Internal API Reference","title":"PowerSimulationsDynamics.compute_field_voltage","text":"Function to obtain the field current time series of a Dynamic Inverter model out of the DAE Solution. It receives the simulation inputs, the dynamic device and bus voltage. It must return nothing since field voltage does not exists in inverters.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.compute_frequency-Union{Tuple{G}, Tuple{SimulationResults, G, Union{Nothing, Float64, Vector{Float64}}}} where G<:DynamicGenerator","page":"Internal API Reference","title":"PowerSimulationsDynamics.compute_frequency","text":"Function to obtain the output frequency time series of a DynamicGenerator\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.compute_mechanical_torque-Union{Tuple{G}, Tuple{SimulationResults, G, Union{Nothing, Float64, Vector{Float64}}}} where G<:DynamicGenerator","page":"Internal API Reference","title":"PowerSimulationsDynamics.compute_mechanical_torque","text":"Function to obtain the mechanical torque time series of a Dynamic Generator model out of the DAE Solution. It receives the simulation inputs, the dynamic device and bus voltage. It is dispatched for device type to compute the specific torque.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.compute_mechanical_torque-Union{Tuple{G}, Tuple{SimulationResults, G, Union{Nothing, Float64, Vector{Float64}}}} where G<:DynamicInverter","page":"Internal API Reference","title":"PowerSimulationsDynamics.compute_mechanical_torque","text":"Function to obtain the mechanical torque time series of a Dynamic Inverter model out of the DAE Solution. It receives the simulation inputs, the dynamic device and bus voltage. It must return nothing since mechanical torque is not used in inverters.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.compute_output_current-Tuple{SimulationResults, AggregateDistributedGenerationA, Vector{Float64}, Vector{Float64}, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics.compute_output_current","text":"Function to obtain the output current time series of a AggregateDistributedGenerationA (DERA) model out of the DAE Solution. It receives the simulation inputs, the dynamic device and bus voltage.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.compute_output_current-Tuple{SimulationResults, PeriodicVariableSource, Vector{Float64}, Vector{Float64}, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics.compute_output_current","text":"Function to obtain the output current time series of a PeriodicVariableSource model out of the DAE Solution. It receives the simulation inputs, the dynamic device and bus voltage. It is dispatched for device type to compute the specific current. computeoutputcurrent(::SimulationResults, ::PeriodicVariableSource, ::Vector{Float64}, ::Vector{Float64}, ::Nothing)\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.compute_output_current-Tuple{SimulationResults, PowerLoad, Vector{Float64}, Vector{Float64}, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics.compute_output_current","text":"Function to obtain the output current time series of a PowerLoad model. \n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.compute_output_current-Tuple{SimulationResults, PowerSystems.ExponentialLoad, Vector{Float64}, Vector{Float64}, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics.compute_output_current","text":"Function to obtain the output current time series of a ExponentialLoad model. \n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.compute_output_current-Tuple{SimulationResults, SimplifiedSingleCageInductionMachine, Vector{Float64}, Vector{Float64}, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics.compute_output_current","text":"Function to obtain the output current time series of a 3th Order Induction Machine model out of the DAE Solution. It receives the simulation inputs, the dynamic device and bus voltage. \n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.compute_output_current-Tuple{SimulationResults, SingleCageInductionMachine, Vector{Float64}, Vector{Float64}, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics.compute_output_current","text":"Function to obtain the output current time series of a 5th Order Induction Machine model out of the DAE Solution. It receives the simulation inputs, the dynamic device and bus voltage. \n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.compute_output_current-Tuple{SimulationResults, StandardLoad, Vector{Float64}, Vector{Float64}, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics.compute_output_current","text":"Function to obtain the output current time series of a PowerLoad model. \n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.compute_output_current-Union{Tuple{G}, Tuple{SimulationResults, G, Vector{Float64}, Vector{Float64}, Union{Nothing, Float64, Vector{Float64}}}} where G<:DynamicGenerator","page":"Internal API Reference","title":"PowerSimulationsDynamics.compute_output_current","text":"Function to obtain the output current time series of a Dynamic Generator model out of the DAE Solution. It receives the simulation inputs, the dynamic device and bus voltage. It is dispatched for device type to compute the specific current.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.compute_output_current-Union{Tuple{G}, Tuple{SimulationResults, G, Vector{Float64}, Vector{Float64}, Union{Nothing, Float64, Vector{Float64}}}} where G<:DynamicInverter","page":"Internal API Reference","title":"PowerSimulationsDynamics.compute_output_current","text":"Function to obtain the output current time series of a Dynamic Inverter model out of the DAE Solution. It receives the simulation inputs, the dynamic device and bus voltage. It is dispatched for device type to compute the specific current.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.compute_output_current-Union{Tuple{I}, Tuple{SimulationResults, I, Vector{Float64}, Vector{Float64}, Union{Nothing, Float64, Vector{Float64}}}} where I<:DynamicInjection","page":"Internal API Reference","title":"PowerSimulationsDynamics.compute_output_current","text":"Default function to compute output current. Returns an error\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.compute_pss_output-Union{Tuple{G}, Tuple{SimulationResults, G, Union{Nothing, Float64, Vector{Float64}}}} where G<:DynamicGenerator","page":"Internal API Reference","title":"PowerSimulationsDynamics.compute_pss_output","text":"Function to obtain the pss output time series of a Dynamic Generator model out of the DAE Solution. It receives the simulation inputs, the dynamic device and bus voltage. It is dispatched for device type to compute the specific output.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.configure_logging-Tuple{}","page":"Internal API Reference","title":"PowerSimulationsDynamics.configure_logging","text":"configure_logging(;\n console_level = Logging.Error,\n file_level = Logging.Info,\n filename = \"power-simulations.log\",\n)\n\nCreates console and file loggers.\n\nNote: Log messages may not be written to the file until flush() or close() is called on the returned logger.\n\nArguments\n\nconsole_level = Logging.Error: level for console messages\nfile_level = Logging.Info: level for file messages\nfilename::String = power-simulations.log: log file\n\nExample\n\nlogger = configure_logging(console_level = Logging.Info)\n@info \"log message\"\nclose(logger)\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.device!-Union{Tuple{T}, Tuple{AbstractArray{T}, AbstractArray{T}, T, T, AbstractArray{T}, AbstractArray{T}, AbstractArray{T}, AbstractArray{T}, PowerSimulationsDynamics.DynamicWrapper{ActiveConstantPowerLoad}, Any, Any}} where T<:Union{Float64, ForwardDiff.Dual}","page":"Internal API Reference","title":"PowerSimulationsDynamics.device!","text":"Model of 12-state Active Constant Power Load in Julia. Based on the paper Malicious Control of an Active Load in an Islanded Mixed-Source Microgrid by C. Roberts, U. Markovic, D. Arnold and D. Callaway.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.device!-Union{Tuple{T}, Tuple{AbstractArray{T}, AbstractArray{T}, T, T, AbstractArray{T}, AbstractArray{T}, AbstractArray{T}, AbstractArray{T}, PowerSimulationsDynamics.DynamicWrapper{CSVGN1}, Any, Any}} where T<:Union{Float64, ForwardDiff.Dual}","page":"Internal API Reference","title":"PowerSimulationsDynamics.device!","text":"Model of Static Shunt Compensator: CSVGN1.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.device!-Union{Tuple{T}, Tuple{AbstractArray{T}, AbstractArray{T}, T, T, AbstractArray{T}, AbstractArray{T}, AbstractArray{T}, AbstractArray{T}, PowerSimulationsDynamics.DynamicWrapper{SimplifiedSingleCageInductionMachine}, Any, Any}} where T<:Union{Float64, ForwardDiff.Dual}","page":"Internal API Reference","title":"PowerSimulationsDynamics.device!","text":"Model of 3-state (SimplifiedSingleCageInductionMachine) induction motor in Julia. Based on the 3rd order model derived in Prabha Kundur's Book and the equations in \"Analysis of Electric Machinery and Drive Systems\" by Paul Krause, Oleg Wasynczuk and Scott Sudhoff.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.device!-Union{Tuple{T}, Tuple{AbstractArray{T}, AbstractArray{T}, T, T, AbstractArray{T}, AbstractArray{T}, AbstractArray{T}, AbstractArray{T}, PowerSimulationsDynamics.DynamicWrapper{SingleCageInductionMachine}, Any, Any}} where T<:Union{Float64, ForwardDiff.Dual}","page":"Internal API Reference","title":"PowerSimulationsDynamics.device!","text":"Model of 5-state (SingleCageInductionMachine) induction motor in Julia. Refer to \"Analysis of Electric Machinery and Drive Systems\" by Paul Krause, Oleg Wasynczuk and Scott Sudhoff for the equations\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.initialize_mach_shaft!-Union{Tuple{P}, Tuple{TG}, Tuple{A}, Tuple{S}, Tuple{Any, StaticInjection, PowerSimulationsDynamics.DynamicWrapper{DynamicGenerator{AndersonFouadMachine, S, A, TG, P}}, AbstractVector}} where {S<:Shaft, A<:AVR, TG<:TurbineGov, P<:PSS}","page":"Internal API Reference","title":"PowerSimulationsDynamics.initialize_mach_shaft!","text":"Initialitation of model of 6-state (Anderson-Fouad) synchronous machine in Julia. Refer to Power System Modelling and Scripting by F. Milano for the equations\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.initialize_mach_shaft!-Union{Tuple{P}, Tuple{TG}, Tuple{A}, Tuple{S}, Tuple{Any, StaticInjection, PowerSimulationsDynamics.DynamicWrapper{DynamicGenerator{BaseMachine, S, A, TG, P}}, AbstractVector}} where {S<:Shaft, A<:AVR, TG<:TurbineGov, P<:PSS}","page":"Internal API Reference","title":"PowerSimulationsDynamics.initialize_mach_shaft!","text":"Initialitation of model of 0-state synchronous (classic model) machine in Julia. Refer to Power System Modelling and Scripting by F. Milano for the equations\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.initialize_mach_shaft!-Union{Tuple{P}, Tuple{TG}, Tuple{A}, Tuple{S}, Tuple{Any, StaticInjection, PowerSimulationsDynamics.DynamicWrapper{DynamicGenerator{MarconatoMachine, S, A, TG, P}}, AbstractVector}} where {S<:Shaft, A<:AVR, TG<:TurbineGov, P<:PSS}","page":"Internal API Reference","title":"PowerSimulationsDynamics.initialize_mach_shaft!","text":"Initialitation of model of 6-state (Marconato) synchronous machine in Julia. Refer to Power System Modelling and Scripting by F. Milano for the equations\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.initialize_mach_shaft!-Union{Tuple{P}, Tuple{TG}, Tuple{A}, Tuple{S}, Tuple{Any, StaticInjection, PowerSimulationsDynamics.DynamicWrapper{DynamicGenerator{OneDOneQMachine, S, A, TG, P}}, AbstractVector}} where {S<:Shaft, A<:AVR, TG<:TurbineGov, P<:PSS}","page":"Internal API Reference","title":"PowerSimulationsDynamics.initialize_mach_shaft!","text":"Initialitation of model of 2-state (One d- and One q-) synchronous machine in Julia. Refer to Power System Modelling and Scripting by F. Milano for the equations\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.initialize_mach_shaft!-Union{Tuple{P}, Tuple{TG}, Tuple{A}, Tuple{S}, Tuple{Any, StaticInjection, PowerSimulationsDynamics.DynamicWrapper{DynamicGenerator{SauerPaiMachine, S, A, TG, P}}, AbstractVector}} where {S<:Shaft, A<:AVR, TG<:TurbineGov, P<:PSS}","page":"Internal API Reference","title":"PowerSimulationsDynamics.initialize_mach_shaft!","text":"Initialitation of model of 6-state (SauerPai) synchronous machine in Julia. Refer to Power System Modelling and Scripting by F. Milano for the equations\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.initialize_mach_shaft!-Union{Tuple{P}, Tuple{TG}, Tuple{A}, Tuple{S}, Tuple{Any, StaticInjection, PowerSimulationsDynamics.DynamicWrapper{DynamicGenerator{SimpleAFMachine, S, A, TG, P}}, AbstractVector}} where {S<:Shaft, A<:AVR, TG<:TurbineGov, P<:PSS}","page":"Internal API Reference","title":"PowerSimulationsDynamics.initialize_mach_shaft!","text":"Initialitation of model of 4-state (Simple Anderson-Fouad) synchronous machine in Julia. Refer to Power System Modelling and Scripting by F. Milano for the equations\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.initialize_mach_shaft!-Union{Tuple{P}, Tuple{TG}, Tuple{A}, Tuple{S}, Tuple{Any, StaticInjection, PowerSimulationsDynamics.DynamicWrapper{DynamicGenerator{SimpleMarconatoMachine, S, A, TG, P}}, AbstractVector}} where {S<:Shaft, A<:AVR, TG<:TurbineGov, P<:PSS}","page":"Internal API Reference","title":"PowerSimulationsDynamics.initialize_mach_shaft!","text":"Initialitation of model of 4-state (Simple Marconato) synchronous machine in Julia. Refer to Power System Modelling and Scripting by F. Milano for the equations\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.low_pass_modified_mass_matrix-Union{Tuple{Z}, Tuple{W}, Tuple{V}, Tuple{Z, V, Float64, W, Float64}} where {V<:Union{Float64, ForwardDiff.Dual}, W<:Union{Float64, ForwardDiff.Dual}, Z<:Union{Float64, ForwardDiff.Dual}}","page":"Internal API Reference","title":"PowerSimulationsDynamics.low_pass_modified_mass_matrix","text":"Low Pass Filter Modified ┌─────────────┐ │ K │ u -> │ ────────────│ -> y │ K_den + sT │ └─────────────┘\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.mass_matrix_entries-Tuple{DynamicInjection}","page":"Internal API Reference","title":"PowerSimulationsDynamics.mass_matrix_entries","text":"Default implementation of mass matrix entries. Keeps the default values in the identity matrix\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.mdl_machine_ode!-Union{Tuple{P}, Tuple{TG}, Tuple{A}, Tuple{S}, Tuple{AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, PowerSimulationsDynamics.DynamicWrapper{DynamicGenerator{AndersonFouadMachine, S, A, TG, P}}, Any, Any}} where {S<:Shaft, A<:AVR, TG<:TurbineGov, P<:PSS}","page":"Internal API Reference","title":"PowerSimulationsDynamics.mdl_machine_ode!","text":"Model of 6-state (AndersonFouadMachine) synchronous machine in Julia. Refer to Power System Modelling and Scripting by F. Milano for the equations\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.mdl_machine_ode!-Union{Tuple{P}, Tuple{TG}, Tuple{A}, Tuple{S}, Tuple{AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, PowerSimulationsDynamics.DynamicWrapper{DynamicGenerator{BaseMachine, S, A, TG, P}}, Any, Any}} where {S<:Shaft, A<:AVR, TG<:TurbineGov, P<:PSS}","page":"Internal API Reference","title":"PowerSimulationsDynamics.mdl_machine_ode!","text":"Model of 0-state synchronous machine in Julia. Refer to Power System Modelling and Scripting by F. Milano for the equations\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.mdl_machine_ode!-Union{Tuple{P}, Tuple{TG}, Tuple{A}, Tuple{S}, Tuple{AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, PowerSimulationsDynamics.DynamicWrapper{DynamicGenerator{MarconatoMachine, S, A, TG, P}}, Any, Any}} where {S<:Shaft, A<:AVR, TG<:TurbineGov, P<:PSS}","page":"Internal API Reference","title":"PowerSimulationsDynamics.mdl_machine_ode!","text":"Model of 6-state (MarconatoMachine) synchronous machine in Julia. Refer to Power System Modelling and Scripting by F. Milano for the equations\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.mdl_machine_ode!-Union{Tuple{P}, Tuple{TG}, Tuple{A}, Tuple{S}, Tuple{AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, PowerSimulationsDynamics.DynamicWrapper{DynamicGenerator{OneDOneQMachine, S, A, TG, P}}, Any, Any}} where {S<:Shaft, A<:AVR, TG<:TurbineGov, P<:PSS}","page":"Internal API Reference","title":"PowerSimulationsDynamics.mdl_machine_ode!","text":"Model of 2-state (One d- and One q-) synchronous machine in Julia. Refer to Power System Modelling and Scripting by F. Milano for the equations\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.mdl_machine_ode!-Union{Tuple{P}, Tuple{TG}, Tuple{A}, Tuple{S}, Tuple{AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, PowerSimulationsDynamics.DynamicWrapper{DynamicGenerator{SauerPaiMachine, S, A, TG, P}}, Any, Any}} where {S<:Shaft, A<:AVR, TG<:TurbineGov, P<:PSS}","page":"Internal API Reference","title":"PowerSimulationsDynamics.mdl_machine_ode!","text":"Model of 6-state (SauerPaiMachine) synchronous machine in Julia. Refer to Power System Modelling and Scripting by F. Milano for the equations\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.mdl_machine_ode!-Union{Tuple{P}, Tuple{TG}, Tuple{A}, Tuple{S}, Tuple{AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, PowerSimulationsDynamics.DynamicWrapper{DynamicGenerator{SimpleAFMachine, S, A, TG, P}}, Any, Any}} where {S<:Shaft, A<:AVR, TG<:TurbineGov, P<:PSS}","page":"Internal API Reference","title":"PowerSimulationsDynamics.mdl_machine_ode!","text":"Model of 4-state (SimpleAFMachine) synchronous machine in Julia. Refer to Power System Modelling and Scripting by F. Milano for the equations\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.mdl_machine_ode!-Union{Tuple{P}, Tuple{TG}, Tuple{A}, Tuple{S}, Tuple{AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, AbstractArray{<:Union{Float64, ForwardDiff.Dual}}, PowerSimulationsDynamics.DynamicWrapper{DynamicGenerator{SimpleMarconatoMachine, S, A, TG, P}}, Any, Any}} where {S<:Shaft, A<:AVR, TG<:TurbineGov, P<:PSS}","page":"Internal API Reference","title":"PowerSimulationsDynamics.mdl_machine_ode!","text":"Model of 4-state (SimpleMarconatoMachine) synchronous machine in Julia. Refer to Power System Modelling and Scripting by F. Milano for the equations\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.mdl_zip_load!-Union{Tuple{T}, Tuple{T, T, AbstractArray{T}, AbstractArray{T}, PowerSimulationsDynamics.StaticLoadWrapper}} where T<:Union{Float64, ForwardDiff.Dual}","page":"Internal API Reference","title":"PowerSimulationsDynamics.mdl_zip_load!","text":"Model for ZIP Load model given by:\n\nPzip = Ppower + Pcurrent * (V / V0) + Pimpedance * (V / V0)^2 Qzip = Qpower + Qcurrent * (V / V0) + Qimpedance * (V / V0)^2\n\nwith V = sqrt(Vr^2 + Vi^2) and V0 the voltage magnitude from the power flow solution\n\nThe current taken for the load is computed as: Izip = (Pzip + j Qzip)^* / (Vr + j Vi)^* Izip = (Pzip - j Qzip) / (Vr - j Vi)\n\nFor constant impedance it is obtained: Izre = (1 / V0)^2 * (Vr * Pimpedance + Vi * Qimpedance) Izim = (1 / V0)^2 * (Vi * Pimpedance - Vr * Qimpedance)\n\nFor constant current it is obtained: Iire = (1 / V0) * ( (Vr * Pcurrent + Vi * Qcurrent) / V ) Iiim = (1 / V0) * ( (Vi * Pcurrent - Vr * Qcurrent) / V )\n\nFor constant power it is obtained: Ipre = (Vr * Ppower + Vi * Qpower) / V^2 Ipim = (Vi * Ppower - Vr * Qpower) / V^2\n\nModel for Exponential Load model given by:\n\nPexp = P0 * (V / V0)^α Qexp = Q0 * (V / V0)^β\n\nThe current taken for the load is computed as: Iexp = (Pexp + j Qexp)^* / (Vr + j Vi)^* Iexp = (Pexp - j Qexp) / (Vr - j Vi)\n\nIt results: Irexp = Vr * P0 * (V^(α - 2) / V0^α) + Vi * Q0 * (V^(β - 2)/ V0^β) Iiim = Vi * P0 * (V^(α - 2) / V0^α) - Vr * Q0 * (V^(β - 2)/ V0^β)\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.post_proc_activepower_series-Tuple{SimulationResults, String, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics.post_proc_activepower_series","text":"Function to compute the active power output time series of a Dynamic Injection series out of the DAE Solution. It receives the solution and the string name of the Dynamic Injection device.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.post_proc_branch_series-Tuple{SimulationResults, String, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics.post_proc_branch_series","text":"Function to compute the current flowing through an AC branch through their series element. The current is computed through the from bus into the to bus.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.post_proc_field_current_series-Tuple{SimulationResults, String, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics.post_proc_field_current_series","text":"Function to compute the field current output time series of a Dynamic Injection series out of the DAE Solution. It receives the solution and the string name of the Dynamic Injection device.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.post_proc_field_voltage_series-Tuple{SimulationResults, String, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics.post_proc_field_voltage_series","text":"Function to compute the field voltage output time series of a Dynamic Injection series out of the DAE Solution. It receives the solution and the string name of the Dynamic Injection device.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.post_proc_frequency_series-Tuple{SimulationResults, String, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics.post_proc_frequency_series","text":"Function to compute the frequency of a Dynamic Injection component.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.post_proc_imaginary_current_series-Tuple{SimulationResults, String, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics.post_proc_imaginary_current_series","text":"Function to compute the imaginary current output time series of a Dynamic Injection series out of the DAE Solution. It receives the solution and the string name of the Dynamic Injection device.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.post_proc_mechanical_torque_series-Tuple{SimulationResults, String, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics.post_proc_mechanical_torque_series","text":"Function to compute the mechanical torque output time series of a Dynamic Injection series out of the DAE Solution. It receives the solution and the string name of the Dynamic Injection device.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.post_proc_pss_output_series-Tuple{SimulationResults, String, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics.post_proc_pss_output_series","text":"Function to compute the pss output time series of a Dynamic Injection series out of the DAE Solution. It receives the solution and the string name of the Dynamic Injection device.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.post_proc_reactivepower_series-Tuple{SimulationResults, String, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics.post_proc_reactivepower_series","text":"Function to compute the active power output time series of a Dynamic Injection series out of the DAE Solution. It receives the solution and the string name of the Dynamic Injection device.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.post_proc_real_current_series-Tuple{SimulationResults, String, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics.post_proc_real_current_series","text":"Function to compute the real current output time series of a Dynamic Injection series out of the DAE Solution. It receives the solution and the string name of the Dynamic Injection device.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.post_proc_source_voltage_current_series","page":"Internal API Reference","title":"PowerSimulationsDynamics.post_proc_source_voltage_current_series","text":"Function to obtain voltage and output currents for a source. It receives the simulation resutls and an optional argument of the time step of the results.\n\n\n\n\n\n","category":"function"},{"location":"api/internal/#PowerSimulationsDynamics.post_proc_state_series-Tuple{SimulationResults, Tuple{String, Symbol}, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics.post_proc_state_series","text":"Function to obtain the state time series of a specific state. It receives the simulation, and a tuple containing the name of the Dynamic Device and the symbol of the state.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.post_proc_voltage_current_series-Tuple{SimulationResults, String, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics.post_proc_voltage_current_series","text":"Function to obtain voltage and output currents for a dynamic device. It receives the simulation, and the name of the Dynamic Device.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.post_proc_voltage_series-Tuple{Any, Int64, Int64, Union{Nothing, Float64, Vector{Float64}}}","page":"Internal API Reference","title":"PowerSimulationsDynamics.post_proc_voltage_series","text":"Function to obtain voltage using the bus index (and not the bus number). It receives the solution, the bus index and the total number of buses.\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.saturation_function-Tuple{Union{RoundRotorExponential, SalientPoleExponential}, Union{Float64, ForwardDiff.Dual}}","page":"Internal API Reference","title":"PowerSimulationsDynamics.saturation_function","text":"Saturation function for exponential saturation models for machines\n Se(x) = B * x^A\n\n\n\n\n\n","category":"method"},{"location":"api/internal/#PowerSimulationsDynamics.saturation_function-Tuple{Union{RoundRotorQuadratic, SalientPoleQuadratic}, Union{Float64, ForwardDiff.Dual}}","page":"Internal API Reference","title":"PowerSimulationsDynamics.saturation_function","text":"Saturation function for quadratic saturation models for machines\n Se(x) = B * (x - A)^2 / x\n\n\n\n\n\n","category":"method"},{"location":"component_models/converter/#Converter","page":"Converter","title":"Converter","text":"","category":"section"},{"location":"component_models/converter/","page":"Converter","title":"Converter","text":"This component can be used to model the dynamics of the switching process.","category":"page"},{"location":"component_models/converter/#Average-Model-[AverageConverter]","page":"Converter","title":"Average Model [AverageConverter]","text":"","category":"section"},{"location":"component_models/converter/","page":"Converter","title":"Converter","text":"The average model outputs the desired reference signal since:","category":"page"},{"location":"component_models/converter/","page":"Converter","title":"Converter","text":"beginalign\nv_d^textcv approx m_d v_textdc approx fracv_d^textref-signalv_textdc v_textdc approx v_d^textref-signal tag1a \nv_q^textcv approx m_q v_textdc approx fracv_q^textref-signalv_textdc v_textdc approx v_q^textref-signal tag1b\nendalign","category":"page"},{"location":"component_models/converter/","page":"Converter","title":"Converter","text":"where m_dq is the modulation signal, and v_dq^textref-signal is the voltage reference signal from the inner loop control.","category":"page"},{"location":"component_models/converter/#Generic-Renewable-Converter-Type-A-[RenewableEnergyConverterTypeA]","page":"Converter","title":"Generic Renewable Converter Type A ```[RenewableEnergyConverterTypeA]","text":"","category":"section"},{"location":"component_models/converter/","page":"Converter","title":"Converter","text":"This block represents the REGCA model. The equations (without the limiters) are:","category":"page"},{"location":"component_models/converter/","page":"Converter","title":"Converter","text":"beginalign\n dotI_p = frac1T_g (I_textpcmd - I_p) tag2a \n dotI_q = frac1T_g (I_textqcmd - I_q) tag2b \n dotV_textmeas = frac1T_fltr (V_t - V_textmeas tag2c)\nendalign","category":"page"},{"location":"component_models/converter/","page":"Converter","title":"Converter","text":"on which I_textpcmd and I_textqcmd are the current commands from the inner control and V_t is the bus voltage magnitude. The additional terms and output current are computed as:","category":"page"},{"location":"component_models/converter/","page":"Converter","title":"Converter","text":"beginalign\n I_q^textcv = -I_q - I_textqextra tag2d \n I_textqextra = max(K_hv (V_t - V_textolim)) tag2e \n I_p^textcv = G_lv I_p tag2f \nendalign","category":"page"},{"location":"component_models/converter/","page":"Converter","title":"Converter","text":"on which G_lv is the gain used for Low Voltage Active Current Management and I_textqextra is the additional current for High Voltage Reactive Current Management.","category":"page"},{"location":"component_models/converter/","page":"Converter","title":"Converter","text":"It is important to note that both current commands coming from the inner control were obtained by dividing the active (or reactive) power by the magnitude voltage instead of using the correct phasor formula I = (SV)^*. For that purpose, a correction factor must be applied to obtain the correct output currents in the network reference frame:","category":"page"},{"location":"component_models/converter/","page":"Converter","title":"Converter","text":"beginalign*\n I_r + jI_i = (I_p + jI_q) cdot V_t cdot frac1V_r + jV_i \n = (I_p + jI_q) cdot fracV_tV_t e^jtheta \n = (I_p + jI_q) cdot e^-jtheta\nendalign*","category":"page"},{"location":"component_models/converter/","page":"Converter","title":"Converter","text":"This correction factor looks like a reference transformation that must be used to properly inject current into the grid. With that the output current is computed as:","category":"page"},{"location":"component_models/converter/","page":"Converter","title":"Converter","text":"beginalign\n I_r = I_p^textcv cos(theta) - I_q^textcv sin(theta) tag2g \n I_i = I_p^textcv sin(theta) + I_q^textcv cos(theta) tag2h\nendalign","category":"page"},{"location":"component_models/converter/","page":"Converter","title":"Converter","text":"This current source is usually modeled as a Norton equivalent using a parallel impedance with values R_sorce and X_sorce provided in the .raw file. If an RL filter is used, a Voltage Source behind that RL filter (i.e. the converter output voltage) can be computed as:","category":"page"},{"location":"component_models/converter/","page":"Converter","title":"Converter","text":"beginalign*\n Z_f = r_f + jl_f \n Z_sorce = R_sorce + jX_sorce \n I_cv = I_r + jI_i \n v_r^textcv + jv_i^textcv = fracI_cv + fracv^textgridZ_ffrac1Z_sorce + frac1Z_f tag2i\nendalign*","category":"page"},{"location":"#PowerSimulationsDynamics.jl","page":"Welcome Page","title":"PowerSimulationsDynamics.jl","text":"","category":"section"},{"location":"","page":"Welcome Page","title":"Welcome Page","text":"CurrentModule = PowerSimulationsDynamics","category":"page"},{"location":"#Overview","page":"Welcome Page","title":"Overview","text":"","category":"section"},{"location":"","page":"Welcome Page","title":"Welcome Page","text":"PowerSimulationsDynamics.jl is a Julia package for doing Power Systems Dynamic Modeling with Low Inertia Energy Sources.","category":"page"},{"location":"","page":"Welcome Page","title":"Welcome Page","text":"The synchronous machine components supported here are based on commercial models and the academic components are derived from Power System Modelling and Scripting.","category":"page"},{"location":"","page":"Welcome Page","title":"Welcome Page","text":"Inverter models support both commercial models, such as REPC, REEC and REGC type of models; and academic models obtained from grid-following and grid-forming literature such as in \"A Virtual Synchronous Machine implementation for distributed control of power converters in SmartGrids\"","category":"page"},{"location":"","page":"Welcome Page","title":"Welcome Page","text":"The background work on PowerSimulationsDynamics.jl is explained in Revisiting Power Systems Time-domain Simulation Methods and Models","category":"page"},{"location":"","page":"Welcome Page","title":"Welcome Page","text":"@article{lara2023revisiting,\ntitle={Revisiting Power Systems Time-domain Simulation Methods and Models},\nauthor={Lara, Jose Daniel and Henriquez-Auba, Rodrigo and Ramasubramanian, Deepak and Dhople, Sairaj and Callaway, Duncan S and Sanders, Seth},\njournal={arXiv preprint arXiv:2301.10043},\nyear={2023}\n}","category":"page"},{"location":"#Installation","page":"Welcome Page","title":"Installation","text":"","category":"section"},{"location":"","page":"Welcome Page","title":"Welcome Page","text":"The latest stable release of PowerSimulationsDynamics.jl can be installed using the Julia package manager with","category":"page"},{"location":"","page":"Welcome Page","title":"Welcome Page","text":"] add PowerSimulationsDynamics","category":"page"},{"location":"","page":"Welcome Page","title":"Welcome Page","text":"For the current development version, \"checkout\" this package with","category":"page"},{"location":"","page":"Welcome Page","title":"Welcome Page","text":"] add PowerSimulationsDynamics#master","category":"page"},{"location":"#Structure","page":"Welcome Page","title":"Structure","text":"","category":"section"},{"location":"","page":"Welcome Page","title":"Welcome Page","text":"The following figure shows the interactions between PowerSimulationsDynamics.jl, PowerSystems.jl, ForwardDiff.jl, DiffEqBase.jl and the integrators. The architecture of PowerSimulationsDynamics.jl is such that the power system models are all self-contained and return the model function evaluations. The Jacobian is calculated using automatic differentiation through ForwardDiff.jl, that is used for both numerical integration and small signal analysis. Considering that the resulting models are differential-algebraic equations (DAE), the implementation focuses on the use of implicit solvers, in particular BDF and Rosenbrock methods.","category":"page"},{"location":"","page":"Welcome Page","title":"Welcome Page","text":"","category":"page"},{"location":"","page":"Welcome Page","title":"Welcome Page","text":"⠀","category":"page"},{"location":"","page":"Welcome Page","title":"Welcome Page","text":"","category":"page"},{"location":"","page":"Welcome Page","title":"Welcome Page","text":"PowerSimulationsDynamics.jl has been developed as part of the Scalable Integrated Infrastructure Planning (SIIP) initiative at the U.S. Department of Energy's National Renewable Energy Laboratory (NREL)","category":"page"},{"location":"generic/#Industrial-(Generic)-Renewable-Models","page":"Industrial Renewable Models","title":"Industrial (Generic) Renewable Models","text":"","category":"section"},{"location":"generic/#Connection-with-the-Inverter-Metamodel","page":"Industrial Renewable Models","title":"Connection with the Inverter Metamodel","text":"","category":"section"},{"location":"generic/","page":"Industrial Renewable Models","title":"Industrial Renewable Models","text":"Generic Renewable Models for PV solar or battery devices used in industrial tools, such as PSS/E or PowerWorld, does not necessary resemble the proposed structure of our proposed metamodel. ","category":"page"},{"location":"generic/","page":"Industrial Renewable Models","title":"Industrial Renewable Models","text":"In general terms, a generic renewable model (for PV plant or battery) is typically a Grid Following inverter that uses a Renewable Energy Plant Controller (REPC), a Renewable Energy Electrical Controller (REEC) and a Renewable Energy Generic Converter (REGC) model. The following figure is useful to understand the general structure of such models:","category":"page"},{"location":"generic/","page":"Industrial Renewable Models","title":"Industrial Renewable Models","text":"","category":"page"},{"location":"generic/","page":"Industrial Renewable Models","title":"Industrial Renewable Models","text":"In comparison to the proposed inverter metamodel it is clear that the REPC resembles the Outer Control. However, the REEC has a purpose of both Outer Control and Inner Control and the REGC has a similar purpose of the Converter and Filter in the proposed structure. For such purpose, it was necessary to split the REEC and part of its model was included in both Outer Control and Inner Control.","category":"page"},{"location":"generic/#Example-of-implementation-of-generic-models","page":"Industrial Renewable Models","title":"Example of implementation of generic models","text":"","category":"section"},{"location":"generic/","page":"Industrial Renewable Models","title":"Industrial Renewable Models","text":"The following includes examples of the implementation of the proposed model in the inverter metamodel.","category":"page"},{"location":"generic/#Active-Renewable-Outer-Control","page":"Industrial Renewable Models","title":"Active Renewable Outer Control","text":"","category":"section"},{"location":"generic/","page":"Industrial Renewable Models","title":"Industrial Renewable Models","text":"The following example join the active power controllers from REPCA and REECB as ActiveRenewableControllerAB in PowerSimulationsDynamics.jl","category":"page"},{"location":"generic/","page":"Industrial Renewable Models","title":"Industrial Renewable Models","text":"","category":"page"},{"location":"generic/","page":"Industrial Renewable Models","title":"Industrial Renewable Models","text":"⠀","category":"page"},{"location":"generic/","page":"Industrial Renewable Models","title":"Industrial Renewable Models","text":"An important thing to consider with the industrial models, is that the change of Flags can significantly vary the model and purpose of the controller.","category":"page"},{"location":"generic/#Reactive-Renewable-Outer-Control","page":"Industrial Renewable Models","title":"Reactive Renewable Outer Control","text":"","category":"section"},{"location":"generic/","page":"Industrial Renewable Models","title":"Industrial Renewable Models","text":"Similar to the active controller, the following figure presents the reactive controller part from REPCA and REECB as ReactiveRenewableControllerAB in PowerSimulationsDynamics.jl","category":"page"},{"location":"generic/","page":"Industrial Renewable Models","title":"Industrial Renewable Models","text":"","category":"page"},{"location":"generic/","page":"Industrial Renewable Models","title":"Industrial Renewable Models","text":"⠀","category":"page"},{"location":"generic/#Inner-Controller","page":"Industrial Renewable Models","title":"Inner Controller","text":"","category":"section"},{"location":"generic/","page":"Industrial Renewable Models","title":"Industrial Renewable Models","text":"Finally, the remaining part from REECB was included RECurrentControllerB","category":"page"},{"location":"generic/","page":"Industrial Renewable Models","title":"Industrial Renewable Models","text":"","category":"page"},{"location":"generic/","page":"Industrial Renewable Models","title":"Industrial Renewable Models","text":"⠀","category":"page"},{"location":"generic/","page":"Industrial Renewable Models","title":"Industrial Renewable Models","text":"The REGCAmodel was directly included in a Converter Block, and the filter can be bypassed using an RLFilter block with rf = lf = 0.","category":"page"},{"location":"generic/#Current-availability-of-model-flags-in-PSID","page":"Industrial Renewable Models","title":"Current availability of model flags in PSID","text":"","category":"section"},{"location":"generic/#Active-Controller","page":"Industrial Renewable Models","title":"Active Controller","text":"","category":"section"},{"location":"generic/","page":"Industrial Renewable Models","title":"Industrial Renewable Models","text":"For the active controller, both Freq_Flag = 0 (ignoring frequency regulation) and Freq_Flag = 1 (considering frequency regulation) are available.","category":"page"},{"location":"generic/#Reactive-Controller","page":"Industrial Renewable Models","title":"Reactive Controller","text":"","category":"section"},{"location":"generic/","page":"Industrial Renewable Models","title":"Industrial Renewable Models","text":"The following table describes the current available combination of flags in PSID:","category":"page"},{"location":"generic/","page":"Industrial Renewable Models","title":"Industrial Renewable Models","text":"REF_Flag PF_Flag V_Flag Q_Flag\n0 0 0 0\n0 0 1 0\n1 0 1 1\n1 0 0 0","category":"page"},{"location":"generic/","page":"Industrial Renewable Models","title":"Industrial Renewable Models","text":"Any combination outside of these cases may not converge to a feasible operating point. Check the following CAISO report for the description and compliance of each flag combination.","category":"page"}] +} diff --git a/previews/PR383/siteinfo.js b/previews/PR383/siteinfo.js new file mode 100644 index 000000000..ba88d003d --- /dev/null +++ b/previews/PR383/siteinfo.js @@ -0,0 +1 @@ +var DOCUMENTER_CURRENT_VERSION = "previews/PR383"; diff --git a/previews/PR383/small/index.html b/previews/PR383/small/index.html new file mode 100644 index 000000000..b5cb1a3b4 --- /dev/null +++ b/previews/PR383/small/index.html @@ -0,0 +1,32 @@ + +Small Signal · PowerSimulationsDynamics.jl

    Small Signal Analysis

    Here we discuss the method used to do a small signal analysis on the DAE system defined in PowerSimulationsDynamics.jl. The package defines algebraic variables for both real and imaginary voltages on all buses (except if they have a dynamic line connected, on which the voltage of those buses are treated as differential variables). In addition, each dynamic device can add differential variables (or states) that are concatenated to construct the system of differential algebraic equations.

    Note: The validation of small signal results is still work in progress due to the differences in the way that different software packages perform the calculations.

    Automatic Differentiation

    Once an equilibrium point is found, the complete jacobian of the non-linear system can be obtained using automatic differentiation in Julia. In particular, the package ForwardDiff.jl is used to obtain the jacobian of the non-linear algebraic system of equations. PowerSimulationsDynamics.jl handles the resulting jacobian and reports the reduced jacobian and the corresponding eigenvalues and eigenvectors.

    Jacobian Reduction

    We define $y$ as the vector of algebraic variables, $x$ as the vector of differential variables (states) and $p$ the parameters of the system, we can define $g(y,x,p)$ as the vector of algebraic equations and $f(y,x,p)$ as the vector of differential equations. With that, the non-linear differential algebraic system of equations can be written as:

    \[\begin{align} +\left[\begin{array}{c} + 0 \\ + \dot{x} + \end{array}\right] = \left[\begin{array}{c} + g(y,x,p) \\ + f(y,x,p) \end{array}\right] +\end{align}\]

    For small signal analysis, we are interested in the stability around an equilbrium point $y_{eq},x_{eq}$ that satisfies $\dot{x} = 0$ or equivalently $f(y_{eq},x_{eq},p) = 0$, while obviously satisfying $g(y_{eq}, x_{eq}, p) = 0$. To do that we use a first order approximation:

    \[\begin{align} +\left[\begin{array}{c} + 0 \\ + \Delta\dot{x} + \end{array}\right] = \underbrace{\left[\begin{array} + ~g(y_{eq},x_{eq},p) \\ + f(y_{eq},x_{eq},p) \end{array}\right]}_{ =~ 0} + + J[y_{eq}, x_{eq}, p] \left[\begin{array}{c} + \Delta y \\ + \Delta x + \end{array}\right] + \end{align}\]

    The first to note is that the jacobian matrix can be splitted in 4 blocks depending on the specific variables we are taking the partial derivatives:

    \[\begin{align} +J[y_{eq}, x_{eq}, p] = +\left[\begin{array}{cc} + g_y & g_x \\ + f_y & f_x \\ + \end{array}\right] +\end{align}\]

    For small signal analyses, we are interested in the stability of the differential states, while still considering that those need to evolve in the manifold defined by the linearized algebraic equations. Assuming that $g_y$ is not singular (see chapter 7 of Federico Milano's book: Power System Modelling and Scripting or the following paper) we can eliminate the algebraic variables to obtain the reduced jacobian:

    \[\begin{align} +J_{\text{red}} = f_x - f_y g_y^{-1} g_x +\end{align}\]

    that defines our reduced system for the differential variables

    \[\begin{align} +\Delta \dot{x} = J_{\text{red}} \Delta x +\end{align}\]

    on which we can compute its eigenvalues to analyze local stability.

    Accessing the Jacobian function

    You can retrieve the Jacobian function for a simulation using the get_jacobian function as follows:

    jacobian = function get_jacobian(ResidualModel, system)

    optionally you can pass the number of iterations to check for sparsity as follows:

    jacobian = function get_jacobian(ResidualModel, system, 0)

    if you specify 0, the jacobian function will use a full matrix.

    The return of get_jacobian is known as a functor in Julia and can be used to make evaluations. Currently, any function can be evaluated with the following inputs:

    jacobian(x)

    This version of the function is type unstable should only be used for non-critial ops. It works to get the eigenvalues given an operating point x

    jacobian(JM, x)

    This version evaluates in place the value of the jacobian for an operating point x and writes to the matrix JM

    jacobian(JM, x, p, t)

    This version complied with the requirements to be used in DiffEq for ODE solvers. p and t aren't used they just mean to match the interfaces. See DiffEqDocs

    jacobian(JM, dx, x, p, gamma, t)

    This version complied with the requirements to be used in DiffEq for DAE solvers. p and t aren't used they just mean to match the interfaces. It assumes that the jacobian has the form:

    \[\begin{align} + JM = \gamma * I + J(x) +\end{align}\]

    See DiffEqDocs for additional details.

    diff --git a/previews/PR383/time_delays/index.html b/previews/PR383/time_delays/index.html new file mode 100644 index 000000000..9ec35aefc --- /dev/null +++ b/previews/PR383/time_delays/index.html @@ -0,0 +1,4 @@ + +Time Delays · PowerSimulationsDynamics.jl

    Delays

    PowerSimulationsDynamics supports models with constant delays in a mass matrix formulation:

    \[\begin{align} +M\frac{dx(t)}{dt} = f(x(t), x(t-\tau_1), ... , x(t-\tau_N)) +\end{align}\]

    For more information on solving such models, refer to the documentation for DelayDiffEq.jl package.

    The following models include time delays:

    • DEGOV

    There is currently limited support for including models with time delays. The following limitations apply:

    • Only constant delays are supported (state dependent delays are not).
    • System models with delays must use MassMatrixModel formulation (ResidualModel is not currently compatible).
    • System models with delays are not compatible with small signal analysis tools.
    • The system formulation with delays is not compatible with automatic differentiation for calculating the gradient with respect to time. The setting autodiff=false should be set when passing the solver (e.g. MethodofSteps(Rodas5(autodiff=false))).
    diff --git a/previews/PR383/tutorials/figs/14bus_gen_inv_speed.svg b/previews/PR383/tutorials/figs/14bus_gen_inv_speed.svg new file mode 100644 index 000000000..a16e6bb67 --- /dev/null +++ b/previews/PR383/tutorials/figs/14bus_gen_inv_speed.svg @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/previews/PR383/tutorials/figs/14bus_gen_inv_volt.svg b/previews/PR383/tutorials/figs/14bus_gen_inv_volt.svg new file mode 100644 index 000000000..51ad669fe --- /dev/null +++ b/previews/PR383/tutorials/figs/14bus_gen_inv_volt.svg @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/previews/PR383/tutorials/figs/14bus_gen_speed.svg b/previews/PR383/tutorials/figs/14bus_gen_speed.svg new file mode 100644 index 000000000..4959b0e43 --- /dev/null +++ b/previews/PR383/tutorials/figs/14bus_gen_speed.svg @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/previews/PR383/tutorials/figs/14bus_gen_volt.svg b/previews/PR383/tutorials/figs/14bus_gen_volt.svg new file mode 100644 index 000000000..b7b4d655a --- /dev/null +++ b/previews/PR383/tutorials/figs/14bus_gen_volt.svg @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/previews/PR383/tutorials/figs/omib_angle.svg b/previews/PR383/tutorials/figs/omib_angle.svg new file mode 100644 index 000000000..2a72e4c34 --- /dev/null +++ b/previews/PR383/tutorials/figs/omib_angle.svg @@ -0,0 +1,44 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/previews/PR383/tutorials/figs/omib_volt.svg b/previews/PR383/tutorials/figs/omib_volt.svg new file mode 100644 index 000000000..98d49df6d --- /dev/null +++ b/previews/PR383/tutorials/figs/omib_volt.svg @@ -0,0 +1,44 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/previews/PR383/tutorials/figs/plot_dynlines.svg b/previews/PR383/tutorials/figs/plot_dynlines.svg new file mode 100644 index 000000000..f1671bb14 --- /dev/null +++ b/previews/PR383/tutorials/figs/plot_dynlines.svg @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/previews/PR383/tutorials/figs/plot_dynlines_zoom.svg b/previews/PR383/tutorials/figs/plot_dynlines_zoom.svg new file mode 100644 index 000000000..c7170f975 --- /dev/null +++ b/previews/PR383/tutorials/figs/plot_dynlines_zoom.svg @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/previews/PR383/tutorials/figs/pv_curve_cpl.svg b/previews/PR383/tutorials/figs/pv_curve_cpl.svg new file mode 100644 index 000000000..ed990d89c --- /dev/null +++ b/previews/PR383/tutorials/figs/pv_curve_cpl.svg @@ -0,0 +1,44 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/previews/PR383/tutorials/figs/pv_curve_cpl_genrou.svg b/previews/PR383/tutorials/figs/pv_curve_cpl_genrou.svg new file mode 100644 index 000000000..ce357d7b3 --- /dev/null +++ b/previews/PR383/tutorials/figs/pv_curve_cpl_genrou.svg @@ -0,0 +1,214 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/previews/PR383/tutorials/figs/v1101_comparison.svg b/previews/PR383/tutorials/figs/v1101_comparison.svg new file mode 100644 index 000000000..cadeaf166 --- /dev/null +++ b/previews/PR383/tutorials/figs/v1101_comparison.svg @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/previews/PR383/tutorials/figs/v1101_ida.svg b/previews/PR383/tutorials/figs/v1101_ida.svg new file mode 100644 index 000000000..a1ec216cc --- /dev/null +++ b/previews/PR383/tutorials/figs/v1101_ida.svg @@ -0,0 +1,50 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/previews/PR383/tutorials/modified_sys.json b/previews/PR383/tutorials/modified_sys.json new file mode 100644 index 000000000..41620d168 --- /dev/null +++ b/previews/PR383/tutorials/modified_sys.json @@ -0,0 +1 @@ +{"internal":{"uuid":{"value":"3d385dc4-0386-407d-b67b-198c57538de9"},"ext":{},"units_info":null},"data":{"time_series_in_memory":false,"masked_components":[],"version_info":{"julia_version":"1.10.4","package_info":"Status `~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/docs/Manifest.toml`\n [47edcb42] ADTypes v1.5.3\n [a4c015fc] ANSIColoredPrinters v0.0.1\n [1520ce14] AbstractTrees v0.4.5\n [7d9f7c33] Accessors v0.1.36\n [79e6a3ab] Adapt v4.0.4\n [ec485272] ArnoldiMethod v0.4.0\n [4fba245c] ArrayInterface v7.11.0\n [4c555306] ArrayLayouts v1.10.0\n [d1d4a3ce] BitFlags v0.1.9\n [62783981] BitTwiddlingConvenienceFunctions v0.1.6\n [a74b3585] Blosc v0.7.3\n [fa961155] CEnum v0.5.0\n [2a0fbf3d] CPUSummary v0.2.6\n [336ed68f] CSV v0.10.14\n [d360d2e6] ChainRulesCore v1.24.0\n [fb6a15b2] CloseOpenIntervals v0.1.13\n [944b1d66] CodecZlib v0.7.4\n [35d6a980] ColorSchemes v3.25.0\n [3da002f7] ColorTypes v0.11.5\n [c3611d14] ColorVectorSpace v0.10.0\n [5ae59095] Colors v0.12.11\n [38540f10] CommonSolve v0.2.4\n [bbf7d656] CommonSubexpressions v0.3.0\n [f70d9fcc] CommonWorldInvalidations v1.0.0\n [34da2185] Compat v4.15.0\n [a33af91c] CompositionsBase v0.1.2\n [2569d6c7] ConcreteStructs v0.2.3\n [f0e56b4a] ConcurrentUtilities v2.4.1\n [187b0558] ConstructionBase v1.5.5\n [d38c429a] Contour v0.6.3\n [adafc99b] CpuId v0.3.1\n [a8cc5b0e] Crayons v4.1.1\n [9a962f9c] DataAPI v1.16.0\n [a93c6f00] DataFrames v1.6.1\n [864edb3b] DataStructures v0.18.20\n [e2d170a0] DataValueInterfaces v1.0.0\n [8bb1440f] DelimitedFiles v1.9.1\n [2b5f629d] DiffEqBase v6.151.5\n [163ba53b] DiffResults v1.1.0\n [b552c78f] DiffRules v1.15.1\n [a0c0ee7d] DifferentiationInterface v0.5.7\n [b4f34e82] Distances v0.10.11\n [ffbed154] DocStringExtensions v0.9.3\n⌅ [e30172f5] Documenter v0.27.25\n [35a29f4d] DocumenterTools v0.1.19\n [4e289a0a] EnumX v1.0.4\n [f151be2c] EnzymeCore v0.7.6\n [460bff9d] ExceptionUnwrapping v0.1.10\n [d4d017d3] ExponentialUtilities v1.26.1\n [e2ba6199] ExprTools v0.1.10\n [c87230d0] FFMPEG v0.4.1\n [7034ab61] FastBroadcast v0.3.4\n [9aa1b823] FastClosures v0.3.2\n [29a986be] FastLapackInterface v2.0.4\n [48062228] FilePathsBase v0.9.21\n [1a297f60] FillArrays v1.11.0\n [6a86dc24] FiniteDiff v2.23.1\n [53c48c17] FixedPointNumbers v0.8.5\n [1fa38f19] Format v1.3.7\n [f6369f11] ForwardDiff v0.10.36\n [069b7b12] FunctionWrappers v1.1.3\n [77dc65aa] FunctionWrappersWrappers v0.1.3\n [46192b85] GPUArraysCore v0.1.6\n⌃ [28b8d3ca] GR v0.73.5\n [c145ed77] GenericSchur v0.5.4\n [86223c79] Graphs v1.11.2\n [42e2da0e] Grisu v1.0.2\n [708ec375] Gumbo v0.8.2\n [c8ec2601] H5Zblosc v0.1.2\n [f67ccb44] HDF5 v0.17.2\n [cd3eb016] HTTP v1.10.8\n [3e5b6fbb] HostCPUFeatures v0.1.17\n [b5f81e59] IOCapture v0.2.5\n [615f187c] IfElse v0.1.1\n [d25df0c9] Inflate v0.1.5\n⌅ [2cd47ed4] InfrastructureSystems v1.22.2\n [842dd82b] InlineStrings v1.4.1\n [3587e190] InverseFunctions v0.1.14\n [41ab1584] InvertedIndices v1.3.0\n [92d709cd] IrrationalConstants v0.2.2\n [82899510] IteratorInterfaceExtensions v1.0.0\n [1019f520] JLFzf v0.1.7\n [692b3bcd] JLLWrappers v1.5.0\n [682c06a0] JSON v0.21.4\n [0f8b85d8] JSON3 v1.14.0\n [ef3ab10e] KLU v0.6.0\n [ba0b0d4f] Krylov v0.9.6\n [b964fa9f] LaTeXStrings v1.3.1\n [23fbe1c1] Latexify v0.16.3\n [10f19ff3] LayoutPointers v0.1.17\n [5078a376] LazyArrays v2.1.1\n [1d6d02ad] LeftChildRightSiblingTrees v0.2.0\n [d3d80556] LineSearches v7.2.0\n [7ed4a6bd] LinearSolve v2.30.2\n [2ab3a3ac] LogExpFunctions v0.3.28\n [e6f89c97] LoggingExtras v1.0.3\n [bdcacae8] LoopVectorization v0.12.171\n⌅ [33e6dc65] MKL v0.6.3\n [3da0fdf6] MPIPreferences v0.1.11\n [1914dd2f] MacroTools v0.5.13\n [d125e4d3] ManualMemory v0.1.8\n [299715c1] MarchingCubes v0.1.9\n [bb5d69b7] MaybeInplace v0.1.3\n [739be429] MbedTLS v1.1.9\n [442fdcdd] Measures v0.3.2\n [e1d29d7a] Missings v1.2.0\n [46d2c3a1] MuladdMacro v0.2.4\n [ffc61752] Mustache v1.0.19\n [d41bc354] NLSolversBase v7.8.3\n [2774e3e8] NLsolve v4.5.1\n [77ba4419] NaNMath v1.0.2\n [8913a72c] NonlinearSolve v3.13.1\n [6fe1bfb0] OffsetArrays v1.14.0\n [4d8831e6] OpenSSL v1.4.3\n [bac558e1] OrderedCollections v1.6.3\n [1dea7af3] OrdinaryDiffEq v6.85.0\n [65ce6f38] PackageExtensionCompat v1.0.2\n [d96e819e] Parameters v0.12.3\n [46dd5b70] Pardiso v0.5.7\n [69de0a69] Parsers v2.8.1\n [b98c9c47] Pipe v1.3.0\n [ccf2f8ad] PlotThemes v3.2.0\n [995b91a9] PlotUtils v1.4.1\n [91a5bcdd] Plots v1.40.4\n [f517fe37] Polyester v0.7.15\n [1d0040c9] PolyesterWeave v0.2.2\n [2dfb63ee] PooledArrays v1.4.3\n [dd99e9e3] PowerFlowData v1.5.0\n [94fada2c] PowerFlows v0.6.2\n⌅ [bed98974] PowerNetworkMatrices v0.10.3\n [398b2ede] PowerSimulationsDynamics v0.14.2 `~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl`\n⌃ [f00506e0] PowerSystemCaseBuilder v1.2.5\n⌅ [bcd98974] PowerSystems v3.3.0\n [d236fae5] PreallocationTools v0.4.22\n [aea7be01] PrecompileTools v1.2.1\n [21216c6a] Preferences v1.4.3\n [08abe8d2] PrettyTables v2.3.2\n [33c8b6b6] ProgressLogging v0.1.4\n [3cdcf5f2] RecipesBase v1.3.4\n [01d81517] RecipesPipeline v0.6.12\n [731186ca] RecursiveArrayTools v3.23.1\n [f2c3362d] RecursiveFactorization v0.2.23\n [189a3867] Reexport v1.2.2\n [05181044] RelocatableFolders v1.0.1\n [ae029012] Requires v1.3.0\n [7e49a35a] RuntimeGeneratedFunctions v0.5.13\n [94e857df] SIMDTypes v0.1.0\n [476501e8] SLEEFPirates v0.6.43\n [322a6be2] Sass v0.2.0\n [0bca4576] SciMLBase v2.42.0\n [c0aeaf25] SciMLOperators v0.3.8\n [53ae85a6] SciMLStructures v1.4.1\n [6c6a2e73] Scratch v1.2.1\n [91c51154] SentinelArrays v1.4.3\n [efcf1570] Setfield v1.1.1\n [992d4aef] Showoff v1.0.3\n [777ac1f9] SimpleBufferStream v1.1.0\n [727e6d20] SimpleNonlinearSolve v1.10.1\n [699a6c99] SimpleTraits v0.9.4\n [ce78b400] SimpleUnPack v1.1.0\n [a2af1166] SortingAlgorithms v1.2.1\n [47a9eef4] SparseDiffTools v2.19.0\n [0a514795] SparseMatrixColorings v0.3.3\n [e56a9233] Sparspak v0.3.9\n [276daf66] SpecialFunctions v2.4.0\n [aedffcd0] Static v1.1.0\n [0d7ed370] StaticArrayInterface v1.5.1\n [90137ffa] StaticArrays v1.9.6\n [1e83bf80] StaticArraysCore v1.4.3\n [82ae8749] StatsAPI v1.7.0\n [2913bbd2] StatsBase v0.34.3\n [7792a7ef] StrideArraysCore v0.5.7\n [69024149] StringEncodings v0.3.7\n [892a3eda] StringManipulation v0.3.4\n [856f2bd8] StructTypes v1.10.0\n [c3572dad] Sundials v4.24.0\n [2efcf032] SymbolicIndexingInterface v0.3.22\n [3783bdb8] TableTraits v1.0.1\n [bd369af6] Tables v1.11.1\n [62fd8b95] TensorCore v0.1.1\n [5d786b92] TerminalLoggers v0.1.7\n [8290d209] ThreadingUtilities v0.5.2\n⌅ [9e3dc215] TimeSeries v0.23.2\n [a759f4b9] TimerOutputs v0.5.24\n⌅ [3bb67fe8] TranscodingStreams v0.10.10\n [d5829a12] TriangularSolve v0.2.1\n [410a4b4d] Tricks v0.1.8\n [781d530d] TruncatedStacktraces v1.4.0\n [5c2747f8] URIs v1.5.1\n [3a884ed6] UnPack v1.0.2\n [1cfade01] UnicodeFun v0.4.1\n [b8865327] UnicodePlots v3.6.4\n [1986cc42] Unitful v1.20.0\n [45397f5d] UnitfulLatexify v1.6.3\n [41fe7b60] Unzip v0.2.0\n [3d5dd08c] VectorizationBase v0.21.70\n [19fa3120] VertexSafeGraphs v0.2.0\n [ea10d353] WeakRefStrings v1.4.2\n [76eceee3] WorkerUtilities v1.6.1\n [ddb6d928] YAML v0.4.11\n [0b7ba130] Blosc_jll v1.21.5+0\n [6e34b625] Bzip2_jll v1.0.8+1\n [83423d85] Cairo_jll v1.18.0+2\n [2702e6a9] EpollShim_jll v0.0.20230411+0\n [2e619515] Expat_jll v2.6.2+0\n⌅ [b22a6f82] FFMPEG_jll v4.4.2+2\n [a3f928ae] Fontconfig_jll v2.13.96+0\n [d7e528f0] FreeType2_jll v2.13.2+0\n [559328eb] FriBidi_jll v1.0.14+0\n [0656b61e] GLFW_jll v3.4.0+0\n⌅ [d2c73de3] GR_jll v0.73.5+0\n [78b55507] Gettext_jll v0.21.0+0\n [7746bdde] Glib_jll v2.80.2+0\n [3b182d85] Graphite2_jll v1.3.14+0\n [528830af] Gumbo_jll v0.10.2+0\n⌃ [0234f1f7] HDF5_jll v1.12.2+2\n [2e76f6c2] HarfBuzz_jll v2.8.1+1\n [1d5cc7b8] IntelOpenMP_jll v2024.1.0+0\n [aacddb02] JpegTurbo_jll v3.0.3+0\n [c1c5ebd0] LAME_jll v3.100.2+0\n⌅ [88015f11] LERC_jll v3.0.0+1\n [1d63c593] LLVMOpenMP_jll v15.0.7+0\n [dd4b983a] LZO_jll v2.10.2+0\n⌅ [e9f186c6] Libffi_jll v3.2.2+1\n [d4300ac3] Libgcrypt_jll v1.8.11+0\n [7e76a0d4] Libglvnd_jll v1.6.0+0\n [7add5ba3] Libgpg_error_jll v1.49.0+0\n [94ce4f54] Libiconv_jll v1.17.0+0\n [4b2f31a3] Libmount_jll v2.40.1+0\n⌅ [89763e89] Libtiff_jll v4.5.1+1\n [38a345b3] Libuuid_jll v2.40.1+0\n [5ced341a] Lz4_jll v1.9.4+0\n [856f044c] MKL_jll v2024.1.0+0\n [e7412a2a] Ogg_jll v1.3.5+1\n⌅ [9bd350c2] OpenSSH_jll v8.9.0+1\n⌅ [458c3c95] OpenSSL_jll v1.1.23+0\n [efe28fd5] OpenSpecFun_jll v0.5.5+0\n [91d4177d] Opus_jll v1.3.2+0\n [30392449] Pixman_jll v0.43.4+0\n⌅ [c0090381] Qt6Base_jll v6.5.2+2\n⌅ [fb77eaff] Sundials_jll v5.2.2+0\n [a44049a8] Vulkan_Loader_jll v1.3.243+0\n [a2964d1f] Wayland_jll v1.21.0+1\n [2381bf8a] Wayland_protocols_jll v1.31.0+0\n [02c8fc9c] XML2_jll v2.13.1+0\n [aed1982a] XSLT_jll v1.1.41+0\n [ffd25f8a] XZ_jll v5.4.6+0\n [f67eecfb] Xorg_libICE_jll v1.1.1+0\n [c834827a] Xorg_libSM_jll v1.2.4+0\n [4f6342f7] Xorg_libX11_jll v1.8.6+0\n [0c0b7dd1] Xorg_libXau_jll v1.0.11+0\n [935fb764] Xorg_libXcursor_jll v1.2.0+4\n [a3789734] Xorg_libXdmcp_jll v1.1.4+0\n [1082639a] Xorg_libXext_jll v1.3.6+0\n [d091e8ba] Xorg_libXfixes_jll v5.0.3+4\n [a51aa0fd] Xorg_libXi_jll v1.7.10+4\n [d1454406] Xorg_libXinerama_jll v1.1.4+4\n [ec84b674] Xorg_libXrandr_jll v1.5.2+4\n [ea2f1a96] Xorg_libXrender_jll v0.9.11+0\n [14d82f49] Xorg_libpthread_stubs_jll v0.1.1+0\n [c7cfdc94] Xorg_libxcb_jll v1.17.0+0\n [cc61e674] Xorg_libxkbfile_jll v1.1.2+0\n [e920d4aa] Xorg_xcb_util_cursor_jll v0.1.4+0\n [12413925] Xorg_xcb_util_image_jll v0.4.0+1\n [2def613f] Xorg_xcb_util_jll v0.4.0+1\n [975044d2] Xorg_xcb_util_keysyms_jll v0.4.0+1\n [0d47668e] Xorg_xcb_util_renderutil_jll v0.3.9+1\n [c22f9ab0] Xorg_xcb_util_wm_jll v0.4.1+1\n [35661453] Xorg_xkbcomp_jll v1.4.6+0\n [33bec58e] Xorg_xkeyboard_config_jll v2.39.0+0\n [c5fb5394] Xorg_xtrans_jll v1.5.0+0\n [3161d3a3] Zstd_jll v1.5.6+0\n [35ca27e7] eudev_jll v3.2.9+0\n⌅ [214eeab7] fzf_jll v0.43.0+0\n [1a1c6b14] gperf_jll v3.1.1+0\n [a4ae2306] libaom_jll v3.9.0+0\n [0ac62f75] libass_jll v0.15.1+0\n [2db6ffa8] libevdev_jll v1.11.0+0\n [f638f0a6] libfdk_aac_jll v2.0.2+0\n [36db933b] libinput_jll v1.18.0+0\n [b53b4c65] libpng_jll v1.6.43+1\n [47bcb7c8] libsass_jll v3.6.6+0\n [f27f6e37] libvorbis_jll v1.3.7+1\n [009596ad] mtdev_jll v1.1.6+0\n [1317d2d5] oneTBB_jll v2021.12.0+0\n [1270edf5] x264_jll v2021.5.5+0\n [dfaa095f] x265_jll v3.5.0+0\n [d8fb68d0] xkbcommon_jll v1.4.1+1\n [0dad84c5] ArgTools v1.1.1\n [56f22d72] Artifacts\n [2a0f44e3] Base64\n [ade2ca70] Dates\n [8ba89e20] Distributed\n [f43a241f] Downloads v1.6.0\n [7b1f6079] FileWatching\n [9fa8497b] Future\n [b77e0a4c] InteractiveUtils\n [4af54fe1] LazyArtifacts\n [b27032c2] LibCURL v0.6.4\n [76f85450] LibGit2\n [8f399da3] Libdl\n [37e2e46d] LinearAlgebra\n [56ddb016] Logging\n [d6f4376e] Markdown\n [a63ad114] Mmap\n [ca575930] NetworkOptions v1.2.0\n [44cfe95a] Pkg v1.10.0\n [de0858da] Printf\n [3fa0cd96] REPL\n [9a3f8284] Random\n [ea8e919c] SHA v0.7.0\n [9e88b42a] Serialization\n [1a1011a3] SharedArrays\n [6462fe0b] Sockets\n [2f01184e] SparseArrays v1.10.0\n [10745b16] Statistics v1.10.0\n [4607b0f0] SuiteSparse\n [fa267f1f] TOML v1.0.3\n [a4e569a6] Tar v1.10.0\n [8dfed614] Test\n [cf7118a7] UUIDs\n [4ec0a83e] Unicode\n [e66e0078] CompilerSupportLibraries_jll v1.1.1+0\n [deac9b47] LibCURL_jll v8.4.0+0\n [e37daf67] LibGit2_jll v1.6.4+0\n [29816b5a] LibSSH2_jll v1.11.0+1\n [c8ffd9c3] MbedTLS_jll v2.28.2+1\n [14a3606d] MozillaCACerts_jll v2023.1.10\n [4536629a] OpenBLAS_jll v0.3.23+4\n [05823500] OpenLibm_jll v0.8.1+2\n [efcefdf7] PCRE2_jll v10.42.0+1\n [bea87d4a] SuiteSparse_jll v7.2.1+1\n [83775a58] Zlib_jll v1.2.13+1\n [8e850b90] libblastrampoline_jll v5.8.0+1\n [8e850ede] nghttp2_jll v1.52.0+1\n [3f19e933] p7zip_jll v17.4.0+2\nInfo Packages marked with ⌃ and ⌅ have new versions available. Those with ⌃ may be upgradable, but those with ⌅ are restricted by compatibility constraints from upgrading. To see why use `status --outdated -m`\n"},"internal":{"uuid":{"value":"ee977c52-0991-4aff-88b3-3d7e17ddd612"},"ext":{},"units_info":null},"time_series_compression_enabled":false,"components":[{"base_power":100.0,"shaft":{"internal":{"uuid":{"value":"b329e974-65d3-41b6-9dda-3f03d8f1528a"},"ext":null,"units_info":null},"n_states":2,"ext":{},"D":2.0,"states":["δ","ω"],"H":3.148,"__metadata__":{"module":"PowerSystems","type":"SingleMass"}},"states":["δ","ω"],"name":"generator-102-1","n_states":2,"ω_ref":1.0,"__metadata__":{"parameters":["BaseMachine","SingleMass","AVRFixed","TGFixed","PSSFixed"],"module":"PowerSystems","type":"DynamicGenerator"},"avr":{"states_types":[],"internal":{"uuid":{"value":"dbe03821-c615-4f03-a08f-cbb24f8a55e6"},"ext":null,"units_info":null},"n_states":0,"ext":{},"V_ref":1.0,"states":[],"Vf":0.0,"__metadata__":{"module":"PowerSystems","type":"AVRFixed"}},"internal":{"uuid":{"value":"4efc9a28-9ff9-4f46-a063-38338f66dd5a"},"ext":null,"units_info":null},"ext":{},"machine":{"internal":{"uuid":{"value":"d1e3fdd4-36d6-4503-9f4e-f2053cd75f13"},"ext":null,"units_info":null},"n_states":0,"ext":{},"Xd_p":0.2995,"eq_p":0.7087,"R":0.0,"states":[],"__metadata__":{"module":"PowerSystems","type":"BaseMachine"}},"pss":{"V_pss":0.0,"internal":{"uuid":{"value":"00dd1b7a-4be7-40d7-90fe-27cc4a2c13e3"},"ext":null,"units_info":null},"n_states":0,"ext":{},"states":[],"__metadata__":{"module":"PowerSystems","type":"PSSFixed"}},"prime_mover":{"P_ref":1.0,"internal":{"uuid":{"value":"0942eef5-9b9d-4758-b937-cc1211bca1fe"},"ext":null,"units_info":null},"efficiency":1.0,"n_states":0,"ext":{},"states":[],"__metadata__":{"module":"PowerSystems","type":"TGFixed"}}},{"internal":{"uuid":{"value":"efa28278-3404-4f9f-9350-481db704e5cc"},"ext":null,"units_info":null},"to":{"value":"c8f042d0-cec8-478d-a625-6ca3fb9c3a45"},"from":{"value":"315fc427-86c7-45bb-9557-ab28ddc04030"},"__metadata__":{"module":"PowerSystems","type":"Arc"}},{"internal":{"uuid":{"value":"4a01defa-53d0-4e3e-8446-b8640212acf2"},"ext":null,"units_info":null},"to":{"value":"ede59753-1e57-4dcc-adaf-cff527ab3193"},"from":{"value":"315fc427-86c7-45bb-9557-ab28ddc04030"},"__metadata__":{"module":"PowerSystems","type":"Arc"}},{"internal":{"uuid":{"value":"46f3b14b-e797-4269-a394-8332914b3cb7"},"ext":null,"units_info":null},"to":{"value":"c8f042d0-cec8-478d-a625-6ca3fb9c3a45"},"from":{"value":"ede59753-1e57-4dcc-adaf-cff527ab3193"},"__metadata__":{"module":"PowerSystems","type":"Arc"}},{"base_power":100.0,"services":[],"bus":{"value":"315fc427-86c7-45bb-9557-ab28ddc04030"},"max_constant_active_power":0.5,"available":true,"time_series_container":[],"name":"load1011","max_current_active_power":0.0,"constant_active_power":0.5,"dynamic_injector":null,"__metadata__":{"module":"PowerSystems","type":"StandardLoad"},"current_active_power":0.0,"current_reactive_power":0.0,"internal":{"uuid":{"value":"0ba0966b-c064-43e3-b134-ba50c6f34ae9"},"ext":null,"units_info":null},"ext":{},"max_constant_reactive_power":0.1,"max_current_reactive_power":0.0,"impedance_reactive_power":0.0,"impedance_active_power":0.0,"max_impedance_active_power":0.0,"constant_reactive_power":0.1,"max_impedance_reactive_power":0.0},{"base_power":100.0,"services":[],"bus":{"value":"c8f042d0-cec8-478d-a625-6ca3fb9c3a45"},"max_constant_active_power":0.3,"available":true,"time_series_container":[],"name":"load1031","max_current_active_power":0.0,"constant_active_power":0.3,"dynamic_injector":null,"__metadata__":{"module":"PowerSystems","type":"StandardLoad"},"current_active_power":0.0,"current_reactive_power":0.0,"internal":{"uuid":{"value":"2fabf55a-3cc0-43ca-be95-26112e990264"},"ext":null,"units_info":null},"ext":{},"max_constant_reactive_power":0.1,"max_current_reactive_power":0.0,"impedance_reactive_power":0.0,"impedance_active_power":0.0,"max_impedance_active_power":0.0,"constant_reactive_power":0.1,"max_impedance_reactive_power":0.0},{"base_power":100.0,"services":[],"bus":{"value":"ede59753-1e57-4dcc-adaf-cff527ab3193"},"max_constant_active_power":1.0,"available":true,"time_series_container":[],"name":"load1021","max_current_active_power":0.0,"constant_active_power":1.0,"dynamic_injector":null,"__metadata__":{"module":"PowerSystems","type":"StandardLoad"},"current_active_power":0.0,"current_reactive_power":0.0,"internal":{"uuid":{"value":"71baded6-43f9-4171-a47c-f5b36993621b"},"ext":null,"units_info":null},"ext":{},"max_constant_reactive_power":0.3,"max_current_reactive_power":0.0,"impedance_reactive_power":0.0,"impedance_active_power":0.0,"max_impedance_active_power":0.0,"constant_reactive_power":0.3,"max_impedance_reactive_power":0.0},{"base_power":100.0,"prime_mover_type":"OT","rating":3.333526661060325,"services":[],"bus":{"value":"ede59753-1e57-4dcc-adaf-cff527ab3193"},"available":true,"time_series_container":[],"name":"generator-102-1","status":true,"active_power":0.7,"dynamic_injector":{"value":"4efc9a28-9ff9-4f46-a063-38338f66dd5a"},"__metadata__":{"module":"PowerSystems","type":"ThermalStandard"},"fuel":"OTHER","internal":{"uuid":{"value":"7bbd99fd-dcc9-4bad-b13f-946331176c44"},"ext":null,"units_info":null},"reactive_power_limits":{"min":-1.0,"max":1.0},"ext":{"z_source":{"r":0.0,"x":1.0}},"operation_cost":{"start_up":0.0,"fixed":0.0,"shut_down":0.0,"variable":{"cost":[0.0,1.0]},"__metadata__":{"module":"PowerSystems","type":"ThreePartCost"}},"time_limits":null,"must_run":false,"ramp_limits":{"up":3.18,"down":3.18},"time_at_status":10000.0,"active_power_limits":{"min":0.0,"max":3.18},"reactive_power":0.0},{"base_power":100.0,"prime_mover_type":"OT","rating":3.333526661060325,"services":[],"bus":{"value":"c8f042d0-cec8-478d-a625-6ca3fb9c3a45"},"available":true,"time_series_container":[],"name":"generator-103-1","status":true,"active_power":0.8,"dynamic_injector":null,"__metadata__":{"module":"PowerSystems","type":"ThermalStandard"},"fuel":"OTHER","internal":{"uuid":{"value":"68bec775-a81f-4b42-9781-964d781d6b3f"},"ext":null,"units_info":null},"reactive_power_limits":{"min":-1.0,"max":1.0},"ext":{"z_source":{"r":0.0,"x":1.0}},"operation_cost":{"start_up":0.0,"fixed":0.0,"shut_down":0.0,"variable":{"cost":[0.0,1.0]},"__metadata__":{"module":"PowerSystems","type":"ThreePartCost"}},"time_limits":null,"must_run":false,"ramp_limits":{"up":3.18,"down":3.18},"time_at_status":10000.0,"active_power_limits":{"min":0.0,"max":3.18},"reactive_power":0.0},{"services":[],"x":0.12,"b":{"from":0.1,"to":0.1},"r":0.01,"rate":2.5,"available":true,"time_series_container":[],"name":"BUS 1-BUS 3-i_1","reactive_power_flow":0.0,"arc":{"value":"efa28278-3404-4f9f-9350-481db704e5cc"},"__metadata__":{"module":"PowerSystems","type":"Line"},"internal":{"uuid":{"value":"afb9be7d-dfb0-4bc3-8feb-2cefafbb0d26"},"ext":null,"units_info":null},"ext":{},"active_power_flow":0.0,"angle_limits":{"min":-1.0472,"max":1.0472}},{"services":[],"x":0.12,"b":{"from":0.1,"to":0.1},"r":0.01,"rate":2.5,"available":true,"time_series_container":[],"name":"BUS 1-BUS 2-i_1","reactive_power_flow":0.0,"arc":{"value":"4a01defa-53d0-4e3e-8446-b8640212acf2"},"__metadata__":{"module":"PowerSystems","type":"Line"},"internal":{"uuid":{"value":"ab76da62-08f7-4ec7-a8fe-89bef3dc57ea"},"ext":null,"units_info":null},"ext":{},"active_power_flow":0.0,"angle_limits":{"min":-1.0472,"max":1.0472}},{"services":[],"x":0.9,"b":{"from":0.5,"to":0.5},"r":0.02,"rate":2.5,"available":true,"time_series_container":[],"name":"BUS 2-BUS 3-i_1","reactive_power_flow":0.0,"arc":{"value":"46f3b14b-e797-4269-a394-8332914b3cb7"},"__metadata__":{"module":"PowerSystems","type":"Line"},"internal":{"uuid":{"value":"9b7f61b8-76ab-4a1c-9af9-42f02a12f19f"},"ext":null,"units_info":null},"ext":{},"active_power_flow":0.0,"angle_limits":{"min":-1.0472,"max":1.0472}},{"load_response":0.0,"name":"1","__metadata__":{"module":"PowerSystems","type":"Area"},"internal":{"uuid":{"value":"c5b4cabd-6401-4e01-b21c-b265707c634e"},"ext":null,"units_info":null},"peak_active_power":0.0,"peak_reactive_power":0.0,"time_series_container":[]},{"number":103,"base_voltage":138.0,"bustype":"PV","angle":0.0,"name":"BUS 3","magnitude":1.0059,"__metadata__":{"module":"PowerSystems","type":"ACBus"},"internal":{"uuid":{"value":"c8f042d0-cec8-478d-a625-6ca3fb9c3a45"},"ext":null,"units_info":null},"area":{"value":"c5b4cabd-6401-4e01-b21c-b265707c634e"},"ext":{},"voltage_limits":{"min":0.9,"max":1.1},"load_zone":{"value":"b2104e49-f43d-419a-97a1-b188f99a787b"}},{"number":101,"base_voltage":138.0,"bustype":"REF","angle":0.0,"name":"BUS 1","magnitude":1.02,"__metadata__":{"module":"PowerSystems","type":"ACBus"},"internal":{"uuid":{"value":"315fc427-86c7-45bb-9557-ab28ddc04030"},"ext":null,"units_info":null},"area":{"value":"c5b4cabd-6401-4e01-b21c-b265707c634e"},"ext":{},"voltage_limits":{"min":0.9,"max":1.1},"load_zone":{"value":"b2104e49-f43d-419a-97a1-b188f99a787b"}},{"number":102,"base_voltage":138.0,"bustype":"PV","angle":0.0,"name":"BUS 2","magnitude":1.0142,"__metadata__":{"module":"PowerSystems","type":"ACBus"},"internal":{"uuid":{"value":"ede59753-1e57-4dcc-adaf-cff527ab3193"},"ext":null,"units_info":null},"area":{"value":"c5b4cabd-6401-4e01-b21c-b265707c634e"},"ext":{},"voltage_limits":{"min":0.9,"max":1.1},"load_zone":{"value":"b2104e49-f43d-419a-97a1-b188f99a787b"}},{"__metadata__":{"module":"PowerSystems","type":"LoadZone"},"name":"1","internal":{"uuid":{"value":"b2104e49-f43d-419a-97a1-b188f99a787b"},"ext":null,"units_info":null},"peak_active_power":1.8,"peak_reactive_power":0.5,"time_series_container":[]},{"internal_voltage":1.0,"services":[],"bus":{"value":"315fc427-86c7-45bb-9557-ab28ddc04030"},"available":true,"name":"InfBus","internal_angle":0.0,"active_power":0.0,"dynamic_injector":null,"__metadata__":{"module":"PowerSystems","type":"Source"},"internal":{"uuid":{"value":"eef2be48-e520-4956-91ef-2ed4d430105d"},"ext":null,"units_info":null},"ext":{},"X_th":5.0e-6,"R_th":0.0,"reactive_power":0.0}],"validation_descriptor_file":"modified_sys_validation_descriptors.json","time_series_params":{"__metadata__":{"module":"InfrastructureSystems","type":"TimeSeriesParameters"},"resolution":{"value":0,"type":"Minute"},"forecast_params":{"initial_timestamp":"0001-01-01T00:00:00.0","interval":{"value":0,"type":"Minute"},"horizon":0,"count":0,"__metadata__":{"module":"InfrastructureSystems","type":"ForecastParameters"}}}},"units_settings":{"base_value":100.0,"unit_system":"SYSTEM_BASE"},"frequency":60.0,"runchecks":true,"metadata":{"name":null,"description":null,"__metadata__":{"module":"PowerSystems","type":"SystemMetadata"}},"data_format_version":"3.0.0"} \ No newline at end of file diff --git a/previews/PR383/tutorials/modified_sys_metadata.json b/previews/PR383/tutorials/modified_sys_metadata.json new file mode 100644 index 000000000..edfb83aaf --- /dev/null +++ b/previews/PR383/tutorials/modified_sys_metadata.json @@ -0,0 +1,46 @@ +{ + "name": "", + "description": "", + "frequency": 60, + "time_series_resolution_milliseconds": 0, + "component_counts": [ + { + "type": "ACBus", + "count": 3 + }, + { + "type": "Arc", + "count": 3 + }, + { + "type": "Area", + "count": 1 + }, + { + "type": "DynamicGenerator", + "count": 1 + }, + { + "type": "Line", + "count": 3 + }, + { + "type": "LoadZone", + "count": 1 + }, + { + "type": "Source", + "count": 1 + }, + { + "type": "StandardLoad", + "count": 3 + }, + { + "type": "ThermalStandard", + "count": 2 + } + ], + "time_series_counts": [ + ] +} \ No newline at end of file diff --git a/previews/PR383/tutorials/modified_sys_validation_descriptors.json b/previews/PR383/tutorials/modified_sys_validation_descriptors.json new file mode 100644 index 000000000..ba401f09a --- /dev/null +++ b/previews/PR383/tutorials/modified_sys_validation_descriptors.json @@ -0,0 +1 @@ +{"struct_validation_descriptors":[{"fields":[{"name":"variable","data_type":"VariableCost","null_value":"VariableCost((0.0, 0.0))","comment":"variable cost"},{"name":"fixed","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"fixed cost","valid_range":{"max":null,"min":0}}],"docstring":"Data Structure Operational Cost Data in two parts: fixed and variable cost.","struct_name":"TwoPartCost","supertype":"OperationalCost"},{"fields":[{"name":"variable","data_type":"VariableCost","null_value":"VariableCost((0.0, 0.0))","comment":"variable cost"},{"name":"fixed","data_type":"Float64","null_value":"0.0","comment":"fixed cost"},{"name":"start_up","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"start-up cost","valid_range":{"max":null,"min":0}},{"name":"shut_down","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"shut-down cost","valid_range":{"max":null,"min":0}}],"docstring":"Data Structure Operational Cost Data in Three parts fixed, variable cost and start - stop costs.","struct_name":"ThreePartCost","supertype":"OperationalCost"},{"fields":[{"name":"variable","default":"VariableCost((0.0, 0.0))","data_type":"VariableCost","null_value":"VariableCost((0.0, 0.0))","comment":"variable cost"},{"name":"fixed","default":"0.0","data_type":"Float64","null_value":"0.0","comment":"fixed cost"},{"name":"start_up","default":"0.0","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"start-up cost","valid_range":{"max":null,"min":0}},{"name":"shut_down","default":"0.0","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"shut-down cost","valid_range":{"max":null,"min":0}},{"name":"energy_shortage_cost","default":"0.0","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Cost incurred by the model for being short of the energy target.","valid_range":{"max":null,"min":0}},{"name":"energy_surplus_cost","default":"0.0","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Cost incurred by the model for surplus energy stored.","valid_range":{"max":null,"min":0}}],"docstring":"Data Structure for Operational Cost Data like variable cost and start - stop costs and energy storage cost.","struct_name":"StorageManagementCost","supertype":"OperationalCost"},{"fields":[{"name":"no_load","data_type":"Float64","null_value":"0.0","comment":"no load cost"},{"name":"start_up","data_type":"NamedTuple{(:hot, :warm, :cold), NTuple{3, Float64}}","null_value":"(hot = START_COST, warm = START_COST, cold = START_COST)","comment":"start-up cost at different stages of the thermal cycle. Warm is also refered as intermediate in some markets"},{"name":"shut_down","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"shut-down cost","valid_range":{"max":null,"min":0}},{"name":"variable","default":"nothing","data_type":"Union{Nothing, IS.TimeSeriesKey}","null_value":"nothing","comment":"Variable Cost TimeSeriesKey"},{"name":"ancillary_services","default":"Vector{Service}()","data_type":"Vector{Service}","null_value":"Vector{Service}()","comment":"Bids for the ancillary services"}],"docstring":"Data Structure Operational Cost to reflect market bids of energy and ancilliary services.\nCompatible with most US Market bidding mechanisms","struct_name":"MarketBidCost","supertype":"OperationalCost"},{"fields":[{"name":"variable","data_type":"VariableCost","null_value":"VariableCost((0.0, 0.0))","comment":"variable cost"},{"name":"no_load","data_type":"Float64","null_value":"0.0","comment":"no load cost"},{"name":"fixed","data_type":"Float64","null_value":"0.0","comment":"fixed cost"},{"name":"start_up","data_type":"NamedTuple{(:hot, :warm, :cold), NTuple{3, Float64}}","null_value":"(hot = START_COST, warm = START_COST, cold = START_COST)","comment":"start-up cost"},{"name":"shut_down","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"shut-down cost","valid_range":{"max":null,"min":0}}],"docstring":"Data Structure Operational Cost Data which includes fixed, variable cost, multiple start up cost and stop costs.","struct_name":"MultiStartCost","supertype":"OperationalCost"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"peak_active_power","needs_conversion":true,"default":"0.0","data_type":"Float64","null_value":"0.0"},{"name":"peak_reactive_power","needs_conversion":true,"default":"0.0","data_type":"Float64","null_value":"0.0"},{"name":"load_response","default":"0.0","data_type":"Float64","null_value":"0.0"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"A collection of buses for control purposes.","struct_name":"Area","supertype":"AggregationTopology"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"peak_active_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"peak_reactive_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"A collection of buses for electricity price analysis.","struct_name":"LoadZone","supertype":"AggregationTopology"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"active_power_flow_limits","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)"},{"name":"violation_penalty","default":"INFINITE_COST","data_type":"Float64","null_value":"0.0","comment":"Penalty for violating the flow limits in the interface"},{"name":"direction_mapping","default":"Dict{String, Int}()","data_type":"Dict{String, Int}","null_value":"Dict{String, Int}()","comment":"Map to set of multiplier to the flow in the line for cases when the line has a reverse direction with respect to the interface"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"A collection of branches that make up an interface or corridor for the transfer of power.","struct_name":"TransmissionInterface","supertype":"Service"},{"inner_constructor_check":"check_bus_params","fields":[{"name":"number","data_type":"Int","null_value":"0","comment":"number associated with the bus"},{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init","comment":"the name of the bus"},{"name":"bustype","data_type":"Union{Nothing, ACBusTypes}","null_value":"nothing","comment":"bus type"},{"name":"angle","data_type":"Union{Nothing, Float64}","null_value":"0.0","validation_action":"error","comment":"angle of the bus in radians","valid_range":{"max":1.571,"min":-1.571}},{"name":"magnitude","data_type":"Union{Nothing, Float64}","null_value":"0.0","validation_action":"warn","comment":"voltage as a multiple of basevoltage","valid_range":"voltage_limits"},{"name":"voltage_limits","data_type":"Union{Nothing, MinMax}","null_value":"(min=0.0, max=0.0)","comment":"limits on the voltage variation as multiples of basevoltage"},{"name":"base_voltage","data_type":"Union{Nothing, Float64}","null_value":"nothing","validation_action":"error","comment":"the base voltage in kV","valid_range":{"max":null,"min":0}},{"name":"area","default":"nothing","data_type":"Union{Nothing, Area}","null_value":"nothing","comment":"the area containing the bus"},{"name":"load_zone","default":"nothing","data_type":"Union{Nothing, LoadZone}","null_value":"nothing","comment":"the load zone containing the bus"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"A power-system bus.","struct_name":"ACBus","supertype":"Bus"},{"fields":[{"name":"number","data_type":"Int","null_value":"0","comment":"number associated with the DC bus"},{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init","comment":"the name of the DC bus"},{"name":"magnitude","data_type":"Union{Nothing, Float64}","null_value":"0.0","validation_action":"warn","comment":"voltage as a multiple of basevoltage","valid_range":"voltage_limits"},{"name":"voltage_limits","data_type":"Union{Nothing, MinMax}","null_value":"(min=0.0, max=0.0)","comment":"limits on the voltage variation as multiples of basevoltage"},{"name":"base_voltage","data_type":"Union{Nothing, Float64}","null_value":"nothing","validation_action":"error","comment":"the base voltage in kV","valid_range":{"max":null,"min":0}},{"name":"area","default":"nothing","data_type":"Union{Nothing, Area}","null_value":"nothing","comment":"the area containing the DC bus"},{"name":"load_zone","default":"nothing","data_type":"Union{Nothing, LoadZone}","null_value":"nothing","comment":"the load zone containing the DC bus"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"A power-system DC bus.","struct_name":"DCBus","supertype":"Bus"},{"fields":[{"name":"from","data_type":"Bus","null_value":"ACBus(nothing)","comment":"The initial bus"},{"name":"to","data_type":"Bus","null_value":"ACBus(nothing)","comment":"The terminal bus"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"A topological Arc.","struct_name":"Arc","supertype":"Topology","custom_code":"get_name(arc::Arc) = (get_name ∘ get_from)(arc) * \" -> \" * (get_name ∘ get_to)(arc)"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"active_power_flow","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"reactive_power_flow","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"arc","data_type":"Arc","null_value":"Arc(ACBus(nothing), ACBus(nothing))"},{"name":"r","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"System per-unit value","valid_range":{"max":4,"min":0}},{"name":"x","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"System per-unit value","valid_range":{"max":4,"min":0}},{"name":"b","data_type":"FromTo","null_value":"(from=0.0, to=0.0)","validation_action":"warn","comment":"System per-unit value","valid_range":{"max":100,"min":0}},{"name":"rate","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"angle_limits","data_type":"MinMax","null_value":"(min=-1.571, max=1.571)","validation_action":"error","valid_range":{"max":1.571,"min":-1.571}},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"struct_name":"Line","supertype":"ACBranch"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"active_power_flow","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"reactive_power_flow","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"arc","data_type":"Arc","null_value":"Arc(ACBus(nothing), ACBus(nothing))"},{"name":"r","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"System per-unit value","valid_range":{"max":4,"min":0}},{"name":"x","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"System per-unit value","valid_range":{"max":4,"min":0}},{"name":"b","data_type":"FromTo","null_value":"(from=0.0, to=0.0)","validation_action":"warn","comment":"System per-unit value","valid_range":{"max":2,"min":0}},{"name":"flow_limits","needs_conversion":true,"data_type":"FromTo_ToFrom","null_value":"(from_to=0.0, to_from=0.0)","comment":"throw warning above max SIL"},{"name":"rate","needs_conversion":true,"data_type":"Float64","null_value":"0.0","comment":"compare to SIL (warn) (theoretical limit)"},{"name":"angle_limits","data_type":"MinMax","null_value":"(min=-1.571, max=1.571)","validation_action":"error","valid_range":{"max":1.571,"min":-1.571}},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"struct_name":"MonitoredLine","supertype":"ACBranch"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"active_power_flow","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"reactive_power_flow","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"arc","data_type":"Arc","null_value":"Arc(ACBus(nothing), ACBus(nothing))"},{"name":"r","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"System per-unit value","valid_range":{"max":4,"min":0}},{"name":"x","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"System per-unit value","valid_range":{"max":4,"min":-2}},{"name":"primary_shunt","Comment":"System per-unit value","data_type":"Float64","null_value":"0.0","validation_action":"warn","valid_range":{"max":2,"min":0}},{"name":"tap","data_type":"Float64","null_value":"1.0","validation_action":"error","valid_range":{"max":2,"min":0}},{"name":"α","data_type":"Float64","null_value":"0.0","validation_action":"warn","valid_range":{"max":1.571,"min":-1.571}},{"name":"rate","needs_conversion":true,"data_type":"Union{Nothing, Float64}","null_value":"0.0","validation_action":"error","valid_range":{"max":null,"min":0}},{"name":"phase_angle_limits","default":"(min=-1.571, max=1.571)","data_type":"MinMax","null_value":"(min=-1.571, max=1.571)","validation_action":"error","valid_range":{"max":1.571,"min":-1.571}},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"struct_name":"PhaseShiftingTransformer","supertype":"ACBranch"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"active_power_flow","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"reactive_power_flow","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"arc","data_type":"Arc","null_value":"Arc(ACBus(nothing), ACBus(nothing))"},{"name":"r","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"System per-unit value","valid_range":{"max":2,"min":-2}},{"name":"x","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"System per-unit value","valid_range":{"max":4,"min":-2}},{"name":"primary_shunt","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"System per-unit value","valid_range":{"max":2,"min":0}},{"name":"tap","data_type":"Float64","null_value":"1.0","validation_action":"error","valid_range":{"max":2,"min":0}},{"name":"rate","needs_conversion":true,"data_type":"Union{Nothing, Float64}","null_value":"0.0","validation_action":"error","valid_range":{"max":null,"min":0}},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"struct_name":"TapTransformer","supertype":"ACBranch"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"active_power_flow","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"reactive_power_flow","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"arc","data_type":"Arc","null_value":"Arc(ACBus(nothing), ACBus(nothing))"},{"name":"r","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"System per-unit value","valid_range":{"max":4,"min":-2}},{"name":"x","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"System per-unit value","valid_range":{"max":4,"min":-2}},{"name":"primary_shunt","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"System per-unit value","valid_range":{"max":2,"min":0}},{"name":"rate","needs_conversion":true,"data_type":"Union{Nothing, Float64}","null_value":"nothing","validation_action":"error","valid_range":{"max":null,"min":0}},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"The 2-W transformer model uses an equivalent circuit assuming the impedance is on the High Voltage Side of the transformer. The model allocates the iron losses and magnetizing susceptance to the primary side.","struct_name":"Transformer2W","supertype":"ACBranch"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"active_power_flow","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"arc","data_type":"Arc","null_value":"Arc(ACBus(nothing), ACBus(nothing))"},{"name":"active_power_limits_from","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)"},{"name":"active_power_limits_to","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)"},{"name":"reactive_power_limits_from","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)"},{"name":"reactive_power_limits_to","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)"},{"name":"loss","data_type":"NamedTuple{(:l0, :l1), Tuple{Float64, Float64}}","null_value":"(l0=0.0, l1=0.0)"},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"a High voltage DC line.","struct_name":"TwoTerminalHVDCLine","supertype":"ACBranch"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"active_power_flow","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"arc","data_type":"Arc","null_value":"Arc(ACBus(nothing), ACBus(nothing))"},{"name":"rectifier_tap_limits","data_type":"MinMax","null_value":"(min=0.0, max=0.0)"},{"name":"rectifier_xrc","data_type":"Float64","null_value":"0.0"},{"name":"rectifier_firing_angle","data_type":"MinMax","null_value":"(min=0.0, max=0.0)"},{"name":"inverter_tap_limits","data_type":"MinMax","null_value":"(min=0.0, max=0.0)"},{"name":"inverter_xrc","data_type":"Float64","null_value":"0.0"},{"name":"inverter_firing_angle","data_type":"MinMax","null_value":"(min=0.0, max=0.0)"},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"As implemented in Milano's Book, Page 397.","struct_name":"TwoTerminalVSCDCLine","supertype":"ACBranch"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"active_power_flow","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"arc","data_type":"Arc","null_value":"Arc(DCBus(nothing), DCBus(nothing))"},{"name":"r","data_type":"Float64","null_value":"0.0","comment":"Series Resistance system per-unit value"},{"name":"l","data_type":"Float64","null_value":"0.0","comment":"Series Inductance system per-unit value"},{"name":"c","data_type":"Float64","null_value":"0.0","comment":"Shunt capacitance system per-unit value"},{"name":"active_power_limits_from","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)"},{"name":"active_power_limits_to","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)"},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"a HVDC T-Model DC line.","struct_name":"TModelHVDCLine","supertype":"DCBranch"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"bus","data_type":"ACBus","null_value":"ACBus(nothing)"},{"name":"active_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"reactive_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"max_active_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"max_reactive_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"base_power","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Base power of the unit in MVA","valid_range":{"max":null,"min":0}},{"name":"operation_cost","data_type":"TwoPartCost","null_value":"TwoPartCost(nothing)","comment":"Operation Cost of Generation [`TwoPartCost`](@ref)"},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"dynamic_injector","default":"nothing","data_type":"Union{Nothing, DynamicInjection}","exclude_setter":true,"null_value":"nothing","comment":"corresponding dynamic injection device"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"struct_name":"InterruptiblePowerLoad","supertype":"ControllableLoad"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"bus","data_type":"ACBus","null_value":"ACBus(nothing)"},{"name":"Y","data_type":"Complex{Float64}","null_value":"0.0","comment":"System per-unit value"},{"name":"dynamic_injector","default":"nothing","data_type":"Union{Nothing, DynamicInjection}","exclude_setter":true,"null_value":"nothing","comment":"corresponding dynamic injection model for admittance"},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"struct_name":"FixedAdmittance","supertype":"ElectricLoad"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"bus","data_type":"ACBus","null_value":"ACBus(nothing)"},{"name":"Y","data_type":"Complex{Float64}","null_value":"0.0","comment":"Initial impedance at N = 0"},{"name":"number_of_steps","default":"0","data_type":"Int","null_value":"0","comment":"Number of steps for adjustable shunt"},{"name":"Y_increase","default":"0","data_type":"Complex{Float64}","null_value":"0","comment":"Admittance increment for each of step increase"},{"name":"dynamic_injector","default":"nothing","data_type":"Union{Nothing, DynamicInjection}","exclude_setter":true,"null_value":"nothing","comment":"corresponding dynamic injection model for admittance"},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"struct_name":"SwitchedAdmittance","supertype":"ElectricLoad"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"bus","data_type":"ACBus","null_value":"ACBus(nothing)"},{"name":"active_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"reactive_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"base_power","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Base power of the unit in MVA","valid_range":{"max":null,"min":0}},{"name":"max_active_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"max_reactive_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"dynamic_injector","default":"nothing","data_type":"Union{Nothing, DynamicInjection}","exclude_setter":true,"null_value":"nothing","comment":"corresponding dynamic injection device"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Data structure for a static power load.","struct_name":"PowerLoad","supertype":"StaticLoad"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"bus","data_type":"ACBus","null_value":"ACBus(nothing)"},{"name":"base_power","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Base power of the unit in MVA","valid_range":{"max":null,"min":0}},{"name":"constant_active_power","needs_conversion":true,"default":"0.0","data_type":"Float64","null_value":"0.0"},{"name":"constant_reactive_power","needs_conversion":true,"default":"0.0","data_type":"Float64","null_value":"0.0"},{"name":"impedance_active_power","needs_conversion":true,"default":"0.0","data_type":"Float64","null_value":"0.0"},{"name":"impedance_reactive_power","needs_conversion":true,"default":"0.0","data_type":"Float64","null_value":"0.0"},{"name":"current_active_power","needs_conversion":true,"default":"0.0","data_type":"Float64","null_value":"0.0"},{"name":"current_reactive_power","needs_conversion":true,"default":"0.0","data_type":"Float64","null_value":"0.0"},{"name":"max_constant_active_power","needs_conversion":true,"default":"0.0","data_type":"Float64","null_value":"0.0"},{"name":"max_constant_reactive_power","needs_conversion":true,"default":"0.0","data_type":"Float64","null_value":"0.0"},{"name":"max_impedance_active_power","needs_conversion":true,"default":"0.0","data_type":"Float64","null_value":"0.0"},{"name":"max_impedance_reactive_power","needs_conversion":true,"default":"0.0","data_type":"Float64","null_value":"0.0"},{"name":"max_current_active_power","needs_conversion":true,"default":"0.0","data_type":"Float64","null_value":"0.0"},{"name":"max_current_reactive_power","needs_conversion":true,"default":"0.0","data_type":"Float64","null_value":"0.0"},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"dynamic_injector","default":"nothing","data_type":"Union{Nothing, DynamicInjection}","exclude_setter":true,"null_value":"nothing","comment":"corresponding dynamic injection device"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Data structure for a standard load.","struct_name":"StandardLoad","supertype":"StaticLoad"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"bus","data_type":"ACBus","null_value":"ACBus(nothing)"},{"name":"active_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"reactive_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"active_power_coefficient","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Coefficient relating voltage dependence for power P = P0 * V^α","valid_range":{"max":null,"min":0}},{"name":"reactive_power_coefficient","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Coefficient relating voltage dependence for power Q = Q0 * V^β","valid_range":{"max":null,"min":0}},{"name":"base_power","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Base power of the unit in MVA","valid_range":{"max":null,"min":0}},{"name":"max_active_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"max_reactive_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"dynamic_injector","default":"nothing","data_type":"Union{Nothing, DynamicInjection}","exclude_setter":true,"null_value":"nothing","comment":"corresponding dynamic injection device"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Data structure for a static exponential load.","struct_name":"ExponentialLoad","supertype":"StaticLoad"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"R_s","data_type":"Float64","null_value":0,"comment":"Armature stator resistance","valid_range":{"max":null,"min":0}},{"name":"R_r","data_type":"Float64","null_value":0,"comment":"Rotor resistance","valid_range":{"max":null,"min":0}},{"name":"X_ls","data_type":"Float64","null_value":0,"comment":"Stator Leakage Reactance","valid_range":{"max":null,"min":0}},{"name":"X_lr","data_type":"Float64","null_value":0,"comment":"Rotor Leakage Reactance","valid_range":{"max":null,"min":0}},{"name":"X_m","data_type":"Float64","null_value":0,"comment":"Stator-Rotor Mutual Reactance","valid_range":{"max":null,"min":0}},{"name":"H","data_type":"Float64","null_value":0,"comment":"Motor Inertia Constant [s]","valid_range":{"max":null,"min":0}},{"name":"A","data_type":"Float64","null_value":"0.0","comment":"Torque-Speed Quadratic Term","valid_range":{"max":1,"min":0}},{"name":"B","data_type":"Float64","null_value":"0.0","comment":"Torque-Speed Linear Term","valid_range":{"max":1,"min":0}},{"name":"base_power","data_type":"Float64","null_value":0,"comment":"Base power","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"C","data_type":"Float64","comment":"Torque-Speed Constant Term","internal_default":"PowerSystems.calculate_IM_torque_params(A, B)"},{"name":"τ_ref","data_type":"Float64","comment":"Reference torque parameter","internal_default":"1.0"},{"name":"B_shunt","data_type":"Float64","comment":"Susceptance Initialization Corrector Term","internal_default":"0.0"},{"name":"X_ad","data_type":"Float64","comment":"Equivalent d-axis reactance","internal_default":"(1.0 / X_m + 1.0 / X_ls + 1.0 / X_lr)^(-1)"},{"name":"X_aq","data_type":"Float64","comment":"Equivalent q-axis reactance","internal_default":"X_ad"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tψ_qs: stator flux in the q-axis,\n\tψ_ds: stator flux in the d-axis,\n\tψ_qr: rotor flux in the q-axis,\n\tψ_dr: rotor flux in the d-axis, \n\tωr: Rotor speed [pu],","internal_default":"[:ψ_qs, :ψ_ds, :ψ_qr, :ψ_dr, :ωr]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"SingleCageInductionMachine has 5 states","internal_default":5},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of 5-states three-phase single cage induction machine with quadratic torque-speed relationship.","struct_name":"SingleCageInductionMachine","supertype":"DynamicInjection"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"R_s","data_type":"Float64","null_value":0,"comment":"Armature stator resistance","valid_range":{"max":null,"min":0}},{"name":"R_r","data_type":"Float64","null_value":0,"comment":"Rotor resistance","valid_range":{"max":null,"min":0}},{"name":"X_ls","data_type":"Float64","null_value":0,"comment":"Stator Leakage Reactance","valid_range":{"max":null,"min":0}},{"name":"X_lr","data_type":"Float64","null_value":0,"comment":"Rotor Leakage Reactance","valid_range":{"max":null,"min":0}},{"name":"X_m","data_type":"Float64","null_value":0,"comment":"Stator-Rotor Mutual Reactance","valid_range":{"max":null,"min":0}},{"name":"H","data_type":"Float64","null_value":0,"comment":"Motor Inertia Constant [s]","valid_range":{"max":null,"min":0}},{"name":"A","data_type":"Float64","null_value":"0.0","comment":"Torque-Speed Quadratic Term","valid_range":{"max":1,"min":0}},{"name":"B","data_type":"Float64","null_value":"0.0","comment":"Torque-Speed Linear Term","valid_range":{"max":1,"min":0}},{"name":"base_power","data_type":"Float64","null_value":0,"comment":"Base power","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"C","data_type":"Float64","comment":"Torque-Speed Constant Term","internal_default":"PowerSystems.calculate_IM_torque_params(A, B)"},{"name":"τ_ref","data_type":"Float64","comment":"Reference torque parameter","internal_default":"1.0"},{"name":"B_shunt","data_type":"Float64","comment":"Susceptance Initialization Corrector Term","internal_default":"0.0"},{"name":"X_ss","data_type":"Float64","comment":"Stator self reactance","internal_default":"X_ls + X_m"},{"name":"X_rr","data_type":"Float64","comment":"Rotor self reactance","internal_default":"X_lr + X_m"},{"name":"X_p","data_type":"Float64","comment":"Transient reactance","internal_default":"X_ss - X_m^2 / X_rr"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tψ_qr: rotor flux in the q-axis,\n\tψ_dr: rotor flux in the d-axis, \n\tωr: Rotor speed [pu],","internal_default":"[:ψ_qr, :ψ_dr, :ωr]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"SimplifiedSingleCageInductionMachine has 3 states","internal_default":3},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of 3-states three-phase single cage induction machine with quadratic torque-speed relationship.","struct_name":"SimplifiedSingleCageInductionMachine","supertype":"DynamicInjection"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"a","data_type":"Float64","null_value":0,"comment":"Active power static exponential coefficient","valid_range":{"max":null,"min":0}},{"name":"b","data_type":"Float64","null_value":0,"comment":"Reactive power static exponential coefficient","valid_range":{"max":null,"min":0}},{"name":"α","data_type":"Float64","null_value":0,"comment":"Active power transient exponential coefficient","valid_range":{"max":null,"min":0}},{"name":"β","data_type":"Float64","null_value":0,"comment":"Reactive power transient exponential coefficient","valid_range":{"max":null,"min":0}},{"name":"T_p","data_type":"Float64","null_value":0,"comment":"Active Power Time Constant","valid_range":{"max":null,"min":0}},{"name":"T_q","data_type":"Float64","null_value":0,"comment":"Reactive Power Time Constant","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"base_power","data_type":"Float64","comment":"Base Power","internal_default":"100.0"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tx_p: Integrator state of the active power,\n\tx_q: Integrator state of the reactive power,","internal_default":"[:x_p, :x_q]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"DynamicExponentialLoad has 2 states","internal_default":2},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of 2-states of a generic dynamic load model based on VOLTAGE STABILITY ANALYSIS USING GENERIC DYNAMIC LOAD MODELS by W. Xu and Y. Mansour, IEEE Transactions on Power Systems, 1994.","struct_name":"DynamicExponentialLoad","supertype":"DynamicInjection"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"r_load","data_type":"Float64","null_value":0,"comment":"DC-side resistor","valid_range":{"max":null,"min":0}},{"name":"c_dc","data_type":"Float64","null_value":0,"comment":"DC-side capacitor","valid_range":{"max":null,"min":0}},{"name":"rf","data_type":"Float64","null_value":0,"comment":"Converter side filter resistance","valid_range":{"max":null,"min":0}},{"name":"lf","data_type":"Float64","null_value":0,"comment":"Converter side filter inductance","valid_range":{"max":null,"min":0}},{"name":"cf","data_type":"Float64","null_value":0,"comment":"AC Converter filter capacitance","valid_range":{"max":null,"min":0}},{"name":"rg","data_type":"Float64","null_value":0,"comment":"Network side filter resistance","valid_range":{"max":null,"min":0}},{"name":"lg","data_type":"Float64","null_value":0,"comment":"Network side filter inductance","valid_range":{"max":null,"min":0}},{"name":"kp_pll","data_type":"Float64","null_value":0,"comment":"Proportional constant for PI-PLL block","valid_range":{"max":null,"min":0}},{"name":"ki_pll","data_type":"Float64","null_value":0,"comment":"Integral constant for PI-PLL block","valid_range":{"max":null,"min":0}},{"name":"kpv","data_type":"Float64","null_value":0,"comment":"Proportional constant for Voltage Control block","valid_range":{"max":null,"min":0}},{"name":"kiv","data_type":"Float64","null_value":0,"comment":"Integral constant for Voltage Control block","valid_range":{"max":null,"min":0}},{"name":"kpc","data_type":"Float64","null_value":0,"comment":"Proportional constant for Current Control block","valid_range":{"max":null,"min":0}},{"name":"kic","data_type":"Float64","null_value":0,"comment":"Integral constant for Current Control block","valid_range":{"max":null,"min":0}},{"name":"base_power","data_type":"Float64","null_value":0,"comment":"Base power","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"P_ref","data_type":"Float64","comment":"Reference active power parameter","internal_default":"1.0"},{"name":"Q_ref","data_type":"Float64","comment":"Reference reactive power parameter","internal_default":"1.0"},{"name":"V_ref","data_type":"Float64","comment":"Reference voltage parameter","internal_default":"1.0"},{"name":"ω_ref","data_type":"Float64","comment":"Reference frequency parameter","internal_default":"1.0"},{"name":"is_filter_differential","data_type":"Int","comment":"Boolean to decide if filter states are differential or algebraic","internal_default":"1"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tθ_pll: PLL deviation angle, \n\tϵ_pll: PLL integrator state, \n\tη: DC-voltage controller integrator state, \n\tv_dc: DC voltage at the capacitor, \n\tγd: d-axis Current controller integrator state, \n\tγq: q-axis Current controller integrator state, \n\tir_cnv: Real current out of the converter,\n\tii_cnv: Imaginary current out of the converter,\n\tvr_filter: Real voltage at the filter's capacitor,\n\tvi_filter: Imaginary voltage at the filter's capacitor,\n\tir_filter: Real current out of the filter,\n\tii_filter: Imaginary current out of the filter","internal_default":"[:θ_pll, :ϵ_pll, :η, :v_dc, :γd, :γq, :ir_cnv, :ii_cnv, :vr_filter, :vi_filter, :ir_filter, :ii_filter]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"ActiveConstantPowerLoad has 12 states","internal_default":12},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of 12-states active power load based on the paper Dynamic Stability of a Microgrid With an Active Load from N. Bottrell, M. Prodanovic and T. Green in IEEE Transactions on Power Electronics, 2013.","struct_name":"ActiveConstantPowerLoad","supertype":"DynamicInjection"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"bus","data_type":"ACBus","null_value":"ACBus(nothing)"},{"name":"dc_bus","data_type":"DCBus","null_value":"DCBus(nothing)"},{"name":"active_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Active Power on the DCSide","valid_range":"active_power_limits"},{"name":"rating","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Thermal limited MVA Power Output of the converter. <= Capacity","valid_range":{"max":null,"min":0}},{"name":"active_power_limits","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)"},{"name":"base_power","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Base power of the converter in MVA","valid_range":{"max":null,"min":0}},{"name":"operation_cost","default":"TwoPartCost(0.0, 0.0)","data_type":"OperationalCost","null_value":"TwoPartCost(nothing)","comment":"Operation Cost of Generation [`OperationalCost`](@ref)"},{"name":"efficiency","default":"1.0","data_type":"Float64","null_value":"0.0","comment":"Conversion efficiency from AC Power to DC Power"},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"dynamic_injector","default":"nothing","data_type":"Union{Nothing, DynamicInjection}","exclude_setter":true,"null_value":"nothing","comment":"corresponding dynamic injection device"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Interconnecting Power Converter (IPC) for transforming power from an ACBus to a DCBus","struct_name":"InterconnectingConverter","supertype":"StaticInjection"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"K","data_type":"Float64","null_value":0,"comment":"Gain in pu","valid_range":{"max":null,"min":0}},{"name":"T1","data_type":"Float64","null_value":0,"comment":"Time constant in s","valid_range":{"max":null,"min":0}},{"name":"T2","data_type":"Float64","null_value":0,"comment":"Time constant in s","valid_range":{"max":null,"min":0}},{"name":"T3","data_type":"Float64","null_value":0,"comment":"Time constant in s","valid_range":{"max":null,"min":"eps()"}},{"name":"T4","data_type":"Float64","null_value":0,"comment":"Time constant in s","valid_range":{"max":null,"min":0}},{"name":"T5","data_type":"Float64","null_value":0,"comment":"Time constant in s","valid_range":{"max":null,"min":0}},{"name":"Rmin","data_type":"Float64","null_value":0,"comment":"Reactor minimum Mvar","valid_range":{"max":null,"min":0}},{"name":"Vmax","data_type":"Float64","null_value":0,"comment":"Maximum voltage in pu","valid_range":{"max":null,"min":0}},{"name":"Vmin","data_type":"Float64","null_value":0,"comment":"Minimum voltage in pu","valid_range":{"max":null,"min":0}},{"name":"CBase","data_type":"Float64","null_value":0,"comment":"Capacitor Mvar","valid_range":{"max":null,"min":0}},{"name":"base_power","data_type":"Float64","null_value":0,"comment":"Base power","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"R_th","data_type":"Float64","comment":"Source Thevenin resistance","internal_default":"0.0"},{"name":"X_th","data_type":"Float64","comment":"Source Thevenin reactance","internal_default":"0.0"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tthy: thyristor,\n\tvr1: regulator output 1,\n\tvr2: regulator output 2","internal_default":"[:thy, :vr1, :vr2]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"CSVGN1 has 3 states","internal_default":3},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of static shunt compensator: CSVGN1 in PSSE","struct_name":"CSVGN1","supertype":"DynamicInjection"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"bus","data_type":"ACBus","null_value":"ACBus(nothing)"},{"name":"active_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"reactive_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"warn","valid_range":"reactive_power_limits"},{"name":"rating","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Thermal limited MVA Power Output of the unit. <= Capacity","valid_range":{"max":null,"min":0}},{"name":"prime_mover_type","data_type":"PrimeMovers","null_value":"PrimeMovers.HY","comment":"Prime mover technology according to EIA 923"},{"name":"active_power_limits","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)"},{"name":"reactive_power_limits","needs_conversion":true,"data_type":"Union{Nothing, MinMax}","null_value":"nothing","validation_action":"warn"},{"name":"ramp_limits","needs_conversion":true,"data_type":"Union{Nothing, UpDown}","null_value":"nothing","validation_action":"error","comment":"ramp up and ramp down limits in MW (in component base per unit) per minute","valid_range":{"max":null,"min":0}},{"name":"time_limits","data_type":"Union{Nothing, UpDown}","null_value":"nothing","validation_action":"error","comment":"Minimum up and Minimum down time limits in hours","valid_range":{"max":null,"min":0}},{"name":"base_power","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Base power of the unit in MVA","valid_range":{"max":null,"min":0}},{"name":"storage_capacity","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Maximum storage capacity in the reservoir (units can be p.u-hr or m^3).","valid_range":{"max":null,"min":0}},{"name":"inflow","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Baseline inflow into the reservoir (units can be p.u. or m^3/hr)","valid_range":{"max":null,"min":0}},{"name":"initial_storage","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Initial storage capacity in the reservoir (units can be p.u-hr or m^3).","valid_range":{"max":null,"min":0}},{"name":"operation_cost","default":"TwoPartCost(0.0, 0.0)","data_type":"OperationalCost","null_value":"TwoPartCost(nothing)","comment":"Operation Cost of Generation [`OperationalCost`](@ref)"},{"name":"storage_target","default":"1.0","data_type":"Float64","null_value":"0.0","comment":"Storage target at the end of simulation as ratio of storage capacity."},{"name":"conversion_factor","default":"1.0","data_type":"Float64","null_value":"0.0","comment":"Conversion factor from flow/volume to energy: m^3 -> p.u-hr."},{"name":"time_at_status","default":"INFINITE_TIME","data_type":"Float64","null_value":"INFINITE_TIME"},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"dynamic_injector","default":"nothing","data_type":"Union{Nothing, DynamicInjection}","exclude_setter":true,"null_value":"nothing","comment":"corresponding dynamic injection device"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"struct_name":"HydroEnergyReservoir","supertype":"HydroGen"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"bus","data_type":"ACBus","null_value":"ACBus(nothing)"},{"name":"active_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"reactive_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"warn","valid_range":"reactive_power_limits"},{"name":"rating","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Thermal limited MVA Power Output of the unit. <= Capacity","valid_range":{"max":null,"min":0}},{"name":"prime_mover_type","data_type":"PrimeMovers","null_value":"PrimeMovers.HY","comment":"Prime mover technology according to EIA 923"},{"name":"active_power_limits","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)","validation_action":"warn","valid_range":{"max":null,"min":0}},{"name":"reactive_power_limits","needs_conversion":true,"data_type":"Union{Nothing, MinMax}","null_value":"nothing","validation_action":"warn"},{"name":"ramp_limits","needs_conversion":true,"data_type":"Union{Nothing, UpDown}","null_value":"nothing","validation_action":"error","comment":"ramp up and ramp down limits in MW (in component base per unit) per minute","valid_range":{"max":null,"min":0}},{"name":"time_limits","data_type":"Union{Nothing, UpDown}","null_value":"nothing","validation_action":"error","comment":"Minimum up and Minimum down time limits in hours","valid_range":{"max":null,"min":0}},{"name":"base_power","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Base power of the unit in MVA","valid_range":{"max":null,"min":0}},{"name":"operation_cost","default":"TwoPartCost(0.0, 0.0)","data_type":"OperationalCost","null_value":"TwoPartCost(nothing)","comment":"Operation Cost of Generation [`OperationalCost`](@ref)"},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"dynamic_injector","default":"nothing","data_type":"Union{Nothing, DynamicInjection}","exclude_setter":true,"null_value":"nothing","comment":"corresponding dynamic injection device"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"struct_name":"HydroDispatch","supertype":"HydroGen"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"bus","data_type":"ACBus","null_value":"ACBus(nothing)"},{"name":"active_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"reactive_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"rating","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Thermal limited MVA Power Output of the unit. <= Capacity","valid_range":{"max":null,"min":0}},{"name":"base_power","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Base power of the unit in MVA","valid_range":{"max":null,"min":0}},{"name":"prime_mover_type","data_type":"PrimeMovers","null_value":"PrimeMovers.HY","comment":"Prime mover technology according to EIA 923"},{"name":"active_power_limits","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)","validation_action":"warn","valid_range":{"max":null,"min":0}},{"name":"reactive_power_limits","needs_conversion":true,"data_type":"Union{Nothing, MinMax}","null_value":"nothing","validation_action":"warn"},{"name":"ramp_limits","needs_conversion":true,"data_type":"Union{Nothing, UpDown}","null_value":"nothing","validation_action":"error","comment":"ramp up and ramp down limits in MW (in component base per unit) per minute","valid_range":{"max":null,"min":0}},{"name":"time_limits","data_type":"Union{Nothing, UpDown}","null_value":"nothing","validation_action":"error","comment":"Minimum up and Minimum down time limits in hours","valid_range":{"max":null,"min":0}},{"name":"rating_pump","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Thermal limited MVA Power Withdrawl of the pump. <= Capacity","valid_range":{"max":null,"min":0}},{"name":"active_power_limits_pump","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)"},{"name":"reactive_power_limits_pump","needs_conversion":true,"data_type":"Union{Nothing, MinMax}","null_value":"nothing","validation_action":"warn"},{"name":"ramp_limits_pump","needs_conversion":true,"data_type":"Union{Nothing, UpDown}","null_value":"nothing","validation_action":"error","comment":"ramp up and ramp down limits in MW (in component base per unit) per minute of pump","valid_range":{"max":null,"min":0}},{"name":"time_limits_pump","data_type":"Union{Nothing, UpDown}","null_value":"nothing","validation_action":"error","comment":"Minimum up and Minimum down time limits of pump in hours","valid_range":{"max":null,"min":0}},{"name":"storage_capacity","needs_conversion":true,"data_type":"UpDown","null_value":"(up=0.0, down=0.0)","validation_action":"error","comment":"Maximum storage capacity in the upper and lower reservoirs (units can be p.u-hr or m^3).","valid_range":{"max":null,"min":0}},{"name":"inflow","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Baseline inflow into the upper reservoir (units can be p.u. or m^3/hr)","valid_range":{"max":null,"min":0}},{"name":"outflow","data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Baseline outflow from the lower reservoir (units can be p.u. or m^3/hr)","valid_range":{"max":null,"min":0}},{"name":"initial_storage","needs_conversion":true,"data_type":"UpDown","null_value":"(up=0.0, down=0.0)","validation_action":"error","comment":"Initial storage capacity in the upper and lower reservoir (units can be p.u-hr or m^3).","valid_range":{"max":null,"min":0}},{"name":"storage_target","default":"(up=1.0, down=1.0)","data_type":"UpDown","null_value":"(up=0.0, down=0.0)","comment":"Storage target of upper reservoir at the end of simulation as ratio of storage capacity."},{"name":"operation_cost","default":"TwoPartCost(0.0, 0.0)","data_type":"OperationalCost","null_value":"TwoPartCost(nothing)","comment":"Operation Cost of Generation [`OperationalCost`](@ref)"},{"name":"pump_efficiency","default":"1.0","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Efficiency of pump","valid_range":{"max":1,"min":0}},{"name":"conversion_factor","default":"1.0","data_type":"Float64","null_value":"0.0","comment":"Conversion factor from flow/volume to energy: m^3 -> p.u-hr."},{"name":"time_at_status","default":"INFINITE_TIME","data_type":"Float64","null_value":"INFINITE_TIME"},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"dynamic_injector","default":"nothing","data_type":"Union{Nothing, DynamicInjection}","exclude_setter":true,"null_value":"nothing","comment":"corresponding dynamic injection device"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"struct_name":"HydroPumpedStorage","supertype":"HydroGen"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"bus","data_type":"ACBus","null_value":"ACBus(nothing)"},{"name":"active_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"reactive_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"rating","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Thermal limited MVA Power Output of the unit. <= Capacity","valid_range":{"max":null,"min":0}},{"name":"prime_mover_type","data_type":"PrimeMovers","null_value":"PrimeMovers.OT","comment":"Prime mover technology according to EIA 923"},{"name":"reactive_power_limits","needs_conversion":true,"data_type":"Union{Nothing, MinMax}","null_value":"nothing"},{"name":"power_factor","data_type":"Float64","null_value":"1.0","validation_action":"error","valid_range":{"max":1,"min":0}},{"name":"operation_cost","data_type":"TwoPartCost","null_value":"TwoPartCost(nothing)","comment":"Operation Cost of Generation [`TwoPartCost`](@ref)"},{"name":"base_power","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Base power of the unit in MVA","valid_range":{"max":null,"min":0}},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"dynamic_injector","default":"nothing","data_type":"Union{Nothing, DynamicInjection}","exclude_setter":true,"null_value":"nothing","comment":"corresponding dynamic injection device"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"struct_name":"RenewableDispatch","supertype":"RenewableGen"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"bus","data_type":"ACBus","null_value":"ACBus(nothing)"},{"name":"active_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"reactive_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"rating","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Thermal limited MVA Power Output of the unit. <= Capacity","valid_range":{"max":null,"min":0}},{"name":"prime_mover_type","data_type":"PrimeMovers","null_value":"PrimeMovers.OT","comment":"Prime mover technology according to EIA 923"},{"name":"power_factor","data_type":"Float64","null_value":"1.0","validation_action":"error","valid_range":{"max":1,"min":0}},{"name":"base_power","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Base power of the unit in MVA","valid_range":{"max":null,"min":0}},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"dynamic_injector","default":"nothing","data_type":"Union{Nothing, DynamicInjection}","exclude_setter":true,"null_value":"nothing","comment":"corresponding dynamic injection device"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Data Structure for fixed renewable generation technologies.","struct_name":"RenewableFix","supertype":"RenewableGen"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"status","data_type":"Bool","null_value":"false"},{"name":"bus","data_type":"ACBus","null_value":"ACBus(nothing)"},{"name":"active_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"warn","valid_range":"active_power_limits"},{"name":"reactive_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"warn","valid_range":"reactive_power_limits"},{"name":"rating","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Thermal limited MVA Power Output of the unit. <= Capacity","valid_range":{"max":null,"min":0}},{"name":"active_power_limits","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)","validation_action":"warn","valid_range":{"max":null,"min":0}},{"name":"reactive_power_limits","needs_conversion":true,"data_type":"Union{Nothing, MinMax}","null_value":"nothing"},{"name":"ramp_limits","needs_conversion":true,"data_type":"Union{Nothing, UpDown}","null_value":"nothing","validation_action":"error","comment":"ramp up and ramp down limits in MW (in component base per unit) per minute","valid_range":{"max":null,"min":0}},{"name":"operation_cost","data_type":"OperationalCost","null_value":"ThreePartCost(nothing)"},{"name":"base_power","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Base power of the unit in MVA","valid_range":{"max":null,"min":0}},{"name":"time_limits","default":"nothing","data_type":"Union{Nothing, UpDown}","null_value":"nothing","validation_action":"error","comment":"Minimum up and Minimum down time limits in hours","valid_range":{"max":null,"min":0}},{"name":"must_run","default":"false","data_type":"Bool","null_value":"false"},{"name":"prime_mover_type","default":"PrimeMovers.OT","data_type":"PrimeMovers","null_value":"PrimeMovers.OT","comment":"Prime mover technology according to EIA 923"},{"name":"fuel","default":"ThermalFuels.OTHER","data_type":"ThermalFuels","null_value":"ThermalFuels.OTHER","comment":"Prime mover fuel according to EIA 923"},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"time_at_status","default":"INFINITE_TIME","data_type":"Float64","null_value":"INFINITE_TIME"},{"name":"dynamic_injector","default":"nothing","data_type":"Union{Nothing, DynamicInjection}","exclude_setter":true,"null_value":"nothing","comment":"corresponding dynamic injection device"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Data Structure for thermal generation technologies.","struct_name":"ThermalStandard","supertype":"ThermalGen"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"status","data_type":"Bool","null_value":"false"},{"name":"bus","data_type":"ACBus","null_value":"ACBus(nothing)"},{"name":"active_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"warn","valid_range":"active_power_limits"},{"name":"reactive_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"warn","valid_range":"reactive_power_limits"},{"name":"rating","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Thermal limited MVA Power Output of the unit. <= Capacity","valid_range":{"max":null,"min":0}},{"name":"prime_mover_type","data_type":"PrimeMovers","null_value":"PrimeMovers.OT","comment":"Prime mover technology according to EIA 923"},{"name":"fuel","data_type":"ThermalFuels","null_value":"ThermalFuels.OTHER","comment":"Prime mover fuel according to EIA 923"},{"name":"active_power_limits","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)"},{"name":"reactive_power_limits","needs_conversion":true,"data_type":"Union{Nothing, MinMax}","null_value":"nothing"},{"name":"ramp_limits","needs_conversion":true,"data_type":"Union{Nothing, UpDown}","null_value":"nothing","validation_action":"error","valid_range":{"max":null,"min":0}},{"name":"power_trajectory","needs_conversion":true,"data_type":"Union{Nothing, StartUpShutDown}","null_value":"nothing","validation_action":"error","comment":"Power trajectory the unit will take during the start-up and shut-down ramp process","valid_range":{"max":null,"min":0}},{"name":"time_limits","data_type":"Union{Nothing, UpDown}","null_value":"nothing","validation_action":"error","comment":"Minimum up and Minimum down time limits in hours","valid_range":{"max":null,"min":0}},{"name":"start_time_limits","data_type":"Union{Nothing, NamedTuple{(:hot, :warm, :cold), Tuple{Float64, Float64, Float64}}}","null_value":"nothing","comment":" Time limits for start-up based on turbine temperature in hours"},{"name":"start_types","data_type":"Int","null_value":"1","validation_action":"error","comment":" Number of start-up based on turbine temperature","valid_range":{"max":3,"min":1}},{"name":"operation_cost","data_type":"OperationalCost","null_value":"MultiStartCost(nothing)"},{"name":"base_power","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Base power of the unit in MVA","valid_range":{"max":null,"min":0}},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"time_at_status","default":"INFINITE_TIME","data_type":"Float64","null_value":"INFINITE_TIME"},{"name":"must_run","default":"false","data_type":"Bool","null_value":"false"},{"name":"dynamic_injector","default":"nothing","data_type":"Union{Nothing, DynamicInjection}","exclude_setter":true,"null_value":"nothing","comment":"corresponding dynamic injection device"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Data Structure for thermal generation technologies.","struct_name":"ThermalMultiStart","supertype":"ThermalGen"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"bus","data_type":"ACBus","null_value":"ACBus(nothing)"},{"name":"prime_mover_type","data_type":"PrimeMovers","null_value":"PrimeMovers.BA","comment":"Prime mover technology according to EIA 923"},{"name":"initial_energy","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"State of Charge of the Battery p.u.-hr","valid_range":{"max":null,"min":0}},{"name":"state_of_charge_limits","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)","validation_action":"error","comment":"Maximum and Minimum storage capacity in p.u.-hr","valid_range":{"max":null,"min":0}},{"name":"rating","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"active_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"input_active_power_limits","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)","validation_action":"error","valid_range":{"max":null,"min":0}},{"name":"output_active_power_limits","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)","validation_action":"error","valid_range":{"max":null,"min":0}},{"name":"efficiency","data_type":"NamedTuple{(:in, :out), Tuple{Float64, Float64}}","null_value":"(in=0.0, out=0.0)","validation_action":"warn","valid_range":{"max":1,"min":0}},{"name":"reactive_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"warn","valid_range":"reactive_power_limits"},{"name":"reactive_power_limits","needs_conversion":true,"data_type":"Union{Nothing, MinMax}","null_value":"(min=0.0, max=0.0)"},{"name":"base_power","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Base power of the unit in MVA","valid_range":{"max":null,"min":0}},{"name":"operation_cost","default":"StorageManagementCost()","data_type":"Union{StorageManagementCost, MarketBidCost}","null_value":"StorageManagementCost()"},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"dynamic_injector","default":"nothing","data_type":"Union{Nothing, DynamicInjection}","exclude_setter":true,"null_value":"nothing","comment":"corresponding dynamic injection device"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Data structure for a generic battery","struct_name":"GenericBattery","supertype":"Storage"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"bus","data_type":"ACBus","null_value":"ACBus(nothing)"},{"name":"prime_mover_type","data_type":"PrimeMovers","null_value":"PrimeMovers.BA","comment":"Prime mover technology according to EIA 923"},{"name":"initial_energy","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"State of Charge of the Battery p.u.-hr","valid_range":{"max":null,"min":0}},{"name":"state_of_charge_limits","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)","validation_action":"error","comment":"Maximum and Minimum storage capacity in p.u.-hr","valid_range":{"max":null,"min":0}},{"name":"rating","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"active_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"input_active_power_limits","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)","validation_action":"error","valid_range":{"max":null,"min":0}},{"name":"output_active_power_limits","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)","validation_action":"error","valid_range":{"max":null,"min":0}},{"name":"efficiency","data_type":"NamedTuple{(:in, :out), Tuple{Float64, Float64}}","null_value":"(in=0.0, out=0.0)","validation_action":"warn","valid_range":{"max":1,"min":0}},{"name":"reactive_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"warn","valid_range":"reactive_power_limits"},{"name":"reactive_power_limits","needs_conversion":true,"data_type":"Union{Nothing, MinMax}","null_value":"(min=0.0, max=0.0)"},{"name":"base_power","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Base power of the unit in MVA","valid_range":{"max":null,"min":0}},{"name":"operation_cost","default":"Union{StorageManagementCost, MarketBidCost}","data_type":"StorageManagementCost","null_value":"StorageManagementCost()"},{"name":"storage_target","default":"0.0","data_type":"Float64","null_value":"0.0","comment":"Storage target at the end of simulation as ratio of storage capacity."},{"name":"cycle_limits","default":"1e4","data_type":"Int","null_value":"0","comment":"Storage Maximum number of cycles per year"},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"dynamic_injector","default":"nothing","data_type":"Union{Nothing, DynamicInjection}","exclude_setter":true,"null_value":"nothing","comment":"corresponding dynamic injection device"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Data structure for a battery compatible with energy management formulations.","struct_name":"BatteryEMS","supertype":"Storage"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"time_frame","data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"the saturation time_frame in minutes to provide reserve contribution","valid_range":{"max":null,"min":0}},{"name":"requirement","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"the static value of required reserves in system p.u.","valid_range":{"max":null,"min":0}},{"name":"sustained_time","default":"3600.0","data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"the time in secounds reserve contribution must sustained at a specified level","valid_range":{"max":null,"min":0}},{"name":"max_output_fraction","default":"1.0","data_type":"Float64","null_value":"1.0","validation_action":"error","comment":"the maximum fraction of the device's output that can be assigned to the service","valid_range":{"max":1,"min":0}},{"name":"max_participation_factor","default":"1.0","data_type":"Float64","null_value":"1.0","validation_action":"error","comment":"the maximum limit of reserve contribution per device","valid_range":{"max":1,"min":0}},{"name":"deployed_fraction","default":"0.0","data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Fraction of ancillary services participation deployed from the assignment","valid_range":{"max":1,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Data Structure for a proportional reserve product for system simulations.","parametric":"ReserveDirection","struct_name":"StaticReserve","supertype":"Reserve{T}"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"time_frame","data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"the saturation time_frame in minutes to provide reserve contribution","valid_range":{"max":null,"min":0}},{"name":"requirement","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"the static value of required reserves in system p.u.","valid_range":{"max":null,"min":0}},{"name":"sustained_time","default":"3600.0","data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"the time in secounds reserve contribution must sustained at a specified level","valid_range":{"max":null,"min":0}},{"name":"max_output_fraction","default":"1.0","data_type":"Float64","null_value":"1.0","validation_action":"error","comment":"the maximum fraction of the device's output that can be assigned to the service","valid_range":{"max":1,"min":0}},{"name":"max_participation_factor","default":"1.0","data_type":"Float64","null_value":"1.0","validation_action":"error","comment":"the maximum limit of reserve contribution per device","valid_range":{"max":1,"min":0}},{"name":"deployed_fraction","default":"0.0","data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Fraction of ancillary services participation deployed from the assignment","valid_range":{"max":1,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Data Structure for a non-spinning reserve product for system simulations.","struct_name":"StaticReserveNonSpinning","supertype":"ReserveNonSpinning"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"requirement","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"the static value of required reserves in system p.u.","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"contributing_services","default":"Vector{Service}()","data_type":"Vector{Service}","exclude_setter":true,"null_value":"Vector{Service}()","comment":"Services that contribute for this requirement constraint"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Data Structure for a group reserve product for system simulations.","parametric":"ReserveDirection","struct_name":"StaticReserveGroup","supertype":"Service"},{"fields":[{"name":"variable","data_type":"Union{Nothing, IS.TimeSeriesKey}","null_value":"nothing","comment":"Variable Cost TimeSeriesKey"},{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"time_frame","data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"the saturation time_frame in minutes to provide reserve contribution","valid_range":{"max":null,"min":0}},{"name":"sustained_time","default":"3600.0","data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"the time in secounds reserve contribution must sustained at a specified level","valid_range":{"max":null,"min":0}},{"name":"max_participation_factor","default":"1.0","data_type":"Float64","null_value":"1.0","validation_action":"error","comment":"the maximum limit of reserve contribution per device","valid_range":{"max":1,"min":0}},{"name":"deployed_fraction","default":"0.0","data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Fraction of ancillary services participation deployed from the assignment","valid_range":{"max":1,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Data Structure for a operating reserve with demand curve product for system simulations.","parametric":"ReserveDirection","struct_name":"ReserveDemandCurve","supertype":"Reserve{T}"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"time_frame","data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"the saturation time_frame in minutes to provide reserve contribution","valid_range":{"max":null,"min":0}},{"name":"requirement","data_type":"Float64","null_value":"0.0","comment":"the required quantity of the product should be scaled by a TimeSeriesData"},{"name":"sustained_time","default":"3600.0","data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"the time in secounds reserve contribution must sustained at a specified level","valid_range":{"max":null,"min":0}},{"name":"max_output_fraction","default":"1.0","data_type":"Float64","null_value":"1.0","validation_action":"error","comment":"the maximum fraction of the device's output that can be assigned to the service","valid_range":{"max":1,"min":0}},{"name":"max_participation_factor","default":"1.0","data_type":"Float64","null_value":"1.0","validation_action":"error","comment":"the maximum limit of reserve contribution per device","valid_range":{"max":1,"min":0}},{"name":"deployed_fraction","default":"0.0","data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Fraction of ancillary services participation deployed from the assignment","valid_range":{"max":1,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Data Structure for the procurement products for system simulations.","parametric":"ReserveDirection","struct_name":"VariableReserve","supertype":"Reserve{T}"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"time_frame","data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"the saturation time_frame in minutes to provide reserve contribution","valid_range":{"max":null,"min":0}},{"name":"requirement","needs_conversion":true,"data_type":"Float64","null_value":"0.0","comment":"the required quantity of the product should be scaled by a TimeSeriesData"},{"name":"sustained_time","default":"14400.0","data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"the time in secounds reserve contribution must sustained at a specified level","valid_range":{"max":null,"min":0}},{"name":"max_output_fraction","default":"1.0","data_type":"Float64","null_value":"1.0","validation_action":"error","comment":"the maximum fraction of the device's output that can be assigned to the service","valid_range":{"max":1,"min":0}},{"name":"max_participation_factor","default":"1.0","data_type":"Float64","null_value":"1.0","validation_action":"error","comment":"the maximum limit of reserve contribution per device","valid_range":{"max":1,"min":0}},{"name":"deployed_fraction","default":"0.0","data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Fraction of ancillary services participation deployed from the assignment","valid_range":{"max":1,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Data Structure for the procurement products for system simulations.","struct_name":"VariableReserveNonSpinning","supertype":"ReserveNonSpinning"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"bias","data_type":"Float64","null_value":"0.0"},{"name":"K_p","data_type":"Float64","null_value":"0.0","comment":"PID Proportional Constant"},{"name":"K_i","data_type":"Float64","null_value":"0.0","comment":"PID Integral Constant"},{"name":"K_d","data_type":"Float64","null_value":"0.0","comment":"PID Derrivative Constant"},{"name":"delta_t","data_type":"Float64","null_value":"0.0","comment":"PID Discretization period [Seconds]"},{"name":"area","default":"nothing","data_type":"Union{Nothing, Area}","null_value":"Area(nothing)","comment":"the area controlled by the AGC"},{"name":"initial_ace","default":"0.0","data_type":"Float64","null_value":"0.0","comment":"PID Discretization period [Seconds]"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"struct_name":"AGC","supertype":"Service"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"requirement","data_type":"Float64","null_value":"0.0"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"struct_name":"Transfer","supertype":"Service"},{"fields":[{"name":"Vf","data_type":"Float64","null_value":0,"comment":"Fixed voltage field applied to the rotor winding","valid_range":{"max":null,"min":0}},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"Fixed AVR has no states","internal_default":"Vector{Symbol}()"},{"name":"n_states","data_type":"Int","exclude_setter":true,"null_value":0,"comment":"Fixed AVR has no states","internal_default":0},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"Fixed AVR has no states","internal_default":"Vector{StateTypes}()"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of a AVR that returns a fixed voltage to the rotor winding","struct_name":"AVRFixed","supertype":"AVR"},{"fields":[{"name":"Kv","data_type":"Float64","null_value":0,"comment":"Proportional Gain","valid_range":{"max":null,"min":0}},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tVf: field voltage","internal_default":"[:Vf]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"Fixed AVR has 1 states","internal_default":1},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"Simple AVR has 1 differential states","internal_default":"[StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of a simple proportional AVR in the derivative of EMF\ni.e. an integrator controller on EMF","struct_name":"AVRSimple","supertype":"AVR"},{"fields":[{"name":"Ta_Tb","data_type":"Float64","null_value":0,"comment":"Ratio of lead and lag time constants","valid_range":{"max":null,"min":0}},{"name":"Tb","data_type":"Float64","null_value":0,"comment":"Lag time constant","valid_range":{"max":null,"min":"eps()"}},{"name":"K","data_type":"Float64","null_value":0,"comment":"Gain","valid_range":{"max":null,"min":0}},{"name":"Te","data_type":"Float64","null_value":0,"comment":"Field circuit time constant in s","valid_range":{"max":null,"min":0}},{"name":"V_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Field voltage limits"},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\tVf: Voltage field,\tVr: Lead-lag state","internal_default":"[:Vf, :Vr]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"SEXS has 2 states","internal_default":2},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"SEXS has 2 differential states","internal_default":"[StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of Simplified Excitation System Model - SEXS in PSSE","struct_name":"SEXS","supertype":"AVR"},{"fields":[{"name":"Tr","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Voltage Measurement Time Constant in s","valid_range":{"max":0.5,"min":0}},{"name":"Ka","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Amplifier Gain","valid_range":{"max":500,"min":10}},{"name":"Ta","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Amplifier Time Constant in s","valid_range":{"max":1,"min":0}},{"name":"Tb","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator input Time Constant in s","valid_range":{"max":null,"min":0}},{"name":"Tc","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator input Time Constant in s","valid_range":{"max":null,"min":0}},{"name":"Vr_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Voltage regulator limits (regulator output) (Vi_min, Vi_max)"},{"name":"Ke","data_type":"Float64","null_value":0,"comment":"Exciter constant related to self-excited field","valid_range":{"max":null,"min":0}},{"name":"Te","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Exciter time constant, integration rate associated with exciter control","valid_range":{"max":1,"min":"eps()"}},{"name":"Kf","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Excitation control system stabilizer gain","valid_range":{"max":0.3,"min":"eps()"}},{"name":"Tf","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Excitation control system stabilizer time constant","valid_range":{"max":null,"min":"eps()"}},{"name":"switch","data_type":"Int","null_value":0,"validation_action":"error","comment":"Switch","valid_range":{"max":1,"min":0}},{"name":"E_sat","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter output voltage for saturation factor: (E1, E2)"},{"name":"Se","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter saturation factor at exciter output voltage: (Se(E1), Se(E2))"},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"saturation_coeffs","default":"PowerSystems.get_avr_saturation(E_sat, Se)","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Coefficients (A,B) of the function: Se(V) = B(V - A)^2/V"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tVt: Terminal Voltage,\n\tVr1: input lead lag,\n\tVr2: Regulator Output,\n\tVf: Exciter Output, \n\tVr3: Rate feedback integrator","internal_default":"[:Vt, :Vr1, :Vr2, :Vf, :Vr3]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"The ESDC1A has 5 states","internal_default":5},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"ESDC1A has 5 differential states","internal_default":"[StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Self-excited shunt fields with the voltage regulator operating in a mode commonly termed buck-boost. \nParameters of IEEE Std 421.5 Type DC1A Excitacion System. This model corresponds to ESDC1A in PSSE and PSLF","struct_name":"ESDC1A","supertype":"AVR"},{"fields":[{"name":"Tr","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Voltage Measurement Time Constant in s","valid_range":{"max":0.5,"min":0}},{"name":"Ka","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Amplifier Gain","valid_range":{"max":500,"min":10}},{"name":"Ta","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Amplifier Time Constant in s","valid_range":{"max":1,"min":0}},{"name":"Tb","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator input Time Constant in s","valid_range":{"max":null,"min":0}},{"name":"Tc","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator input Time Constant in s","valid_range":{"max":null,"min":0}},{"name":"Vr_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Voltage regulator limits (regulator output) (Vi_min, Vi_max)"},{"name":"Ke","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Exciter constant related to self-excited field","valid_range":{"max":1,"min":-1}},{"name":"Te","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Exciter time constant, integration rate associated with exciter control","valid_range":{"max":2,"min":"eps()"}},{"name":"Kf","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Excitation control system stabilizer gain","valid_range":{"max":0.3,"min":0}},{"name":"Tf","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Excitation control system stabilizer time constant. Appropiate Data: 5.0 <= Tf/Kf <= 15.0","valid_range":{"max":1.5,"min":"eps()"}},{"name":"switch","data_type":"Int","null_value":0,"validation_action":"error","comment":"Switch","valid_range":{"max":1,"min":0}},{"name":"E_sat","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter output voltage for saturation factor: (E1, E2)"},{"name":"Se","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter saturation factor at exciter output voltage: (Se(E1), Se(E2))"},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"saturation_coeffs","default":"PowerSystems.get_avr_saturation(E_sat, Se)","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Coefficients (A,B) of the function: Se(V) = B(V - A)^2/V"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tVt: Terminal Voltage,\n\tVr1: input lead lag,\n\tVr2: Regulator Output,\n\tVf: Exciter Output, \n\tVr3: Rate feedback integrator","internal_default":"[:Vt, :Vr1, :Vr2, :Vf, :Vr3]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"The ESDC2A has 5 states","internal_default":5},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"ESDC2A has 5 differential states","internal_default":"[StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Is used to represent field-controlled dc commutator exciters with continuously acting voltage regulators having power supplies derived from the generator or auxiliaries bus.\nParameters of IEEE Std 421.5 Type DC2A Excitacion System. This model corresponds to ESDC2A in PSSE and PSLF","struct_name":"ESDC2A","supertype":"AVR"},{"fields":[{"name":"Tr","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Voltage Measurement Time Constant in s","valid_range":{"max":0.5,"min":0}},{"name":"Ka","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Amplifier Gain","valid_range":{"max":500,"min":10}},{"name":"Ta","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Amplifier Time Constant in s","valid_range":{"max":1,"min":0}},{"name":"Vr_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Voltage regulator limits (regulator output) (Vi_min, Vi_max)"},{"name":"Ke","data_type":"Float64","null_value":0,"comment":"Exciter constant related to self-excited field","valid_range":{"max":1,"min":-1}},{"name":"Te","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Exciter time constant, integration rate associated with exciter control","valid_range":{"max":1,"min":"eps()"}},{"name":"Kf","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Excitation control system stabilizer gain","valid_range":{"max":0.3,"min":"eps()"}},{"name":"Tf","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Excitation control system stabilizer time constant. Appropiate Data: 5 <= Tf/Kf <= 15","valid_range":{"max":null,"min":"eps()"}},{"name":"switch","data_type":"Int","null_value":0,"validation_action":"error","comment":"Switch","valid_range":{"max":1,"min":0}},{"name":"E_sat","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter output voltage for saturation factor: (E1, E2)"},{"name":"Se","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter saturation factor at exciter output voltage: (Se(E1), Se(E2))"},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"saturation_coeffs","default":"PowerSystems.get_avr_saturation(E_sat, Se)","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Coefficients (A,B) of the function: Se(V) = B(V - A)^2/V"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tVt: Terminal Voltage,\n\tVr: Regulator Output,\n\tVf: Exciter Output, \n\tVr3: Rate feedback integrator","internal_default":"[:Vt, :Vr1, :Vf, :Vr2]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"The IEEET1 has 4 states","internal_default":4},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"IEEET1 I has 4 differential states","internal_default":"[StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"1968 IEEE type 1 excitation system model","struct_name":"IEEET1","supertype":"AVR"},{"fields":[{"name":"Ka","data_type":"Float64","null_value":0,"comment":"Amplifier Gain","valid_range":{"max":null,"min":0}},{"name":"Ke","data_type":"Float64","null_value":0,"comment":"Field circuit integral deviation","valid_range":{"max":null,"min":0}},{"name":"Kf","data_type":"Float64","null_value":0,"comment":"Stabilizer Gain in s * pu/pu","valid_range":{"max":null,"min":0}},{"name":"Ta","data_type":"Float64","null_value":0,"comment":"Amplifier Time Constant in s","valid_range":{"max":null,"min":0}},{"name":"Te","data_type":"Float64","null_value":0,"comment":"Field Circuit Time Constant in s","valid_range":{"max":null,"min":0}},{"name":"Tf","data_type":"Float64","null_value":0,"comment":"Stabilizer Time Constant in s","valid_range":{"max":null,"min":0}},{"name":"Tr","data_type":"Float64","null_value":0,"comment":"Voltage Measurement Time Constant in s","valid_range":{"max":null,"min":0}},{"name":"Va_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limits for pi controler `(Va_min, Va_max)`"},{"name":"Ae","data_type":"Float64","null_value":0,"comment":"1st ceiling coefficient","valid_range":{"max":null,"min":0}},{"name":"Be","data_type":"Float64","null_value":0,"comment":"2nd ceiling coefficient","valid_range":{"max":null,"min":0}},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tVf: Voltage field,\n\tVr1: Amplifier State,\n\tVr2: Stabilizing Feedback State,\n\tVm: Measured voltage","internal_default":"[:Vf, :Vr1, :Vr2, :Vm]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"The AVR Type I has 4 states","internal_default":4},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"AVR Type I has 4 differential states","internal_default":"[StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of an Automatic Voltage Regulator Type I - Resembles IEEE Type DC1","struct_name":"AVRTypeI","supertype":"AVR"},{"fields":[{"name":"K0","data_type":"Float64","null_value":0,"comment":"Regulator Gain","valid_range":{"max":null,"min":0}},{"name":"T1","data_type":"Float64","null_value":0,"comment":"First Pole in s","valid_range":{"max":null,"min":0}},{"name":"T2","data_type":"Float64","null_value":0,"comment":"First zero in s","valid_range":{"max":null,"min":0}},{"name":"T3","data_type":"Float64","null_value":0,"comment":"First Pole in s","valid_range":{"max":null,"min":0}},{"name":"T4","data_type":"Float64","null_value":0,"comment":"First zero in s","valid_range":{"max":null,"min":0}},{"name":"Te","data_type":"Float64","null_value":0,"comment":"Field Circuit Time Constant in s","valid_range":{"max":null,"min":0}},{"name":"Tr","data_type":"Float64","null_value":0,"comment":"Voltage Measurement Time Constant in s","valid_range":{"max":null,"min":0}},{"name":"Va_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limits for pi controler `(Va_min, Va_max)`"},{"name":"Ae","data_type":"Float64","null_value":0,"comment":"1st ceiling coefficient","valid_range":{"max":null,"min":0}},{"name":"Be","data_type":"Float64","null_value":0,"comment":"2nd ceiling coefficient","valid_range":{"max":null,"min":0}},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tVf: Voltage field,\n\tVr1: First Lead-Lag state,\n\tVr2: Second lead-lag state,\n\tVm: Measured voltage","internal_default":"[:Vf, :Vr1, :Vr2, :Vm]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"AVR Type II has 4 states","internal_default":4},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"AVR Type II has 4 differential states","internal_default":"[StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of an Automatic Voltage Regulator Type II - Typical static exciter model","struct_name":"AVRTypeII","supertype":"AVR"},{"fields":[{"name":"Ta_Tb","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Lead input constant ratio","valid_range":{"max":0.3,"min":0.05}},{"name":"Tb","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Lag input constant in s","valid_range":{"max":20,"min":5}},{"name":"K","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator Gain","valid_range":{"max":100,"min":20}},{"name":"Te","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator Time Constant","valid_range":{"max":1,"min":0}},{"name":"Efd_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Field Voltage regulator limits (regulator output) (Efd_min, Efd_max)"},{"name":"switch","data_type":"Int","null_value":0,"validation_action":"error","comment":"Switch","valid_range":{"max":1,"min":0}},{"name":"rc_rfd","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Field current capability. Set = 0 for negative current capability. Typical value 10","valid_range":{"max":10,"min":0}},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tVr1: First integrator,\n\tVr2: Second integrator","internal_default":"[:Vr1, :Vr2]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"SCRX has 2 states","internal_default":2},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"SCRX has 2 differential states","internal_default":"[StateTypes.Differential, StateTypes.Hybrid]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"This exciter is based on an IEEE type SCRX solid state exciter. The output field voltage is varied by a control system to maintain the system voltage at Vref. Please note that this exciter model has no initialization capabilities - this means that it will respond to whatever inputs it receives regardless of the state of the machine model.","struct_name":"SCRX","supertype":"AVR"},{"fields":[{"name":"Tr","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator input filter time constant in s","valid_range":{"max":0.5,"min":0}},{"name":"Tb","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator denominator (lag) time constant in s","valid_range":{"max":20,"min":0}},{"name":"Tc","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator numerator (lead) time constant in s","valid_range":{"max":20,"min":0}},{"name":"Ka","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator output gain","valid_range":{"max":1000,"min":0}},{"name":"Ta","data_type":"Float64","null_value":0,"comment":"Regulator output time constant in s","valid_range":{"max":10,"min":0}},{"name":"Va_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limits for regulator output `(Va_min, Va_max)`"},{"name":"Te","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Exciter field time constant in s","valid_range":{"max":2,"min":"eps()"}},{"name":"Kf","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Rate feedback excitation system stabilizer gain","valid_range":{"max":0.3,"min":0}},{"name":"Tf","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Rate feedback time constant","valid_range":{"max":1.5,"min":"eps()"}},{"name":"Kc","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Rectifier loading factor proportional to commutating reactance","valid_range":{"max":1,"min":0}},{"name":"Kd","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Demagnetizing factor, function of exciter alternator reactances","valid_range":{"max":1,"min":0}},{"name":"Ke","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Exciter field proportional constant","valid_range":{"max":1,"min":0}},{"name":"E_sat","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter output voltage for saturation factor: (E1, E2)"},{"name":"Se","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter saturation factor at exciter output voltage: (Se(E1), Se(E2))"},{"name":"Vr_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limits for exciter field voltage: `(Vr_min, Vr_max)`"},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"saturation_coeffs","default":"PowerSystems.get_avr_saturation(E_sat, Se)","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Coefficients (A,B) of the function: Se(x) = B(x - A)^2/x"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tVm: Sensed terminal voltage,\n\tVr1: Lead-lag state,\n\tVr2: Regulator output state,\n\tVe: Integrator output state,\n\tVr3: Feedback output state","internal_default":"[:Vm, :Vr1, :Vr2, :Ve, :Vr3]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"ESAC1A has 5 states","internal_default":5},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"ESAC1A has 5 states","internal_default":"[StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"This excitation systems consists of an alternator main exciter feeding its output via non-controlled rectifiers.\nThe exciter does not employ self-excitation, and the voltage regulator power is taken from a source that is not affected by external transients.\nParameters of IEEE Std 421.5 Type AC1A Excitacion System. This model corresponds to ESAC1A in PSSE and PSLF","struct_name":"ESAC1A","supertype":"AVR"},{"fields":[{"name":"Tr","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator input filter time constant in s","valid_range":{"max":0.5,"min":0}},{"name":"Tb","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator denominator (lag) time constant in s","valid_range":{"max":20,"min":0}},{"name":"Tc","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator numerator (lead) time constant in s","valid_range":{"max":20,"min":0}},{"name":"Ka","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator output gain","valid_range":{"max":1000,"min":0}},{"name":"Ta","data_type":"Float64","null_value":0,"comment":"Regulator output time constant in s","valid_range":{"max":10,"min":0}},{"name":"Va_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limits for regulator output `(Va_min, Va_max)`"},{"name":"Te","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Exciter field time constant in s","valid_range":{"max":2,"min":"eps()"}},{"name":"Kf","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Rate feedback excitation system stabilizer gain","valid_range":{"max":0.3,"min":0}},{"name":"Tf","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Rate feedback time constant","valid_range":{"max":1.5,"min":"eps()"}},{"name":"Kc","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Rectifier loading factor proportional to commutating reactance","valid_range":{"max":1,"min":0}},{"name":"Kd","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Demagnetizing factor, function of exciter alternator reactances","valid_range":{"max":1,"min":0}},{"name":"Ke","data_type":"Float64","null_value":0,"comment":"Exciter field proportional constant","valid_range":{"max":1,"min":0}},{"name":"E_sat","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter output voltage for saturation factor: (E1, E2)"},{"name":"Se","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter saturation factor at exciter output voltage: (Se(E1), Se(E2))"},{"name":"Vr_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limits for exciter field voltage: `(Vr_min, Vr_max)`"},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"saturation_coeffs","default":"PowerSystems.get_avr_saturation(E_sat, Se)","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Coefficients (A,B) of the function: Se(x) = B(x - A)^2/x"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tVm: Sensed terminal voltage,\n\tVr1: Lead-lag state,\n\tVr2: Regulator output state,\n\tVe: Integrator output state,\n\tVr3: Feedback output state","internal_default":"[:Vm, :Vr1, :Vr2, :Ve, :Vr3]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"EXAC1A has 5 states","internal_default":5},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"EXAC1A has 5 states","internal_default":"[StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Modified ESAC1A. This excitation systems consists of an alternator main exciter feeding its output via non-controlled rectifiers.\nThe exciter does not employ self-excitation, and the voltage regulator power is taken from a source that is not affected by external transients.\nParameters of IEEE Std 421.5 Type AC1A Excitacion System. EXAC1A in PSSE and PSLF","struct_name":"EXAC1A","supertype":"AVR"},{"fields":[{"name":"Tr","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator input filter time constant in s","valid_range":{"max":0.5,"min":0}},{"name":"Tb","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator denominator (lag) time constant in s","valid_range":{"max":20,"min":0}},{"name":"Tc","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator numerator (lead) time constant in s","valid_range":{"max":20,"min":0}},{"name":"Ka","data_type":"Float64","null_value":0,"comment":"Regulator output gain","valid_range":{"max":1000,"min":0}},{"name":"Ta","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator output time constant in s","valid_range":{"max":10,"min":0}},{"name":"Vr_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limits for regulator output `(Vr_min, Vr_max)`"},{"name":"Te","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Exciter field time constant in s","valid_range":{"max":2,"min":"eps()"}},{"name":"Kf","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Rate feedback excitation system stabilizer gain","valid_range":{"max":0.3,"min":0}},{"name":"Tf","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Rate feedback time constant","valid_range":{"max":1.5,"min":"eps()"}},{"name":"Kc","data_type":"Float64","null_value":0,"comment":"Rectifier loading factor proportional to commutating reactance","valid_range":{"max":1,"min":0}},{"name":"Kd","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Demagnetizing factor, function of exciter alternator reactances","valid_range":{"max":1,"min":0}},{"name":"Ke","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Exciter field proportional constant","valid_range":{"max":1,"min":0}},{"name":"E_sat","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter output voltage for saturation factor: (E1, E2)"},{"name":"Se","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter saturation factor at exciter output voltage: (Se(E1), Se(E2))"},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"saturation_coeffs","default":"PowerSystems.get_avr_saturation(E_sat, Se)","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Coefficients (A,B) of the function: Se(V) = B(V - A)^2/V"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tVm: Sensed terminal voltage,\n\tVr1: Lead-lag state,\n\tVr2: Regulator output state,\n\tVe: Integrator output state,\n\tVr3: Feedback output state","internal_default":"[:Vm, :Vr1, :Vr2, :Ve, :Vr3]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"EXAC1 has 5 states","internal_default":5},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"EXAC1 has 5 states","internal_default":"[StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Modified ESAC1A. This excitation systems consists of an alternator main exciter feeding its output via non-controlled rectifiers.\nThe exciter does not employ self-excitation, and the voltage regulator power is taken from a source that is not affected by external transients.\nParameters of IEEE Std 421.5 Type AC1A. EXAC1 in PSSE and PSLF","struct_name":"EXAC1","supertype":"AVR"},{"fields":[{"name":"Tr","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator input filter time constant in s","valid_range":{"max":0.5,"min":0}},{"name":"Tb","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator denominator (lag) time constant in s","valid_range":{"max":20,"min":0}},{"name":"Tc","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator numerator (lead) time constant in s","valid_range":{"max":20,"min":0}},{"name":"Ka","data_type":"Float64","null_value":0,"comment":"Regulator output gain","valid_range":{"max":1000,"min":0}},{"name":"Ta","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator output time constant in s","valid_range":{"max":10,"min":0}},{"name":"Va_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limits for regulator output `(Va_min, Va_max)`"},{"name":"Kb","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Second Stage regulator gain","valid_range":{"max":500,"min":"eps()"}},{"name":"Vr_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limits for exciter field voltage `(Vr_min, Vr_max)`"},{"name":"Te","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Exciter field time constant","valid_range":{"max":2,"min":"eps()"}},{"name":"Kl","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Exciter field current limiter gain","valid_range":{"max":1.1,"min":0}},{"name":"Kh","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Exciter field current regulator feedback gain","valid_range":{"max":1.1,"min":0}},{"name":"Kf","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Rate feedback excitation system stabilizer gain","valid_range":{"max":0.3,"min":0}},{"name":"Tf","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Rate feedback time constant","valid_range":{"max":null,"min":"eps()"}},{"name":"Kc","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Rectifier loading factor proportional to commutating reactance","valid_range":{"max":1,"min":0}},{"name":"Kd","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Demagnetizing factor, function of exciter alternator reactances","valid_range":{"max":1,"min":0}},{"name":"Ke","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Exciter field proportional constant","valid_range":{"max":1,"min":0}},{"name":"V_lr","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Maximum exciter field current","valid_range":{"max":null,"min":0}},{"name":"E_sat","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter output voltage for saturation factor: (E1, E2)"},{"name":"Se","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter saturation factor at exciter output voltage: (Se(E1), Se(E2))"},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"saturation_coeffs","default":"PowerSystems.get_avr_saturation(E_sat, Se)","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Coefficients (A,B) of the function: Se(V) = B(V - A)^2/V"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tVm: Sensed terminal voltage,\n\tVr1: Lead-lag state,\n\tVr2: Regulator output state,\n\tVe: Integrator output state,\n\tVr3: Feedback output state","internal_default":"[:Vm, :Vr1, :Vr2, :Ve, :Vr3]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"EXAC2 has 5 states","internal_default":5},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"EXAC2 has 5 states","internal_default":"[StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Modified AC2. This excitation systems consists of an alternator main exciter feeding its output via non-controlled rectifiers.\nThe exciter does not employ self-excitation, and the voltage regulator power is taken from a source that is not affected by external transients.\nParameters of IEEE Std 421.5 Type AC2A Excitacion System. The alternator main exciter is used, feeding its output via non-controlled rectifiers. The Type AC2C model is similar to that of Type AC1C except for the inclusion of exciter time constant compensation and exciter field current limiting elements. EXAC2 in PSSE and PSLF.","struct_name":"EXAC2","supertype":"AVR"},{"fields":[{"name":"Tr","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator input filter time constant in s","valid_range":{"max":0.5,"min":0}},{"name":"Ka","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator output gain","valid_range":{"max":1000,"min":0}},{"name":"Ta","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator output lag time constant in s","valid_range":{"max":10,"min":0}},{"name":"Tk","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Voltage Regulator lead time constant","valid_range":{"max":10,"min":0}},{"name":"Tb","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator denominator (lag) time constant in s","valid_range":{"max":20,"min":0}},{"name":"Tc","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator numerator (lead) time constant in s","valid_range":{"max":20,"min":0}},{"name":"Va_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limits for regulator output `(Va_min, Va_max)`"},{"name":"Vr_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limits for exciter field voltage `(Vr_min, Vr_max)`"},{"name":"Te","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Exciter field time constant","valid_range":{"max":2,"min":"eps()"}},{"name":"VFE_lim","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Exciter field current limiter reference","valid_range":{"max":20,"min":-5}},{"name":"Kh","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Exciter field current regulator feedback gain","valid_range":{"max":100,"min":0}},{"name":"VH_max","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Exciter field current limiter maximum output","valid_range":{"max":100,"min":0}},{"name":"Th","data_type":"Float64","null_value":0,"comment":"Exciter field current limiter denominator (lag) time constant","valid_range":{"max":1,"min":0}},{"name":"Tj","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Exciter field current limiter numerator (lead) time constant","valid_range":{"max":1,"min":0}},{"name":"Kc","data_type":"Float64","null_value":0,"comment":"Rectifier loading factor proportional to commutating reactance","valid_range":{"max":1,"min":0}},{"name":"Kd","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Demagnetizing factor, function of exciter alternator reactances","valid_range":{"max":2,"min":0}},{"name":"Ke","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Exciter field proportional constant","valid_range":{"max":2,"min":0}},{"name":"E_sat","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter output voltage for saturation factor: (E1, E2)"},{"name":"Se","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter saturation factor at exciter output voltage: (Se(E1), Se(E2))"},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"saturation_coeffs","default":"PowerSystems.get_avr_saturation(E_sat, Se)","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Coefficients (A,B) of the function: Se(V) = B(V - A)^2/V"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tVm: Sensed terminal voltage,\n\tVr1: Lead-lag state,\n\tVr2: Regulator output state,\n\tVe: Integrator output state,\n\tVr3: Feedback output state","internal_default":"[:Vm, :Vr1, :Vr2, :Ve, :Vr3]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"ESAC6A has 5 states","internal_default":5},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"ESAC6A has 5 states","internal_default":"[StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Differential, StateTypes.Hybrid]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Modified AC6A. Used to represent field-controlled alternator-rectifier excitation systems with system-supplied electronic voltage regulators. \nParameters of IEEE Std 421.5 Type AC6A Excitacion System. ESAC6A in PSSE and PSLF.","struct_name":"ESAC6A","supertype":"AVR"},{"fields":[{"name":"UEL_flags","data_type":"Int","null_value":1,"validation_action":"warn","comment":"Code input for Underexcitization limiter (UEL) entry. Not supported.","valid_range":{"max":3,"min":1}},{"name":"PSS_flags","data_type":"Int","null_value":1,"comment":"Code input for Power System Stabilizer (PSS) or (VOS) entry.","valid_range":{"max":2,"min":1}},{"name":"Tr","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator input filter time constant in s","valid_range":{"max":0.1,"min":0}},{"name":"Vi_lim","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Voltage error limits (regulator input) (Vi_min, Vi_max)"},{"name":"Tc","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"First regulator denominator (lead) time constant in s","valid_range":{"max":10,"min":0}},{"name":"Tb","data_type":"Float64","null_value":0,"comment":"First regulator denominator (lag) time constant in s","valid_range":{"max":20,"min":0}},{"name":"Tc1","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Second regulator denominator (lead) time constant in s","valid_range":{"max":10,"min":0}},{"name":"Tb1","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Second regulator denominator (lead) time constant in s","valid_range":{"max":20,"min":0}},{"name":"Ka","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Voltage regulator gain","valid_range":{"max":1000,"min":50}},{"name":"Ta","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Voltage regulator time constant in s","valid_range":{"max":0.5,"min":0}},{"name":"Va_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limits for regulator output `(Va_min, Va_max)`"},{"name":"Vr_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limits for exciter output `(Vr_min, Vr_max)`"},{"name":"Kc","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Rectifier loading factor proportional to commutating reactance","valid_range":{"max":0.3,"min":0}},{"name":"Kf","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Rate feedback gain","valid_range":{"max":0.3,"min":0}},{"name":"Tf","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Rate feedback time constant in s","valid_range":{"max":1.5,"min":"eps()"}},{"name":"K_lr","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Exciter output current limiter gain","valid_range":{"max":5,"min":0}},{"name":"I_lr","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Exciter output current limit reference","valid_range":{"max":5,"min":0}},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tVm: Sensed terminal voltage,\n\tVr1: First Lead-lag state,\n\tVr2: Second lead-lag state,\n\tVa: Regulator output state,\n\tVr3: Feedback output state","internal_default":"[:Vm, :Vr1, :Vr2, :Va, :Vr3]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"ST1A has 5 states","internal_default":5},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"ST1A has 5 states","internal_default":"[StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"This excitation system supplies power through a transformer from the generator terminals and its regulated by a controlled rectifier (via thyristors).\nParameters of IEEE Std 421.5 Type ST1A Excitacion System. ESST1A in PSSE and PSLF","struct_name":"ESST1A","supertype":"AVR"},{"fields":[{"name":"Tr","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator input filter time constant in s","valid_range":{"max":0.5,"min":0}},{"name":"Ka","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Voltage regulator gain","valid_range":{"max":500,"min":1}},{"name":"Ta","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Voltage regulator time constant in s","valid_range":{"max":10,"min":0}},{"name":"Va_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limits for pi controler `(Vr_min, Vr_max)`"},{"name":"Ta_2","data_type":"Float64","null_value":0,"comment":"Voltage regulator time constant in s","valid_range":{"max":null,"min":0}},{"name":"Ta_3","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Voltage regulator time constant in s","valid_range":{"max":null,"min":0}},{"name":"Ta_4","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Voltage regulator time constant in s","valid_range":{"max":null,"min":0}},{"name":"Vr_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Voltage regulator limits (regulator output) (Vi_min, Vi_max)"},{"name":"Kf","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Rate feedback gain","valid_range":{"max":0.3,"min":0}},{"name":"Tf_1","validation_actions":"error","data_type":"Float64","null_value":0,"comment":"Rate Feedback time constant in s","valid_range":{"max":15,"min":"eps()"}},{"name":"Tf_2","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Rate Feedback time constant in s","valid_range":{"max":5,"min":0}},{"name":"Efd_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Field Voltage regulator limits (regulator output) (Efd_min, Efd_max)"},{"name":"Ke","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Exciter constant","valid_range":{"max":1,"min":0}},{"name":"Te","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Exciter time constant","valid_range":{"max":2,"min":0}},{"name":"E_sat","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter output voltage for saturation factor: (E1, E2)"},{"name":"Se","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter saturation factor at exciter output voltage: (Se(E1), Se(E2))"},{"name":"Kp","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Potential source gain","valid_range":{"max":5,"min":0}},{"name":"Ki","data_type":"Float64","null_value":0,"comment":"current source gain","valid_range":{"max":1.1,"min":0}},{"name":"Kc","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Exciter regulation factor","valid_range":{"max":2,"min":0}},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"saturation_coeffs","default":"PowerSystems.get_avr_saturation(E_sat, Se)","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Coefficients (A,B) of the function: Se(V) = B(V - A)^2/V"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tVm: Sensed terminal voltage,\n\tVr1: First Lead-lag state,\n\tVr2: Second regulator lead-lag state,\n\tVr2: Third regulator lead-lag state \n\tVf: Exciter output \n\tVr3: First feedback integrator,\n\tVr4: second feedback integrator","internal_default":"[:Vm, :Vr1, :Vr2, :Vf, :Vr3, :Vr4]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"EXPIC1 has 6 states","internal_default":6},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"EXPIC has 6 states","internal_default":"[StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Differential, StateTypes.Hybrid]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Generic Proportional/Integral Excitation System","struct_name":"EXPIC1","supertype":"AVR"},{"fields":[{"name":"Tr","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator input filter time constant in s","valid_range":{"max":0.5,"min":0}},{"name":"K_pr","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator propotional gain","valid_range":{"max":75,"min":0}},{"name":"K_ir","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator integral gain","valid_range":{"max":75,"min":0}},{"name":"Vr_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Voltage regulator limits (Vi_min, Vi_max)"},{"name":"Ta","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Voltage regulator time constant in s","valid_range":{"max":1,"min":0}},{"name":"K_pm","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Voltage regulator proportional gain output","valid_range":{"max":1.2,"min":0}},{"name":"K_im","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Voltage regulator integral gain output","valid_range":{"max":18,"min":0}},{"name":"Vm_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limits for inner loop output `(Vm_min, Vm_max)`"},{"name":"Kg","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Feedback gain constant of the inner loop field regulator","valid_range":{"max":1.1,"min":0}},{"name":"Kp","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Potential circuit (voltage) gain coefficient","valid_range":{"max":10,"min":0}},{"name":"Ki","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Compound circuit (current) gain coefficient","valid_range":{"max":1.1,"min":0}},{"name":"VB_max","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Maximum available exciter voltage","valid_range":{"max":20,"min":1}},{"name":"Kc","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Rectifier loading factor proportional to commutating reactance","valid_range":{"max":1,"min":0}},{"name":"Xl","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Reactance associated with potential source","valid_range":{"max":0.5,"min":0}},{"name":"θp","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Potential circuit phase angle (degrees)","valid_range":{"max":90,"min":-90}},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"θp_rad","default":"θp*π*inv(180)","data_type":"Float64","null_value":0,"comment":"Potential circuit phase angle (radians)"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tVm: Sensed terminal voltage,\n\tVt: Sensed Terminal Voltage,\n\tVr1: Regulator Integrator,\n\tVr2: Regulator Output,\n\tVm: Output integrator","internal_default":"[:Vt, :Vr1, :Vr2, :Vm]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"ST4B has 4 states","internal_default":4},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"ST4B has 4 states","internal_default":"[StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"In these excitation systems, voltage (and also current in compounded systems) is transformed to an appropriate level. Rectifiers, either controlled or non-controlled, provide the necessary direct current for the generator field.\nParameters of IEEE Std 421.5 Type ST4B Excitacion System. ESST4B in PSSE and PSLF","struct_name":"ESST4B","supertype":"AVR"},{"fields":[{"name":"Tr","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Voltage Measurement Time Constant in s","valid_range":{"max":null,"min":0}},{"name":"Vi_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Voltage input limits (Vi_min, Vi_max)"},{"name":"Tc","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Numerator lead-lag (lead) time constant in s","valid_range":{"max":null,"min":0}},{"name":"Tb","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Denominator lead-lag (lag) time constant in s","valid_range":{"max":null,"min":0}},{"name":"Ka","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Amplifier Gain","valid_range":{"max":null,"min":0}},{"name":"Ta","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Amplifier Time Constant in s","valid_range":{"max":null,"min":0}},{"name":"Vr_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Voltage regulator limits (regulator output) (Vr_min, Vr_max)"},{"name":"Kc","data_type":"Float64","null_value":0,"comment":"Current field constant limiter multiplier","valid_range":{"max":null,"min":0}},{"name":"Kf","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Excitation control system stabilizer gain","valid_range":{"max":0.3,"min":"eps()"}},{"name":"Tf","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Excitation control system stabilizer time constant","valid_range":{"max":null,"min":"eps()"}},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tVm: Sensed Terminal Voltage,\n\tVrll: Lead-Lag state,\n\tVr: Regulator Output, \n\tVfb: Feedback state","internal_default":"[:Vm, :Vrll, :Vr, :Vfb]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"The EXST1 has 4 states","internal_default":4},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"IEEE Type ST1 Excitation System (PTI version)","struct_name":"EXST1","supertype":"AVR"},{"fields":[{"name":"Iflim","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"OEL Field current limit","valid_range":{"max":null,"min":0}},{"name":"d","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"OEL parameter d","valid_range":{"max":null,"min":0}},{"name":"f","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"OEL parameter f","valid_range":{"max":null,"min":0}},{"name":"Spar","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"OEL parameter Spar","valid_range":{"max":null,"min":0}},{"name":"K1","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"OEL delay time constant","valid_range":{"max":null,"min":0}},{"name":"K2","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"OEL parameter K2","valid_range":{"max":null,"min":0}},{"name":"Oel_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Oel integrator limits (Oel_min, Oel_max)"},{"name":"G","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"AVR Exciter Gain","valid_range":{"max":null,"min":0}},{"name":"Ta","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Numerator lead-lag (lag) time constant in s","valid_range":{"max":null,"min":0}},{"name":"Tb","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Denominator lead-lag (lag) time constant in s","valid_range":{"max":null,"min":0}},{"name":"Te","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Exciter Time Constant in s","valid_range":{"max":null,"min":0}},{"name":"E_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Voltage regulator limits (regulator output) (E_min, E_max)"},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tVll: Lead-lag internal state,\n\tVex: Exciter Output, \n\toel: OEL integrator state","internal_default":"[:Vll, :Vex, :oel]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"The EX4VSA has 3 states","internal_default":3},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"IEEE Excitation System for Voltage Security Assesment","struct_name":"EX4VSA","supertype":"AVR"},{"fields":[{"name":"R","data_type":"Float64","null_value":0,"comment":"Resistance after EMF in machine per unit","valid_range":{"max":null,"min":0}},{"name":"Xd_p","data_type":"Float64","null_value":0,"comment":"Reactance after EMF in machine per unit","valid_range":{"max":null,"min":0}},{"name":"eq_p","data_type":"Float64","null_value":0,"comment":"Fixed EMF behind the impedance","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"BaseMachine has no states","internal_default":"Vector{Symbol}()"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"BaseMachine has no states","internal_default":0},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of a Classic Machine: GENCLS in PSSE and PSLF","struct_name":"BaseMachine","supertype":"Machine"},{"fields":[{"name":"R","data_type":"Float64","null_value":0,"comment":"Armature resistance","valid_range":{"max":null,"min":0}},{"name":"Td0_p","data_type":"Float64","null_value":0,"comment":"Time constant of transient d-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Td0_pp","data_type":"Float64","null_value":0,"comment":"Time constant of sub-transient d-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Tq0_p","data_type":"Float64","null_value":0,"comment":"Time constant of transient q-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Tq0_pp","data_type":"Float64","null_value":0,"comment":"Time constant of sub-transient q-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Xd","data_type":"Float64","null_value":0,"comment":"Reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq","data_type":"Float64","null_value":0,"comment":"Reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xd_p","data_type":"Float64","null_value":0,"comment":"Transient reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq_p","data_type":"Float64","null_value":0,"comment":"Transient reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xd_pp","data_type":"Float64","null_value":0,"comment":"Sub-Transient reactance after EMF in d-axis per unit. Note: Xd_pp = Xq_pp","valid_range":{"max":null,"min":0}},{"name":"Xl","data_type":"Float64","null_value":0,"comment":"Stator leakage reactance","valid_range":{"max":null,"min":0}},{"name":"Se","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Saturation factor at 1 and 1.2 pu flux: S(1.0) = B(|ψ_pp|-A)^2"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"γ_d1","data_type":"Float64","comment":"γ_d1 parameter","internal_default":"(Xd_pp - Xl) / (Xd_p - Xl)"},{"name":"γ_q1","data_type":"Float64","comment":"γ_q1 parameter","internal_default":"(Xd_pp - Xl) / (Xq_p - Xl)"},{"name":"γ_d2","data_type":"Float64","comment":"γ_d2 parameter","internal_default":"(Xd_p - Xd_pp) / (Xd_p - Xl)^2"},{"name":"γ_q2","data_type":"Float64","comment":"γ_q2 parameter","internal_default":"(Xq_p - Xd_pp) / (Xq_p - Xl)^2"},{"name":"γ_qd","data_type":"Float64","comment":"γ_qd parameter","internal_default":"(Xq - Xl) / (Xd - Xl)"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\teq_p: q-axis generator voltage behind the transient reactance,\n\ted_p: d-axis generator voltage behind the transient reactance,\n\tψ_kd: flux linkage in the first equivalent damping circuit in the d-axis,\n\tψ_kq: flux linkage in the first equivalent damping circuit in the d-axis","internal_default":"[:eq_p, :ed_p, :ψ_kd, :ψ_kq]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"RoundRotorMachine has 4 states","internal_default":4},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of 4-states round-rotor synchronous machine with quadratic/exponential saturation:\nIEEE Std 1110 §5.3.2 (Model 2.2). GENROU or GENROE model in PSSE and PSLF.","struct_name":"RoundRotorMachine","supertype":"Machine"},{"fields":[{"name":"R","data_type":"Float64","null_value":0,"comment":"Armature resistance","valid_range":{"max":null,"min":0}},{"name":"Td0_p","data_type":"Float64","null_value":0,"comment":"Time constant of transient d-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Td0_pp","data_type":"Float64","null_value":0,"comment":"Time constant of sub-transient d-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Tq0_pp","data_type":"Float64","null_value":0,"comment":"Time constant of sub-transient q-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Xd","data_type":"Float64","null_value":0,"comment":"Reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq","data_type":"Float64","null_value":0,"comment":"Reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xd_p","data_type":"Float64","null_value":0,"comment":"Transient reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xd_pp","data_type":"Float64","null_value":0,"comment":"Sub-Transient reactance after EMF in d-axis per unit. Note: Xd_pp = Xq_pp","valid_range":{"max":null,"min":0}},{"name":"Xl","data_type":"Float64","null_value":0,"comment":"Stator leakage reactance","valid_range":{"max":null,"min":0}},{"name":"Se","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Saturation factor at 1 and 1.2 pu flux: Se(eq_p) = B(eq_p-A)^2"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"γ_d1","data_type":"Float64","comment":"γ_d1 parameter","internal_default":"(Xd_pp - Xl) / (Xd_p - Xl)"},{"name":"γ_q1","data_type":"Float64","comment":"γ_q1 parameter","internal_default":"(Xd_p - Xd_pp) / (Xd_p - Xl)"},{"name":"γ_d2","data_type":"Float64","comment":"γ_d2 parameter","internal_default":"(Xd_p - Xd_pp) / (Xd_p - Xl)^2"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\teq_p: q-axis generator voltage behind the transient reactance,\n\tψ_kd: flux linkage in the first equivalent damping circuit in the d-axis,\n\tψq_pp: phasonf of the subtransient flux linkage in the q-axis","internal_default":"[:eq_p, :ψ_kd, :ψq_pp]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"SalientPoleMachine has 3 states","internal_default":3},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of 3-states salient-pole synchronous machine with quadratic/exponential saturation:\nIEEE Std 1110 §5.3.1 (Model 2.1). GENSAL or GENSAE model in PSSE and PSLF.","struct_name":"SalientPoleMachine","supertype":"Machine"},{"fields":[{"name":"R","data_type":"Float64","null_value":0,"comment":"Resistance after EMF in machine per unit","valid_range":{"max":null,"min":0}},{"name":"Xd","data_type":"Float64","null_value":0,"comment":"Reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq","data_type":"Float64","null_value":0,"comment":"Reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xd_p","data_type":"Float64","null_value":0,"comment":"Transient reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq_p","data_type":"Float64","null_value":0,"comment":"Transient reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xd_pp","data_type":"Float64","null_value":0,"comment":"Sub-Transient reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq_pp","data_type":"Float64","null_value":0,"comment":"Sub-Transient reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Td0_p","data_type":"Float64","null_value":0,"comment":"Time constant of transient d-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Tq0_p","data_type":"Float64","null_value":0,"comment":"Time constant of transient q-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Td0_pp","data_type":"Float64","null_value":0,"comment":"Time constant of sub-transient d-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Tq0_pp","data_type":"Float64","null_value":0,"comment":"Time constant of sub-transient q-axis voltage","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tψq: q-axis stator flux,\n\tψd: d-axis stator flux,\n\teq_p: q-axis transient voltage,\n\ted_p: d-axis transient voltage,\n\teq_pp: q-axis subtransient voltage,\n\ted_pp: d-axis subtransient voltage","internal_default":"[:ψq, :ψd, :eq_p, :ed_p, :eq_pp, :ed_pp]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"AndersonFouadMachine has 6 states","internal_default":6},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of 6-states synchronous machine: Anderson-Fouad model","struct_name":"AndersonFouadMachine","supertype":"Machine"},{"fields":[{"name":"R","data_type":"Float64","null_value":0,"comment":"Resistance after EMF in machine per unit","valid_range":{"max":null,"min":0}},{"name":"R_f","data_type":"Float64","null_value":0,"comment":"Field rotor winding resistance in per unit","valid_range":{"max":null,"min":0}},{"name":"R_1d","data_type":"Float64","null_value":0,"comment":" Damping rotor winding resistance on d-axis in per unit. This value is denoted as RD in Machowski.","valid_range":{"max":null,"min":0}},{"name":"R_1q","data_type":"Float64","null_value":0,"comment":"Damping rotor winding resistance on q-axis in per unit. This value is denoted as RQ in Machowski.","valid_range":{"max":null,"min":0}},{"name":"L_d","data_type":"Float64","null_value":1,"comment":"Inductance of fictitious damping that represent the effect of the three-phase stator winding in the d-axis of the rotor, in per unit. This value is denoted as L_ad + L_l in Kundur (and Ld in Machowski).","valid_range":{"max":null,"min":0}},{"name":"L_q","data_type":"Float64","null_value":1,"comment":"Inductance of fictitious damping that represent the effect of the three-phase stator winding in the q-axis of the rotor, in per unit. This value is denoted as L_aq + L_l in Kundur.","valid_range":{"max":null,"min":0}},{"name":"L_ad","data_type":"Float64","null_value":2,"comment":"Mutual inductance between stator winding and rotor field (and damping) winding inductance on d-axis, in per unit","valid_range":{"max":null,"min":0}},{"name":"L_aq","data_type":"Float64","null_value":2,"comment":"Mutual inductance between stator winding and rotor damping winding inductance on q-axis, in per unit","valid_range":{"max":null,"min":0}},{"name":"L_f1d","data_type":"Float64","null_value":1,"comment":"Mutual inductance between rotor field winding and rotor damping winding inductance on d-axis, in per unit","valid_range":{"max":null,"min":0}},{"name":"L_ff","data_type":"Float64","null_value":2,"comment":"Field rotor winding inductance, in per unit","valid_range":{"max":null,"min":0}},{"name":"L_1d","data_type":"Float64","null_value":1,"comment":"Inductance of the d-axis rotor damping circuit, in per unit","valid_range":{"max":null,"min":0}},{"name":"L_1q","data_type":"Float64","null_value":1,"comment":"Inductance of the q-axis rotor damping circuit, in per unit","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"inv_d_fluxlink","data_type":"Array{Float64,2}","comment":"Equations 3.127, 3.130, 3.131 From Kundur","internal_default":"inv([[-L_d L_ad L_ad]; [-L_ad L_ff L_f1d]; [-L_ad L_f1d L_1d]])"},{"name":"inv_q_fluxlink","data_type":"Array{Float64,2}","comment":"Equations 3.128, 3.132 From Kundur","internal_default":"inv([[-L_q L_aq]; [-L_aq L_1q]])"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tψd: d-axis stator flux,\n\tψq: q-axis stator flux,\n\tψf: field rotor flux,\n\tψ1d: d-axis rotor damping flux,\n\tψ1q: q-axis rotor damping flux","internal_default":"[:ψd, :ψq, :ψf, :ψ1d, :ψ1q]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"FullMachine has 5 states","internal_default":5},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameter of a full order flux stator-rotor model without zero sequence flux in the stator.\n The derivative of stator fluxes (ψd and ψq) is NOT neglected. Only one q-axis damping circuit is considered. All parameters are in machine per unit.\n Refer to Chapter 3 of Power System Stability and Control by P. Kundur or Chapter 11 of Power System Dynamics: Stability and Control, by J. Machowski, J. Bialek and J. Bumby, for more details.\n Note that the models are somewhat different (but equivalent) due to the different Park Transformation used in both books.","struct_name":"FullMachine","supertype":"Machine"},{"fields":[{"name":"R","data_type":"Float64","null_value":0,"comment":"Resistance after EMF in machine per unit","valid_range":{"max":null,"min":0}},{"name":"Xd","data_type":"Float64","null_value":0,"comment":"Reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq","data_type":"Float64","null_value":0,"comment":"Reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xd_p","data_type":"Float64","null_value":0,"comment":"Transient reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq_p","data_type":"Float64","null_value":0,"comment":"Transient reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xd_pp","data_type":"Float64","null_value":0,"comment":"Sub-Transient reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq_pp","data_type":"Float64","null_value":0,"comment":"Sub-Transient reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xl","data_type":"Float64","null_value":0,"comment":"Stator Leakage Reactance","valid_range":{"max":null,"min":0}},{"name":"Td0_p","data_type":"Float64","null_value":0,"comment":"Time constant of transient d-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Tq0_p","data_type":"Float64","null_value":0,"comment":"Time constant of transient q-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Td0_pp","data_type":"Float64","null_value":0,"comment":"Time constant of sub-transient d-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Tq0_pp","data_type":"Float64","null_value":0,"comment":"Time constant of sub-transient q-axis voltage","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"γ_d1","data_type":"Float64","comment":"","internal_default":"(Xd_pp-Xl)/(Xd_p-Xl)"},{"name":"γ_q1","data_type":"Float64","comment":"","internal_default":"(Xq_pp-Xl)/(Xq_p-Xl)"},{"name":"γ_d2","data_type":"Float64","comment":"","internal_default":"(Xd_p - Xd_pp) / (Xd_p - Xl)^2"},{"name":"γ_q2","data_type":"Float64","comment":"","internal_default":"(Xq_p - Xq_pp) / (Xq_p - Xl)^2"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tψq: q-axis stator flux,\n\tψd: d-axis stator flux,\n\teq_p: q-axis transient voltage,\n\ted_p: d-axis transient voltage\n\tψd_pp: subtransient flux linkage in the d-axis\n\tψq_pp: subtransient flux linkage in the q-axis","internal_default":"[:ψq, :ψd, :eq_p, :ed_p, :ψd_pp, :ψq_pp]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"SauerPaiMachine has 6 states","internal_default":6},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of synchronous machine: Sauer Pai model","struct_name":"SauerPaiMachine","supertype":"Machine"},{"fields":[{"name":"R","data_type":"Float64","null_value":0,"comment":"Resistance after EMF in machine per unit","valid_range":{"max":null,"min":0}},{"name":"Xd","data_type":"Float64","null_value":0,"comment":"Reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq","data_type":"Float64","null_value":0,"comment":"Reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xd_p","data_type":"Float64","null_value":0,"comment":"Transient reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq_p","data_type":"Float64","null_value":0,"comment":"Transient reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xd_pp","data_type":"Float64","null_value":0,"comment":"Sub-Transient reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq_pp","data_type":"Float64","null_value":0,"comment":"Sub-Transient reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Td0_p","data_type":"Float64","null_value":0,"comment":"Time constant of transient d-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Tq0_p","data_type":"Float64","null_value":0,"comment":"Time constant of transient q-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Td0_pp","data_type":"Float64","null_value":0,"comment":"Time constant of sub-transient d-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Tq0_pp","data_type":"Float64","null_value":0,"comment":"Time constant of sub-transient q-axis voltage","valid_range":{"max":null,"min":0}},{"name":"T_AA","data_type":"Float64","null_value":0,"comment":"Time constant of d-axis additional leakage","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"γd","data_type":"Float64","comment":"","internal_default":"((Td0_pp*Xd_pp)/(Td0_p*Xd_p) )*(Xd-Xd_p)"},{"name":"γq","data_type":"Float64","comment":"","internal_default":"((Tq0_pp*Xq_pp)/(Tq0_p*Xq_p) )*(Xq-Xq_p)"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tψq: q-axis stator flux,\n\tψd: d-axis stator flux,\n\teq_p: q-axis transient voltage,\n\ted_p: d-axis transient voltage,\n\teq_pp: q-axis subtransient voltage,\n\ted_pp: d-axis subtransient voltage","internal_default":"[:ψq, :ψd, :eq_p, :ed_p, :eq_pp, :ed_pp]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"MarconatoMachine has 6 states","internal_default":6},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of 6-states synchronous machine: Marconato model","struct_name":"MarconatoMachine","supertype":"Machine"},{"fields":[{"name":"R","data_type":"Float64","null_value":0,"comment":"Resistance after EMF in machine per unit","valid_range":{"max":null,"min":0}},{"name":"Xd","data_type":"Float64","null_value":0,"comment":"Reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq","data_type":"Float64","null_value":0,"comment":"Reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xd_p","data_type":"Float64","null_value":0,"comment":"Transient reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq_p","data_type":"Float64","null_value":0,"comment":"Transient reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Td0_p","data_type":"Float64","null_value":0,"comment":"Time constant of transient d-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Tq0_p","data_type":"Float64","null_value":0,"comment":"Time constant of transient q-axis voltage","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\teq_p: q-axis transient voltage,\n\ted_p: d-axis transient voltage","internal_default":"[:eq_p, :ed_p]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"OneDOneQMachine has 2 states","internal_default":2},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of 4-states synchronous machine: Simplified Marconato model\n The derivative of stator fluxes (ψd and ψq) is neglected and ωψd = ψd and\n ωψq = ψq is assumed (i.e. ω=1.0). This is standard when\n transmission network dynamics is neglected.","struct_name":"OneDOneQMachine","supertype":"Machine"},{"fields":[{"name":"R","data_type":"Float64","null_value":0,"comment":"Resistance after EMF in machine per unit","valid_range":{"max":null,"min":0}},{"name":"Xd","data_type":"Float64","null_value":0,"comment":"Reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq","data_type":"Float64","null_value":0,"comment":"Reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xd_p","data_type":"Float64","null_value":0,"comment":"Transient reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq_p","data_type":"Float64","null_value":0,"comment":"Transient reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xd_pp","data_type":"Float64","null_value":0,"comment":"Sub-Transient reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq_pp","data_type":"Float64","null_value":0,"comment":"Sub-Transient reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Td0_p","data_type":"Float64","null_value":0,"comment":"Time constant of transient d-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Tq0_p","data_type":"Float64","null_value":0,"comment":"Time constant of transient q-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Td0_pp","data_type":"Float64","null_value":0,"comment":"Time constant of sub-transient d-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Tq0_pp","data_type":"Float64","null_value":0,"comment":"Time constant of sub-transient q-axis voltage","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\teq_p: q-axis transient voltage,\n\ted_p: d-axis transient voltage,\n\teq_pp: q-axis subtransient voltage,\n\ted_pp: d-axis subtransient voltage","internal_default":"[:eq_p, :ed_p, :eq_pp, :ed_pp]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"SimpleAFMachine has 4 states","internal_default":4},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of 4-states simplified Anderson-Fouad (SimpleAFMachine) model.\n The derivative of stator fluxes (ψd and ψq) is neglected and ωψd = ψd and\n ωψq = ψq is assumed (i.e. ω=1.0). This is standard when transmission network\n dynamics is neglected.\n If transmission dynamics is considered use the full order Anderson Fouad model.","struct_name":"SimpleAFMachine","supertype":"Machine"},{"fields":[{"name":"R","data_type":"Float64","null_value":0,"comment":"Resistance after EMF in machine per unit","valid_range":{"max":null,"min":0}},{"name":"R_f","data_type":"Float64","null_value":0,"comment":"Field rotor winding resistance in per unit","valid_range":{"max":null,"min":0}},{"name":"R_1d","data_type":"Float64","null_value":0,"comment":" Damping rotor winding resistance on d-axis in per unit. This value is denoted as RD in Machowski.","valid_range":{"max":null,"min":0}},{"name":"R_1q","data_type":"Float64","null_value":0,"comment":"Damping rotor winding resistance on q-axis in per unit. This value is denoted as RQ in Machowski.","valid_range":{"max":null,"min":0}},{"name":"L_d","data_type":"Float64","null_value":1,"comment":"Inductance of fictitious damping that represent the effect of the three-phase stator winding in the d-axis of the rotor, in per unit. This value is denoted as L_ad + L_l in Kundur (and Ld in Machowski).","valid_range":{"max":null,"min":0}},{"name":"L_q","data_type":"Float64","null_value":1,"comment":"Inductance of fictitious damping that represent the effect of the three-phase stator winding in the q-axis of the rotor, in per unit. This value is denoted as L_aq + L_l in Kundur.","valid_range":{"max":null,"min":0}},{"name":"L_ad","data_type":"Float64","null_value":2,"comment":"Mutual inductance between stator winding and rotor field (and damping) winding inductance on d-axis, in per unit","valid_range":{"max":null,"min":0}},{"name":"L_aq","data_type":"Float64","null_value":1,"comment":"Mutual inductance between stator winding and rotor damping winding inductance on q-axis, in per unit","valid_range":{"max":null,"min":0}},{"name":"L_f1d","data_type":"Float64","null_value":1,"comment":"Mutual inductance between rotor field winding and rotor damping winding inductance on d-axis, in per unit","valid_range":{"max":null,"min":0}},{"name":"L_ff","data_type":"Float64","null_value":2,"comment":"Field rotor winding inductance, in per unit","valid_range":{"max":null,"min":0}},{"name":"L_1d","data_type":"Float64","null_value":1,"comment":"Inductance of the d-axis rotor damping circuit, in per unit","valid_range":{"max":null,"min":0}},{"name":"L_1q","data_type":"Float64","null_value":2,"comment":"Inductance of the q-axis rotor damping circuit, in per unit","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"inv_d_fluxlink","data_type":"Array{Float64,2}","comment":"Equations 3.127, 3.130, 3.131 From Kundur","internal_default":"inv([[-L_d L_ad L_ad]; [-L_ad L_ff L_f1d]; [-L_ad L_f1d L_1d]])"},{"name":"inv_q_fluxlink","data_type":"Array{Float64,2}","comment":"Equations 3.128, 3.132 From Kundur","internal_default":"inv([[-L_q L_aq]; [-L_aq L_1q]])"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tψf: field rotor flux,\n\tψ1d: d-axis rotor damping flux,\n\tψ1q: q-axis rotor damping flux","internal_default":"[:ψf, :ψ1d, :ψ1q]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"SimpleFullMachine has 3 states","internal_default":3},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameter of a full order flux stator-rotor model without zero sequence flux in the stator.\n The derivative of stator fluxes (ψd and ψq) is neglected. This is standard when\n transmission network dynamics is neglected. Only one q-axis damping circuit\n is considered. All per unit are in machine per unit.\n Refer to Chapter 3 of Power System Stability and Control by P. Kundur or Chapter 11 of Power System Dynamics: Stability and Control, by J. Machowski, J. Bialek and J. Bumby, for more details.\n Note that the models are somewhat different (but equivalent) due to the different Park Transformation used in both books.","struct_name":"SimpleFullMachine","supertype":"Machine"},{"fields":[{"name":"R","data_type":"Float64","null_value":0,"comment":"Resistance after EMF in machine per unit","valid_range":{"max":null,"min":0}},{"name":"Xd","data_type":"Float64","null_value":0,"comment":"Reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq","data_type":"Float64","null_value":0,"comment":"Reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xd_p","data_type":"Float64","null_value":0,"comment":"Transient reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq_p","data_type":"Float64","null_value":0,"comment":"Transient reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xd_pp","data_type":"Float64","null_value":0,"comment":"Sub-Transient reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq_pp","data_type":"Float64","null_value":0,"comment":"Sub-Transient reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Td0_p","data_type":"Float64","null_value":0,"comment":"Time constant of transient d-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Tq0_p","data_type":"Float64","null_value":0,"comment":"Time constant of transient q-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Td0_pp","data_type":"Float64","null_value":0,"comment":"Time constant of sub-transient d-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Tq0_pp","data_type":"Float64","null_value":0,"comment":"Time constant of sub-transient q-axis voltage","valid_range":{"max":null,"min":0}},{"name":"T_AA","data_type":"Float64","null_value":0,"comment":"Time constant of d-axis additional leakage","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"γd","data_type":"Float64","comment":"","internal_default":"((Td0_pp*Xd_pp)/(Td0_p*Xd_p) )*(Xd-Xd_p)"},{"name":"γq","data_type":"Float64","comment":"","internal_default":"((Tq0_pp*Xq_pp)/(Tq0_p*Xq_p) )*(Xq-Xq_p)"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\teq_p: q-axis transient voltage,\n\ted_p: d-axis transient voltage,\n\teq_pp: q-axis subtransient voltage,\n\ted_pp: d-axis subtransient voltage","internal_default":"[:eq_p, :ed_p, :eq_pp, :ed_pp]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"SimpleMarconatoMachine has 4 states","internal_default":4},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of 4-states synchronous machine: Simplified Marconato model\n The derivative of stator fluxes (ψd and ψq) is neglected and ωψd = ψd and\n ωψq = ψq is assumed (i.e. ω=1.0). This is standard when transmission network\n dynamics is neglected.","struct_name":"SimpleMarconatoMachine","supertype":"Machine"},{"fields":[{"name":"V_pss","data_type":"Float64","null_value":0,"comment":"Fixed voltage stabilization signal","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"","internal_default":"Vector{Symbol}()"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"PSSFixed has no states","internal_default":0},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of a PSS that returns a fixed voltage to add to the reference for the AVR","struct_name":"PSSFixed","supertype":"PSS"},{"fields":[{"name":"K_ω","data_type":"Float64","null_value":0,"comment":"Proportional gain for frequency","valid_range":{"max":null,"min":0}},{"name":"K_p","data_type":"Float64","null_value":0,"comment":"Proportional gain for active power","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"","internal_default":"Vector{Symbol}()"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"PSSSimple has no states","internal_default":0},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of a PSS that returns a proportional droop voltage to add to the reference for the AVR","struct_name":"PSSSimple","supertype":"PSS"},{"fields":[{"name":"input_code","data_type":"Int","null_value":1,"validation_action":"error","comment":"Code input for stabilizer","valid_range":{"max":6,"min":1}},{"name":"remote_bus_control","data_type":"Int","null_value":0,"comment":"Remote Bus number for control."},{"name":"A1","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Filter coefficient","valid_range":{"max":null,"min":0}},{"name":"A2","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Filter coefficient","valid_range":{"max":null,"min":0}},{"name":"A3","data_type":"Float64","null_value":0,"comment":"Filter coefficient","valid_range":{"max":null,"min":0}},{"name":"A4","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Filter coefficient","valid_range":{"max":null,"min":0}},{"name":"A5","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Filter coefficient","valid_range":{"max":null,"min":0}},{"name":"A6","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Filter coefficient","valid_range":{"max":null,"min":0}},{"name":"T1","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant","valid_range":{"max":10,"min":0}},{"name":"T2","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant","valid_range":{"max":10,"min":0}},{"name":"T3","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant","valid_range":{"max":10,"min":0}},{"name":"T4","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant","valid_range":{"max":10,"min":0}},{"name":"T5","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant","valid_range":{"max":10,"min":0}},{"name":"T6","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Time constant","valid_range":{"max":"2.0","min":"eps()"}},{"name":"Ks","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Proportional gain","valid_range":{"max":null,"min":0}},{"name":"Ls_lim","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"PSS output limits for regulator output `(Ls_min, Ls_max)`"},{"name":"Vcu","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Cutoff limiter upper bound","valid_range":{"max":"1.25","min":0}},{"name":"Vcl","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Cutoff limiter lower bound","valid_range":{"max":"1.0","min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tx_p1: 1st filter integration,\n\tx_p2: 2nd filter integration, \n\tx_p3: 3rd filter integration, \n\tx_p4: 4rd filter integration, \n\tx_p5: T1/T2 lead-lag integrator, \n\tx_p6: T3/T4 lead-lag integrator, \n\t:x_p7 last integer,","internal_default":"[:x_p1, :x_p2, :x_p3, :x_p4, :x_p5, :x_p6, :x_p7]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"IEEEST has 7 states","internal_default":7},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"IEEEST has 7 differential states","internal_default":"[StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"IEEE Stabilizing Model PSS. ","struct_name":"IEEEST","supertype":"PSS"},{"fields":[{"name":"KT","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"K/T for washout filter","valid_range":{"max":null,"min":0}},{"name":"T","data_type":"Float64","null_value":0.01,"validation_action":"warn","comment":"Time constant for washout filter","valid_range":{"max":null,"min":0.01}},{"name":"T1T3","data_type":"Float64","null_value":0,"comment":"Time constant division T1/T3","valid_range":{"max":null,"min":0}},{"name":"T3","data_type":"Float64","null_value":0.01,"validation_action":"warn","comment":"Time constant","valid_range":{"max":null,"min":0.01}},{"name":"T2T4","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant division T2/T4","valid_range":{"max":null,"min":0}},{"name":"T4","data_type":"Float64","null_value":0.01,"validation_action":"warn","comment":"Time constant","valid_range":{"max":null,"min":0.01}},{"name":"H_lim","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"PSS output limit","valid_range":{"max":0.5,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tx_p1: washout filter,\n\tx_p2: T1/T3 lead-lag block, \n\tx_p3: T2/T4 lead-lag block,","internal_default":"[:x_p1, :x_p2, :x_p3]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"STAB1 has 3 states","internal_default":3},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"STAB1 has 3 differential states","internal_default":"[StateTypes.Differential, StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Speed-Sensitive Stabilizing Model","struct_name":"STAB1","supertype":"PSS"},{"fields":[{"name":"input_code_1","data_type":"Int","null_value":1,"validation_action":"error","comment":"First Input Code for stabilizer","valid_range":{"max":6,"min":1}},{"name":"remote_bus_control_1","data_type":"Int","null_value":0,"comment":"First Input Remote Bus number for control."},{"name":"input_code_2","data_type":"Int","null_value":1,"validation_action":"error","comment":"Second Input Code for stabilizer","valid_range":{"max":6,"min":1}},{"name":"remote_bus_control_2","data_type":"Int","null_value":0,"comment":"Second Input Remote Bus number for control."},{"name":"M_rtf","data_type":"Int","null_value":0,"validation_action":"error","comment":"M parameter for ramp tracking filter","valid_range":{"max":8,"min":0}},{"name":"N_rtf","data_type":"Int","null_value":0,"validation_action":"error","comment":"N parameter for ramp tracking filter","valid_range":{"max":8,"min":0}},{"name":"Tw1","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for first washout filter for first input","valid_range":{"max":null,"min":"eps()"}},{"name":"Tw2","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for second washout filter for first input","valid_range":{"max":null,"min":0}},{"name":"T6","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for low-pass filter for first input","valid_range":{"max":null,"min":0}},{"name":"Tw3","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for first washout filter for second input","valid_range":{"max":null,"min":"eps()"}},{"name":"Tw4","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for second washout filter for second input","valid_range":{"max":null,"min":0}},{"name":"T7","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for low-pass filter for second input","valid_range":{"max":null,"min":0}},{"name":"Ks2","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Gain for low-pass filter for second input","valid_range":{"max":null,"min":0}},{"name":"Ks3","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Gain for second input","valid_range":{"max":null,"min":0}},{"name":"T8","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for ramp tracking filter","valid_range":{"max":null,"min":0}},{"name":"T9","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for ramp tracking filter","valid_range":{"max":null,"min":"eps()"}},{"name":"Ks1","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Gain before lead-lag blocks","valid_range":{"max":null,"min":0}},{"name":"T1","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for first lead-lag block","valid_range":{"max":null,"min":0}},{"name":"T2","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for first lead-lag block","valid_range":{"max":null,"min":0}},{"name":"T3","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for second lead-lag block","valid_range":{"max":null,"min":0}},{"name":"T4","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for second lead-lag block","valid_range":{"max":null,"min":0}},{"name":"Vst_lim","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"PSS output limits `(Vst_min, Vst_max)`"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tx_p1: 1st washout 1st input, \n\tx_p2: 2nd washout 1st input, \n\tx_p3: transducer 1st input, \n\tx_p4: 1st washout 2nd input, \n\tx_p5: 2nd washout 2nd input, \n\tx_p6: transducer 2nd input, \n\tx_p7: ramp tracking filter state 1, \n\tx_p8: ramp tracking filter state 2, \n\tx_p9: ramp tracking filter state 3, \n\tx_p10: ramp tracking filter state 4, \n\tx_p11: ramp tracking filter state 5, \n\tx_p12: ramp tracking filter state 6, \n\tx_p13: ramp tracking filter state 7, \n\tx_p14: ramp tracking filter state 8, \n\tx_p15: 1st lead-lag, \n\tx_p16: 2nd lead-lag,","internal_default":"[:x_p1, :x_p2, :x_p3, :x_p4, :x_p5, :x_p6, :x_p7, :x_p8, :x_p9, :x_p10, :x_p11, :x_p12, :x_p13, :x_p14, :x_p15, :x_p16]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"IEEEST has 16 states","internal_default":16},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"IEEEST has 16 differential states","internal_default":"[StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"IEEE Dual-Input Stabilizer Model","struct_name":"PSS2A","supertype":"PSS"},{"fields":[{"name":"input_code_1","data_type":"Int","null_value":1,"validation_action":"error","comment":"First Input Code for stabilizer","valid_range":{"max":6,"min":1}},{"name":"remote_bus_control_1","data_type":"Int","null_value":0,"comment":"First Input Remote Bus number for control."},{"name":"input_code_2","data_type":"Int","null_value":1,"validation_action":"error","comment":"Second Input Code for stabilizer","valid_range":{"max":6,"min":1}},{"name":"remote_bus_control_2","data_type":"Int","null_value":0,"comment":"Second Input Remote Bus number for control."},{"name":"M_rtf","data_type":"Int","null_value":0,"validation_action":"error","comment":"M parameter for ramp tracking filter","valid_range":{"max":8,"min":0}},{"name":"N_rtf","data_type":"Int","null_value":0,"validation_action":"error","comment":"N parameter for ramp tracking filter","valid_range":{"max":8,"min":0}},{"name":"Tw1","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for first washout filter for first input","valid_range":{"max":null,"min":"eps()"}},{"name":"Tw2","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for second washout filter for first input","valid_range":{"max":null,"min":0}},{"name":"T6","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for low-pass filter for first input","valid_range":{"max":null,"min":0}},{"name":"Tw3","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for first washout filter for second input","valid_range":{"max":null,"min":"eps()"}},{"name":"Tw4","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for second washout filter for second input","valid_range":{"max":null,"min":0}},{"name":"T7","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for low-pass filter for second input","valid_range":{"max":null,"min":0}},{"name":"Ks2","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Gain for low-pass filter for second input","valid_range":{"max":null,"min":0}},{"name":"Ks3","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Gain for second input","valid_range":{"max":null,"min":0}},{"name":"T8","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for ramp tracking filter","valid_range":{"max":null,"min":0}},{"name":"T9","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for ramp tracking filter","valid_range":{"max":null,"min":"eps()"}},{"name":"Ks1","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Gain before lead-lag blocks","valid_range":{"max":null,"min":0}},{"name":"T1","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for first lead-lag block","valid_range":{"max":null,"min":0}},{"name":"T2","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for first lead-lag block","valid_range":{"max":null,"min":0}},{"name":"T3","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for second lead-lag block","valid_range":{"max":null,"min":0}},{"name":"T4","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for second lead-lag block","valid_range":{"max":null,"min":0}},{"name":"T10","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for third lead-lag block","valid_range":{"max":null,"min":0}},{"name":"T11","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for third lead-lag block","valid_range":{"max":null,"min":0}},{"name":"Vs1_lim","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"First input limits `(Vs1_min, Vs1_max)`"},{"name":"Vs2_lim","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Second input limits `(Vs2_min, Vs2_max)`"},{"name":"Vst_lim","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"PSS output limits `(Vst_min, Vst_max)`"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tx_p1: 1st washout 1st input, \n\tx_p2: 2nd washout 1st input, \n\tx_p3: transducer 1st input, \n\tx_p4: 1st washout 2nd input, \n\tx_p5: 2nd washout 2nd input, \n\tx_p6: transducer 2nd input, \n\tx_p7: ramp tracking filter state 1, \n\tx_p8: ramp tracking filter state 2, \n\tx_p9: ramp tracking filter state 3, \n\tx_p10: ramp tracking filter state 4, \n\tx_p11: ramp tracking filter state 5, \n\tx_p12: ramp tracking filter state 6, \n\tx_p13: ramp tracking filter state 7, \n\tx_p14: ramp tracking filter state 8, \n\tx_p15: 1st lead-lag, \n\tx_p16: 2nd lead-lag, \n\tx_p17: 3rd lead-lag,","internal_default":"[:x_p1, :x_p2, :x_p3, :x_p4, :x_p5, :x_p6, :x_p7, :x_p8, :x_p9, :x_p10, :x_p11, :x_p12, :x_p13, :x_p14, :x_p15, :x_p16, :x_p17]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"IEEEST has 17 states","internal_default":17},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"IEEEST has 17 differential states","internal_default":"[StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"IEEE 421.5 2005 PSS2B IEEE Dual-Input Stabilizer Model","struct_name":"PSS2B","supertype":"PSS"},{"fields":[{"name":"input_code_1","data_type":"Int","null_value":1,"validation_action":"error","comment":"First Input Code for stabilizer","valid_range":{"max":7,"min":1}},{"name":"remote_bus_control_1","data_type":"Int","null_value":0,"comment":"First Input Remote Bus number for control."},{"name":"input_code_2","data_type":"Int","null_value":1,"validation_action":"error","comment":"Second Input Code for stabilizer","valid_range":{"max":6,"min":1}},{"name":"remote_bus_control_2","data_type":"Int","null_value":0,"comment":"Second Input Remote Bus number for control."},{"name":"M_rtf","data_type":"Int","null_value":0,"validation_action":"error","comment":"M parameter for ramp tracking filter","valid_range":{"max":8,"min":0}},{"name":"N_rtf","data_type":"Int","null_value":0,"validation_action":"error","comment":"N parameter for ramp tracking filter","valid_range":{"max":8,"min":0}},{"name":"Tw1","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for first washout filter for first input","valid_range":{"max":null,"min":"eps()"}},{"name":"Tw2","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for second washout filter for first input","valid_range":{"max":null,"min":0}},{"name":"T6","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for low-pass filter for first input","valid_range":{"max":null,"min":0}},{"name":"Tw3","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for first washout filter for second input","valid_range":{"max":null,"min":"eps()"}},{"name":"Tw4","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for second washout filter for second input","valid_range":{"max":null,"min":0}},{"name":"T7","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for low-pass filter for second input","valid_range":{"max":null,"min":0}},{"name":"Ks2","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Gain for low-pass filter for second input","valid_range":{"max":null,"min":0}},{"name":"Ks3","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Gain for second input","valid_range":{"max":null,"min":0}},{"name":"T8","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for ramp tracking filter","valid_range":{"max":null,"min":0}},{"name":"T9","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for ramp tracking filter","valid_range":{"max":null,"min":"eps()"}},{"name":"Ks1","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Gain before lead-lag blocks","valid_range":{"max":null,"min":0}},{"name":"T1","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for first lead-lag block","valid_range":{"max":null,"min":0}},{"name":"T2","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for first lead-lag block","valid_range":{"max":null,"min":0}},{"name":"T3","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for second lead-lag block","valid_range":{"max":null,"min":0}},{"name":"T4","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for second lead-lag block","valid_range":{"max":null,"min":0}},{"name":"T10","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for third lead-lag block","valid_range":{"max":null,"min":0}},{"name":"T11","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for third lead-lag block","valid_range":{"max":null,"min":0}},{"name":"Vs1_lim","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"First input limits `(Vs1_min, Vs1_max)`"},{"name":"Vs2_lim","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Second input limits `(Vs2_min, Vs2_max)`"},{"name":"Vst_lim","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"PSS output limits `(Vst_min, Vst_max)`"},{"name":"T12","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for fourth lead-lag block","valid_range":{"max":null,"min":0}},{"name":"T13","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for fourth lead-lag block","valid_range":{"max":null,"min":0}},{"name":"PSS_Hysteresis_param","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"PSS output hysteresis parameters `(PSSOFF, PSSON)`"},{"name":"Xcomp","data_type":"Float64","null_value":0,"comment":"Stator Leakage Reactance","valid_range":{"max":null,"min":0}},{"name":"Tcomp","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Time measured with compensated frequency","valid_range":{"max":null,"min":"eps()"}},{"name":"hysteresis_binary_logic","default":"1","data_type":"Int","null_value":0,"comment":"Hysteresis memory variable"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tx_p1: 1st washout 1st input, \n\tx_p2: 2nd washout 1st input, \n\tx_p3: transducer 1st input, \n\tx_p4: 1st washout 2nd input, \n\tx_p5: 2nd washout 2nd input, \n\tx_p6: transducer 2nd input, \n\tx_p7: ramp tracking filter state 1, \n\tx_p8: ramp tracking filter state 2, \n\tx_p9: ramp tracking filter state 3, \n\tx_p10: ramp tracking filter state 4, \n\tx_p11: ramp tracking filter state 5, \n\tx_p12: ramp tracking filter state 6, \n\tx_p13: ramp tracking filter state 7, \n\tx_p14: ramp tracking filter state 8, \n\tx_p15: 1st lead-lag, \n\tx_p16: 2nd lead-lag, \n\tx_p17: 3rd lead-lag, \n\tx_p18: 4th lead-lag, \n\tx_p19: washout block for compensated frequency,","internal_default":"[:x_p1, :x_p2, :x_p3, :x_p4, :x_p5, :x_p6, :x_p7, :x_p8, :x_p9, :x_p10, :x_p11, :x_p12, :x_p13, :x_p14, :x_p15, :x_p16, :x_p17, :x_p18, :x_p19]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"IEEEST has 19 states","internal_default":19},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"IEEEST has 19 differential states","internal_default":"[StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"IEEE 421.5 2016 PSS2C IEEE Dual-Input Stabilizer Model","struct_name":"PSS2C","supertype":"PSS"},{"fields":[{"name":"H","data_type":"Float64","null_value":0,"comment":"Rotor inertia constant in MWs/MVA","valid_range":{"max":null,"min":0}},{"name":"D","data_type":"Float64","null_value":0,"comment":"Rotor natural damping in pu","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tδ: rotor angle,\n\tω: rotor speed","internal_default":"[:δ, :ω]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"SingleMass has 1 state","internal_default":2},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of single mass shaft model. Typically represents the rotor mass.","struct_name":"SingleMass","supertype":"Shaft"},{"fields":[{"name":"H","data_type":"Float64","null_value":0,"comment":"Rotor inertia constant in MWs/MVA","valid_range":{"max":null,"min":0}},{"name":"H_hp","data_type":"Float64","null_value":0,"comment":"High pressure turbine inertia constant in MWs/MVA","valid_range":{"max":null,"min":0}},{"name":"H_ip","data_type":"Float64","null_value":0,"comment":"Intermediate pressure turbine inertia constant in MWs/MVA","valid_range":{"max":null,"min":0}},{"name":"H_lp","data_type":"Float64","null_value":0,"comment":"Low pressure turbine inertia constant in MWs/MVA","valid_range":{"max":null,"min":0}},{"name":"H_ex","data_type":"Float64","null_value":0,"comment":" Exciter inertia constant in MWs/MVA","valid_range":{"max":null,"min":0}},{"name":"D","data_type":"Float64","null_value":0,"comment":"Rotor natural damping in pu","valid_range":{"max":null,"min":0}},{"name":"D_hp","data_type":"Float64","null_value":0,"comment":"High pressure turbine natural damping in pu","valid_range":{"max":null,"min":0}},{"name":"D_ip","data_type":"Float64","null_value":0,"comment":"Intermediate pressure turbine natural damping in pu","valid_range":{"max":null,"min":0}},{"name":"D_lp","data_type":"Float64","null_value":0,"comment":"Low pressure turbine natural damping in pu","valid_range":{"max":null,"min":0}},{"name":"D_ex","data_type":"Float64","null_value":0,"comment":"Exciter natural damping in pu","valid_range":{"max":null,"min":0}},{"name":"D_12","data_type":"Float64","null_value":0,"comment":"High-Intermediate pressure turbine damping","valid_range":{"max":null,"min":0}},{"name":"D_23","data_type":"Float64","null_value":0,"comment":"Intermediate-Low pressure turbine damping","valid_range":{"max":null,"min":0}},{"name":"D_34","data_type":"Float64","null_value":0,"comment":"Low pressure turbine-Rotor damping","valid_range":{"max":null,"min":0}},{"name":"D_45","data_type":"Float64","null_value":0,"comment":"Rotor-Exciter damping","valid_range":{"max":null,"min":0}},{"name":"K_hp","data_type":"Float64","null_value":0,"comment":"High pressure turbine angle coefficient","valid_range":{"max":null,"min":0}},{"name":"K_ip","data_type":"Float64","null_value":0,"comment":"Intermediate pressure turbine angle coefficient","valid_range":{"max":null,"min":0}},{"name":"K_lp","data_type":"Float64","null_value":0,"comment":"Low pressure turbine angle coefficient","valid_range":{"max":null,"min":0}},{"name":"K_ex","data_type":"Float64","null_value":0,"comment":"Exciter angle coefficient","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tδ: rotor angle,\n\tω: rotor speed,\n\tδ_hp: rotor angle of high pressure turbine,\n\tω_hp: rotor speed of high pressure turbine,\n\tδ_ip: rotor angle of intermediate pressure turbine,\n\tω_ip: rotor speed of intermediate pressure turbine,\n\tδ_lp: rotor angle of low pressure turbine,\n\tω_lp: rotor speed of low pressure turbine,\n\tδ_ex: rotor angle of exciter,\n\tω_lp: rotor speed of exciter","internal_default":"[:δ, :ω, :δ_hp, :ω_hp, :δ_ip, :ω_ip, :δ_lp, :ω_lp, :δ_ex, :ω_ex]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"FiveMassShaft has 10 states","internal_default":10},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of 5 mass-spring shaft model.\n It contains a High-Pressure (HP) steam turbine, Intermediate-Pressure (IP)\n steam turbine, Low-Pressure (LP) steam turbine, the Rotor and an Exciter (EX) mover.","struct_name":"FiveMassShaft","supertype":"Shaft"},{"fields":[{"name":"efficiency","data_type":"Float64","null_value":0,"comment":" Efficiency factor that multiplies P_ref","valid_range":{"max":null,"min":0}},{"name":"P_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Power Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"","internal_default":"Vector{Symbol}()"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"TGFixed has no states","internal_default":0},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of a fixed Turbine Governor that returns a fixed mechanical torque\n given by the product of P_ref*efficiency","struct_name":"TGFixed","supertype":"TurbineGov"},{"fields":[{"name":"R","data_type":"Float64","null_value":0,"comment":"Speed droop parameter","valid_range":{"max":0.1,"min":"eps()"}},{"name":"T1","data_type":"Float64","null_value":0,"comment":"Governor time constant in s","valid_range":{"max":0.5,"min":"eps()"}},{"name":"T2","data_type":"Float64","null_value":0,"comment":"Combustion chamber time constant","valid_range":{"max":0.5,"min":"eps()"}},{"name":"T3","data_type":"Float64","null_value":0,"comment":"Load limit time constant (exhaust gas measurement time)","valid_range":{"max":5,"min":"eps()"}},{"name":"AT","data_type":"Float64","null_value":0,"comment":"Ambient temperature load limit","valid_range":{"max":1,"min":0}},{"name":"Kt","data_type":"Float64","null_value":0,"comment":"Load limit feedback gain","valid_range":{"max":5,"min":0}},{"name":"V_lim","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Operational control limits on fuel valve opening (V_min, V_max)"},{"name":"D_turb","data_type":"Float64","null_value":0,"comment":"Speed damping coefficient of gas turbine rotor","valid_range":{"max":0.5,"min":0}},{"name":"P_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Load Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the GAST model are:\n\tx_g1: Fuel valve opening,\n\tx_g2: Fuel flow,\n\tx_g3: Exhaust temperature load","internal_default":"[:x_g1, :x_g2, :x_g3]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"GasTG has 3 states","internal_default":3},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"GAST has 3 differential states","internal_default":"[StateTypes.Differential, StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of Gas Turbine-Governor. GAST in PSSE and GAST_PTI in PowerWorld.","struct_name":"GasTG","supertype":"TurbineGov"},{"fields":[{"name":"T1","data_type":"Float64","null_value":0,"comment":"Governor mechanism time constant","valid_range":{"max":100,"min":"eps()"}},{"name":"T2","data_type":"Float64","null_value":0,"comment":"Turbine power time constant","valid_range":{"max":100,"min":"eps()"}},{"name":"T3","data_type":"Float64","null_value":0,"comment":"Turbine exhaust temperature time constant","valid_range":{"max":100,"min":"eps()"}},{"name":"K","data_type":"Float64","null_value":0,"comment":"Governor gain (reciprocal of droop)","valid_range":{"max":100,"min":"eps()"}},{"name":"T4","data_type":"Float64","null_value":0,"comment":"Governor lead time constant","valid_range":{"max":100,"min":"eps()"}},{"name":"T5","data_type":"Float64","null_value":0,"comment":"Governor lag time constant","valid_range":{"max":100,"min":"eps()"}},{"name":"T6","data_type":"Float64","null_value":0,"comment":"Actuator time constant","valid_range":{"max":100,"min":"eps()"}},{"name":"Td","data_type":"Float64","null_value":0,"comment":"Engine time delay","valid_range":{"max":100,"min":"eps()"}},{"name":"P_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Load Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the DEGOV model are:\n\tx_ecb1: Electric control box 1,\n\tx_ecb2: Electric control box 2,\n\tx_a1: Actuator 1,\n\tx_a2: Actuator 2,\n\tx_a3: Actuator 3,","internal_default":"[:x_ecb1, :x_ecb2, :x_a1, :x_a2, :x_a3]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"DEGOV has 5 states","internal_default":5},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"DEGOV has 5 differential states","internal_default":"[StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters Woodward Diesel Governor Model. DEGOV in PowerWorld.","struct_name":"DEGOV","supertype":"TurbineGov"},{"fields":[{"name":"Rselect","data_type":"Int","null_value":1,"validation_action":"error","comment":"Feedback signal for governor droop","valid_range":{"max":1,"min":-2}},{"name":"fuel_flag","data_type":"Int","null_value":0,"validation_action":"error","comment":"Flag Switch for fuel source characteristic","valid_range":{"max":1,"min":0}},{"name":"R","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Speed droop parameter","valid_range":{"max":null,"min":"eps()"}},{"name":"Tpelec","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Electrical power transducer time constant, seconds","valid_range":{"max":null,"min":"eps()"}},{"name":"speed_error_signal","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Speed error signal limits"},{"name":"Kp_gov","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Governor proportional gain","valid_range":{"max":null,"min":0}},{"name":"Ki_gov","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Governor integral gain","valid_range":{"max":null,"min":0}},{"name":"Kd_gov","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Governor derivative gain","valid_range":{"max":null,"min":0}},{"name":"Td_gov","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Governor derivative time constant","valid_range":{"max":null,"min":0}},{"name":"valve_position_limits","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Valve position limits"},{"name":"T_act","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Actuator time constant","valid_range":{"max":null,"min":0}},{"name":"K_turb","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Turbine gain","valid_range":{"max":null,"min":0}},{"name":"Wf_nl","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"No load fuel flow, pu","valid_range":{"max":null,"min":0}},{"name":"Tb","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Turbine lag time constant, sec","valid_range":{"max":null,"min":0}},{"name":"Tc","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Turbine lead time constant, sec","valid_range":{"max":null,"min":0}},{"name":"T_eng","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Transport lag time constant for diesel engine, sec","valid_range":{"max":null,"min":0}},{"name":"Tf_load","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Load limiter time constant","valid_range":{"max":null,"min":0}},{"name":"Kp_load","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Load limiter proportional gain for PI controller","valid_range":{"max":null,"min":0}},{"name":"Ki_load","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Load integral gain for PI controller","valid_range":{"max":null,"min":0}},{"name":"Ld_ref","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Load limiter integral gain for PI controller","valid_range":{"max":null,"min":0}},{"name":"Dm","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Mechanical damping coefficient, pu","valid_range":{"max":null,"min":0}},{"name":"R_open","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Maximum valve opening rate, pu/sec","valid_range":{"max":null,"min":0}},{"name":"R_close","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Maximum valve closing rate, pu/sec","valid_range":{"max":null,"min":0}},{"name":"Ki_mw","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Power controller (reset) gain","valid_range":{"max":null,"min":0}},{"name":"A_set","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Acceleration limiter setpoint, pu/sec","valid_range":{"max":null,"min":0}},{"name":"Ka","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Acceleration limiter gain","valid_range":{"max":null,"min":0}},{"name":"Ta","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Acceleration limiter time constant ","valid_range":{"max":null,"min":"eps()"}},{"name":"T_rate","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Turbine rating","valid_range":{"max":null,"min":0}},{"name":"db","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Speed governor deadband","valid_range":{"max":null,"min":0}},{"name":"Tsa","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Temperature detection lead time constant","valid_range":{"max":null,"min":0}},{"name":"Tsb","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Temperature detection lag time constant","valid_range":{"max":null,"min":0}},{"name":"R_lim","data_type":"UpDown","null_value":"(up = 0.0, down = 0.0)","comment":"Maximum rate of load increa"},{"name":"P_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Power Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the GGOV1 model are:\n\tPe: Machine Electrical Power Measurement,\n\tx_g1: Governor differential control,\n\tx_g2: Governor integral control, \n\tx_g3: Turbine actuator, \n\tx_g4: Turbine Lead-Lag, \n\tx_g5: Turbine load limiter measurement, \n\tx_g6: Turbine Load Limiter Integral Control, \n\tx_g7: Supervisory Load Control, \n\tx_g8: Acceleration Control, \n\tx_g9 Temperature Detection Lead - Lag:","internal_default":"[:Pe, :x_g1, :x_g2, :x_g3, :x_g4, :x_g5, :x_g6, :x_g7, :x_g8, :x_g9]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"GeneralGovModel has 10 states","internal_default":10},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"GGOV1 has 10 differential states","internal_default":"[StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Differential, StateTypes.Hybrid]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"GE General Governor/Turbine Model. The GeneralGovModel (GGOV1) model is a general purpose governor model used for a variety of prime movers controlled by proportional-integral-derivative (PID) governors including gas turbines.","struct_name":"GeneralGovModel","supertype":"TurbineGov"},{"fields":[{"name":"R","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Droop parameter","valid_range":{"max":0.1,"min":0}},{"name":"T1","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Governor time constant","valid_range":{"max":0.5,"min":"eps()"}},{"name":"valve_position_limits","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Valve position limits"},{"name":"T2","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Lead Lag Lead Time constant ","valid_range":{"max":null,"min":0}},{"name":"T3","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Lead Lag Lag Time constant ","valid_range":{"max":10,"min":"eps()"}},{"name":"D_T","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Turbine Damping","valid_range":{"max":0.5,"min":0}},{"name":"DB_h","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Deadband for overspeed","valid_range":{"max":null,"min":0}},{"name":"DB_l","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Deadband for underspeed","valid_range":{"max":0,"min":null}},{"name":"T_rate","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Turbine Rate (MW). If zero, generator base is used.","valid_range":{"max":null,"min":0}},{"name":"P_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Power Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the SteamTurbineGov1 model are:\n\tx_g1: Valve Opening,\n\tx_g2: Lead-lag state","internal_default":"[:x_g1, :x_g2]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"TGOV1 has 2 states","internal_default":2},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"TGOV1 has 2 differential states","internal_default":"[StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Steam Turbine-Governor. This model considers both TGOV1 or TGOV1DU in PSS/E.","struct_name":"SteamTurbineGov1","supertype":"TurbineGov"},{"fields":[{"name":"R","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Permanent droop parameter","valid_range":{"max":0.1,"min":0}},{"name":"r","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Temporary Droop","valid_range":{"max":2,"min":0}},{"name":"Tr","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Governor time constant","valid_range":{"max":30,"min":"eps()"}},{"valiation_action":"error","name":"Tf","data_type":"Float64","null_value":0,"comment":"Filter Time constant","valid_range":{"max":0.1,"min":"eps()"}},{"name":"Tg","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Servo time constant","valid_range":{"max":1,"min":"eps()"}},{"name":"VELM","data_type":"Float64","null_value":0,"validation_action":"error","comment":"gate velocity limit","valid_range":{"max":0.3,"min":"eps()"}},{"name":"gate_position_limits","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Gate position limits"},{"name":"Tw","data_type":"Float64","null_value":0,"validation_action":"error","comment":"water time constant","valid_range":{"max":3,"min":"eps()"}},{"name":"At","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Turbine gain","valid_range":{"max":1.5,"min":0.8}},{"name":"D_T","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Turbine Damping","valid_range":{"max":0.5,"min":0}},{"name":"q_nl","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"No-power flow","valid_range":{"max":null,"min":0}},{"name":"P_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Power Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the HydroTurbineGov model are:\n\tx_g1: filter_output,\n\tx_g2: desired gate, \n\tx_g3: gate opening, \n\tx_g4: turbine flow","internal_default":"[:x_g1, :x_g2, :x_g3, :x_g4]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"HYGOV has 4 states","internal_default":4},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"HYGOV has 4 differential states","internal_default":"[StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Hydro Turbine-Governor.","struct_name":"HydroTurbineGov","supertype":"TurbineGov"},{"fields":[{"name":"K","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Governor Gain","valid_range":{"max":30,"min":5}},{"name":"T1","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Input Filter Lag","valid_range":{"max":5,"min":0}},{"name":"T2","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Input Filter Lead","valid_range":{"max":10,"min":0}},{"name":"T3","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Valve position Time Constant","valid_range":{"max":1,"min":"eps()"}},{"name":"U0","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Maximum Valve Opening Rate","valid_range":{"max":0.03,"min":0.01}},{"name":"U_c","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Maximum Valve closing rate","valid_range":{"max":0,"min":-0.3}},{"name":"valve_position_limits","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Valve position limits in MW"},{"name":"T4","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time Constant inlet steam","valid_range":{"max":1,"min":0}},{"name":"K1","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Fraction of high presure shaft power","valid_range":{"max":1,"min":-2}},{"name":"K2","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Fraction of low presure shaft power","valid_range":{"max":null,"min":0}},{"name":"T5","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for second boiler pass","valid_range":{"max":10,"min":0}},{"name":"K3","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Fraction of high presure shaft power second boiler pass","valid_range":{"max":0.5,"min":0}},{"name":"K4","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Fraction of low presure shaft power second boiler pass","valid_range":{"max":0.5,"min":0}},{"name":"T6","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for third boiler pass","valid_range":{"max":10,"min":0}},{"name":"K5","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Fraction of high presure shaft power third boiler pass","valid_range":{"max":0.35,"min":0}},{"name":"K6","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Fraction of low presure shaft power third boiler pass","valid_range":{"max":0.55,"min":0}},{"name":"T7","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for fourth boiler pass","valid_range":{"max":10,"min":0}},{"name":"K7","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Fraction of high presure shaft power fourth boiler pass","valid_range":{"max":0.3,"min":0}},{"name":"K8","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Fraction of low presure shaft power fourth boiler pass","valid_range":{"max":0.3,"min":0}},{"name":"P_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Power Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the IEEETurbineGov model are:\n\tx_g1: First Governor integrator,\n\tx_g2: Governor output,\n\tx_g3: First Turbine integrator, \n\tx_g4: Second Turbine Integrator, \n\tx_g5: Third Turbine Integrator, \n\tx_g6: Fourth Turbine Integrator, ","internal_default":"[:x_g1, :x_g2, :x_g3, :x_g4, :x_g5, :x_g6]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"IEEEG1 has 6 states","internal_default":6},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"IEEEG1 has 6 differential states","internal_default":"[StateTypes.Differential, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"IEEE Type 1 Speed-Governing Model","struct_name":"IEEETurbineGov1","supertype":"TurbineGov"},{"fields":[{"name":"R","data_type":"Float64","null_value":0,"comment":"Droop parameter","valid_range":{"max":null,"min":0}},{"name":"Ts","data_type":"Float64","null_value":0,"comment":"Governor time constant","valid_range":{"max":null,"min":0}},{"name":"Tc","data_type":"Float64","null_value":0,"comment":"Servo time constant","valid_range":{"max":null,"min":0}},{"name":"T3","data_type":"Float64","null_value":0,"comment":"Transient gain time constant","valid_range":{"max":null,"min":0}},{"name":"T4","data_type":"Float64","null_value":0,"comment":"Power fraction time constant","valid_range":{"max":null,"min":0}},{"name":"T5","data_type":"Float64","null_value":0,"comment":"Reheat time constant","valid_range":{"max":null,"min":0}},{"name":"valve_position_limits","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Valve position limits in MW"},{"name":"P_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Power Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the TGTypeI model are:\n\tx_g1: Governor state,\n\tx_g2: Servo state,\n\tx_g3: Reheat state","internal_default":"[:x_g1, :x_g2, :x_g3]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"TGTypeI has 3 states","internal_default":3},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of a Turbine Governor Type I.","struct_name":"TGTypeI","supertype":"TurbineGov"},{"fields":[{"name":"R","data_type":"Float64","null_value":0,"comment":"Droop parameter","valid_range":{"max":null,"min":0}},{"name":"T1","data_type":"Float64","null_value":0,"comment":"Transient gain time constant","valid_range":{"max":null,"min":0}},{"name":"T2","data_type":"Float64","null_value":0,"comment":"Power fraction time constant","valid_range":{"max":null,"min":0}},{"name":"τ_limits","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Power into the governor limits"},{"name":"P_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Power Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the TGTypeI model are:\n\tx_g1: lead-lag state","internal_default":"[:xg]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"TGTypeII has 1 state","internal_default":1},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of a Turbine Governor Type II.","struct_name":"TGTypeII","supertype":"TurbineGov"},{"fields":[{"name":"rated_voltage","data_type":"Float64","null_value":0,"comment":"rated voltage","valid_range":{"max":null,"min":0}},{"name":"rated_current","data_type":"Float64","null_value":0,"comment":"rated VA","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"","internal_default":"Vector{Symbol}()"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"AverageConverter has no states","internal_default":0}],"docstring":"Parameters of an average converter model","struct_name":"AverageConverter","supertype":"Converter"},{"fields":[{"name":"T_g","data_type":"Float64","null_value":0,"comment":"Converter time constant (s)","valid_range":{"max":null,"min":0}},{"name":"Rrpwr","data_type":"Float64","null_value":0,"comment":"Low Voltage Power Logic (LVPL) ramp rate limit (pu/s)","valid_range":{"max":null,"min":0}},{"name":"Brkpt","data_type":"Float64","null_value":0,"comment":"LVPL characteristic voltage 2 (pu)","valid_range":{"max":null,"min":0}},{"name":"Zerox","data_type":"Float64","null_value":0,"comment":"LVPL characteristic voltage 1 (pu)","valid_range":{"max":null,"min":0}},{"name":"Lvpl1","data_type":"Float64","null_value":0,"comment":"LVPL gain (pu)","valid_range":{"max":null,"min":0}},{"name":"Vo_lim","data_type":"Float64","null_value":0,"comment":"Voltage limit for high voltage reactive current management (pu)","valid_range":{"max":null,"min":0}},{"name":"Lv_pnts","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Voltage points for low voltage active current management (pu) (Lvpnt0, Lvpnt1)"},{"name":"Io_lim","data_type":"Float64","null_value":0,"comment":"Current limit (pu) for high voltage reactive current management (specified as a negative value)","valid_range":{"max":0,"min":null}},{"name":"T_fltr","data_type":"Float64","null_value":0,"comment":"Voltage filter time constant for low voltage active current management (s)","valid_range":{"max":null,"min":0}},{"name":"K_hv","data_type":"Float64","null_value":0,"comment":"Overvoltage compensation gain used in the high voltage reactive current management","valid_range":{"max":null,"min":0}},{"name":"Iqr_lims","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limit on rate of change for reactive current (pu/s) (Iqr_min, Iqr_max)"},{"name":"Accel","data_type":"Float64","null_value":0,"comment":"Acceleration factor","valid_range":{"max":1,"min":0}},{"name":"Lvpl_sw","data_type":"Int","null_value":0,"comment":"Low voltage power logic (LVPL) switch. (0: LVPL not present, 1: LVPL present)","valid_range":{"max":1,"min":0}},{"name":"Q_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Initial machine reactive power from power flow","valid_range":{"max":null,"min":0}},{"name":"R_source","default":"0.0","data_type":"Float64","null_value":0,"comment":"Output resistor used for the Thevenin Equivalent","valid_range":{"max":null,"min":0}},{"name":"X_source","default":"1.0e5","data_type":"Float64","null_value":0,"comment":"Output resistor used for the Thevenin Equivalent","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\tIp: Converter lag for Ipcmd,\tIq: Converter lag for Iqcmd,\tVmeas: Voltage filter for low voltage active current management","internal_default":"[:Ip, :Iq, :Vmeas]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"RenewableEnergyConverterTypeA has 3 states","internal_default":3}],"docstring":"Parameters of a renewable energy generator/converter model, this model corresponds to REGCA1 in PSSE","struct_name":"RenewableEnergyConverterTypeA","supertype":"Converter"},{"fields":[{"name":"T_g","data_type":"Float64","null_value":0,"comment":"Converter time constant (s)","valid_range":{"max":null,"min":0}},{"name":"Rrpwr","data_type":"Float64","null_value":0,"comment":"Low Voltage Power Logic (LVPL) ramp rate limit (pu/s)","valid_range":{"max":null,"min":0}},{"name":"Brkpt","data_type":"Float64","null_value":0,"comment":"LVPL characteristic voltage 2 (pu)","valid_range":{"max":null,"min":0}},{"name":"Zerox","data_type":"Float64","null_value":0,"comment":"LVPL characteristic voltage 1 (pu)","valid_range":{"max":null,"min":0}},{"name":"Lvpl1","data_type":"Float64","null_value":0,"comment":"LVPL gain (pu)","valid_range":{"max":null,"min":0}},{"name":"Vo_lim","data_type":"Float64","null_value":0,"comment":"Voltage limit for high voltage reactive current management (pu)","valid_range":{"max":null,"min":0}},{"name":"Lv_pnts","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Voltage points for low voltage active current management (pu) (Lvpnt0, Lvpnt1)"},{"name":"Io_lim","data_type":"Float64","null_value":0,"comment":"Current limit (pu) for high voltage reactive current management (specified as a negative value)","valid_range":{"max":0,"min":null}},{"name":"T_fltr","data_type":"Float64","null_value":0,"comment":"Voltage filter time constant for low voltage active current management (s)","valid_range":{"max":null,"min":0}},{"name":"K_hv","data_type":"Float64","null_value":0,"comment":"Overvoltage compensation gain used in the high voltage reactive current management","valid_range":{"max":null,"min":0}},{"name":"Iqr_lims","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limit on rate of change for reactive current (pu/s) (Iqr_min, Iqr_max)"},{"name":"Accel","data_type":"Float64","null_value":0,"comment":"Acceleration factor","valid_range":{"max":1,"min":0}},{"name":"Lvpl_sw","data_type":"Int","null_value":0,"comment":"Low voltage power logic (LVPL) switch. (0: LVPL not present, 1: LVPL present)","valid_range":{"max":1,"min":0}},{"name":"Q_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Initial machine reactive power from power flow","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\tIp: Converter lag for Ipcmd,\tIq: Converter lag for Iqcmd,\tVmeas: Voltage filter for low voltage active current management","internal_default":"[:Ip, :Iq, :Vmeas]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"RenewableEnergyVoltageConverterTypeA has 3 states","internal_default":3}],"docstring":"Parameters of a renewable energy generator/converter model, this model corresponds to REGCA1 in PSSE, but to be interfaced using a Voltage Source instead of a Current Source.","struct_name":"RenewableEnergyVoltageConverterTypeA","supertype":"Converter"},{"fields":[{"name":"voltage","data_type":"Float64","null_value":0,"comment":"rated VA","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"","internal_default":"Vector{Symbol}()"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"FixedDCSource has no states","internal_default":0},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of a Fixed DC Source that returns a fixed DC voltage","struct_name":"FixedDCSource","supertype":"DCSource"},{"fields":[{"name":"rated_voltage","data_type":"Float64","null_value":0,"comment":"rated voltage","valid_range":{"max":null,"min":0}},{"name":"rated_current","data_type":"Float64","null_value":0,"comment":"rated current","valid_range":{"max":null,"min":0}},{"name":"battery_voltage","data_type":"Float64","null_value":0,"comment":"battery voltage","valid_range":{"max":null,"min":0}},{"name":"battery_resistance","data_type":"Float64","null_value":0,"comment":"battery_resistance","valid_range":{"max":null,"min":0}},{"name":"dc_dc_inductor","data_type":"Float64","null_value":0,"comment":"DC/DC inductance","valid_range":{"max":null,"min":0}},{"name":"dc_link_capacitance","data_type":"Float64","null_value":0,"comment":"DC-link capacitor","valid_range":{"max":null,"min":0}},{"name":"fs","data_type":"Float64","null_value":0,"comment":"DC/DC converter switching frequency","valid_range":{"max":null,"min":0}},{"name":"kpv","data_type":"Float64","null_value":0,"comment":"voltage controller proportional gain","valid_range":{"max":null,"min":0}},{"name":"kiv","data_type":"Float64","null_value":0,"comment":"voltage controller integral gain","valid_range":{"max":null,"min":0}},{"name":"kpi","data_type":"Float64","null_value":0,"comment":"current controller proportional gain","valid_range":{"max":null,"min":0}},{"name":"kii","data_type":"Float64","null_value":0,"comment":"current controller integral gain","valid_range":{"max":null,"min":0}},{"name":"Vdc_ref","default":"1.1","data_type":"Float64","null_value":0,"comment":"Reference DC-Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the ZeroOrderBESS model are:\n\tv_dc: DC-link votlage,\n\ti_b: Battery current,\n\t ν: integrator state of the voltage controller,\n\t ζ: integrator state of the PI current controller","internal_default":"[:v_dc, :i_b, :ν, :ζ]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"ZeroOrderBESS has 4 states","internal_default":4}],"docstring":"Parameters for the DC-side with a Battery Energy Storage System from paper at https://arxiv.org/abs/2007.11776","struct_name":"ZeroOrderBESS","supertype":"DCSource"},{"fields":[{"name":"lf","data_type":"Float64","null_value":0,"comment":"Series inductance in p.u. of converter filter","valid_range":{"max":null,"min":0}},{"name":"rf","data_type":"Float64","null_value":0,"comment":"Series resistance in p.u. of converter filter","valid_range":{"max":null,"min":0}},{"name":"cf","data_type":"Float64","null_value":0,"comment":"Shunt capacitance in p.u. of converter filter","valid_range":{"max":null,"min":0}},{"name":"lg","data_type":"Float64","null_value":0,"comment":"Series inductance in p.u. of converter filter to the grid","valid_range":{"max":null,"min":0}},{"name":"rg","data_type":"Float64","null_value":0,"comment":"Series resistance in p.u. of converter filter to the grid","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the LCLFilter model are:\n\tir_cnv: Real current out of the converter,\n\tii_cnv: Imaginary current out of the converter,\n\tvr_filter: Real voltage at the filter's capacitor,\n\tvi_filter: Imaginary voltage at the filter's capacitor,\n\tir_filter: Real current out of the filter,\n\tii_filter: Imaginary current out of the filter","internal_default":"[:ir_cnv, :ii_cnv, :vr_filter, :vi_filter, :ir_filter, :ii_filter]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"LCLFilter has 6 states","internal_default":6}],"docstring":"Parameters of a LCL filter outside the converter, the states are in the grid's reference frame","struct_name":"LCLFilter","supertype":"Filter"},{"fields":[{"name":"lf","data_type":"Float64","null_value":0,"comment":"filter inductance","valid_range":{"max":null,"min":0}},{"name":"rf","data_type":"Float64","null_value":0,"comment":"filter resistance","valid_range":{"max":null,"min":0}},{"name":"cf","data_type":"Float64","null_value":0,"comment":"filter capacitance","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the LCFilter model are:\n\tir_filter: Real current out of the filter,\n\tii_filter: Imaginary current out of the filter","internal_default":"[:ir_filter, :ii_filter]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"LCFilter has two states","internal_default":2}],"docstring":"Parameters of a LCL filter outside the converter","struct_name":"LCFilter","supertype":"Filter"},{"fields":[{"name":"rf","data_type":"Float64","null_value":0,"comment":"Series resistance in p.u. of converter filter to the grid","valid_range":{"max":null,"min":0}},{"name":"lf","data_type":"Float64","null_value":0,"comment":"Series inductance in p.u. of converter filter to the grid","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"RLFilter has zero states","internal_default":"Vector{Symbol}()"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"RLFilter has zero states","internal_default":0}],"docstring":"Parameters of RL series filter in algebraic representation","struct_name":"RLFilter","supertype":"Filter"},{"fields":[{"name":"ω_lp","data_type":"Float64","null_value":0,"comment":"PLL low-pass filter frequency (rad/sec)","valid_range":{"max":null,"min":0}},{"name":"kp_pll","data_type":"Float64","null_value":0,"comment":"PLL proportional gain","valid_range":{"max":null,"min":0}},{"name":"ki_pll","data_type":"Float64","null_value":0,"comment":"PLL integral gain","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the KauraPLL model are:\n\tvd_pll: d-axis of the measured voltage in the PLL synchronous reference frame (SRF),\n\tvq_pll: q-axis of the measured voltage in the PLL SRF,\n\tε_pll: Integrator state of the PI controller,\n\tθ_pll: Phase angle displacement in the PLL SRF","internal_default":"[:vd_pll, :vq_pll, :ε_pll, :θ_pll]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"KauraPLL has 4 states","internal_default":4}],"docstring":"Parameters of a Phase-Locked Loop (PLL) based on Kaura, Vikram, and Vladimir Blasko.\n\"Operation of a phase locked loop system under distorted utility conditions.\"\nIEEE Transactions on Industry applications 33.1 (1997): 58-63.","struct_name":"KauraPLL","supertype":"FrequencyEstimator"},{"fields":[{"name":"ω_lp","data_type":"Float64","null_value":0,"comment":"PLL low-pass filter frequency (rad/sec)","valid_range":{"max":null,"min":0}},{"name":"kp_pll","data_type":"Float64","null_value":0,"comment":"PLL proportional gain","valid_range":{"max":null,"min":0}},{"name":"ki_pll","data_type":"Float64","null_value":0,"comment":"PLL integral gain","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the ReducedOrderPLL model are:\n\tvq_pll: q-axis of the measured voltage in the PLL synchronous reference frame (SRF),\n\tε_pll: Integrator state of the PI controller,\n\tθ_pll: Phase angle displacement in the PLL SRF","internal_default":"[:vq_pll, :ε_pll, :θ_pll]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"ReducedOrderPLL has 3 states","internal_default":3}],"docstring":"Parameters of a Phase-Locked Loop (PLL) based on Purba, Dhople, Jafarpour, Bullo and Johnson.\n\"Reduced-order Structure-preserving Model for Parallel-connected Three-phase Grid-tied Inverters.\"\n2017 IEEE 18th Workshop on Control and Modeling for Power Electronics (COMPEL): 1-7.","struct_name":"ReducedOrderPLL","supertype":"FrequencyEstimator"},{"fields":[{"name":"frequency","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference used"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"FixedFrequency has no states","internal_default":"Vector{Symbol}()"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"FixedFrequency has no states","internal_default":0}],"docstring":"Parameters of a Fixed Frequency Estimator (i.e. no PLL).","struct_name":"FixedFrequency","supertype":"FrequencyEstimator"},{"fields":[{"name":"Ta","data_type":"Float64","null_value":0,"comment":"VSM inertia constant","valid_range":{"max":null,"min":0}},{"name":"kd","data_type":"Float64","null_value":0,"comment":"VSM damping constant","valid_range":{"max":null,"min":0}},{"name":"kω","data_type":"Float64","null_value":0,"comment":"frequency droop gain","valid_range":{"max":null,"min":0}},{"name":"P_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Power Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the VirtualInertia model are:\n\tθ_oc: Phase angle displacement of the virtual synchronous generator model\n\tω_oc: Speed of the rotating reference frame of the virtual synchronous generator model","internal_default":"[:θ_oc, :ω_oc]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"VirtualInertia has two states","internal_default":2}],"docstring":"Parameters of a Virtual Inertia with SRF using VSM for active power controller","struct_name":"VirtualInertia","supertype":"ActivePowerControl"},{"fields":[{"name":"Rp","data_type":"Float64","null_value":0,"comment":"Droop Gain","valid_range":{"max":null,"min":0}},{"name":"ωz","data_type":"Float64","null_value":0,"comment":"filter frequency cutoff","valid_range":{"max":null,"min":0}},{"name":"P_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Power Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the ActivePowerDroop model are:\n\tθ_oc: Phase angle displacement of the inverter model,\n\tp_oc: Measured active power of the inverter model","internal_default":"[:θ_oc, :p_oc]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"ActivePowerDroop has two states","internal_default":2}],"docstring":"Parameters of an Active Power droop controller","struct_name":"ActivePowerDroop","supertype":"ActivePowerControl"},{"fields":[{"name":"Kp_p","data_type":"Float64","null_value":0,"comment":"Proportional Gain","valid_range":{"max":null,"min":0}},{"name":"Ki_p","data_type":"Float64","null_value":0,"comment":"Integral Gain","valid_range":{"max":null,"min":0}},{"name":"ωz","data_type":"Float64","null_value":0,"comment":"filter frequency cutoff","valid_range":{"max":null,"min":0}},{"name":"P_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Power Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the ActivePowerPI model are:\n\tσp_oc: Integrator state of the PI Controller,\n\tp_oc: Measured active power of the inverter model","internal_default":"[:σp_oc, :p_oc]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"ActivePowerPI has two states","internal_default":2}],"docstring":"Parameters of a Proportional-Integral Active Power controller for a specified power reference","struct_name":"ActivePowerPI","supertype":"ActivePowerControl"},{"fields":[{"name":"k1","data_type":"Float64","null_value":0,"comment":"VOC Synchronization Gain","valid_range":{"max":null,"min":0}},{"name":"ψ","data_type":"Float64","null_value":0,"comment":"Rotation angle of the controller","valid_range":{"max":null,"min":0}},{"name":"P_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Power Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the ActiveVirtualOscillator model are:\n\tθ_oc: Phase angle displacement of the inverter model","internal_default":"[:θ_oc]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"ActiveVirtualOscillator has one state","internal_default":1}],"docstring":"Parameters of an Active Virtual Oscillator controller. Model is based from the paper Model Reduction for Inverters with Current Limiting and Dispatchable Virtual Oscillator Control by O. Ajala et al.","struct_name":"ActiveVirtualOscillator","supertype":"ActivePowerControl"},{"fields":[{"name":"bus_control","data_type":"Int","null_value":0,"comment":"Bus Number for voltage control; ","valid_range":{"max":null,"min":0}},{"name":"from_branch_control","data_type":"Int","null_value":0,"comment":"Monitored branch FROM bus number for line drop compensation (if 0 generator power will be used)","valid_range":{"max":null,"min":0}},{"name":"to_branch_control","data_type":"Int","null_value":0,"comment":"Monitored branch TO bus number for line drop compensation (if 0 generator power will be used)","valid_range":{"max":null,"min":0}},{"name":"branch_id_control","data_type":"String","null_value":0,"comment":"Branch circuit id for line drop compensation (as a string). If 0 generator power will be used"},{"name":"Freq_Flag","data_type":"Int","null_value":0,"comment":"Frequency Flag for REPCA1: 0: disable, 1:enable","valid_range":{"max":1,"min":0}},{"name":"K_pg","data_type":"Float64","null_value":0,"comment":"Active power PI control proportional gain","valid_range":{"max":null,"min":0}},{"name":"K_ig","data_type":"Float64","null_value":0,"comment":"Active power PI control integral gain","valid_range":{"max":null,"min":0}},{"name":"T_p","data_type":"Float64","null_value":0,"comment":"Real power measurement filter time constant (s)","valid_range":{"max":null,"min":0}},{"name":"fdbd_pnts","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Frequency error dead band thresholds `(fdbd1, fdbd2)`"},{"name":"fe_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Upper/Lower limit on frequency error `(fe_min, fe_max)`"},{"name":"P_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Upper/Lower limit on power reference `(P_min, P_max)`"},{"name":"T_g","data_type":"Float64","null_value":0,"comment":"Power Controller lag time constant","valid_range":{"max":null,"min":0}},{"name":"D_dn","data_type":"Float64","null_value":0,"comment":"Droop for over-frequency conditions","valid_range":{"max":0,"min":null}},{"name":"D_up","data_type":"Float64","null_value":0,"comment":"Droop for under-frequency conditions","valid_range":{"max":null,"min":0}},{"name":"dP_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Upper/Lower limit on power reference ramp rates`(dP_min, dP_max)`"},{"name":"P_lim_inner","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Upper/Lower limit on power reference for REECB`(P_min_inner, P_max_inner)`"},{"name":"T_pord","data_type":"Float64","null_value":0,"comment":"Power filter time constant REECB time constant","valid_range":{"max":null,"min":0}},{"name":"P_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Power Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the ActiveRenewableControllerAB model depends on the Flag","internal_default":"PowerSystems.get_activeRETypeAB_states(Freq_Flag)[1]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"The states of the ActiveRenewableControllerAB model depends on the Flag","internal_default":"PowerSystems.get_activeRETypeAB_states(Freq_Flag)[2]"}],"docstring":"Parameters of Active Power Controller including REPCA1 and REECB1","struct_name":"ActiveRenewableControllerAB","supertype":"ActivePowerControl"},{"fields":[{"name":"bus_control","data_type":"Int","null_value":0,"comment":"Bus Number for voltage control; ","valid_range":{"max":null,"min":0}},{"name":"from_branch_control","data_type":"Int","null_value":0,"comment":"Monitored branch FROM bus number for line drop compensation (if 0 generator power will be used)","valid_range":{"max":null,"min":0}},{"name":"to_branch_control","data_type":"Int","null_value":0,"comment":"Monitored branch TO bus number for line drop compensation (if 0 generator power will be used)","valid_range":{"max":null,"min":0}},{"name":"branch_id_control","data_type":"String","null_value":0,"comment":"Branch circuit id for line drop compensation (as a string). If 0 generator power will be used"},{"name":"VC_Flag","data_type":"Int","null_value":0,"comment":"Voltage Compensator Flag for REPCA1","valid_range":{"max":1,"min":0}},{"name":"Ref_Flag","data_type":"Int","null_value":0,"comment":"Flag for Reactive Power Control for REPCA1. 0: Q-control, 1: V-control","valid_range":{"max":1,"min":0}},{"name":"PF_Flag","data_type":"Int","null_value":0,"comment":"Flag for Power Factor Control for Outer Control of REECB1. 0: Q-control, 1: Power Factor Control","valid_range":{"max":1,"min":0}},{"name":"V_Flag","data_type":"Int","null_value":0,"comment":"Flag for Voltage Control for Outer Control of REECB1. 0: Voltage Control, 1: Q-Control","valid_range":{"max":1,"min":0}},{"name":"T_fltr","data_type":"Float64","null_value":0,"comment":"Voltage or Q-power of REPCA Filter Time Constant","valid_range":{"max":null,"min":0}},{"name":"K_p","data_type":"Float64","null_value":0,"comment":"Reactive power PI control proportional gain","valid_range":{"max":null,"min":0}},{"name":"K_i","data_type":"Float64","null_value":0,"comment":"Reactive power PI control integral gain","valid_range":{"max":null,"min":0}},{"name":"T_ft","data_type":"Float64","null_value":0,"comment":"Reactive power lead time constant (s)","valid_range":{"max":null,"min":0}},{"name":"T_fv","data_type":"Float64","null_value":0,"comment":"Reactive power lag time constant (s)","valid_range":{"max":null,"min":0}},{"name":"V_frz","data_type":"Float64","null_value":0,"comment":"Voltage below which state ξq_oc (integrator state) is freeze","valid_range":{"max":null,"min":0}},{"name":"R_c","data_type":"Float64","null_value":0,"comment":"Line drop compensation resistance (used when VC_Flag = 1)","valid_range":{"max":null,"min":0}},{"name":"X_c","data_type":"Float64","null_value":0,"comment":"Line drop compensation reactance (used when VC_Flag = 1)","valid_range":{"max":null,"min":0}},{"name":"K_c","data_type":"Float64","null_value":0,"comment":"Reactive current compensation gain (pu) (used when VC_Flag = 0)","valid_range":{"max":null,"min":0}},{"name":"e_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Upper/Lower limit on Voltage or Q-power deadband output `(e_min, e_max)`"},{"name":"dbd_pnts","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Voltage or Q-power error dead band thresholds `(dbd1, dbd2)`"},{"name":"Q_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Upper/Lower limit on reactive power V/Q control in REPCA `(Q_min, Q_max)`"},{"name":"T_p","data_type":"Float64","null_value":0,"comment":"Active power lag time constant in REECB (s). Used only when PF_Flag = 1","valid_range":{"max":null,"min":0}},{"name":"Q_lim_inner","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Upper/Lower limit on reactive power input in REECB `(Q_min_inner, Q_max_inner)`. Only used when V_Flag = 1"},{"name":"V_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Upper/Lower limit on reactive power PI controller in REECB `(V_min, V_max)`. Only used when V_Flag = 1"},{"name":"K_qp","data_type":"Float64","null_value":0,"comment":"Reactive power regulator proportional gain (used when V_Flag = 1)","valid_range":{"max":null,"min":0}},{"name":"K_qi","data_type":"Float64","null_value":0,"comment":"Reactive power regulator integral gain (used when V_Flag = 1)","valid_range":{"max":null,"min":0}},{"name":"Q_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Power Set-point","valid_range":{"max":null,"min":0}},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the ReactiveRenewableControllerAB model depends on the Flag","internal_default":"PowerSystems.get_reactiveRETypeAB_states(Ref_Flag, PF_Flag, V_Flag)[1]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"The states of the ReactiveRenewableControllerAB model depends on the Flag","internal_default":"PowerSystems.get_reactiveRETypeAB_states(Ref_Flag, PF_Flag, V_Flag)[2]"}],"docstring":"Parameters of Reactive Power Controller including REPCA1 and REECB1","struct_name":"ReactiveRenewableControllerAB","supertype":"ReactivePowerControl"},{"fields":[{"name":"kq","data_type":"Float64","null_value":0,"comment":"frequency droop gain","valid_range":{"max":null,"min":0}},{"name":"ωf","data_type":"Float64","null_value":0,"comment":"filter frequency cutoff","valid_range":{"max":null,"min":0}},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the ReactivePowerDroop model are:\n\tq_oc: Filtered reactive output power","internal_default":"[:q_oc]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"ReactivePowerDroop has 1 state","internal_default":1}],"docstring":"Parameters of a Reactive Power droop controller","struct_name":"ReactivePowerDroop","supertype":"ReactivePowerControl"},{"fields":[{"name":"Kp_q","data_type":"Float64","null_value":0,"comment":"Proportional Gain","valid_range":{"max":null,"min":0}},{"name":"Ki_q","data_type":"Float64","null_value":0,"comment":"Integral Gain","valid_range":{"max":null,"min":0}},{"name":"ωf","data_type":"Float64","null_value":0,"comment":"filter frequency cutoff","valid_range":{"max":null,"min":0}},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"Q_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reactive Power Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the ReactivePowerPI model are:\n\tσq_oc: Integrator state of the PI Controller,\n\tq_oc: Measured reactive power of the inverter model","internal_default":"[:σq_oc, :q_oc]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"ReactivePowerPI has two states","internal_default":2}],"docstring":"Parameters of a Proportional-Integral Reactive Power controller for a specified power reference","struct_name":"ReactivePowerPI","supertype":"ReactivePowerControl"},{"fields":[{"name":"k2","data_type":"Float64","null_value":0,"comment":"VOC voltage-amplitude control gain","valid_range":{"max":null,"min":0}},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"Q_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Reactive Power Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the ReactiveVirtualOscilator model are:\n\tE_oc: voltage reference state for inner control in the d-axis","internal_default":"[:E_oc]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"ReactiveVirtualOscillator has 1 state","internal_default":1}],"docstring":"Parameters of a Reactive Virtual Oscillator controller. Model is based from the paper Model Reduction for Inverters with Current Limiting and Dispatchable Virtual Oscillator Control by O. Ajala et al.","struct_name":"ReactiveVirtualOscillator","supertype":"ReactivePowerControl"},{"fields":[{"name":"kpv","data_type":"Float64","null_value":0,"comment":"voltage controller proportional gain","valid_range":{"max":null,"min":0}},{"name":"kiv","data_type":"Float64","null_value":0,"comment":"voltage controller integral gain","valid_range":{"max":null,"min":0}},{"name":"kffv","data_type":"Float64","null_value":0,"comment":"Binary variable to enable feed-forward gain of voltage.","valid_range":{"max":null,"min":0}},{"name":"rv","data_type":"Float64","null_value":0,"comment":"virtual resistance","valid_range":{"max":null,"min":0}},{"name":"lv","data_type":"Float64","null_value":0,"comment":"virtual inductance","valid_range":{"max":null,"min":0}},{"name":"kpc","data_type":"Float64","null_value":0,"comment":"current controller proportional gain","valid_range":{"max":null,"min":0}},{"name":"kic","data_type":"Float64","null_value":0,"comment":"current controller integral gain","valid_range":{"max":null,"min":0}},{"name":"kffi","data_type":"Float64","null_value":0,"comment":"Binary variable to enable feed-forward gain of current","valid_range":{"max":null,"min":0}},{"name":"ωad","data_type":"Float64","null_value":0,"comment":"active damping filter cutoff frequency (rad/sec)","valid_range":{"max":null,"min":0}},{"name":"kad","data_type":"Float64","null_value":0,"comment":"active damping gain","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the VoltageModeControl model are:\n\tξd_ic: d-axis integrator state of the PI voltage controller,\n\tξq_ic: q-axis integrator state of the PI voltage controller,\n\tγd_ic: d-axis integrator state of the PI current controller,\n\tγq_ic: q-axis integrator state of the PI current controller,\n\tϕd_ic: d-axis low-pass filter of active damping,\n\tϕq_ic: q-axis low-pass filter of active damping","internal_default":"[:ξd_ic, :ξq_ic, :γd_ic, :γq_ic, :ϕd_ic, :ϕq_ic]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"VoltageModeControl has 6 states","internal_default":6}],"docstring":"Parameters of an inner loop current control PID using virtual impedance based on D'Arco, Suul and Fosso.\n\"A Virtual Synchronous Machine implementation for distributed control of power converters in SmartGrids.\"\nElectric Power Systems Research 122 (2015) 180–197.","struct_name":"VoltageModeControl","supertype":"InnerControl"},{"fields":[{"name":"kpc","data_type":"Float64","null_value":0,"comment":"Current controller proportional gain","valid_range":{"max":null,"min":0}},{"name":"kic","data_type":"Float64","null_value":0,"comment":"Current controller integral gain","valid_range":{"max":null,"min":0}},{"name":"kffv","data_type":"Float64","null_value":0,"comment":"Gain to enable feed-forward gain of voltage.","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the CurrentModeControl model are:\n\tγd_ic: d-axis integrator state of the PI current controller,\n\tγq_ic: q-axis integrator state of the PI current controller","internal_default":"[:γd_ic, :γq_ic]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"CurrentControl has 2 states","internal_default":2}],"docstring":"Parameters of an inner loop PI current control using based on Purba, Dhople, Jafarpour, Bullo and Johnson.\n\"Reduced-order Structure-preserving Model for Parallel-connected Three-phase Grid-tied Inverters.\"\n2017 IEEE 18th Workshop on Control and Modeling for Power Electronics (COMPEL): 1-7.","struct_name":"CurrentModeControl","supertype":"InnerControl"},{"fields":[{"name":"Q_Flag","data_type":"Int","null_value":0,"comment":"Q Flag used for I_qinj","valid_range":{"max":1,"min":0}},{"name":"PQ_Flag","data_type":"Int","null_value":0,"comment":"PQ Flag used for the Current Limit Logic","valid_range":{"max":1,"min":0}},{"name":"Vdip_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limits for Voltage Dip Logic `(Vdip, Vup)`"},{"name":"T_rv","data_type":"Float64","null_value":0,"comment":"Voltage Filter Time Constant","valid_range":{"max":null,"min":0}},{"name":"dbd_pnts","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Voltage error deadband thresholds `(dbd1, dbd2)`"},{"name":"K_qv","data_type":"Float64","null_value":0,"comment":"Reactive current injection gain during over and undervoltage conditions","valid_range":{"max":null,"min":0}},{"name":"Iqinj_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limits for Iqinj `(I_qh1, I_ql1)`"},{"name":"V_ref0","data_type":"Float64","null_value":0,"comment":"User defined reference. If 0, PSID initializes to initial terminal voltage","valid_range":{"max":null,"min":0}},{"name":"K_vp","data_type":"Float64","null_value":0,"comment":"Voltage regulator proportional gain (used when QFlag = 1)","valid_range":{"max":null,"min":0}},{"name":"K_vi","data_type":"Float64","null_value":0,"comment":"Voltage regulator integral gain (used when QFlag = 1)","valid_range":{"max":null,"min":0}},{"name":"T_iq","data_type":"Float64","null_value":0,"comment":"Time constant for low-pass filter for state q_V when QFlag = 0","valid_range":{"max":null,"min":0}},{"name":"I_max","data_type":"Float64","null_value":0,"comment":"Maximum limit on total converter current","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the RECurrentControlB depends on the Flags","internal_default":"PowerSystems.get_REControlB_states(Q_Flag)"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"The states of the RECurrentControlB depends on the Flags","internal_default":"2"}],"docstring":"Parameters of the Inner Control part of the REECB model in PSS/E","struct_name":"RECurrentControlB","supertype":"InnerControl"},{"fields":[{"name":"I_max","data_type":"Float64","null_value":0,"comment":"Maximum limit on current controller input current (device base)","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"}],"docstring":"Parameters of Magnitude (Circular) Current Controller Limiter","struct_name":"MagnitudeCurrentLimiter","supertype":"InverterLimiter"},{"fields":[{"name":"Id_max","data_type":"Float64","null_value":0,"comment":"Maximum limit on d-axis current controller input current (device base)","valid_range":{"max":null,"min":0}},{"name":"Iq_max","data_type":"Float64","null_value":0,"comment":"Maximum limit on d-axis current controller input current (device base)","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"}],"docstring":"Parameters of Instantaneous (Square) Current Controller Limiter","struct_name":"InstantaneousCurrentLimiter","supertype":"InverterLimiter"},{"fields":[{"name":"I_max","data_type":"Float64","null_value":0,"comment":"Maximum limit on current controller input current (device base)","valid_range":{"max":null,"min":0}},{"name":"ϕ_I","data_type":"Float64","null_value":0,"comment":"Pre-defined angle (measured against the d-axis) for Iref once limit is hit","valid_range":{"max":1.571,"min":-1.571}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"}],"docstring":"Parameters of Priority-Based Current Controller Limiter","struct_name":"PriorityCurrentLimiter","supertype":"InverterLimiter"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"Pf_Flag","data_type":"Int","null_value":0,"comment":"Flag for Power Factor Control","valid_range":{"max":1,"min":0}},{"name":"Freq_Flag","data_type":"Int","null_value":0,"comment":"Flag to enable/disable frequency control","valid_range":{"max":1,"min":0}},{"name":"PQ_Flag","data_type":"Int","null_value":0,"comment":"Flag used to enforce maximum current","valid_range":{"max":1,"min":0}},{"name":"Gen_Flag","data_type":"Int","null_value":0,"comment":"Flag to specify generator or storage","valid_range":{"max":1,"min":0}},{"name":"Vtrip_Flag","data_type":"Int","null_value":0,"comment":"Flag to enable/disable voltage trip logic","valid_range":{"max":1,"min":0}},{"name":"Ftrip_Flag","data_type":"Int","null_value":0,"comment":"Flag to enable/disable frequency trip logic","valid_range":{"max":1,"min":0}},{"name":"T_rv","data_type":"Float64","null_value":0,"comment":"Voltage measurement transducer time constant","valid_range":{"max":null,"min":0}},{"name":"Trf","data_type":"Float64","null_value":0,"comment":"Frequency measurement transducer time constant","valid_range":{"max":null,"min":0}},{"name":"dbd_pnts","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Voltage deadband thresholds `(dbd1, dbd2)`"},{"name":"K_qv","data_type":"Float64","null_value":0,"comment":"Proportional voltage control gain (pu)","valid_range":{"max":null,"min":0}},{"name":"Tp","data_type":"Float64","null_value":0,"comment":"Power measurement transducer time constant","valid_range":{"max":null,"min":0}},{"name":"T_iq","data_type":"Float64","null_value":0,"comment":"Time constant for low-pass filter for state q_V when QFlag = 0","valid_range":{"max":null,"min":0}},{"name":"D_dn","data_type":"Float64","null_value":0,"comment":"Reciprocal of droop for over-frequency conditions (>0) (pu)","valid_range":{"max":null,"min":0}},{"name":"D_up","data_type":"Float64","null_value":0,"comment":"Reciprocal of droop for under-frequency conditions <=0) (pu)","valid_range":{"max":null,"min":0}},{"name":"fdbd_pnts","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Frequency control deadband thresholds `(fdbd1, fdbd2)`"},{"name":"fe_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Frequency error limits (femin, femax)"},{"name":"P_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Power limits (Pmin, Pmax)"},{"name":"dP_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Power reference ramp rate limits (dPmin, dPmax)"},{"name":"Tpord","data_type":"Float64","null_value":0,"comment":"Power filter time constant","valid_range":{"max":null,"min":0}},{"name":"Kpg","data_type":"Float64","null_value":0,"comment":"PI controller proportional gain (pu)","valid_range":{"max":null,"min":0}},{"name":"Kig","data_type":"Float64","null_value":0,"comment":"PI controller integral gain (pu)","valid_range":{"max":null,"min":0}},{"name":"I_max","data_type":"Float64","null_value":0,"comment":"Maximum limit on total converter current (pu)","valid_range":{"max":null,"min":0}},{"name":"vl_pnts","data_type":"Vector{Tuple{Float64,Float64}}","null_value":"[(0.0, 0.0), (0.0, 0.0)]","comment":"Low voltage cutout points `[(tv10, vl0), (tv11, vl1)]`"},{"name":"vh_pnts","data_type":"Vector{Tuple{Float64,Float64}}","null_value":"[(0.0, 0.0), (0.0, 0.0)]","comment":"High voltage cutout points `[(tvh0, vh0), (tvh1, vh1)]`"},{"name":"Vrfrac","data_type":"Float64","null_value":0,"comment":"Fraction of device that recovers after voltage comes back to within vl1 < V < vh1 (0 <= Vrfrac <= 1)","valid_range":{"max":1,"min":0}},{"name":"fl","data_type":"Float64","null_value":0,"comment":"Inverter frequency break-point for low frequency cut-out (Hz)","valid_range":{"max":null,"min":0}},{"name":"fh","data_type":"Float64","null_value":0,"comment":"Inverter frequency break-point for high frequency cut-out (Hz)","valid_range":{"max":null,"min":0}},{"name":"tfl","data_type":"Float64","null_value":0,"comment":"Low frequency cut-out timer corresponding to frequency fl (s)","valid_range":{"max":null,"min":0}},{"name":"tfh","data_type":"Float64","null_value":0,"comment":"High frequency cut-out timer corresponding to frequency fh (s)","valid_range":{"max":null,"min":0}},{"name":"Tg","data_type":"Float64","null_value":0,"comment":"Current control time constant (to represent behavior of inner control loops) (> 0) (s)","valid_range":{"max":null,"min":0}},{"name":"rrpwr","data_type":"Float64","null_value":0,"comment":"Ramp rate for real power increase following a fault (pu/s)","valid_range":{"max":null,"min":0}},{"name":"Tv","data_type":"Float64","null_value":0,"comment":"Time constant on the output of the multiplier (s)","valid_range":{"max":null,"min":0}},{"name":"Vpr","data_type":"Float64","null_value":0,"comment":"Voltage below which frequency tripping is disabled (pu)","valid_range":{"max":null,"min":0}},{"name":"Iq_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Reactive current injection limits (Iqll, Iqhl)"},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"User defined voltage reference. If 0, PSID initializes to initial terminal voltage","valid_range":{"max":null,"min":0}},{"name":"Pfa_ref","default":"0.0","data_type":"Float64","null_value":0,"comment":"Reference power factor","valid_range":{"max":null,"min":0}},{"name":"ω_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference frequency","valid_range":{"max":null,"min":0}},{"name":"Q_ref","default":"0.0","data_type":"Float64","null_value":0,"comment":"Reference reactive power, in pu","valid_range":{"max":null,"min":0}},{"name":"P_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference active power, in pu","valid_range":{"max":null,"min":0}},{"name":"base_power","default":"100.0","data_type":"Float64","null_value":0,"comment":"Base power"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of AggregateDistributedGenerationA depends on the Flags","internal_default":"PowerSystems.get_AggregateDistributedGenerationA_states(Freq_Flag)[1]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"The states of AggregateDistributedGenerationA depends on the Flags","internal_default":"PowerSystems.get_AggregateDistributedGenerationA_states(Freq_Flag)[2]"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of the DERA1 model in PSS/E","struct_name":"AggregateDistributedGenerationA","supertype":"DynamicInjection"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"bus","data_type":"ACBus","null_value":"ACBus(nothing)"},{"name":"active_power","data_type":"Float64","null_value":"0.0"},{"name":"reactive_power","data_type":"Float64","null_value":"0.0"},{"name":"R_th","data_type":"Float64","null_value":0,"comment":"Source Thevenin resistance","valid_range":{"max":null,"min":0}},{"name":"X_th","data_type":"Float64","null_value":0,"comment":"Source Thevenin reactance","valid_range":{"max":null,"min":0}},{"name":"internal_voltage","default":"1.0","data_type":"Float64","null_value":0,"comment":"Internal Voltage","valid_range":{"max":null,"min":0}},{"name":"internal_angle","default":"0.0","data_type":"Float64","null_value":0,"comment":"Internal Angle"},{"name":"dynamic_injector","default":"nothing","data_type":"Union{Nothing, DynamicInjection}","exclude_setter":true,"null_value":"nothing","comment":"corresponding dynamic injection device"},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"This struct acts as an infinity bus.","struct_name":"Source","supertype":"StaticInjection"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"R_th","data_type":"Float64","null_value":0,"comment":"Source Thevenin resistance","valid_range":{"max":null,"min":0}},{"name":"X_th","data_type":"Float64","null_value":0,"comment":"Source Thevenin reactance","valid_range":{"max":null,"min":0}},{"name":"internal_voltage_bias","default":"0.0","data_type":"Float64","null_value":0,"comment":"a0 term of the Fourier Series for the voltage"},{"name":"internal_voltage_frequencies","default":"[0.0]","data_type":"Vector{Float64}","null_value":[0],"comment":"Frequencies in radians/s"},{"name":"internal_voltage_coefficients","default":"[(0.0, 0.0)]","data_type":"Vector{Tuple{Float64,Float64}}","null_value":"[(0.0, 0.0)]","comment":"Coefficients for terms n > 1. First component corresponds to sin and second component to cos"},{"name":"internal_angle_bias","default":"0.0","data_type":"Float64","null_value":0,"comment":"a0 term of the Fourier Series for the angle"},{"name":"internal_angle_frequencies","default":"[0.0]","data_type":"Vector{Float64}","null_value":[0],"comment":"Frequencies in radians/s"},{"name":"internal_angle_coefficients","default":"[(0.0, 0.0)]","data_type":"Vector{Tuple{Float64,Float64}}","null_value":"[(0.0, 0.0)]","comment":"Coefficients for terms n > 1. First component corresponds to sin and second component to cos"},{"name":"base_power","default":"100.0","data_type":"Float64","null_value":0,"comment":"Base power"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"State for time, voltage and angle","internal_default":"[:Vt, :θt]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"null_value":2,"internal_default":2},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"This struct acts as an infinity bus with time varying phasor values magnitude and angle V(t) \theta(t). Time varying functions are represented using fourier series","struct_name":"PeriodicVariableSource","supertype":"DynamicInjection"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"Qref_Flag","data_type":"Int","null_value":1,"comment":"Reactive Power Control Mode. 1 VoltVar Control, 2 Constant Q Control, 3 Constant PF Control","valid_range":{"max":3,"min":1}},{"name":"PQ_Flag","data_type":"Int","null_value":0,"comment":"Active and reactive power priority mode. 0 for Q priority, 1 for P priority","valid_range":{"max":1,"min":0}},{"name":"Gen_Flag","data_type":"Int","null_value":0,"comment":"Define generator or storage system. 0 unit is a storage device, 1 unit is a generator","valid_range":{"max":1,"min":0}},{"name":"PerOp_Flag","data_type":"Int","null_value":0,"comment":"Defines operation of permisible region in VRT characteristic. 0 for cease, 1 for continuous operation","valid_range":{"max":1,"min":0}},{"name":"Recon_Flag","data_type":"Int","null_value":0,"comment":"Defines if DER can reconnect after voltage ride-through disconnection","valid_range":{"max":1,"min":0}},{"name":"Trv","data_type":"Float64","null_value":0,"comment":"Voltage measurement transducer's time constant, in s","valid_range":{"max":null,"min":0}},{"name":"VV_pnts","data_type":"NamedTuple{(:V1, :V2, :V3, :V4), Tuple{Float64, Float64, Float64, Float64}}","null_value":"(V1=0.0, V2=0.0, V3=0.0, V4=0.0)","comment":"Y-axis Volt-var curve points (V1,V2,V3,V4)"},{"name":"Q_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Reactive power limits in pu (Q_min, Q_max)"},{"name":"Tp","data_type":"Float64","null_value":0,"comment":"Power measurement transducer's time constant, in s","valid_range":{"max":null,"min":0}},{"name":"e_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Error limit in PI controller for q control (e_min, e_max)"},{"name":"Kpq","data_type":"Float64","null_value":0,"comment":"PI controller proportional gain for q control","valid_range":{"max":null,"min":0}},{"name":"Kiq","data_type":"Float64","null_value":0,"comment":"PI controller integral gain for q control","valid_range":{"max":null,"min":0}},{"name":"Iqr_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limit on rate of change for reactive current (pu/s) (Iqr_min, Iqr_max)"},{"name":"I_max","data_type":"Float64","null_value":0,"comment":"Max. inverter's current","valid_range":{"max":null,"min":0}},{"name":"Tg","data_type":"Float64","null_value":0,"comment":"Current control's time constant, in s","valid_range":{"max":null,"min":0}},{"name":"kWh_Cap","data_type":"Float64","null_value":0,"comment":"BESS capacity in kWh","valid_range":{"max":null,"min":0}},{"name":"SOC_ini","data_type":"Float64","null_value":0,"comment":"Initial state of charge (SOC) in pu","valid_range":{"max":1,"min":0}},{"name":"SOC_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Battery's SOC limits (SOC_min, SOC_max)"},{"name":"Trf","data_type":"Float64","null_value":0,"comment":"Time constant to estimate system frequency, in s","valid_range":{"max":null,"min":0}},{"name":"fdbd_pnts","data_type":"NamedTuple{(:fdbd1, :fdbd2), Tuple{Float64, Float64}}","null_value":"(fdbd1=0.0, fdbd2=0.0)","comment":"Frequency error dead band thresholds `(fdbd1, fdbd2)`"},{"name":"D_dn","data_type":"Float64","null_value":0,"comment":"reciprocal of droop for over-frequency conditions, in pu","valid_range":{"max":null,"min":0}},{"name":"D_up","data_type":"Float64","null_value":0,"comment":"reciprocal of droop for under-frequency conditions, in pu","valid_range":{"max":null,"min":0}},{"name":"fe_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Frequency error limits in pu (fe_min, fe_max)"},{"name":"Kpp","data_type":"Float64","null_value":0,"comment":"PI controller proportional gain for p control","valid_range":{"max":null,"min":0}},{"name":"Kip","data_type":"Float64","null_value":0,"comment":"PI controller integral gain for p control","valid_range":{"max":null,"min":0}},{"name":"P_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Active power limits in pu (P_min, P_max)"},{"name":"dP_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Ramp rate limits for active power in pu/s (dP_min, dP_max)"},{"name":"T_pord","data_type":"Float64","null_value":0,"comment":"Power filter time constant in s","valid_range":{"max":null,"min":0}},{"name":"rrpwr","data_type":"Float64","null_value":0,"comment":"Ramp rate for real power increase following a fault, in pu/s","valid_range":{"max":null,"min":0}},{"name":"VRT_pnts","data_type":"NamedTuple{(:vrt1, :vrt2, :vrt3, :vrt4, :vrt5), Tuple{Float64, Float64, Float64, Float64, Float64}}","null_value":"(vrt1=0.0, vrt2=0.0, vrt3=0.0, vrt4=0.0, vrt5=0.0)","comment":"Voltage ride through v points (vrt1,vrt2,vrt3,vrt4,vrt5)"},{"name":"TVRT_pnts","data_type":"NamedTuple{(:tvrt1, :tvrt2, :tvrt3), Tuple{Float64, Float64, Float64}}","null_value":"(tvrt1=0.0, tvrt2=0.0, tvrt3=0.0)","comment":"Voltage ride through time points (tvrt1,tvrt2,tvrt3)"},{"name":"tV_delay","data_type":"Float64","null_value":0,"comment":"Time delay for reconnection after voltage ride-through disconnection","valid_range":{"max":null,"min":0}},{"name":"VES_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Min and max voltage for entering service (VES_min,VES_max)"},{"name":"FRT_pnts","data_type":"NamedTuple{(:frt1, :frt2, :frt3, :frt4), Tuple{Float64, Float64, Float64, Float64}}","null_value":"(frt1=0.0, frt2=0.0, frt3=0.0, frt4=0.0)","comment":"Frequency ride through v points (frt1,frt2,frt3,frt4)"},{"name":"TFRT_pnts","data_type":"NamedTuple{(:tfrt1, :tfrt2), Tuple{Float64, Float64}}","null_value":"(tfrt1=0.0, tfrt2=0.0)","comment":"Frequency ride through time points (tfrt1,tfrt2)"},{"name":"tF_delay","data_type":"Float64","null_value":0,"comment":"Time delay for reconnection after frequency ride-through disconnection","valid_range":{"max":null,"min":0}},{"name":"FES_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Min and max frequency for entering service (FES_min,FES_max)"},{"name":"Pfa_ref","default":"0.0","data_type":"Float64","null_value":0,"comment":"Reference power factor","valid_range":{"max":null,"min":0}},{"name":"Q_ref","default":"0.0","data_type":"Float64","null_value":0,"comment":"Reference reactive power, in pu","valid_range":{"max":null,"min":0}},{"name":"P_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference active power, in pu","valid_range":{"max":null,"min":0}},{"name":"base_power","default":"100.0","data_type":"Float64","null_value":0,"comment":"Base power"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of GenericDER depend on the Flags","internal_default":"PowerSystems.get_GenericDER_states(Qref_Flag)[1]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"The states of GenericDER depend on the Flags","internal_default":"PowerSystems.get_GenericDER_states(Qref_Flag)[2]"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of a Generic Distributed Energy Resource Model. Based on https://scholarspace.manoa.hawaii.edu/bitstream/10125/70994/0304.pdf","struct_name":"GenericDER","supertype":"DynamicInjection"},{"fields":[{"name":"device"},{"name":"droop","data_type":"Float64","valid_range":{"max":null,"min":0}},{"name":"participation_factor","data_type":"UpDown"},{"name":"reserve_limit_dn","data_type":"Float64","valid_range":{"max":null,"min":0}},{"name":"reserve_limit_up","data_type":"Float64","valid_range":{"max":null,"min":0}},{"name":"inertia","data_type":"Float64","valid_range":{"max":null,"min":0}},{"name":"cost","data_type":"Float64","valid_range":{"max":null,"min":0}},{"name":"time_series_container","data_type":"InfrastructureSystems.TimeSeriesContainer"},{"name":"internal","data_type":"InfrastructureSystems.InfrastructureSystemsInternal"}],"struct_name":"RegulationDevice"}]} \ No newline at end of file diff --git a/previews/PR383/tutorials/power-simulations-dynamics.log b/previews/PR383/tutorials/power-simulations-dynamics.log new file mode 100644 index 000000000..e69de29bb diff --git a/previews/PR383/tutorials/threebus_sys.json b/previews/PR383/tutorials/threebus_sys.json new file mode 100644 index 000000000..e8f10e253 --- /dev/null +++ b/previews/PR383/tutorials/threebus_sys.json @@ -0,0 +1 @@ +{"internal":{"uuid":{"value":"14f480c7-6e51-4eb0-abfe-4a0b6e297172"},"ext":{},"units_info":null},"data":{"time_series_in_memory":false,"masked_components":[],"version_info":{"julia_version":"1.10.4","package_info":"Status `~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/docs/Manifest.toml`\n [47edcb42] ADTypes v1.5.3\n [a4c015fc] ANSIColoredPrinters v0.0.1\n [1520ce14] AbstractTrees v0.4.5\n [7d9f7c33] Accessors v0.1.36\n [79e6a3ab] Adapt v4.0.4\n [ec485272] ArnoldiMethod v0.4.0\n [4fba245c] ArrayInterface v7.11.0\n [4c555306] ArrayLayouts v1.10.0\n [d1d4a3ce] BitFlags v0.1.9\n [62783981] BitTwiddlingConvenienceFunctions v0.1.6\n [a74b3585] Blosc v0.7.3\n [fa961155] CEnum v0.5.0\n [2a0fbf3d] CPUSummary v0.2.6\n [336ed68f] CSV v0.10.14\n [d360d2e6] ChainRulesCore v1.24.0\n [fb6a15b2] CloseOpenIntervals v0.1.13\n [944b1d66] CodecZlib v0.7.4\n [35d6a980] ColorSchemes v3.25.0\n [3da002f7] ColorTypes v0.11.5\n [c3611d14] ColorVectorSpace v0.10.0\n [5ae59095] Colors v0.12.11\n [38540f10] CommonSolve v0.2.4\n [bbf7d656] CommonSubexpressions v0.3.0\n [f70d9fcc] CommonWorldInvalidations v1.0.0\n [34da2185] Compat v4.15.0\n [a33af91c] CompositionsBase v0.1.2\n [2569d6c7] ConcreteStructs v0.2.3\n [f0e56b4a] ConcurrentUtilities v2.4.1\n [187b0558] ConstructionBase v1.5.5\n [d38c429a] Contour v0.6.3\n [adafc99b] CpuId v0.3.1\n [a8cc5b0e] Crayons v4.1.1\n [9a962f9c] DataAPI v1.16.0\n [a93c6f00] DataFrames v1.6.1\n [864edb3b] DataStructures v0.18.20\n [e2d170a0] DataValueInterfaces v1.0.0\n [8bb1440f] DelimitedFiles v1.9.1\n [2b5f629d] DiffEqBase v6.151.5\n [163ba53b] DiffResults v1.1.0\n [b552c78f] DiffRules v1.15.1\n [a0c0ee7d] DifferentiationInterface v0.5.7\n [b4f34e82] Distances v0.10.11\n [ffbed154] DocStringExtensions v0.9.3\n⌅ [e30172f5] Documenter v0.27.25\n [35a29f4d] DocumenterTools v0.1.19\n [4e289a0a] EnumX v1.0.4\n [f151be2c] EnzymeCore v0.7.6\n [460bff9d] ExceptionUnwrapping v0.1.10\n [d4d017d3] ExponentialUtilities v1.26.1\n [e2ba6199] ExprTools v0.1.10\n [c87230d0] FFMPEG v0.4.1\n [7034ab61] FastBroadcast v0.3.4\n [9aa1b823] FastClosures v0.3.2\n [29a986be] FastLapackInterface v2.0.4\n [48062228] FilePathsBase v0.9.21\n [1a297f60] FillArrays v1.11.0\n [6a86dc24] FiniteDiff v2.23.1\n [53c48c17] FixedPointNumbers v0.8.5\n [1fa38f19] Format v1.3.7\n [f6369f11] ForwardDiff v0.10.36\n [069b7b12] FunctionWrappers v1.1.3\n [77dc65aa] FunctionWrappersWrappers v0.1.3\n [46192b85] GPUArraysCore v0.1.6\n⌃ [28b8d3ca] GR v0.73.5\n [c145ed77] GenericSchur v0.5.4\n [86223c79] Graphs v1.11.2\n [42e2da0e] Grisu v1.0.2\n [708ec375] Gumbo v0.8.2\n [c8ec2601] H5Zblosc v0.1.2\n [f67ccb44] HDF5 v0.17.2\n [cd3eb016] HTTP v1.10.8\n [3e5b6fbb] HostCPUFeatures v0.1.17\n [b5f81e59] IOCapture v0.2.5\n [615f187c] IfElse v0.1.1\n [d25df0c9] Inflate v0.1.5\n⌅ [2cd47ed4] InfrastructureSystems v1.22.2\n [842dd82b] InlineStrings v1.4.1\n [3587e190] InverseFunctions v0.1.14\n [41ab1584] InvertedIndices v1.3.0\n [92d709cd] IrrationalConstants v0.2.2\n [82899510] IteratorInterfaceExtensions v1.0.0\n [1019f520] JLFzf v0.1.7\n [692b3bcd] JLLWrappers v1.5.0\n [682c06a0] JSON v0.21.4\n [0f8b85d8] JSON3 v1.14.0\n [ef3ab10e] KLU v0.6.0\n [ba0b0d4f] Krylov v0.9.6\n [b964fa9f] LaTeXStrings v1.3.1\n [23fbe1c1] Latexify v0.16.3\n [10f19ff3] LayoutPointers v0.1.17\n [5078a376] LazyArrays v2.1.1\n [1d6d02ad] LeftChildRightSiblingTrees v0.2.0\n [d3d80556] LineSearches v7.2.0\n [7ed4a6bd] LinearSolve v2.30.2\n [2ab3a3ac] LogExpFunctions v0.3.28\n [e6f89c97] LoggingExtras v1.0.3\n [bdcacae8] LoopVectorization v0.12.171\n⌅ [33e6dc65] MKL v0.6.3\n [3da0fdf6] MPIPreferences v0.1.11\n [1914dd2f] MacroTools v0.5.13\n [d125e4d3] ManualMemory v0.1.8\n [299715c1] MarchingCubes v0.1.9\n [bb5d69b7] MaybeInplace v0.1.3\n [739be429] MbedTLS v1.1.9\n [442fdcdd] Measures v0.3.2\n [e1d29d7a] Missings v1.2.0\n [46d2c3a1] MuladdMacro v0.2.4\n [ffc61752] Mustache v1.0.19\n [d41bc354] NLSolversBase v7.8.3\n [2774e3e8] NLsolve v4.5.1\n [77ba4419] NaNMath v1.0.2\n [8913a72c] NonlinearSolve v3.13.1\n [6fe1bfb0] OffsetArrays v1.14.0\n [4d8831e6] OpenSSL v1.4.3\n [bac558e1] OrderedCollections v1.6.3\n [1dea7af3] OrdinaryDiffEq v6.85.0\n [65ce6f38] PackageExtensionCompat v1.0.2\n [d96e819e] Parameters v0.12.3\n [46dd5b70] Pardiso v0.5.7\n [69de0a69] Parsers v2.8.1\n [b98c9c47] Pipe v1.3.0\n [ccf2f8ad] PlotThemes v3.2.0\n [995b91a9] PlotUtils v1.4.1\n [91a5bcdd] Plots v1.40.4\n [f517fe37] Polyester v0.7.15\n [1d0040c9] PolyesterWeave v0.2.2\n [2dfb63ee] PooledArrays v1.4.3\n [dd99e9e3] PowerFlowData v1.5.0\n [94fada2c] PowerFlows v0.6.2\n⌅ [bed98974] PowerNetworkMatrices v0.10.3\n [398b2ede] PowerSimulationsDynamics v0.14.2 `~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl`\n⌃ [f00506e0] PowerSystemCaseBuilder v1.2.5\n⌅ [bcd98974] PowerSystems v3.3.0\n [d236fae5] PreallocationTools v0.4.22\n [aea7be01] PrecompileTools v1.2.1\n [21216c6a] Preferences v1.4.3\n [08abe8d2] PrettyTables v2.3.2\n [33c8b6b6] ProgressLogging v0.1.4\n [3cdcf5f2] RecipesBase v1.3.4\n [01d81517] RecipesPipeline v0.6.12\n [731186ca] RecursiveArrayTools v3.23.1\n [f2c3362d] RecursiveFactorization v0.2.23\n [189a3867] Reexport v1.2.2\n [05181044] RelocatableFolders v1.0.1\n [ae029012] Requires v1.3.0\n [7e49a35a] RuntimeGeneratedFunctions v0.5.13\n [94e857df] SIMDTypes v0.1.0\n [476501e8] SLEEFPirates v0.6.43\n [322a6be2] Sass v0.2.0\n [0bca4576] SciMLBase v2.42.0\n [c0aeaf25] SciMLOperators v0.3.8\n [53ae85a6] SciMLStructures v1.4.1\n [6c6a2e73] Scratch v1.2.1\n [91c51154] SentinelArrays v1.4.3\n [efcf1570] Setfield v1.1.1\n [992d4aef] Showoff v1.0.3\n [777ac1f9] SimpleBufferStream v1.1.0\n [727e6d20] SimpleNonlinearSolve v1.10.1\n [699a6c99] SimpleTraits v0.9.4\n [ce78b400] SimpleUnPack v1.1.0\n [a2af1166] SortingAlgorithms v1.2.1\n [47a9eef4] SparseDiffTools v2.19.0\n [0a514795] SparseMatrixColorings v0.3.3\n [e56a9233] Sparspak v0.3.9\n [276daf66] SpecialFunctions v2.4.0\n [aedffcd0] Static v1.1.0\n [0d7ed370] StaticArrayInterface v1.5.1\n [90137ffa] StaticArrays v1.9.6\n [1e83bf80] StaticArraysCore v1.4.3\n [82ae8749] StatsAPI v1.7.0\n [2913bbd2] StatsBase v0.34.3\n [7792a7ef] StrideArraysCore v0.5.7\n [69024149] StringEncodings v0.3.7\n [892a3eda] StringManipulation v0.3.4\n [856f2bd8] StructTypes v1.10.0\n [c3572dad] Sundials v4.24.0\n [2efcf032] SymbolicIndexingInterface v0.3.22\n [3783bdb8] TableTraits v1.0.1\n [bd369af6] Tables v1.11.1\n [62fd8b95] TensorCore v0.1.1\n [5d786b92] TerminalLoggers v0.1.7\n [8290d209] ThreadingUtilities v0.5.2\n⌅ [9e3dc215] TimeSeries v0.23.2\n [a759f4b9] TimerOutputs v0.5.24\n⌅ [3bb67fe8] TranscodingStreams v0.10.10\n [d5829a12] TriangularSolve v0.2.1\n [410a4b4d] Tricks v0.1.8\n [781d530d] TruncatedStacktraces v1.4.0\n [5c2747f8] URIs v1.5.1\n [3a884ed6] UnPack v1.0.2\n [1cfade01] UnicodeFun v0.4.1\n [b8865327] UnicodePlots v3.6.4\n [1986cc42] Unitful v1.20.0\n [45397f5d] UnitfulLatexify v1.6.3\n [41fe7b60] Unzip v0.2.0\n [3d5dd08c] VectorizationBase v0.21.70\n [19fa3120] VertexSafeGraphs v0.2.0\n [ea10d353] WeakRefStrings v1.4.2\n [76eceee3] WorkerUtilities v1.6.1\n [ddb6d928] YAML v0.4.11\n [0b7ba130] Blosc_jll v1.21.5+0\n [6e34b625] Bzip2_jll v1.0.8+1\n [83423d85] Cairo_jll v1.18.0+2\n [2702e6a9] EpollShim_jll v0.0.20230411+0\n [2e619515] Expat_jll v2.6.2+0\n⌅ [b22a6f82] FFMPEG_jll v4.4.2+2\n [a3f928ae] Fontconfig_jll v2.13.96+0\n [d7e528f0] FreeType2_jll v2.13.2+0\n [559328eb] FriBidi_jll v1.0.14+0\n [0656b61e] GLFW_jll v3.4.0+0\n⌅ [d2c73de3] GR_jll v0.73.5+0\n [78b55507] Gettext_jll v0.21.0+0\n [7746bdde] Glib_jll v2.80.2+0\n [3b182d85] Graphite2_jll v1.3.14+0\n [528830af] Gumbo_jll v0.10.2+0\n⌃ [0234f1f7] HDF5_jll v1.12.2+2\n [2e76f6c2] HarfBuzz_jll v2.8.1+1\n [1d5cc7b8] IntelOpenMP_jll v2024.1.0+0\n [aacddb02] JpegTurbo_jll v3.0.3+0\n [c1c5ebd0] LAME_jll v3.100.2+0\n⌅ [88015f11] LERC_jll v3.0.0+1\n [1d63c593] LLVMOpenMP_jll v15.0.7+0\n [dd4b983a] LZO_jll v2.10.2+0\n⌅ [e9f186c6] Libffi_jll v3.2.2+1\n [d4300ac3] Libgcrypt_jll v1.8.11+0\n [7e76a0d4] Libglvnd_jll v1.6.0+0\n [7add5ba3] Libgpg_error_jll v1.49.0+0\n [94ce4f54] Libiconv_jll v1.17.0+0\n [4b2f31a3] Libmount_jll v2.40.1+0\n⌅ [89763e89] Libtiff_jll v4.5.1+1\n [38a345b3] Libuuid_jll v2.40.1+0\n [5ced341a] Lz4_jll v1.9.4+0\n [856f044c] MKL_jll v2024.1.0+0\n [e7412a2a] Ogg_jll v1.3.5+1\n⌅ [9bd350c2] OpenSSH_jll v8.9.0+1\n⌅ [458c3c95] OpenSSL_jll v1.1.23+0\n [efe28fd5] OpenSpecFun_jll v0.5.5+0\n [91d4177d] Opus_jll v1.3.2+0\n [30392449] Pixman_jll v0.43.4+0\n⌅ [c0090381] Qt6Base_jll v6.5.2+2\n⌅ [fb77eaff] Sundials_jll v5.2.2+0\n [a44049a8] Vulkan_Loader_jll v1.3.243+0\n [a2964d1f] Wayland_jll v1.21.0+1\n [2381bf8a] Wayland_protocols_jll v1.31.0+0\n [02c8fc9c] XML2_jll v2.13.1+0\n [aed1982a] XSLT_jll v1.1.41+0\n [ffd25f8a] XZ_jll v5.4.6+0\n [f67eecfb] Xorg_libICE_jll v1.1.1+0\n [c834827a] Xorg_libSM_jll v1.2.4+0\n [4f6342f7] Xorg_libX11_jll v1.8.6+0\n [0c0b7dd1] Xorg_libXau_jll v1.0.11+0\n [935fb764] Xorg_libXcursor_jll v1.2.0+4\n [a3789734] Xorg_libXdmcp_jll v1.1.4+0\n [1082639a] Xorg_libXext_jll v1.3.6+0\n [d091e8ba] Xorg_libXfixes_jll v5.0.3+4\n [a51aa0fd] Xorg_libXi_jll v1.7.10+4\n [d1454406] Xorg_libXinerama_jll v1.1.4+4\n [ec84b674] Xorg_libXrandr_jll v1.5.2+4\n [ea2f1a96] Xorg_libXrender_jll v0.9.11+0\n [14d82f49] Xorg_libpthread_stubs_jll v0.1.1+0\n [c7cfdc94] Xorg_libxcb_jll v1.17.0+0\n [cc61e674] Xorg_libxkbfile_jll v1.1.2+0\n [e920d4aa] Xorg_xcb_util_cursor_jll v0.1.4+0\n [12413925] Xorg_xcb_util_image_jll v0.4.0+1\n [2def613f] Xorg_xcb_util_jll v0.4.0+1\n [975044d2] Xorg_xcb_util_keysyms_jll v0.4.0+1\n [0d47668e] Xorg_xcb_util_renderutil_jll v0.3.9+1\n [c22f9ab0] Xorg_xcb_util_wm_jll v0.4.1+1\n [35661453] Xorg_xkbcomp_jll v1.4.6+0\n [33bec58e] Xorg_xkeyboard_config_jll v2.39.0+0\n [c5fb5394] Xorg_xtrans_jll v1.5.0+0\n [3161d3a3] Zstd_jll v1.5.6+0\n [35ca27e7] eudev_jll v3.2.9+0\n⌅ [214eeab7] fzf_jll v0.43.0+0\n [1a1c6b14] gperf_jll v3.1.1+0\n [a4ae2306] libaom_jll v3.9.0+0\n [0ac62f75] libass_jll v0.15.1+0\n [2db6ffa8] libevdev_jll v1.11.0+0\n [f638f0a6] libfdk_aac_jll v2.0.2+0\n [36db933b] libinput_jll v1.18.0+0\n [b53b4c65] libpng_jll v1.6.43+1\n [47bcb7c8] libsass_jll v3.6.6+0\n [f27f6e37] libvorbis_jll v1.3.7+1\n [009596ad] mtdev_jll v1.1.6+0\n [1317d2d5] oneTBB_jll v2021.12.0+0\n [1270edf5] x264_jll v2021.5.5+0\n [dfaa095f] x265_jll v3.5.0+0\n [d8fb68d0] xkbcommon_jll v1.4.1+1\n [0dad84c5] ArgTools v1.1.1\n [56f22d72] Artifacts\n [2a0f44e3] Base64\n [ade2ca70] Dates\n [8ba89e20] Distributed\n [f43a241f] Downloads v1.6.0\n [7b1f6079] FileWatching\n [9fa8497b] Future\n [b77e0a4c] InteractiveUtils\n [4af54fe1] LazyArtifacts\n [b27032c2] LibCURL v0.6.4\n [76f85450] LibGit2\n [8f399da3] Libdl\n [37e2e46d] LinearAlgebra\n [56ddb016] Logging\n [d6f4376e] Markdown\n [a63ad114] Mmap\n [ca575930] NetworkOptions v1.2.0\n [44cfe95a] Pkg v1.10.0\n [de0858da] Printf\n [3fa0cd96] REPL\n [9a3f8284] Random\n [ea8e919c] SHA v0.7.0\n [9e88b42a] Serialization\n [1a1011a3] SharedArrays\n [6462fe0b] Sockets\n [2f01184e] SparseArrays v1.10.0\n [10745b16] Statistics v1.10.0\n [4607b0f0] SuiteSparse\n [fa267f1f] TOML v1.0.3\n [a4e569a6] Tar v1.10.0\n [8dfed614] Test\n [cf7118a7] UUIDs\n [4ec0a83e] Unicode\n [e66e0078] CompilerSupportLibraries_jll v1.1.1+0\n [deac9b47] LibCURL_jll v8.4.0+0\n [e37daf67] LibGit2_jll v1.6.4+0\n [29816b5a] LibSSH2_jll v1.11.0+1\n [c8ffd9c3] MbedTLS_jll v2.28.2+1\n [14a3606d] MozillaCACerts_jll v2023.1.10\n [4536629a] OpenBLAS_jll v0.3.23+4\n [05823500] OpenLibm_jll v0.8.1+2\n [efcefdf7] PCRE2_jll v10.42.0+1\n [bea87d4a] SuiteSparse_jll v7.2.1+1\n [83775a58] Zlib_jll v1.2.13+1\n [8e850b90] libblastrampoline_jll v5.8.0+1\n [8e850ede] nghttp2_jll v1.52.0+1\n [3f19e933] p7zip_jll v17.4.0+2\nInfo Packages marked with ⌃ and ⌅ have new versions available. Those with ⌃ may be upgradable, but those with ⌅ are restricted by compatibility constraints from upgrading. To see why use `status --outdated -m`\n"},"internal":{"uuid":{"value":"ee977c52-0991-4aff-88b3-3d7e17ddd612"},"ext":{},"units_info":null},"time_series_compression_enabled":false,"components":[{"base_power":100.0,"filter":{"rg":0.01,"cf":0.074,"n_states":6,"ext":{},"lf":0.08,"lg":0.2,"states":["ir_cnv","ii_cnv","vr_filter","vi_filter","ir_filter","ii_filter"],"rf":0.003,"__metadata__":{"module":"PowerSystems","type":"LCLFilter"}},"states":["θ_oc","ω_oc","q_oc","ξd_ic","ξq_ic","γd_ic","γq_ic","ϕd_ic","ϕq_ic","vd_pll","vq_pll","ε_pll","θ_pll","ir_cnv","ii_cnv","vr_filter","vi_filter","ir_filter","ii_filter"],"dc_source":{"__metadata__":{"module":"PowerSystems","type":"FixedDCSource"},"internal":{"uuid":{"value":"34be119e-5273-45d4-ae2f-50ba06e1b888"},"ext":null,"units_info":null},"n_states":0,"ext":{},"states":[],"voltage":600.0},"name":"generator-103-1","converter":{"rated_voltage":138.0,"n_states":0,"ext":{},"rated_current":100.0,"states":[],"__metadata__":{"module":"PowerSystems","type":"AverageConverter"}},"n_states":19,"ω_ref":1.0,"__metadata__":{"parameters":["AverageConverter","OuterControl","VoltageModeControl","FixedDCSource","KauraPLL","LCLFilter","Nothing"],"module":"PowerSystems","type":"DynamicInverter"},"internal":{"uuid":{"value":"5b996d87-b90a-4e50-81b7-3b722cc89760"},"ext":null,"units_info":null},"ext":{},"outer_control":{"active_power_control":{"__metadata__":{"module":"PowerSystems","type":"VirtualInertia"},"P_ref":1.0,"kω":20.0,"n_states":2,"ext":{},"states":["θ_oc","ω_oc"],"kd":400.0,"Ta":2.0},"reactive_power_control":{"kq":0.2,"n_states":1,"ext":{},"V_ref":1.0,"ωf":1000.0,"states":["q_oc"],"__metadata__":{"module":"PowerSystems","type":"ReactivePowerDroop"}},"n_states":3,"ext":{},"states":["θ_oc","ω_oc","q_oc"],"__metadata__":{"parameters":["VirtualInertia","ReactivePowerDroop"],"module":"PowerSystems","type":"OuterControl"}},"freq_estimator":{"ω_lp":500.0,"n_states":4,"ki_pll":4.69,"ext":{},"kp_pll":0.084,"states":["vd_pll","vq_pll","ε_pll","θ_pll"],"__metadata__":{"module":"PowerSystems","type":"KauraPLL"}},"inner_control":{"rv":0.0,"lv":0.2,"ωad":50.0,"kpc":1.27,"ext":{},"states":["ξd_ic","ξq_ic","γd_ic","γq_ic","ϕd_ic","ϕq_ic"],"kffi":0.0,"kffv":0.0,"n_states":6,"kpv":0.59,"kiv":736.0,"kad":0.2,"kic":14.3,"__metadata__":{"module":"PowerSystems","type":"VoltageModeControl"}},"limiter":null},{"base_power":100.0,"shaft":{"internal":{"uuid":{"value":"e79c1cf9-1656-45fc-a416-83f0d943d9a4"},"ext":null,"units_info":null},"n_states":2,"ext":{},"D":0.0,"states":["δ","ω"],"H":3.01,"__metadata__":{"module":"PowerSystems","type":"SingleMass"}},"states":["eq_p","ed_p","δ","ω","Vf","Vr1","Vr2","Vm"],"name":"generator-102-1","n_states":8,"ω_ref":1.0,"__metadata__":{"parameters":["OneDOneQMachine","SingleMass","AVRTypeI","TGFixed","PSSFixed"],"module":"PowerSystems","type":"DynamicGenerator"},"avr":{"Ta":0.2,"Te":0.314,"states_types":["Differential","Differential","Differential","Differential"],"__metadata__":{"module":"PowerSystems","type":"AVRTypeI"},"internal":{"uuid":{"value":"c0df6348-b1a2-4bb0-9ddc-1a31ef2515a6"},"ext":null,"units_info":null},"Ke":0.01,"ext":{},"Kf":0.063,"V_ref":1.0,"states":["Vf","Vr1","Vr2","Vm"],"Ae":0.0039,"n_states":4,"Tf":0.35,"Tr":0.001,"Va_lim":{"min":-5.0,"max":5.0},"Be":1.555,"Ka":20.0},"internal":{"uuid":{"value":"ff28d64b-8669-4a80-af81-63ef7eb5ce55"},"ext":null,"units_info":null},"ext":{},"machine":{"internal":{"uuid":{"value":"e0c4cd23-71a5-4655-9dfd-34700ff8329a"},"ext":null,"units_info":null},"Xq":1.2578,"ext":{},"states":["eq_p","ed_p"],"Tq0_p":0.6,"n_states":2,"Xd":1.3125,"Xd_p":0.1813,"Xq_p":0.25,"Td0_p":5.89,"R":0.0,"__metadata__":{"module":"PowerSystems","type":"OneDOneQMachine"}},"pss":{"V_pss":0.0,"internal":{"uuid":{"value":"1a48ddfd-226d-4866-b03b-46efe662d8dd"},"ext":null,"units_info":null},"n_states":0,"ext":{},"states":[],"__metadata__":{"module":"PowerSystems","type":"PSSFixed"}},"prime_mover":{"P_ref":1.0,"internal":{"uuid":{"value":"59b0b33d-3ff3-4f6f-8227-bf9632c819ca"},"ext":null,"units_info":null},"efficiency":1.0,"n_states":0,"ext":{},"states":[],"__metadata__":{"module":"PowerSystems","type":"TGFixed"}}},{"internal":{"uuid":{"value":"f51234f5-c6ba-4bf5-aca7-7e3d6ca05027"},"ext":null,"units_info":null},"to":{"value":"7cbfd6bd-ceb8-4928-ac47-0b1120ea4226"},"from":{"value":"4a33847c-070f-45ae-868c-8ed13fe64b55"},"__metadata__":{"module":"PowerSystems","type":"Arc"}},{"internal":{"uuid":{"value":"15592ead-85f0-4ea3-86e0-dc4dc49950c5"},"ext":null,"units_info":null},"to":{"value":"7b56baba-a6b4-4b69-891a-2bbc070da2ab"},"from":{"value":"4a33847c-070f-45ae-868c-8ed13fe64b55"},"__metadata__":{"module":"PowerSystems","type":"Arc"}},{"internal":{"uuid":{"value":"023b8133-ebd4-42e4-9fa0-ce7c8b41720b"},"ext":null,"units_info":null},"to":{"value":"7cbfd6bd-ceb8-4928-ac47-0b1120ea4226"},"from":{"value":"7b56baba-a6b4-4b69-891a-2bbc070da2ab"},"__metadata__":{"module":"PowerSystems","type":"Arc"}},{"base_power":100.0,"services":[],"bus":{"value":"4a33847c-070f-45ae-868c-8ed13fe64b55"},"max_constant_active_power":0.5,"available":true,"time_series_container":[],"name":"load1011","max_current_active_power":0.0,"constant_active_power":0.5,"dynamic_injector":null,"__metadata__":{"module":"PowerSystems","type":"StandardLoad"},"current_active_power":0.0,"current_reactive_power":0.0,"internal":{"uuid":{"value":"d8334943-9b67-4470-9ceb-1a71549aba7a"},"ext":null,"units_info":null},"ext":{},"max_constant_reactive_power":0.1,"max_current_reactive_power":0.0,"impedance_reactive_power":0.0,"impedance_active_power":0.0,"max_impedance_active_power":0.0,"constant_reactive_power":0.1,"max_impedance_reactive_power":0.0},{"base_power":100.0,"services":[],"bus":{"value":"7cbfd6bd-ceb8-4928-ac47-0b1120ea4226"},"max_constant_active_power":0.3,"available":true,"time_series_container":[],"name":"load1031","max_current_active_power":0.0,"constant_active_power":0.3,"dynamic_injector":null,"__metadata__":{"module":"PowerSystems","type":"StandardLoad"},"current_active_power":0.0,"current_reactive_power":0.0,"internal":{"uuid":{"value":"3be44ba7-250d-437c-9a02-637ab6a4b6ac"},"ext":null,"units_info":null},"ext":{},"max_constant_reactive_power":0.1,"max_current_reactive_power":0.0,"impedance_reactive_power":0.0,"impedance_active_power":0.0,"max_impedance_active_power":0.0,"constant_reactive_power":0.1,"max_impedance_reactive_power":0.0},{"base_power":100.0,"services":[],"bus":{"value":"7b56baba-a6b4-4b69-891a-2bbc070da2ab"},"max_constant_active_power":1.0,"available":true,"time_series_container":[],"name":"load1021","max_current_active_power":0.0,"constant_active_power":1.0,"dynamic_injector":null,"__metadata__":{"module":"PowerSystems","type":"StandardLoad"},"current_active_power":0.0,"current_reactive_power":0.0,"internal":{"uuid":{"value":"64fc95a8-0e99-4495-b389-09bd25ede8ab"},"ext":null,"units_info":null},"ext":{},"max_constant_reactive_power":0.3,"max_current_reactive_power":0.0,"impedance_reactive_power":0.0,"impedance_active_power":0.0,"max_impedance_active_power":0.0,"constant_reactive_power":0.3,"max_impedance_reactive_power":0.0},{"base_power":100.0,"prime_mover_type":"OT","rating":3.333526661060325,"services":[],"bus":{"value":"7b56baba-a6b4-4b69-891a-2bbc070da2ab"},"available":true,"time_series_container":[],"name":"generator-102-1","status":true,"active_power":0.7,"dynamic_injector":{"value":"ff28d64b-8669-4a80-af81-63ef7eb5ce55"},"__metadata__":{"module":"PowerSystems","type":"ThermalStandard"},"fuel":"OTHER","internal":{"uuid":{"value":"dc2e47a1-9f01-401e-ae15-666eabfb6774"},"ext":null,"units_info":null},"reactive_power_limits":{"min":-1.0,"max":1.0},"ext":{"z_source":{"x":1,"r":0}},"operation_cost":{"start_up":0.0,"fixed":0.0,"shut_down":0.0,"variable":{"cost":[0.0,1.0]},"__metadata__":{"module":"PowerSystems","type":"ThreePartCost"}},"time_limits":null,"must_run":false,"ramp_limits":{"up":3.18,"down":3.18},"time_at_status":10000.0,"active_power_limits":{"min":0.0,"max":3.18},"reactive_power":0.0},{"base_power":100.0,"prime_mover_type":"OT","rating":3.333526661060325,"services":[],"bus":{"value":"7cbfd6bd-ceb8-4928-ac47-0b1120ea4226"},"available":true,"time_series_container":[],"name":"generator-103-1","status":true,"active_power":0.8,"dynamic_injector":{"value":"5b996d87-b90a-4e50-81b7-3b722cc89760"},"__metadata__":{"module":"PowerSystems","type":"ThermalStandard"},"fuel":"OTHER","internal":{"uuid":{"value":"b48fe60d-0883-4b16-92fd-39fbf0705fc0"},"ext":null,"units_info":null},"reactive_power_limits":{"min":-1.0,"max":1.0},"ext":{"z_source":{"x":1,"r":0}},"operation_cost":{"start_up":0.0,"fixed":0.0,"shut_down":0.0,"variable":{"cost":[0.0,1.0]},"__metadata__":{"module":"PowerSystems","type":"ThreePartCost"}},"time_limits":null,"must_run":false,"ramp_limits":{"up":3.18,"down":3.18},"time_at_status":10000.0,"active_power_limits":{"min":0.0,"max":3.18},"reactive_power":0.0},{"services":[],"x":0.12,"b":{"from":0.1,"to":0.1},"r":0.01,"rate":2.5,"available":true,"time_series_container":[],"name":"BUS 1-BUS 3-i_1","reactive_power_flow":0.0,"arc":{"value":"f51234f5-c6ba-4bf5-aca7-7e3d6ca05027"},"__metadata__":{"module":"PowerSystems","type":"Line"},"internal":{"uuid":{"value":"bf42accd-0870-482c-bff9-60edc8582d13"},"ext":null,"units_info":null},"ext":{},"active_power_flow":0.0,"angle_limits":{"min":-1.0472,"max":1.0472}},{"services":[],"x":0.12,"b":{"from":0.1,"to":0.1},"r":0.01,"rate":2.5,"available":true,"time_series_container":[],"name":"BUS 1-BUS 2-i_1","reactive_power_flow":0.0,"arc":{"value":"15592ead-85f0-4ea3-86e0-dc4dc49950c5"},"__metadata__":{"module":"PowerSystems","type":"Line"},"internal":{"uuid":{"value":"89cee4b0-8077-44ab-ac01-f300c77651f2"},"ext":null,"units_info":null},"ext":{},"active_power_flow":0.0,"angle_limits":{"min":-1.0472,"max":1.0472}},{"services":[],"x":0.9,"b":{"from":0.5,"to":0.5},"r":0.02,"rate":2.5,"available":true,"time_series_container":[],"name":"BUS 2-BUS 3-i_1","reactive_power_flow":0.0,"arc":{"value":"023b8133-ebd4-42e4-9fa0-ce7c8b41720b"},"__metadata__":{"module":"PowerSystems","type":"Line"},"internal":{"uuid":{"value":"6918a109-73f0-4961-9c05-f3e4913e7585"},"ext":null,"units_info":null},"ext":{},"active_power_flow":0.0,"angle_limits":{"min":-1.0472,"max":1.0472}},{"load_response":0.0,"name":"1","__metadata__":{"module":"PowerSystems","type":"Area"},"internal":{"uuid":{"value":"8d542aea-7ad4-4c38-b246-eb216727a612"},"ext":null,"units_info":null},"peak_active_power":0.0,"peak_reactive_power":0.0,"time_series_container":[]},{"number":103,"base_voltage":138.0,"bustype":"PV","angle":0.0,"name":"BUS 3","magnitude":1.0059,"__metadata__":{"module":"PowerSystems","type":"ACBus"},"internal":{"uuid":{"value":"7cbfd6bd-ceb8-4928-ac47-0b1120ea4226"},"ext":null,"units_info":null},"area":{"value":"8d542aea-7ad4-4c38-b246-eb216727a612"},"ext":{},"voltage_limits":{"min":0.9,"max":1.1},"load_zone":{"value":"d16f4df2-69fe-44f1-867e-a3e2d4527871"}},{"number":101,"base_voltage":138.0,"bustype":"REF","angle":0.0,"name":"BUS 1","magnitude":1.02,"__metadata__":{"module":"PowerSystems","type":"ACBus"},"internal":{"uuid":{"value":"4a33847c-070f-45ae-868c-8ed13fe64b55"},"ext":null,"units_info":null},"area":{"value":"8d542aea-7ad4-4c38-b246-eb216727a612"},"ext":{},"voltage_limits":{"min":0.9,"max":1.1},"load_zone":{"value":"d16f4df2-69fe-44f1-867e-a3e2d4527871"}},{"number":102,"base_voltage":138.0,"bustype":"PV","angle":0.0,"name":"BUS 2","magnitude":1.0142,"__metadata__":{"module":"PowerSystems","type":"ACBus"},"internal":{"uuid":{"value":"7b56baba-a6b4-4b69-891a-2bbc070da2ab"},"ext":null,"units_info":null},"area":{"value":"8d542aea-7ad4-4c38-b246-eb216727a612"},"ext":{},"voltage_limits":{"min":0.9,"max":1.1},"load_zone":{"value":"d16f4df2-69fe-44f1-867e-a3e2d4527871"}},{"__metadata__":{"module":"PowerSystems","type":"LoadZone"},"name":"1","internal":{"uuid":{"value":"d16f4df2-69fe-44f1-867e-a3e2d4527871"},"ext":null,"units_info":null},"peak_active_power":1.8,"peak_reactive_power":0.5,"time_series_container":[]},{"internal_voltage":1.0,"services":[],"bus":{"value":"315fc427-86c7-45bb-9557-ab28ddc04030"},"available":true,"name":"InfBus","internal_angle":0.0,"active_power":0.0,"dynamic_injector":null,"__metadata__":{"module":"PowerSystems","type":"Source"},"internal":{"uuid":{"value":"b615b938-dd60-4f22-9314-fa4ab9d61227"},"ext":null,"units_info":null},"ext":{},"X_th":5.0e-6,"R_th":0.0,"reactive_power":0.0}],"validation_descriptor_file":"threebus_sys_validation_descriptors.json","time_series_params":{"__metadata__":{"module":"InfrastructureSystems","type":"TimeSeriesParameters"},"resolution":{"value":0,"type":"Minute"},"forecast_params":{"initial_timestamp":"0001-01-01T00:00:00.0","interval":{"value":0,"type":"Minute"},"horizon":0,"count":0,"__metadata__":{"module":"InfrastructureSystems","type":"ForecastParameters"}}}},"units_settings":{"base_value":100.0,"unit_system":"SYSTEM_BASE"},"frequency":60.0,"runchecks":true,"metadata":{"name":null,"description":null,"__metadata__":{"module":"PowerSystems","type":"SystemMetadata"}},"data_format_version":"3.0.0"} \ No newline at end of file diff --git a/previews/PR383/tutorials/threebus_sys_metadata.json b/previews/PR383/tutorials/threebus_sys_metadata.json new file mode 100644 index 000000000..dd7bc141c --- /dev/null +++ b/previews/PR383/tutorials/threebus_sys_metadata.json @@ -0,0 +1,50 @@ +{ + "name": "", + "description": "", + "frequency": 60, + "time_series_resolution_milliseconds": 0, + "component_counts": [ + { + "type": "ACBus", + "count": 3 + }, + { + "type": "Arc", + "count": 3 + }, + { + "type": "Area", + "count": 1 + }, + { + "type": "DynamicGenerator", + "count": 1 + }, + { + "type": "DynamicInverter", + "count": 1 + }, + { + "type": "Line", + "count": 3 + }, + { + "type": "LoadZone", + "count": 1 + }, + { + "type": "Source", + "count": 1 + }, + { + "type": "StandardLoad", + "count": 3 + }, + { + "type": "ThermalStandard", + "count": 2 + } + ], + "time_series_counts": [ + ] +} \ No newline at end of file diff --git a/previews/PR383/tutorials/threebus_sys_validation_descriptors.json b/previews/PR383/tutorials/threebus_sys_validation_descriptors.json new file mode 100644 index 000000000..e9df79ac3 --- /dev/null +++ b/previews/PR383/tutorials/threebus_sys_validation_descriptors.json @@ -0,0 +1 @@ +{"struct_validation_descriptors":[{"fields":[{"name":"variable","data_type":"VariableCost","null_value":"VariableCost((0.0, 0.0))","comment":"variable cost"},{"name":"fixed","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"fixed cost","valid_range":{"max":null,"min":0}}],"docstring":"Data Structure Operational Cost Data in two parts: fixed and variable cost.","struct_name":"TwoPartCost","supertype":"OperationalCost"},{"fields":[{"name":"variable","data_type":"VariableCost","null_value":"VariableCost((0.0, 0.0))","comment":"variable cost"},{"name":"fixed","data_type":"Float64","null_value":"0.0","comment":"fixed cost"},{"name":"start_up","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"start-up cost","valid_range":{"max":null,"min":0}},{"name":"shut_down","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"shut-down cost","valid_range":{"max":null,"min":0}}],"docstring":"Data Structure Operational Cost Data in Three parts fixed, variable cost and start - stop costs.","struct_name":"ThreePartCost","supertype":"OperationalCost"},{"fields":[{"name":"variable","default":"VariableCost((0.0, 0.0))","data_type":"VariableCost","null_value":"VariableCost((0.0, 0.0))","comment":"variable cost"},{"name":"fixed","default":"0.0","data_type":"Float64","null_value":"0.0","comment":"fixed cost"},{"name":"start_up","default":"0.0","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"start-up cost","valid_range":{"max":null,"min":0}},{"name":"shut_down","default":"0.0","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"shut-down cost","valid_range":{"max":null,"min":0}},{"name":"energy_shortage_cost","default":"0.0","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Cost incurred by the model for being short of the energy target.","valid_range":{"max":null,"min":0}},{"name":"energy_surplus_cost","default":"0.0","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Cost incurred by the model for surplus energy stored.","valid_range":{"max":null,"min":0}}],"docstring":"Data Structure for Operational Cost Data like variable cost and start - stop costs and energy storage cost.","struct_name":"StorageManagementCost","supertype":"OperationalCost"},{"fields":[{"name":"no_load","data_type":"Float64","null_value":"0.0","comment":"no load cost"},{"name":"start_up","data_type":"NamedTuple{(:hot, :warm, :cold), NTuple{3, Float64}}","null_value":"(hot = START_COST, warm = START_COST, cold = START_COST)","comment":"start-up cost at different stages of the thermal cycle. Warm is also refered as intermediate in some markets"},{"name":"shut_down","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"shut-down cost","valid_range":{"max":null,"min":0}},{"name":"variable","default":"nothing","data_type":"Union{Nothing, IS.TimeSeriesKey}","null_value":"nothing","comment":"Variable Cost TimeSeriesKey"},{"name":"ancillary_services","default":"Vector{Service}()","data_type":"Vector{Service}","null_value":"Vector{Service}()","comment":"Bids for the ancillary services"}],"docstring":"Data Structure Operational Cost to reflect market bids of energy and ancilliary services.\nCompatible with most US Market bidding mechanisms","struct_name":"MarketBidCost","supertype":"OperationalCost"},{"fields":[{"name":"variable","data_type":"VariableCost","null_value":"VariableCost((0.0, 0.0))","comment":"variable cost"},{"name":"no_load","data_type":"Float64","null_value":"0.0","comment":"no load cost"},{"name":"fixed","data_type":"Float64","null_value":"0.0","comment":"fixed cost"},{"name":"start_up","data_type":"NamedTuple{(:hot, :warm, :cold), NTuple{3, Float64}}","null_value":"(hot = START_COST, warm = START_COST, cold = START_COST)","comment":"start-up cost"},{"name":"shut_down","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"shut-down cost","valid_range":{"max":null,"min":0}}],"docstring":"Data Structure Operational Cost Data which includes fixed, variable cost, multiple start up cost and stop costs.","struct_name":"MultiStartCost","supertype":"OperationalCost"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"peak_active_power","needs_conversion":true,"default":"0.0","data_type":"Float64","null_value":"0.0"},{"name":"peak_reactive_power","needs_conversion":true,"default":"0.0","data_type":"Float64","null_value":"0.0"},{"name":"load_response","default":"0.0","data_type":"Float64","null_value":"0.0"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"A collection of buses for control purposes.","struct_name":"Area","supertype":"AggregationTopology"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"peak_active_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"peak_reactive_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"A collection of buses for electricity price analysis.","struct_name":"LoadZone","supertype":"AggregationTopology"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"active_power_flow_limits","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)"},{"name":"violation_penalty","default":"INFINITE_COST","data_type":"Float64","null_value":"0.0","comment":"Penalty for violating the flow limits in the interface"},{"name":"direction_mapping","default":"Dict{String, Int}()","data_type":"Dict{String, Int}","null_value":"Dict{String, Int}()","comment":"Map to set of multiplier to the flow in the line for cases when the line has a reverse direction with respect to the interface"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"A collection of branches that make up an interface or corridor for the transfer of power.","struct_name":"TransmissionInterface","supertype":"Service"},{"inner_constructor_check":"check_bus_params","fields":[{"name":"number","data_type":"Int","null_value":"0","comment":"number associated with the bus"},{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init","comment":"the name of the bus"},{"name":"bustype","data_type":"Union{Nothing, ACBusTypes}","null_value":"nothing","comment":"bus type"},{"name":"angle","data_type":"Union{Nothing, Float64}","null_value":"0.0","validation_action":"error","comment":"angle of the bus in radians","valid_range":{"max":1.571,"min":-1.571}},{"name":"magnitude","data_type":"Union{Nothing, Float64}","null_value":"0.0","validation_action":"warn","comment":"voltage as a multiple of basevoltage","valid_range":"voltage_limits"},{"name":"voltage_limits","data_type":"Union{Nothing, MinMax}","null_value":"(min=0.0, max=0.0)","comment":"limits on the voltage variation as multiples of basevoltage"},{"name":"base_voltage","data_type":"Union{Nothing, Float64}","null_value":"nothing","validation_action":"error","comment":"the base voltage in kV","valid_range":{"max":null,"min":0}},{"name":"area","default":"nothing","data_type":"Union{Nothing, Area}","null_value":"nothing","comment":"the area containing the bus"},{"name":"load_zone","default":"nothing","data_type":"Union{Nothing, LoadZone}","null_value":"nothing","comment":"the load zone containing the bus"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"A power-system bus.","struct_name":"ACBus","supertype":"Bus"},{"fields":[{"name":"number","data_type":"Int","null_value":"0","comment":"number associated with the DC bus"},{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init","comment":"the name of the DC bus"},{"name":"magnitude","data_type":"Union{Nothing, Float64}","null_value":"0.0","validation_action":"warn","comment":"voltage as a multiple of basevoltage","valid_range":"voltage_limits"},{"name":"voltage_limits","data_type":"Union{Nothing, MinMax}","null_value":"(min=0.0, max=0.0)","comment":"limits on the voltage variation as multiples of basevoltage"},{"name":"base_voltage","data_type":"Union{Nothing, Float64}","null_value":"nothing","validation_action":"error","comment":"the base voltage in kV","valid_range":{"max":null,"min":0}},{"name":"area","default":"nothing","data_type":"Union{Nothing, Area}","null_value":"nothing","comment":"the area containing the DC bus"},{"name":"load_zone","default":"nothing","data_type":"Union{Nothing, LoadZone}","null_value":"nothing","comment":"the load zone containing the DC bus"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"A power-system DC bus.","struct_name":"DCBus","supertype":"Bus"},{"fields":[{"name":"from","data_type":"Bus","null_value":"ACBus(nothing)","comment":"The initial bus"},{"name":"to","data_type":"Bus","null_value":"ACBus(nothing)","comment":"The terminal bus"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"A topological Arc.","struct_name":"Arc","supertype":"Topology","custom_code":"get_name(arc::Arc) = (get_name ∘ get_from)(arc) * \" -> \" * (get_name ∘ get_to)(arc)"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"active_power_flow","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"reactive_power_flow","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"arc","data_type":"Arc","null_value":"Arc(ACBus(nothing), ACBus(nothing))"},{"name":"r","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"System per-unit value","valid_range":{"max":4,"min":0}},{"name":"x","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"System per-unit value","valid_range":{"max":4,"min":0}},{"name":"b","data_type":"FromTo","null_value":"(from=0.0, to=0.0)","validation_action":"warn","comment":"System per-unit value","valid_range":{"max":100,"min":0}},{"name":"rate","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"angle_limits","data_type":"MinMax","null_value":"(min=-1.571, max=1.571)","validation_action":"error","valid_range":{"max":1.571,"min":-1.571}},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"struct_name":"Line","supertype":"ACBranch"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"active_power_flow","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"reactive_power_flow","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"arc","data_type":"Arc","null_value":"Arc(ACBus(nothing), ACBus(nothing))"},{"name":"r","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"System per-unit value","valid_range":{"max":4,"min":0}},{"name":"x","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"System per-unit value","valid_range":{"max":4,"min":0}},{"name":"b","data_type":"FromTo","null_value":"(from=0.0, to=0.0)","validation_action":"warn","comment":"System per-unit value","valid_range":{"max":2,"min":0}},{"name":"flow_limits","needs_conversion":true,"data_type":"FromTo_ToFrom","null_value":"(from_to=0.0, to_from=0.0)","comment":"throw warning above max SIL"},{"name":"rate","needs_conversion":true,"data_type":"Float64","null_value":"0.0","comment":"compare to SIL (warn) (theoretical limit)"},{"name":"angle_limits","data_type":"MinMax","null_value":"(min=-1.571, max=1.571)","validation_action":"error","valid_range":{"max":1.571,"min":-1.571}},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"struct_name":"MonitoredLine","supertype":"ACBranch"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"active_power_flow","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"reactive_power_flow","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"arc","data_type":"Arc","null_value":"Arc(ACBus(nothing), ACBus(nothing))"},{"name":"r","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"System per-unit value","valid_range":{"max":4,"min":0}},{"name":"x","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"System per-unit value","valid_range":{"max":4,"min":-2}},{"name":"primary_shunt","Comment":"System per-unit value","data_type":"Float64","null_value":"0.0","validation_action":"warn","valid_range":{"max":2,"min":0}},{"name":"tap","data_type":"Float64","null_value":"1.0","validation_action":"error","valid_range":{"max":2,"min":0}},{"name":"α","data_type":"Float64","null_value":"0.0","validation_action":"warn","valid_range":{"max":1.571,"min":-1.571}},{"name":"rate","needs_conversion":true,"data_type":"Union{Nothing, Float64}","null_value":"0.0","validation_action":"error","valid_range":{"max":null,"min":0}},{"name":"phase_angle_limits","default":"(min=-1.571, max=1.571)","data_type":"MinMax","null_value":"(min=-1.571, max=1.571)","validation_action":"error","valid_range":{"max":1.571,"min":-1.571}},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"struct_name":"PhaseShiftingTransformer","supertype":"ACBranch"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"active_power_flow","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"reactive_power_flow","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"arc","data_type":"Arc","null_value":"Arc(ACBus(nothing), ACBus(nothing))"},{"name":"r","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"System per-unit value","valid_range":{"max":2,"min":-2}},{"name":"x","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"System per-unit value","valid_range":{"max":4,"min":-2}},{"name":"primary_shunt","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"System per-unit value","valid_range":{"max":2,"min":0}},{"name":"tap","data_type":"Float64","null_value":"1.0","validation_action":"error","valid_range":{"max":2,"min":0}},{"name":"rate","needs_conversion":true,"data_type":"Union{Nothing, Float64}","null_value":"0.0","validation_action":"error","valid_range":{"max":null,"min":0}},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"struct_name":"TapTransformer","supertype":"ACBranch"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"active_power_flow","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"reactive_power_flow","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"arc","data_type":"Arc","null_value":"Arc(ACBus(nothing), ACBus(nothing))"},{"name":"r","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"System per-unit value","valid_range":{"max":4,"min":-2}},{"name":"x","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"System per-unit value","valid_range":{"max":4,"min":-2}},{"name":"primary_shunt","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"System per-unit value","valid_range":{"max":2,"min":0}},{"name":"rate","needs_conversion":true,"data_type":"Union{Nothing, Float64}","null_value":"nothing","validation_action":"error","valid_range":{"max":null,"min":0}},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"The 2-W transformer model uses an equivalent circuit assuming the impedance is on the High Voltage Side of the transformer. The model allocates the iron losses and magnetizing susceptance to the primary side.","struct_name":"Transformer2W","supertype":"ACBranch"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"active_power_flow","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"arc","data_type":"Arc","null_value":"Arc(ACBus(nothing), ACBus(nothing))"},{"name":"active_power_limits_from","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)"},{"name":"active_power_limits_to","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)"},{"name":"reactive_power_limits_from","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)"},{"name":"reactive_power_limits_to","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)"},{"name":"loss","data_type":"NamedTuple{(:l0, :l1), Tuple{Float64, Float64}}","null_value":"(l0=0.0, l1=0.0)"},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"a High voltage DC line.","struct_name":"TwoTerminalHVDCLine","supertype":"ACBranch"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"active_power_flow","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"arc","data_type":"Arc","null_value":"Arc(ACBus(nothing), ACBus(nothing))"},{"name":"rectifier_tap_limits","data_type":"MinMax","null_value":"(min=0.0, max=0.0)"},{"name":"rectifier_xrc","data_type":"Float64","null_value":"0.0"},{"name":"rectifier_firing_angle","data_type":"MinMax","null_value":"(min=0.0, max=0.0)"},{"name":"inverter_tap_limits","data_type":"MinMax","null_value":"(min=0.0, max=0.0)"},{"name":"inverter_xrc","data_type":"Float64","null_value":"0.0"},{"name":"inverter_firing_angle","data_type":"MinMax","null_value":"(min=0.0, max=0.0)"},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"As implemented in Milano's Book, Page 397.","struct_name":"TwoTerminalVSCDCLine","supertype":"ACBranch"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"active_power_flow","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"arc","data_type":"Arc","null_value":"Arc(DCBus(nothing), DCBus(nothing))"},{"name":"r","data_type":"Float64","null_value":"0.0","comment":"Series Resistance system per-unit value"},{"name":"l","data_type":"Float64","null_value":"0.0","comment":"Series Inductance system per-unit value"},{"name":"c","data_type":"Float64","null_value":"0.0","comment":"Shunt capacitance system per-unit value"},{"name":"active_power_limits_from","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)"},{"name":"active_power_limits_to","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)"},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"a HVDC T-Model DC line.","struct_name":"TModelHVDCLine","supertype":"DCBranch"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"bus","data_type":"ACBus","null_value":"ACBus(nothing)"},{"name":"active_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"reactive_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"max_active_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"max_reactive_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"base_power","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Base power of the unit in MVA","valid_range":{"max":null,"min":0}},{"name":"operation_cost","data_type":"TwoPartCost","null_value":"TwoPartCost(nothing)","comment":"Operation Cost of Generation [`TwoPartCost`](@ref)"},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"dynamic_injector","default":"nothing","data_type":"Union{Nothing, DynamicInjection}","exclude_setter":true,"null_value":"nothing","comment":"corresponding dynamic injection device"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"struct_name":"InterruptiblePowerLoad","supertype":"ControllableLoad"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"bus","data_type":"ACBus","null_value":"ACBus(nothing)"},{"name":"Y","data_type":"Complex{Float64}","null_value":"0.0","comment":"System per-unit value"},{"name":"dynamic_injector","default":"nothing","data_type":"Union{Nothing, DynamicInjection}","exclude_setter":true,"null_value":"nothing","comment":"corresponding dynamic injection model for admittance"},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"struct_name":"FixedAdmittance","supertype":"ElectricLoad"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"bus","data_type":"ACBus","null_value":"ACBus(nothing)"},{"name":"Y","data_type":"Complex{Float64}","null_value":"0.0","comment":"Initial impedance at N = 0"},{"name":"number_of_steps","default":"0","data_type":"Int","null_value":"0","comment":"Number of steps for adjustable shunt"},{"name":"Y_increase","default":"0","data_type":"Complex{Float64}","null_value":"0","comment":"Admittance increment for each of step increase"},{"name":"dynamic_injector","default":"nothing","data_type":"Union{Nothing, DynamicInjection}","exclude_setter":true,"null_value":"nothing","comment":"corresponding dynamic injection model for admittance"},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"struct_name":"SwitchedAdmittance","supertype":"ElectricLoad"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"bus","data_type":"ACBus","null_value":"ACBus(nothing)"},{"name":"active_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"reactive_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"base_power","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Base power of the unit in MVA","valid_range":{"max":null,"min":0}},{"name":"max_active_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"max_reactive_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"dynamic_injector","default":"nothing","data_type":"Union{Nothing, DynamicInjection}","exclude_setter":true,"null_value":"nothing","comment":"corresponding dynamic injection device"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Data structure for a static power load.","struct_name":"PowerLoad","supertype":"StaticLoad"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"bus","data_type":"ACBus","null_value":"ACBus(nothing)"},{"name":"base_power","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Base power of the unit in MVA","valid_range":{"max":null,"min":0}},{"name":"constant_active_power","needs_conversion":true,"default":"0.0","data_type":"Float64","null_value":"0.0"},{"name":"constant_reactive_power","needs_conversion":true,"default":"0.0","data_type":"Float64","null_value":"0.0"},{"name":"impedance_active_power","needs_conversion":true,"default":"0.0","data_type":"Float64","null_value":"0.0"},{"name":"impedance_reactive_power","needs_conversion":true,"default":"0.0","data_type":"Float64","null_value":"0.0"},{"name":"current_active_power","needs_conversion":true,"default":"0.0","data_type":"Float64","null_value":"0.0"},{"name":"current_reactive_power","needs_conversion":true,"default":"0.0","data_type":"Float64","null_value":"0.0"},{"name":"max_constant_active_power","needs_conversion":true,"default":"0.0","data_type":"Float64","null_value":"0.0"},{"name":"max_constant_reactive_power","needs_conversion":true,"default":"0.0","data_type":"Float64","null_value":"0.0"},{"name":"max_impedance_active_power","needs_conversion":true,"default":"0.0","data_type":"Float64","null_value":"0.0"},{"name":"max_impedance_reactive_power","needs_conversion":true,"default":"0.0","data_type":"Float64","null_value":"0.0"},{"name":"max_current_active_power","needs_conversion":true,"default":"0.0","data_type":"Float64","null_value":"0.0"},{"name":"max_current_reactive_power","needs_conversion":true,"default":"0.0","data_type":"Float64","null_value":"0.0"},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"dynamic_injector","default":"nothing","data_type":"Union{Nothing, DynamicInjection}","exclude_setter":true,"null_value":"nothing","comment":"corresponding dynamic injection device"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Data structure for a standard load.","struct_name":"StandardLoad","supertype":"StaticLoad"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"bus","data_type":"ACBus","null_value":"ACBus(nothing)"},{"name":"active_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"reactive_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"active_power_coefficient","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Coefficient relating voltage dependence for power P = P0 * V^α","valid_range":{"max":null,"min":0}},{"name":"reactive_power_coefficient","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Coefficient relating voltage dependence for power Q = Q0 * V^β","valid_range":{"max":null,"min":0}},{"name":"base_power","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Base power of the unit in MVA","valid_range":{"max":null,"min":0}},{"name":"max_active_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"max_reactive_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"dynamic_injector","default":"nothing","data_type":"Union{Nothing, DynamicInjection}","exclude_setter":true,"null_value":"nothing","comment":"corresponding dynamic injection device"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Data structure for a static exponential load.","struct_name":"ExponentialLoad","supertype":"StaticLoad"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"R_s","data_type":"Float64","null_value":0,"comment":"Armature stator resistance","valid_range":{"max":null,"min":0}},{"name":"R_r","data_type":"Float64","null_value":0,"comment":"Rotor resistance","valid_range":{"max":null,"min":0}},{"name":"X_ls","data_type":"Float64","null_value":0,"comment":"Stator Leakage Reactance","valid_range":{"max":null,"min":0}},{"name":"X_lr","data_type":"Float64","null_value":0,"comment":"Rotor Leakage Reactance","valid_range":{"max":null,"min":0}},{"name":"X_m","data_type":"Float64","null_value":0,"comment":"Stator-Rotor Mutual Reactance","valid_range":{"max":null,"min":0}},{"name":"H","data_type":"Float64","null_value":0,"comment":"Motor Inertia Constant [s]","valid_range":{"max":null,"min":0}},{"name":"A","data_type":"Float64","null_value":"0.0","comment":"Torque-Speed Quadratic Term","valid_range":{"max":1,"min":0}},{"name":"B","data_type":"Float64","null_value":"0.0","comment":"Torque-Speed Linear Term","valid_range":{"max":1,"min":0}},{"name":"base_power","data_type":"Float64","null_value":0,"comment":"Base power","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"C","data_type":"Float64","comment":"Torque-Speed Constant Term","internal_default":"PowerSystems.calculate_IM_torque_params(A, B)"},{"name":"τ_ref","data_type":"Float64","comment":"Reference torque parameter","internal_default":"1.0"},{"name":"B_shunt","data_type":"Float64","comment":"Susceptance Initialization Corrector Term","internal_default":"0.0"},{"name":"X_ad","data_type":"Float64","comment":"Equivalent d-axis reactance","internal_default":"(1.0 / X_m + 1.0 / X_ls + 1.0 / X_lr)^(-1)"},{"name":"X_aq","data_type":"Float64","comment":"Equivalent q-axis reactance","internal_default":"X_ad"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tψ_qs: stator flux in the q-axis,\n\tψ_ds: stator flux in the d-axis,\n\tψ_qr: rotor flux in the q-axis,\n\tψ_dr: rotor flux in the d-axis, \n\tωr: Rotor speed [pu],","internal_default":"[:ψ_qs, :ψ_ds, :ψ_qr, :ψ_dr, :ωr]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"SingleCageInductionMachine has 5 states","internal_default":5},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of 5-states three-phase single cage induction machine with quadratic torque-speed relationship.","struct_name":"SingleCageInductionMachine","supertype":"DynamicInjection"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"R_s","data_type":"Float64","null_value":0,"comment":"Armature stator resistance","valid_range":{"max":null,"min":0}},{"name":"R_r","data_type":"Float64","null_value":0,"comment":"Rotor resistance","valid_range":{"max":null,"min":0}},{"name":"X_ls","data_type":"Float64","null_value":0,"comment":"Stator Leakage Reactance","valid_range":{"max":null,"min":0}},{"name":"X_lr","data_type":"Float64","null_value":0,"comment":"Rotor Leakage Reactance","valid_range":{"max":null,"min":0}},{"name":"X_m","data_type":"Float64","null_value":0,"comment":"Stator-Rotor Mutual Reactance","valid_range":{"max":null,"min":0}},{"name":"H","data_type":"Float64","null_value":0,"comment":"Motor Inertia Constant [s]","valid_range":{"max":null,"min":0}},{"name":"A","data_type":"Float64","null_value":"0.0","comment":"Torque-Speed Quadratic Term","valid_range":{"max":1,"min":0}},{"name":"B","data_type":"Float64","null_value":"0.0","comment":"Torque-Speed Linear Term","valid_range":{"max":1,"min":0}},{"name":"base_power","data_type":"Float64","null_value":0,"comment":"Base power","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"C","data_type":"Float64","comment":"Torque-Speed Constant Term","internal_default":"PowerSystems.calculate_IM_torque_params(A, B)"},{"name":"τ_ref","data_type":"Float64","comment":"Reference torque parameter","internal_default":"1.0"},{"name":"B_shunt","data_type":"Float64","comment":"Susceptance Initialization Corrector Term","internal_default":"0.0"},{"name":"X_ss","data_type":"Float64","comment":"Stator self reactance","internal_default":"X_ls + X_m"},{"name":"X_rr","data_type":"Float64","comment":"Rotor self reactance","internal_default":"X_lr + X_m"},{"name":"X_p","data_type":"Float64","comment":"Transient reactance","internal_default":"X_ss - X_m^2 / X_rr"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tψ_qr: rotor flux in the q-axis,\n\tψ_dr: rotor flux in the d-axis, \n\tωr: Rotor speed [pu],","internal_default":"[:ψ_qr, :ψ_dr, :ωr]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"SimplifiedSingleCageInductionMachine has 3 states","internal_default":3},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of 3-states three-phase single cage induction machine with quadratic torque-speed relationship.","struct_name":"SimplifiedSingleCageInductionMachine","supertype":"DynamicInjection"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"a","data_type":"Float64","null_value":0,"comment":"Active power static exponential coefficient","valid_range":{"max":null,"min":0}},{"name":"b","data_type":"Float64","null_value":0,"comment":"Reactive power static exponential coefficient","valid_range":{"max":null,"min":0}},{"name":"α","data_type":"Float64","null_value":0,"comment":"Active power transient exponential coefficient","valid_range":{"max":null,"min":0}},{"name":"β","data_type":"Float64","null_value":0,"comment":"Reactive power transient exponential coefficient","valid_range":{"max":null,"min":0}},{"name":"T_p","data_type":"Float64","null_value":0,"comment":"Active Power Time Constant","valid_range":{"max":null,"min":0}},{"name":"T_q","data_type":"Float64","null_value":0,"comment":"Reactive Power Time Constant","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"base_power","data_type":"Float64","comment":"Base Power","internal_default":"100.0"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tx_p: Integrator state of the active power,\n\tx_q: Integrator state of the reactive power,","internal_default":"[:x_p, :x_q]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"DynamicExponentialLoad has 2 states","internal_default":2},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of 2-states of a generic dynamic load model based on VOLTAGE STABILITY ANALYSIS USING GENERIC DYNAMIC LOAD MODELS by W. Xu and Y. Mansour, IEEE Transactions on Power Systems, 1994.","struct_name":"DynamicExponentialLoad","supertype":"DynamicInjection"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"r_load","data_type":"Float64","null_value":0,"comment":"DC-side resistor","valid_range":{"max":null,"min":0}},{"name":"c_dc","data_type":"Float64","null_value":0,"comment":"DC-side capacitor","valid_range":{"max":null,"min":0}},{"name":"rf","data_type":"Float64","null_value":0,"comment":"Converter side filter resistance","valid_range":{"max":null,"min":0}},{"name":"lf","data_type":"Float64","null_value":0,"comment":"Converter side filter inductance","valid_range":{"max":null,"min":0}},{"name":"cf","data_type":"Float64","null_value":0,"comment":"AC Converter filter capacitance","valid_range":{"max":null,"min":0}},{"name":"rg","data_type":"Float64","null_value":0,"comment":"Network side filter resistance","valid_range":{"max":null,"min":0}},{"name":"lg","data_type":"Float64","null_value":0,"comment":"Network side filter inductance","valid_range":{"max":null,"min":0}},{"name":"kp_pll","data_type":"Float64","null_value":0,"comment":"Proportional constant for PI-PLL block","valid_range":{"max":null,"min":0}},{"name":"ki_pll","data_type":"Float64","null_value":0,"comment":"Integral constant for PI-PLL block","valid_range":{"max":null,"min":0}},{"name":"kpv","data_type":"Float64","null_value":0,"comment":"Proportional constant for Voltage Control block","valid_range":{"max":null,"min":0}},{"name":"kiv","data_type":"Float64","null_value":0,"comment":"Integral constant for Voltage Control block","valid_range":{"max":null,"min":0}},{"name":"kpc","data_type":"Float64","null_value":0,"comment":"Proportional constant for Current Control block","valid_range":{"max":null,"min":0}},{"name":"kic","data_type":"Float64","null_value":0,"comment":"Integral constant for Current Control block","valid_range":{"max":null,"min":0}},{"name":"base_power","data_type":"Float64","null_value":0,"comment":"Base power","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"P_ref","data_type":"Float64","comment":"Reference active power parameter","internal_default":"1.0"},{"name":"Q_ref","data_type":"Float64","comment":"Reference reactive power parameter","internal_default":"1.0"},{"name":"V_ref","data_type":"Float64","comment":"Reference voltage parameter","internal_default":"1.0"},{"name":"ω_ref","data_type":"Float64","comment":"Reference frequency parameter","internal_default":"1.0"},{"name":"is_filter_differential","data_type":"Int","comment":"Boolean to decide if filter states are differential or algebraic","internal_default":"1"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tθ_pll: PLL deviation angle, \n\tϵ_pll: PLL integrator state, \n\tη: DC-voltage controller integrator state, \n\tv_dc: DC voltage at the capacitor, \n\tγd: d-axis Current controller integrator state, \n\tγq: q-axis Current controller integrator state, \n\tir_cnv: Real current out of the converter,\n\tii_cnv: Imaginary current out of the converter,\n\tvr_filter: Real voltage at the filter's capacitor,\n\tvi_filter: Imaginary voltage at the filter's capacitor,\n\tir_filter: Real current out of the filter,\n\tii_filter: Imaginary current out of the filter","internal_default":"[:θ_pll, :ϵ_pll, :η, :v_dc, :γd, :γq, :ir_cnv, :ii_cnv, :vr_filter, :vi_filter, :ir_filter, :ii_filter]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"ActiveConstantPowerLoad has 12 states","internal_default":12},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of 12-states active power load based on the paper Dynamic Stability of a Microgrid With an Active Load from N. Bottrell, M. Prodanovic and T. Green in IEEE Transactions on Power Electronics, 2013.","struct_name":"ActiveConstantPowerLoad","supertype":"DynamicInjection"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"bus","data_type":"ACBus","null_value":"ACBus(nothing)"},{"name":"dc_bus","data_type":"DCBus","null_value":"DCBus(nothing)"},{"name":"active_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Active Power on the DCSide","valid_range":"active_power_limits"},{"name":"rating","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Thermal limited MVA Power Output of the converter. <= Capacity","valid_range":{"max":null,"min":0}},{"name":"active_power_limits","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)"},{"name":"base_power","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Base power of the converter in MVA","valid_range":{"max":null,"min":0}},{"name":"operation_cost","default":"TwoPartCost(0.0, 0.0)","data_type":"OperationalCost","null_value":"TwoPartCost(nothing)","comment":"Operation Cost of Generation [`OperationalCost`](@ref)"},{"name":"efficiency","default":"1.0","data_type":"Float64","null_value":"0.0","comment":"Conversion efficiency from AC Power to DC Power"},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"dynamic_injector","default":"nothing","data_type":"Union{Nothing, DynamicInjection}","exclude_setter":true,"null_value":"nothing","comment":"corresponding dynamic injection device"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Interconnecting Power Converter (IPC) for transforming power from an ACBus to a DCBus","struct_name":"InterconnectingConverter","supertype":"StaticInjection"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"K","data_type":"Float64","null_value":0,"comment":"Gain in pu","valid_range":{"max":null,"min":0}},{"name":"T1","data_type":"Float64","null_value":0,"comment":"Time constant in s","valid_range":{"max":null,"min":0}},{"name":"T2","data_type":"Float64","null_value":0,"comment":"Time constant in s","valid_range":{"max":null,"min":0}},{"name":"T3","data_type":"Float64","null_value":0,"comment":"Time constant in s","valid_range":{"max":null,"min":"eps()"}},{"name":"T4","data_type":"Float64","null_value":0,"comment":"Time constant in s","valid_range":{"max":null,"min":0}},{"name":"T5","data_type":"Float64","null_value":0,"comment":"Time constant in s","valid_range":{"max":null,"min":0}},{"name":"Rmin","data_type":"Float64","null_value":0,"comment":"Reactor minimum Mvar","valid_range":{"max":null,"min":0}},{"name":"Vmax","data_type":"Float64","null_value":0,"comment":"Maximum voltage in pu","valid_range":{"max":null,"min":0}},{"name":"Vmin","data_type":"Float64","null_value":0,"comment":"Minimum voltage in pu","valid_range":{"max":null,"min":0}},{"name":"CBase","data_type":"Float64","null_value":0,"comment":"Capacitor Mvar","valid_range":{"max":null,"min":0}},{"name":"base_power","data_type":"Float64","null_value":0,"comment":"Base power","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"R_th","data_type":"Float64","comment":"Source Thevenin resistance","internal_default":"0.0"},{"name":"X_th","data_type":"Float64","comment":"Source Thevenin reactance","internal_default":"0.0"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tthy: thyristor,\n\tvr1: regulator output 1,\n\tvr2: regulator output 2","internal_default":"[:thy, :vr1, :vr2]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"CSVGN1 has 3 states","internal_default":3},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of static shunt compensator: CSVGN1 in PSSE","struct_name":"CSVGN1","supertype":"DynamicInjection"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"bus","data_type":"ACBus","null_value":"ACBus(nothing)"},{"name":"active_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"reactive_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"warn","valid_range":"reactive_power_limits"},{"name":"rating","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Thermal limited MVA Power Output of the unit. <= Capacity","valid_range":{"max":null,"min":0}},{"name":"prime_mover_type","data_type":"PrimeMovers","null_value":"PrimeMovers.HY","comment":"Prime mover technology according to EIA 923"},{"name":"active_power_limits","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)"},{"name":"reactive_power_limits","needs_conversion":true,"data_type":"Union{Nothing, MinMax}","null_value":"nothing","validation_action":"warn"},{"name":"ramp_limits","needs_conversion":true,"data_type":"Union{Nothing, UpDown}","null_value":"nothing","validation_action":"error","comment":"ramp up and ramp down limits in MW (in component base per unit) per minute","valid_range":{"max":null,"min":0}},{"name":"time_limits","data_type":"Union{Nothing, UpDown}","null_value":"nothing","validation_action":"error","comment":"Minimum up and Minimum down time limits in hours","valid_range":{"max":null,"min":0}},{"name":"base_power","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Base power of the unit in MVA","valid_range":{"max":null,"min":0}},{"name":"storage_capacity","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Maximum storage capacity in the reservoir (units can be p.u-hr or m^3).","valid_range":{"max":null,"min":0}},{"name":"inflow","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Baseline inflow into the reservoir (units can be p.u. or m^3/hr)","valid_range":{"max":null,"min":0}},{"name":"initial_storage","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Initial storage capacity in the reservoir (units can be p.u-hr or m^3).","valid_range":{"max":null,"min":0}},{"name":"operation_cost","default":"TwoPartCost(0.0, 0.0)","data_type":"OperationalCost","null_value":"TwoPartCost(nothing)","comment":"Operation Cost of Generation [`OperationalCost`](@ref)"},{"name":"storage_target","default":"1.0","data_type":"Float64","null_value":"0.0","comment":"Storage target at the end of simulation as ratio of storage capacity."},{"name":"conversion_factor","default":"1.0","data_type":"Float64","null_value":"0.0","comment":"Conversion factor from flow/volume to energy: m^3 -> p.u-hr."},{"name":"time_at_status","default":"INFINITE_TIME","data_type":"Float64","null_value":"INFINITE_TIME"},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"dynamic_injector","default":"nothing","data_type":"Union{Nothing, DynamicInjection}","exclude_setter":true,"null_value":"nothing","comment":"corresponding dynamic injection device"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"struct_name":"HydroEnergyReservoir","supertype":"HydroGen"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"bus","data_type":"ACBus","null_value":"ACBus(nothing)"},{"name":"active_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"reactive_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"warn","valid_range":"reactive_power_limits"},{"name":"rating","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Thermal limited MVA Power Output of the unit. <= Capacity","valid_range":{"max":null,"min":0}},{"name":"prime_mover_type","data_type":"PrimeMovers","null_value":"PrimeMovers.HY","comment":"Prime mover technology according to EIA 923"},{"name":"active_power_limits","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)","validation_action":"warn","valid_range":{"max":null,"min":0}},{"name":"reactive_power_limits","needs_conversion":true,"data_type":"Union{Nothing, MinMax}","null_value":"nothing","validation_action":"warn"},{"name":"ramp_limits","needs_conversion":true,"data_type":"Union{Nothing, UpDown}","null_value":"nothing","validation_action":"error","comment":"ramp up and ramp down limits in MW (in component base per unit) per minute","valid_range":{"max":null,"min":0}},{"name":"time_limits","data_type":"Union{Nothing, UpDown}","null_value":"nothing","validation_action":"error","comment":"Minimum up and Minimum down time limits in hours","valid_range":{"max":null,"min":0}},{"name":"base_power","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Base power of the unit in MVA","valid_range":{"max":null,"min":0}},{"name":"operation_cost","default":"TwoPartCost(0.0, 0.0)","data_type":"OperationalCost","null_value":"TwoPartCost(nothing)","comment":"Operation Cost of Generation [`OperationalCost`](@ref)"},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"dynamic_injector","default":"nothing","data_type":"Union{Nothing, DynamicInjection}","exclude_setter":true,"null_value":"nothing","comment":"corresponding dynamic injection device"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"struct_name":"HydroDispatch","supertype":"HydroGen"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"bus","data_type":"ACBus","null_value":"ACBus(nothing)"},{"name":"active_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"reactive_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"rating","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Thermal limited MVA Power Output of the unit. <= Capacity","valid_range":{"max":null,"min":0}},{"name":"base_power","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Base power of the unit in MVA","valid_range":{"max":null,"min":0}},{"name":"prime_mover_type","data_type":"PrimeMovers","null_value":"PrimeMovers.HY","comment":"Prime mover technology according to EIA 923"},{"name":"active_power_limits","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)","validation_action":"warn","valid_range":{"max":null,"min":0}},{"name":"reactive_power_limits","needs_conversion":true,"data_type":"Union{Nothing, MinMax}","null_value":"nothing","validation_action":"warn"},{"name":"ramp_limits","needs_conversion":true,"data_type":"Union{Nothing, UpDown}","null_value":"nothing","validation_action":"error","comment":"ramp up and ramp down limits in MW (in component base per unit) per minute","valid_range":{"max":null,"min":0}},{"name":"time_limits","data_type":"Union{Nothing, UpDown}","null_value":"nothing","validation_action":"error","comment":"Minimum up and Minimum down time limits in hours","valid_range":{"max":null,"min":0}},{"name":"rating_pump","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Thermal limited MVA Power Withdrawl of the pump. <= Capacity","valid_range":{"max":null,"min":0}},{"name":"active_power_limits_pump","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)"},{"name":"reactive_power_limits_pump","needs_conversion":true,"data_type":"Union{Nothing, MinMax}","null_value":"nothing","validation_action":"warn"},{"name":"ramp_limits_pump","needs_conversion":true,"data_type":"Union{Nothing, UpDown}","null_value":"nothing","validation_action":"error","comment":"ramp up and ramp down limits in MW (in component base per unit) per minute of pump","valid_range":{"max":null,"min":0}},{"name":"time_limits_pump","data_type":"Union{Nothing, UpDown}","null_value":"nothing","validation_action":"error","comment":"Minimum up and Minimum down time limits of pump in hours","valid_range":{"max":null,"min":0}},{"name":"storage_capacity","needs_conversion":true,"data_type":"UpDown","null_value":"(up=0.0, down=0.0)","validation_action":"error","comment":"Maximum storage capacity in the upper and lower reservoirs (units can be p.u-hr or m^3).","valid_range":{"max":null,"min":0}},{"name":"inflow","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Baseline inflow into the upper reservoir (units can be p.u. or m^3/hr)","valid_range":{"max":null,"min":0}},{"name":"outflow","data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Baseline outflow from the lower reservoir (units can be p.u. or m^3/hr)","valid_range":{"max":null,"min":0}},{"name":"initial_storage","needs_conversion":true,"data_type":"UpDown","null_value":"(up=0.0, down=0.0)","validation_action":"error","comment":"Initial storage capacity in the upper and lower reservoir (units can be p.u-hr or m^3).","valid_range":{"max":null,"min":0}},{"name":"storage_target","default":"(up=1.0, down=1.0)","data_type":"UpDown","null_value":"(up=0.0, down=0.0)","comment":"Storage target of upper reservoir at the end of simulation as ratio of storage capacity."},{"name":"operation_cost","default":"TwoPartCost(0.0, 0.0)","data_type":"OperationalCost","null_value":"TwoPartCost(nothing)","comment":"Operation Cost of Generation [`OperationalCost`](@ref)"},{"name":"pump_efficiency","default":"1.0","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Efficiency of pump","valid_range":{"max":1,"min":0}},{"name":"conversion_factor","default":"1.0","data_type":"Float64","null_value":"0.0","comment":"Conversion factor from flow/volume to energy: m^3 -> p.u-hr."},{"name":"time_at_status","default":"INFINITE_TIME","data_type":"Float64","null_value":"INFINITE_TIME"},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"dynamic_injector","default":"nothing","data_type":"Union{Nothing, DynamicInjection}","exclude_setter":true,"null_value":"nothing","comment":"corresponding dynamic injection device"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"struct_name":"HydroPumpedStorage","supertype":"HydroGen"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"bus","data_type":"ACBus","null_value":"ACBus(nothing)"},{"name":"active_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"reactive_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"rating","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Thermal limited MVA Power Output of the unit. <= Capacity","valid_range":{"max":null,"min":0}},{"name":"prime_mover_type","data_type":"PrimeMovers","null_value":"PrimeMovers.OT","comment":"Prime mover technology according to EIA 923"},{"name":"reactive_power_limits","needs_conversion":true,"data_type":"Union{Nothing, MinMax}","null_value":"nothing"},{"name":"power_factor","data_type":"Float64","null_value":"1.0","validation_action":"error","valid_range":{"max":1,"min":0}},{"name":"operation_cost","data_type":"TwoPartCost","null_value":"TwoPartCost(nothing)","comment":"Operation Cost of Generation [`TwoPartCost`](@ref)"},{"name":"base_power","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Base power of the unit in MVA","valid_range":{"max":null,"min":0}},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"dynamic_injector","default":"nothing","data_type":"Union{Nothing, DynamicInjection}","exclude_setter":true,"null_value":"nothing","comment":"corresponding dynamic injection device"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"struct_name":"RenewableDispatch","supertype":"RenewableGen"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"bus","data_type":"ACBus","null_value":"ACBus(nothing)"},{"name":"active_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"reactive_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"rating","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Thermal limited MVA Power Output of the unit. <= Capacity","valid_range":{"max":null,"min":0}},{"name":"prime_mover_type","data_type":"PrimeMovers","null_value":"PrimeMovers.OT","comment":"Prime mover technology according to EIA 923"},{"name":"power_factor","data_type":"Float64","null_value":"1.0","validation_action":"error","valid_range":{"max":1,"min":0}},{"name":"base_power","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Base power of the unit in MVA","valid_range":{"max":null,"min":0}},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"dynamic_injector","default":"nothing","data_type":"Union{Nothing, DynamicInjection}","exclude_setter":true,"null_value":"nothing","comment":"corresponding dynamic injection device"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Data Structure for fixed renewable generation technologies.","struct_name":"RenewableFix","supertype":"RenewableGen"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"status","data_type":"Bool","null_value":"false"},{"name":"bus","data_type":"ACBus","null_value":"ACBus(nothing)"},{"name":"active_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"warn","valid_range":"active_power_limits"},{"name":"reactive_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"warn","valid_range":"reactive_power_limits"},{"name":"rating","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Thermal limited MVA Power Output of the unit. <= Capacity","valid_range":{"max":null,"min":0}},{"name":"active_power_limits","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)","validation_action":"warn","valid_range":{"max":null,"min":0}},{"name":"reactive_power_limits","needs_conversion":true,"data_type":"Union{Nothing, MinMax}","null_value":"nothing"},{"name":"ramp_limits","needs_conversion":true,"data_type":"Union{Nothing, UpDown}","null_value":"nothing","validation_action":"error","comment":"ramp up and ramp down limits in MW (in component base per unit) per minute","valid_range":{"max":null,"min":0}},{"name":"operation_cost","data_type":"OperationalCost","null_value":"ThreePartCost(nothing)"},{"name":"base_power","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Base power of the unit in MVA","valid_range":{"max":null,"min":0}},{"name":"time_limits","default":"nothing","data_type":"Union{Nothing, UpDown}","null_value":"nothing","validation_action":"error","comment":"Minimum up and Minimum down time limits in hours","valid_range":{"max":null,"min":0}},{"name":"must_run","default":"false","data_type":"Bool","null_value":"false"},{"name":"prime_mover_type","default":"PrimeMovers.OT","data_type":"PrimeMovers","null_value":"PrimeMovers.OT","comment":"Prime mover technology according to EIA 923"},{"name":"fuel","default":"ThermalFuels.OTHER","data_type":"ThermalFuels","null_value":"ThermalFuels.OTHER","comment":"Prime mover fuel according to EIA 923"},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"time_at_status","default":"INFINITE_TIME","data_type":"Float64","null_value":"INFINITE_TIME"},{"name":"dynamic_injector","default":"nothing","data_type":"Union{Nothing, DynamicInjection}","exclude_setter":true,"null_value":"nothing","comment":"corresponding dynamic injection device"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Data Structure for thermal generation technologies.","struct_name":"ThermalStandard","supertype":"ThermalGen"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"status","data_type":"Bool","null_value":"false"},{"name":"bus","data_type":"ACBus","null_value":"ACBus(nothing)"},{"name":"active_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"warn","valid_range":"active_power_limits"},{"name":"reactive_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"warn","valid_range":"reactive_power_limits"},{"name":"rating","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Thermal limited MVA Power Output of the unit. <= Capacity","valid_range":{"max":null,"min":0}},{"name":"prime_mover_type","data_type":"PrimeMovers","null_value":"PrimeMovers.OT","comment":"Prime mover technology according to EIA 923"},{"name":"fuel","data_type":"ThermalFuels","null_value":"ThermalFuels.OTHER","comment":"Prime mover fuel according to EIA 923"},{"name":"active_power_limits","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)"},{"name":"reactive_power_limits","needs_conversion":true,"data_type":"Union{Nothing, MinMax}","null_value":"nothing"},{"name":"ramp_limits","needs_conversion":true,"data_type":"Union{Nothing, UpDown}","null_value":"nothing","validation_action":"error","valid_range":{"max":null,"min":0}},{"name":"power_trajectory","needs_conversion":true,"data_type":"Union{Nothing, StartUpShutDown}","null_value":"nothing","validation_action":"error","comment":"Power trajectory the unit will take during the start-up and shut-down ramp process","valid_range":{"max":null,"min":0}},{"name":"time_limits","data_type":"Union{Nothing, UpDown}","null_value":"nothing","validation_action":"error","comment":"Minimum up and Minimum down time limits in hours","valid_range":{"max":null,"min":0}},{"name":"start_time_limits","data_type":"Union{Nothing, NamedTuple{(:hot, :warm, :cold), Tuple{Float64, Float64, Float64}}}","null_value":"nothing","comment":" Time limits for start-up based on turbine temperature in hours"},{"name":"start_types","data_type":"Int","null_value":"1","validation_action":"error","comment":" Number of start-up based on turbine temperature","valid_range":{"max":3,"min":1}},{"name":"operation_cost","data_type":"OperationalCost","null_value":"MultiStartCost(nothing)"},{"name":"base_power","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Base power of the unit in MVA","valid_range":{"max":null,"min":0}},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"time_at_status","default":"INFINITE_TIME","data_type":"Float64","null_value":"INFINITE_TIME"},{"name":"must_run","default":"false","data_type":"Bool","null_value":"false"},{"name":"dynamic_injector","default":"nothing","data_type":"Union{Nothing, DynamicInjection}","exclude_setter":true,"null_value":"nothing","comment":"corresponding dynamic injection device"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Data Structure for thermal generation technologies.","struct_name":"ThermalMultiStart","supertype":"ThermalGen"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"bus","data_type":"ACBus","null_value":"ACBus(nothing)"},{"name":"prime_mover_type","data_type":"PrimeMovers","null_value":"PrimeMovers.BA","comment":"Prime mover technology according to EIA 923"},{"name":"initial_energy","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"State of Charge of the Battery p.u.-hr","valid_range":{"max":null,"min":0}},{"name":"state_of_charge_limits","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)","validation_action":"error","comment":"Maximum and Minimum storage capacity in p.u.-hr","valid_range":{"max":null,"min":0}},{"name":"rating","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"active_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"input_active_power_limits","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)","validation_action":"error","valid_range":{"max":null,"min":0}},{"name":"output_active_power_limits","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)","validation_action":"error","valid_range":{"max":null,"min":0}},{"name":"efficiency","data_type":"NamedTuple{(:in, :out), Tuple{Float64, Float64}}","null_value":"(in=0.0, out=0.0)","validation_action":"warn","valid_range":{"max":1,"min":0}},{"name":"reactive_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"warn","valid_range":"reactive_power_limits"},{"name":"reactive_power_limits","needs_conversion":true,"data_type":"Union{Nothing, MinMax}","null_value":"(min=0.0, max=0.0)"},{"name":"base_power","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Base power of the unit in MVA","valid_range":{"max":null,"min":0}},{"name":"operation_cost","default":"StorageManagementCost()","data_type":"Union{StorageManagementCost, MarketBidCost}","null_value":"StorageManagementCost()"},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"dynamic_injector","default":"nothing","data_type":"Union{Nothing, DynamicInjection}","exclude_setter":true,"null_value":"nothing","comment":"corresponding dynamic injection device"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Data structure for a generic battery","struct_name":"GenericBattery","supertype":"Storage"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"bus","data_type":"ACBus","null_value":"ACBus(nothing)"},{"name":"prime_mover_type","data_type":"PrimeMovers","null_value":"PrimeMovers.BA","comment":"Prime mover technology according to EIA 923"},{"name":"initial_energy","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"State of Charge of the Battery p.u.-hr","valid_range":{"max":null,"min":0}},{"name":"state_of_charge_limits","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)","validation_action":"error","comment":"Maximum and Minimum storage capacity in p.u.-hr","valid_range":{"max":null,"min":0}},{"name":"rating","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"active_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0"},{"name":"input_active_power_limits","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)","validation_action":"error","valid_range":{"max":null,"min":0}},{"name":"output_active_power_limits","needs_conversion":true,"data_type":"MinMax","null_value":"(min=0.0, max=0.0)","validation_action":"error","valid_range":{"max":null,"min":0}},{"name":"efficiency","data_type":"NamedTuple{(:in, :out), Tuple{Float64, Float64}}","null_value":"(in=0.0, out=0.0)","validation_action":"warn","valid_range":{"max":1,"min":0}},{"name":"reactive_power","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"warn","valid_range":"reactive_power_limits"},{"name":"reactive_power_limits","needs_conversion":true,"data_type":"Union{Nothing, MinMax}","null_value":"(min=0.0, max=0.0)"},{"name":"base_power","data_type":"Float64","null_value":"0.0","validation_action":"warn","comment":"Base power of the unit in MVA","valid_range":{"max":null,"min":0}},{"name":"operation_cost","default":"Union{StorageManagementCost, MarketBidCost}","data_type":"StorageManagementCost","null_value":"StorageManagementCost()"},{"name":"storage_target","default":"0.0","data_type":"Float64","null_value":"0.0","comment":"Storage target at the end of simulation as ratio of storage capacity."},{"name":"cycle_limits","default":"1e4","data_type":"Int","null_value":"0","comment":"Storage Maximum number of cycles per year"},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"dynamic_injector","default":"nothing","data_type":"Union{Nothing, DynamicInjection}","exclude_setter":true,"null_value":"nothing","comment":"corresponding dynamic injection device"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Data structure for a battery compatible with energy management formulations.","struct_name":"BatteryEMS","supertype":"Storage"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"time_frame","data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"the saturation time_frame in minutes to provide reserve contribution","valid_range":{"max":null,"min":0}},{"name":"requirement","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"the static value of required reserves in system p.u.","valid_range":{"max":null,"min":0}},{"name":"sustained_time","default":"3600.0","data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"the time in secounds reserve contribution must sustained at a specified level","valid_range":{"max":null,"min":0}},{"name":"max_output_fraction","default":"1.0","data_type":"Float64","null_value":"1.0","validation_action":"error","comment":"the maximum fraction of the device's output that can be assigned to the service","valid_range":{"max":1,"min":0}},{"name":"max_participation_factor","default":"1.0","data_type":"Float64","null_value":"1.0","validation_action":"error","comment":"the maximum limit of reserve contribution per device","valid_range":{"max":1,"min":0}},{"name":"deployed_fraction","default":"0.0","data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Fraction of ancillary services participation deployed from the assignment","valid_range":{"max":1,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Data Structure for a proportional reserve product for system simulations.","parametric":"ReserveDirection","struct_name":"StaticReserve","supertype":"Reserve{T}"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"time_frame","data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"the saturation time_frame in minutes to provide reserve contribution","valid_range":{"max":null,"min":0}},{"name":"requirement","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"the static value of required reserves in system p.u.","valid_range":{"max":null,"min":0}},{"name":"sustained_time","default":"3600.0","data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"the time in secounds reserve contribution must sustained at a specified level","valid_range":{"max":null,"min":0}},{"name":"max_output_fraction","default":"1.0","data_type":"Float64","null_value":"1.0","validation_action":"error","comment":"the maximum fraction of the device's output that can be assigned to the service","valid_range":{"max":1,"min":0}},{"name":"max_participation_factor","default":"1.0","data_type":"Float64","null_value":"1.0","validation_action":"error","comment":"the maximum limit of reserve contribution per device","valid_range":{"max":1,"min":0}},{"name":"deployed_fraction","default":"0.0","data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Fraction of ancillary services participation deployed from the assignment","valid_range":{"max":1,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Data Structure for a non-spinning reserve product for system simulations.","struct_name":"StaticReserveNonSpinning","supertype":"ReserveNonSpinning"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"requirement","needs_conversion":true,"data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"the static value of required reserves in system p.u.","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"contributing_services","default":"Vector{Service}()","data_type":"Vector{Service}","exclude_setter":true,"null_value":"Vector{Service}()","comment":"Services that contribute for this requirement constraint"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Data Structure for a group reserve product for system simulations.","parametric":"ReserveDirection","struct_name":"StaticReserveGroup","supertype":"Service"},{"fields":[{"name":"variable","data_type":"Union{Nothing, IS.TimeSeriesKey}","null_value":"nothing","comment":"Variable Cost TimeSeriesKey"},{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"time_frame","data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"the saturation time_frame in minutes to provide reserve contribution","valid_range":{"max":null,"min":0}},{"name":"sustained_time","default":"3600.0","data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"the time in secounds reserve contribution must sustained at a specified level","valid_range":{"max":null,"min":0}},{"name":"max_participation_factor","default":"1.0","data_type":"Float64","null_value":"1.0","validation_action":"error","comment":"the maximum limit of reserve contribution per device","valid_range":{"max":1,"min":0}},{"name":"deployed_fraction","default":"0.0","data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Fraction of ancillary services participation deployed from the assignment","valid_range":{"max":1,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Data Structure for a operating reserve with demand curve product for system simulations.","parametric":"ReserveDirection","struct_name":"ReserveDemandCurve","supertype":"Reserve{T}"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"time_frame","data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"the saturation time_frame in minutes to provide reserve contribution","valid_range":{"max":null,"min":0}},{"name":"requirement","data_type":"Float64","null_value":"0.0","comment":"the required quantity of the product should be scaled by a TimeSeriesData"},{"name":"sustained_time","default":"3600.0","data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"the time in secounds reserve contribution must sustained at a specified level","valid_range":{"max":null,"min":0}},{"name":"max_output_fraction","default":"1.0","data_type":"Float64","null_value":"1.0","validation_action":"error","comment":"the maximum fraction of the device's output that can be assigned to the service","valid_range":{"max":1,"min":0}},{"name":"max_participation_factor","default":"1.0","data_type":"Float64","null_value":"1.0","validation_action":"error","comment":"the maximum limit of reserve contribution per device","valid_range":{"max":1,"min":0}},{"name":"deployed_fraction","default":"0.0","data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Fraction of ancillary services participation deployed from the assignment","valid_range":{"max":1,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Data Structure for the procurement products for system simulations.","parametric":"ReserveDirection","struct_name":"VariableReserve","supertype":"Reserve{T}"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"time_frame","data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"the saturation time_frame in minutes to provide reserve contribution","valid_range":{"max":null,"min":0}},{"name":"requirement","needs_conversion":true,"data_type":"Float64","null_value":"0.0","comment":"the required quantity of the product should be scaled by a TimeSeriesData"},{"name":"sustained_time","default":"14400.0","data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"the time in secounds reserve contribution must sustained at a specified level","valid_range":{"max":null,"min":0}},{"name":"max_output_fraction","default":"1.0","data_type":"Float64","null_value":"1.0","validation_action":"error","comment":"the maximum fraction of the device's output that can be assigned to the service","valid_range":{"max":1,"min":0}},{"name":"max_participation_factor","default":"1.0","data_type":"Float64","null_value":"1.0","validation_action":"error","comment":"the maximum limit of reserve contribution per device","valid_range":{"max":1,"min":0}},{"name":"deployed_fraction","default":"0.0","data_type":"Float64","null_value":"0.0","validation_action":"error","comment":"Fraction of ancillary services participation deployed from the assignment","valid_range":{"max":1,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Data Structure for the procurement products for system simulations.","struct_name":"VariableReserveNonSpinning","supertype":"ReserveNonSpinning"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"bias","data_type":"Float64","null_value":"0.0"},{"name":"K_p","data_type":"Float64","null_value":"0.0","comment":"PID Proportional Constant"},{"name":"K_i","data_type":"Float64","null_value":"0.0","comment":"PID Integral Constant"},{"name":"K_d","data_type":"Float64","null_value":"0.0","comment":"PID Derrivative Constant"},{"name":"delta_t","data_type":"Float64","null_value":"0.0","comment":"PID Discretization period [Seconds]"},{"name":"area","default":"nothing","data_type":"Union{Nothing, Area}","null_value":"Area(nothing)","comment":"the area controlled by the AGC"},{"name":"initial_ace","default":"0.0","data_type":"Float64","null_value":"0.0","comment":"PID Discretization period [Seconds]"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"struct_name":"AGC","supertype":"Service"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"requirement","data_type":"Float64","null_value":"0.0"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"time_series_container","default":"InfrastructureSystems.TimeSeriesContainer()","data_type":"InfrastructureSystems.TimeSeriesContainer","null_value":"InfrastructureSystems.TimeSeriesContainer()","comment":"internal time_series storage"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"struct_name":"Transfer","supertype":"Service"},{"fields":[{"name":"Vf","data_type":"Float64","null_value":0,"comment":"Fixed voltage field applied to the rotor winding","valid_range":{"max":null,"min":0}},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"Fixed AVR has no states","internal_default":"Vector{Symbol}()"},{"name":"n_states","data_type":"Int","exclude_setter":true,"null_value":0,"comment":"Fixed AVR has no states","internal_default":0},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"Fixed AVR has no states","internal_default":"Vector{StateTypes}()"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of a AVR that returns a fixed voltage to the rotor winding","struct_name":"AVRFixed","supertype":"AVR"},{"fields":[{"name":"Kv","data_type":"Float64","null_value":0,"comment":"Proportional Gain","valid_range":{"max":null,"min":0}},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tVf: field voltage","internal_default":"[:Vf]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"Fixed AVR has 1 states","internal_default":1},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"Simple AVR has 1 differential states","internal_default":"[StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of a simple proportional AVR in the derivative of EMF\ni.e. an integrator controller on EMF","struct_name":"AVRSimple","supertype":"AVR"},{"fields":[{"name":"Ta_Tb","data_type":"Float64","null_value":0,"comment":"Ratio of lead and lag time constants","valid_range":{"max":null,"min":0}},{"name":"Tb","data_type":"Float64","null_value":0,"comment":"Lag time constant","valid_range":{"max":null,"min":"eps()"}},{"name":"K","data_type":"Float64","null_value":0,"comment":"Gain","valid_range":{"max":null,"min":0}},{"name":"Te","data_type":"Float64","null_value":0,"comment":"Field circuit time constant in s","valid_range":{"max":null,"min":0}},{"name":"V_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Field voltage limits"},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\tVf: Voltage field,\tVr: Lead-lag state","internal_default":"[:Vf, :Vr]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"SEXS has 2 states","internal_default":2},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"SEXS has 2 differential states","internal_default":"[StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of Simplified Excitation System Model - SEXS in PSSE","struct_name":"SEXS","supertype":"AVR"},{"fields":[{"name":"Tr","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Voltage Measurement Time Constant in s","valid_range":{"max":0.5,"min":0}},{"name":"Ka","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Amplifier Gain","valid_range":{"max":500,"min":10}},{"name":"Ta","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Amplifier Time Constant in s","valid_range":{"max":1,"min":0}},{"name":"Tb","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator input Time Constant in s","valid_range":{"max":null,"min":0}},{"name":"Tc","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator input Time Constant in s","valid_range":{"max":null,"min":0}},{"name":"Vr_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Voltage regulator limits (regulator output) (Vi_min, Vi_max)"},{"name":"Ke","data_type":"Float64","null_value":0,"comment":"Exciter constant related to self-excited field","valid_range":{"max":null,"min":0}},{"name":"Te","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Exciter time constant, integration rate associated with exciter control","valid_range":{"max":1,"min":"eps()"}},{"name":"Kf","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Excitation control system stabilizer gain","valid_range":{"max":0.3,"min":"eps()"}},{"name":"Tf","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Excitation control system stabilizer time constant","valid_range":{"max":null,"min":"eps()"}},{"name":"switch","data_type":"Int","null_value":0,"validation_action":"error","comment":"Switch","valid_range":{"max":1,"min":0}},{"name":"E_sat","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter output voltage for saturation factor: (E1, E2)"},{"name":"Se","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter saturation factor at exciter output voltage: (Se(E1), Se(E2))"},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"saturation_coeffs","default":"PowerSystems.get_avr_saturation(E_sat, Se)","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Coefficients (A,B) of the function: Se(V) = B(V - A)^2/V"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tVt: Terminal Voltage,\n\tVr1: input lead lag,\n\tVr2: Regulator Output,\n\tVf: Exciter Output, \n\tVr3: Rate feedback integrator","internal_default":"[:Vt, :Vr1, :Vr2, :Vf, :Vr3]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"The ESDC1A has 5 states","internal_default":5},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"ESDC1A has 5 differential states","internal_default":"[StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Self-excited shunt fields with the voltage regulator operating in a mode commonly termed buck-boost. \nParameters of IEEE Std 421.5 Type DC1A Excitacion System. This model corresponds to ESDC1A in PSSE and PSLF","struct_name":"ESDC1A","supertype":"AVR"},{"fields":[{"name":"Tr","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Voltage Measurement Time Constant in s","valid_range":{"max":0.5,"min":0}},{"name":"Ka","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Amplifier Gain","valid_range":{"max":500,"min":10}},{"name":"Ta","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Amplifier Time Constant in s","valid_range":{"max":1,"min":0}},{"name":"Tb","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator input Time Constant in s","valid_range":{"max":null,"min":0}},{"name":"Tc","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator input Time Constant in s","valid_range":{"max":null,"min":0}},{"name":"Vr_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Voltage regulator limits (regulator output) (Vi_min, Vi_max)"},{"name":"Ke","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Exciter constant related to self-excited field","valid_range":{"max":1,"min":-1}},{"name":"Te","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Exciter time constant, integration rate associated with exciter control","valid_range":{"max":2,"min":"eps()"}},{"name":"Kf","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Excitation control system stabilizer gain","valid_range":{"max":0.3,"min":0}},{"name":"Tf","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Excitation control system stabilizer time constant. Appropiate Data: 5.0 <= Tf/Kf <= 15.0","valid_range":{"max":1.5,"min":"eps()"}},{"name":"switch","data_type":"Int","null_value":0,"validation_action":"error","comment":"Switch","valid_range":{"max":1,"min":0}},{"name":"E_sat","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter output voltage for saturation factor: (E1, E2)"},{"name":"Se","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter saturation factor at exciter output voltage: (Se(E1), Se(E2))"},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"saturation_coeffs","default":"PowerSystems.get_avr_saturation(E_sat, Se)","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Coefficients (A,B) of the function: Se(V) = B(V - A)^2/V"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tVt: Terminal Voltage,\n\tVr1: input lead lag,\n\tVr2: Regulator Output,\n\tVf: Exciter Output, \n\tVr3: Rate feedback integrator","internal_default":"[:Vt, :Vr1, :Vr2, :Vf, :Vr3]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"The ESDC2A has 5 states","internal_default":5},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"ESDC2A has 5 differential states","internal_default":"[StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Is used to represent field-controlled dc commutator exciters with continuously acting voltage regulators having power supplies derived from the generator or auxiliaries bus.\nParameters of IEEE Std 421.5 Type DC2A Excitacion System. This model corresponds to ESDC2A in PSSE and PSLF","struct_name":"ESDC2A","supertype":"AVR"},{"fields":[{"name":"Tr","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Voltage Measurement Time Constant in s","valid_range":{"max":0.5,"min":0}},{"name":"Ka","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Amplifier Gain","valid_range":{"max":500,"min":10}},{"name":"Ta","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Amplifier Time Constant in s","valid_range":{"max":1,"min":0}},{"name":"Vr_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Voltage regulator limits (regulator output) (Vi_min, Vi_max)"},{"name":"Ke","data_type":"Float64","null_value":0,"comment":"Exciter constant related to self-excited field","valid_range":{"max":1,"min":-1}},{"name":"Te","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Exciter time constant, integration rate associated with exciter control","valid_range":{"max":1,"min":"eps()"}},{"name":"Kf","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Excitation control system stabilizer gain","valid_range":{"max":0.3,"min":"eps()"}},{"name":"Tf","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Excitation control system stabilizer time constant. Appropiate Data: 5 <= Tf/Kf <= 15","valid_range":{"max":null,"min":"eps()"}},{"name":"switch","data_type":"Int","null_value":0,"validation_action":"error","comment":"Switch","valid_range":{"max":1,"min":0}},{"name":"E_sat","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter output voltage for saturation factor: (E1, E2)"},{"name":"Se","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter saturation factor at exciter output voltage: (Se(E1), Se(E2))"},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"saturation_coeffs","default":"PowerSystems.get_avr_saturation(E_sat, Se)","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Coefficients (A,B) of the function: Se(V) = B(V - A)^2/V"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tVt: Terminal Voltage,\n\tVr: Regulator Output,\n\tVf: Exciter Output, \n\tVr3: Rate feedback integrator","internal_default":"[:Vt, :Vr1, :Vf, :Vr2]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"The IEEET1 has 4 states","internal_default":4},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"IEEET1 I has 4 differential states","internal_default":"[StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"1968 IEEE type 1 excitation system model","struct_name":"IEEET1","supertype":"AVR"},{"fields":[{"name":"Ka","data_type":"Float64","null_value":0,"comment":"Amplifier Gain","valid_range":{"max":null,"min":0}},{"name":"Ke","data_type":"Float64","null_value":0,"comment":"Field circuit integral deviation","valid_range":{"max":null,"min":0}},{"name":"Kf","data_type":"Float64","null_value":0,"comment":"Stabilizer Gain in s * pu/pu","valid_range":{"max":null,"min":0}},{"name":"Ta","data_type":"Float64","null_value":0,"comment":"Amplifier Time Constant in s","valid_range":{"max":null,"min":0}},{"name":"Te","data_type":"Float64","null_value":0,"comment":"Field Circuit Time Constant in s","valid_range":{"max":null,"min":0}},{"name":"Tf","data_type":"Float64","null_value":0,"comment":"Stabilizer Time Constant in s","valid_range":{"max":null,"min":0}},{"name":"Tr","data_type":"Float64","null_value":0,"comment":"Voltage Measurement Time Constant in s","valid_range":{"max":null,"min":0}},{"name":"Va_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limits for pi controler `(Va_min, Va_max)`"},{"name":"Ae","data_type":"Float64","null_value":0,"comment":"1st ceiling coefficient","valid_range":{"max":null,"min":0}},{"name":"Be","data_type":"Float64","null_value":0,"comment":"2nd ceiling coefficient","valid_range":{"max":null,"min":0}},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tVf: Voltage field,\n\tVr1: Amplifier State,\n\tVr2: Stabilizing Feedback State,\n\tVm: Measured voltage","internal_default":"[:Vf, :Vr1, :Vr2, :Vm]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"The AVR Type I has 4 states","internal_default":4},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"AVR Type I has 4 differential states","internal_default":"[StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of an Automatic Voltage Regulator Type I - Resembles IEEE Type DC1","struct_name":"AVRTypeI","supertype":"AVR"},{"fields":[{"name":"K0","data_type":"Float64","null_value":0,"comment":"Regulator Gain","valid_range":{"max":null,"min":0}},{"name":"T1","data_type":"Float64","null_value":0,"comment":"First Pole in s","valid_range":{"max":null,"min":0}},{"name":"T2","data_type":"Float64","null_value":0,"comment":"First zero in s","valid_range":{"max":null,"min":0}},{"name":"T3","data_type":"Float64","null_value":0,"comment":"First Pole in s","valid_range":{"max":null,"min":0}},{"name":"T4","data_type":"Float64","null_value":0,"comment":"First zero in s","valid_range":{"max":null,"min":0}},{"name":"Te","data_type":"Float64","null_value":0,"comment":"Field Circuit Time Constant in s","valid_range":{"max":null,"min":0}},{"name":"Tr","data_type":"Float64","null_value":0,"comment":"Voltage Measurement Time Constant in s","valid_range":{"max":null,"min":0}},{"name":"Va_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limits for pi controler `(Va_min, Va_max)`"},{"name":"Ae","data_type":"Float64","null_value":0,"comment":"1st ceiling coefficient","valid_range":{"max":null,"min":0}},{"name":"Be","data_type":"Float64","null_value":0,"comment":"2nd ceiling coefficient","valid_range":{"max":null,"min":0}},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tVf: Voltage field,\n\tVr1: First Lead-Lag state,\n\tVr2: Second lead-lag state,\n\tVm: Measured voltage","internal_default":"[:Vf, :Vr1, :Vr2, :Vm]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"AVR Type II has 4 states","internal_default":4},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"AVR Type II has 4 differential states","internal_default":"[StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of an Automatic Voltage Regulator Type II - Typical static exciter model","struct_name":"AVRTypeII","supertype":"AVR"},{"fields":[{"name":"Ta_Tb","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Lead input constant ratio","valid_range":{"max":0.3,"min":0.05}},{"name":"Tb","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Lag input constant in s","valid_range":{"max":20,"min":5}},{"name":"K","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator Gain","valid_range":{"max":100,"min":20}},{"name":"Te","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator Time Constant","valid_range":{"max":1,"min":0}},{"name":"Efd_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Field Voltage regulator limits (regulator output) (Efd_min, Efd_max)"},{"name":"switch","data_type":"Int","null_value":0,"validation_action":"error","comment":"Switch","valid_range":{"max":1,"min":0}},{"name":"rc_rfd","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Field current capability. Set = 0 for negative current capability. Typical value 10","valid_range":{"max":10,"min":0}},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tVr1: First integrator,\n\tVr2: Second integrator","internal_default":"[:Vr1, :Vr2]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"SCRX has 2 states","internal_default":2},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"SCRX has 2 differential states","internal_default":"[StateTypes.Differential, StateTypes.Hybrid]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"This exciter is based on an IEEE type SCRX solid state exciter. The output field voltage is varied by a control system to maintain the system voltage at Vref. Please note that this exciter model has no initialization capabilities - this means that it will respond to whatever inputs it receives regardless of the state of the machine model.","struct_name":"SCRX","supertype":"AVR"},{"fields":[{"name":"Tr","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator input filter time constant in s","valid_range":{"max":0.5,"min":0}},{"name":"Tb","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator denominator (lag) time constant in s","valid_range":{"max":20,"min":0}},{"name":"Tc","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator numerator (lead) time constant in s","valid_range":{"max":20,"min":0}},{"name":"Ka","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator output gain","valid_range":{"max":1000,"min":0}},{"name":"Ta","data_type":"Float64","null_value":0,"comment":"Regulator output time constant in s","valid_range":{"max":10,"min":0}},{"name":"Va_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limits for regulator output `(Va_min, Va_max)`"},{"name":"Te","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Exciter field time constant in s","valid_range":{"max":2,"min":"eps()"}},{"name":"Kf","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Rate feedback excitation system stabilizer gain","valid_range":{"max":0.3,"min":0}},{"name":"Tf","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Rate feedback time constant","valid_range":{"max":1.5,"min":"eps()"}},{"name":"Kc","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Rectifier loading factor proportional to commutating reactance","valid_range":{"max":1,"min":0}},{"name":"Kd","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Demagnetizing factor, function of exciter alternator reactances","valid_range":{"max":1,"min":0}},{"name":"Ke","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Exciter field proportional constant","valid_range":{"max":1,"min":0}},{"name":"E_sat","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter output voltage for saturation factor: (E1, E2)"},{"name":"Se","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter saturation factor at exciter output voltage: (Se(E1), Se(E2))"},{"name":"Vr_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limits for exciter field voltage: `(Vr_min, Vr_max)`"},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"saturation_coeffs","default":"PowerSystems.get_avr_saturation(E_sat, Se)","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Coefficients (A,B) of the function: Se(x) = B(x - A)^2/x"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tVm: Sensed terminal voltage,\n\tVr1: Lead-lag state,\n\tVr2: Regulator output state,\n\tVe: Integrator output state,\n\tVr3: Feedback output state","internal_default":"[:Vm, :Vr1, :Vr2, :Ve, :Vr3]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"ESAC1A has 5 states","internal_default":5},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"ESAC1A has 5 states","internal_default":"[StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"This excitation systems consists of an alternator main exciter feeding its output via non-controlled rectifiers.\nThe exciter does not employ self-excitation, and the voltage regulator power is taken from a source that is not affected by external transients.\nParameters of IEEE Std 421.5 Type AC1A Excitacion System. This model corresponds to ESAC1A in PSSE and PSLF","struct_name":"ESAC1A","supertype":"AVR"},{"fields":[{"name":"Tr","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator input filter time constant in s","valid_range":{"max":0.5,"min":0}},{"name":"Tb","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator denominator (lag) time constant in s","valid_range":{"max":20,"min":0}},{"name":"Tc","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator numerator (lead) time constant in s","valid_range":{"max":20,"min":0}},{"name":"Ka","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator output gain","valid_range":{"max":1000,"min":0}},{"name":"Ta","data_type":"Float64","null_value":0,"comment":"Regulator output time constant in s","valid_range":{"max":10,"min":0}},{"name":"Va_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limits for regulator output `(Va_min, Va_max)`"},{"name":"Te","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Exciter field time constant in s","valid_range":{"max":2,"min":"eps()"}},{"name":"Kf","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Rate feedback excitation system stabilizer gain","valid_range":{"max":0.3,"min":0}},{"name":"Tf","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Rate feedback time constant","valid_range":{"max":1.5,"min":"eps()"}},{"name":"Kc","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Rectifier loading factor proportional to commutating reactance","valid_range":{"max":1,"min":0}},{"name":"Kd","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Demagnetizing factor, function of exciter alternator reactances","valid_range":{"max":1,"min":0}},{"name":"Ke","data_type":"Float64","null_value":0,"comment":"Exciter field proportional constant","valid_range":{"max":1,"min":0}},{"name":"E_sat","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter output voltage for saturation factor: (E1, E2)"},{"name":"Se","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter saturation factor at exciter output voltage: (Se(E1), Se(E2))"},{"name":"Vr_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limits for exciter field voltage: `(Vr_min, Vr_max)`"},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"saturation_coeffs","default":"PowerSystems.get_avr_saturation(E_sat, Se)","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Coefficients (A,B) of the function: Se(x) = B(x - A)^2/x"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tVm: Sensed terminal voltage,\n\tVr1: Lead-lag state,\n\tVr2: Regulator output state,\n\tVe: Integrator output state,\n\tVr3: Feedback output state","internal_default":"[:Vm, :Vr1, :Vr2, :Ve, :Vr3]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"EXAC1A has 5 states","internal_default":5},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"EXAC1A has 5 states","internal_default":"[StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Modified ESAC1A. This excitation systems consists of an alternator main exciter feeding its output via non-controlled rectifiers.\nThe exciter does not employ self-excitation, and the voltage regulator power is taken from a source that is not affected by external transients.\nParameters of IEEE Std 421.5 Type AC1A Excitacion System. EXAC1A in PSSE and PSLF","struct_name":"EXAC1A","supertype":"AVR"},{"fields":[{"name":"Tr","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator input filter time constant in s","valid_range":{"max":0.5,"min":0}},{"name":"Tb","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator denominator (lag) time constant in s","valid_range":{"max":20,"min":0}},{"name":"Tc","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator numerator (lead) time constant in s","valid_range":{"max":20,"min":0}},{"name":"Ka","data_type":"Float64","null_value":0,"comment":"Regulator output gain","valid_range":{"max":1000,"min":0}},{"name":"Ta","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator output time constant in s","valid_range":{"max":10,"min":0}},{"name":"Vr_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limits for regulator output `(Vr_min, Vr_max)`"},{"name":"Te","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Exciter field time constant in s","valid_range":{"max":2,"min":"eps()"}},{"name":"Kf","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Rate feedback excitation system stabilizer gain","valid_range":{"max":0.3,"min":0}},{"name":"Tf","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Rate feedback time constant","valid_range":{"max":1.5,"min":"eps()"}},{"name":"Kc","data_type":"Float64","null_value":0,"comment":"Rectifier loading factor proportional to commutating reactance","valid_range":{"max":1,"min":0}},{"name":"Kd","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Demagnetizing factor, function of exciter alternator reactances","valid_range":{"max":1,"min":0}},{"name":"Ke","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Exciter field proportional constant","valid_range":{"max":1,"min":0}},{"name":"E_sat","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter output voltage for saturation factor: (E1, E2)"},{"name":"Se","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter saturation factor at exciter output voltage: (Se(E1), Se(E2))"},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"saturation_coeffs","default":"PowerSystems.get_avr_saturation(E_sat, Se)","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Coefficients (A,B) of the function: Se(V) = B(V - A)^2/V"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tVm: Sensed terminal voltage,\n\tVr1: Lead-lag state,\n\tVr2: Regulator output state,\n\tVe: Integrator output state,\n\tVr3: Feedback output state","internal_default":"[:Vm, :Vr1, :Vr2, :Ve, :Vr3]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"EXAC1 has 5 states","internal_default":5},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"EXAC1 has 5 states","internal_default":"[StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Modified ESAC1A. This excitation systems consists of an alternator main exciter feeding its output via non-controlled rectifiers.\nThe exciter does not employ self-excitation, and the voltage regulator power is taken from a source that is not affected by external transients.\nParameters of IEEE Std 421.5 Type AC1A. EXAC1 in PSSE and PSLF","struct_name":"EXAC1","supertype":"AVR"},{"fields":[{"name":"Tr","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator input filter time constant in s","valid_range":{"max":0.5,"min":0}},{"name":"Tb","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator denominator (lag) time constant in s","valid_range":{"max":20,"min":0}},{"name":"Tc","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator numerator (lead) time constant in s","valid_range":{"max":20,"min":0}},{"name":"Ka","data_type":"Float64","null_value":0,"comment":"Regulator output gain","valid_range":{"max":1000,"min":0}},{"name":"Ta","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator output time constant in s","valid_range":{"max":10,"min":0}},{"name":"Va_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limits for regulator output `(Va_min, Va_max)`"},{"name":"Kb","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Second Stage regulator gain","valid_range":{"max":500,"min":"eps()"}},{"name":"Vr_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limits for exciter field voltage `(Vr_min, Vr_max)`"},{"name":"Te","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Exciter field time constant","valid_range":{"max":2,"min":"eps()"}},{"name":"Kl","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Exciter field current limiter gain","valid_range":{"max":1.1,"min":0}},{"name":"Kh","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Exciter field current regulator feedback gain","valid_range":{"max":1.1,"min":0}},{"name":"Kf","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Rate feedback excitation system stabilizer gain","valid_range":{"max":0.3,"min":0}},{"name":"Tf","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Rate feedback time constant","valid_range":{"max":null,"min":"eps()"}},{"name":"Kc","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Rectifier loading factor proportional to commutating reactance","valid_range":{"max":1,"min":0}},{"name":"Kd","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Demagnetizing factor, function of exciter alternator reactances","valid_range":{"max":1,"min":0}},{"name":"Ke","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Exciter field proportional constant","valid_range":{"max":1,"min":0}},{"name":"V_lr","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Maximum exciter field current","valid_range":{"max":null,"min":0}},{"name":"E_sat","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter output voltage for saturation factor: (E1, E2)"},{"name":"Se","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter saturation factor at exciter output voltage: (Se(E1), Se(E2))"},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"saturation_coeffs","default":"PowerSystems.get_avr_saturation(E_sat, Se)","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Coefficients (A,B) of the function: Se(V) = B(V - A)^2/V"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tVm: Sensed terminal voltage,\n\tVr1: Lead-lag state,\n\tVr2: Regulator output state,\n\tVe: Integrator output state,\n\tVr3: Feedback output state","internal_default":"[:Vm, :Vr1, :Vr2, :Ve, :Vr3]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"EXAC2 has 5 states","internal_default":5},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"EXAC2 has 5 states","internal_default":"[StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Modified AC2. This excitation systems consists of an alternator main exciter feeding its output via non-controlled rectifiers.\nThe exciter does not employ self-excitation, and the voltage regulator power is taken from a source that is not affected by external transients.\nParameters of IEEE Std 421.5 Type AC2A Excitacion System. The alternator main exciter is used, feeding its output via non-controlled rectifiers. The Type AC2C model is similar to that of Type AC1C except for the inclusion of exciter time constant compensation and exciter field current limiting elements. EXAC2 in PSSE and PSLF.","struct_name":"EXAC2","supertype":"AVR"},{"fields":[{"name":"Tr","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator input filter time constant in s","valid_range":{"max":0.5,"min":0}},{"name":"Ka","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator output gain","valid_range":{"max":1000,"min":0}},{"name":"Ta","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator output lag time constant in s","valid_range":{"max":10,"min":0}},{"name":"Tk","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Voltage Regulator lead time constant","valid_range":{"max":10,"min":0}},{"name":"Tb","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator denominator (lag) time constant in s","valid_range":{"max":20,"min":0}},{"name":"Tc","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator numerator (lead) time constant in s","valid_range":{"max":20,"min":0}},{"name":"Va_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limits for regulator output `(Va_min, Va_max)`"},{"name":"Vr_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limits for exciter field voltage `(Vr_min, Vr_max)`"},{"name":"Te","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Exciter field time constant","valid_range":{"max":2,"min":"eps()"}},{"name":"VFE_lim","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Exciter field current limiter reference","valid_range":{"max":20,"min":-5}},{"name":"Kh","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Exciter field current regulator feedback gain","valid_range":{"max":100,"min":0}},{"name":"VH_max","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Exciter field current limiter maximum output","valid_range":{"max":100,"min":0}},{"name":"Th","data_type":"Float64","null_value":0,"comment":"Exciter field current limiter denominator (lag) time constant","valid_range":{"max":1,"min":0}},{"name":"Tj","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Exciter field current limiter numerator (lead) time constant","valid_range":{"max":1,"min":0}},{"name":"Kc","data_type":"Float64","null_value":0,"comment":"Rectifier loading factor proportional to commutating reactance","valid_range":{"max":1,"min":0}},{"name":"Kd","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Demagnetizing factor, function of exciter alternator reactances","valid_range":{"max":2,"min":0}},{"name":"Ke","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Exciter field proportional constant","valid_range":{"max":2,"min":0}},{"name":"E_sat","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter output voltage for saturation factor: (E1, E2)"},{"name":"Se","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter saturation factor at exciter output voltage: (Se(E1), Se(E2))"},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"saturation_coeffs","default":"PowerSystems.get_avr_saturation(E_sat, Se)","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Coefficients (A,B) of the function: Se(V) = B(V - A)^2/V"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tVm: Sensed terminal voltage,\n\tVr1: Lead-lag state,\n\tVr2: Regulator output state,\n\tVe: Integrator output state,\n\tVr3: Feedback output state","internal_default":"[:Vm, :Vr1, :Vr2, :Ve, :Vr3]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"ESAC6A has 5 states","internal_default":5},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"ESAC6A has 5 states","internal_default":"[StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Differential, StateTypes.Hybrid]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Modified AC6A. Used to represent field-controlled alternator-rectifier excitation systems with system-supplied electronic voltage regulators. \nParameters of IEEE Std 421.5 Type AC6A Excitacion System. ESAC6A in PSSE and PSLF.","struct_name":"ESAC6A","supertype":"AVR"},{"fields":[{"name":"UEL_flags","data_type":"Int","null_value":1,"validation_action":"warn","comment":"Code input for Underexcitization limiter (UEL) entry. Not supported.","valid_range":{"max":3,"min":1}},{"name":"PSS_flags","data_type":"Int","null_value":1,"comment":"Code input for Power System Stabilizer (PSS) or (VOS) entry.","valid_range":{"max":2,"min":1}},{"name":"Tr","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator input filter time constant in s","valid_range":{"max":0.1,"min":0}},{"name":"Vi_lim","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Voltage error limits (regulator input) (Vi_min, Vi_max)"},{"name":"Tc","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"First regulator denominator (lead) time constant in s","valid_range":{"max":10,"min":0}},{"name":"Tb","data_type":"Float64","null_value":0,"comment":"First regulator denominator (lag) time constant in s","valid_range":{"max":20,"min":0}},{"name":"Tc1","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Second regulator denominator (lead) time constant in s","valid_range":{"max":10,"min":0}},{"name":"Tb1","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Second regulator denominator (lead) time constant in s","valid_range":{"max":20,"min":0}},{"name":"Ka","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Voltage regulator gain","valid_range":{"max":1000,"min":50}},{"name":"Ta","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Voltage regulator time constant in s","valid_range":{"max":0.5,"min":0}},{"name":"Va_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limits for regulator output `(Va_min, Va_max)`"},{"name":"Vr_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limits for exciter output `(Vr_min, Vr_max)`"},{"name":"Kc","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Rectifier loading factor proportional to commutating reactance","valid_range":{"max":0.3,"min":0}},{"name":"Kf","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Rate feedback gain","valid_range":{"max":0.3,"min":0}},{"name":"Tf","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Rate feedback time constant in s","valid_range":{"max":1.5,"min":"eps()"}},{"name":"K_lr","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Exciter output current limiter gain","valid_range":{"max":5,"min":0}},{"name":"I_lr","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Exciter output current limit reference","valid_range":{"max":5,"min":0}},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tVm: Sensed terminal voltage,\n\tVr1: First Lead-lag state,\n\tVr2: Second lead-lag state,\n\tVa: Regulator output state,\n\tVr3: Feedback output state","internal_default":"[:Vm, :Vr1, :Vr2, :Va, :Vr3]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"ST1A has 5 states","internal_default":5},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"ST1A has 5 states","internal_default":"[StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"This excitation system supplies power through a transformer from the generator terminals and its regulated by a controlled rectifier (via thyristors).\nParameters of IEEE Std 421.5 Type ST1A Excitacion System. ESST1A in PSSE and PSLF","struct_name":"ESST1A","supertype":"AVR"},{"fields":[{"name":"Tr","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator input filter time constant in s","valid_range":{"max":0.5,"min":0}},{"name":"Ka","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Voltage regulator gain","valid_range":{"max":500,"min":1}},{"name":"Ta","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Voltage regulator time constant in s","valid_range":{"max":10,"min":0}},{"name":"Va_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limits for pi controler `(Vr_min, Vr_max)`"},{"name":"Ta_2","data_type":"Float64","null_value":0,"comment":"Voltage regulator time constant in s","valid_range":{"max":null,"min":0}},{"name":"Ta_3","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Voltage regulator time constant in s","valid_range":{"max":null,"min":0}},{"name":"Ta_4","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Voltage regulator time constant in s","valid_range":{"max":null,"min":0}},{"name":"Vr_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Voltage regulator limits (regulator output) (Vi_min, Vi_max)"},{"name":"Kf","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Rate feedback gain","valid_range":{"max":0.3,"min":0}},{"name":"Tf_1","validation_actions":"error","data_type":"Float64","null_value":0,"comment":"Rate Feedback time constant in s","valid_range":{"max":15,"min":"eps()"}},{"name":"Tf_2","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Rate Feedback time constant in s","valid_range":{"max":5,"min":0}},{"name":"Efd_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Field Voltage regulator limits (regulator output) (Efd_min, Efd_max)"},{"name":"Ke","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Exciter constant","valid_range":{"max":1,"min":0}},{"name":"Te","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Exciter time constant","valid_range":{"max":2,"min":0}},{"name":"E_sat","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter output voltage for saturation factor: (E1, E2)"},{"name":"Se","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Exciter saturation factor at exciter output voltage: (Se(E1), Se(E2))"},{"name":"Kp","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Potential source gain","valid_range":{"max":5,"min":0}},{"name":"Ki","data_type":"Float64","null_value":0,"comment":"current source gain","valid_range":{"max":1.1,"min":0}},{"name":"Kc","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Exciter regulation factor","valid_range":{"max":2,"min":0}},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"saturation_coeffs","default":"PowerSystems.get_avr_saturation(E_sat, Se)","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Coefficients (A,B) of the function: Se(V) = B(V - A)^2/V"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tVm: Sensed terminal voltage,\n\tVr1: First Lead-lag state,\n\tVr2: Second regulator lead-lag state,\n\tVr2: Third regulator lead-lag state \n\tVf: Exciter output \n\tVr3: First feedback integrator,\n\tVr4: second feedback integrator","internal_default":"[:Vm, :Vr1, :Vr2, :Vf, :Vr3, :Vr4]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"EXPIC1 has 6 states","internal_default":6},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"EXPIC has 6 states","internal_default":"[StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Differential, StateTypes.Hybrid]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Generic Proportional/Integral Excitation System","struct_name":"EXPIC1","supertype":"AVR"},{"fields":[{"name":"Tr","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator input filter time constant in s","valid_range":{"max":0.5,"min":0}},{"name":"K_pr","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator propotional gain","valid_range":{"max":75,"min":0}},{"name":"K_ir","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Regulator integral gain","valid_range":{"max":75,"min":0}},{"name":"Vr_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Voltage regulator limits (Vi_min, Vi_max)"},{"name":"Ta","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Voltage regulator time constant in s","valid_range":{"max":1,"min":0}},{"name":"K_pm","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Voltage regulator proportional gain output","valid_range":{"max":1.2,"min":0}},{"name":"K_im","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Voltage regulator integral gain output","valid_range":{"max":18,"min":0}},{"name":"Vm_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limits for inner loop output `(Vm_min, Vm_max)`"},{"name":"Kg","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Feedback gain constant of the inner loop field regulator","valid_range":{"max":1.1,"min":0}},{"name":"Kp","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Potential circuit (voltage) gain coefficient","valid_range":{"max":10,"min":0}},{"name":"Ki","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Compound circuit (current) gain coefficient","valid_range":{"max":1.1,"min":0}},{"name":"VB_max","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Maximum available exciter voltage","valid_range":{"max":20,"min":1}},{"name":"Kc","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Rectifier loading factor proportional to commutating reactance","valid_range":{"max":1,"min":0}},{"name":"Xl","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Reactance associated with potential source","valid_range":{"max":0.5,"min":0}},{"name":"θp","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Potential circuit phase angle (degrees)","valid_range":{"max":90,"min":-90}},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"θp_rad","default":"θp*π*inv(180)","data_type":"Float64","null_value":0,"comment":"Potential circuit phase angle (radians)"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tVm: Sensed terminal voltage,\n\tVt: Sensed Terminal Voltage,\n\tVr1: Regulator Integrator,\n\tVr2: Regulator Output,\n\tVm: Output integrator","internal_default":"[:Vt, :Vr1, :Vr2, :Vm]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"ST4B has 4 states","internal_default":4},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"ST4B has 4 states","internal_default":"[StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"In these excitation systems, voltage (and also current in compounded systems) is transformed to an appropriate level. Rectifiers, either controlled or non-controlled, provide the necessary direct current for the generator field.\nParameters of IEEE Std 421.5 Type ST4B Excitacion System. ESST4B in PSSE and PSLF","struct_name":"ESST4B","supertype":"AVR"},{"fields":[{"name":"Tr","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Voltage Measurement Time Constant in s","valid_range":{"max":null,"min":0}},{"name":"Vi_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Voltage input limits (Vi_min, Vi_max)"},{"name":"Tc","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Numerator lead-lag (lead) time constant in s","valid_range":{"max":null,"min":0}},{"name":"Tb","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Denominator lead-lag (lag) time constant in s","valid_range":{"max":null,"min":0}},{"name":"Ka","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Amplifier Gain","valid_range":{"max":null,"min":0}},{"name":"Ta","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Amplifier Time Constant in s","valid_range":{"max":null,"min":0}},{"name":"Vr_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Voltage regulator limits (regulator output) (Vr_min, Vr_max)"},{"name":"Kc","data_type":"Float64","null_value":0,"comment":"Current field constant limiter multiplier","valid_range":{"max":null,"min":0}},{"name":"Kf","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Excitation control system stabilizer gain","valid_range":{"max":0.3,"min":"eps()"}},{"name":"Tf","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Excitation control system stabilizer time constant","valid_range":{"max":null,"min":"eps()"}},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tVm: Sensed Terminal Voltage,\n\tVrll: Lead-Lag state,\n\tVr: Regulator Output, \n\tVfb: Feedback state","internal_default":"[:Vm, :Vrll, :Vr, :Vfb]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"The EXST1 has 4 states","internal_default":4},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"IEEE Type ST1 Excitation System (PTI version)","struct_name":"EXST1","supertype":"AVR"},{"fields":[{"name":"Iflim","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"OEL Field current limit","valid_range":{"max":null,"min":0}},{"name":"d","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"OEL parameter d","valid_range":{"max":null,"min":0}},{"name":"f","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"OEL parameter f","valid_range":{"max":null,"min":0}},{"name":"Spar","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"OEL parameter Spar","valid_range":{"max":null,"min":0}},{"name":"K1","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"OEL delay time constant","valid_range":{"max":null,"min":0}},{"name":"K2","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"OEL parameter K2","valid_range":{"max":null,"min":0}},{"name":"Oel_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Oel integrator limits (Oel_min, Oel_max)"},{"name":"G","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"AVR Exciter Gain","valid_range":{"max":null,"min":0}},{"name":"Ta","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Numerator lead-lag (lag) time constant in s","valid_range":{"max":null,"min":0}},{"name":"Tb","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Denominator lead-lag (lag) time constant in s","valid_range":{"max":null,"min":0}},{"name":"Te","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Exciter Time Constant in s","valid_range":{"max":null,"min":0}},{"name":"E_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Voltage regulator limits (regulator output) (E_min, E_max)"},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tVll: Lead-lag internal state,\n\tVex: Exciter Output, \n\toel: OEL integrator state","internal_default":"[:Vll, :Vex, :oel]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"The EX4VSA has 3 states","internal_default":3},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"IEEE Excitation System for Voltage Security Assesment","struct_name":"EX4VSA","supertype":"AVR"},{"fields":[{"name":"R","data_type":"Float64","null_value":0,"comment":"Resistance after EMF in machine per unit","valid_range":{"max":null,"min":0}},{"name":"Xd_p","data_type":"Float64","null_value":0,"comment":"Reactance after EMF in machine per unit","valid_range":{"max":null,"min":0}},{"name":"eq_p","data_type":"Float64","null_value":0,"comment":"Fixed EMF behind the impedance","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"BaseMachine has no states","internal_default":"Vector{Symbol}()"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"BaseMachine has no states","internal_default":0},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of a Classic Machine: GENCLS in PSSE and PSLF","struct_name":"BaseMachine","supertype":"Machine"},{"fields":[{"name":"R","data_type":"Float64","null_value":0,"comment":"Armature resistance","valid_range":{"max":null,"min":0}},{"name":"Td0_p","data_type":"Float64","null_value":0,"comment":"Time constant of transient d-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Td0_pp","data_type":"Float64","null_value":0,"comment":"Time constant of sub-transient d-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Tq0_p","data_type":"Float64","null_value":0,"comment":"Time constant of transient q-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Tq0_pp","data_type":"Float64","null_value":0,"comment":"Time constant of sub-transient q-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Xd","data_type":"Float64","null_value":0,"comment":"Reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq","data_type":"Float64","null_value":0,"comment":"Reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xd_p","data_type":"Float64","null_value":0,"comment":"Transient reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq_p","data_type":"Float64","null_value":0,"comment":"Transient reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xd_pp","data_type":"Float64","null_value":0,"comment":"Sub-Transient reactance after EMF in d-axis per unit. Note: Xd_pp = Xq_pp","valid_range":{"max":null,"min":0}},{"name":"Xl","data_type":"Float64","null_value":0,"comment":"Stator leakage reactance","valid_range":{"max":null,"min":0}},{"name":"Se","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Saturation factor at 1 and 1.2 pu flux: S(1.0) = B(|ψ_pp|-A)^2"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"γ_d1","data_type":"Float64","comment":"γ_d1 parameter","internal_default":"(Xd_pp - Xl) / (Xd_p - Xl)"},{"name":"γ_q1","data_type":"Float64","comment":"γ_q1 parameter","internal_default":"(Xd_pp - Xl) / (Xq_p - Xl)"},{"name":"γ_d2","data_type":"Float64","comment":"γ_d2 parameter","internal_default":"(Xd_p - Xd_pp) / (Xd_p - Xl)^2"},{"name":"γ_q2","data_type":"Float64","comment":"γ_q2 parameter","internal_default":"(Xq_p - Xd_pp) / (Xq_p - Xl)^2"},{"name":"γ_qd","data_type":"Float64","comment":"γ_qd parameter","internal_default":"(Xq - Xl) / (Xd - Xl)"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\teq_p: q-axis generator voltage behind the transient reactance,\n\ted_p: d-axis generator voltage behind the transient reactance,\n\tψ_kd: flux linkage in the first equivalent damping circuit in the d-axis,\n\tψ_kq: flux linkage in the first equivalent damping circuit in the d-axis","internal_default":"[:eq_p, :ed_p, :ψ_kd, :ψ_kq]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"RoundRotorMachine has 4 states","internal_default":4},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of 4-states round-rotor synchronous machine with quadratic/exponential saturation:\nIEEE Std 1110 §5.3.2 (Model 2.2). GENROU or GENROE model in PSSE and PSLF.","struct_name":"RoundRotorMachine","supertype":"Machine"},{"fields":[{"name":"R","data_type":"Float64","null_value":0,"comment":"Armature resistance","valid_range":{"max":null,"min":0}},{"name":"Td0_p","data_type":"Float64","null_value":0,"comment":"Time constant of transient d-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Td0_pp","data_type":"Float64","null_value":0,"comment":"Time constant of sub-transient d-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Tq0_pp","data_type":"Float64","null_value":0,"comment":"Time constant of sub-transient q-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Xd","data_type":"Float64","null_value":0,"comment":"Reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq","data_type":"Float64","null_value":0,"comment":"Reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xd_p","data_type":"Float64","null_value":0,"comment":"Transient reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xd_pp","data_type":"Float64","null_value":0,"comment":"Sub-Transient reactance after EMF in d-axis per unit. Note: Xd_pp = Xq_pp","valid_range":{"max":null,"min":0}},{"name":"Xl","data_type":"Float64","null_value":0,"comment":"Stator leakage reactance","valid_range":{"max":null,"min":0}},{"name":"Se","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Saturation factor at 1 and 1.2 pu flux: Se(eq_p) = B(eq_p-A)^2"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"γ_d1","data_type":"Float64","comment":"γ_d1 parameter","internal_default":"(Xd_pp - Xl) / (Xd_p - Xl)"},{"name":"γ_q1","data_type":"Float64","comment":"γ_q1 parameter","internal_default":"(Xd_p - Xd_pp) / (Xd_p - Xl)"},{"name":"γ_d2","data_type":"Float64","comment":"γ_d2 parameter","internal_default":"(Xd_p - Xd_pp) / (Xd_p - Xl)^2"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\teq_p: q-axis generator voltage behind the transient reactance,\n\tψ_kd: flux linkage in the first equivalent damping circuit in the d-axis,\n\tψq_pp: phasonf of the subtransient flux linkage in the q-axis","internal_default":"[:eq_p, :ψ_kd, :ψq_pp]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"SalientPoleMachine has 3 states","internal_default":3},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of 3-states salient-pole synchronous machine with quadratic/exponential saturation:\nIEEE Std 1110 §5.3.1 (Model 2.1). GENSAL or GENSAE model in PSSE and PSLF.","struct_name":"SalientPoleMachine","supertype":"Machine"},{"fields":[{"name":"R","data_type":"Float64","null_value":0,"comment":"Resistance after EMF in machine per unit","valid_range":{"max":null,"min":0}},{"name":"Xd","data_type":"Float64","null_value":0,"comment":"Reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq","data_type":"Float64","null_value":0,"comment":"Reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xd_p","data_type":"Float64","null_value":0,"comment":"Transient reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq_p","data_type":"Float64","null_value":0,"comment":"Transient reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xd_pp","data_type":"Float64","null_value":0,"comment":"Sub-Transient reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq_pp","data_type":"Float64","null_value":0,"comment":"Sub-Transient reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Td0_p","data_type":"Float64","null_value":0,"comment":"Time constant of transient d-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Tq0_p","data_type":"Float64","null_value":0,"comment":"Time constant of transient q-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Td0_pp","data_type":"Float64","null_value":0,"comment":"Time constant of sub-transient d-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Tq0_pp","data_type":"Float64","null_value":0,"comment":"Time constant of sub-transient q-axis voltage","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tψq: q-axis stator flux,\n\tψd: d-axis stator flux,\n\teq_p: q-axis transient voltage,\n\ted_p: d-axis transient voltage,\n\teq_pp: q-axis subtransient voltage,\n\ted_pp: d-axis subtransient voltage","internal_default":"[:ψq, :ψd, :eq_p, :ed_p, :eq_pp, :ed_pp]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"AndersonFouadMachine has 6 states","internal_default":6},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of 6-states synchronous machine: Anderson-Fouad model","struct_name":"AndersonFouadMachine","supertype":"Machine"},{"fields":[{"name":"R","data_type":"Float64","null_value":0,"comment":"Resistance after EMF in machine per unit","valid_range":{"max":null,"min":0}},{"name":"R_f","data_type":"Float64","null_value":0,"comment":"Field rotor winding resistance in per unit","valid_range":{"max":null,"min":0}},{"name":"R_1d","data_type":"Float64","null_value":0,"comment":" Damping rotor winding resistance on d-axis in per unit. This value is denoted as RD in Machowski.","valid_range":{"max":null,"min":0}},{"name":"R_1q","data_type":"Float64","null_value":0,"comment":"Damping rotor winding resistance on q-axis in per unit. This value is denoted as RQ in Machowski.","valid_range":{"max":null,"min":0}},{"name":"L_d","data_type":"Float64","null_value":1,"comment":"Inductance of fictitious damping that represent the effect of the three-phase stator winding in the d-axis of the rotor, in per unit. This value is denoted as L_ad + L_l in Kundur (and Ld in Machowski).","valid_range":{"max":null,"min":0}},{"name":"L_q","data_type":"Float64","null_value":1,"comment":"Inductance of fictitious damping that represent the effect of the three-phase stator winding in the q-axis of the rotor, in per unit. This value is denoted as L_aq + L_l in Kundur.","valid_range":{"max":null,"min":0}},{"name":"L_ad","data_type":"Float64","null_value":2,"comment":"Mutual inductance between stator winding and rotor field (and damping) winding inductance on d-axis, in per unit","valid_range":{"max":null,"min":0}},{"name":"L_aq","data_type":"Float64","null_value":2,"comment":"Mutual inductance between stator winding and rotor damping winding inductance on q-axis, in per unit","valid_range":{"max":null,"min":0}},{"name":"L_f1d","data_type":"Float64","null_value":1,"comment":"Mutual inductance between rotor field winding and rotor damping winding inductance on d-axis, in per unit","valid_range":{"max":null,"min":0}},{"name":"L_ff","data_type":"Float64","null_value":2,"comment":"Field rotor winding inductance, in per unit","valid_range":{"max":null,"min":0}},{"name":"L_1d","data_type":"Float64","null_value":1,"comment":"Inductance of the d-axis rotor damping circuit, in per unit","valid_range":{"max":null,"min":0}},{"name":"L_1q","data_type":"Float64","null_value":1,"comment":"Inductance of the q-axis rotor damping circuit, in per unit","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"inv_d_fluxlink","data_type":"Array{Float64,2}","comment":"Equations 3.127, 3.130, 3.131 From Kundur","internal_default":"inv([[-L_d L_ad L_ad]; [-L_ad L_ff L_f1d]; [-L_ad L_f1d L_1d]])"},{"name":"inv_q_fluxlink","data_type":"Array{Float64,2}","comment":"Equations 3.128, 3.132 From Kundur","internal_default":"inv([[-L_q L_aq]; [-L_aq L_1q]])"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tψd: d-axis stator flux,\n\tψq: q-axis stator flux,\n\tψf: field rotor flux,\n\tψ1d: d-axis rotor damping flux,\n\tψ1q: q-axis rotor damping flux","internal_default":"[:ψd, :ψq, :ψf, :ψ1d, :ψ1q]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"FullMachine has 5 states","internal_default":5},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameter of a full order flux stator-rotor model without zero sequence flux in the stator.\n The derivative of stator fluxes (ψd and ψq) is NOT neglected. Only one q-axis damping circuit is considered. All parameters are in machine per unit.\n Refer to Chapter 3 of Power System Stability and Control by P. Kundur or Chapter 11 of Power System Dynamics: Stability and Control, by J. Machowski, J. Bialek and J. Bumby, for more details.\n Note that the models are somewhat different (but equivalent) due to the different Park Transformation used in both books.","struct_name":"FullMachine","supertype":"Machine"},{"fields":[{"name":"R","data_type":"Float64","null_value":0,"comment":"Resistance after EMF in machine per unit","valid_range":{"max":null,"min":0}},{"name":"Xd","data_type":"Float64","null_value":0,"comment":"Reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq","data_type":"Float64","null_value":0,"comment":"Reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xd_p","data_type":"Float64","null_value":0,"comment":"Transient reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq_p","data_type":"Float64","null_value":0,"comment":"Transient reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xd_pp","data_type":"Float64","null_value":0,"comment":"Sub-Transient reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq_pp","data_type":"Float64","null_value":0,"comment":"Sub-Transient reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xl","data_type":"Float64","null_value":0,"comment":"Stator Leakage Reactance","valid_range":{"max":null,"min":0}},{"name":"Td0_p","data_type":"Float64","null_value":0,"comment":"Time constant of transient d-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Tq0_p","data_type":"Float64","null_value":0,"comment":"Time constant of transient q-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Td0_pp","data_type":"Float64","null_value":0,"comment":"Time constant of sub-transient d-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Tq0_pp","data_type":"Float64","null_value":0,"comment":"Time constant of sub-transient q-axis voltage","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"γ_d1","data_type":"Float64","comment":"","internal_default":"(Xd_pp-Xl)/(Xd_p-Xl)"},{"name":"γ_q1","data_type":"Float64","comment":"","internal_default":"(Xq_pp-Xl)/(Xq_p-Xl)"},{"name":"γ_d2","data_type":"Float64","comment":"","internal_default":"(Xd_p - Xd_pp) / (Xd_p - Xl)^2"},{"name":"γ_q2","data_type":"Float64","comment":"","internal_default":"(Xq_p - Xq_pp) / (Xq_p - Xl)^2"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tψq: q-axis stator flux,\n\tψd: d-axis stator flux,\n\teq_p: q-axis transient voltage,\n\ted_p: d-axis transient voltage\n\tψd_pp: subtransient flux linkage in the d-axis\n\tψq_pp: subtransient flux linkage in the q-axis","internal_default":"[:ψq, :ψd, :eq_p, :ed_p, :ψd_pp, :ψq_pp]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"SauerPaiMachine has 6 states","internal_default":6},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of synchronous machine: Sauer Pai model","struct_name":"SauerPaiMachine","supertype":"Machine"},{"fields":[{"name":"R","data_type":"Float64","null_value":0,"comment":"Resistance after EMF in machine per unit","valid_range":{"max":null,"min":0}},{"name":"Xd","data_type":"Float64","null_value":0,"comment":"Reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq","data_type":"Float64","null_value":0,"comment":"Reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xd_p","data_type":"Float64","null_value":0,"comment":"Transient reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq_p","data_type":"Float64","null_value":0,"comment":"Transient reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xd_pp","data_type":"Float64","null_value":0,"comment":"Sub-Transient reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq_pp","data_type":"Float64","null_value":0,"comment":"Sub-Transient reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Td0_p","data_type":"Float64","null_value":0,"comment":"Time constant of transient d-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Tq0_p","data_type":"Float64","null_value":0,"comment":"Time constant of transient q-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Td0_pp","data_type":"Float64","null_value":0,"comment":"Time constant of sub-transient d-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Tq0_pp","data_type":"Float64","null_value":0,"comment":"Time constant of sub-transient q-axis voltage","valid_range":{"max":null,"min":0}},{"name":"T_AA","data_type":"Float64","null_value":0,"comment":"Time constant of d-axis additional leakage","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"γd","data_type":"Float64","comment":"","internal_default":"((Td0_pp*Xd_pp)/(Td0_p*Xd_p) )*(Xd-Xd_p)"},{"name":"γq","data_type":"Float64","comment":"","internal_default":"((Tq0_pp*Xq_pp)/(Tq0_p*Xq_p) )*(Xq-Xq_p)"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tψq: q-axis stator flux,\n\tψd: d-axis stator flux,\n\teq_p: q-axis transient voltage,\n\ted_p: d-axis transient voltage,\n\teq_pp: q-axis subtransient voltage,\n\ted_pp: d-axis subtransient voltage","internal_default":"[:ψq, :ψd, :eq_p, :ed_p, :eq_pp, :ed_pp]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"MarconatoMachine has 6 states","internal_default":6},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of 6-states synchronous machine: Marconato model","struct_name":"MarconatoMachine","supertype":"Machine"},{"fields":[{"name":"R","data_type":"Float64","null_value":0,"comment":"Resistance after EMF in machine per unit","valid_range":{"max":null,"min":0}},{"name":"Xd","data_type":"Float64","null_value":0,"comment":"Reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq","data_type":"Float64","null_value":0,"comment":"Reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xd_p","data_type":"Float64","null_value":0,"comment":"Transient reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq_p","data_type":"Float64","null_value":0,"comment":"Transient reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Td0_p","data_type":"Float64","null_value":0,"comment":"Time constant of transient d-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Tq0_p","data_type":"Float64","null_value":0,"comment":"Time constant of transient q-axis voltage","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\teq_p: q-axis transient voltage,\n\ted_p: d-axis transient voltage","internal_default":"[:eq_p, :ed_p]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"OneDOneQMachine has 2 states","internal_default":2},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of 4-states synchronous machine: Simplified Marconato model\n The derivative of stator fluxes (ψd and ψq) is neglected and ωψd = ψd and\n ωψq = ψq is assumed (i.e. ω=1.0). This is standard when\n transmission network dynamics is neglected.","struct_name":"OneDOneQMachine","supertype":"Machine"},{"fields":[{"name":"R","data_type":"Float64","null_value":0,"comment":"Resistance after EMF in machine per unit","valid_range":{"max":null,"min":0}},{"name":"Xd","data_type":"Float64","null_value":0,"comment":"Reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq","data_type":"Float64","null_value":0,"comment":"Reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xd_p","data_type":"Float64","null_value":0,"comment":"Transient reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq_p","data_type":"Float64","null_value":0,"comment":"Transient reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xd_pp","data_type":"Float64","null_value":0,"comment":"Sub-Transient reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq_pp","data_type":"Float64","null_value":0,"comment":"Sub-Transient reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Td0_p","data_type":"Float64","null_value":0,"comment":"Time constant of transient d-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Tq0_p","data_type":"Float64","null_value":0,"comment":"Time constant of transient q-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Td0_pp","data_type":"Float64","null_value":0,"comment":"Time constant of sub-transient d-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Tq0_pp","data_type":"Float64","null_value":0,"comment":"Time constant of sub-transient q-axis voltage","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\teq_p: q-axis transient voltage,\n\ted_p: d-axis transient voltage,\n\teq_pp: q-axis subtransient voltage,\n\ted_pp: d-axis subtransient voltage","internal_default":"[:eq_p, :ed_p, :eq_pp, :ed_pp]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"SimpleAFMachine has 4 states","internal_default":4},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of 4-states simplified Anderson-Fouad (SimpleAFMachine) model.\n The derivative of stator fluxes (ψd and ψq) is neglected and ωψd = ψd and\n ωψq = ψq is assumed (i.e. ω=1.0). This is standard when transmission network\n dynamics is neglected.\n If transmission dynamics is considered use the full order Anderson Fouad model.","struct_name":"SimpleAFMachine","supertype":"Machine"},{"fields":[{"name":"R","data_type":"Float64","null_value":0,"comment":"Resistance after EMF in machine per unit","valid_range":{"max":null,"min":0}},{"name":"R_f","data_type":"Float64","null_value":0,"comment":"Field rotor winding resistance in per unit","valid_range":{"max":null,"min":0}},{"name":"R_1d","data_type":"Float64","null_value":0,"comment":" Damping rotor winding resistance on d-axis in per unit. This value is denoted as RD in Machowski.","valid_range":{"max":null,"min":0}},{"name":"R_1q","data_type":"Float64","null_value":0,"comment":"Damping rotor winding resistance on q-axis in per unit. This value is denoted as RQ in Machowski.","valid_range":{"max":null,"min":0}},{"name":"L_d","data_type":"Float64","null_value":1,"comment":"Inductance of fictitious damping that represent the effect of the three-phase stator winding in the d-axis of the rotor, in per unit. This value is denoted as L_ad + L_l in Kundur (and Ld in Machowski).","valid_range":{"max":null,"min":0}},{"name":"L_q","data_type":"Float64","null_value":1,"comment":"Inductance of fictitious damping that represent the effect of the three-phase stator winding in the q-axis of the rotor, in per unit. This value is denoted as L_aq + L_l in Kundur.","valid_range":{"max":null,"min":0}},{"name":"L_ad","data_type":"Float64","null_value":2,"comment":"Mutual inductance between stator winding and rotor field (and damping) winding inductance on d-axis, in per unit","valid_range":{"max":null,"min":0}},{"name":"L_aq","data_type":"Float64","null_value":1,"comment":"Mutual inductance between stator winding and rotor damping winding inductance on q-axis, in per unit","valid_range":{"max":null,"min":0}},{"name":"L_f1d","data_type":"Float64","null_value":1,"comment":"Mutual inductance between rotor field winding and rotor damping winding inductance on d-axis, in per unit","valid_range":{"max":null,"min":0}},{"name":"L_ff","data_type":"Float64","null_value":2,"comment":"Field rotor winding inductance, in per unit","valid_range":{"max":null,"min":0}},{"name":"L_1d","data_type":"Float64","null_value":1,"comment":"Inductance of the d-axis rotor damping circuit, in per unit","valid_range":{"max":null,"min":0}},{"name":"L_1q","data_type":"Float64","null_value":2,"comment":"Inductance of the q-axis rotor damping circuit, in per unit","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"inv_d_fluxlink","data_type":"Array{Float64,2}","comment":"Equations 3.127, 3.130, 3.131 From Kundur","internal_default":"inv([[-L_d L_ad L_ad]; [-L_ad L_ff L_f1d]; [-L_ad L_f1d L_1d]])"},{"name":"inv_q_fluxlink","data_type":"Array{Float64,2}","comment":"Equations 3.128, 3.132 From Kundur","internal_default":"inv([[-L_q L_aq]; [-L_aq L_1q]])"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tψf: field rotor flux,\n\tψ1d: d-axis rotor damping flux,\n\tψ1q: q-axis rotor damping flux","internal_default":"[:ψf, :ψ1d, :ψ1q]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"SimpleFullMachine has 3 states","internal_default":3},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameter of a full order flux stator-rotor model without zero sequence flux in the stator.\n The derivative of stator fluxes (ψd and ψq) is neglected. This is standard when\n transmission network dynamics is neglected. Only one q-axis damping circuit\n is considered. All per unit are in machine per unit.\n Refer to Chapter 3 of Power System Stability and Control by P. Kundur or Chapter 11 of Power System Dynamics: Stability and Control, by J. Machowski, J. Bialek and J. Bumby, for more details.\n Note that the models are somewhat different (but equivalent) due to the different Park Transformation used in both books.","struct_name":"SimpleFullMachine","supertype":"Machine"},{"fields":[{"name":"R","data_type":"Float64","null_value":0,"comment":"Resistance after EMF in machine per unit","valid_range":{"max":null,"min":0}},{"name":"Xd","data_type":"Float64","null_value":0,"comment":"Reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq","data_type":"Float64","null_value":0,"comment":"Reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xd_p","data_type":"Float64","null_value":0,"comment":"Transient reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq_p","data_type":"Float64","null_value":0,"comment":"Transient reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xd_pp","data_type":"Float64","null_value":0,"comment":"Sub-Transient reactance after EMF in d-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Xq_pp","data_type":"Float64","null_value":0,"comment":"Sub-Transient reactance after EMF in q-axis per unit","valid_range":{"max":null,"min":0}},{"name":"Td0_p","data_type":"Float64","null_value":0,"comment":"Time constant of transient d-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Tq0_p","data_type":"Float64","null_value":0,"comment":"Time constant of transient q-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Td0_pp","data_type":"Float64","null_value":0,"comment":"Time constant of sub-transient d-axis voltage","valid_range":{"max":null,"min":0}},{"name":"Tq0_pp","data_type":"Float64","null_value":0,"comment":"Time constant of sub-transient q-axis voltage","valid_range":{"max":null,"min":0}},{"name":"T_AA","data_type":"Float64","null_value":0,"comment":"Time constant of d-axis additional leakage","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"γd","data_type":"Float64","comment":"","internal_default":"((Td0_pp*Xd_pp)/(Td0_p*Xd_p) )*(Xd-Xd_p)"},{"name":"γq","data_type":"Float64","comment":"","internal_default":"((Tq0_pp*Xq_pp)/(Tq0_p*Xq_p) )*(Xq-Xq_p)"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\teq_p: q-axis transient voltage,\n\ted_p: d-axis transient voltage,\n\teq_pp: q-axis subtransient voltage,\n\ted_pp: d-axis subtransient voltage","internal_default":"[:eq_p, :ed_p, :eq_pp, :ed_pp]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"SimpleMarconatoMachine has 4 states","internal_default":4},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of 4-states synchronous machine: Simplified Marconato model\n The derivative of stator fluxes (ψd and ψq) is neglected and ωψd = ψd and\n ωψq = ψq is assumed (i.e. ω=1.0). This is standard when transmission network\n dynamics is neglected.","struct_name":"SimpleMarconatoMachine","supertype":"Machine"},{"fields":[{"name":"V_pss","data_type":"Float64","null_value":0,"comment":"Fixed voltage stabilization signal","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"","internal_default":"Vector{Symbol}()"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"PSSFixed has no states","internal_default":0},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of a PSS that returns a fixed voltage to add to the reference for the AVR","struct_name":"PSSFixed","supertype":"PSS"},{"fields":[{"name":"K_ω","data_type":"Float64","null_value":0,"comment":"Proportional gain for frequency","valid_range":{"max":null,"min":0}},{"name":"K_p","data_type":"Float64","null_value":0,"comment":"Proportional gain for active power","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"","internal_default":"Vector{Symbol}()"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"PSSSimple has no states","internal_default":0},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of a PSS that returns a proportional droop voltage to add to the reference for the AVR","struct_name":"PSSSimple","supertype":"PSS"},{"fields":[{"name":"input_code","data_type":"Int","null_value":1,"validation_action":"error","comment":"Code input for stabilizer","valid_range":{"max":6,"min":1}},{"name":"remote_bus_control","data_type":"Int","null_value":0,"comment":"Remote Bus number for control."},{"name":"A1","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Filter coefficient","valid_range":{"max":null,"min":0}},{"name":"A2","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Filter coefficient","valid_range":{"max":null,"min":0}},{"name":"A3","data_type":"Float64","null_value":0,"comment":"Filter coefficient","valid_range":{"max":null,"min":0}},{"name":"A4","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Filter coefficient","valid_range":{"max":null,"min":0}},{"name":"A5","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Filter coefficient","valid_range":{"max":null,"min":0}},{"name":"A6","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Filter coefficient","valid_range":{"max":null,"min":0}},{"name":"T1","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant","valid_range":{"max":10,"min":0}},{"name":"T2","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant","valid_range":{"max":10,"min":0}},{"name":"T3","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant","valid_range":{"max":10,"min":0}},{"name":"T4","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant","valid_range":{"max":10,"min":0}},{"name":"T5","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant","valid_range":{"max":10,"min":0}},{"name":"T6","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Time constant","valid_range":{"max":"2.0","min":"eps()"}},{"name":"Ks","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Proportional gain","valid_range":{"max":null,"min":0}},{"name":"Ls_lim","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"PSS output limits for regulator output `(Ls_min, Ls_max)`"},{"name":"Vcu","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Cutoff limiter upper bound","valid_range":{"max":"1.25","min":0}},{"name":"Vcl","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Cutoff limiter lower bound","valid_range":{"max":"1.0","min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tx_p1: 1st filter integration,\n\tx_p2: 2nd filter integration, \n\tx_p3: 3rd filter integration, \n\tx_p4: 4rd filter integration, \n\tx_p5: T1/T2 lead-lag integrator, \n\tx_p6: T3/T4 lead-lag integrator, \n\t:x_p7 last integer,","internal_default":"[:x_p1, :x_p2, :x_p3, :x_p4, :x_p5, :x_p6, :x_p7]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"IEEEST has 7 states","internal_default":7},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"IEEEST has 7 differential states","internal_default":"[StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"IEEE Stabilizing Model PSS. ","struct_name":"IEEEST","supertype":"PSS"},{"fields":[{"name":"KT","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"K/T for washout filter","valid_range":{"max":null,"min":0}},{"name":"T","data_type":"Float64","null_value":0.01,"validation_action":"warn","comment":"Time constant for washout filter","valid_range":{"max":null,"min":0.01}},{"name":"T1T3","data_type":"Float64","null_value":0,"comment":"Time constant division T1/T3","valid_range":{"max":null,"min":0}},{"name":"T3","data_type":"Float64","null_value":0.01,"validation_action":"warn","comment":"Time constant","valid_range":{"max":null,"min":0.01}},{"name":"T2T4","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant division T2/T4","valid_range":{"max":null,"min":0}},{"name":"T4","data_type":"Float64","null_value":0.01,"validation_action":"warn","comment":"Time constant","valid_range":{"max":null,"min":0.01}},{"name":"H_lim","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"PSS output limit","valid_range":{"max":0.5,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tx_p1: washout filter,\n\tx_p2: T1/T3 lead-lag block, \n\tx_p3: T2/T4 lead-lag block,","internal_default":"[:x_p1, :x_p2, :x_p3]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"STAB1 has 3 states","internal_default":3},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"STAB1 has 3 differential states","internal_default":"[StateTypes.Differential, StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Speed-Sensitive Stabilizing Model","struct_name":"STAB1","supertype":"PSS"},{"fields":[{"name":"input_code_1","data_type":"Int","null_value":1,"validation_action":"error","comment":"First Input Code for stabilizer","valid_range":{"max":6,"min":1}},{"name":"remote_bus_control_1","data_type":"Int","null_value":0,"comment":"First Input Remote Bus number for control."},{"name":"input_code_2","data_type":"Int","null_value":1,"validation_action":"error","comment":"Second Input Code for stabilizer","valid_range":{"max":6,"min":1}},{"name":"remote_bus_control_2","data_type":"Int","null_value":0,"comment":"Second Input Remote Bus number for control."},{"name":"M_rtf","data_type":"Int","null_value":0,"validation_action":"error","comment":"M parameter for ramp tracking filter","valid_range":{"max":8,"min":0}},{"name":"N_rtf","data_type":"Int","null_value":0,"validation_action":"error","comment":"N parameter for ramp tracking filter","valid_range":{"max":8,"min":0}},{"name":"Tw1","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for first washout filter for first input","valid_range":{"max":null,"min":"eps()"}},{"name":"Tw2","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for second washout filter for first input","valid_range":{"max":null,"min":0}},{"name":"T6","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for low-pass filter for first input","valid_range":{"max":null,"min":0}},{"name":"Tw3","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for first washout filter for second input","valid_range":{"max":null,"min":"eps()"}},{"name":"Tw4","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for second washout filter for second input","valid_range":{"max":null,"min":0}},{"name":"T7","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for low-pass filter for second input","valid_range":{"max":null,"min":0}},{"name":"Ks2","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Gain for low-pass filter for second input","valid_range":{"max":null,"min":0}},{"name":"Ks3","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Gain for second input","valid_range":{"max":null,"min":0}},{"name":"T8","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for ramp tracking filter","valid_range":{"max":null,"min":0}},{"name":"T9","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for ramp tracking filter","valid_range":{"max":null,"min":"eps()"}},{"name":"Ks1","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Gain before lead-lag blocks","valid_range":{"max":null,"min":0}},{"name":"T1","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for first lead-lag block","valid_range":{"max":null,"min":0}},{"name":"T2","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for first lead-lag block","valid_range":{"max":null,"min":0}},{"name":"T3","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for second lead-lag block","valid_range":{"max":null,"min":0}},{"name":"T4","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for second lead-lag block","valid_range":{"max":null,"min":0}},{"name":"Vst_lim","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"PSS output limits `(Vst_min, Vst_max)`"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tx_p1: 1st washout 1st input, \n\tx_p2: 2nd washout 1st input, \n\tx_p3: transducer 1st input, \n\tx_p4: 1st washout 2nd input, \n\tx_p5: 2nd washout 2nd input, \n\tx_p6: transducer 2nd input, \n\tx_p7: ramp tracking filter state 1, \n\tx_p8: ramp tracking filter state 2, \n\tx_p9: ramp tracking filter state 3, \n\tx_p10: ramp tracking filter state 4, \n\tx_p11: ramp tracking filter state 5, \n\tx_p12: ramp tracking filter state 6, \n\tx_p13: ramp tracking filter state 7, \n\tx_p14: ramp tracking filter state 8, \n\tx_p15: 1st lead-lag, \n\tx_p16: 2nd lead-lag,","internal_default":"[:x_p1, :x_p2, :x_p3, :x_p4, :x_p5, :x_p6, :x_p7, :x_p8, :x_p9, :x_p10, :x_p11, :x_p12, :x_p13, :x_p14, :x_p15, :x_p16]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"IEEEST has 16 states","internal_default":16},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"IEEEST has 16 differential states","internal_default":"[StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"IEEE Dual-Input Stabilizer Model","struct_name":"PSS2A","supertype":"PSS"},{"fields":[{"name":"input_code_1","data_type":"Int","null_value":1,"validation_action":"error","comment":"First Input Code for stabilizer","valid_range":{"max":6,"min":1}},{"name":"remote_bus_control_1","data_type":"Int","null_value":0,"comment":"First Input Remote Bus number for control."},{"name":"input_code_2","data_type":"Int","null_value":1,"validation_action":"error","comment":"Second Input Code for stabilizer","valid_range":{"max":6,"min":1}},{"name":"remote_bus_control_2","data_type":"Int","null_value":0,"comment":"Second Input Remote Bus number for control."},{"name":"M_rtf","data_type":"Int","null_value":0,"validation_action":"error","comment":"M parameter for ramp tracking filter","valid_range":{"max":8,"min":0}},{"name":"N_rtf","data_type":"Int","null_value":0,"validation_action":"error","comment":"N parameter for ramp tracking filter","valid_range":{"max":8,"min":0}},{"name":"Tw1","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for first washout filter for first input","valid_range":{"max":null,"min":"eps()"}},{"name":"Tw2","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for second washout filter for first input","valid_range":{"max":null,"min":0}},{"name":"T6","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for low-pass filter for first input","valid_range":{"max":null,"min":0}},{"name":"Tw3","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for first washout filter for second input","valid_range":{"max":null,"min":"eps()"}},{"name":"Tw4","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for second washout filter for second input","valid_range":{"max":null,"min":0}},{"name":"T7","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for low-pass filter for second input","valid_range":{"max":null,"min":0}},{"name":"Ks2","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Gain for low-pass filter for second input","valid_range":{"max":null,"min":0}},{"name":"Ks3","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Gain for second input","valid_range":{"max":null,"min":0}},{"name":"T8","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for ramp tracking filter","valid_range":{"max":null,"min":0}},{"name":"T9","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for ramp tracking filter","valid_range":{"max":null,"min":"eps()"}},{"name":"Ks1","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Gain before lead-lag blocks","valid_range":{"max":null,"min":0}},{"name":"T1","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for first lead-lag block","valid_range":{"max":null,"min":0}},{"name":"T2","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for first lead-lag block","valid_range":{"max":null,"min":0}},{"name":"T3","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for second lead-lag block","valid_range":{"max":null,"min":0}},{"name":"T4","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for second lead-lag block","valid_range":{"max":null,"min":0}},{"name":"T10","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for third lead-lag block","valid_range":{"max":null,"min":0}},{"name":"T11","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for third lead-lag block","valid_range":{"max":null,"min":0}},{"name":"Vs1_lim","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"First input limits `(Vs1_min, Vs1_max)`"},{"name":"Vs2_lim","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Second input limits `(Vs2_min, Vs2_max)`"},{"name":"Vst_lim","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"PSS output limits `(Vst_min, Vst_max)`"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tx_p1: 1st washout 1st input, \n\tx_p2: 2nd washout 1st input, \n\tx_p3: transducer 1st input, \n\tx_p4: 1st washout 2nd input, \n\tx_p5: 2nd washout 2nd input, \n\tx_p6: transducer 2nd input, \n\tx_p7: ramp tracking filter state 1, \n\tx_p8: ramp tracking filter state 2, \n\tx_p9: ramp tracking filter state 3, \n\tx_p10: ramp tracking filter state 4, \n\tx_p11: ramp tracking filter state 5, \n\tx_p12: ramp tracking filter state 6, \n\tx_p13: ramp tracking filter state 7, \n\tx_p14: ramp tracking filter state 8, \n\tx_p15: 1st lead-lag, \n\tx_p16: 2nd lead-lag, \n\tx_p17: 3rd lead-lag,","internal_default":"[:x_p1, :x_p2, :x_p3, :x_p4, :x_p5, :x_p6, :x_p7, :x_p8, :x_p9, :x_p10, :x_p11, :x_p12, :x_p13, :x_p14, :x_p15, :x_p16, :x_p17]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"IEEEST has 17 states","internal_default":17},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"IEEEST has 17 differential states","internal_default":"[StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"IEEE 421.5 2005 PSS2B IEEE Dual-Input Stabilizer Model","struct_name":"PSS2B","supertype":"PSS"},{"fields":[{"name":"input_code_1","data_type":"Int","null_value":1,"validation_action":"error","comment":"First Input Code for stabilizer","valid_range":{"max":7,"min":1}},{"name":"remote_bus_control_1","data_type":"Int","null_value":0,"comment":"First Input Remote Bus number for control."},{"name":"input_code_2","data_type":"Int","null_value":1,"validation_action":"error","comment":"Second Input Code for stabilizer","valid_range":{"max":6,"min":1}},{"name":"remote_bus_control_2","data_type":"Int","null_value":0,"comment":"Second Input Remote Bus number for control."},{"name":"M_rtf","data_type":"Int","null_value":0,"validation_action":"error","comment":"M parameter for ramp tracking filter","valid_range":{"max":8,"min":0}},{"name":"N_rtf","data_type":"Int","null_value":0,"validation_action":"error","comment":"N parameter for ramp tracking filter","valid_range":{"max":8,"min":0}},{"name":"Tw1","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for first washout filter for first input","valid_range":{"max":null,"min":"eps()"}},{"name":"Tw2","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for second washout filter for first input","valid_range":{"max":null,"min":0}},{"name":"T6","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for low-pass filter for first input","valid_range":{"max":null,"min":0}},{"name":"Tw3","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for first washout filter for second input","valid_range":{"max":null,"min":"eps()"}},{"name":"Tw4","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for second washout filter for second input","valid_range":{"max":null,"min":0}},{"name":"T7","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for low-pass filter for second input","valid_range":{"max":null,"min":0}},{"name":"Ks2","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Gain for low-pass filter for second input","valid_range":{"max":null,"min":0}},{"name":"Ks3","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Gain for second input","valid_range":{"max":null,"min":0}},{"name":"T8","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for ramp tracking filter","valid_range":{"max":null,"min":0}},{"name":"T9","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for ramp tracking filter","valid_range":{"max":null,"min":"eps()"}},{"name":"Ks1","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Gain before lead-lag blocks","valid_range":{"max":null,"min":0}},{"name":"T1","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for first lead-lag block","valid_range":{"max":null,"min":0}},{"name":"T2","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for first lead-lag block","valid_range":{"max":null,"min":0}},{"name":"T3","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for second lead-lag block","valid_range":{"max":null,"min":0}},{"name":"T4","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for second lead-lag block","valid_range":{"max":null,"min":0}},{"name":"T10","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for third lead-lag block","valid_range":{"max":null,"min":0}},{"name":"T11","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for third lead-lag block","valid_range":{"max":null,"min":0}},{"name":"Vs1_lim","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"First input limits `(Vs1_min, Vs1_max)`"},{"name":"Vs2_lim","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Second input limits `(Vs2_min, Vs2_max)`"},{"name":"Vst_lim","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"PSS output limits `(Vst_min, Vst_max)`"},{"name":"T12","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for fourth lead-lag block","valid_range":{"max":null,"min":0}},{"name":"T13","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for fourth lead-lag block","valid_range":{"max":null,"min":0}},{"name":"PSS_Hysteresis_param","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"PSS output hysteresis parameters `(PSSOFF, PSSON)`"},{"name":"Xcomp","data_type":"Float64","null_value":0,"comment":"Stator Leakage Reactance","valid_range":{"max":null,"min":0}},{"name":"Tcomp","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Time measured with compensated frequency","valid_range":{"max":null,"min":"eps()"}},{"name":"hysteresis_binary_logic","default":"1","data_type":"Int","null_value":0,"comment":"Hysteresis memory variable"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tx_p1: 1st washout 1st input, \n\tx_p2: 2nd washout 1st input, \n\tx_p3: transducer 1st input, \n\tx_p4: 1st washout 2nd input, \n\tx_p5: 2nd washout 2nd input, \n\tx_p6: transducer 2nd input, \n\tx_p7: ramp tracking filter state 1, \n\tx_p8: ramp tracking filter state 2, \n\tx_p9: ramp tracking filter state 3, \n\tx_p10: ramp tracking filter state 4, \n\tx_p11: ramp tracking filter state 5, \n\tx_p12: ramp tracking filter state 6, \n\tx_p13: ramp tracking filter state 7, \n\tx_p14: ramp tracking filter state 8, \n\tx_p15: 1st lead-lag, \n\tx_p16: 2nd lead-lag, \n\tx_p17: 3rd lead-lag, \n\tx_p18: 4th lead-lag, \n\tx_p19: washout block for compensated frequency,","internal_default":"[:x_p1, :x_p2, :x_p3, :x_p4, :x_p5, :x_p6, :x_p7, :x_p8, :x_p9, :x_p10, :x_p11, :x_p12, :x_p13, :x_p14, :x_p15, :x_p16, :x_p17, :x_p18, :x_p19]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"IEEEST has 19 states","internal_default":19},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"IEEEST has 19 differential states","internal_default":"[StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"IEEE 421.5 2016 PSS2C IEEE Dual-Input Stabilizer Model","struct_name":"PSS2C","supertype":"PSS"},{"fields":[{"name":"H","data_type":"Float64","null_value":0,"comment":"Rotor inertia constant in MWs/MVA","valid_range":{"max":null,"min":0}},{"name":"D","data_type":"Float64","null_value":0,"comment":"Rotor natural damping in pu","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tδ: rotor angle,\n\tω: rotor speed","internal_default":"[:δ, :ω]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"SingleMass has 1 state","internal_default":2},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of single mass shaft model. Typically represents the rotor mass.","struct_name":"SingleMass","supertype":"Shaft"},{"fields":[{"name":"H","data_type":"Float64","null_value":0,"comment":"Rotor inertia constant in MWs/MVA","valid_range":{"max":null,"min":0}},{"name":"H_hp","data_type":"Float64","null_value":0,"comment":"High pressure turbine inertia constant in MWs/MVA","valid_range":{"max":null,"min":0}},{"name":"H_ip","data_type":"Float64","null_value":0,"comment":"Intermediate pressure turbine inertia constant in MWs/MVA","valid_range":{"max":null,"min":0}},{"name":"H_lp","data_type":"Float64","null_value":0,"comment":"Low pressure turbine inertia constant in MWs/MVA","valid_range":{"max":null,"min":0}},{"name":"H_ex","data_type":"Float64","null_value":0,"comment":" Exciter inertia constant in MWs/MVA","valid_range":{"max":null,"min":0}},{"name":"D","data_type":"Float64","null_value":0,"comment":"Rotor natural damping in pu","valid_range":{"max":null,"min":0}},{"name":"D_hp","data_type":"Float64","null_value":0,"comment":"High pressure turbine natural damping in pu","valid_range":{"max":null,"min":0}},{"name":"D_ip","data_type":"Float64","null_value":0,"comment":"Intermediate pressure turbine natural damping in pu","valid_range":{"max":null,"min":0}},{"name":"D_lp","data_type":"Float64","null_value":0,"comment":"Low pressure turbine natural damping in pu","valid_range":{"max":null,"min":0}},{"name":"D_ex","data_type":"Float64","null_value":0,"comment":"Exciter natural damping in pu","valid_range":{"max":null,"min":0}},{"name":"D_12","data_type":"Float64","null_value":0,"comment":"High-Intermediate pressure turbine damping","valid_range":{"max":null,"min":0}},{"name":"D_23","data_type":"Float64","null_value":0,"comment":"Intermediate-Low pressure turbine damping","valid_range":{"max":null,"min":0}},{"name":"D_34","data_type":"Float64","null_value":0,"comment":"Low pressure turbine-Rotor damping","valid_range":{"max":null,"min":0}},{"name":"D_45","data_type":"Float64","null_value":0,"comment":"Rotor-Exciter damping","valid_range":{"max":null,"min":0}},{"name":"K_hp","data_type":"Float64","null_value":0,"comment":"High pressure turbine angle coefficient","valid_range":{"max":null,"min":0}},{"name":"K_ip","data_type":"Float64","null_value":0,"comment":"Intermediate pressure turbine angle coefficient","valid_range":{"max":null,"min":0}},{"name":"K_lp","data_type":"Float64","null_value":0,"comment":"Low pressure turbine angle coefficient","valid_range":{"max":null,"min":0}},{"name":"K_ex","data_type":"Float64","null_value":0,"comment":"Exciter angle coefficient","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\n\tδ: rotor angle,\n\tω: rotor speed,\n\tδ_hp: rotor angle of high pressure turbine,\n\tω_hp: rotor speed of high pressure turbine,\n\tδ_ip: rotor angle of intermediate pressure turbine,\n\tω_ip: rotor speed of intermediate pressure turbine,\n\tδ_lp: rotor angle of low pressure turbine,\n\tω_lp: rotor speed of low pressure turbine,\n\tδ_ex: rotor angle of exciter,\n\tω_lp: rotor speed of exciter","internal_default":"[:δ, :ω, :δ_hp, :ω_hp, :δ_ip, :ω_ip, :δ_lp, :ω_lp, :δ_ex, :ω_ex]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"FiveMassShaft has 10 states","internal_default":10},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of 5 mass-spring shaft model.\n It contains a High-Pressure (HP) steam turbine, Intermediate-Pressure (IP)\n steam turbine, Low-Pressure (LP) steam turbine, the Rotor and an Exciter (EX) mover.","struct_name":"FiveMassShaft","supertype":"Shaft"},{"fields":[{"name":"efficiency","data_type":"Float64","null_value":0,"comment":" Efficiency factor that multiplies P_ref","valid_range":{"max":null,"min":0}},{"name":"P_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Power Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"","internal_default":"Vector{Symbol}()"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"TGFixed has no states","internal_default":0},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of a fixed Turbine Governor that returns a fixed mechanical torque\n given by the product of P_ref*efficiency","struct_name":"TGFixed","supertype":"TurbineGov"},{"fields":[{"name":"R","data_type":"Float64","null_value":0,"comment":"Speed droop parameter","valid_range":{"max":0.1,"min":"eps()"}},{"name":"T1","data_type":"Float64","null_value":0,"comment":"Governor time constant in s","valid_range":{"max":0.5,"min":"eps()"}},{"name":"T2","data_type":"Float64","null_value":0,"comment":"Combustion chamber time constant","valid_range":{"max":0.5,"min":"eps()"}},{"name":"T3","data_type":"Float64","null_value":0,"comment":"Load limit time constant (exhaust gas measurement time)","valid_range":{"max":5,"min":"eps()"}},{"name":"AT","data_type":"Float64","null_value":0,"comment":"Ambient temperature load limit","valid_range":{"max":1,"min":0}},{"name":"Kt","data_type":"Float64","null_value":0,"comment":"Load limit feedback gain","valid_range":{"max":5,"min":0}},{"name":"V_lim","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Operational control limits on fuel valve opening (V_min, V_max)"},{"name":"D_turb","data_type":"Float64","null_value":0,"comment":"Speed damping coefficient of gas turbine rotor","valid_range":{"max":0.5,"min":0}},{"name":"P_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Load Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the GAST model are:\n\tx_g1: Fuel valve opening,\n\tx_g2: Fuel flow,\n\tx_g3: Exhaust temperature load","internal_default":"[:x_g1, :x_g2, :x_g3]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"GasTG has 3 states","internal_default":3},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"GAST has 3 differential states","internal_default":"[StateTypes.Differential, StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of Gas Turbine-Governor. GAST in PSSE and GAST_PTI in PowerWorld.","struct_name":"GasTG","supertype":"TurbineGov"},{"fields":[{"name":"T1","data_type":"Float64","null_value":0,"comment":"Governor mechanism time constant","valid_range":{"max":100,"min":"eps()"}},{"name":"T2","data_type":"Float64","null_value":0,"comment":"Turbine power time constant","valid_range":{"max":100,"min":"eps()"}},{"name":"T3","data_type":"Float64","null_value":0,"comment":"Turbine exhaust temperature time constant","valid_range":{"max":100,"min":"eps()"}},{"name":"K","data_type":"Float64","null_value":0,"comment":"Governor gain (reciprocal of droop)","valid_range":{"max":100,"min":"eps()"}},{"name":"T4","data_type":"Float64","null_value":0,"comment":"Governor lead time constant","valid_range":{"max":100,"min":"eps()"}},{"name":"T5","data_type":"Float64","null_value":0,"comment":"Governor lag time constant","valid_range":{"max":100,"min":"eps()"}},{"name":"T6","data_type":"Float64","null_value":0,"comment":"Actuator time constant","valid_range":{"max":100,"min":"eps()"}},{"name":"Td","data_type":"Float64","null_value":0,"comment":"Engine time delay","valid_range":{"max":100,"min":"eps()"}},{"name":"P_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Load Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the DEGOV model are:\n\tx_ecb1: Electric control box 1,\n\tx_ecb2: Electric control box 2,\n\tx_a1: Actuator 1,\n\tx_a2: Actuator 2,\n\tx_a3: Actuator 3,","internal_default":"[:x_ecb1, :x_ecb2, :x_a1, :x_a2, :x_a3]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"DEGOV has 5 states","internal_default":5},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"DEGOV has 5 differential states","internal_default":"[StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters Woodward Diesel Governor Model. DEGOV in PowerWorld.","struct_name":"DEGOV","supertype":"TurbineGov"},{"fields":[{"name":"Rselect","data_type":"Int","null_value":1,"validation_action":"error","comment":"Feedback signal for governor droop","valid_range":{"max":1,"min":-2}},{"name":"fuel_flag","data_type":"Int","null_value":0,"validation_action":"error","comment":"Flag Switch for fuel source characteristic","valid_range":{"max":1,"min":0}},{"name":"R","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Speed droop parameter","valid_range":{"max":null,"min":"eps()"}},{"name":"Tpelec","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Electrical power transducer time constant, seconds","valid_range":{"max":null,"min":"eps()"}},{"name":"speed_error_signal","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Speed error signal limits"},{"name":"Kp_gov","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Governor proportional gain","valid_range":{"max":null,"min":0}},{"name":"Ki_gov","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Governor integral gain","valid_range":{"max":null,"min":0}},{"name":"Kd_gov","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Governor derivative gain","valid_range":{"max":null,"min":0}},{"name":"Td_gov","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Governor derivative time constant","valid_range":{"max":null,"min":0}},{"name":"valve_position_limits","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Valve position limits"},{"name":"T_act","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Actuator time constant","valid_range":{"max":null,"min":0}},{"name":"K_turb","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Turbine gain","valid_range":{"max":null,"min":0}},{"name":"Wf_nl","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"No load fuel flow, pu","valid_range":{"max":null,"min":0}},{"name":"Tb","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Turbine lag time constant, sec","valid_range":{"max":null,"min":0}},{"name":"Tc","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Turbine lead time constant, sec","valid_range":{"max":null,"min":0}},{"name":"T_eng","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Transport lag time constant for diesel engine, sec","valid_range":{"max":null,"min":0}},{"name":"Tf_load","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Load limiter time constant","valid_range":{"max":null,"min":0}},{"name":"Kp_load","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Load limiter proportional gain for PI controller","valid_range":{"max":null,"min":0}},{"name":"Ki_load","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Load integral gain for PI controller","valid_range":{"max":null,"min":0}},{"name":"Ld_ref","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Load limiter integral gain for PI controller","valid_range":{"max":null,"min":0}},{"name":"Dm","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Mechanical damping coefficient, pu","valid_range":{"max":null,"min":0}},{"name":"R_open","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Maximum valve opening rate, pu/sec","valid_range":{"max":null,"min":0}},{"name":"R_close","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Maximum valve closing rate, pu/sec","valid_range":{"max":null,"min":0}},{"name":"Ki_mw","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Power controller (reset) gain","valid_range":{"max":null,"min":0}},{"name":"A_set","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Acceleration limiter setpoint, pu/sec","valid_range":{"max":null,"min":0}},{"name":"Ka","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Acceleration limiter gain","valid_range":{"max":null,"min":0}},{"name":"Ta","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Acceleration limiter time constant ","valid_range":{"max":null,"min":"eps()"}},{"name":"T_rate","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Turbine rating","valid_range":{"max":null,"min":0}},{"name":"db","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Speed governor deadband","valid_range":{"max":null,"min":0}},{"name":"Tsa","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Temperature detection lead time constant","valid_range":{"max":null,"min":0}},{"name":"Tsb","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Temperature detection lag time constant","valid_range":{"max":null,"min":0}},{"name":"R_lim","data_type":"UpDown","null_value":"(up = 0.0, down = 0.0)","comment":"Maximum rate of load increa"},{"name":"P_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Power Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the GGOV1 model are:\n\tPe: Machine Electrical Power Measurement,\n\tx_g1: Governor differential control,\n\tx_g2: Governor integral control, \n\tx_g3: Turbine actuator, \n\tx_g4: Turbine Lead-Lag, \n\tx_g5: Turbine load limiter measurement, \n\tx_g6: Turbine Load Limiter Integral Control, \n\tx_g7: Supervisory Load Control, \n\tx_g8: Acceleration Control, \n\tx_g9 Temperature Detection Lead - Lag:","internal_default":"[:Pe, :x_g1, :x_g2, :x_g3, :x_g4, :x_g5, :x_g6, :x_g7, :x_g8, :x_g9]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"GeneralGovModel has 10 states","internal_default":10},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"GGOV1 has 10 differential states","internal_default":"[StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Differential, StateTypes.Hybrid]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"GE General Governor/Turbine Model. The GeneralGovModel (GGOV1) model is a general purpose governor model used for a variety of prime movers controlled by proportional-integral-derivative (PID) governors including gas turbines.","struct_name":"GeneralGovModel","supertype":"TurbineGov"},{"fields":[{"name":"R","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Droop parameter","valid_range":{"max":0.1,"min":0}},{"name":"T1","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Governor time constant","valid_range":{"max":0.5,"min":"eps()"}},{"name":"valve_position_limits","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Valve position limits"},{"name":"T2","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Lead Lag Lead Time constant ","valid_range":{"max":null,"min":0}},{"name":"T3","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Lead Lag Lag Time constant ","valid_range":{"max":10,"min":"eps()"}},{"name":"D_T","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Turbine Damping","valid_range":{"max":0.5,"min":0}},{"name":"DB_h","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Deadband for overspeed","valid_range":{"max":null,"min":0}},{"name":"DB_l","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Deadband for underspeed","valid_range":{"max":0,"min":null}},{"name":"T_rate","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Turbine Rate (MW). If zero, generator base is used.","valid_range":{"max":null,"min":0}},{"name":"P_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Power Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the SteamTurbineGov1 model are:\n\tx_g1: Valve Opening,\n\tx_g2: Lead-lag state","internal_default":"[:x_g1, :x_g2]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"TGOV1 has 2 states","internal_default":2},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"TGOV1 has 2 differential states","internal_default":"[StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Steam Turbine-Governor. This model considers both TGOV1 or TGOV1DU in PSS/E.","struct_name":"SteamTurbineGov1","supertype":"TurbineGov"},{"fields":[{"name":"R","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Permanent droop parameter","valid_range":{"max":0.1,"min":0}},{"name":"r","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Temporary Droop","valid_range":{"max":2,"min":0}},{"name":"Tr","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Governor time constant","valid_range":{"max":30,"min":"eps()"}},{"valid_range":{"max":0.1,"min":"eps()"},"name":"Tf","data_type":"Float64","null_value":0,"valiation_action":"error","comment":"Filter Time constant"},{"name":"Tg","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Servo time constant","valid_range":{"max":1,"min":"eps()"}},{"name":"VELM","data_type":"Float64","null_value":0,"validation_action":"error","comment":"gate velocity limit","valid_range":{"max":0.3,"min":"eps()"}},{"name":"gate_position_limits","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Gate position limits"},{"name":"Tw","data_type":"Float64","null_value":0,"validation_action":"error","comment":"water time constant","valid_range":{"max":3,"min":"eps()"}},{"name":"At","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Turbine gain","valid_range":{"max":1.5,"min":0.8}},{"name":"D_T","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Turbine Damping","valid_range":{"max":0.5,"min":0}},{"name":"q_nl","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"No-power flow","valid_range":{"max":null,"min":0}},{"name":"P_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Power Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the HydroTurbineGov model are:\n\tx_g1: filter_output,\n\tx_g2: desired gate, \n\tx_g3: gate opening, \n\tx_g4: turbine flow","internal_default":"[:x_g1, :x_g2, :x_g3, :x_g4]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"HYGOV has 4 states","internal_default":4},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"HYGOV has 4 differential states","internal_default":"[StateTypes.Differential, StateTypes.Differential, StateTypes.Differential, StateTypes.Differential]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Hydro Turbine-Governor.","struct_name":"HydroTurbineGov","supertype":"TurbineGov"},{"fields":[{"name":"K","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Governor Gain","valid_range":{"max":30,"min":5}},{"name":"T1","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Input Filter Lag","valid_range":{"max":5,"min":0}},{"name":"T2","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Input Filter Lead","valid_range":{"max":10,"min":0}},{"name":"T3","data_type":"Float64","null_value":0,"validation_action":"error","comment":"Valve position Time Constant","valid_range":{"max":1,"min":"eps()"}},{"name":"U0","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Maximum Valve Opening Rate","valid_range":{"max":0.03,"min":0.01}},{"name":"U_c","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Maximum Valve closing rate","valid_range":{"max":0,"min":-0.3}},{"name":"valve_position_limits","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Valve position limits in MW"},{"name":"T4","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time Constant inlet steam","valid_range":{"max":1,"min":0}},{"name":"K1","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Fraction of high presure shaft power","valid_range":{"max":1,"min":-2}},{"name":"K2","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Fraction of low presure shaft power","valid_range":{"max":null,"min":0}},{"name":"T5","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for second boiler pass","valid_range":{"max":10,"min":0}},{"name":"K3","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Fraction of high presure shaft power second boiler pass","valid_range":{"max":0.5,"min":0}},{"name":"K4","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Fraction of low presure shaft power second boiler pass","valid_range":{"max":0.5,"min":0}},{"name":"T6","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for third boiler pass","valid_range":{"max":10,"min":0}},{"name":"K5","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Fraction of high presure shaft power third boiler pass","valid_range":{"max":0.35,"min":0}},{"name":"K6","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Fraction of low presure shaft power third boiler pass","valid_range":{"max":0.55,"min":0}},{"name":"T7","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Time constant for fourth boiler pass","valid_range":{"max":10,"min":0}},{"name":"K7","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Fraction of high presure shaft power fourth boiler pass","valid_range":{"max":0.3,"min":0}},{"name":"K8","data_type":"Float64","null_value":0,"validation_action":"warn","comment":"Fraction of low presure shaft power fourth boiler pass","valid_range":{"max":0.3,"min":0}},{"name":"P_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Power Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the IEEETurbineGov model are:\n\tx_g1: First Governor integrator,\n\tx_g2: Governor output,\n\tx_g3: First Turbine integrator, \n\tx_g4: Second Turbine Integrator, \n\tx_g5: Third Turbine Integrator, \n\tx_g6: Fourth Turbine Integrator, ","internal_default":"[:x_g1, :x_g2, :x_g3, :x_g4, :x_g5, :x_g6]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"IEEEG1 has 6 states","internal_default":6},{"name":"states_types","data_type":"Vector{StateTypes}","comment":"IEEEG1 has 6 differential states","internal_default":"[StateTypes.Differential, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid, StateTypes.Hybrid]"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"IEEE Type 1 Speed-Governing Model","struct_name":"IEEETurbineGov1","supertype":"TurbineGov"},{"fields":[{"name":"R","data_type":"Float64","null_value":0,"comment":"Droop parameter","valid_range":{"max":null,"min":0}},{"name":"Ts","data_type":"Float64","null_value":0,"comment":"Governor time constant","valid_range":{"max":null,"min":0}},{"name":"Tc","data_type":"Float64","null_value":0,"comment":"Servo time constant","valid_range":{"max":null,"min":0}},{"name":"T3","data_type":"Float64","null_value":0,"comment":"Transient gain time constant","valid_range":{"max":null,"min":0}},{"name":"T4","data_type":"Float64","null_value":0,"comment":"Power fraction time constant","valid_range":{"max":null,"min":0}},{"name":"T5","data_type":"Float64","null_value":0,"comment":"Reheat time constant","valid_range":{"max":null,"min":0}},{"name":"valve_position_limits","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Valve position limits in MW"},{"name":"P_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Power Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the TGTypeI model are:\n\tx_g1: Governor state,\n\tx_g2: Servo state,\n\tx_g3: Reheat state","internal_default":"[:x_g1, :x_g2, :x_g3]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"TGTypeI has 3 states","internal_default":3},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of a Turbine Governor Type I.","struct_name":"TGTypeI","supertype":"TurbineGov"},{"fields":[{"name":"R","data_type":"Float64","null_value":0,"comment":"Droop parameter","valid_range":{"max":null,"min":0}},{"name":"T1","data_type":"Float64","null_value":0,"comment":"Transient gain time constant","valid_range":{"max":null,"min":0}},{"name":"T2","data_type":"Float64","null_value":0,"comment":"Power fraction time constant","valid_range":{"max":null,"min":0}},{"name":"τ_limits","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Power into the governor limits"},{"name":"P_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Power Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the TGTypeI model are:\n\tx_g1: lead-lag state","internal_default":"[:xg]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"TGTypeII has 1 state","internal_default":1},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of a Turbine Governor Type II.","struct_name":"TGTypeII","supertype":"TurbineGov"},{"fields":[{"name":"rated_voltage","data_type":"Float64","null_value":0,"comment":"rated voltage","valid_range":{"max":null,"min":0}},{"name":"rated_current","data_type":"Float64","null_value":0,"comment":"rated VA","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"","internal_default":"Vector{Symbol}()"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"AverageConverter has no states","internal_default":0}],"docstring":"Parameters of an average converter model","struct_name":"AverageConverter","supertype":"Converter"},{"fields":[{"name":"T_g","data_type":"Float64","null_value":0,"comment":"Converter time constant (s)","valid_range":{"max":null,"min":0}},{"name":"Rrpwr","data_type":"Float64","null_value":0,"comment":"Low Voltage Power Logic (LVPL) ramp rate limit (pu/s)","valid_range":{"max":null,"min":0}},{"name":"Brkpt","data_type":"Float64","null_value":0,"comment":"LVPL characteristic voltage 2 (pu)","valid_range":{"max":null,"min":0}},{"name":"Zerox","data_type":"Float64","null_value":0,"comment":"LVPL characteristic voltage 1 (pu)","valid_range":{"max":null,"min":0}},{"name":"Lvpl1","data_type":"Float64","null_value":0,"comment":"LVPL gain (pu)","valid_range":{"max":null,"min":0}},{"name":"Vo_lim","data_type":"Float64","null_value":0,"comment":"Voltage limit for high voltage reactive current management (pu)","valid_range":{"max":null,"min":0}},{"name":"Lv_pnts","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Voltage points for low voltage active current management (pu) (Lvpnt0, Lvpnt1)"},{"name":"Io_lim","data_type":"Float64","null_value":0,"comment":"Current limit (pu) for high voltage reactive current management (specified as a negative value)","valid_range":{"max":0,"min":null}},{"name":"T_fltr","data_type":"Float64","null_value":0,"comment":"Voltage filter time constant for low voltage active current management (s)","valid_range":{"max":null,"min":0}},{"name":"K_hv","data_type":"Float64","null_value":0,"comment":"Overvoltage compensation gain used in the high voltage reactive current management","valid_range":{"max":null,"min":0}},{"name":"Iqr_lims","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limit on rate of change for reactive current (pu/s) (Iqr_min, Iqr_max)"},{"name":"Accel","data_type":"Float64","null_value":0,"comment":"Acceleration factor","valid_range":{"max":1,"min":0}},{"name":"Lvpl_sw","data_type":"Int","null_value":0,"comment":"Low voltage power logic (LVPL) switch. (0: LVPL not present, 1: LVPL present)","valid_range":{"max":1,"min":0}},{"name":"Q_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Initial machine reactive power from power flow","valid_range":{"max":null,"min":0}},{"name":"R_source","default":"0.0","data_type":"Float64","null_value":0,"comment":"Output resistor used for the Thevenin Equivalent","valid_range":{"max":null,"min":0}},{"name":"X_source","default":"1.0e5","data_type":"Float64","null_value":0,"comment":"Output resistor used for the Thevenin Equivalent","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\tIp: Converter lag for Ipcmd,\tIq: Converter lag for Iqcmd,\tVmeas: Voltage filter for low voltage active current management","internal_default":"[:Ip, :Iq, :Vmeas]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"RenewableEnergyConverterTypeA has 3 states","internal_default":3}],"docstring":"Parameters of a renewable energy generator/converter model, this model corresponds to REGCA1 in PSSE","struct_name":"RenewableEnergyConverterTypeA","supertype":"Converter"},{"fields":[{"name":"T_g","data_type":"Float64","null_value":0,"comment":"Converter time constant (s)","valid_range":{"max":null,"min":0}},{"name":"Rrpwr","data_type":"Float64","null_value":0,"comment":"Low Voltage Power Logic (LVPL) ramp rate limit (pu/s)","valid_range":{"max":null,"min":0}},{"name":"Brkpt","data_type":"Float64","null_value":0,"comment":"LVPL characteristic voltage 2 (pu)","valid_range":{"max":null,"min":0}},{"name":"Zerox","data_type":"Float64","null_value":0,"comment":"LVPL characteristic voltage 1 (pu)","valid_range":{"max":null,"min":0}},{"name":"Lvpl1","data_type":"Float64","null_value":0,"comment":"LVPL gain (pu)","valid_range":{"max":null,"min":0}},{"name":"Vo_lim","data_type":"Float64","null_value":0,"comment":"Voltage limit for high voltage reactive current management (pu)","valid_range":{"max":null,"min":0}},{"name":"Lv_pnts","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Voltage points for low voltage active current management (pu) (Lvpnt0, Lvpnt1)"},{"name":"Io_lim","data_type":"Float64","null_value":0,"comment":"Current limit (pu) for high voltage reactive current management (specified as a negative value)","valid_range":{"max":0,"min":null}},{"name":"T_fltr","data_type":"Float64","null_value":0,"comment":"Voltage filter time constant for low voltage active current management (s)","valid_range":{"max":null,"min":0}},{"name":"K_hv","data_type":"Float64","null_value":0,"comment":"Overvoltage compensation gain used in the high voltage reactive current management","valid_range":{"max":null,"min":0}},{"name":"Iqr_lims","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limit on rate of change for reactive current (pu/s) (Iqr_min, Iqr_max)"},{"name":"Accel","data_type":"Float64","null_value":0,"comment":"Acceleration factor","valid_range":{"max":1,"min":0}},{"name":"Lvpl_sw","data_type":"Int","null_value":0,"comment":"Low voltage power logic (LVPL) switch. (0: LVPL not present, 1: LVPL present)","valid_range":{"max":1,"min":0}},{"name":"Q_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Initial machine reactive power from power flow","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states are:\tIp: Converter lag for Ipcmd,\tIq: Converter lag for Iqcmd,\tVmeas: Voltage filter for low voltage active current management","internal_default":"[:Ip, :Iq, :Vmeas]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"RenewableEnergyVoltageConverterTypeA has 3 states","internal_default":3}],"docstring":"Parameters of a renewable energy generator/converter model, this model corresponds to REGCA1 in PSSE, but to be interfaced using a Voltage Source instead of a Current Source.","struct_name":"RenewableEnergyVoltageConverterTypeA","supertype":"Converter"},{"fields":[{"name":"voltage","data_type":"Float64","null_value":0,"comment":"rated VA","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"","internal_default":"Vector{Symbol}()"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"FixedDCSource has no states","internal_default":0},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of a Fixed DC Source that returns a fixed DC voltage","struct_name":"FixedDCSource","supertype":"DCSource"},{"fields":[{"name":"rated_voltage","data_type":"Float64","null_value":0,"comment":"rated voltage","valid_range":{"max":null,"min":0}},{"name":"rated_current","data_type":"Float64","null_value":0,"comment":"rated current","valid_range":{"max":null,"min":0}},{"name":"battery_voltage","data_type":"Float64","null_value":0,"comment":"battery voltage","valid_range":{"max":null,"min":0}},{"name":"battery_resistance","data_type":"Float64","null_value":0,"comment":"battery_resistance","valid_range":{"max":null,"min":0}},{"name":"dc_dc_inductor","data_type":"Float64","null_value":0,"comment":"DC/DC inductance","valid_range":{"max":null,"min":0}},{"name":"dc_link_capacitance","data_type":"Float64","null_value":0,"comment":"DC-link capacitor","valid_range":{"max":null,"min":0}},{"name":"fs","data_type":"Float64","null_value":0,"comment":"DC/DC converter switching frequency","valid_range":{"max":null,"min":0}},{"name":"kpv","data_type":"Float64","null_value":0,"comment":"voltage controller proportional gain","valid_range":{"max":null,"min":0}},{"name":"kiv","data_type":"Float64","null_value":0,"comment":"voltage controller integral gain","valid_range":{"max":null,"min":0}},{"name":"kpi","data_type":"Float64","null_value":0,"comment":"current controller proportional gain","valid_range":{"max":null,"min":0}},{"name":"kii","data_type":"Float64","null_value":0,"comment":"current controller integral gain","valid_range":{"max":null,"min":0}},{"name":"Vdc_ref","default":"1.1","data_type":"Float64","null_value":0,"comment":"Reference DC-Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the ZeroOrderBESS model are:\n\tv_dc: DC-link votlage,\n\ti_b: Battery current,\n\t ν: integrator state of the voltage controller,\n\t ζ: integrator state of the PI current controller","internal_default":"[:v_dc, :i_b, :ν, :ζ]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"ZeroOrderBESS has 4 states","internal_default":4}],"docstring":"Parameters for the DC-side with a Battery Energy Storage System from paper at https://arxiv.org/abs/2007.11776","struct_name":"ZeroOrderBESS","supertype":"DCSource"},{"fields":[{"name":"lf","data_type":"Float64","null_value":0,"comment":"Series inductance in p.u. of converter filter","valid_range":{"max":null,"min":0}},{"name":"rf","data_type":"Float64","null_value":0,"comment":"Series resistance in p.u. of converter filter","valid_range":{"max":null,"min":0}},{"name":"cf","data_type":"Float64","null_value":0,"comment":"Shunt capacitance in p.u. of converter filter","valid_range":{"max":null,"min":0}},{"name":"lg","data_type":"Float64","null_value":0,"comment":"Series inductance in p.u. of converter filter to the grid","valid_range":{"max":null,"min":0}},{"name":"rg","data_type":"Float64","null_value":0,"comment":"Series resistance in p.u. of converter filter to the grid","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the LCLFilter model are:\n\tir_cnv: Real current out of the converter,\n\tii_cnv: Imaginary current out of the converter,\n\tvr_filter: Real voltage at the filter's capacitor,\n\tvi_filter: Imaginary voltage at the filter's capacitor,\n\tir_filter: Real current out of the filter,\n\tii_filter: Imaginary current out of the filter","internal_default":"[:ir_cnv, :ii_cnv, :vr_filter, :vi_filter, :ir_filter, :ii_filter]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"LCLFilter has 6 states","internal_default":6}],"docstring":"Parameters of a LCL filter outside the converter, the states are in the grid's reference frame","struct_name":"LCLFilter","supertype":"Filter"},{"fields":[{"name":"lf","data_type":"Float64","null_value":0,"comment":"filter inductance","valid_range":{"max":null,"min":0}},{"name":"rf","data_type":"Float64","null_value":0,"comment":"filter resistance","valid_range":{"max":null,"min":0}},{"name":"cf","data_type":"Float64","null_value":0,"comment":"filter capacitance","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the LCFilter model are:\n\tir_filter: Real current out of the filter,\n\tii_filter: Imaginary current out of the filter","internal_default":"[:ir_filter, :ii_filter]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"LCFilter has two states","internal_default":2}],"docstring":"Parameters of a LCL filter outside the converter","struct_name":"LCFilter","supertype":"Filter"},{"fields":[{"name":"rf","data_type":"Float64","null_value":0,"comment":"Series resistance in p.u. of converter filter to the grid","valid_range":{"max":null,"min":0}},{"name":"lf","data_type":"Float64","null_value":0,"comment":"Series inductance in p.u. of converter filter to the grid","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"RLFilter has zero states","internal_default":"Vector{Symbol}()"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"RLFilter has zero states","internal_default":0}],"docstring":"Parameters of RL series filter in algebraic representation","struct_name":"RLFilter","supertype":"Filter"},{"fields":[{"name":"ω_lp","data_type":"Float64","null_value":0,"comment":"PLL low-pass filter frequency (rad/sec)","valid_range":{"max":null,"min":0}},{"name":"kp_pll","data_type":"Float64","null_value":0,"comment":"PLL proportional gain","valid_range":{"max":null,"min":0}},{"name":"ki_pll","data_type":"Float64","null_value":0,"comment":"PLL integral gain","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the KauraPLL model are:\n\tvd_pll: d-axis of the measured voltage in the PLL synchronous reference frame (SRF),\n\tvq_pll: q-axis of the measured voltage in the PLL SRF,\n\tε_pll: Integrator state of the PI controller,\n\tθ_pll: Phase angle displacement in the PLL SRF","internal_default":"[:vd_pll, :vq_pll, :ε_pll, :θ_pll]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"KauraPLL has 4 states","internal_default":4}],"docstring":"Parameters of a Phase-Locked Loop (PLL) based on Kaura, Vikram, and Vladimir Blasko.\n\"Operation of a phase locked loop system under distorted utility conditions.\"\nIEEE Transactions on Industry applications 33.1 (1997): 58-63.","struct_name":"KauraPLL","supertype":"FrequencyEstimator"},{"fields":[{"name":"ω_lp","data_type":"Float64","null_value":0,"comment":"PLL low-pass filter frequency (rad/sec)","valid_range":{"max":null,"min":0}},{"name":"kp_pll","data_type":"Float64","null_value":0,"comment":"PLL proportional gain","valid_range":{"max":null,"min":0}},{"name":"ki_pll","data_type":"Float64","null_value":0,"comment":"PLL integral gain","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the ReducedOrderPLL model are:\n\tvq_pll: q-axis of the measured voltage in the PLL synchronous reference frame (SRF),\n\tε_pll: Integrator state of the PI controller,\n\tθ_pll: Phase angle displacement in the PLL SRF","internal_default":"[:vq_pll, :ε_pll, :θ_pll]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"ReducedOrderPLL has 3 states","internal_default":3}],"docstring":"Parameters of a Phase-Locked Loop (PLL) based on Purba, Dhople, Jafarpour, Bullo and Johnson.\n\"Reduced-order Structure-preserving Model for Parallel-connected Three-phase Grid-tied Inverters.\"\n2017 IEEE 18th Workshop on Control and Modeling for Power Electronics (COMPEL): 1-7.","struct_name":"ReducedOrderPLL","supertype":"FrequencyEstimator"},{"fields":[{"name":"frequency","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference used"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"FixedFrequency has no states","internal_default":"Vector{Symbol}()"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"FixedFrequency has no states","internal_default":0}],"docstring":"Parameters of a Fixed Frequency Estimator (i.e. no PLL).","struct_name":"FixedFrequency","supertype":"FrequencyEstimator"},{"fields":[{"name":"Ta","data_type":"Float64","null_value":0,"comment":"VSM inertia constant","valid_range":{"max":null,"min":0}},{"name":"kd","data_type":"Float64","null_value":0,"comment":"VSM damping constant","valid_range":{"max":null,"min":0}},{"name":"kω","data_type":"Float64","null_value":0,"comment":"frequency droop gain","valid_range":{"max":null,"min":0}},{"name":"P_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Power Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the VirtualInertia model are:\n\tθ_oc: Phase angle displacement of the virtual synchronous generator model\n\tω_oc: Speed of the rotating reference frame of the virtual synchronous generator model","internal_default":"[:θ_oc, :ω_oc]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"VirtualInertia has two states","internal_default":2}],"docstring":"Parameters of a Virtual Inertia with SRF using VSM for active power controller","struct_name":"VirtualInertia","supertype":"ActivePowerControl"},{"fields":[{"name":"Rp","data_type":"Float64","null_value":0,"comment":"Droop Gain","valid_range":{"max":null,"min":0}},{"name":"ωz","data_type":"Float64","null_value":0,"comment":"filter frequency cutoff","valid_range":{"max":null,"min":0}},{"name":"P_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Power Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the ActivePowerDroop model are:\n\tθ_oc: Phase angle displacement of the inverter model,\n\tp_oc: Measured active power of the inverter model","internal_default":"[:θ_oc, :p_oc]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"ActivePowerDroop has two states","internal_default":2}],"docstring":"Parameters of an Active Power droop controller","struct_name":"ActivePowerDroop","supertype":"ActivePowerControl"},{"fields":[{"name":"Kp_p","data_type":"Float64","null_value":0,"comment":"Proportional Gain","valid_range":{"max":null,"min":0}},{"name":"Ki_p","data_type":"Float64","null_value":0,"comment":"Integral Gain","valid_range":{"max":null,"min":0}},{"name":"ωz","data_type":"Float64","null_value":0,"comment":"filter frequency cutoff","valid_range":{"max":null,"min":0}},{"name":"P_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Power Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the ActivePowerPI model are:\n\tσp_oc: Integrator state of the PI Controller,\n\tp_oc: Measured active power of the inverter model","internal_default":"[:σp_oc, :p_oc]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"ActivePowerPI has two states","internal_default":2}],"docstring":"Parameters of a Proportional-Integral Active Power controller for a specified power reference","struct_name":"ActivePowerPI","supertype":"ActivePowerControl"},{"fields":[{"name":"k1","data_type":"Float64","null_value":0,"comment":"VOC Synchronization Gain","valid_range":{"max":null,"min":0}},{"name":"ψ","data_type":"Float64","null_value":0,"comment":"Rotation angle of the controller","valid_range":{"max":null,"min":0}},{"name":"P_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Power Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the ActiveVirtualOscillator model are:\n\tθ_oc: Phase angle displacement of the inverter model","internal_default":"[:θ_oc]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"ActiveVirtualOscillator has one state","internal_default":1}],"docstring":"Parameters of an Active Virtual Oscillator controller. Model is based from the paper Model Reduction for Inverters with Current Limiting and Dispatchable Virtual Oscillator Control by O. Ajala et al.","struct_name":"ActiveVirtualOscillator","supertype":"ActivePowerControl"},{"fields":[{"name":"bus_control","data_type":"Int","null_value":0,"comment":"Bus Number for voltage control; ","valid_range":{"max":null,"min":0}},{"name":"from_branch_control","data_type":"Int","null_value":0,"comment":"Monitored branch FROM bus number for line drop compensation (if 0 generator power will be used)","valid_range":{"max":null,"min":0}},{"name":"to_branch_control","data_type":"Int","null_value":0,"comment":"Monitored branch TO bus number for line drop compensation (if 0 generator power will be used)","valid_range":{"max":null,"min":0}},{"name":"branch_id_control","data_type":"String","null_value":0,"comment":"Branch circuit id for line drop compensation (as a string). If 0 generator power will be used"},{"name":"Freq_Flag","data_type":"Int","null_value":0,"comment":"Frequency Flag for REPCA1: 0: disable, 1:enable","valid_range":{"max":1,"min":0}},{"name":"K_pg","data_type":"Float64","null_value":0,"comment":"Active power PI control proportional gain","valid_range":{"max":null,"min":0}},{"name":"K_ig","data_type":"Float64","null_value":0,"comment":"Active power PI control integral gain","valid_range":{"max":null,"min":0}},{"name":"T_p","data_type":"Float64","null_value":0,"comment":"Real power measurement filter time constant (s)","valid_range":{"max":null,"min":0}},{"name":"fdbd_pnts","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Frequency error dead band thresholds `(fdbd1, fdbd2)`"},{"name":"fe_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Upper/Lower limit on frequency error `(fe_min, fe_max)`"},{"name":"P_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Upper/Lower limit on power reference `(P_min, P_max)`"},{"name":"T_g","data_type":"Float64","null_value":0,"comment":"Power Controller lag time constant","valid_range":{"max":null,"min":0}},{"name":"D_dn","data_type":"Float64","null_value":0,"comment":"Droop for over-frequency conditions","valid_range":{"max":0,"min":null}},{"name":"D_up","data_type":"Float64","null_value":0,"comment":"Droop for under-frequency conditions","valid_range":{"max":null,"min":0}},{"name":"dP_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Upper/Lower limit on power reference ramp rates`(dP_min, dP_max)`"},{"name":"P_lim_inner","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Upper/Lower limit on power reference for REECB`(P_min_inner, P_max_inner)`"},{"name":"T_pord","data_type":"Float64","null_value":0,"comment":"Power filter time constant REECB time constant","valid_range":{"max":null,"min":0}},{"name":"P_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Power Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the ActiveRenewableControllerAB model depends on the Flag","internal_default":"PowerSystems.get_activeRETypeAB_states(Freq_Flag)[1]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"The states of the ActiveRenewableControllerAB model depends on the Flag","internal_default":"PowerSystems.get_activeRETypeAB_states(Freq_Flag)[2]"}],"docstring":"Parameters of Active Power Controller including REPCA1 and REECB1","struct_name":"ActiveRenewableControllerAB","supertype":"ActivePowerControl"},{"fields":[{"name":"bus_control","data_type":"Int","null_value":0,"comment":"Bus Number for voltage control; ","valid_range":{"max":null,"min":0}},{"name":"from_branch_control","data_type":"Int","null_value":0,"comment":"Monitored branch FROM bus number for line drop compensation (if 0 generator power will be used)","valid_range":{"max":null,"min":0}},{"name":"to_branch_control","data_type":"Int","null_value":0,"comment":"Monitored branch TO bus number for line drop compensation (if 0 generator power will be used)","valid_range":{"max":null,"min":0}},{"name":"branch_id_control","data_type":"String","null_value":0,"comment":"Branch circuit id for line drop compensation (as a string). If 0 generator power will be used"},{"name":"VC_Flag","data_type":"Int","null_value":0,"comment":"Voltage Compensator Flag for REPCA1","valid_range":{"max":1,"min":0}},{"name":"Ref_Flag","data_type":"Int","null_value":0,"comment":"Flag for Reactive Power Control for REPCA1. 0: Q-control, 1: V-control","valid_range":{"max":1,"min":0}},{"name":"PF_Flag","data_type":"Int","null_value":0,"comment":"Flag for Power Factor Control for Outer Control of REECB1. 0: Q-control, 1: Power Factor Control","valid_range":{"max":1,"min":0}},{"name":"V_Flag","data_type":"Int","null_value":0,"comment":"Flag for Voltage Control for Outer Control of REECB1. 0: Voltage Control, 1: Q-Control","valid_range":{"max":1,"min":0}},{"name":"T_fltr","data_type":"Float64","null_value":0,"comment":"Voltage or Q-power of REPCA Filter Time Constant","valid_range":{"max":null,"min":0}},{"name":"K_p","data_type":"Float64","null_value":0,"comment":"Reactive power PI control proportional gain","valid_range":{"max":null,"min":0}},{"name":"K_i","data_type":"Float64","null_value":0,"comment":"Reactive power PI control integral gain","valid_range":{"max":null,"min":0}},{"name":"T_ft","data_type":"Float64","null_value":0,"comment":"Reactive power lead time constant (s)","valid_range":{"max":null,"min":0}},{"name":"T_fv","data_type":"Float64","null_value":0,"comment":"Reactive power lag time constant (s)","valid_range":{"max":null,"min":0}},{"name":"V_frz","data_type":"Float64","null_value":0,"comment":"Voltage below which state ξq_oc (integrator state) is freeze","valid_range":{"max":null,"min":0}},{"name":"R_c","data_type":"Float64","null_value":0,"comment":"Line drop compensation resistance (used when VC_Flag = 1)","valid_range":{"max":null,"min":0}},{"name":"X_c","data_type":"Float64","null_value":0,"comment":"Line drop compensation reactance (used when VC_Flag = 1)","valid_range":{"max":null,"min":0}},{"name":"K_c","data_type":"Float64","null_value":0,"comment":"Reactive current compensation gain (pu) (used when VC_Flag = 0)","valid_range":{"max":null,"min":0}},{"name":"e_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Upper/Lower limit on Voltage or Q-power deadband output `(e_min, e_max)`"},{"name":"dbd_pnts","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Voltage or Q-power error dead band thresholds `(dbd1, dbd2)`"},{"name":"Q_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Upper/Lower limit on reactive power V/Q control in REPCA `(Q_min, Q_max)`"},{"name":"T_p","data_type":"Float64","null_value":0,"comment":"Active power lag time constant in REECB (s). Used only when PF_Flag = 1","valid_range":{"max":null,"min":0}},{"name":"Q_lim_inner","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Upper/Lower limit on reactive power input in REECB `(Q_min_inner, Q_max_inner)`. Only used when V_Flag = 1"},{"name":"V_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Upper/Lower limit on reactive power PI controller in REECB `(V_min, V_max)`. Only used when V_Flag = 1"},{"name":"K_qp","data_type":"Float64","null_value":0,"comment":"Reactive power regulator proportional gain (used when V_Flag = 1)","valid_range":{"max":null,"min":0}},{"name":"K_qi","data_type":"Float64","null_value":0,"comment":"Reactive power regulator integral gain (used when V_Flag = 1)","valid_range":{"max":null,"min":0}},{"name":"Q_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Power Set-point","valid_range":{"max":null,"min":0}},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the ReactiveRenewableControllerAB model depends on the Flag","internal_default":"PowerSystems.get_reactiveRETypeAB_states(Ref_Flag, PF_Flag, V_Flag)[1]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"The states of the ReactiveRenewableControllerAB model depends on the Flag","internal_default":"PowerSystems.get_reactiveRETypeAB_states(Ref_Flag, PF_Flag, V_Flag)[2]"}],"docstring":"Parameters of Reactive Power Controller including REPCA1 and REECB1","struct_name":"ReactiveRenewableControllerAB","supertype":"ReactivePowerControl"},{"fields":[{"name":"kq","data_type":"Float64","null_value":0,"comment":"frequency droop gain","valid_range":{"max":null,"min":0}},{"name":"ωf","data_type":"Float64","null_value":0,"comment":"filter frequency cutoff","valid_range":{"max":null,"min":0}},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the ReactivePowerDroop model are:\n\tq_oc: Filtered reactive output power","internal_default":"[:q_oc]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"ReactivePowerDroop has 1 state","internal_default":1}],"docstring":"Parameters of a Reactive Power droop controller","struct_name":"ReactivePowerDroop","supertype":"ReactivePowerControl"},{"fields":[{"name":"Kp_q","data_type":"Float64","null_value":0,"comment":"Proportional Gain","valid_range":{"max":null,"min":0}},{"name":"Ki_q","data_type":"Float64","null_value":0,"comment":"Integral Gain","valid_range":{"max":null,"min":0}},{"name":"ωf","data_type":"Float64","null_value":0,"comment":"filter frequency cutoff","valid_range":{"max":null,"min":0}},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"Q_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reactive Power Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the ReactivePowerPI model are:\n\tσq_oc: Integrator state of the PI Controller,\n\tq_oc: Measured reactive power of the inverter model","internal_default":"[:σq_oc, :q_oc]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"ReactivePowerPI has two states","internal_default":2}],"docstring":"Parameters of a Proportional-Integral Reactive Power controller for a specified power reference","struct_name":"ReactivePowerPI","supertype":"ReactivePowerControl"},{"fields":[{"name":"k2","data_type":"Float64","null_value":0,"comment":"VOC voltage-amplitude control gain","valid_range":{"max":null,"min":0}},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Voltage Set-point","valid_range":{"max":null,"min":0}},{"name":"Q_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference Reactive Power Set-point","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the ReactiveVirtualOscilator model are:\n\tE_oc: voltage reference state for inner control in the d-axis","internal_default":"[:E_oc]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"ReactiveVirtualOscillator has 1 state","internal_default":1}],"docstring":"Parameters of a Reactive Virtual Oscillator controller. Model is based from the paper Model Reduction for Inverters with Current Limiting and Dispatchable Virtual Oscillator Control by O. Ajala et al.","struct_name":"ReactiveVirtualOscillator","supertype":"ReactivePowerControl"},{"fields":[{"name":"kpv","data_type":"Float64","null_value":0,"comment":"voltage controller proportional gain","valid_range":{"max":null,"min":0}},{"name":"kiv","data_type":"Float64","null_value":0,"comment":"voltage controller integral gain","valid_range":{"max":null,"min":0}},{"name":"kffv","data_type":"Float64","null_value":0,"comment":"Binary variable to enable feed-forward gain of voltage.","valid_range":{"max":null,"min":0}},{"name":"rv","data_type":"Float64","null_value":0,"comment":"virtual resistance","valid_range":{"max":null,"min":0}},{"name":"lv","data_type":"Float64","null_value":0,"comment":"virtual inductance","valid_range":{"max":null,"min":0}},{"name":"kpc","data_type":"Float64","null_value":0,"comment":"current controller proportional gain","valid_range":{"max":null,"min":0}},{"name":"kic","data_type":"Float64","null_value":0,"comment":"current controller integral gain","valid_range":{"max":null,"min":0}},{"name":"kffi","data_type":"Float64","null_value":0,"comment":"Binary variable to enable feed-forward gain of current","valid_range":{"max":null,"min":0}},{"name":"ωad","data_type":"Float64","null_value":0,"comment":"active damping filter cutoff frequency (rad/sec)","valid_range":{"max":null,"min":0}},{"name":"kad","data_type":"Float64","null_value":0,"comment":"active damping gain","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the VoltageModeControl model are:\n\tξd_ic: d-axis integrator state of the PI voltage controller,\n\tξq_ic: q-axis integrator state of the PI voltage controller,\n\tγd_ic: d-axis integrator state of the PI current controller,\n\tγq_ic: q-axis integrator state of the PI current controller,\n\tϕd_ic: d-axis low-pass filter of active damping,\n\tϕq_ic: q-axis low-pass filter of active damping","internal_default":"[:ξd_ic, :ξq_ic, :γd_ic, :γq_ic, :ϕd_ic, :ϕq_ic]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"VoltageModeControl has 6 states","internal_default":6}],"docstring":"Parameters of an inner loop current control PID using virtual impedance based on D'Arco, Suul and Fosso.\n\"A Virtual Synchronous Machine implementation for distributed control of power converters in SmartGrids.\"\nElectric Power Systems Research 122 (2015) 180–197.","struct_name":"VoltageModeControl","supertype":"InnerControl"},{"fields":[{"name":"kpc","data_type":"Float64","null_value":0,"comment":"Current controller proportional gain","valid_range":{"max":null,"min":0}},{"name":"kic","data_type":"Float64","null_value":0,"comment":"Current controller integral gain","valid_range":{"max":null,"min":0}},{"name":"kffv","data_type":"Float64","null_value":0,"comment":"Gain to enable feed-forward gain of voltage.","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the CurrentModeControl model are:\n\tγd_ic: d-axis integrator state of the PI current controller,\n\tγq_ic: q-axis integrator state of the PI current controller","internal_default":"[:γd_ic, :γq_ic]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"CurrentControl has 2 states","internal_default":2}],"docstring":"Parameters of an inner loop PI current control using based on Purba, Dhople, Jafarpour, Bullo and Johnson.\n\"Reduced-order Structure-preserving Model for Parallel-connected Three-phase Grid-tied Inverters.\"\n2017 IEEE 18th Workshop on Control and Modeling for Power Electronics (COMPEL): 1-7.","struct_name":"CurrentModeControl","supertype":"InnerControl"},{"fields":[{"name":"Q_Flag","data_type":"Int","null_value":0,"comment":"Q Flag used for I_qinj","valid_range":{"max":1,"min":0}},{"name":"PQ_Flag","data_type":"Int","null_value":0,"comment":"PQ Flag used for the Current Limit Logic","valid_range":{"max":1,"min":0}},{"name":"Vdip_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limits for Voltage Dip Logic `(Vdip, Vup)`"},{"name":"T_rv","data_type":"Float64","null_value":0,"comment":"Voltage Filter Time Constant","valid_range":{"max":null,"min":0}},{"name":"dbd_pnts","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Voltage error deadband thresholds `(dbd1, dbd2)`"},{"name":"K_qv","data_type":"Float64","null_value":0,"comment":"Reactive current injection gain during over and undervoltage conditions","valid_range":{"max":null,"min":0}},{"name":"Iqinj_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limits for Iqinj `(I_qh1, I_ql1)`"},{"name":"V_ref0","data_type":"Float64","null_value":0,"comment":"User defined reference. If 0, PSID initializes to initial terminal voltage","valid_range":{"max":null,"min":0}},{"name":"K_vp","data_type":"Float64","null_value":0,"comment":"Voltage regulator proportional gain (used when QFlag = 1)","valid_range":{"max":null,"min":0}},{"name":"K_vi","data_type":"Float64","null_value":0,"comment":"Voltage regulator integral gain (used when QFlag = 1)","valid_range":{"max":null,"min":0}},{"name":"T_iq","data_type":"Float64","null_value":0,"comment":"Time constant for low-pass filter for state q_V when QFlag = 0","valid_range":{"max":null,"min":0}},{"name":"I_max","data_type":"Float64","null_value":0,"comment":"Maximum limit on total converter current","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of the RECurrentControlB depends on the Flags","internal_default":"PowerSystems.get_REControlB_states(Q_Flag)"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"The states of the RECurrentControlB depends on the Flags","internal_default":"2"}],"docstring":"Parameters of the Inner Control part of the REECB model in PSS/E","struct_name":"RECurrentControlB","supertype":"InnerControl"},{"fields":[{"name":"I_max","data_type":"Float64","null_value":0,"comment":"Maximum limit on current controller input current (device base)","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"}],"docstring":"Parameters of Magnitude (Circular) Current Controller Limiter","struct_name":"MagnitudeCurrentLimiter","supertype":"InverterLimiter"},{"fields":[{"name":"Id_max","data_type":"Float64","null_value":0,"comment":"Maximum limit on d-axis current controller input current (device base)","valid_range":{"max":null,"min":0}},{"name":"Iq_max","data_type":"Float64","null_value":0,"comment":"Maximum limit on d-axis current controller input current (device base)","valid_range":{"max":null,"min":0}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"}],"docstring":"Parameters of Instantaneous (Square) Current Controller Limiter","struct_name":"InstantaneousCurrentLimiter","supertype":"InverterLimiter"},{"fields":[{"name":"I_max","data_type":"Float64","null_value":0,"comment":"Maximum limit on current controller input current (device base)","valid_range":{"max":null,"min":0}},{"name":"ϕ_I","data_type":"Float64","null_value":0,"comment":"Pre-defined angle (measured against the d-axis) for Iref once limit is hit","valid_range":{"max":1.571,"min":-1.571}},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"}],"docstring":"Parameters of Priority-Based Current Controller Limiter","struct_name":"PriorityCurrentLimiter","supertype":"InverterLimiter"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"Pf_Flag","data_type":"Int","null_value":0,"comment":"Flag for Power Factor Control","valid_range":{"max":1,"min":0}},{"name":"Freq_Flag","data_type":"Int","null_value":0,"comment":"Flag to enable/disable frequency control","valid_range":{"max":1,"min":0}},{"name":"PQ_Flag","data_type":"Int","null_value":0,"comment":"Flag used to enforce maximum current","valid_range":{"max":1,"min":0}},{"name":"Gen_Flag","data_type":"Int","null_value":0,"comment":"Flag to specify generator or storage","valid_range":{"max":1,"min":0}},{"name":"Vtrip_Flag","data_type":"Int","null_value":0,"comment":"Flag to enable/disable voltage trip logic","valid_range":{"max":1,"min":0}},{"name":"Ftrip_Flag","data_type":"Int","null_value":0,"comment":"Flag to enable/disable frequency trip logic","valid_range":{"max":1,"min":0}},{"name":"T_rv","data_type":"Float64","null_value":0,"comment":"Voltage measurement transducer time constant","valid_range":{"max":null,"min":0}},{"name":"Trf","data_type":"Float64","null_value":0,"comment":"Frequency measurement transducer time constant","valid_range":{"max":null,"min":0}},{"name":"dbd_pnts","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Voltage deadband thresholds `(dbd1, dbd2)`"},{"name":"K_qv","data_type":"Float64","null_value":0,"comment":"Proportional voltage control gain (pu)","valid_range":{"max":null,"min":0}},{"name":"Tp","data_type":"Float64","null_value":0,"comment":"Power measurement transducer time constant","valid_range":{"max":null,"min":0}},{"name":"T_iq","data_type":"Float64","null_value":0,"comment":"Time constant for low-pass filter for state q_V when QFlag = 0","valid_range":{"max":null,"min":0}},{"name":"D_dn","data_type":"Float64","null_value":0,"comment":"Reciprocal of droop for over-frequency conditions (>0) (pu)","valid_range":{"max":null,"min":0}},{"name":"D_up","data_type":"Float64","null_value":0,"comment":"Reciprocal of droop for under-frequency conditions <=0) (pu)","valid_range":{"max":null,"min":0}},{"name":"fdbd_pnts","data_type":"Tuple{Float64, Float64}","null_value":"(0.0, 0.0)","comment":"Frequency control deadband thresholds `(fdbd1, fdbd2)`"},{"name":"fe_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Frequency error limits (femin, femax)"},{"name":"P_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Power limits (Pmin, Pmax)"},{"name":"dP_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Power reference ramp rate limits (dPmin, dPmax)"},{"name":"Tpord","data_type":"Float64","null_value":0,"comment":"Power filter time constant","valid_range":{"max":null,"min":0}},{"name":"Kpg","data_type":"Float64","null_value":0,"comment":"PI controller proportional gain (pu)","valid_range":{"max":null,"min":0}},{"name":"Kig","data_type":"Float64","null_value":0,"comment":"PI controller integral gain (pu)","valid_range":{"max":null,"min":0}},{"name":"I_max","data_type":"Float64","null_value":0,"comment":"Maximum limit on total converter current (pu)","valid_range":{"max":null,"min":0}},{"name":"vl_pnts","data_type":"Vector{Tuple{Float64,Float64}}","null_value":"[(0.0, 0.0), (0.0, 0.0)]","comment":"Low voltage cutout points `[(tv10, vl0), (tv11, vl1)]`"},{"name":"vh_pnts","data_type":"Vector{Tuple{Float64,Float64}}","null_value":"[(0.0, 0.0), (0.0, 0.0)]","comment":"High voltage cutout points `[(tvh0, vh0), (tvh1, vh1)]`"},{"name":"Vrfrac","data_type":"Float64","null_value":0,"comment":"Fraction of device that recovers after voltage comes back to within vl1 < V < vh1 (0 <= Vrfrac <= 1)","valid_range":{"max":1,"min":0}},{"name":"fl","data_type":"Float64","null_value":0,"comment":"Inverter frequency break-point for low frequency cut-out (Hz)","valid_range":{"max":null,"min":0}},{"name":"fh","data_type":"Float64","null_value":0,"comment":"Inverter frequency break-point for high frequency cut-out (Hz)","valid_range":{"max":null,"min":0}},{"name":"tfl","data_type":"Float64","null_value":0,"comment":"Low frequency cut-out timer corresponding to frequency fl (s)","valid_range":{"max":null,"min":0}},{"name":"tfh","data_type":"Float64","null_value":0,"comment":"High frequency cut-out timer corresponding to frequency fh (s)","valid_range":{"max":null,"min":0}},{"name":"Tg","data_type":"Float64","null_value":0,"comment":"Current control time constant (to represent behavior of inner control loops) (> 0) (s)","valid_range":{"max":null,"min":0}},{"name":"rrpwr","data_type":"Float64","null_value":0,"comment":"Ramp rate for real power increase following a fault (pu/s)","valid_range":{"max":null,"min":0}},{"name":"Tv","data_type":"Float64","null_value":0,"comment":"Time constant on the output of the multiplier (s)","valid_range":{"max":null,"min":0}},{"name":"Vpr","data_type":"Float64","null_value":0,"comment":"Voltage below which frequency tripping is disabled (pu)","valid_range":{"max":null,"min":0}},{"name":"Iq_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Reactive current injection limits (Iqll, Iqhl)"},{"name":"V_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"User defined voltage reference. If 0, PSID initializes to initial terminal voltage","valid_range":{"max":null,"min":0}},{"name":"Pfa_ref","default":"0.0","data_type":"Float64","null_value":0,"comment":"Reference power factor","valid_range":{"max":null,"min":0}},{"name":"ω_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference frequency","valid_range":{"max":null,"min":0}},{"name":"Q_ref","default":"0.0","data_type":"Float64","null_value":0,"comment":"Reference reactive power, in pu","valid_range":{"max":null,"min":0}},{"name":"P_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference active power, in pu","valid_range":{"max":null,"min":0}},{"name":"base_power","default":"100.0","data_type":"Float64","null_value":0,"comment":"Base power"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of AggregateDistributedGenerationA depends on the Flags","internal_default":"PowerSystems.get_AggregateDistributedGenerationA_states(Freq_Flag)[1]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"The states of AggregateDistributedGenerationA depends on the Flags","internal_default":"PowerSystems.get_AggregateDistributedGenerationA_states(Freq_Flag)[2]"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of the DERA1 model in PSS/E","struct_name":"AggregateDistributedGenerationA","supertype":"DynamicInjection"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"available","data_type":"Bool","null_value":"false"},{"name":"bus","data_type":"ACBus","null_value":"ACBus(nothing)"},{"name":"active_power","data_type":"Float64","null_value":"0.0"},{"name":"reactive_power","data_type":"Float64","null_value":"0.0"},{"name":"R_th","data_type":"Float64","null_value":0,"comment":"Source Thevenin resistance","valid_range":{"max":null,"min":0}},{"name":"X_th","data_type":"Float64","null_value":0,"comment":"Source Thevenin reactance","valid_range":{"max":null,"min":0}},{"name":"internal_voltage","default":"1.0","data_type":"Float64","null_value":0,"comment":"Internal Voltage","valid_range":{"max":null,"min":0}},{"name":"internal_angle","default":"0.0","data_type":"Float64","null_value":0,"comment":"Internal Angle"},{"name":"dynamic_injector","default":"nothing","data_type":"Union{Nothing, DynamicInjection}","exclude_setter":true,"null_value":"nothing","comment":"corresponding dynamic injection device"},{"name":"services","default":"Device[]","data_type":"Vector{Service}","null_value":"Device[]","comment":"Services that this device contributes to"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"This struct acts as an infinity bus.","struct_name":"Source","supertype":"StaticInjection"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"R_th","data_type":"Float64","null_value":0,"comment":"Source Thevenin resistance","valid_range":{"max":null,"min":0}},{"name":"X_th","data_type":"Float64","null_value":0,"comment":"Source Thevenin reactance","valid_range":{"max":null,"min":0}},{"name":"internal_voltage_bias","default":"0.0","data_type":"Float64","null_value":0,"comment":"a0 term of the Fourier Series for the voltage"},{"name":"internal_voltage_frequencies","default":"[0.0]","data_type":"Vector{Float64}","null_value":[0],"comment":"Frequencies in radians/s"},{"name":"internal_voltage_coefficients","default":"[(0.0, 0.0)]","data_type":"Vector{Tuple{Float64,Float64}}","null_value":"[(0.0, 0.0)]","comment":"Coefficients for terms n > 1. First component corresponds to sin and second component to cos"},{"name":"internal_angle_bias","default":"0.0","data_type":"Float64","null_value":0,"comment":"a0 term of the Fourier Series for the angle"},{"name":"internal_angle_frequencies","default":"[0.0]","data_type":"Vector{Float64}","null_value":[0],"comment":"Frequencies in radians/s"},{"name":"internal_angle_coefficients","default":"[(0.0, 0.0)]","data_type":"Vector{Tuple{Float64,Float64}}","null_value":"[(0.0, 0.0)]","comment":"Coefficients for terms n > 1. First component corresponds to sin and second component to cos"},{"name":"base_power","default":"100.0","data_type":"Float64","null_value":0,"comment":"Base power"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"State for time, voltage and angle","internal_default":"[:Vt, :θt]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"null_value":2,"internal_default":2},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"This struct acts as an infinity bus with time varying phasor values magnitude and angle V(t) \theta(t). Time varying functions are represented using fourier series","struct_name":"PeriodicVariableSource","supertype":"DynamicInjection"},{"fields":[{"name":"name","data_type":"String","exclude_setter":true,"null_value":"init"},{"name":"Qref_Flag","data_type":"Int","null_value":1,"comment":"Reactive Power Control Mode. 1 VoltVar Control, 2 Constant Q Control, 3 Constant PF Control","valid_range":{"max":3,"min":1}},{"name":"PQ_Flag","data_type":"Int","null_value":0,"comment":"Active and reactive power priority mode. 0 for Q priority, 1 for P priority","valid_range":{"max":1,"min":0}},{"name":"Gen_Flag","data_type":"Int","null_value":0,"comment":"Define generator or storage system. 0 unit is a storage device, 1 unit is a generator","valid_range":{"max":1,"min":0}},{"name":"PerOp_Flag","data_type":"Int","null_value":0,"comment":"Defines operation of permisible region in VRT characteristic. 0 for cease, 1 for continuous operation","valid_range":{"max":1,"min":0}},{"name":"Recon_Flag","data_type":"Int","null_value":0,"comment":"Defines if DER can reconnect after voltage ride-through disconnection","valid_range":{"max":1,"min":0}},{"name":"Trv","data_type":"Float64","null_value":0,"comment":"Voltage measurement transducer's time constant, in s","valid_range":{"max":null,"min":0}},{"name":"VV_pnts","data_type":"NamedTuple{(:V1, :V2, :V3, :V4), Tuple{Float64, Float64, Float64, Float64}}","null_value":"(V1=0.0, V2=0.0, V3=0.0, V4=0.0)","comment":"Y-axis Volt-var curve points (V1,V2,V3,V4)"},{"name":"Q_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Reactive power limits in pu (Q_min, Q_max)"},{"name":"Tp","data_type":"Float64","null_value":0,"comment":"Power measurement transducer's time constant, in s","valid_range":{"max":null,"min":0}},{"name":"e_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Error limit in PI controller for q control (e_min, e_max)"},{"name":"Kpq","data_type":"Float64","null_value":0,"comment":"PI controller proportional gain for q control","valid_range":{"max":null,"min":0}},{"name":"Kiq","data_type":"Float64","null_value":0,"comment":"PI controller integral gain for q control","valid_range":{"max":null,"min":0}},{"name":"Iqr_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Limit on rate of change for reactive current (pu/s) (Iqr_min, Iqr_max)"},{"name":"I_max","data_type":"Float64","null_value":0,"comment":"Max. inverter's current","valid_range":{"max":null,"min":0}},{"name":"Tg","data_type":"Float64","null_value":0,"comment":"Current control's time constant, in s","valid_range":{"max":null,"min":0}},{"name":"kWh_Cap","data_type":"Float64","null_value":0,"comment":"BESS capacity in kWh","valid_range":{"max":null,"min":0}},{"name":"SOC_ini","data_type":"Float64","null_value":0,"comment":"Initial state of charge (SOC) in pu","valid_range":{"max":1,"min":0}},{"name":"SOC_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Battery's SOC limits (SOC_min, SOC_max)"},{"name":"Trf","data_type":"Float64","null_value":0,"comment":"Time constant to estimate system frequency, in s","valid_range":{"max":null,"min":0}},{"name":"fdbd_pnts","data_type":"NamedTuple{(:fdbd1, :fdbd2), Tuple{Float64, Float64}}","null_value":"(fdbd1=0.0, fdbd2=0.0)","comment":"Frequency error dead band thresholds `(fdbd1, fdbd2)`"},{"name":"D_dn","data_type":"Float64","null_value":0,"comment":"reciprocal of droop for over-frequency conditions, in pu","valid_range":{"max":null,"min":0}},{"name":"D_up","data_type":"Float64","null_value":0,"comment":"reciprocal of droop for under-frequency conditions, in pu","valid_range":{"max":null,"min":0}},{"name":"fe_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Frequency error limits in pu (fe_min, fe_max)"},{"name":"Kpp","data_type":"Float64","null_value":0,"comment":"PI controller proportional gain for p control","valid_range":{"max":null,"min":0}},{"name":"Kip","data_type":"Float64","null_value":0,"comment":"PI controller integral gain for p control","valid_range":{"max":null,"min":0}},{"name":"P_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Active power limits in pu (P_min, P_max)"},{"name":"dP_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Ramp rate limits for active power in pu/s (dP_min, dP_max)"},{"name":"T_pord","data_type":"Float64","null_value":0,"comment":"Power filter time constant in s","valid_range":{"max":null,"min":0}},{"name":"rrpwr","data_type":"Float64","null_value":0,"comment":"Ramp rate for real power increase following a fault, in pu/s","valid_range":{"max":null,"min":0}},{"name":"VRT_pnts","data_type":"NamedTuple{(:vrt1, :vrt2, :vrt3, :vrt4, :vrt5), Tuple{Float64, Float64, Float64, Float64, Float64}}","null_value":"(vrt1=0.0, vrt2=0.0, vrt3=0.0, vrt4=0.0, vrt5=0.0)","comment":"Voltage ride through v points (vrt1,vrt2,vrt3,vrt4,vrt5)"},{"name":"TVRT_pnts","data_type":"NamedTuple{(:tvrt1, :tvrt2, :tvrt3), Tuple{Float64, Float64, Float64}}","null_value":"(tvrt1=0.0, tvrt2=0.0, tvrt3=0.0)","comment":"Voltage ride through time points (tvrt1,tvrt2,tvrt3)"},{"name":"tV_delay","data_type":"Float64","null_value":0,"comment":"Time delay for reconnection after voltage ride-through disconnection","valid_range":{"max":null,"min":0}},{"name":"VES_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Min and max voltage for entering service (VES_min,VES_max)"},{"name":"FRT_pnts","data_type":"NamedTuple{(:frt1, :frt2, :frt3, :frt4), Tuple{Float64, Float64, Float64, Float64}}","null_value":"(frt1=0.0, frt2=0.0, frt3=0.0, frt4=0.0)","comment":"Frequency ride through v points (frt1,frt2,frt3,frt4)"},{"name":"TFRT_pnts","data_type":"NamedTuple{(:tfrt1, :tfrt2), Tuple{Float64, Float64}}","null_value":"(tfrt1=0.0, tfrt2=0.0)","comment":"Frequency ride through time points (tfrt1,tfrt2)"},{"name":"tF_delay","data_type":"Float64","null_value":0,"comment":"Time delay for reconnection after frequency ride-through disconnection","valid_range":{"max":null,"min":0}},{"name":"FES_lim","data_type":"MinMax","null_value":"(min=0.0, max=0.0)","comment":"Min and max frequency for entering service (FES_min,FES_max)"},{"name":"Pfa_ref","default":"0.0","data_type":"Float64","null_value":0,"comment":"Reference power factor","valid_range":{"max":null,"min":0}},{"name":"Q_ref","default":"0.0","data_type":"Float64","null_value":0,"comment":"Reference reactive power, in pu","valid_range":{"max":null,"min":0}},{"name":"P_ref","default":"1.0","data_type":"Float64","null_value":0,"comment":"Reference active power, in pu","valid_range":{"max":null,"min":0}},{"name":"base_power","default":"100.0","data_type":"Float64","null_value":0,"comment":"Base power"},{"name":"states","data_type":"Vector{Symbol}","exclude_setter":true,"comment":"The states of GenericDER depend on the Flags","internal_default":"PowerSystems.get_GenericDER_states(Qref_Flag)[1]"},{"name":"n_states","data_type":"Int","exclude_setter":true,"comment":"The states of GenericDER depend on the Flags","internal_default":"PowerSystems.get_GenericDER_states(Qref_Flag)[2]"},{"name":"ext","default":"Dict{String, Any}()","data_type":"Dict{String, Any}","null_value":"Dict{String, Any}()"},{"name":"internal","data_type":"InfrastructureSystemsInternal","exclude_setter":true,"comment":"power system internal reference, do not modify","internal_default":"InfrastructureSystemsInternal()"}],"docstring":"Parameters of a Generic Distributed Energy Resource Model. Based on https://scholarspace.manoa.hawaii.edu/bitstream/10125/70994/0304.pdf","struct_name":"GenericDER","supertype":"DynamicInjection"},{"fields":[{"name":"device"},{"name":"droop","data_type":"Float64","valid_range":{"max":null,"min":0}},{"name":"participation_factor","data_type":"UpDown"},{"name":"reserve_limit_dn","data_type":"Float64","valid_range":{"max":null,"min":0}},{"name":"reserve_limit_up","data_type":"Float64","valid_range":{"max":null,"min":0}},{"name":"inertia","data_type":"Float64","valid_range":{"max":null,"min":0}},{"name":"cost","data_type":"Float64","valid_range":{"max":null,"min":0}},{"name":"time_series_container","data_type":"InfrastructureSystems.TimeSeriesContainer"},{"name":"internal","data_type":"InfrastructureSystems.InfrastructureSystemsInternal"}],"struct_name":"RegulationDevice"}]} \ No newline at end of file diff --git a/previews/PR383/tutorials/tutorial_240bus/index.html b/previews/PR383/tutorials/tutorial_240bus/index.html new file mode 100644 index 000000000..cd7f74555 --- /dev/null +++ b/previews/PR383/tutorials/tutorial_240bus/index.html @@ -0,0 +1,480 @@ + +240 WECC solver comparison · PowerSimulationsDynamics.jl

    PSSE 240 Bus Case system with Renewables

    Originally Contributed by: José Daniel Lara

    Introduction

    This tutorial will introduce the industry models of Renewable Energy the comparisons between DiffEq Integration techniques for comparison. We show the uses of Sundials and OrdinaryDiffEq to obtain the transient response of a system to a perturbation.

    julia> using PowerSimulationsDynamics
    julia> using PowerSystemCaseBuilder
    julia> using PowerSystems
    julia> const PSY = PowerSystemsPowerSystems
    julia> using Sundials
    julia> using Plots
    julia> using OrdinaryDiffEq
    Note

    PowerSystemCaseBuilder.jl is a helper library that makes it easier to reproduce examples in the documentation and tutorials. Normally you would pass your local files to create the system data instead of calling the function build_system. For more details visit PowerSystemCaseBuilder Documentation

    Load the system and transform load data

    To load the system we use PowerSystemCaseBuilder.jl:

    julia> # We remove the checks in this example to avoid large prints
    +       sys = build_system(PSIDSystems, "WECC 240 Bus"; runchecks = false)
    +       
    +       # Transform the system's load┌ Info: Building new system WECC 240 Bus from raw data
    +└   sys_descriptor.raw_data = ""
    +┌ Warning: System is saved in the data format version 2.0.0 will be automatically upgraded to 3.0.0 upon saving
    +└ @ PowerSystems ~/.julia/packages/PowerSystems/xh3fM/src/data_format_conversions.jl:82
    +┌ Warning: The System was deserialized with checks disabled, and so was not validated.
    +└ @ PowerSystems ~/.julia/packages/PowerSystems/xh3fM/src/base.jl:1464
    +┌ Warning: System is saved in the data format version 2.0.0 will be automatically upgraded to 3.0.0 upon saving
    +└ @ PowerSystems ~/.julia/packages/PowerSystems/xh3fM/src/data_format_conversions.jl:110
    +[ Info: Serialized System to /home/runner/.julia/packages/PowerSystemCaseBuilder/vlTjU/data/serialized_system/NoArgs/WECC 240 Bus.json
    +[ Info: Serialized System metadata to /home/runner/.julia/packages/PowerSystemCaseBuilder/vlTjU/data/serialized_system/NoArgs/WECC 240 Bus_metadata.json
    +System
    +┌───────────────────┬─────────────┐
    +│ Property          │ Value       │
    +├───────────────────┼─────────────┤
    +│ Name              │             │
    +│ Description       │             │
    +│ System Units Base │ SYSTEM_BASE │
    +│ Base Power        │ 100.0       │
    +│ Base Frequency    │ 60.0        │
    +│ Num Components    │ 1501        │
    +└───────────────────┴─────────────┘
    +
    +Static Components
    +┌─────────────────┬───────┬────────────────────────┬───────────────┐
    +│ Type            │ Count │ Has Static Time Series │ Has Forecasts │
    +├─────────────────┼───────┼────────────────────────┼───────────────┤
    +│ ACBus           │ 243   │ false                  │ false         │
    +│ Arc             │ 351   │ false                  │ false         │
    +│ Area            │ 4     │ false                  │ false         │
    +│ FixedAdmittance │ 7     │ false                  │ false         │
    +│ Line            │ 329   │ false                  │ false         │
    +│ LoadZone        │ 14    │ false                  │ false         │
    +│ StandardLoad    │ 139   │ false                  │ false         │
    +│ TapTransformer  │ 2     │ false                  │ false         │
    +│ ThermalStandard │ 146   │ false                  │ false         │
    +│ Transformer2W   │ 120   │ false                  │ false         │
    +└─────────────────┴───────┴────────────────────────┴───────────────┘
    +
    +Dynamic Components
    +┌──────────────────┬───────┐
    +│ Type             │ Count │
    +├──────────────────┼───────┤
    +│ DynamicGenerator │ 22    │
    +│ DynamicGenerator │ 1     │
    +│ DynamicGenerator │ 36    │
    +│ DynamicGenerator │ 41    │
    +│ DynamicGenerator │ 3     │
    +│ DynamicGenerator │ 6     │
    +│ DynamicInverter  │ 37    │
    +└──────────────────┴───────┘
    julia> for l in get_components(PSY.StandardLoad, sys) + transform_load_to_constant_impedance(l) + end┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81 +┌ Warning: Load data is transformed under the assumption of a 1.0 p.u. Voltage Magnitude +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/utils/psy_utils.jl:81

    Build the simulation and initialize the problem

    The next step is to create the simulation structure. This will create the indexing of our system that will be used to formulate the differential-algebraic system of equations. To do so, it is required to specify the perturbation that will occur in the system. In this case, we will use a ResidualModel formulation, for more details about the formulation checkout the Models Section in PowerSimulationsDynamics.jl documentation.

    julia> using Logging
    julia> sim_ida = Simulation( + ResidualModel, + sys, #system + pwd(), + (0.0, 20.0), #time span + BranchTrip(1.0, Line, "CORONADO -1101-PALOVRDE -1401-i_10"); + console_level = Logging.Info, + )[ Info: Unit System changed to UnitSystem.DEVICE_BASE = 1 +[ Info: Pre-Initializing Simulation States +[ Info: Unit System changed to UnitSystem.SYSTEM_BASE = 0 +┌ Warning: Unit generator-3631-NB set at the limit -0.14000000000000004. Q_max = 0.20000000000000004 Q_min = -0.14000000000000004 +└ @ PowerFlows ~/.julia/packages/PowerFlows/6nw6s/src/post_processing.jl:352 +┌ Warning: Unit generator-6132-G set at the limit -1.47. Q_max = 1.47 Q_min = -1.47 +└ @ PowerFlows ~/.julia/packages/PowerFlows/6nw6s/src/post_processing.jl:352 +┌ Warning: Unit generator-6433-E set at the limit 0.59. Q_max = 0.59 Q_min = -0.59 +└ @ PowerFlows ~/.julia/packages/PowerFlows/6nw6s/src/post_processing.jl:352 +[ Info: PowerFlow solve converged, the results have been stored in the system +[ Info: Unit System changed to UnitSystem.DEVICE_BASE = 1 +[ Info: Residual from initial guess: max = 9.82774084334892e-10 at 1268, total = 2.3309883363794544e-8 +Iter f(x) inf-norm Step 2-norm +------ -------------- -------------- +[ Info: Initialization non-linear solve succeeded with a tolerance of 1.0e-9 using solver trust_region. Saving solution. +[ Info: Attaching Perturbations +[ Info: Simulations status = BUILT +┌ Info: +│ ─────────────────────────────────────────────────────────────────────────────── +│ Time Allocations +│ ─────────────── ─────────────── +│ Total measured: 27.0s 4.84GiB +│ +│ Section ncalls time %tot alloc %tot +│ ─────────────────────────────────────────────────────────────────────────────── +│ Build Simulation 1 27.0s 100.0% 4.84GiB 100.0% +│ Build Simulation Inputs 1 2.63s 9.7% 150MiB 3.0% +│ Wrap Branches 1 12.2μs 0.0% 208B 0.0% +│ Wrap Dynamic Injectors 1 1.64s 6.1% 95.3MiB 1.9% +│ Calculate MM, DAE_vector, Tota... 1 224ms 0.8% 18.6MiB 0.4% +│ Wrap Static Injectors 1 256ms 0.9% 8.99MiB 0.2% +│ Pre-initialization 1 5.40s 20.0% 292MiB 5.9% +│ Power Flow solution 1 1.09s 4.0% 44.0MiB 0.9% +│ Initialize Static Injectors 1 1.08μs 0.0% 0.00B 0.0% +│ Initialize Dynamic Injectors 1 4.31s 15.9% 248MiB 5.0% +│ Calculate Jacobian 1 14.0s 51.7% 4.15GiB 85.8% +│ Make Model Function 1 29.3μs 0.0% 32.0KiB 0.0% +│ Initial Condition NLsolve refine... 1 4.58s 16.9% 249MiB 5.0% +│ Build Perturbations 1 167μs 0.0% 75.2KiB 0.0% +│ Make DiffEq Problem 1 461ms 1.7% 11.3MiB 0.2% +│ ─────────────────────────────────────────────────────────────────────────────── +└ +Simulation Summary +┌─────────────────────────┬────────────────┐ +│ Property │ Value │ +├─────────────────────────┼────────────────┤ +│ Status │ BUILT │ +│ Simulation Type │ Residual Model │ +│ Initialized? │ Yes │ +│ Multimachine system? │ Yes │ +│ Time Span │ (0.0, 20.0) │ +│ Number of States │ 2164 │ +│ Number of Perturbations │ 1 │ +└─────────────────────────┴────────────────┘

    Run the simulation using Sundials

    We will now run the simulation using Sundials.jl solver IDA() by specifying the maximum dt we want for the simulation. In our experience with this solver, solution times are faster when supplying information about the maximum time step than the tolerances as we can see in the example

    julia> execute!(sim_ida, IDA(), dtmax = 0.01)SIMULATION_FINALIZED::BUILD_STATUS = 6

    Read the results and plot a system variable

    After the simulation is completed, we can extract the results and make plots as desired. In this case, we will plot the voltage magnitude at the bus at which the line was connected.

    julia> res_ida = read_results(sim_ida)Simulation Results Summary
    +┌────────────────────────────┬──────────────┐
    +│ Property                   │ Value        │
    +├────────────────────────────┼──────────────┤
    +│ System Base Power [MVA]    │ 100.0        │
    +│ System Base Frequency [Hz] │ 60.0         │
    +│ Time Span                  │ (0.0, 20.0)  │
    +│ Total Time Steps           │ 2015         │
    +│ Number of States           │ 2164         │
    +│ Total solve time           │ 16.563271869 │
    +└────────────────────────────┴──────────────┘
    julia> v1101_ida = get_voltage_magnitude_series(res_ida, 1101);
    julia> plot(v1101_ida);

    plot

    Run the simulation using Rodas4()

    In this case, we will use a MassMatrixModel formulation, for more details about the formulation checkout the Models Section in PowerSimulationsDynamics.jl documentation

    julia> sim_rodas = Simulation(
    +           MassMatrixModel,
    +           sys, #system
    +           pwd(),
    +           (0.0, 20.0), #time span
    +           BranchTrip(1.0, Line, "CORONADO    -1101-PALOVRDE    -1401-i_10");
    +           console_level = Logging.Info,
    +       )[ Info: Unit System changed to UnitSystem.DEVICE_BASE = 1
    +[ Info: Pre-Initializing Simulation States
    +[ Info: Unit System changed to UnitSystem.SYSTEM_BASE = 0
    +┌ Warning: Unit generator-3631-NB set at the limit -0.14000000000000004. Q_max = 0.20000000000000004 Q_min = -0.14000000000000004
    +└ @ PowerFlows ~/.julia/packages/PowerFlows/6nw6s/src/post_processing.jl:352
    +┌ Warning: Unit generator-6132-G set at the limit -1.47. Q_max = 1.47 Q_min = -1.47
    +└ @ PowerFlows ~/.julia/packages/PowerFlows/6nw6s/src/post_processing.jl:352
    +┌ Warning: Unit generator-6433-E set at the limit 0.59. Q_max = 0.59 Q_min = -0.59
    +└ @ PowerFlows ~/.julia/packages/PowerFlows/6nw6s/src/post_processing.jl:352
    +[ Info: PowerFlow solve converged, the results have been stored in the system
    +[ Info: Unit System changed to UnitSystem.DEVICE_BASE = 1
    +[ Info: Residual from initial guess: max = 9.82774084334892e-10 at 1268, total = 2.3309883363794544e-8
    +Iter     f(x) inf-norm    Step 2-norm 
    +------   --------------   --------------
    +[ Info: Initialization non-linear solve succeeded with a tolerance of 1.0e-9 using solver trust_region. Saving solution.
    +[ Info: Attaching Perturbations
    +[ Info: Simulations status = BUILT
    +┌ Info: 
    +│  ───────────────────────────────────────────────────────────────────────────────
    +│                                                      Time          Allocations  
    +│                                                ───────────────   ───────────────
    +│                 Total measured:                     8.67s             800MiB    
    +│ 
    +│  Section                               ncalls     time    %tot     alloc    %tot
    +│  ───────────────────────────────────────────────────────────────────────────────
    +│  Build Simulation                           1    8.67s  100.0%    800MiB  100.0%
    +│    Build Simulation Inputs                  1   6.95ms    0.1%   7.33MiB    0.9%
    +│      Wrap Branches                          1   5.33μs    0.0%      208B    0.0%
    +│      Wrap Dynamic Injectors                 1   3.71ms    0.0%   2.47MiB    0.3%
    +│      Calculate MM, DAE_vector, Tota...      1    714μs    0.0%   1.90MiB    0.2%
    +│      Wrap Static Injectors                  1    464μs    0.0%    290KiB    0.0%
    +│    Pre-initialization                       1   47.6ms    0.5%   9.64MiB    1.2%
    +│      Power Flow solution                    1   11.1ms    0.1%   5.72MiB    0.7%
    +│      Initialize Static Injectors            1    712ns    0.0%     0.00B    0.0%
    +│      Initialize Dynamic Injectors           1   36.0ms    0.4%   3.76MiB    0.5%
    +│    Calculate Jacobian                       1    6.93s   79.9%    596MiB   74.6%
    +│    Make Model Function                      1   6.41ms    0.1%    154KiB    0.0%
    +│    Initial Condition NLsolve refine...      1    1.27s   14.7%    167MiB   20.9%
    +│    Build Perturbations                      1   17.5ms    0.2%    626KiB    0.1%
    +│    Make DiffEq Problem                      1    388ms    4.5%   18.2MiB    2.3%
    +│  ───────────────────────────────────────────────────────────────────────────────
    +└ 
    +Simulation Summary
    +┌─────────────────────────┬───────────────────┐
    +│ Property                │ Value             │
    +├─────────────────────────┼───────────────────┤
    +│ Status                  │ BUILT             │
    +│ Simulation Type         │ Mass Matrix Model │
    +│ Initialized?            │ Yes               │
    +│ Multimachine system?    │ Yes               │
    +│ Time Span               │ (0.0, 20.0)       │
    +│ Number of States        │ 2164              │
    +│ Number of Perturbations │ 1                 │
    +└─────────────────────────┴───────────────────┘

    We will now run the simulation using OrdinaryDiffEq.jl solver Rodas4() by specifying the tolerance we want for the simulation. In our experience with this solver, solution times are faster when supplying information about the atol and rtol values as we can see in the example. The solver will also work with a specified dtmax but take a significantly longer time to solve. When using OrdinaryDiffEq.jl solvers always pass the option initializealg = NoInit() to avoid unnecessary re-initialization of the algebraic equations.

    julia> execute!(
    +           sim_rodas,
    +           Rodas4(),
    +           saveat = 0.01,
    +           atol = 1e-10,
    +           rtol = 1e-10,
    +           initializealg = NoInit(),
    +       )SIMULATION_FINALIZED::BUILD_STATUS = 6

    Read the results

    After the simulation is completed, we can extract the results and make plots as desired. In this case, we will plot the voltage magnitude at the bus at which the line was connected.

    julia> res_rodas = read_results(sim_rodas)Simulation Results Summary
    +┌────────────────────────────┬──────────────┐
    +│ Property                   │ Value        │
    +├────────────────────────────┼──────────────┤
    +│ System Base Power [MVA]    │ 100.0        │
    +│ System Base Frequency [Hz] │ 60.0         │
    +│ Time Span                  │ (0.0, 20.0)  │
    +│ Total Time Steps           │ 2002         │
    +│ Number of States           │ 2164         │
    +│ Total solve time           │ 32.694695524 │
    +└────────────────────────────┴──────────────┘

    Compare the results

    After the simulation is completed, we can extract the results and make plots as desired. In this case, we will plot the voltage magnitude at the bus at which the line was connected. For both of the solution techniques.

    julia> v1101 = get_voltage_magnitude_series(res_rodas, 1101);
    julia> plot(v1101, label = "RODAS4");
    julia> plot!(v1101_ida, label = "IDA");

    plot

    diff --git a/previews/PR383/tutorials/tutorial_activeload/index.html b/previews/PR383/tutorials/tutorial_activeload/index.html new file mode 100644 index 000000000..4728fd2c0 --- /dev/null +++ b/previews/PR383/tutorials/tutorial_activeload/index.html @@ -0,0 +1,270 @@ + +Active Load Model · PowerSimulationsDynamics.jl

    Tutorial Active Constant Power Load model

    Originally Contributed by: Rodrigo Henriquez-Auba

    Introduction

    This tutorial will introduce you to the functionality of PowerSimulationsDynamics and PowerSystems to explore active load components and a small-signal analysis.

    This tutorial presents a simulation of a two-bus system with a GFM inverter at bus 1, and a load on bus 2. We will change the model from a constant power load model, to a constant impedance model and then to a 12-state active constant power load model.

    Dependencies

    julia> using PowerSimulationsDynamics;
    julia> PSID = PowerSimulationsDynamicsPowerSimulationsDynamics
    julia> using PowerSystemCaseBuilder
    julia> using PowerSystems
    julia> const PSY = PowerSystems;
    Note

    PowerSystemCaseBuilder.jl is a helper library that makes it easier to reproduce examples in the documentation and tutorials. Normally you would pass your local files to create the system data instead of calling the function build_system. For more details visit PowerSystemCaseBuilder Documentation

    PowerSystems (abbreviated with PSY) is used to properly define the data structure and establish an equilibrium point initial condition with a power flow routine using PowerFlows.

    Load the system

    We load the system using PowerSystemCaseBuilder.jl. This system has an inverter located at bus 1.

    julia> sys = build_system(PSIDSystems, "2 Bus Load Tutorial Droop")┌ Info: Building new system 2 Bus Load Tutorial Droop from raw data
    +└   sys_descriptor.raw_data = "/home/runner/.julia/artifacts/e72e0ad2722dc7be918ec2879d80adedb4d65576/PowerSystemsTestData-2.1/psid_tests/data_examples/Omib_Load.raw"
    +[ Info: The PSS(R)E parser currently supports buses, loads, shunts, generators, branches, transformers, and dc lines
    +[ Info: The PSS(R)E parser currently supports buses, loads, shunts, generators, branches, transformers, and dc lines
    +[ Info: Parsing PSS(R)E Bus data into a PowerModels Dict...
    +[ Info: Parsing PSS(R)E Load data into a PowerModels Dict...
    +[ Info: Parsing PSS(R)E Shunt data into a PowerModels Dict...
    +[ Info: Parsing PSS(R)E Generator data into a PowerModels Dict...
    +[ Info: Parsing PSS(R)E Branch data into a PowerModels Dict...
    +[ Info: Parsing PSS(R)E Transformer data into a PowerModels Dict...
    +[ Info: Parsing PSS(R)E Two-Terminal and VSC DC line data into a PowerModels Dict...
    +┌ Warning: This PSS(R)E parser currently doesn't support Storage data parsing...
    +└ @ PowerSystems ~/.julia/packages/PowerSystems/xh3fM/src/parsers/pm_io/psse.jl:985
    +┌ Warning: This PSS(R)E parser currently doesn't support Switch data parsing...
    +└ @ PowerSystems ~/.julia/packages/PowerSystems/xh3fM/src/parsers/pm_io/psse.jl:991
    +[ Info: angmin and angmax values are 0, widening these values on branch 1 to +/- 60.0 deg.
    +┌ Info: Constructing System from Power Models
    +│   data["name"] = "omib_load"
    +└   data["source_type"] = "pti"
    +[ Info: Reading bus data
    +[ Info: Reading Load data in PowerModels dict to populate System ...
    +[ Info: Reading LoadZones data in PowerModels dict to populate System ...
    +[ Info: Reading generator data
    +[ Info: Reading branch data
    +[ Info: Reading branch data
    +[ Info: Reading DC Line data
    +[ Info: Reading storage data
    +[ Info: Serialized System to /home/runner/.julia/packages/PowerSystemCaseBuilder/vlTjU/data/serialized_system/NoArgs/2 Bus Load Tutorial Droop.json
    +[ Info: Serialized System metadata to /home/runner/.julia/packages/PowerSystemCaseBuilder/vlTjU/data/serialized_system/NoArgs/2 Bus Load Tutorial Droop_metadata.json
    +System
    +┌───────────────────┬─────────────┐
    +│ Property          │ Value       │
    +├───────────────────┼─────────────┤
    +│ Name              │             │
    +│ Description       │             │
    +│ System Units Base │ SYSTEM_BASE │
    +│ Base Power        │ 100.0       │
    +│ Base Frequency    │ 60.0        │
    +│ Num Components    │ 9           │
    +└───────────────────┴─────────────┘
    +
    +Static Components
    +┌─────────────────┬───────┬────────────────────────┬───────────────┐
    +│ Type            │ Count │ Has Static Time Series │ Has Forecasts │
    +├─────────────────┼───────┼────────────────────────┼───────────────┤
    +│ ACBus           │ 2     │ false                  │ false         │
    +│ Arc             │ 1     │ false                  │ false         │
    +│ Area            │ 1     │ false                  │ false         │
    +│ ExponentialLoad │ 1     │ false                  │ false         │
    +│ Line            │ 1     │ false                  │ false         │
    +│ LoadZone        │ 1     │ false                  │ false         │
    +│ ThermalStandard │ 1     │ false                  │ false         │
    +└─────────────────┴───────┴────────────────────────┴───────────────┘
    +
    +Dynamic Components
    +┌─────────────────┬───────┐
    +│ Type            │ Count │
    +├─────────────────┼───────┤
    +│ DynamicInverter │ 1     │
    +└─────────────────┴───────┘
    julia> first(get_components(DynamicInverter, sys))generator-101-1 (DynamicInverter{AverageConverter, OuterControl{ActivePowerDroop, ReactivePowerDroop}, VoltageModeControl, FixedDCSource, FixedFrequency, LCLFilter, Nothing}):
    +   name: generator-101-1
    +   ω_ref: 1.0
    +   converter: AverageConverter
    +   outer_control: OuterControl{ActivePowerDroop, ReactivePowerDroop}
    +   inner_control: VoltageModeControl
    +   dc_source: FixedDCSource
    +   freq_estimator: FixedFrequency
    +   filter: LCLFilter
    +   limiter: nothing
    +   base_power: 100.0
    +   n_states: 15
    +   states: [:θ_oc, :p_oc, :q_oc, :ξd_ic, :ξq_ic, :γd_ic, :γq_ic, :ϕd_ic, :ϕq_ic, :ir_cnv, :ii_cnv, :vr_filter, :vi_filter, :ir_filter, :ii_filter]
    +   ext: Dict{String, Any}()
    +   InfrastructureSystems.SystemUnitsSettings:
    +      base_value: 100.0
    +      unit_system: UnitSystem.SYSTEM_BASE = 0

    The load is an exponential load modeled as a constant power load since the coefficients are set to zero.

    julia> first(get_components(PSY.ExponentialLoad, sys))load1021 (PowerSystems.ExponentialLoad):
    +   name: load1021
    +   available: true
    +   bus: BUS 2 (ACBus)
    +   active_power: 0.1
    +   reactive_power: 0.032799999999999996
    +   active_power_coefficient: 0.0
    +   reactive_power_coefficient: 0.0
    +   base_power: 100.0
    +   max_active_power: 0.1
    +   max_reactive_power: 0.032799999999999996
    +   services: 0-element Vector{Service}
    +   dynamic_injector: nothing
    +   ext: Dict{String, Any}()
    +   time_series_container:
    +   InfrastructureSystems.SystemUnitsSettings:
    +      base_value: 100.0
    +      unit_system: UnitSystem.SYSTEM_BASE = 0

    Run a small-signal analysis

    We set up the Simulation. Since the droop model does not have a frequency state, we use a constant frequency reference frame for the network.

    julia> sim = Simulation(ResidualModel,
    +                       sys,
    +                       mktempdir(),
    +                       (0.0, 1.0),
    +                       frequency_reference = ConstantFrequency())[ Info: Unit System changed to UnitSystem.DEVICE_BASE = 1
    +Simulation Summary
    +┌─────────────────────────┬────────────────┐
    +│ Property                │ Value          │
    +├─────────────────────────┼────────────────┤
    +│ Status                  │ BUILT          │
    +│ Simulation Type         │ Residual Model │
    +│ Initialized?            │ Yes            │
    +│ Multimachine system?    │ No             │
    +│ Time Span               │ (0.0, 1.0)     │
    +│ Number of States        │ 19             │
    +│ Number of Perturbations │ 0              │
    +└─────────────────────────┴────────────────┘

    The following provides a summary of eigenvalues for this droop system with a constant power load:

    julia> sm = small_signal_analysis(sim);
    julia> df = summary_eigenvalues(sm);
    julia> show(df, allrows = true, allcols = true)15×6 DataFrame + Row │ Most Associated Part. Factor Real Part Imag. Part Damping [%] Freq [Hz] + │ Any Any Any Any Any Any +─────┼──────────────────────────────────────────────────────────────────────────────────────── + 1 │ generator-101-1 ii_filter 0.935337 -17394.7 0.0 100.0 2768.46 + 2 │ generator-101-1 ii_cnv 0.431047 -2971.58 -6377.16 42.2368 1119.74 + 3 │ generator-101-1 ii_cnv 0.431047 -2971.58 6377.16 42.2368 1119.74 + 4 │ generator-101-1 ir_cnv 0.437046 -2495.77 -5920.94 38.8419 1022.64 + 5 │ generator-101-1 ir_cnv 0.437046 -2495.77 5920.94 38.8419 1022.64 + 6 │ generator-101-1 ξd_ic 0.81633 -532.334 0.0 100.0 84.7237 + 7 │ generator-101-1 ξq_ic 0.82722 -459.814 0.0 100.0 73.1817 + 8 │ generator-101-1 p_oc 0.99997 -125.664 0.0 100.0 20.0 + 9 │ generator-101-1 q_oc 0.999564 -125.449 0.0 100.0 19.9659 + 10 │ generator-101-1 ϕd_ic 0.551981 -50.8211 0.0 100.0 8.08843 + 11 │ generator-101-1 ϕq_ic 0.551633 -50.7805 0.0 100.0 8.08197 + 12 │ generator-101-1 γd_ic 0.663765 -11.3952 0.0 100.0 1.81359 + 13 │ generator-101-1 γq_ic 0.664033 -11.3893 0.0 100.0 1.81266 + 14 │ generator-101-1 θ_oc 1.0 -0.0 0.0 NaN 0.0 + 15 │ generator-101-1 ir_filter 0.94952 17272.3 0.0 -100.0 2748.98

    In this inverter model, the filter is modeled using differential equations, and as described in the literature, interfacing a RL filter against an algebraic constant power load usually results in unstable behavior as observed with the positive real part eigenvalue.

    Change to a constant impedance load model

    Since the load is an exponential load model we can change the exponent coefficients to 2.0 to behave as a constant impedance model:

    julia> # Update load coefficients to 2.0
    +       load = first(get_components(PSY.ExponentialLoad, sys));
    julia> PSY.set_active_power_coefficient!(load, 2.0);
    julia> PSY.set_reactive_power_coefficient!(load, 2.0);

    We then re-run the small-signal analysis:

    julia> sim = Simulation(ResidualModel,
    +                       sys,
    +                       mktempdir(),
    +                       (0.0, 1.0),
    +                       frequency_reference = ConstantFrequency())[ Info: Unit System changed to UnitSystem.DEVICE_BASE = 1
    +Simulation Summary
    +┌─────────────────────────┬────────────────┐
    +│ Property                │ Value          │
    +├─────────────────────────┼────────────────┤
    +│ Status                  │ BUILT          │
    +│ Simulation Type         │ Residual Model │
    +│ Initialized?            │ Yes            │
    +│ Multimachine system?    │ No             │
    +│ Time Span               │ (0.0, 1.0)     │
    +│ Number of States        │ 19             │
    +│ Number of Perturbations │ 0              │
    +└─────────────────────────┴────────────────┘
    julia> sm = small_signal_analysis(sim);
    julia> df = summary_eigenvalues(sm);
    julia> show(df, allrows = true, allcols = true)15×6 DataFrame + Row │ Most Associated Part. Factor Real Part Imag. Part Damping [%] Freq [Hz] + │ Any Any Any Any Any Any +─────┼───────────────────────────────────────────────────────────────────────────────────────── + 1 │ generator-101-1 ir_filter 0.47969 -17387.8 -4716.08 96.513 2867.34 + 2 │ generator-101-1 ir_filter 0.47969 -17387.8 4716.08 96.513 2867.34 + 3 │ generator-101-1 ii_cnv 0.246681 -3144.63 -6413.81 44.0225 1136.88 + 4 │ generator-101-1 ii_cnv 0.246681 -3144.63 6413.81 44.0225 1136.88 + 5 │ generator-101-1 ir_cnv 0.249406 -2819.8 -6135.34 41.7606 1074.66 + 6 │ generator-101-1 ir_cnv 0.249406 -2819.8 6135.34 41.7606 1074.66 + 7 │ generator-101-1 ξq_ic 0.454519 -464.905 -16.1851 99.9395 74.0368 + 8 │ generator-101-1 ξq_ic 0.454519 -464.905 16.1851 99.9395 74.0368 + 9 │ generator-101-1 q_oc 0.991037 -126.084 0.0 100.0 20.067 + 10 │ generator-101-1 p_oc 0.99185 -125.663 0.0 100.0 20.0 + 11 │ generator-101-1 ϕq_ic 0.491934 -50.7962 -0.0190757 100.0 8.08447 + 12 │ generator-101-1 ϕq_ic 0.491934 -50.7962 0.0190757 100.0 8.08447 + 13 │ generator-101-1 γq_ic 0.488883 -11.391 -0.00268224 100.0 1.81293 + 14 │ generator-101-1 γq_ic 0.488883 -11.391 0.00268224 100.0 1.81293 + 15 │ generator-101-1 θ_oc 1.0 -0.0 0.0 NaN 0.0

    Observe that now the system is small-signal stable (since there is only one device the angle of the inverter is used as a reference, and hence is zero).

    Adding a dynamic active load model

    To consider a dynamic model in the load it is only required to attach a dynamic component to the static load model. When a dynamic load model is attached, the active and reactive power of the static model are used to define reference parameters to ensure that the dynamic load model matches the static load output power.

    Note that when a dynamic model is attached to a static model, the static model does not participate in the dynamic system equations, i.e. the only model interfacing to the network equations is the dynamic model and not the static model (the exponential load).

    We define a function to create a active load model with the specific parameters:

    julia> # Parameters taken from active load model from N. Bottrell Masters
    +       # Thesis "Small-Signal Analysis of Active Loads and Large-signal Analysis
    +       # of Faults in Inverter Interfaced Microgrid Applications", 2014.
    +       
    +       # The parameters are then per-unitized to be scalable to represent an aggregation
    +       # of multiple active loads
    +       
    +       # Base AC Voltage: Vb = 380 V
    +       # Base Power (AC and DC): Pb = 10000 VA
    +       # Base AC Current: Ib = 10000 / 380 = 26.32 A
    +       # Base AC Impedance: Zb = 380 / 26.32 =  14.44 Ω
    +       # Base AC Inductance: Lb = Zb / Ωb = 14.44 / 377 = 0.3831 H
    +       # Base AC Capacitance: Cb = 1 / (Zb * Ωb) = 0.000183697 F
    +       # Base DC Voltage: Vb_dc = (√8/√3) Vb = 620.54 V
    +       # Base DC Current: Ib_dc = Pb / V_dc = 10000/620.54 = 16.12 A
    +       # Base DC Impedance: Zb_dc = Vb_dc / Ib_dc = 38.50 Ω
    +       # Base DC Capacitance: Cb_dc = 1 / (Zb_dc * Ωb) = 6.8886315e-5 F
    +       
    +       Ωb = 2*pi*60;
    julia> Vb = 380;
    julia> Pb = 10000;
    julia> Ib = Pb / Vb;
    julia> Zb = Vb / Ib;
    julia> Lb = Zb / Ωb;
    julia> Cb = 1 / (Zb * Ωb);
    julia> Vb_dc = sqrt(8)/sqrt(3) * Vb;
    julia> Ib_dc = Pb / Vb_dc;
    julia> Zb_dc = Vb_dc / Ib_dc;
    julia> Cb_dc = 1/(Zb_dc * Ωb);
    julia> function active_cpl(load) + return PSY.ActiveConstantPowerLoad( + name = get_name(load), + r_load = 70.0 / Zb_dc, + c_dc = 2040e-6 / Cb_dc, + rf = 0.1 / Zb, + lf = 2.3e-3 / Lb, + cf = 8.8e-6 / Cb, + rg = 0.03 / Zb, + lg = 0.93e-3 / Lb, + kp_pll = 0.4, + ki_pll = 4.69, + kpv = 0.5 * (Vb_dc / Ib_dc), + kiv = 150.0 * (Vb_dc / Ib_dc), + kpc = 15.0 * (Ib / Vb), + kic = 30000.0 * (Ib / Vb), + base_power = 100.0, + ) + endactive_cpl (generic function with 1 method)

    We then attach the model to the system:

    julia> load = first(get_components(PSY.ExponentialLoad, sys));
    julia> dyn_load = active_cpl(load) +load1021 (ActiveConstantPowerLoad): + name: load1021 + r_load: 1.8178670360110796 + c_dc: 29.61400952076375 + rf: 0.006925207756232687 + lf: 0.0600470617999157 + cf: 0.04790501540123547 + rg: 0.0020775623268698058 + lg: 0.024279898901705045 + kp_pll: 0.4 + ki_pll: 4.69 + kpv: 19.25333333333334 + kiv: 5776.000000000003 + kpc: 1.038781163434903 + kic: 2077.562326869806 + base_power: 100.0 + ext: Dict{String, Any}() + P_ref: 1.0 + Q_ref: 1.0 + V_ref: 1.0 + ω_ref: 1.0 + is_filter_differential: 1 + states: [:θ_pll, :ϵ_pll, :η, :v_dc, :γd, :γq, :ir_cnv, :ii_cnv, :vr_filter, :vi_filter, :ir_filter, :ii_filter] + n_states: 12 + internal: InfrastructureSystems.InfrastructureSystemsInternal
    julia> add_component!(sys, dyn_load, load)

    Finally, we set up the simulation:

    julia> sim = Simulation(ResidualModel,
    +                       sys,
    +                       mktempdir(),
    +                       (0.0, 1.0),
    +                       frequency_reference = ConstantFrequency())[ Info: Unit System changed to UnitSystem.DEVICE_BASE = 1
    +Simulation Summary
    +┌─────────────────────────┬────────────────┐
    +│ Property                │ Value          │
    +├─────────────────────────┼────────────────┤
    +│ Status                  │ BUILT          │
    +│ Simulation Type         │ Residual Model │
    +│ Initialized?            │ Yes            │
    +│ Multimachine system?    │ No             │
    +│ Time Span               │ (0.0, 1.0)     │
    +│ Number of States        │ 31             │
    +│ Number of Perturbations │ 0              │
    +└─────────────────────────┴────────────────┘
    julia> sm = small_signal_analysis(sim);
    julia> df = summary_eigenvalues(sm);
    julia> show(df, allrows = true, allcols = true)27×6 DataFrame + Row │ Most Associated Part. Factor Real Part Imag. Part Damping [%] Freq [Hz] + │ Any Any Any Any Any Any +─────┼──────────────────────────────────────────────────────────────────────────────────────── + 1 │ generator-101-1 vi_filter 0.166385 -2778.16 -6703.69 38.2849 1154.92 + 2 │ generator-101-1 vi_filter 0.166385 -2778.16 6703.69 38.2849 1154.92 + 3 │ generator-101-1 vr_filter 0.209778 -2607.5 -6520.11 37.1323 1117.61 + 4 │ generator-101-1 vr_filter 0.209778 -2607.5 6520.11 37.1323 1117.61 + 5 │ load1021 vi_filter 0.189073 -2497.54 -7644.75 31.0548 1279.99 + 6 │ load1021 vi_filter 0.189073 -2497.54 7644.75 31.0548 1279.99 + 7 │ load1021 vr_filter 0.209271 -2302.82 -8223.34 26.9661 1359.13 + 8 │ load1021 vr_filter 0.209271 -2302.82 8223.34 26.9661 1359.13 + 9 │ generator-101-1 ii_filter 0.200819 -970.335 -1219.65 62.2586 248.052 + 10 │ generator-101-1 ii_filter 0.200819 -970.335 1219.65 62.2586 248.052 + 11 │ generator-101-1 ξq_ic 0.370911 -848.095 -73.6514 99.625 135.487 + 12 │ generator-101-1 ξq_ic 0.370911 -848.095 73.6514 99.625 135.487 + 13 │ load1021 η 0.379645 -326.767 -222.502 82.6572 62.9183 + 14 │ load1021 η 0.379645 -326.767 222.502 82.6572 62.9183 + 15 │ load1021 v_dc 0.161176 -238.623 -832.086 27.5666 137.769 + 16 │ load1021 v_dc 0.161176 -238.623 832.086 27.5666 137.769 + 17 │ load1021 θ_pll 0.465358 -132.89 0.0 100.0 21.15 + 18 │ generator-101-1 p_oc 0.995436 -125.653 0.0 100.0 19.9983 + 19 │ generator-101-1 q_oc 0.677379 -122.337 0.0 100.0 19.4706 + 20 │ load1021 ir_filter 0.410934 -57.5328 -1.7406e6 0.00330534 2.77026e5 + 21 │ load1021 ir_filter 0.410934 -57.5328 1.7406e6 0.00330534 2.77026e5 + 22 │ generator-101-1 ϕd_ic 0.527692 -50.8398 0.0 100.0 8.09141 + 23 │ generator-101-1 ϕq_ic 0.523655 -50.7749 0.0 100.0 8.08108 + 24 │ load1021 ϵ_pll 0.907233 -12.8266 0.0 100.0 2.04141 + 25 │ generator-101-1 γd_ic 0.944549 -11.3935 0.0 100.0 1.81333 + 26 │ generator-101-1 γq_ic 0.934217 -11.391 0.0 100.0 1.81294 + 27 │ generator-101-1 θ_oc 1.0 -0.0 0.0 NaN 0.0

    Observe the new states of the active load model and that the system is small-signal stable.

    diff --git a/previews/PR383/tutorials/tutorial_continuation_pf/index.html b/previews/PR383/tutorials/tutorial_continuation_pf/index.html new file mode 100644 index 000000000..bcaac3d01 --- /dev/null +++ b/previews/PR383/tutorials/tutorial_continuation_pf/index.html @@ -0,0 +1,170 @@ + +Small-Signal Analysis · PowerSimulationsDynamics.jl

    Tutorial Small Signal Analysis with Continuation Power Flow

    Originally Contributed by: Rodrigo Henriquez-Auba

    Introduction

    This tutorial will introduce you to the functionality of PowerSimulationsDynamics and PowerFlows for running small signal analysis in a continuation power flow.

    This tutorial presents a simulation of a two-bus system with a generator (represented with a GENROU + SEXS + TGOV1 model) at bus 1, and a load on bus 2. We will increase the load demand to observe the P-V curve and run a small-signal analysis to check if the system satisfies small-signal stability at different operating points.

    Dependencies

    julia> using PowerSimulationsDynamics
    julia> PSID = PowerSimulationsDynamicsPowerSimulationsDynamics
    julia> using PowerSystemCaseBuilder
    julia> using PowerSystems
    julia> using PowerFlows
    julia> const PSY = PowerSystemsPowerSystems
    julia> using Plots
    julia> gr() + + # Disable Logging to avoid excessive informationPlots.GRBackend()
    julia> using Logging
    julia> Logging.disable_logging(Logging.Info);
    julia> Logging.disable_logging(Logging.Warn);
    Note

    PowerSystemCaseBuilder.jl is a helper library that makes it easier to reproduce examples in the documentation and tutorials. Normally you would pass your local files to create the system data instead of calling the function build_system. For more details visit PowerSystemCaseBuilder Documentation

    PowerSystems (abbreviated with PSY) is used to properly define the data structure and establish an equilibrium point initial condition with a power flow routine using PowerFlows.

    Load the system

    We load the system using PowerSystemCaseBuilder.jl. This system only have a generator without dynamic data on which we can use PowerFlows to generate a P-V (or nose) curve.

    julia> sys_static = build_system(PSIDSystems, "2 Bus Load Tutorial")System
    +┌───────────────────┬─────────────┐
    +│ Property          │ Value       │
    +├───────────────────┼─────────────┤
    +│ Name              │             │
    +│ Description       │             │
    +│ System Units Base │ SYSTEM_BASE │
    +│ Base Power        │ 100.0       │
    +│ Base Frequency    │ 60.0        │
    +│ Num Components    │ 8           │
    +└───────────────────┴─────────────┘
    +
    +Static Components
    +┌─────────────────┬───────┬────────────────────────┬───────────────┐
    +│ Type            │ Count │ Has Static Time Series │ Has Forecasts │
    +├─────────────────┼───────┼────────────────────────┼───────────────┤
    +│ ACBus           │ 2     │ false                  │ false         │
    +│ Arc             │ 1     │ false                  │ false         │
    +│ Area            │ 1     │ false                  │ false         │
    +│ ExponentialLoad │ 1     │ false                  │ false         │
    +│ Line            │ 1     │ false                  │ false         │
    +│ LoadZone        │ 1     │ false                  │ false         │
    +│ ThermalStandard │ 1     │ false                  │ false         │
    +└─────────────────┴───────┴────────────────────────┴───────────────┘

    Note that this system contains an Exponential Load, but the parameters are set up to zero, so it behaves a Constant Power Load:

    julia> first(get_components(PSY.ExponentialLoad, sys_static))load1021 (PowerSystems.ExponentialLoad):
    +   name: load1021
    +   available: true
    +   bus: BUS 2 (ACBus)
    +   active_power: 0.1
    +   reactive_power: 0.032799999999999996
    +   active_power_coefficient: 0.0
    +   reactive_power_coefficient: 0.0
    +   base_power: 100.0
    +   max_active_power: 0.1
    +   max_reactive_power: 0.032799999999999996
    +   services: 0-element Vector{Service}
    +   dynamic_injector: nothing
    +   ext: Dict{String, Any}()
    +   time_series_container:
    +   InfrastructureSystems.SystemUnitsSettings:
    +      base_value: 100.0
    +      unit_system: UnitSystem.SYSTEM_BASE = 0

    Create a P-V curve

    The next step is to run multiple power flows and store the voltage at the load and the active power. For this example we will set up the power factor to be unitary (i.e. no reactive power at the load).

    julia> # Create a Power Range to change the power load active power
    +       P_range = 0.01:0.01:4.6;
    +       # Choose the power factor
    julia> load_pf = 1.0;

    Then create vectors to store the results

    julia> # PV Curve Results
    +       P_load_p = Vector{Float64}();
    julia> V_load_p = Vector{Float64}();

    Then, we run multiple power flows in a for loop by changing the active power of the load:

    julia> for p in P_range
    +           # Change the active power and reactive power of the load
    +           power = p * 1.0
    +           load = get_component(PSY.ExponentialLoad, sys_static, "load1021")
    +           set_active_power!(load, power)
    +           q_power = power * tan(acos(load_pf))
    +           set_reactive_power!(load, q_power)
    +           # Run Power Flow
    +           status = solve_ac_powerflow!(sys_static)
    +           if !status
    +               # Finish the loop if the power flow fails
    +               print("Power Flow failed at p = $(power)")
    +               break
    +           end
    +           # Obtain the bus voltage information
    +           bus = get_component(Bus, sys_static, "BUS 2")
    +           Vm = get_magnitude(bus)
    +           # Store values in the vectors
    +           push!(V_load_p, Vm)
    +           push!(P_load_p, power)
    +       end┌ Error: The powerflow solver returned convergence = false
    +└ @ PowerFlows ~/.julia/packages/PowerFlows/6nw6s/src/nlsolve_ac_powerflow.jl:153
    +┌ Error: The powerflow solver returned convergence = false
    +└ @ PowerFlows ~/.julia/packages/PowerFlows/6nw6s/src/nlsolve_ac_powerflow.jl:52
    +Power Flow failed at p = 4.53

    The plot can be visualized with:

    julia> plot(P_load_p,
    +            V_load_p,
    +            label = "PV Curve",
    +            xlabel = "Load Power [pu]",
    +            ylabel = "Load Bus Voltage [pu]",
    +            color = :black
    +       )Plot{Plots.GRBackend() n=1}

    plot

    Run Small-Signal Analysis besides the Continuation Power Flow

    To run a small-signal analysis we require a dynamic model of the machine. We can use PowerSystemCaseBuilder to the load the same system, but with a dynamic model for the generator, including a GENROU + SEXS exciter + TGOV1 governor.

    julia> sys = build_system(PSIDSystems, "2 Bus Load Tutorial GENROU")System
    +┌───────────────────┬─────────────┐
    +│ Property          │ Value       │
    +├───────────────────┼─────────────┤
    +│ Name              │             │
    +│ Description       │             │
    +│ System Units Base │ SYSTEM_BASE │
    +│ Base Power        │ 100.0       │
    +│ Base Frequency    │ 60.0        │
    +│ Num Components    │ 9           │
    +└───────────────────┴─────────────┘
    +
    +Static Components
    +┌─────────────────┬───────┬────────────────────────┬───────────────┐
    +│ Type            │ Count │ Has Static Time Series │ Has Forecasts │
    +├─────────────────┼───────┼────────────────────────┼───────────────┤
    +│ ACBus           │ 2     │ false                  │ false         │
    +│ Arc             │ 1     │ false                  │ false         │
    +│ Area            │ 1     │ false                  │ false         │
    +│ ExponentialLoad │ 1     │ false                  │ false         │
    +│ Line            │ 1     │ false                  │ false         │
    +│ LoadZone        │ 1     │ false                  │ false         │
    +│ ThermalStandard │ 1     │ false                  │ false         │
    +└─────────────────┴───────┴────────────────────────┴───────────────┘
    +
    +Dynamic Components
    +┌──────────────────┬───────┐
    +│ Type             │ Count │
    +├──────────────────┼───────┤
    +│ DynamicGenerator │ 1     │
    +└──────────────────┴───────┘

    Here are the components of the generator:

    julia> first(get_components(DynamicGenerator, sys))generator-101-1 (DynamicGenerator{RoundRotorQuadratic, SingleMass, SEXS, SteamTurbineGov1, PSSFixed}):
    +   name: generator-101-1
    +   ω_ref: 1.0
    +   machine: RoundRotorQuadratic
    +   shaft: SingleMass
    +   avr: SEXS
    +   prime_mover: SteamTurbineGov1
    +   pss: PSSFixed
    +   base_power: 100.0
    +   n_states: 10
    +   states: [:eq_p, :ed_p, :ψ_kd, :ψ_kq, :δ, :ω, :Vf, :Vr, :x_g1, :x_g2]
    +   ext: Dict{String, Any}()
    +   InfrastructureSystems.SystemUnitsSettings:
    +      base_value: 100.0
    +      unit_system: UnitSystem.SYSTEM_BASE = 0

    Besides the results of the P-V curve, we need to store if the system is small-signal stable or not by looking if there is a positive real part eigenvalue.

    julia> # Vectors to store stability using a boolean (true for stable).
    +       stable_vec = Vector{Bool}();
    julia> status_vec = Vector{Bool}(); + + # PV Curve Results
    julia> P_load_p = Vector{Float64}();
    julia> V_load_p = Vector{Float64}();

    We then run the main for loop by updating the load active power, but in addition we create a PowerSimulationsDynamics simulation on which we can run a small-signal analysis to check stability.

    julia> for p in P_range
    +           # Change the active power and reactive power of the load
    +           power = p * 1.0
    +           load = get_component(PSY.ExponentialLoad, sys_static, "load1021")
    +           set_active_power!(load, power)
    +           q_power = power * tan(acos(load_pf))
    +           set_reactive_power!(load, q_power)
    +           # Run Power Flow
    +           status = solve_ac_powerflow!(sys_static)
    +           if !status
    +               # Finish the loop if the power flow fails
    +               print("Power Flow failed at p = $(power)")
    +               break
    +           end
    +           # Obtain the bus voltage information
    +           bus = get_component(Bus, sys_static, "BUS 2")
    +           Vm = get_magnitude(bus)
    +           # Store values in the vectors
    +           push!(V_load_p, Vm)
    +           push!(P_load_p, power)
    +       
    +           # Update Load Power in the GENROU system
    +           load = get_component(PSY.ExponentialLoad, sys, "load1021")
    +           set_active_power!(load, power)
    +           q_power = power * tan(acos(load_pf))
    +           set_reactive_power!(load, q_power)
    +           # Construct Simulation
    +           sim = Simulation(ResidualModel, sys, mktempdir(), (0.0, 1.0))
    +           if sim.status == PSID.BUILT
    +               # Check small-signal stability
    +               sm = small_signal_analysis(sim).stable
    +               # Push results of small-signal stability
    +               push!(stable_vec, sm)
    +               # Push results if the simulation was able to be constructed
    +               push!(status_vec, true)
    +           else
    +               # Push results if the simulation was not able to be constructed
    +               push!(status_vec, false)
    +           end
    +       end┌ Error: The powerflow solver returned convergence = false
    +└ @ PowerFlows ~/.julia/packages/PowerFlows/6nw6s/src/nlsolve_ac_powerflow.jl:153
    +┌ Error: The powerflow solver returned convergence = false
    +└ @ PowerFlows ~/.julia/packages/PowerFlows/6nw6s/src/nlsolve_ac_powerflow.jl:52
    +Power Flow failed at p = 4.53

    The following plot showcases the P-V curve, while also showcasing (in red) the regions on which the system is small-signal stable.

    julia> # Find where is stable and unstable
    +       dict_true_ixs_p = Vector();
    julia> dict_false_ixs_p = Vector();
    julia> dict_true_ixs_p = findall(x->x, stable_vec);
    julia> dict_false_ixs_p = findall(x->!x, stable_vec); + + # Create plot
    julia> true_ixs = dict_true_ixs_p;
    julia> plot(P_load_p, V_load_p, color = :blue, label = "PV Curve", xlabel = "Load Power [pu]", ylabel = "Load Bus Voltage [pu]")Plot{Plots.GRBackend() n=1}
    julia> plot!(Plots.scatter!(P_load_p[true_ixs] , V_load_p[true_ixs], markerstrokewidth= 0, label = "GENROU SSA"))Plot{Plots.GRBackend() n=2}

    plot

    This results is consistent with most of the literature for dynamic generator models supplying constant power loads, on which by increasing the active power of the load, produce critical eigenvalues which cross the $j\omega$ axis at some point. This is called a Hopf Bifurcation, in this case a subcritical one since the limit cycles are unstable.

    diff --git a/previews/PR383/tutorials/tutorial_dynamic_data/index.html b/previews/PR383/tutorials/tutorial_dynamic_data/index.html new file mode 100644 index 000000000..bae2fe1e7 --- /dev/null +++ b/previews/PR383/tutorials/tutorial_dynamic_data/index.html @@ -0,0 +1,273 @@ + +Create Dynamic Data · PowerSimulationsDynamics.jl

    Creating and Handling Data for Dynamic Simulations

    Originally Contributed by: Rodrigo Henriquez and José Daniel Lara

    Introduction

    This tutorial briefly introduces how to create a system using PowerSystems.jl data structures. For more details visit PowerSystems.jl Documentation

    Start by calling PowerSystems.jl and PowerSystemCaseBuilder.jl:

    julia> using PowerSystems
    julia> using PowerSystemCaseBuilder
    julia> const PSY = PowerSystems;
    Note

    PowerSystemCaseBuilder.jl is a helper library that makes it easier to reproduce examples in the documentation and tutorials. Normally you would pass your local files to create the system data instead of calling the function build_system. For more details visit PowerSystemCaseBuilder Documentation

    System description

    Next we need to define the different elements required to run a simulation. To run a simulation in PowerSimulationsDynamics, it is required to define a System that contains the following components:

    Static Components

    We called static components to those that are used to run a Power Flow problem.

    • Vector of Bus elements, that define all the buses in the network.
    • Vector of Branch elements, that define all the branches elements (that connect two buses) in the network.
    • Vector of StaticInjection elements, that define all the devices connected to buses that can inject (or withdraw) power. These static devices, typically generators, in PowerSimulationsDynamics are used to solve the Power Flow problem that determines the active and reactive power provided for each device.
    • Vector of PowerLoad elements, that define all the loads connected to buses that can withdraw current. These are also used to solve the Power Flow.
    • Vector of Source elements, that define source components behind a reactance that can inject or withdraw current.
    • The base of power used to define per unit values, in MVA as a Float64 value.
    • The base frequency used in the system, in Hz as a Float64 value.

    Dynamic Components

    Dynamic components are those that define differential equations to run a transient simulation.

    • Vector of DynamicInjection elements. These components must be attached to a StaticInjection that connects the power flow solution to the dynamic formulation of such device. DynamicInjection can be DynamicGenerator or DynamicInverter, and its specific formulation (i.e. differential equations) will depend on the specific components that define such device.
    • (Optional) Selecting which of the Lines (of the Branch vector) elements must be modeled of DynamicLines elements, that can be used to model lines with differential equations.

    To start we will define the data structures for the network.

    Three Bus case manual data creation

    The following describes the system creation for this dynamic simulation case.

    Static System creation

    To create the system you need to load data using PowerSystemCaseBuilder.jl. This system was originally created from following raw file.

    julia> sys = build_system(PSIDSystems, "3 Bus Inverter Base"; force_build=true)System
    +┌───────────────────┬─────────────┐
    +│ Property          │ Value       │
    +├───────────────────┼─────────────┤
    +│ Name              │             │
    +│ Description       │             │
    +│ System Units Base │ SYSTEM_BASE │
    +│ Base Power        │ 100.0       │
    +│ Base Frequency    │ 60.0        │
    +│ Num Components    │ 16          │
    +└───────────────────┴─────────────┘
    +
    +Static Components
    +┌─────────────────┬───────┬────────────────────────┬───────────────┐
    +│ Type            │ Count │ Has Static Time Series │ Has Forecasts │
    +├─────────────────┼───────┼────────────────────────┼───────────────┤
    +│ ACBus           │ 3     │ false                  │ false         │
    +│ Arc             │ 3     │ false                  │ false         │
    +│ Area            │ 1     │ false                  │ false         │
    +│ Line            │ 3     │ false                  │ false         │
    +│ LoadZone        │ 1     │ false                  │ false         │
    +│ StandardLoad    │ 3     │ false                  │ false         │
    +│ ThermalStandard │ 2     │ false                  │ false         │
    +└─────────────────┴───────┴────────────────────────┴───────────────┘

    This system does not have an injection device in bus 1 (the reference bus). We can add a source with small impedance directly as follows:

    julia> slack_bus = [b for b in get_components(ACBus, sys) if get_bustype(b) == ACBusTypes.REF][1]BUS 1 (ACBus):
    +   number: 101
    +   name: BUS 1
    +   bustype: ACBusTypes.REF = 3
    +   angle: 0.0
    +   magnitude: 1.02
    +   voltage_limits: (min = 0.9, max = 1.1)
    +   base_voltage: 138.0
    +   area: 1 (Area)
    +   load_zone: 1 (LoadZone)
    +   ext: Dict{String, Any}()
    +   InfrastructureSystems.SystemUnitsSettings:
    +      base_value: 100.0
    +      unit_system: UnitSystem.SYSTEM_BASE = 0
    julia> inf_source = Source( + name = "InfBus", #name + available = true, #availability + active_power = 0.0, + reactive_power = 0.0, + bus = slack_bus, #bus + R_th = 0.0, #Rth + X_th = 5e-6, #Xth + ) +InfBus (Source): + name: InfBus + available: true + bus: BUS 1 (ACBus) + active_power: 0.0 + reactive_power: 0.0 + R_th: 0.0 + X_th: 5.0e-6 + internal_voltage: 1.0 + internal_angle: 0.0 + dynamic_injector: nothing + services: 0-element Vector{Service} + ext: Dict{String, Any}() + internal: InfrastructureSystems.InfrastructureSystemsInternal
    julia> add_component!(sys, inf_source)

    We just added a infinite source with $X_{th} = 5\cdot 10^{-6}$ pu. The system can be explored directly using functions like:

    julia> show_components(sys, Source)Source
    +┌────────┬───────────┐
    +│ name   │ available │
    +├────────┼───────────┤
    +│ InfBus │ true      │
    +└────────┴───────────┘
    julia> show_components(sys, ThermalStandard)ThermalStandard
    +┌─────────────────┬───────────┐
    +│ name            │ available │
    +├─────────────────┼───────────┤
    +│ generator-102-1 │ true      │
    +│ generator-103-1 │ true      │
    +└─────────────────┴───────────┘

    By exploring those it can be seen that the generators are named as: generator-bus_number-id. Then, the generator attached at bus 2 is named generator-102-1.

    Dynamic Injections

    We are now interested in attaching to the system the dynamic component that will be modeling our dynamic generator.

    Dynamic generator devices are composed by 5 components, namely, machine, shaft, avr, tg and pss. So we will be adding functions to create all of its components and the generator itself:

    julia> # *Machine*
    +       machine_classic() = BaseMachine(
    +           0.0, #R
    +           0.2995, #Xd_p
    +           0.7087, #eq_p
    +       )
    +       
    +       # *Shaft*machine_classic (generic function with 1 method)
    julia> shaft_damping() = SingleMass( + 3.148, #H + 2.0, #D + ) + + # *AVR: No AVR*shaft_damping (generic function with 1 method)
    julia> avr_none() = AVRFixed(0.0) + + # *TG: No TG*avr_none (generic function with 1 method)
    julia> tg_none() = TGFixed(1.0) #efficiency + + # *PSS: No PSS*tg_none (generic function with 1 method)
    julia> pss_none() = PSSFixed(0.0)pss_none (generic function with 1 method)

    The next lines receives a static generator name, and creates a DynamicGenerator based on that specific static generator, with the specific components defined previously. This is a classic machine model without AVR, Turbine Governor and PSS.

    julia> static_gen = get_component(Generator, sys, "generator-102-1")generator-102-1 (ThermalStandard):
    +   name: generator-102-1
    +   available: true
    +   status: true
    +   bus: BUS 2 (ACBus)
    +   active_power: 0.7
    +   reactive_power: 0.0
    +   rating: 3.333526661060325
    +   active_power_limits: (min = 0.0, max = 3.18)
    +   reactive_power_limits: (min = -1.0, max = 1.0)
    +   ramp_limits: (up = 3.18, down = 3.18)
    +   operation_cost: ThreePartCost
    +   base_power: 100.0
    +   time_limits: nothing
    +   must_run: false
    +   prime_mover_type: PrimeMovers.OT = 19
    +   fuel: ThermalFuels.OTHER = 14
    +   services: 0-element Vector{Service}
    +   time_at_status: 10000.0
    +   dynamic_injector: nothing
    +   ext: Dict{String, Any}("z_source" => (r = 0.0, x = 1.0))
    +   time_series_container:
    +   InfrastructureSystems.SystemUnitsSettings:
    +      base_value: 100.0
    +      unit_system: UnitSystem.SYSTEM_BASE = 0
    julia> dyn_gen = DynamicGenerator( + name = get_name(static_gen), + ω_ref = 1.0, + machine = machine_classic(), + shaft = shaft_damping(), + avr = avr_none(), + prime_mover = tg_none(), + pss = pss_none(), + ) +generator-102-1 (DynamicGenerator{BaseMachine, SingleMass, AVRFixed, TGFixed, PSSFixed}): + name: generator-102-1 + ω_ref: 1.0 + machine: BaseMachine + shaft: SingleMass + avr: AVRFixed + prime_mover: TGFixed + pss: PSSFixed + base_power: 100.0 + n_states: 2 + states: [:δ, :ω] + ext: Dict{String, Any}() + internal: InfrastructureSystems.InfrastructureSystemsInternal

    The dynamic generator is added to the system by specifying the dynamic and static generator

    julia> add_component!(sys, dyn_gen, static_gen)

    Then we can serialize our system data to a json file that can be later read as:


    julia> to_json(sys, joinpath(file_dir, "modified_sys.json"), force = true)

    Dynamic Lines case: Data creation

    We will now create a three bus system with one inverter and one generator. In order to do so, we will parse the following ThreebusInverter.raw network:

    julia> threebus_sys = build_system(PSIDSystems, "3 Bus Inverter Base")System
    +┌───────────────────┬─────────────┐
    +│ Property          │ Value       │
    +├───────────────────┼─────────────┤
    +│ Name              │             │
    +│ Description       │             │
    +│ System Units Base │ SYSTEM_BASE │
    +│ Base Power        │ 100.0       │
    +│ Base Frequency    │ 60.0        │
    +│ Num Components    │ 16          │
    +└───────────────────┴─────────────┘
    +
    +Static Components
    +┌─────────────────┬───────┬────────────────────────┬───────────────┐
    +│ Type            │ Count │ Has Static Time Series │ Has Forecasts │
    +├─────────────────┼───────┼────────────────────────┼───────────────┤
    +│ ACBus           │ 3     │ false                  │ false         │
    +│ Arc             │ 3     │ false                  │ false         │
    +│ Area            │ 1     │ false                  │ false         │
    +│ Line            │ 3     │ false                  │ false         │
    +│ LoadZone        │ 1     │ false                  │ false         │
    +│ StandardLoad    │ 3     │ false                  │ false         │
    +│ ThermalStandard │ 2     │ false                  │ false         │
    +└─────────────────┴───────┴────────────────────────┴───────────────┘
    julia> slack_bus = first(get_components(x -> get_bustype(x) == BusTypes.REF, Bus, threebus_sys))ERROR: UndefVarError: `BusTypes` not defined
    julia> inf_source = Source( + name = "InfBus", #name + available = true, #availability + active_power = 0.0, + reactive_power = 0.0, + bus = slack_bus, #bus + R_th = 0.0, #Rth + X_th = 5e-6, #Xth + ) +InfBus (Source): + name: InfBus + available: true + bus: BUS 1 (ACBus) + active_power: 0.0 + reactive_power: 0.0 + R_th: 0.0 + X_th: 5.0e-6 + internal_voltage: 1.0 + internal_angle: 0.0 + dynamic_injector: nothing + services: 0-element Vector{Service} + ext: Dict{String, Any}() + internal: InfrastructureSystems.InfrastructureSystemsInternal
    julia> add_component!(threebus_sys, inf_source)

    We will connect a One-d-one-q machine at bus 102, and a Virtual Synchronous Generator Inverter at bus 103. An inverter is composed by a converter, outer control, inner control, dc source, frequency estimator and a filter.

    Dynamic Inverter definition

    We will create specific functions to create the components of the inverter as follows:

    julia> #Define converter as an AverageConverter
    +       converter_high_power() = AverageConverter(
    +           rated_voltage = 138.0,
    +           rated_current = 100.0
    +           )
    +       
    +       #Define Outer Control as a composition of Virtual Inertia + Reactive Power Droopconverter_high_power (generic function with 1 method)
    julia> outer_control() = OuterControl( + VirtualInertia(Ta = 2.0, kd = 400.0, kω = 20.0), + ReactivePowerDroop(kq = 0.2, ωf = 1000.0), + ) + + #Define an Inner Control as a Voltage+Current Controler with Virtual Impedance:outer_control (generic function with 1 method)
    julia> inner_control() = VoltageModeControl( + kpv = 0.59, #Voltage controller proportional gain + kiv = 736.0, #Voltage controller integral gain + kffv = 0.0, #Binary variable enabling voltage feed-forward in current controllers + rv = 0.0, #Virtual resistance in pu + lv = 0.2, #Virtual inductance in pu + kpc = 1.27, #Current controller proportional gain + kic = 14.3, #Current controller integral gain + kffi = 0.0, #Binary variable enabling the current feed-forward in output of current controllers + ωad = 50.0, #Active damping low pass filter cut-off frequency + kad = 0.2, #Active damping gain + ) + + #Define DC Source as a FixedSource:inner_control (generic function with 1 method)
    julia> dc_source_lv() = FixedDCSource(voltage = 600.0) + + #Define a Frequency Estimator as a PLL + #based on Vikram Kaura and Vladimir Blaskoc 1997 paper:dc_source_lv (generic function with 1 method)
    julia> pll() = KauraPLL( + ω_lp = 500.0, #Cut-off frequency for LowPass filter of PLL filter. + kp_pll = 0.084, #PLL proportional gain + ki_pll = 4.69, #PLL integral gain + ) + + #Define an LCL filter:pll (generic function with 1 method)
    julia> filt() = LCLFilter(lf = 0.08, rf = 0.003, cf = 0.074, lg = 0.2, rg = 0.01)filt (generic function with 1 method)

    We will construct the inverter later by specifying to which static device is assigned.

    Dynamic Generator definition

    Similarly we will construct a dynamic generator as follows:

    julia> # Create the machine
    +       machine_oneDoneQ() = OneDOneQMachine(
    +           0.0, #R
    +           1.3125, #Xd
    +           1.2578, #Xq
    +           0.1813, #Xd_p
    +           0.25, #Xq_p
    +           5.89, #Td0_p
    +           0.6, #Tq0_p
    +       )
    +       
    +       # Shaftmachine_oneDoneQ (generic function with 1 method)
    julia> shaft_no_damping() = SingleMass( + 3.01, #H (M = 6.02 -> H = M/2) + 0.0, #D + ) + + # AVR: Type I: Resembles a DC1 AVRshaft_no_damping (generic function with 1 method)
    julia> avr_type1() = AVRTypeI( + 20.0, #Ka - Gain + 0.01, #Ke + 0.063, #Kf + 0.2, #Ta + 0.314, #Te + 0.35, #Tf + 0.001, #Tr + (min = -5.0, max = 5.0), + 0.0039, #Ae - 1st ceiling coefficient + 1.555, #Be - 2nd ceiling coefficient + ) + + #No TGavr_type1 (generic function with 1 method)
    julia> tg_none() = TGFixed(1.0) #efficiency + + #No PSStg_none (generic function with 1 method)
    julia> pss_none() = PSSFixed(0.0) #Vspss_none (generic function with 1 method)

    Now we will construct the dynamic generator and inverter.

    Add the components to the system

    julia> for g in get_components(Generator, threebus_sys)
    +           #Find the generator at bus 102
    +           if get_number(get_bus(g)) == 102
    +               #Create the dynamic generator
    +               case_gen = DynamicGenerator(
    +                   get_name(g),
    +                   1.0, # ω_ref,
    +                   machine_oneDoneQ(), #machine
    +                   shaft_no_damping(), #shaft
    +                   avr_type1(), #avr
    +                   tg_none(), #tg
    +                   pss_none(), #pss
    +               )
    +               #Attach the dynamic generator to the system by
    +               # specifying the dynamic and static components
    +               add_component!(threebus_sys, case_gen, g)
    +               #Find the generator at bus 103
    +           elseif get_number(get_bus(g)) == 103
    +               #Create the dynamic inverter
    +               case_inv = DynamicInverter(
    +                   get_name(g),
    +                   1.0, # ω_ref,
    +                   converter_high_power(), #converter
    +                   outer_control(), #outer control
    +                   inner_control(), #inner control voltage source
    +                   dc_source_lv(), #dc source
    +                   pll(), #pll
    +                   filt(), #filter
    +               )
    +               #Attach the dynamic inverter to the system
    +               add_component!(threebus_sys, case_inv, g)
    +           end
    +       end

    Save the system in a JSON file


    julia> to_json(threebus_sys, joinpath(file_dir, "threebus_sys.json"), force = true)
    diff --git a/previews/PR383/tutorials/tutorial_dynamic_lines/index.html b/previews/PR383/tutorials/tutorial_dynamic_lines/index.html new file mode 100644 index 000000000..43e53fd23 --- /dev/null +++ b/previews/PR383/tutorials/tutorial_dynamic_lines/index.html @@ -0,0 +1,297 @@ + +Dynamic Lines Simulation · PowerSimulationsDynamics.jl

    Line Modeling Simulations

    Originally Contributed by: Rodrigo Henriquez-Auba and José Daniel Lara

    Introduction

    This tutorial will introduce an example of considering dynamic lines in PowerSimulationsDynamics.

    This tutorial presents a simulation of a three-bus system, with an infinite bus (represented as a voltage source behind an impedance) at bus 1, a one d- one q- machine on bus 2 and an inverter of 19 states, as a virtual synchronous machine at bus 3. The perturbation will be the trip of two of the three circuits (triplicating its resistance and impedance) of the line that connects bus 1 and bus 3. This case also consider a dynamic line model for connection between buses 2 and 3. We will compare it against a system without dynamic lines.

    It is recommended to check the OMIB tutorial first, since that includes more details and explanations on all definitions and functions.

    Step 1: Package Initialization

    julia> using PowerSimulationsDynamics
    julia> using PowerSystems
    julia> using PowerNetworkMatrices
    julia> using PowerSystemCaseBuilder
    julia> using Sundials
    julia> using Plots
    Note

    PowerSystemCaseBuilder.jl is a helper library that makes it easier to reproduce examples in the documentation and tutorials. Normally you would pass your local files to create the system data instead of calling the function build_system. For more details visit PowerSystemCaseBuilder Documentation

    Step 2: Data creation

    Load the system using PowerSystemCaseBuilder.jl:

    julia> threebus_sys = build_system(PSIDSystems, "Three Bus Dynamic data Example System")System
    +┌───────────────────┬─────────────┐
    +│ Property          │ Value       │
    +├───────────────────┼─────────────┤
    +│ Name              │             │
    +│ Description       │             │
    +│ System Units Base │ SYSTEM_BASE │
    +│ Base Power        │ 100.0       │
    +│ Base Frequency    │ 60.0        │
    +│ Num Components    │ 19          │
    +└───────────────────┴─────────────┘
    +
    +Static Components
    +┌─────────────────┬───────┬────────────────────────┬───────────────┐
    +│ Type            │ Count │ Has Static Time Series │ Has Forecasts │
    +├─────────────────┼───────┼────────────────────────┼───────────────┤
    +│ ACBus           │ 3     │ false                  │ false         │
    +│ Arc             │ 3     │ false                  │ false         │
    +│ Area            │ 1     │ false                  │ false         │
    +│ Line            │ 3     │ false                  │ false         │
    +│ LoadZone        │ 1     │ false                  │ false         │
    +│ Source          │ 1     │ false                  │ false         │
    +│ StandardLoad    │ 3     │ false                  │ false         │
    +│ ThermalStandard │ 2     │ false                  │ false         │
    +└─────────────────┴───────┴────────────────────────┴───────────────┘
    +
    +Dynamic Components
    +┌──────────────────┬───────┐
    +│ Type             │ Count │
    +├──────────────────┼───────┤
    +│ DynamicGenerator │ 1     │
    +│ DynamicInverter  │ 1     │
    +└──────────────────┴───────┘

    In addition, we will create a new copy of the system on which we will simulate the same case, but will consider dynamic lines:

    julia> threebus_sys_dyn = deepcopy(threebus_sys);

    Step 3: Create the fault and simulation on the Static Lines system

    First, we construct the perturbation, by properly computing the new Ybus on the system:

    julia> #Make a copy of the original system
    +       sys2 = deepcopy(threebus_sys)
    +       #Triplicates the impedance of the line named "BUS 1-BUS 3-i_1"System
    +┌───────────────────┬─────────────┐
    +│ Property          │ Value       │
    +├───────────────────┼─────────────┤
    +│ Name              │             │
    +│ Description       │             │
    +│ System Units Base │ SYSTEM_BASE │
    +│ Base Power        │ 100.0       │
    +│ Base Frequency    │ 60.0        │
    +│ Num Components    │ 19          │
    +└───────────────────┴─────────────┘
    +
    +Static Components
    +┌─────────────────┬───────┬────────────────────────┬───────────────┐
    +│ Type            │ Count │ Has Static Time Series │ Has Forecasts │
    +├─────────────────┼───────┼────────────────────────┼───────────────┤
    +│ ACBus           │ 3     │ false                  │ false         │
    +│ Arc             │ 3     │ false                  │ false         │
    +│ Area            │ 1     │ false                  │ false         │
    +│ Line            │ 3     │ false                  │ false         │
    +│ LoadZone        │ 1     │ false                  │ false         │
    +│ Source          │ 1     │ false                  │ false         │
    +│ StandardLoad    │ 3     │ false                  │ false         │
    +│ ThermalStandard │ 2     │ false                  │ false         │
    +└─────────────────┴───────┴────────────────────────┴───────────────┘
    +
    +Dynamic Components
    +┌──────────────────┬───────┐
    +│ Type             │ Count │
    +├──────────────────┼───────┤
    +│ DynamicGenerator │ 1     │
    +│ DynamicInverter  │ 1     │
    +└──────────────────┴───────┘
    julia> fault_branches = get_components(ACBranch, sys2)ACBranch Counts: +Line: 3
    julia> for br in fault_branches + if get_name(br) == "BUS 1-BUS 3-i_1" + br.r = 3 * br.r + br.x = 3 * br.x + b_new = (from = br.b.from / 3, to = br.b.to / 3) + br.b = b_new + end + end + #Obtain the new Ybus
    julia> Ybus_fault = Ybus(sys2).data + #Define Fault: Change of YBus3×3 SparseArrays.SparseMatrixCSC{ComplexF64, Int64} with 9 stored entries: + 0.91954-10.9011im -0.689655+8.27586im -0.229885+2.75862im + -0.689655+8.27586im 0.714334-8.78642im -0.0246792+1.11056im + -0.229885+2.75862im -0.0246792+1.11056im 0.254564-3.33585im
    julia> Ybus_change = NetworkSwitch( + 1.0, #change at t = 1.0 + Ybus_fault, #New YBus + );

    Now, we construct the simulation:

    julia> #Time span of our simulation
    +       tspan = (0.0, 30.0)
    +       
    +       #Define Simulation(0.0, 30.0)
    julia> sim = Simulation( + ResidualModel, #Type of model used + threebus_sys, #system + pwd(), #folder to output results + tspan, #time span + Ybus_change, #Type of perturbation + )Simulation Summary +┌─────────────────────────┬────────────────┐ +│ Property │ Value │ +├─────────────────────────┼────────────────┤ +│ Status │ BUILT │ +│ Simulation Type │ Residual Model │ +│ Initialized? │ Yes │ +│ Multimachine system? │ No │ +│ Time Span │ (0.0, 30.0) │ +│ Number of States │ 33 │ +│ Number of Perturbations │ 1 │ +└─────────────────────────┴────────────────┘

    We can obtain the initial conditions as:

    julia> #Print the initial states. It also give the symbols used to describe those states.
    +       show_states_initial_value(sim)Voltage Variables
    +====================
    +BUS 1
    +====================
    +Vm 1.02
    +θ 0.0
    +====================
    +BUS 2
    +====================
    +Vm 1.0142
    +θ -0.0247
    +====================
    +BUS 3
    +====================
    +Vm 1.0059
    +θ 0.05
    +====================
    +====================
    +Differential States
    +generator-102-1
    +====================
    +eq_p 0.6478
    +ed_p 0.6672
    +δ 0.9386
    +ω 1.0
    +Vf 1.0781
    +Vr1 0.0333
    +Vr2 -0.1941
    +Vm 1.0142
    +====================
    +Differential States
    +generator-103-1
    +====================
    +θ_oc 0.4573
    +ω_oc 1.0
    +q_oc -0.4453
    +ξd_ic 0.0013
    +ξq_ic 0.0004
    +γd_ic 0.0615
    +γq_ic -0.0138
    +ϕd_ic 0.8765
    +ϕq_ic -0.1978
    +vd_pll 0.8986
    +vq_pll 0.0
    +ε_pll 0.0
    +θ_pll 0.2354
    +ir_cnv 0.7462
    +ii_cnv 0.757
    +vr_filter 0.8738
    +vi_filter 0.2095
    +ir_filter 0.7617
    +ii_filter 0.6923
    +====================

    Step 4: Run the simulation of the Static Lines System

    julia> #Run the simulation
    +       execute!(
    +           sim, #simulation structure
    +           IDA(), #Sundials DAE Solver
    +           dtmax = 0.02, #Maximum step size
    +       )SIMULATION_FINALIZED::BUILD_STATUS = 6

    Step 5: Store the solution

    julia> results = read_results(sim)Simulation Results Summary
    +┌────────────────────────────┬─────────────┐
    +│ Property                   │ Value       │
    +├────────────────────────────┼─────────────┤
    +│ System Base Power [MVA]    │ 100.0       │
    +│ System Base Frequency [Hz] │ 60.0        │
    +│ Time Span                  │ (0.0, 30.0) │
    +│ Total Time Steps           │ 1607        │
    +│ Number of States           │ 33          │
    +│ Total solve time           │ 2.412937354 │
    +└────────────────────────────┴─────────────┘
    julia> series2 = get_voltage_magnitude_series(results, 102)([0.0, 0.001, 0.002, 0.004, 0.008, 0.016, 0.032, 0.052000000000000005, 0.07200000000000001, 0.09200000000000001 … 29.83954153464911, 29.85954153464911, 29.87954153464911, 29.89954153464911, 29.91954153464911, 29.93954153464911, 29.95954153464911, 29.97954153464911, 29.999541534649108, 30.0], [1.0142000000000002, 1.0142000000001268, 1.0142000000001326, 1.0142000000001927, 1.01420000000014, 1.014200000000125, 1.0142000000001052, 1.0142000000000875, 1.014200000000071, 1.0142000000000564 … 1.0140816770731866, 1.0140823112693007, 1.014082942782033, 1.0140835715610201, 1.014084197556437, 1.0140848207190878, 1.0140854410003357, 1.0140860583521254, 1.0140866727269917, 1.0140866867751974])
    julia> zoom = [ + (series2[1][ix], series2[2][ix]) for + (ix, s) in enumerate(series2[1]) if (s > 0.90 && s < 1.6) + ];

    Step 3.1: Create the fault and simulation on the Dynamic Lines system

    An important aspect to consider is that DynamicLines must not be considered in the computation of the Ybus. First we construct the Dynamic Line, by finding the Line named "BUS 2-BUS 3-i_1", and then adding it to the system.

    julia> # get component return the Branch on threebus_sys_dyn named "BUS 2-BUS 3-i_1"
    +       dyn_branch = DynamicBranch(get_component(Line, threebus_sys_dyn,"BUS 2-BUS 3-i_1"))
    +       # Adding a dynamic line will immediately remove the static line from the system.
    +BUS 2-BUS 3-i_1 (DynamicBranch):
    +   branch: BUS 2-BUS 3-i_1 (Line)
    +   n_states: 2
    +   states: [:Il_R, :Il_I]
    +   internal: InfrastructureSystems.InfrastructureSystemsInternal
    julia> add_component!(threebus_sys_dyn, dyn_branch)

    Similarly, we construct the Ybus fault by creating a copy of the original system, but removing the Line "BUS 2-BUS 3-i_1" to avoid considering it in the Ybus:

    julia> #Make a copy of the original system
    +       sys3 = deepcopy(threebus_sys);
    +       #Remove Line "BUS 2-BUS 3-i_1"
    julia> remove_component!(Line, sys3, "BUS 2-BUS 3-i_1") + #Triplicates the impedance of the line named "BUS 1-BUS 2-i_1"
    julia> fault_branches2 = get_components(Line, sys3)Line Counts: +Line: 2
    julia> for br in fault_branches2 + if get_name(br) == "BUS 1-BUS 3-i_1" + br.r = 3 * br.r + br.x = 3 * br.x + b_new = (from = br.b.from / 3, to = br.b.to / 3) + br.b = b_new + end + end + #Obtain the new Ybus
    julia> Ybus_fault_dyn = Ybus(sys3).data + #Define Fault: Change of YBus3×3 SparseArrays.SparseMatrixCSC{ComplexF64, Int64} with 7 stored entries: + 0.91954-10.9011im -0.689655+8.27586im -0.229885+2.75862im + -0.689655+8.27586im 0.689655-8.17586im ⋅ + -0.229885+2.75862im ⋅ 0.229885-2.72529im
    julia> Ybus_change_dyn = NetworkSwitch( + 1.0, #change at t = 1.0 + Ybus_fault_dyn, #New YBus + )NetworkSwitch(1.0, sparse([1, 2, 3, 4, 5, 6, 1, 2, 4, 5 … 5, 6, 1, 2, 4, 5, 1, 3, 4, 6], [1, 1, 1, 1, 1, 1, 2, 2, 2, 2 … 4, 4, 5, 5, 5, 5, 6, 6, 6, 6], [0.9195402298850576, -0.6896551724137931, -0.2298850574712644, 10.901149425287358, -8.275862068965518, -2.7586206896551726, -0.6896551724137931, 0.6896551724137931, -8.275862068965518, 8.175862068965518 … -0.6896551724137931, -0.2298850574712644, 8.275862068965518, -8.175862068965518, -0.6896551724137931, 0.6896551724137931, 2.7586206896551726, -2.7252873563218394, -0.2298850574712644, 0.2298850574712644], 6, 6))

    Step 4.1: Run the simulation of the Dynamic Lines System

    Now, we construct the simulation:

    julia> # Define Simulation
    +       sim_dyn = Simulation(
    +           ResidualModel, #Type of model used
    +           threebus_sys_dyn, #system
    +           pwd(), #folder to output results
    +           (0.0, 30.0), #time span
    +           Ybus_change_dyn, #Type of perturbation
    +       )Simulation Summary
    +┌─────────────────────────┬────────────────┐
    +│ Property                │ Value          │
    +├─────────────────────────┼────────────────┤
    +│ Status                  │ BUILT          │
    +│ Simulation Type         │ Residual Model │
    +│ Initialized?            │ Yes            │
    +│ Multimachine system?    │ No             │
    +│ Time Span               │ (0.0, 30.0)    │
    +│ Number of States        │ 35             │
    +│ Number of Perturbations │ 1              │
    +└─────────────────────────┴────────────────┘
    julia> # Run the simulation
    +       execute!(
    +           sim_dyn, #simulation structure
    +           IDA(), #Sundials DAE Solver
    +           dtmax = 0.02, #Maximum step size
    +       )SIMULATION_FINALIZED::BUILD_STATUS = 6

    We can obtain the initial conditions as:

    julia> #Print the initial states. It also give the symbols used to describe those states.
    +       show_states_initial_value(sim_dyn)Voltage Variables
    +====================
    +BUS 1
    +====================
    +Vm 1.02
    +θ 0.0
    +====================
    +BUS 2
    +====================
    +Vm 1.0141
    +θ -0.0155
    +====================
    +BUS 3
    +====================
    +Vm 0.9686
    +θ 0.1354
    +====================
    +====================
    +Differential States
    +generator-102-1
    +====================
    +eq_p 0.681
    +ed_p 0.6477
    +δ 0.907
    +ω 1.0
    +Vf 1.1115
    +Vr1 0.0355
    +Vr2 -0.2001
    +Vm 1.0141
    +====================
    +Differential States
    +generator-103-1
    +====================
    +θ_oc 0.5658
    +ω_oc 1.0
    +q_oc -0.3799
    +ξd_ic 0.0014
    +ξq_ic 0.0003
    +γd_ic 0.0595
    +γq_ic -0.014
    +ϕd_ic 0.8484
    +ϕq_ic -0.201
    +vd_pll 0.8719
    +vq_pll 0.0
    +ε_pll -0.0
    +θ_pll 0.3332
    +ir_cnv 0.715
    +ii_cnv 0.7768
    +vr_filter 0.824
    +vi_filter 0.2851
    +ir_filter 0.7361
    +ii_filter 0.7158
    +====================
    +====================
    +Line Current States
    +====================
    +Line BUS 2-BUS 3-i_1
    +Il_R -0.16141
    +Il_I -0.06381
    +====================

    Step 5.1: Store the solution

    julia> results_dyn = read_results(sim_dyn)Simulation Results Summary
    +┌────────────────────────────┬─────────────┐
    +│ Property                   │ Value       │
    +├────────────────────────────┼─────────────┤
    +│ System Base Power [MVA]    │ 100.0       │
    +│ System Base Frequency [Hz] │ 60.0        │
    +│ Time Span                  │ (0.0, 30.0) │
    +│ Total Time Steps           │ 1721        │
    +│ Number of States           │ 35          │
    +│ Total solve time           │ 2.455206581 │
    +└────────────────────────────┴─────────────┘
    julia> series2_dyn = get_voltage_magnitude_series(results_dyn, 102);
    julia> zoom_dyn = [ + (series2_dyn[1][ix], series2_dyn[2][ix]) for + (ix, s) in enumerate(series2_dyn[1]) if (s > 0.90 && s < 1.6) + ];

    Step 6.1: Compare the solutions:

    We can observe the effect of Dynamic Lines

    julia> plot(series2_dyn, label = "V_gen_dyn");
    julia> plot!(series2, label = "V_gen_st", xlabel = "Time [s]", ylabel = "Voltage [pu]");

    plot

    that looks quite similar. The differences can be observed in the zoom plot:

    julia> plot(zoom_dyn, label = "V_gen_dyn");
    julia> plot!(zoom, label = "V_gen_st", xlabel = "Time [s]", ylabel = "Voltage [pu]");

    plot

    diff --git a/previews/PR383/tutorials/tutorial_inverter_modeling/index.html b/previews/PR383/tutorials/tutorial_inverter_modeling/index.html new file mode 100644 index 000000000..017edd273 --- /dev/null +++ b/previews/PR383/tutorials/tutorial_inverter_modeling/index.html @@ -0,0 +1,617 @@ + +Inverter Modeling · PowerSimulationsDynamics.jl

    Inverter Modeling simulation

    Originally Contributed by: José Daniel Lara

    Introduction

    This tutorial will introduce the modeling of an inverter with Virtual Inertia in a multi-machine model of the system. We will load the data directly from PSS/e dynamic files.

    The tutorial uses a modified 14-bus system on which all the synchronous machines have been substituted by generators with ESAC1A AVR's and no Turbine Governors.

    In the first portion of the tutorial we will simulate the system with the original data and cause a line trip between Buses 2 and 4. In the second part of the simulation, we will switch generator 6 with a battery using an inverter and perform the same fault.

    Load the packages

    julia> using PowerSimulationsDynamics
    julia> using PowerSystemCaseBuilder
    julia> using PowerSystems
    julia> const PSY = PowerSystemsPowerSystems
    julia> using PowerFlows
    julia> using Logging
    julia> using Sundials
    julia> using Plots
    Note

    PowerSystemCaseBuilder.jl is a helper library that makes it easier to reproduce examples in the documentation and tutorials. Normally you would pass your local files to create the system data instead of calling the function build_system. For more details visit PowerSystemCaseBuilder Documentation

    Create the system using PowerSystemCaseBuilder.jl:

    julia> sys = build_system(PSIDSystems, "14 Bus Base Case")System
    +┌───────────────────┬─────────────┐
    +│ Property          │ Value       │
    +├───────────────────┼─────────────┤
    +│ Name              │             │
    +│ Description       │             │
    +│ System Units Base │ SYSTEM_BASE │
    +│ Base Power        │ 100.0       │
    +│ Base Frequency    │ 60.0        │
    +│ Num Components    │ 77          │
    +└───────────────────┴─────────────┘
    +
    +Static Components
    +┌─────────────────┬───────┬────────────────────────┬───────────────┐
    +│ Type            │ Count │ Has Static Time Series │ Has Forecasts │
    +├─────────────────┼───────┼────────────────────────┼───────────────┤
    +│ ACBus           │ 14    │ false                  │ false         │
    +│ Arc             │ 20    │ false                  │ false         │
    +│ Area            │ 1     │ false                  │ false         │
    +│ Line            │ 16    │ false                  │ false         │
    +│ LoadZone        │ 1     │ false                  │ false         │
    +│ StandardLoad    │ 11    │ false                  │ false         │
    +│ TapTransformer  │ 3     │ false                  │ false         │
    +│ ThermalStandard │ 5     │ false                  │ false         │
    +│ Transformer2W   │ 1     │ false                  │ false         │
    +└─────────────────┴───────┴────────────────────────┴───────────────┘
    +
    +Dynamic Components
    +┌──────────────────┬───────┐
    +│ Type             │ Count │
    +├──────────────────┼───────┤
    +│ DynamicGenerator │ 4     │
    +│ DynamicGenerator │ 1     │
    +└──────────────────┴───────┘

    PowerSystemCaseBuilder.jl is a helper library that makes it easier to reproduce examples in the documentation and tutorials. Normally you would pass your local files to create the system data.

    Define Simulation Problem with a 20 second simulation period and the branch trip at t = 1.0:

    julia> sim = Simulation(
    +           ResidualModel, #Type of model used
    +           sys,         #system
    +           mktempdir(),       #path for the simulation output
    +           (0.0, 20.0), #time span
    +           BranchTrip(1.0, Line, "BUS 02-BUS 04-i_1");
    +           console_level = Logging.Info,
    +       )Iter     f(x) inf-norm    Step 2-norm 
    +------   --------------   --------------
    +Simulation Summary
    +┌─────────────────────────┬────────────────┐
    +│ Property                │ Value          │
    +├─────────────────────────┼────────────────┤
    +│ Status                  │ BUILT          │
    +│ Simulation Type         │ Residual Model │
    +│ Initialized?            │ Yes            │
    +│ Multimachine system?    │ Yes            │
    +│ Time Span               │ (0.0, 20.0)    │
    +│ Number of States        │ 86             │
    +│ Number of Perturbations │ 1              │
    +└─────────────────────────┴────────────────┘

    Now that the system is initialized, we can verify the system states for potential issues.

    julia> show_states_initial_value(sim)Voltage Variables
    +====================
    +BUS 01
    +====================
    +Vm 1.06
    +θ 0.0
    +====================
    +BUS 02
    +====================
    +Vm 1.04
    +θ -0.0711
    +====================
    +BUS 03
    +====================
    +Vm 1.01
    +θ -0.1787
    +====================
    +BUS 04
    +====================
    +Vm 1.0129
    +θ -0.1458
    +====================
    +BUS 05
    +====================
    +Vm 1.0165
    +θ -0.1235
    +====================
    +BUS 06
    +====================
    +Vm 1.06
    +θ -0.1949
    +====================
    +BUS 07
    +====================
    +Vm 1.0438
    +θ -0.1812
    +====================
    +BUS 08
    +====================
    +Vm 1.08
    +θ -0.1656
    +====================
    +BUS 09
    +====================
    +Vm 1.0263
    +θ -0.2102
    +====================
    +BUS 10
    +====================
    +Vm 1.0245
    +θ -0.2125
    +====================
    +BUS 11
    +====================
    +Vm 1.0384
    +θ -0.2059
    +====================
    +BUS 12
    +====================
    +Vm 1.0436
    +θ -0.2105
    +====================
    +BUS 13
    +====================
    +Vm 1.0372
    +θ -0.2119
    +====================
    +BUS 14
    +====================
    +Vm 1.0126
    +θ -0.2291
    +====================
    +====================
    +Differential States
    +generator-3-1
    +====================
    +eq_p 1.0649
    +ed_p 0.1243
    +ψ_kd 0.9872
    +ψ_kq 0.2132
    +δ 0.034
    +ω 1.0
    +Vm 1.01
    +Vr1 0.006
    +Vr2 2.419
    +Ve 1.791
    +Vr3 -0.0726
    +====================
    +Differential States
    +generator-8-1
    +====================
    +eq_p 1.2657
    +ed_p 0.0462
    +ψ_kd 1.1584
    +ψ_kq 0.1748
    +δ 0.019
    +ω 1.0
    +Vm 1.08
    +Vr1 0.0097
    +Vr2 3.9162
    +Ve 2.8839
    +Vr3 -0.1175
    +====================
    +Differential States
    +generator-1-1
    +====================
    +eq_p 1.0604
    +ed_p -0.0111
    +ψ_kd 1.0563
    +ψ_kq 0.1134
    +δ 0.1684
    +ω 1.0
    +Vm 1.06
    +Vr1 0.0049
    +Vr2 1.951
    +Ve 1.4049
    +Vr3 -0.0585
    +x_g1 0.3144
    +x_g2 0.3144
    +x_g3 0.3144
    +====================
    +Differential States
    +generator-2-1
    +====================
    +eq_p 1.1038
    +ed_p 0.1491
    +ψ_kd 1.003
    +ψ_kq 0.2748
    +δ 0.1963
    +ω 1.0
    +Vm 1.04
    +Vr1 0.0071
    +Vr2 2.8613
    +Ve 2.1338
    +Vr3 -0.0858
    +====================
    +Differential States
    +generator-6-1
    +====================
    +eq_p 1.167
    +ed_p 0.0955
    +ψ_kd 1.08
    +ψ_kq 0.3084
    +δ 0.1387
    +ω 1.0
    +Vm 1.06
    +Vr1 0.0082
    +Vr2 3.2875
    +Ve 2.4472
    +Vr3 -0.0986
    +====================

    We execute the simulation with an additional tolerance for the solver set at 1e-8:

    julia> execute!(sim, IDA(); abstol = 1e-8)SIMULATION_FINALIZED::BUILD_STATUS = 6

    Using PowerSimulationsDynamics tools for exploring the results, we can plot all the voltage results for the buses:

    julia> result = read_results(sim)Simulation Results Summary
    +┌────────────────────────────┬─────────────┐
    +│ Property                   │ Value       │
    +├────────────────────────────┼─────────────┤
    +│ System Base Power [MVA]    │ 100.0       │
    +│ System Base Frequency [Hz] │ 60.0        │
    +│ Time Span                  │ (0.0, 20.0) │
    +│ Total Time Steps           │ 342         │
    +│ Number of States           │ 86          │
    +│ Total solve time           │ 2.202302834 │
    +└────────────────────────────┴─────────────┘
    julia> p = plot();
    julia> for b in get_components(ACBus, sys) + voltage_series = get_voltage_magnitude_series(result, get_number(b)) + plot!( + p, + voltage_series; + xlabel = "Time", + ylabel = "Voltage Magnitude [pu]", + label = "Bus - $(get_name(b))", + ); + end

    plot

    We can also explore the frequency of the different generators

    julia> p2 = plot();
    julia> for g in get_components(ThermalStandard, sys) + state_series = get_state_series(result, (get_name(g), :ω)) + plot!( + p2, + state_series; + xlabel = "Time", + ylabel = "Speed [pu]", + label = "$(get_name(g)) - ω", + ); + end

    plot

    It is also possible to explore the small signal stability of this system we created.

    julia> res = small_signal_analysis(sim)The system is small signal stable

    The eigenvalues can be explored

    julia> res.eigenvalues58-element Vector{ComplexF64}:
    +  -1000.0000000000009 + 0.0im
    +  -1000.0000000000006 + 0.0im
    +  -1000.0000000000005 + 0.0im
    +  -1000.0000000000002 + 0.0im
    +   -999.9999999999994 + 0.0im
    +    -51.8336437195576 + 0.0im
    +   -51.70455018825636 + 0.0im
    +   -51.44437441320372 - 0.018220782843113438im
    +   -51.44437441320372 + 0.018220782843113438im
    +   -51.41020350332119 + 0.0im
    +                      ⋮
    +  -0.8293800767696595 - 0.04428569213206042im
    +  -0.8293800767696595 + 0.04428569213206042im
    +  -0.6362034818550809 + 0.0im
    +                 -0.5 + 0.0im
    +  -0.4682884182384499 + 0.0im
    + -0.28233919601444385 + 0.0im
    +  -0.2291061939257908 - 7.684635708748412im
    +  -0.2291061939257908 + 7.684635708748412im
    +                  0.0 + 0.0im

    Modifying the system and adding storage

    Reload the system for this example:

    julia> sys = build_system(PSIDSystems, "14 Bus Base Case")
    +       
    +       # We want to remove the generator 6 and the dynamic component attached to it.System
    +┌───────────────────┬─────────────┐
    +│ Property          │ Value       │
    +├───────────────────┼─────────────┤
    +│ Name              │             │
    +│ Description       │             │
    +│ System Units Base │ SYSTEM_BASE │
    +│ Base Power        │ 100.0       │
    +│ Base Frequency    │ 60.0        │
    +│ Num Components    │ 77          │
    +└───────────────────┴─────────────┘
    +
    +Static Components
    +┌─────────────────┬───────┬────────────────────────┬───────────────┐
    +│ Type            │ Count │ Has Static Time Series │ Has Forecasts │
    +├─────────────────┼───────┼────────────────────────┼───────────────┤
    +│ ACBus           │ 14    │ false                  │ false         │
    +│ Arc             │ 20    │ false                  │ false         │
    +│ Area            │ 1     │ false                  │ false         │
    +│ Line            │ 16    │ false                  │ false         │
    +│ LoadZone        │ 1     │ false                  │ false         │
    +│ StandardLoad    │ 11    │ false                  │ false         │
    +│ TapTransformer  │ 3     │ false                  │ false         │
    +│ ThermalStandard │ 5     │ false                  │ false         │
    +│ Transformer2W   │ 1     │ false                  │ false         │
    +└─────────────────┴───────┴────────────────────────┴───────────────┘
    +
    +Dynamic Components
    +┌──────────────────┬───────┐
    +│ Type             │ Count │
    +├──────────────────┼───────┤
    +│ DynamicGenerator │ 4     │
    +│ DynamicGenerator │ 1     │
    +└──────────────────┴───────┘
    julia> thermal_gen = get_component(ThermalStandard, sys, "generator-6-1")generator-6-1 (ThermalStandard): + name: generator-6-1 + available: true + status: true + bus: BUS 06 (ACBus) + active_power: 0.15 + reactive_power: 0.14800000000000002 + rating: 99.99028802838804 + active_power_limits: (min = -99.99, max = 99.99) + reactive_power_limits: (min = -0.06, max = 0.24) + ramp_limits: (up = 24.9975, down = 24.9975) + operation_cost: ThreePartCost + base_power: 25.0 + time_limits: nothing + must_run: false + prime_mover_type: PrimeMovers.OT = 19 + fuel: ThermalFuels.OTHER = 14 + services: 0-element Vector{Service} + time_at_status: 10000.0 + dynamic_injector: generator-6-1 (DynamicGenerator{RoundRotorQuadratic, SingleMass, ESAC1A, TGFixed, PSSFixed}) + ext: Dict{String, Any}("z_source" => Dict{String, Any}("x" => 0.12, "r" => 0)) + time_series_container: + InfrastructureSystems.SystemUnitsSettings: + base_value: 100.0 + unit_system: UnitSystem.SYSTEM_BASE = 0
    julia> remove_component!(sys, get_dynamic_injector(thermal_gen))
    julia> remove_component!(sys, thermal_gen) + + # We can now define our storage device and add it to the system
    julia> storage = GenericBattery( + name = "Battery", + bus = get_component(Bus, sys, "BUS 06"), + available = true, + prime_mover = PrimeMovers.BA, + active_power = 0.6, + reactive_power = 0.16, + rating = 1.1, + base_power = 25.0, + initial_energy = 50.0, + state_of_charge_limits = (min = 5.0, max = 100.0), + input_active_power_limits = (min = 0.0, max = 1.0), + output_active_power_limits = (min = 0.0, max = 1.0), + reactive_power_limits = (min = -1.0, max = 1.0), + efficiency = (in = 0.80, out = 0.90), + )ERROR: UndefKeywordError: keyword argument `prime_mover_type` not assigned
    julia> add_component!(sys, storage)ERROR: UndefVarError: `storage` not defined

    A good sanity check it running a power flow on the system to make sure all the components are properly scaled and that the system is properly balanced. We can use PowerSystems to perform this check. We can get the results back and perform a sanity check.

    julia> res = solve_powerflow(ACPowerFlow(), sys)Dict{String, DataFrames.DataFrame} with 2 entries:
    +  "flow_results" => 20×9 DataFrame…
    +  "bus_results"  => 14×9 DataFrame…
    julia> res["bus_results"]14×9 DataFrame + Row │ bus_number Vm θ P_gen P_load P_net Q_gen ⋯ + │ Int64 Float64 Float64 Float64 Float64 Float64 Float64 ⋯ +─────┼────────────────────────────────────────────────────────────────────────── + 1 │ 1 1.06 0.0 209.537 0.0 209.537 -0.974255 ⋯ + 2 │ 2 1.04 -0.0770544 30.0 21.7 8.3 31.1788 + 3 │ 3 1.01 -0.188366 20.0 94.2 -74.2 22.6545 + 4 │ 4 1.01107 -0.158262 0.0 47.8 -47.8 0.0 + 5 │ 5 1.01415 -0.13611 0.0 7.6 -7.6 0.0 ⋯ + 6 │ 6 1.06 -0.230397 0.0 11.2 -11.2 18.3298 + 7 │ 7 1.04369 -0.19934 0.0 0.0 0.0 0.0 + 8 │ 8 1.08 -0.183712 10.0 0.0 10.0 22.3421 + 9 │ 9 1.02727 -0.231347 0.0 29.5 -29.5 0.0 ⋯ + 10 │ 10 1.02551 -0.236217 0.0 9.0 -9.0 0.0 + 11 │ 11 1.03904 -0.235418 0.0 3.5 -3.5 0.0 + 12 │ 12 1.04357 -0.245043 0.0 6.1 -6.1 0.0 + 13 │ 13 1.03753 -0.245351 0.0 13.5 -13.5 0.0 ⋯ + 14 │ 14 1.01337 -0.255634 0.0 14.9 -14.9 0.0 + 2 columns omitted

    After verifying that the system works, we can define our inverter dynamics and add it to the battery that has already been stored in the system.

    julia> inverter = DynamicInverter(
    +           name = get_name(storage),
    +           ω_ref = 1.0, # ω_ref,
    +           converter = AverageConverter(rated_voltage = 138.0, rated_current = 100.0),
    +           outer_control = OuterControl(
    +               VirtualInertia(Ta = 2.0, kd = 400.0, kω = 20.0),
    +               ReactivePowerDroop(kq = 0.2, ωf = 1000.0),
    +           ),
    +           inner_control = VoltageModeControl(
    +               kpv = 0.59,     #Voltage controller proportional gain
    +               kiv = 736.0,    #Voltage controller integral gain
    +               kffv = 0.0,     #Binary variable enabling the voltage feed-forward in output of current controllers
    +               rv = 0.0,       #Virtual resistance in pu
    +               lv = 0.2,       #Virtual inductance in pu
    +               kpc = 1.27,     #Current controller proportional gain
    +               kic = 14.3,     #Current controller integral gain
    +               kffi = 0.0,     #Binary variable enabling the current feed-forward in output of current controllers
    +               ωad = 50.0,     #Active damping low pass filter cut-off frequency
    +               kad = 0.2,
    +           ),
    +           dc_source = FixedDCSource(voltage = 600.0),
    +           freq_estimator = KauraPLL(
    +               ω_lp = 500.0, #Cut-off frequency for LowPass filter of PLL filter.
    +               kp_pll = 0.084,  #PLL proportional gain
    +               ki_pll = 4.69,   #PLL integral gain
    +           ),
    +           filter = LCLFilter(lf = 0.08, rf = 0.003, cf = 0.074, lg = 0.2, rg = 0.01),
    +       )ERROR: UndefVarError: `storage` not defined
    julia> add_component!(sys, inverter, storage)ERROR: UndefVarError: `inverter` not defined

    These are the current system components:

    julia> sysSystem
    +┌───────────────────┬─────────────┐
    +│ Property          │ Value       │
    +├───────────────────┼─────────────┤
    +│ Name              │             │
    +│ Description       │             │
    +│ System Units Base │ SYSTEM_BASE │
    +│ Base Power        │ 100.0       │
    +│ Base Frequency    │ 60.0        │
    +│ Num Components    │ 75          │
    +└───────────────────┴─────────────┘
    +
    +Static Components
    +┌─────────────────┬───────┬────────────────────────┬───────────────┐
    +│ Type            │ Count │ Has Static Time Series │ Has Forecasts │
    +├─────────────────┼───────┼────────────────────────┼───────────────┤
    +│ ACBus           │ 14    │ false                  │ false         │
    +│ Arc             │ 20    │ false                  │ false         │
    +│ Area            │ 1     │ false                  │ false         │
    +│ Line            │ 16    │ false                  │ false         │
    +│ LoadZone        │ 1     │ false                  │ false         │
    +│ StandardLoad    │ 11    │ false                  │ false         │
    +│ TapTransformer  │ 3     │ false                  │ false         │
    +│ ThermalStandard │ 4     │ false                  │ false         │
    +│ Transformer2W   │ 1     │ false                  │ false         │
    +└─────────────────┴───────┴────────────────────────┴───────────────┘
    +
    +Dynamic Components
    +┌──────────────────┬───────┐
    +│ Type             │ Count │
    +├──────────────────┼───────┤
    +│ DynamicGenerator │ 3     │
    +│ DynamicGenerator │ 1     │
    +└──────────────────┴───────┘

    Define Simulation problem using the same parameters:

    julia> sim = Simulation(
    +           ResidualModel, #Type of model used
    +           sys,         #system
    +           mktempdir(),       #path for the simulation output
    +           (0.0, 20.0), #time span
    +           BranchTrip(1.0, Line, "BUS 02-BUS 04-i_1");
    +           console_level = Logging.Info,
    +       )┌ Error: ResidualModel failed to build
    +│   exception =
    +│    No devices in bus BUS 06
    +│    Stacktrace:
    +│      [1] error(s::String)
    +│        @ Base ./error.jl:35
    +│      [2] _reactive_power_redistribution_pv(sys::System, Q_gen::Float64, bus::ACBus)
    +│        @ PowerFlows ~/.julia/packages/PowerFlows/6nw6s/src/post_processing.jl:310
    +│      [3] write_powerflow_solution!(sys::System, result::Vector{Float64})
    +│        @ PowerFlows ~/.julia/packages/PowerFlows/6nw6s/src/post_processing.jl:447
    +│      [4] solve_ac_powerflow!(system::System; kwargs::@Kwargs{})
    +│        @ PowerFlows ~/.julia/packages/PowerFlows/6nw6s/src/nlsolve_ac_powerflow.jl:46
    +│      [5] solve_ac_powerflow!
    +│        @ ~/.julia/packages/PowerFlows/6nw6s/src/nlsolve_ac_powerflow.jl:33 [inlined]
    +│      [6] power_flow_solution!(initial_guess::Vector{Float64}, sys::System, inputs::PowerSimulationsDynamics.SimulationInputs)
    +│        @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/base/simulation_initialization.jl:14
    +│      [7] macro expansion
    +│        @ ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/base/simulation_initialization.jl:163 [inlined]
    +│      [8] macro expansion
    +│        @ ~/.julia/packages/TimerOutputs/Lw5SP/src/TimerOutput.jl:237 [inlined]
    +│      [9] _calculate_initial_guess!(x0_init::Vector{Float64}, sim::Simulation{ResidualModel})
    +│        @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/base/simulation_initialization.jl:162
    +│     [10] precalculate_initial_conditions!
    +│        @ ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/base/simulation_initialization.jl:184 [inlined]
    +│     [11] _pre_initialize_simulation!(sim::Simulation{ResidualModel})
    +│        @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/base/simulation.jl:266
    +│     [12] macro expansion
    +│        @ ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/base/simulation.jl:443 [inlined]
    +│     [13] macro expansion
    +│        @ ~/.julia/packages/TimerOutputs/Lw5SP/src/TimerOutput.jl:237 [inlined]
    +│     [14] macro expansion
    +│        @ ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/base/simulation.jl:442 [inlined]
    +│     [15] macro expansion
    +│        @ ~/.julia/packages/TimerOutputs/Lw5SP/src/TimerOutput.jl:237 [inlined]
    +│     [16] _build!(sim::Simulation{ResidualModel}; kwargs::@Kwargs{console_level::Base.CoreLogging.LogLevel})
    +│        @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/base/simulation.jl:423
    +│     [17] _build!
    +│        @ ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/base/simulation.jl:412 [inlined]
    +│     [18] (::PowerSimulationsDynamics.var"#125#126"{@Kwargs{console_level::Base.CoreLogging.LogLevel}, Simulation{ResidualModel}})()
    +│        @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/base/simulation.jl:478
    +│     [19] with_logstate(f::Function, logstate::Any)
    +│        @ Base.CoreLogging ./logging.jl:515
    +│     [20] with_logger
    +│        @ ./logging.jl:627 [inlined]
    +│     [21] #build!#124
    +│        @ ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/base/simulation.jl:477 [inlined]
    +│     [22] build!
    +│        @ ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/base/simulation.jl:475 [inlined]
    +│     [23] Simulation(::Type{ResidualModel}, system::System, simulation_folder::String, tspan::Tuple{Float64, Float64}, perturbations::Vector{BranchTrip}; kwargs::@Kwargs{console_level::Base.CoreLogging.LogLevel})
    +│        @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/base/simulation.jl:188
    +│     [24] Simulation
    +│        @ ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/base/simulation.jl:166 [inlined]
    +│     [25] #Simulation#108
    +│        @ ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/base/simulation.jl:78 [inlined]
    +│     [26] top-level scope
    +│        @ REPL[1]:1
    +│     [27] eval
    +│        @ ./boot.jl:385 [inlined]
    +│     [28] #21
    +│        @ ~/.julia/packages/Documenter/bYYzK/src/Expanders.jl:721 [inlined]
    +│     [29] cd(f::Documenter.Expanders.var"#21#23"{Module}, dir::String)
    +│        @ Base.Filesystem ./file.jl:112
    +│     [30] (::Documenter.Expanders.var"#20#22"{Documenter.Documents.Page, Module})()
    +│        @ Documenter.Expanders ~/.julia/packages/Documenter/bYYzK/src/Expanders.jl:720
    +│     [31] (::IOCapture.var"#5#9"{DataType, Documenter.Expanders.var"#20#22"{Documenter.Documents.Page, Module}, IOContext{Base.PipeEndpoint}, IOContext{Base.PipeEndpoint}, IOContext{Base.PipeEndpoint}, IOContext{Base.PipeEndpoint}})()
    +│        @ IOCapture ~/.julia/packages/IOCapture/Y5rEA/src/IOCapture.jl:170
    +│     [32] with_logstate(f::Function, logstate::Any)
    +│        @ Base.CoreLogging ./logging.jl:515
    +│     [33] with_logger
    +│        @ ./logging.jl:627 [inlined]
    +│     [34] capture(f::Documenter.Expanders.var"#20#22"{Documenter.Documents.Page, Module}; rethrow::Type, color::Bool, passthrough::Bool, capture_buffer::IOBuffer, io_context::Vector{Any})
    +│        @ IOCapture ~/.julia/packages/IOCapture/Y5rEA/src/IOCapture.jl:167
    +│     [35] runner(::Type{Documenter.Expanders.REPLBlocks}, x::Markdown.Code, page::Documenter.Documents.Page, doc::Documenter.Documents.Document)
    +│        @ Documenter.Expanders ~/.julia/packages/Documenter/bYYzK/src/Expanders.jl:719
    +│     [36] dispatch(::Type{Documenter.Expanders.ExpanderPipeline}, ::Markdown.Code, ::Vararg{Any})
    +│        @ Documenter.Utilities.Selectors ~/.julia/packages/Documenter/bYYzK/src/Utilities/Selectors.jl:170
    +│     [37] expand(doc::Documenter.Documents.Document)
    +│        @ Documenter.Expanders ~/.julia/packages/Documenter/bYYzK/src/Expanders.jl:42
    +│     [38] runner(::Type{Documenter.Builder.ExpandTemplates}, doc::Documenter.Documents.Document)
    +│        @ Documenter.Builder ~/.julia/packages/Documenter/bYYzK/src/Builder.jl:226
    +│     [39] dispatch(::Type{Documenter.Builder.DocumentPipeline}, x::Documenter.Documents.Document)
    +│        @ Documenter.Utilities.Selectors ~/.julia/packages/Documenter/bYYzK/src/Utilities/Selectors.jl:170
    +│     [40] #2
    +│        @ ~/.julia/packages/Documenter/bYYzK/src/Documenter.jl:273 [inlined]
    +│     [41] cd(f::Documenter.var"#2#3"{Documenter.Documents.Document}, dir::String)
    +│        @ Base.Filesystem ./file.jl:112
    +│     [42] makedocs(; debug::Bool, format::Documenter.Writers.HTMLWriter.HTML, kwargs::@Kwargs{modules::Vector{Module}, sitename::String, pages::Vector{Any}})
    +│        @ Documenter ~/.julia/packages/Documenter/bYYzK/src/Documenter.jl:272
    +│     [43] top-level scope
    +│        @ ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/docs/make.jl:3
    +│     [44] include(mod::Module, _path::String)
    +│        @ Base ./Base.jl:495
    +│     [45] exec_options(opts::Base.JLOptions)
    +│        @ Base ./client.jl:318
    +│     [46] _start()
    +│        @ Base ./client.jl:552
    +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/base/simulation.jl:468
    +Simulation Summary
    +┌─────────────────────────┬────────────────┐
    +│ Property                │ Value          │
    +├─────────────────────────┼────────────────┤
    +│ Status                  │ BUILD_FAILED   │
    +│ Simulation Type         │ Residual Model │
    +│ Initialized?            │ No             │
    +│ Multimachine system?    │ Yes            │
    +│ Time Span               │ (0.0, 20.0)    │
    +│ Number of States        │ 75             │
    +│ Number of Perturbations │ 1              │
    +└─────────────────────────┴────────────────┘

    We can verify the small signal stability of the system before running the simulation:

    julia> res = small_signal_analysis(sim)ERROR: ArgumentError: matrix contains Infs or NaNs

    Exploring the eigenvalues:

    julia> res.eigenvaluesERROR: type Dict has no field eigenvalues

    We execute the simulation

    julia> execute!(sim, IDA(); abstol = 1e-8)┌ Error: Execution failed
    +│   exception =
    +│    The Simulation status is BUILD_FAILED. Can not continue, correct your inputs and build the simulation again.
    +│    Stacktrace:
    +│      [1] error(s::String)
    +│        @ Base ./error.jl:35
    +│      [2] simulation_pre_step!(sim::Simulation{ResidualModel})
    +│        @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/base/simulation.jl:496
    +│      [3] _execute!(sim::Simulation{ResidualModel}, solver::Sundials.IDA{:Dense, Nothing, Nothing}; kwargs::@Kwargs{abstol::Float64})
    +│        @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/base/simulation.jl:522
    +│      [4] _execute!
    +│        @ ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/base/simulation.jl:520 [inlined]
    +│      [5] (::PowerSimulationsDynamics.var"#133#134"{@Kwargs{abstol::Float64}, Simulation{ResidualModel}, Sundials.IDA{:Dense, Nothing, Nothing}})()
    +│        @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/base/simulation.jl:579
    +│      [6] with_logstate(f::Function, logstate::Any)
    +│        @ Base.CoreLogging ./logging.jl:515
    +│      [7] with_logger
    +│        @ ./logging.jl:627 [inlined]
    +│      [8] #execute!#132
    +│        @ ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/base/simulation.jl:577 [inlined]
    +│      [9] top-level scope
    +│        @ REPL[1]:1
    +│     [10] eval
    +│        @ ./boot.jl:385 [inlined]
    +│     [11] #21
    +│        @ ~/.julia/packages/Documenter/bYYzK/src/Expanders.jl:721 [inlined]
    +│     [12] cd(f::Documenter.Expanders.var"#21#23"{Module}, dir::String)
    +│        @ Base.Filesystem ./file.jl:112
    +│     [13] (::Documenter.Expanders.var"#20#22"{Documenter.Documents.Page, Module})()
    +│        @ Documenter.Expanders ~/.julia/packages/Documenter/bYYzK/src/Expanders.jl:720
    +│     [14] (::IOCapture.var"#5#9"{DataType, Documenter.Expanders.var"#20#22"{Documenter.Documents.Page, Module}, IOContext{Base.PipeEndpoint}, IOContext{Base.PipeEndpoint}, IOContext{Base.PipeEndpoint}, IOContext{Base.PipeEndpoint}})()
    +│        @ IOCapture ~/.julia/packages/IOCapture/Y5rEA/src/IOCapture.jl:170
    +│     [15] with_logstate(f::Function, logstate::Any)
    +│        @ Base.CoreLogging ./logging.jl:515
    +│     [16] with_logger
    +│        @ ./logging.jl:627 [inlined]
    +│     [17] capture(f::Documenter.Expanders.var"#20#22"{Documenter.Documents.Page, Module}; rethrow::Type, color::Bool, passthrough::Bool, capture_buffer::IOBuffer, io_context::Vector{Any})
    +│        @ IOCapture ~/.julia/packages/IOCapture/Y5rEA/src/IOCapture.jl:167
    +│     [18] runner(::Type{Documenter.Expanders.REPLBlocks}, x::Markdown.Code, page::Documenter.Documents.Page, doc::Documenter.Documents.Document)
    +│        @ Documenter.Expanders ~/.julia/packages/Documenter/bYYzK/src/Expanders.jl:719
    +│     [19] dispatch(::Type{Documenter.Expanders.ExpanderPipeline}, ::Markdown.Code, ::Vararg{Any})
    +│        @ Documenter.Utilities.Selectors ~/.julia/packages/Documenter/bYYzK/src/Utilities/Selectors.jl:170
    +│     [20] expand(doc::Documenter.Documents.Document)
    +│        @ Documenter.Expanders ~/.julia/packages/Documenter/bYYzK/src/Expanders.jl:42
    +│     [21] runner(::Type{Documenter.Builder.ExpandTemplates}, doc::Documenter.Documents.Document)
    +│        @ Documenter.Builder ~/.julia/packages/Documenter/bYYzK/src/Builder.jl:226
    +│     [22] dispatch(::Type{Documenter.Builder.DocumentPipeline}, x::Documenter.Documents.Document)
    +│        @ Documenter.Utilities.Selectors ~/.julia/packages/Documenter/bYYzK/src/Utilities/Selectors.jl:170
    +│     [23] #2
    +│        @ ~/.julia/packages/Documenter/bYYzK/src/Documenter.jl:273 [inlined]
    +│     [24] cd(f::Documenter.var"#2#3"{Documenter.Documents.Document}, dir::String)
    +│        @ Base.Filesystem ./file.jl:112
    +│     [25] makedocs(; debug::Bool, format::Documenter.Writers.HTMLWriter.HTML, kwargs::@Kwargs{modules::Vector{Module}, sitename::String, pages::Vector{Any}})
    +│        @ Documenter ~/.julia/packages/Documenter/bYYzK/src/Documenter.jl:272
    +│     [26] top-level scope
    +│        @ ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/docs/make.jl:3
    +│     [27] include(mod::Module, _path::String)
    +│        @ Base ./Base.jl:495
    +│     [28] exec_options(opts::Base.JLOptions)
    +│        @ Base ./client.jl:318
    +│     [29] _start()
    +│        @ Base ./client.jl:552
    +└ @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/base/simulation.jl:581
    +SIMULATION_FAILED::BUILD_STATUS = 7

    Using PowerSimulationsDynamics tools for exploring the results, we can plot all the voltage results for the buses

    julia> result = read_results(sim)
    julia> p = plot();
    julia> for b in get_components(ACBus, sys) + voltage_series = get_voltage_magnitude_series(result, get_number(b)) + plot!( + p, + voltage_series; + xlabel = "Time", + ylabel = "Voltage Magnitude [pu]", + label = "Bus - $(get_name(b))", + ); + endERROR: MethodError: no method matching get_voltage_magnitude_series(::Nothing, ::Int64) + +Closest candidates are: + get_voltage_magnitude_series(!Matched::SimulationResults, ::Int64; dt) + @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/base/simulation_results.jl:327

    plot

    We can also explore the frequency of the different static generators and storage

    julia> p2 = plot();
    julia> for g in get_components(ThermalStandard, sys) + state_series = get_state_series(result, (get_name(g), :ω)) + plot!( + p2, + state_series; + xlabel = "Time", + ylabel = "Speed [pu]", + label = "$(get_name(g)) - ω", + ); + endERROR: MethodError: no method matching get_state_series(::Nothing, ::Tuple{String, Symbol}) + +Closest candidates are: + get_state_series(!Matched::SimulationResults, ::Tuple{String, Symbol}; dt) + @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/base/simulation_results.jl:310
    julia> state_series = get_state_series(result, ("Battery", :ω_oc))ERROR: MethodError: no method matching get_state_series(::Nothing, ::Tuple{String, Symbol}) + +Closest candidates are: + get_state_series(!Matched::SimulationResults, ::Tuple{String, Symbol}; dt) + @ PowerSimulationsDynamics ~/work/PowerSimulationsDynamics.jl/PowerSimulationsDynamics.jl/src/base/simulation_results.jl:310
    julia> plot!(p2, state_series; xlabel = "Time", ylabel = "Speed [pu]", label = "Battery - ω");ERROR: UndefVarError: `state_series` not defined

    plot

    diff --git a/previews/PR383/tutorials/tutorial_omib/index.html b/previews/PR383/tutorials/tutorial_omib/index.html new file mode 100644 index 000000000..dd0b22a03 --- /dev/null +++ b/previews/PR383/tutorials/tutorial_omib/index.html @@ -0,0 +1,95 @@ + +OMIB · PowerSimulationsDynamics.jl

    One Machine against Infinite Bus (OMIB) Simulation

    Originally Contributed by: Rodrigo Henriquez-Auba and José Daniel Lara

    Introduction

    This tutorial will introduce you to the functionality of PowerSimulationsDynamics for running power system dynamic simulations.

    This tutorial presents a simulation of a two-bus system with an infinite bus (represented as a voltage source behind an impedance) at bus 1, and a classic machine on bus 2. The perturbation will be the trip of one of the two circuits (doubling its resistance and impedance) of the line that connects both buses.

    Dependencies

    julia> using PowerSimulationsDynamics
    julia> PSID = PowerSimulationsDynamicsPowerSimulationsDynamics
    julia> using PowerSystemCaseBuilder
    julia> using PowerSystems
    julia> const PSY = PowerSystemsPowerSystems
    julia> using Sundials
    julia> using Plots
    julia> gr()Plots.GRBackend()
    Note

    PowerSystemCaseBuilder.jl is a helper library that makes it easier to reproduce examples in the documentation and tutorials. Normally you would pass your local files to create the system data instead of calling the function build_system. For more details visit PowerSystemCaseBuilder Documentation

    PowerSystems (abbreviated with PSY) is used to properly define the data structure and establish an equilibrium point initial condition with a power flow routine, while Sundials is used to solve the problem defined in PowerSimulationsDynamics.

    Load the system

    We load the system using PowerSystemCaseBuilder.jl:

    julia> omib_sys = build_system(PSIDSystems, "OMIB System")System
    +┌───────────────────┬─────────────┐
    +│ Property          │ Value       │
    +├───────────────────┼─────────────┤
    +│ Name              │             │
    +│ Description       │             │
    +│ System Units Base │ SYSTEM_BASE │
    +│ Base Power        │ 100.0       │
    +│ Base Frequency    │ 60.0        │
    +│ Num Components    │ 10          │
    +└───────────────────┴─────────────┘
    +
    +Static Components
    +┌─────────────────┬───────┬────────────────────────┬───────────────┐
    +│ Type            │ Count │ Has Static Time Series │ Has Forecasts │
    +├─────────────────┼───────┼────────────────────────┼───────────────┤
    +│ ACBus           │ 2     │ false                  │ false         │
    +│ Arc             │ 1     │ false                  │ false         │
    +│ Area            │ 1     │ false                  │ false         │
    +│ Line            │ 2     │ false                  │ false         │
    +│ LoadZone        │ 1     │ false                  │ false         │
    +│ Source          │ 1     │ false                  │ false         │
    +│ ThermalStandard │ 1     │ false                  │ false         │
    +└─────────────────┴───────┴────────────────────────┴───────────────┘
    +
    +Dynamic Components
    +┌──────────────────┬───────┐
    +│ Type             │ Count │
    +├──────────────────┼───────┤
    +│ DynamicGenerator │ 1     │
    +└──────────────────┴───────┘

    Build the simulation and initialize the problem

    The next step is to create the simulation structure. This will create the indexing of our system that will be used to formulate the differential-algebraic system of equations. To do so, it is required to specify the perturbation that will occur in the system. PowerSimulationsDynamics supports multiple types of perturbations. See Perturbations

    Here, we will use a Branch Trip perturbation, that is modeled by modifying the specifying which line we want to trip. In this case we disconnect one of the lines that connects BUS 1 and BUS 2, named "BUS 1-BUS 2-i_1".

    With this, we are ready to create our simulation structure:

    julia> time_span = (0.0, 30.0)(0.0, 30.0)
    julia> perturbation_trip = BranchTrip(1.0, Line, "BUS 1-BUS 2-i_1")BranchTrip(1.0, Line, "BUS 1-BUS 2-i_1")
    julia> sim = PSID.Simulation( + ResidualModel, # Type of formulation + omib_sys, # System + mktempdir(), # Output directory + time_span, + perturbation_trip)Simulation Summary +┌─────────────────────────┬────────────────┐ +│ Property │ Value │ +├─────────────────────────┼────────────────┤ +│ Status │ BUILT │ +│ Simulation Type │ Residual Model │ +│ Initialized? │ Yes │ +│ Multimachine system? │ No │ +│ Time Span │ (0.0, 30.0) │ +│ Number of States │ 6 │ +│ Number of Perturbations │ 1 │ +└─────────────────────────┴────────────────┘

    This will automatically initialize the system by running a power flow and update V_ref, P_ref and hence eq_p (the internal voltage) to match the solution of the power flow. It will also initialize the states in the equilibrium, which can be printed with:

    julia> show_states_initial_value(sim)Voltage Variables
    +====================
    +BUS 1
    +====================
    +Vm 1.05
    +θ 0.0
    +====================
    +BUS 2
    +====================
    +Vm 1.04
    +θ 0.0229
    +====================
    +====================
    +Differential States
    +generator-102-1
    +====================
    +δ 0.1685
    +ω 1.0
    +====================

    Run the Simulation

    Finally, to run the simulation we simply use:

    julia> execute!(
    +           sim, #simulation structure
    +           IDA(), #Sundials DAE Solver
    +           dtmax = 0.02, #Arguments: Maximum timestep allowed
    +       );

    In some cases, the dynamic time step used for the simulation may fail. In such case, the keyword argument dtmax can be used to limit the maximum time step allowed for the simulation.

    Exploring the solution

    First, we need to load the simulation results into memory:

    julia> results = read_results(sim)Simulation Results Summary
    +┌────────────────────────────┬─────────────┐
    +│ Property                   │ Value       │
    +├────────────────────────────┼─────────────┤
    +│ System Base Power [MVA]    │ 100.0       │
    +│ System Base Frequency [Hz] │ 60.0        │
    +│ Time Span                  │ (0.0, 30.0) │
    +│ Total Time Steps           │ 1512        │
    +│ Number of States           │ 6           │
    +│ Total solve time           │ 1.62739     │
    +└────────────────────────────┴─────────────┘

    PowerSimulationsDynamics has two functions to obtain different states of the solution:

    • get_state_series(results, ("generator-102-1", :δ)): can be used to obtain the solution as a tuple of time and the required state. In this case, we are obtaining the rotor angle of the generator named "generator-102-1"`.
    julia> angle = get_state_series(results, ("generator-102-1", :δ));
    julia> plot(angle, xlabel = "time", ylabel = "rotor angle [rad]", label = "rotor angle")Plot{Plots.GRBackend() n=1}

    plot

    • get_voltage_magnitude_series(results, 102): can be used to obtain the voltage magnitude as a tuple of time and voltage. In this case, we are obtaining the voltage magnitude at bus 102 (where the generator is located).
    julia> volt = get_voltage_magnitude_series(results, 102);
    julia> plot(volt, xlabel = "time", ylabel = "Voltage [pu]", label = "V_2")Plot{Plots.GRBackend() n=1}

    plot

    Optional: Small Signal Analysis

    PowerSimulationsDynamics uses automatic differentiation to compute the reduced Jacobian of the system for the differential states. This can be used to analyze the local stability of the linearized system. We need to re-initialize our simulation:

    julia> sim2 = Simulation(ResidualModel, omib_sys, mktempdir(), time_span)Simulation Summary
    +┌─────────────────────────┬────────────────┐
    +│ Property                │ Value          │
    +├─────────────────────────┼────────────────┤
    +│ Status                  │ BUILT          │
    +│ Simulation Type         │ Residual Model │
    +│ Initialized?            │ Yes            │
    +│ Multimachine system?    │ No             │
    +│ Time Span               │ (0.0, 30.0)    │
    +│ Number of States        │ 6              │
    +│ Number of Perturbations │ 0              │
    +└─────────────────────────┴────────────────┘
    julia> small_sig = small_signal_analysis(sim2)The system is small signal stable

    The small_sig result can report the reduced jacobian for $\delta$ and $\omega$,

    julia> small_sig.reduced_jacobian2×2 Matrix{Float64}:
    +  0.0       376.991
    + -0.466763   -0.317662

    and can also be used to report the eigenvalues of the reduced linearized system:

    julia> small_sig.eigenvalues2-element Vector{ComplexF64}:
    + -0.15883100381194407 - 13.264252847627304im
    + -0.15883100381194407 + 13.264252847627304im
    diff --git a/previews/PR383/tutorials_page/index.html b/previews/PR383/tutorials_page/index.html new file mode 100644 index 000000000..1444477bd --- /dev/null +++ b/previews/PR383/tutorials_page/index.html @@ -0,0 +1,2 @@ + +SIIP-Examples · PowerSimulationsDynamics.jl
  • 3fi= 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 literal 0 HcmV?d00001 diff --git a/previews/PR383/assets/documenter.js b/previews/PR383/assets/documenter.js new file mode 100644 index 000000000..32e27c514 --- /dev/null +++ b/previews/PR383/assets/documenter.js @@ -0,0 +1,340 @@ +// Generated by Documenter.jl +requirejs.config({ + paths: { + 'highlight-julia': 'https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.1/languages/julia.min', + 'headroom': 'https://cdnjs.cloudflare.com/ajax/libs/headroom/0.12.0/headroom.min', + 'jqueryui': 'https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min', + 'jquery': 'https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min', + 'mathjax': 'https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-AMS_HTML', + 'headroom-jquery': 'https://cdnjs.cloudflare.com/ajax/libs/headroom/0.12.0/jQuery.headroom.min', + 'highlight': 'https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.1/highlight.min', + 'highlight-julia-repl': 'https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.1/languages/julia-repl.min', + }, + shim: { + "highlight-julia": { + "deps": [ + "highlight" + ] + }, + "mathjax": { + "exports": "MathJax" + }, + "headroom-jquery": { + "deps": [ + "jquery", + "headroom" + ] + }, + "highlight-julia-repl": { + "deps": [ + "highlight" + ] + } +} +}); +//////////////////////////////////////////////////////////////////////////////// +require(['mathjax'], function(MathJax) { +MathJax.Hub.Config({ + "jax": [ + "input/TeX", + "output/HTML-CSS", + "output/NativeMML" + ], + "TeX": { + "equationNumbers": { + "autoNumber": "AMS" + } + }, + "tex2jax": { + "inlineMath": [ + [ + "$", + "$" + ], + [ + "\\(", + "\\)" + ] + ], + "processEscapes": true + }, + "config": [ + "MMLorHTML.js" + ], + "extensions": [ + "MathMenu.js", + "MathZoom.js", + "TeX/AMSmath.js", + "TeX/AMSsymbols.js", + "TeX/autobold.js", + "TeX/autoload-all.js" + ] +} +); + +}) +//////////////////////////////////////////////////////////////////////////////// +require(['jquery', 'highlight', 'highlight-julia', 'highlight-julia-repl'], function($) { +$(document).ready(function() { + hljs.highlightAll(); +}) + +}) +//////////////////////////////////////////////////////////////////////////////// +require([], function() { +function addCopyButtonCallbacks() { + for (const el of document.getElementsByTagName("pre")) { + const button = document.createElement("button"); + button.classList.add("copy-button", "fas", "fa-copy"); + el.appendChild(button); + + const success = function () { + button.classList.add("success", "fa-check"); + button.classList.remove("fa-copy"); + }; + + const failure = function () { + button.classList.add("error", "fa-times"); + button.classList.remove("fa-copy"); + }; + + button.addEventListener("click", function () { + copyToClipboard(el.innerText).then(success, failure); + + setTimeout(function () { + button.classList.add("fa-copy"); + button.classList.remove("success", "fa-check", "fa-times"); + }, 5000); + }); + } +} + +function copyToClipboard(text) { + // clipboard API is only available in secure contexts + if (window.navigator && window.navigator.clipboard) { + return window.navigator.clipboard.writeText(text); + } else { + return new Promise(function (resolve, reject) { + try { + const el = document.createElement("textarea"); + el.textContent = text; + el.style.position = "fixed"; + el.style.opacity = 0; + document.body.appendChild(el); + el.select(); + document.execCommand("copy"); + + resolve(); + } catch (err) { + reject(err); + } finally { + document.body.removeChild(el); + } + }); + } +} + +if (document.readyState === "loading") { + document.addEventListener("DOMContentLoaded", addCopyButtonCallbacks); +} else { + addCopyButtonCallbacks(); +} + +}) +//////////////////////////////////////////////////////////////////////////////// +require(['jquery', 'headroom', 'headroom-jquery'], function($, Headroom) { + +// Manages the top navigation bar (hides it when the user starts scrolling down on the +// mobile). +window.Headroom = Headroom; // work around buggy module loading? +$(document).ready(function() { + $('#documenter .docs-navbar').headroom({ + "tolerance": {"up": 10, "down": 10}, + }); +}) + +}) +//////////////////////////////////////////////////////////////////////////////// +require(['jquery'], function($) { + +// Modal settings dialog +$(document).ready(function() { + var settings = $('#documenter-settings'); + $('#documenter-settings-button').click(function(){ + settings.toggleClass('is-active'); + }); + // Close the dialog if X is clicked + $('#documenter-settings button.delete').click(function(){ + settings.removeClass('is-active'); + }); + // Close dialog if ESC is pressed + $(document).keyup(function(e) { + if (e.keyCode == 27) settings.removeClass('is-active'); + }); +}); + +}) +//////////////////////////////////////////////////////////////////////////////// +require(['jquery'], function($) { + +// Manages the showing and hiding of the sidebar. +$(document).ready(function() { + var sidebar = $("#documenter > .docs-sidebar"); + var sidebar_button = $("#documenter-sidebar-button") + sidebar_button.click(function(ev) { + ev.preventDefault(); + sidebar.toggleClass('visible'); + if (sidebar.hasClass('visible')) { + // Makes sure that the current menu item is visible in the sidebar. + $("#documenter .docs-menu a.is-active").focus(); + } + }); + $("#documenter > .docs-main").bind('click', function(ev) { + if ($(ev.target).is(sidebar_button)) { + return; + } + if (sidebar.hasClass('visible')) { + sidebar.removeClass('visible'); + } + }); +}) + +// Resizes the package name / sitename in the sidebar if it is too wide. +// Inspired by: https://github.com/davatron5000/FitText.js +$(document).ready(function() { + e = $("#documenter .docs-autofit"); + function resize() { + var L = parseInt(e.css('max-width'), 10); + var L0 = e.width(); + if(L0 > L) { + var h0 = parseInt(e.css('font-size'), 10); + e.css('font-size', L * h0 / L0); + // TODO: make sure it survives resizes? + } + } + // call once and then register events + resize(); + $(window).resize(resize); + $(window).on('orientationchange', resize); +}); + +// Scroll the navigation bar to the currently selected menu item +$(document).ready(function() { + var sidebar = $("#documenter .docs-menu").get(0); + var active = $("#documenter .docs-menu .is-active").get(0); + if(typeof active !== 'undefined') { + sidebar.scrollTop = active.offsetTop - sidebar.offsetTop - 15; + } +}) + +}) +//////////////////////////////////////////////////////////////////////////////// +require(['jquery'], function($) { + +function set_theme(theme) { + var active = null; + var disabled = []; + for (var i = 0; i < document.styleSheets.length; i++) { + var ss = document.styleSheets[i]; + var themename = ss.ownerNode.getAttribute("data-theme-name"); + if(themename === null) continue; // ignore non-theme stylesheets + // Find the active theme + if(themename === theme) active = ss; + else disabled.push(ss); + } + if(active !== null) { + active.disabled = false; + if(active.ownerNode.getAttribute("data-theme-primary") === null) { + document.getElementsByTagName('html')[0].className = "theme--" + theme; + } else { + document.getElementsByTagName('html')[0].className = ""; + } + disabled.forEach(function(ss){ + ss.disabled = true; + }); + } + + // Store the theme in localStorage + if(typeof(window.localStorage) !== "undefined") { + window.localStorage.setItem("documenter-theme", theme); + } else { + console.error("Browser does not support window.localStorage"); + } +} + +// Theme picker setup +$(document).ready(function() { + // onchange callback + $('#documenter-themepicker').change(function themepick_callback(ev){ + var themename = $('#documenter-themepicker option:selected').attr('value'); + set_theme(themename); + }); + + // Make sure that the themepicker displays the correct theme when the theme is retrieved + // from localStorage + if(typeof(window.localStorage) !== "undefined") { + var theme = window.localStorage.getItem("documenter-theme"); + if(theme !== null) { + $('#documenter-themepicker option').each(function(i,e) { + e.selected = (e.value === theme); + }) + } else { + $('#documenter-themepicker option').each(function(i,e) { + e.selected = $("html").hasClass(`theme--${e.value}`); + }) + } + } +}) + +}) +//////////////////////////////////////////////////////////////////////////////// +require(['jquery'], function($) { + +// update the version selector with info from the siteinfo.js and ../versions.js files +$(document).ready(function() { + // If the version selector is disabled with DOCUMENTER_VERSION_SELECTOR_DISABLED in the + // siteinfo.js file, we just return immediately and not display the version selector. + if (typeof DOCUMENTER_VERSION_SELECTOR_DISABLED === 'boolean' && DOCUMENTER_VERSION_SELECTOR_DISABLED) { + return; + } + + var version_selector = $("#documenter .docs-version-selector"); + var version_selector_select = $("#documenter .docs-version-selector select"); + + version_selector_select.change(function(x) { + target_href = version_selector_select.children("option:selected").get(0).value; + window.location.href = target_href; + }); + + // add the current version to the selector based on siteinfo.js, but only if the selector is empty + if (typeof DOCUMENTER_CURRENT_VERSION !== 'undefined' && $('#version-selector > option').length == 0) { + var option = $(""); + version_selector_select.append(option); + } + + if (typeof DOC_VERSIONS !== 'undefined') { + var existing_versions = version_selector_select.children("option"); + var existing_versions_texts = existing_versions.map(function(i,x){return x.text}); + DOC_VERSIONS.forEach(function(each) { + var version_url = documenterBaseURL + "/../" + each; + var existing_id = $.inArray(each, existing_versions_texts); + // if not already in the version selector, add it as a new option, + // otherwise update the old option with the URL and enable it + if (existing_id == -1) { + var option = $(""); + version_selector_select.append(option); + } else { + var option = existing_versions[existing_id]; + option.value = version_url; + option.disabled = false; + } + }); + } + + // only show the version selector if the selector has been populated + if (version_selector_select.children("option").length > 0) { + version_selector.toggleClass("visible"); + } +}) + +}) diff --git a/previews/PR383/assets/f-plot.svg b/previews/PR383/assets/f-plot.svg new file mode 100644 index 000000000..232bdeb04 --- /dev/null +++ b/previews/PR383/assets/f-plot.svg @@ -0,0 +1,153 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/previews/PR383/assets/generic_vsc.png b/previews/PR383/assets/generic_vsc.png new file mode 100644 index 0000000000000000000000000000000000000000..4d7b4dfc4920d1d713f4fcb4e4708780e898f8f9 GIT binary patch literal 221378 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 lIip=+ehuw=V&OO{5R3ic|RL%4CRNjw7 zrgtx?gTWey+E3R%duRVE(M8~c2jrC9yrOZ5@ywD-{g53NWpQsU`gVA&oTR5WiB^HeE@JkI!u-tb*(;8qf?n$Ir%l~nsbgEN zdPR6}SLE!rHp|^_O-D$GnjCqneRF}22Qao%6bzdijfCg41bg5#3PPvi>(bhZ9u{fK z(L(rYKwZcp;08RVk36!6M!y3hjl{COx$9-N3PQbZpuCaPL7J~T^s4bGf93Yjam!i& zSwWX2hT#=>QftKH+a_ar(*iT*F7Ab%4SJG)Vj3r%=1z-brlAS!a`7s zN#2{c-)Pa}qTPm=j`6&ur?i2+e?n{=iQ4GgeX>8~bQme>$F-I7TzeeOMAa$Q-AVzh zk^VN~_0p5~{bI^7jUOUJ4OcULKw(nrg8lLRwa+?8fe#5tKW|Kp^5d=Fx^|iH#cr3) z^UCHE7GC`4d8D3qghd^(&gdhH309h25lWyH?S{S~PyT*v>xrl#P$@TiV^LwVwZckTDQkP3SFe^EyW}EfwY_U+UmE&kVlO4Nm64jC^ z8azvtz>(OS-fE{PC=4Ecw6q<8*wk5g2|aRrC=NMQ=}Q2t!VQ1k*JSj@XsF zMJ~~*?~xG-7sx^1t_=oPt&Li+$Ov)=*i>-DccUXAiHE{a;<(Hztu{d?2$ zhK7*%<96J&BU2T}G}X-mez}LfR`|(8m{?5)NMQqjfaKF7%ErONJ2K$S-W62AG;_9G z1vv{Qdc(1daM_L5jK4I3;=lLFiCI?-iJnTkc%imSWH~)B2*&09rtxJZKRe!AWj3UP zn5QBCe^`6VfU3GKTvQMQEE)tU=|(Z=QY4iQX+;|8k_G`K1f@Hq5dozIi5Ee-V*{I# zF4=UWcPzj6JLjHr>(BkGf_u+3*PLTKW#j zvtB8~U5m*4w^eVIa0kDC3R)q=vd28CJ6V8o&nG48zvUi6C#&gZe&mz(taYFn#c)t3 zxCkT8s~vBFzKu*g9!M^Uvt@R{^%KQgd1D5Fmi~OYSXo~6p!|Blo97B`h!;<7{&L~C zVWDYfTqf`PeE{_?D?T+_dhDx-=9mI2p`JV7OZU5XoVQo@bNz((F9;oqYV&=NN}lo8+VsdG4r@Yt7yp30;V%k$ES?d)N@nl@{sS|AXrY z9lj!nY0JWjY`OvrWt}cxOX^=qx<>Zl7_B7>)2>&pck5vxkl7ytNc)j(v&wKEdvC4; zxseiIPS<-cKst}pHuL}JKCAz-4fjfXZHmef1z?Q<;a$7!owq7d%`dpyy!o!8pmLE) zyaiwdQl{W9Pb^8tfKA2UTk;g?meMu`U=PgVqStl5ML~?XTGToI{&D6 z*Z?VEv2jK<@yGTr0DT+L3b69o|AG)j0Ey;Z9rlh9jzC9Py8qopQWHyW+Yv(;pUQmC zUWjLidp-jVJjotb;~KsP?Oy3~wXaGj>F8?BaUkHtMx2|2SHlOM$c~}{##Jg1he_sb zn|p%`IHY&L!^=Cs;hKlD{Gz}46DE9sX~HgL!s|6_Ox7YOwc)Ay7E>AG*Yh|~6wnQ% zV~4SlVDCEMzer^+X$rshQe;C-q!RF`zvROY>x?8>?0rd=b7Xyv(2|msjcGTJoEe5|w>% znXCcvZ2__{vz4au$sv0BH!Coh%2Qno2ak!A*uKc=KA%Ymyv6cp5eog?=y^bTqJY0K zb*rz~K;#HzpfK7N;;^{sOAW{}3ow(D#DhX8=t) z>MW}m7Tpjr5%Ol!mg)sej!680HOy8f7l{&2MIW3*fAR}}mBH-_)Y4Q}XSzat=e>M1 zYddhO$&w5VuD~YvKXo}b-1|v;+55~0-UeVl_PI` ztzaCA`O-3(WQ+4qzUtM^NG9110H!zQe@W}oH?27HC|O@#ce+`u9WAuRo1xC7A8}nk z3AvGfkSk5krGT1=-{4gaJXc6SN}yDdoGVaC z*2CmEA#=qy0ik;X9<${91Z+FjfqSA!HL2+lo&;Fd5#f5lAmJ3+ zkfk?Kzim!060Gxyty2{oQ0*&ScBLxOgR2SM^ok5;0ycsTt1&E$+oQ)FCv}*_J8aQj z5C0=$K)?r^et~=pFW9!F&D(2x+3uUS=cW7Tf_Poi!Pg#od<62DZ=<(w#2VT6uN?cI ze7+;$|8mql_JWrFQq-fPW-fJPOY^($7;E2J=<=)X+zlOHtj`P*STE}>niaoQf;)4iaRT+Q?8Lc zUnwSBtIu8k$RmPu33}+;9K@%{+c18!N5{0I-WDo7*O3#; zy$7+zt?<`e2nm@b6VYmk{^@yvUiB_lLNy!jIH3v;_*R#Jt5eIl1$Sf!;Vlrv8sjfB z!|C#&VCg<04e&WF*fK; zg#l4mMt*~>Ct{)i#`ua;z*YuQwtSB{OKp*dZ?t!c@9(2bEyf-<7|C{eOoN>D(%0iv z=#?G+7ZoDfi>_J%eQbc0H(J;39d}f>RN&L{BJWrIl9_zH7i^af^I%;3zY?~aSO#BC zvP4*=HtII&<+}=dQ$*H32Y?wMNmggdBLpp)x2QYa?sNoPOIRzmQHr2<=nZSh1Mgd7 z(8;H0O2t$^B;fsaby!x+Pn|K6p%r3c8CvN)U-a{?{`}za9C-AGZ#>xDp}Hd{n}7H# zFWxTZ0Ry`~u+c|J-uM9PII}*V@Z=@Xh@=UW1L&-{mZ7~gM0Dsv8`X2t3*QB!U}ypZ zUQq1wUgcytJcH|R5l;02!k-#{V8|c`v}zmmheol%Iw8duz1`JT@0KO}Qu}pWXHJ&t z<$qzJIm2&ESM%8>y3Lp3N+a!7L;?i1$1$<{$Dqr07hC2(jDY7W7j(lT`cV zHM1m}Ft%ILa4&&{OcD z%vBWrS202HS46R7BuP2{JAw9=#KF}1zPu7lL>-+IljY$c4x%agp8|?6pS0}N8(!@R zYn%ZJw4qV>#v3xqi1se&mV7_^r@t_@R-a%h)H`1j`yGg{+5wbV+A!prhK5e@4wNFb zx-K6j9aOk1hlhsdiw-!wU{8HAy5c#ke$}5HKY!;Aw|^44K@Hb=%yme?SwSwZxo{Qp zF@VI$JXdWz0;haXg0q%5mSXy75+5S!N%-Hi8xme3_#5Xe;LC6ZN#E)lf6 z8utbutw{4*S=NeAZq9RFPL@a>{&7_AeiwHW}u=KsJMiKP`LRoIl%)}QR_o;BHKtOERECSqN5 zdJpV^*wXoa);la%N0)p`fVFALsr;aas7N;4JHa!N3(OVtr-U{0rCq`9qte{FJ`_TM zH9#p*<)s-T)hLGzDDZj+l1Dlce@)?0Ugaz91yEHe6$u_d2OwlI9>vcY_|OC785)#FDD8P~5Z zJB2BKx`X)Q5pnt}KtaX%l~&mKb0sT}sj;DvMU1h)bQ#@&XPlZ>7fSZ5Pu)hM0ZD%> ztdypQ`_FAAmG;GRL;ZCR!?VBOB5Bb844)n_`5J_KaY;nY2h)%Ajn0Y??ie@IB9MVZ<5cw${-D6~R>?XQ&V{=2(ge7%n0@e| zx9QBOWYi$MCB*Qa8T;AA<VSnY<@#9Pm0rebM^LbD;yB|;P&BQpo~Kj6H#@?4MOsp9svL47?_UD#O5 z=HzOrEJhh0qy+qs++uf@b}&+(D;U<74X0kXT!fQ!WSm2tf0C}7y8njW$A0{;Krb}V zP^>zY3LsTH%j9whiA?yn=t_AD~-&V{p}N#gU5TOD&VkL8dkJB+Y-I6(>h=HF&O=sYypC@Fp1{)EV|%U(f0zd^^D0X98_!st#8jF?*qkYMsP=EO$%0I`3c~;W#VcH>zIn z2VDN+nL?^>BH^REfYbL{-zw{Je{5z=kXN)C|J8loCfVQ+QWh6>+b60^3sZN~!BIHH z6$BLOOG-#QuaHeFA9OAjJih$s!V!~tm2S&q;%~zyfmpWD72AnC?5RG9JQ%BC^>hB& zByFEW7gA2fP;WjD`~sKhcKnN0{DiSyH@uD(;(2_BDx_P#WA64q6mfj&-Ne{`9G{q1 zp8M4PBJ7u~)q)}|Tgk0=O>Y~Ea}gP@xT*9FcRjp4w%}juSS~dbc&SeNqMtfn(6Cc6EL2;&x zPV~L}$!{|JK|V`r>qjHd)2c@wNts1p66sUiujobVtlZ19d7>|hm(9rM-}R2kil3`? z2{8t(%i`4@rQXs&LY@F42?9f)9!dSgl4o zian}x0HPCbtB)B=wr=J6D=-S5FQ0^vE^B_plJQ}o65EDh+%o`ox-6slo^Mme94$Ve z!Z{@g)|E8(y^+~mByqN)Y&~>7AAJTdgJkdG_)AOY2|B6lC3v)ajps!9)Tn3LJQuOGH*bRGkTYG`w9XvuI;Z zDf81UCdH;93sGHCkKHuh(3YfZ5wh+*hCxnCe?M6R_rzrMUG_Ye_{ZySFg!lpow0A-wp1A<}U<+^r^SP2_Eq(2zE@}(GNvO@W_=8z-QYN!~^Q6b50%9 z`>A-YtNs%J7N)u}=jd0_j~1Z1MsVHHUoV~c^r>-8j|r3jPgAd9-348`11N6Smg(u? zmaAqF3SgOG=d}@@ytDcCXzL0m%7jzg98cbP&;v>8W7n*&$(xBJQ?n!?S_K~M$E1A) zvG0a1CT;jaape~7k&!RmxiKtCeyM^QW`k>1-P63Ao;(%k_~Va0x1wm1yY5Z9KaQP! zXM`R*zv|4xYuYpB#1Rv5T)+6+WjOu!Zr-i$hL`y1Cr+{&jJ$F>%FnFr$P^&O}6=37k6D(B6nQNt6%9nKp} zWwD;j`V({S`Tn&>ltYHu$#Jf?Rsl4XbUOro;YVAZg&Vi;5V=tOZh%+D{~x z>Lp&gV;;{Pz422b+=>w{If}Qv00*qg&_j-$_aRxAu@m|B=G&OwIdg*n|9yURg~FnC zk&@2h3H`5^s)JWBQ;x6G_g&KI(qn7Gj^;=6B(a)b>HW>e%tJ=iPlUsrs0n` zndde6d;V|Rx`YL8qluSJQ(xa*>pJg&FrL2iQ?@BBY9B=D(6${{fkHypd$@v?>33w; z19nvu+vL@QyTuxRSRW-YP&xRUyB!FIwgX-uhK|>bJR(uxM-K>2-bORXo3SXf*|90W z3u@zed5?OjLeO)a% z>=ZUl)MR8S%lT|ldFtFT5yE~N5mko%^LZ!HhMHxk#owg)^RwiuErw>7w5i0ss`u(S z$O3Lq5il*TdR0uzng(`7>HOj;aYMGv`GT(|^_Sy;8z9tz@GmDIx-Dvqzl}pZr0Zjf zBd~lIV#qs}ogZ^A7S{eojP65+&UkHFff~ws9`7pI9$f^u`vX@6$L9n+-2pT(K5%c- zv9LX^>#apYHKRDR^YQ+h?N+lV5wrtX{_?L zL~+!I2XDr8mNdH^!2LzZu)pLyqg;&+a<_3qFV<69w(U^&axXI^4zIA3 z1r?fT<@BOi<%3qI62_9IjyG;#HWe^WzM;H6-GOn!w;ok47%*qrkdQA$dADj@70Z zmG?k=xp@MB{R=|^z`VgIs0yY2j^8@zEcEi;iT olJ~gu#QvDtpujw-JS-xz88j; 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⁢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 z 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

    fZyORPJ>_M1oEZ>3E!SU@%^`E9`RFRxneI$R|H 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