DSS C-API and dss.hpp
DSS C-API and dss.hpp expose a customized and extended implementation of OpenDSS to C and C++.
dss::obj::RegControlBatch Class Reference
Inheritance diagram for dss::obj::RegControlBatch:
[legend]
Collaboration diagram for dss::obj::RegControlBatch:
[legend]

Public Types

typedef RegControl::Properties Properties
 
typedef RegControl BatchElementClass
 
typedef RegControl::RegControlPhaseSelection RegControlPhaseSelection
 

Public Member Functions

 RegControlBatch (APIUtil *util)
 Create a batch of all RegControl elements.
 
 RegControlBatch (APIUtil *util, int32_t prop_idx, int32_t prop_value)
 Create a batch of all RegControl elements that match an integer property value.
 
 RegControlBatch (APIUtil *util, const char *regexp)
 Create a batch of all RegControl elements that match a regular expression.
 
RegControlBatchbegin_edit ()
 
RegControlBatchend_edit (int32_t num_edits=1)
 
strings transformer ()
 Name of Transformer or AutoTrans element to which the RegControl is connected. More...
 
RegControlBatchtransformer (dss::obj::Transformer, AutoTrans &value)
 
RegControlBatchtransformer (const string &value)
 
std::vector< dss::obj::DSSObjtransformer_obj ()
 Name of Transformer or AutoTrans element to which the RegControl is connected. More...
 
RegControlBatchtransformer_obj (dss::obj::DSSObj &value)
 
BatchInt32ArrayProxy winding ()
 Number of the winding of the transformer element that the RegControl is monitoring. More...
 
RegControlBatchwinding (int32_t value)
 
template<typename T >
RegControlBatchwinding (T &value)
 
template<typename T >
RegControlBatchwinding (typename T::iterator it_begin, typename T::iterator it_end)
 
BatchFloat64ArrayProxy vreg ()
 Voltage regulator setting, in VOLTS, for the winding being controlled. More...
 
RegControlBatchvreg (double value)
 
template<typename T >
RegControlBatchvreg (T &value)
 
template<typename T >
RegControlBatchvreg (typename T::iterator it_begin, typename T::iterator it_end)
 
BatchFloat64ArrayProxy band ()
 Bandwidth in VOLTS for the controlled bus (see help for ptratio property). More...
 
RegControlBatchband (double value)
 
template<typename T >
RegControlBatchband (T &value)
 
template<typename T >
RegControlBatchband (typename T::iterator it_begin, typename T::iterator it_end)
 
BatchFloat64ArrayProxy ptratio ()
 Ratio of the PT that converts the controlled winding voltage to the regulator control voltage. More...
 
RegControlBatchptratio (double value)
 
template<typename T >
RegControlBatchptratio (T &value)
 
template<typename T >
RegControlBatchptratio (typename T::iterator it_begin, typename T::iterator it_end)
 
BatchFloat64ArrayProxy CTprim ()
 Rating, in Amperes, of the primary CT rating for which the line amps convert to control rated amps.The typical default secondary ampere rating is 0.2 Amps (check with manufacturer specs). More...
 
RegControlBatchCTprim (double value)
 
template<typename T >
RegControlBatchCTprim (T &value)
 
template<typename T >
RegControlBatchCTprim (typename T::iterator it_begin, typename T::iterator it_end)
 
BatchFloat64ArrayProxy R ()
 R setting on the line drop compensator in the regulator, expressed in VOLTS. More...
 
RegControlBatchR (double value)
 
template<typename T >
RegControlBatchR (T &value)
 
template<typename T >
RegControlBatchR (typename T::iterator it_begin, typename T::iterator it_end)
 
BatchFloat64ArrayProxy X ()
 X setting on the line drop compensator in the regulator, expressed in VOLTS. More...
 
RegControlBatchX (double value)
 
template<typename T >
RegControlBatchX (T &value)
 
template<typename T >
RegControlBatchX (typename T::iterator it_begin, typename T::iterator it_end)
 
strings bus ()
 Name of a bus (busname.nodename) in the system to use as the controlled bus instead of the bus to which the transformer winding is connected or the R and X line drop compensator settings. More...
 
RegControlBatchbus (const string &value)
 
