Function GetPFVoltage

 

Function GetPFVoltage( ByVal hHandle&, ByRef vdOut1() as double, _

       ByRef vdOut2() as double, ByVal nStyle& ) As Long

Purpose: Retrieve voltage in load flow simulation of a bus, or of connected buses of a line, transformer, switch or phase shifter.

Works in:      Power Flow only.

Parameters:     

nHandle       [in] data object handle

vdOut1      [out] voltage magnitude

vdOut2      [out] voltage angle in degree

nStyle      [in] result style
=1: output voltage in kV
=2: output voltage in per-unit

Return value:

1               success

0               failure

Remarks: The size of arrays vdOut1 and vdOut2 must be at least 3. For equipment that is connected to more than one bus, the voltage result is stored in the following order:
- vdOut1(1), vnOut2(1):  Voltage at equipment’s Bus1
- vdOut1(2), vnOut2(2):  Voltage at equipment’s Bus2
- vdOut1(3), vnOut2(3):  Voltage at equipment’s Bus3

 

Example:

 

   Dim MagArray(3) As Double, AngArray(3) As Double

   ‘ Get end bus names

   If GetData( LineHnd, LN_nBus1Hnd, BusHnd ) = 0 Then GoTo HasError

   Bus1ID = FullBusName( BusHnd )

   If GetData(LineHnd, LN_nBus2Hnd, BusHnd ) = 0 Then GoTo HasError

   Bus2ID = FullBusName( BusHnd )

   ‘ Get current

   If GetPFVoltage( nDevHnd&, vdVal1, vdVal2, 2 ) = 0 Then GoTo HasError

   ' Show it

   Print "Voltage on line: "; sVal2$ & "-"; sVal3$ & " ID= "; sVal1$; ": "; Chr(10); _

         "V1 = "; Format( MagArray(1), "#0.00"); "@"; Format( AngArray(1), "#0.0");  _

         "; V2 = "; Format( MagArray(2), "#0.00"); "@"; Format(AngArray 2), "#0.0")