Bus#

class relsad.network.components.Bus(name: str, n_customers: int = 1, coordinate: list = [0, 0], ZIP=[0.0, 0.0, 1.0], s_ref: float = 1, is_slack: bool = False, fail_rate_per_year: float = 0.0, repair_time_dist: relsad.StatDist.StatDist.StatDist = <relsad.StatDist.StatDist.StatDist object>)[source]#

Common base class for all distribution buses

name#

Name of the bus

Type

string

n_customers#

Number of customers connected to that bus

Type

int

coordinate#

Coordinate of the bus

Type

list

s_ref#

Apperent power reference [MVa]

Type

float

cost#

The energy shedding cost of the bus

Type

float

cost_functions#

List of power load cost functions

Type

list

pload_data#

List of active power load data

Type

list

qload_data#

List of reactive power load data

Type

list

ZIP#

List showing the ZIP load model

Type

list

p_load_downstream#

Active accumulated power load at node

Type

float

q_load_downstream#

Reactive accumulated power load at node

Type

float

p_loss_downstream#

Active accumulated power line loss at node

Type

float

q_loss_downstream#

Reactive accumulated power line loss at node

Type

float

voang#

Voltage angle [rad]

Type

float

vomag#

Voltage magnitude pu

Type

float

pload#

The active power load at the bus [MW]

Type

float

qload#

The reactive power load at the bus [MVar]

Type

float

pload_pu#

The active power load at the bus in pu

Type

float

qload_pu#

The reactive power load at the bus in pu

Type

float

pprod#

The active generated power at the bus [MW]

Type

float

qprod#

The reactive generated power at the bus [MVar]

Type

float

pprod_pu#

The active generated power at the bus in pu

Type

float

qprod_pu#

The reactive generated power at the bus in pu

Type

float

is_slack#

Tells if the given bus is a slack bus or not

Type

bool

toline#

Tells which line that is going into the bus

Type

Line

fromline#

Tells which line that is going out of the bus

Type

Line

toline_list#

List of lines going into the bus

Type

list

fromline_list#

List of lines going from the bus

Type

list

nextbus#

List of neighbor buses

Type

List

connected_lines#

List of connected lines

Type

List

parent_network#

Parent network of the bus

Type

PowerNetwork

fail_rate_per_year#

The failure rate per year for the transformer at the bus

Type

float

repair_time_dist#

The repair time of the transformer at the bus [hours/fault]

Type

StatDist

p_energy_shed_stack#

The amount of shedded active energy at the bus in the current sequence

Type

float

q_energy_shed_stack#

The amount of shedded reactive energy at the bus in the current sequence

Type

float

acc_p_energy_shed#

The accumulated amount of shedded active energy at the bus for the entire simulation

Type

float

acc_q_energy_shed#

The accumulated amount of shedded reactive energy at the bus for the entire simulation

Type

float

acc_outage_time#

The accumulated outage time of the transformer at the bus for the entire simulation

Type

Time

avg_fail_rate#

The average failure rate of the transformer at the bus for the entire simulation

Type

float

avg_outage_time#

The average outage time of the transformer at the bus for the entire simulation

Type

Time

num_consecutive_interruptions#

The current number of consecutive interruptions the bus experiences

Type

float

interruption_fraction#

The current fraction of interruption experienced by the bus

Type

float

curr_interruptions#

Current number of interruptions experienced by the bus

Type

float

acc_interruptions#

Accumulated number of interruptions experienced by the bus

Type

float

trafo_failed#

Failure status of the transformer

Type

bool

remaining_outage_time#

The remaining outage time of the bus

Type

Time

prod#

The Production unit at the bus

Type

Production

ev_park#

The EVPark at the bus

Type

EVPark

battery#

The Battery unit at the bus

Type

Battery

history#

Dictonary that stores the sequential simulation history variables

Type

dict

monte_carlo_history#

Dictonary that stores the Monte Carlo simulation history variables

Type

dict

reset_load_and_production_attributes()#

Resets the load and generation at the bus

reset_load()[source]#

Resets the load at the bus by setting the load to 0

reset_prod()[source]#

Resets the generation at the bus by setting the generation to 0

add_load_data(pload_data, qload_data, cost_function)[source]#

Adds load data to the bus

prepare_load_data(time_indices)[source]#

Prepares the load data for the current time step configuration

add_load(pload, qload)[source]#

Adds load to the bus

set_load_and_cost(inc_idx)[source]#

