# Distribution Regulator ## Single Phase Regulator ```python >>> from gdm.distribution.equipment import WindingEquipment, DistributionTransformerEquipment >>> from gdm.distribution.controllers import RegulatorController >>> from gdm.distribution.common import SequencePair >>> from gdm.distribution.components import ( ... DistributionSubstation, ... DistributionRegulator, ... DistributionFeeder, ... DistributionBus ... ) >>> from infrasys.quantities import Time >>> from gdm.distribution.enums import ( ... ConnectionType, ... VoltageTypes, ... Phase, ... ) >>> from gdm.quantities import ( ... PositiveApparentPower, ... PositiveVoltage, ... ) >>> bus_1 = DistributionBus( ... name="Bus-1", ... rated_voltage=PositiveVoltage(12.47, "kilovolts"), ... phases=[Phase.A], ... voltage_type=VoltageTypes.LINE_TO_GROUND, ... ) >>> bus_2 = DistributionBus( ... name="Bus-2", ... rated_voltage=PositiveVoltage(12.47, "kilovolts"), ... phases=[Phase.A], ... voltage_type=VoltageTypes.LINE_TO_GROUND, ... ) >>> regulator_equipment = DistributionTransformerEquipment( ... name="SinglePhase-Regulator-1", ... pct_full_load_loss=0.1, ... pct_no_load_loss=0.002, ... windings=[ ... WindingEquipment( ... resistance=1.0, ... is_grounded=False, ... rated_voltage=PositiveVoltage(12.47, "kilovolts"), ... rated_power=PositiveApparentPower(25, "kilova"), ... num_phases=1, ... tap_positions=[1.0], ... connection_type=ConnectionType.STAR, ... voltage_type=VoltageTypes.LINE_TO_GROUND, ... ), ... WindingEquipment( ... resistance=1.0, ... is_grounded=False, ... rated_voltage=PositiveVoltage(12.47, "kilovolts"), ... rated_power=PositiveApparentPower(25, "kilova"), ... num_phases=1, ... tap_positions=[1.0], ... connection_type=ConnectionType.STAR, ... voltage_type=VoltageTypes.LINE_TO_GROUND, ... ), ... ], ... coupling_sequences=[SequencePair(from_index=0, to_index=1)], ... winding_reactances=[2.3], ... is_center_tapped=False, ... ) >>> regulator_controller = RegulatorController( ... name="RegulatorController-1", ... delay=Time(10, "seconds"), # seconds ... v_setpoint=PositiveVoltage(120, "volts"), # volts ... min_v_limit=PositiveVoltage(124, "volts"), ... max_v_limit=PositiveVoltage(118, "volts"), ... use_ldc=True, ... is_reversible=False, ... pt_ratio=60.0, ... ldc_R=9, ... ldc_X=3, ... controlled_bus = bus_1, ... controlled_phase = Phase.A, ... ct_primary=700, ... max_step=16, ... bandwidth=3, # volts ... ) >>> regulator_1 = DistributionRegulator( ... name="Regulator-1", ... buses=[bus_1, bus_2], ... winding_phases=[[Phase.A], [Phase.A]], ... equipment=regulator_equipment, ... controllers=[regulator_controller], ... ) >>> regulator_1.pprint() DistributionRegulator( name='Regulator-1', substation=None, feeder=None, in_service=True, buses=[ DistributionBus( name='Bus-1', substation=None, feeder=None, voltage_type=, phases=[], voltagelimits=[], rated_voltage=, coordinate=None ), DistributionBus( name='Bus-2', substation=None, feeder=None, voltage_type=, phases=[], voltagelimits=[], rated_voltage=, coordinate=None ) ], winding_phases=[[], []], equipment=DistributionTransformerEquipment( name='SinglePhase-Regulator-1', pct_no_load_loss=0.002, pct_full_load_loss=0.1, windings=[ WindingEquipment( name='', resistance=1.0, is_grounded=False, rated_voltage=, voltage_type=, rated_power=, num_phases=1, connection_type=, tap_positions=[1.0], total_taps=32, min_tap_pu=0.9, max_tap_pu=1.1 ), WindingEquipment( name='', resistance=1.0, is_grounded=False, rated_voltage=, voltage_type=, rated_power=, num_phases=1, connection_type=, tap_positions=[1.0], total_taps=32, min_tap_pu=0.9, max_tap_pu=1.1 ) ], coupling_sequences=[SequencePair(from_index=0, to_index=1)], winding_reactances=[2.3], is_center_tapped=False ), controllers=[ RegulatorController( name='RegulatorController-1', delay=, v_setpoint=, min_v_limit=, max_v_limit=, pt_ratio=60.0, use_ldc=True, is_reversible=False, ldc_R=, ldc_X=, ct_primary=, max_step=16, bandwidth=, controlled_bus=DistributionBus( name='Bus-1', substation=None, feeder=None, voltage_type=, phases=[], voltagelimits=[], rated_voltage=, coordinate=None ), controlled_phase= ) ] ) """ ```