RegControlBatchbus (strings &value)
 
BatchFloat64ArrayProxy delay ()
 Time delay, in seconds, from when the voltage goes out of band to when the tap changing begins. More...
 
RegControlBatchdelay (double value)
 
template<typename T >
RegControlBatchdelay (T &value)
 
template<typename T >
RegControlBatchdelay (typename T::iterator it_begin, typename T::iterator it_end)
 
bools reversible ()
 {Yes |No*} Indicates whether or not the regulator can be switched to regulate in the reverse direction. More...
 
RegControlBatchreversible (bool value)
 
RegControlBatchreversible (bools &value)
 
BatchFloat64ArrayProxy revvreg ()
 Voltage setting in volts for operation in the reverse direction. More...
 
RegControlBatchrevvreg (double value)
 
template<typename T >
RegControlBatchrevvreg (T &value)
 
template<typename T >
RegControlBatchrevvreg (typename T::iterator it_begin, typename T::iterator it_end)
 
BatchFloat64ArrayProxy revband ()
 Bandwidth for operating in the reverse direction. More...
 
RegControlBatchrevband (double value)
 
template<typename T >
RegControlBatchrevband (T &value)
 
template<typename T >
RegControlBatchrevband (typename T::iterator it_begin, typename T::iterator it_end)
 
BatchFloat64ArrayProxy revR ()
 R line drop compensator setting for reverse direction. More...
 
RegControlBatchrevR (double value)
 
template<typename T >
RegControlBatchrevR (T &value)
 
template<typename T >
RegControlBatchrevR (typename T::iterator it_begin, typename T::iterator it_end)
 
BatchFloat64ArrayProxy revX ()
 X line drop compensator setting for reverse direction. More...
 
RegControlBatchrevX (double value)
 
template<typename T >
RegControlBatchrevX (T &value)
 
template<typename T >
RegControlBatchrevX (typename T::iterator it_begin, typename T::iterator it_end)
 
BatchFloat64ArrayProxy tapdelay ()
 Delay in sec between tap changes. More...
 
RegControlBatchtapdelay (double value)
 
template<typename T >
RegControlBatchtapdelay (T &value)
 
template<typename T >
RegControlBatchtapdelay (typename T::iterator it_begin, typename T::iterator it_end)
 
bools debugtrace ()
 {Yes | No* } Default is no. More...
 
RegControlBatchdebugtrace (bool value)
 
RegControlBatchdebugtrace (bools &value)
 
BatchInt32ArrayProxy maxtapchange ()
 Maximum allowable tap change per control iteration in STATIC control mode. More...
 
RegControlBatchmaxtapchange (int32_t value)
 
template<typename T >
RegControlBatchmaxtapchange (T &value)
 
template<typename T >
RegControlBatchmaxtapchange (typename T::iterator it_begin, typename T::iterator it_end)
 
bools inversetime ()
 {Yes | No* } Default is no. More...
 
RegControlBatchinversetime (bool value)
 
RegControlBatchinversetime (bools &value)
 
BatchInt32ArrayProxy tapwinding ()
 Winding containing the actual taps, if different than the WINDING property. More...
 
RegControlBatchtapwinding (int32_t value)
 
template<typename T >
RegControlBatchtapwinding (T &value)
 
template<typename T >
RegControlBatchtapwinding (typename T::iterator it_begin, typename T::iterator it_end)
 