Sets the bus load and cost in MW based on load and cost profiles in the current increment

get_load()[source]#

Retuns the current load at the bus in MW

draw_repair_time(dt)[source]#

Decides and returns the repair time of the trafo based on a statistical distribution

trafo_fail(dt)[source]#

Sets the transformer status to failed, load and generation at the node are set to zero

trafo_not_fail()[source]#

Sets the transformer to not failed

get_battery()[source]#

Returns the battery at the bus

get_production()[source]#

Returns the generation unit at the bus

update_fail_status(dt)[source]#

Updates the fail status of the transformer. Sets the fail status to failed if the transformer is failed or the fail status to not failed if the transformer is not failed

set_slack()[source]#

Sets a bus to slack bus

print_status()[source]#

Prints the status of the bus

initialize_history()[source]#

Initializes the history variables

update_history(prev_time, curr_time, save_flag)[source]#

Updates the history variables

get_history(attribute)[source]#

Returns the history variables of an attribute at the bus

set_cost(cost)[source]#

Sets the specificed interruption cost related to Cost of Energy Not Supplied at the bus

get_cost()[source]#

Returns the specificed interruption cost related to Cost of Energy Not Supplied at the bus

shed_load(dt)[source]#

Sheds load at the bus and resets the load. The shedded load is added to a stack for the bus

clear_energy_shed_stack()[source]#

Resets the energy.shed stack for the bus

add_random_instance(random_gen)[source]#

Adds global random seed

get_avg_fail_rate(curr_time)[source]#

Returns the average failure rate of the transformer at the bus

reset_status(save_flag)[source]#

Resets and sets the status of the class parameters

add_to_energy_shed_stack(p_load, q_load, dt)[source]#

Adds the shedded load to the energy.shed stack at the bus

reset_load_flow_data()[source]#

Resets the variables used in the load flow analysis

get_monte_carlo_history(attribute)[source]#

Returns a specified history variable from the Monte Carlo simulation

get_neighbor_buses()[source]#

Returns the neighboring buses of the bus

Bus.add_load(pload, qload)

Adds load to the bus

Bus.add_load_data(pload_data[, qload_data, ...])

Adds load data to the bus

Bus.add_random_instance(random_gen)

Adds global random seed

Bus.add_to_energy_shed_stack(p_load, q_load, dt)

Adds the shedded load to the energy.shed stack at the bus

Bus.clear_energy_shed_stack()

Resets the energy.shed stack for the bus

Bus.draw_repair_time(dt)

Decides and returns the repair time of the trafo based on a statistical distribution

Bus.get_avg_fail_rate(curr_time)

Returns the average failure rate of the transformer at the bus

Bus.get_battery()

Returns the battery at the bus

Bus.get_cost()

Returns the specificed interruption cost related to Cost of Energy Not Supplied at the bus

Bus.get_history(attribute)

Returns the history variables of an attribute at the bus

Bus.get_load()

Returns the current load at the bus in MW

Bus.get_monte_carlo_history(attribute)

Returns a specified history variable from the Monte Carlo simulation

Bus.get_neighbor_buses()

Returns the neighboring buses of the bus

Bus.get_production()

Returns the generation unit at the bus

Bus.initialize_history()

Initializes the history variables

Bus.prepare_load_data(time_indices)

Prepares the load data for the current time step configuration

Bus.print_status()

Prints the status of the bus

Bus.reset_load()

Resets the load at the bus by setting the load to 0

Bus.reset_load_and_prod_attributes()

Resets the load and generation at the bus

Bus.reset_load_flow_data()

Resets the variables used in the load flow analysis

Bus.reset_prod()

Resets the generation at the bus by setting the generation to 0

Bus.reset_status(save_flag)

Resets and sets the status of the class parameters

Bus.set_cost(cost)

Sets the specificed interruption cost related to Cost of Energy Not Supplied at the bus

Bus.set_load_and_cost(inc_idx)

Sets the bus load and cost in MW based on load and cost profiles in the current increment

Bus.set_slack()

Sets a bus to slack bus

Bus.shed_load(dt)

Sheds load at the bus and resets the load.

Bus.trafo_fail(dt)

Sets the transformer status to failed, load and generation at the bus are set to zero

Bus.trafo_not_fail()

Sets the transformer status to not failed

Bus.update_fail_status(dt)

Updates the fail status of the transformer.

Bus.update_history(prev_time, curr_time, ...)

Updates the history variables

Bus.handle

Bus.marker

Bus.ps_random

Bus.size