BatchFloat64ArrayProxy vlimit ()
 Voltage Limit for bus to which regulated winding is connected (e.g. More...
 
RegControlBatchvlimit (double value)
 
template<typename T >
RegControlBatchvlimit (T &value)
 
template<typename T >
RegControlBatchvlimit (typename T::iterator it_begin, typename T::iterator it_end)
 
BatchInt32ArrayProxy PTphase ()
 For multi-phase transformers, the number of the phase being monitored or one of { MAX | MIN} for all phases. More...
 
RegControlBatchPTphase (string &value)
 
RegControlBatchPTphase (int32_t value)
 
RegControlBatchPTphase (RegControl::RegControlPhaseSelection value)
 
RegControlBatchPTphase (strings &value)
 
RegControlBatchPTphase (std::vector< int32_t > &value)
 
RegControlBatchPTphase (std::vector< RegControl::RegControlPhaseSelection > &value)
 
strings PTphase_str ()
 For multi-phase transformers, the number of the phase being monitored or one of { MAX | MIN} for all phases. More...
 
RegControlBatchPTphase_str (string &value)
 
RegControlBatchPTphase_str (strings &value)
 
BatchFloat64ArrayProxy revThreshold ()
 kW reverse power threshold for reversing the direction of the regulator. More...
 
RegControlBatchrevThreshold (double value)
 
template<typename T >
RegControlBatchrevThreshold (T &value)
 
template<typename T >
RegControlBatchrevThreshold (typename T::iterator it_begin, typename T::iterator it_end)
 
BatchFloat64ArrayProxy revDelay ()
 Time Delay in seconds (s) for executing the reversing action once the threshold for reversing has been exceeded. More...
 
RegControlBatchrevDelay (double value)
 
template<typename T >
RegControlBatchrevDelay (T &value)
 
template<typename T >
RegControlBatchrevDelay (typename T::iterator it_begin, typename T::iterator it_end)
 
bools revNeutral ()
 {Yes | No*} Default is no. More...
 
RegControlBatchrevNeutral (bool value)
 
RegControlBatchrevNeutral (bools &value)
 
bools EventLog ()
 {Yes/True* | No/False} Default is YES for regulator control. More...
 
RegControlBatchEventLog (bool value)
 
RegControlBatchEventLog (bools &value)
 
BatchFloat64ArrayProxy RemotePTRatio ()
 When regulating a bus (the Bus= property is set), the PT ratio required to convert actual voltage at the remote bus to control voltage. More...
 
RegControlBatchRemotePTRatio (double value)
 
template<typename T >
RegControlBatchRemotePTRatio (T &value)
 
template<typename T >
RegControlBatchRemotePTRatio (typename T::iterator it_begin, typename T::iterator it_end)
 
BatchInt32ArrayProxy TapNum ()
 An integer number indicating the tap position that the controlled transformer winding tap position is currently at, or is being set to. More...
 
RegControlBatchTapNum (int32_t value)
 
template<typename T >
RegControlBatchTapNum (T &value)
 
template<typename T >
RegControlBatchTapNum (typename T::iterator it_begin, typename T::iterator it_end)
 
RegControlBatchReset (bool value)
 {Yes | No} If Yes, forces Reset of this RegControl. More...
 
BatchFloat64ArrayProxy LDC_Z ()
 Z value for Beckwith LDC_Z control option. More...
 
RegControlBatchLDC_Z (double value)
 
template<typename T >
RegControlBatchLDC_Z (T &value)
 
template<typename T >
RegControlBatchLDC_Z (typename T::iterator it_begin, typename T::iterator it_end)
 
BatchFloat64ArrayProxy rev_Z ()
 Reverse Z value for Beckwith LDC_Z control option. More...
 
RegControlBatchrev_Z (double value)
 
template<typename T >
RegControlBatchrev_Z (T &value)
 
template<typename T >
RegControlBatchrev_Z (typename T::iterator it_begin, typename T::iterator it_end)
 
bools Cogen ()
 {Yes|No*} Default is No. More...
 
RegControlBatchCogen (bool value)
 
RegControlBatchCogen (bools &value)
 
BatchFloat64ArrayProxy basefreq ()
 Base Frequency for ratings. More...
 
RegControlBatchbasefreq (double value)
 
template<typename T >
RegControlBatchbasefreq (T &value)
 
template<typename T >
RegControlBatchbasefreq (typename T::iterator it_begin, typename T::iterator it_end)
 
bools enabled ()
 {Yes|No or True|False} Indicates whether this element is enabled. More...
 
RegControlBatchenabled (bool value)
 
RegControlBatchenabled (bools &value)
 
RegControlBatchlike (const string &value)
 Make like another object, e.g. More...
 
RegControlBatchlike (const char *value)
 Make like another object, e.g. More...
 
- Public Member Functions inherited from dss::obj::DSSBatch
 DSSBatch (APIUtil *util, int32_t cls_idx)
 Create a batch of all elements in the DSS class.
 
 DSSBatch (APIUtil *util, int32_t cls_idx, int32_t prop_idx, int32_t prop_value)
 Create a batch of all elements that match an integer property value.
 
 DSSBatch (APIUtil *util, int32_t cls_idx, const char *regexp)
 Create a batch of all elements that match a regular expression.
 
 DSSBatch (APIUtil *util)
 Create an uninitialized batch instance.
 
strings name ()
 

Additional Inherited Members

- Public Attributes inherited from dss::obj::DSSBatch
APIUtilapi_util
 
void ** pointer
 
int32_t count [2]
 
- Protected Member Functions inherited from dss::obj::DSSBatch
void check_for_error ()
 
bools get_batch_bool (int32_t index)
 
std::vector< complex > get_batch_complex (int32_t index)
 
template<typename T = VectorXd>
std::vector< T > get_batch_valarray (int32_t index)
 
void set_batch_complex_for_each (int32_t index, std::vector< complex > &values)
 
template<typename T >
void set_batch_val (int32_t index, const T &value)
 
template<typename T = VectorXd>
get_batch_val (int32_t index)
 
template<typename T >
void set_batch_val_for_each (int32_t index, typename T::iterator v, typename T::iterator v_end)
 
- Static Protected Member Functions inherited from dss::obj::DSSBatch
template<typename T = VectorXd>
static T get_batch_val (int32_t index, DSSBatch &batch)
 

Member Function Documentation

◆ band()

BatchFloat64ArrayProxy dss::obj::RegControlBatch::band ( )
inline

Bandwidth in VOLTS for the controlled bus (see help for ptratio property).

Default is 3.0

DSS property name: band, DSS property index: 4

◆ basefreq()

BatchFloat64ArrayProxy dss::obj::RegControlBatch::basefreq ( )
inline

Base Frequency for ratings.

DSS property name: basefreq, DSS property index: 33

◆ bus()

strings dss::obj::RegControlBatch::bus ( )
inline

Name of a bus (busname.nodename) in the system to use as the controlled bus instead of the bus to which the transformer winding is connected or the R and X line drop compensator settings.

Do not specify this value if you wish to use the line drop compensator settings. Default is null string. Assumes the base voltage for this bus is the same as the transformer winding base specified above. Note: This bus (1-phase) WILL BE CREATED by the regulator control upon SOLVE if not defined by some other device. You can specify the node of the bus you wish to sample (defaults to 1). If specified, the RegControl is redefined as a 1-phase device since only one voltage is used.

DSS property name: bus, DSS property index: 9

◆ Cogen()

bools dss::obj::RegControlBatch::Cogen ( )
inline

{Yes|No*} Default is No.

The Cogen feature is activated. Continues looking forward if power reverses, but switches to reverse-mode LDC, vreg and band values.

DSS property name: Cogen, DSS property index: 32

◆ CTprim()

BatchFloat64ArrayProxy dss::obj::RegControlBatch::CTprim ( )
inline

Rating, in Amperes, of the primary CT rating for which the line amps convert to control rated amps.The typical default secondary ampere rating is 0.2 Amps (check with manufacturer specs).

Current at which the LDC voltages match the R and X settings.

DSS property name: CTprim, DSS property index: 6

◆ debugtrace()

bools dss::obj::RegControlBatch::debugtrace ( )
inline

{Yes | No* } Default is no.

Turn this on to capture the progress of the regulator model for each control iteration. Creates a separate file for each RegControl named "REG_name.CSV".

DSS property name: debugtrace, DSS property index: 17

◆ delay()

BatchFloat64ArrayProxy dss::obj::RegControlBatch::delay ( )
inline

Time delay, in seconds, from when the voltage goes out of band to when the tap changing begins.

This is used to determine which regulator control will act first. Default is 15. You may specify any floating point number to achieve a model of whatever condition is necessary.

DSS property name: delay, DSS property index: 10

◆ enabled()

bools dss::obj::RegControlBatch::enabled ( )
inline

{Yes|No or True|False} Indicates whether this element is enabled.

DSS property name: enabled, DSS property index: 34

◆ EventLog()

bools dss::obj::RegControlBatch::EventLog ( )
inline

{Yes/True* | No/False} Default is YES for regulator control.

Log control actions to Eventlog.

DSS property name: EventLog, DSS property index: 26

◆ inversetime()

bools dss::obj::RegControlBatch::inversetime ( )
inline

{Yes | No* } Default is no.

The time delay is adjusted inversely proportional to the amount the voltage is outside the band down to 10%.

DSS property name: inversetime, DSS property index: 19

◆ LDC_Z()

BatchFloat64ArrayProxy dss::obj::RegControlBatch::LDC_Z ( )
inline

Z value for Beckwith LDC_Z control option.

Volts adjustment at rated control current.

DSS property name: LDC_Z, DSS property index: 30

◆ like() [1/2]

RegControlBatch & dss::obj::RegControlBatch::like ( const char *  value)
inline

Make like another object, e.g.

:

New Capacitor.C2 like=c1 ...

DSS property name: like, DSS property index: 35

◆ like() [2/2]

RegControlBatch & dss::obj::RegControlBatch::like ( const string &  value)
inline

Make like another object, e.g.

:

New Capacitor.C2 like=c1 ...

DSS property name: like, DSS property index: 35

◆ maxtapchange()

BatchInt32ArrayProxy dss::obj::RegControlBatch::maxtapchange ( )
inline

Maximum allowable tap change per control iteration in STATIC control mode.

Default is 16.

Set this to 1 to better approximate actual control action.

Set this to 0 to fix the tap in the current position.

DSS property name: maxtapchange, DSS property index: 18

◆ PTphase()

BatchInt32ArrayProxy dss::obj::RegControlBatch::PTphase ( )
inline

For multi-phase transformers, the number of the phase being monitored or one of { MAX | MIN} for all phases.

Default=1. Must be less than or equal to the number of phases. Ignored for regulated bus.

DSS property name: PTphase, DSS property index: 22

◆ PTphase_str()

strings dss::obj::RegControlBatch::PTphase_str ( )
inline

For multi-phase transformers, the number of the phase being monitored or one of { MAX | MIN} for all phases.

Default=1. Must be less than or equal to the number of phases. Ignored for regulated bus.

DSS property name: PTphase, DSS property index: 22

◆ ptratio()

BatchFloat64ArrayProxy dss::obj::RegControlBatch::ptratio ( )
inline

Ratio of the PT that converts the controlled winding voltage to the regulator control voltage.

Default is 60. If the winding is Wye, the line-to-neutral voltage is used. Else, the line-to-line voltage is used. SIDE EFFECT: Also sets RemotePTRatio property.

DSS property name: ptratio, DSS property index: 5

◆ R()

BatchFloat64ArrayProxy dss::obj::RegControlBatch::R ( )
inline

R setting on the line drop compensator in the regulator, expressed in VOLTS.

DSS property name: R, DSS property index: 7

◆ RemotePTRatio()

BatchFloat64ArrayProxy dss::obj::RegControlBatch::RemotePTRatio ( )
inline

When regulating a bus (the Bus= property is set), the PT ratio required to convert actual voltage at the remote bus to control voltage.

Is initialized to PTratio property. Set this property after setting PTratio.

DSS property name: RemotePTRatio, DSS property index: 27

◆ Reset()

RegControlBatch & dss::obj::RegControlBatch::Reset ( bool  value)
inline

{Yes | No} If Yes, forces Reset of this RegControl.

DSS property name: Reset, DSS property index: 29

◆ rev_Z()

BatchFloat64ArrayProxy dss::obj::RegControlBatch::rev_Z ( )
inline

Reverse Z value for Beckwith LDC_Z control option.

DSS property name: rev_Z, DSS property index: 31

◆ revband()

BatchFloat64ArrayProxy dss::obj::RegControlBatch::revband ( )
inline

Bandwidth for operating in the reverse direction.

DSS property name: revband, DSS property index: 13

◆ revDelay()

BatchFloat64ArrayProxy dss::obj::RegControlBatch::revDelay ( )
inline

Time Delay in seconds (s) for executing the reversing action once the threshold for reversing has been exceeded.

Default is 60 s.

DSS property name: revDelay, DSS property index: 24

◆ reversible()

bools dss::obj::RegControlBatch::reversible ( )
inline

{Yes |No*} Indicates whether or not the regulator can be switched to regulate in the reverse direction.

Default is No.Typically applies only to line regulators and not to LTC on a substation transformer.

DSS property name: reversible, DSS property index: 11

◆ revNeutral()

bools dss::obj::RegControlBatch::revNeutral ( )
inline

{Yes | No*} Default is no.

Set this to Yes if you want the regulator to go to neutral in the reverse direction or in cogen operation.

DSS property name: revNeutral, DSS property index: 25

◆ revR()

BatchFloat64ArrayProxy dss::obj::RegControlBatch::revR ( )
inline

R line drop compensator setting for reverse direction.

DSS property name: revR, DSS property index: 14

◆ revThreshold()

BatchFloat64ArrayProxy dss::obj::RegControlBatch::revThreshold ( )
inline

kW reverse power threshold for reversing the direction of the regulator.

Default is 100.0 kw.

DSS property name: revThreshold, DSS property index: 23

◆ revvreg()

BatchFloat64ArrayProxy dss::obj::RegControlBatch::revvreg ( )
inline

Voltage setting in volts for operation in the reverse direction.

DSS property name: revvreg, DSS property index: 12

◆ revX()

BatchFloat64ArrayProxy dss::obj::RegControlBatch::revX ( )
inline

X line drop compensator setting for reverse direction.

DSS property name: revX, DSS property index: 15

◆ tapdelay()

BatchFloat64ArrayProxy dss::obj::RegControlBatch::tapdelay ( )
inline

Delay in sec between tap changes.

Default is 2. This is how long it takes between changes after the first change.

DSS property name: tapdelay, DSS property index: 16

◆ TapNum()

BatchInt32ArrayProxy dss::obj::RegControlBatch::TapNum ( )
inline

An integer number indicating the tap position that the controlled transformer winding tap position is currently at, or is being set to.

If being set, and the value is outside the range of the transformer min or max tap, then set to the min or max tap position as appropriate. Default is 0

DSS property name: TapNum, DSS property index: 28

◆ tapwinding()

BatchInt32ArrayProxy dss::obj::RegControlBatch::tapwinding ( )
inline

Winding containing the actual taps, if different than the WINDING property.

Defaults to the same winding as specified by the WINDING property.

DSS property name: tapwinding, DSS property index: 20

◆ transformer()

strings dss::obj::RegControlBatch::transformer ( )
inline

Name of Transformer or AutoTrans element to which the RegControl is connected.

Do not specify the full object name; "Transformer" or "AutoTrans" is assumed for the object class. Example:

Transformer=Xfmr1

DSS property name: transformer, DSS property index: 1

◆ transformer_obj()

std::vector< dss::obj::DSSObj > dss::obj::RegControlBatch::transformer_obj ( )
inline

Name of Transformer or AutoTrans element to which the RegControl is connected.

Do not specify the full object name; "Transformer" or "AutoTrans" is assumed for the object class. Example:

Transformer=Xfmr1

DSS property name: transformer, DSS property index: 1

◆ vlimit()

BatchFloat64ArrayProxy dss::obj::RegControlBatch::vlimit ( )
inline

Voltage Limit for bus to which regulated winding is connected (e.g.

first customer). Default is 0.0. Set to a value greater then zero to activate this function.

DSS property name: vlimit, DSS property index: 21

◆ vreg()

BatchFloat64ArrayProxy dss::obj::RegControlBatch::vreg ( )
inline

Voltage regulator setting, in VOLTS, for the winding being controlled.

Multiplying this value times the ptratio should yield the voltage across the WINDING of the controlled transformer. Default is 120.0

DSS property name: vreg, DSS property index: 3

◆ winding()

BatchInt32ArrayProxy dss::obj::RegControlBatch::winding ( )
inline

Number of the winding of the transformer element that the RegControl is monitoring.

1 or 2, typically. Side Effect: Sets TAPWINDING property to the same winding.

DSS property name: winding, DSS property index: 2

◆ X()

BatchFloat64ArrayProxy dss::obj::RegControlBatch::X ( )
inline

X setting on the line drop compensator in the regulator, expressed in VOLTS.

DSS property name: X, DSS property index: 8


The documentation for this class was generated from the following file: