# Transfer Capacity Analysis

Power market is a complex problem from simulation perspective. We are not attempting to solve the problem as a whole, at least at this stage, rather to provide building blocks such that others could build their solutions ether by extending InterPSS or integrating these blocks into their applications.

## Sensitivity and Transfer Capacity Analysis

One of the widest applications of DC Loadflow is in the allocation of responsibility for transmission flows. DC Loadflow based allocation factors are often used to allocate transmission property rights. In this way the interaction between uses of the transmission grid is ignored - all usage of power are linearly additive. Since, in DC Loadflow calculation, it does not require that the AC network states be known, the B matrix can be used to calculate sensitivities in applications where it would be too expensive to solve an AC Loadflow or where policy requires that the sensitivities remain constant. The inverse of the B matrices in the following equations can be used to find sensitivity [∂θ/∂P] and [∂V/∂Q].

[ΔP] = [B'] • [Δθ]

[ΔQ] = [B"] • [ΔV]

**Please Note:** InterPSS uses power/current leaving the network as the positive direction when forming its loadflow equations.

### Generator Shift Factor (GSF)

Generator Shift Factor (GSF) is defined as the fraction of the injection introduced at a bus i that will flow on the branch from k to m. GSF is a number in the range [-1,1]. The GSF defines the effectiveness of a control at bus i in relieving an overload on branch k to m.

GSF = [B']km * ( [∂θ/∂P]ki - [∂θ/∂P]mi )

where [∂θ/∂P] is the element taken from row k or m and column i of the inverse of the B' matrix.

### Power Transfer Distribution Factor (PTDF)

Power Transfer Distribution Factor (PTDF) is defined as the fraction of the power injected at bus i and withdrawn at bus j that will flow on branch k to m. PTDF is a number in the range [-1,1]. PTDF could be expressed in terms of GFS, as follows:

PTDF = GFS(k->m,i) - GFS(k->m,j)

### PTDF Calculation

To launch the InterPSS Sensitivity analysis, click Run->Sensitivity Analysis or the "SA" toolbar button, as shown in the following diagram:

The sensitivity analysis can be performed on any network type with AC Loadflow network information, including all types of custom data files.

IEEE-14Bus Sample

The following is a sample PTDF calculation for the IEEE-14Bus.ipss sample project:

Power Transfer Distribution Factor

Inject BusId : 0003

Withdraw BusId : 0014

Branch Id PTDF

====================================

0004->0007 0.37442

0004->0009 0.21484

0005->0006 0.41074

The summation of the three PTDFs is 0.9900, close to 1.0, which is not a coincident. The three branches form an interface from the generation area to the load area, as shown in the following diagram. When 1.0pu power is injected into the generation area and withdrew from the load area, the summation of the power flow of the interface should equal to 1.0pu.

## DC Loadflow

DC Loadflow is a variation of the conventional (nonlinear) AC loadflow. It is a linearized approximate solution, and there is no simple way to determine how close is the DC Loadflow solution, it provides, to the true AC Loadflow solution. DC Loadflow is used wherever repetitive, fast loadflow estimations are required. Typically it is used as part of a larger software application. It is widely used for contingency screening, or to test proposed transmission system changes against certain transfer capacity. It is also widely used in Security-Constrained Unit Commitment (SCUC), Security-Constrained Economic Dispatch (SCED) and with a transmission-constrained Optimal Power Flow (OPF) that uses a Linear Programming (LP) optimization method rather than a non-linear optimization engine.

### DC Loadflow Algorithm

DC Loadflow is the solution to the following set of linear equations

[ΔP] = [B'] • [Δθ]

where P is the vector of per-unit net active power injected into each bus, B is matrix of negative per-unit susceptances between each bus, and θ is the vector of bus nodal voltage angles in radians.

- The B matrix is referred to as the B' matrix in order to distinguish it from the so-called B" matrix for the reactive power and voltage relationship.
- The B matrix is symmetric if the network model does not contain any phase shifting transformers

### Assumptions

- The underlying assumptions for DC Loadflow are violated if the network model contains any transmission line whose X/R is less than 10, or if the difference in the branch angles is greater than five degrees.
- DC Loadflow does not make any predictions about the reactive power flows. However, using the results of DC Loadflow to compute branch flows which are then monitored against MVA or ampere limits makes the implicit assumption that reactive flows are zero.

### Run DC Loadflow

DC Loadflow uses power network's positive sequence branch parameters. Therefore, you can run DC Loadflow on all types of InterPSS transmission system projects (ACLF, ACSC and TranStability). Click the Run/DC Loadflow Analysis menuitem or the DC toolbar button to run DC loadlfow.

After the run, DC Loadflow results will be display in the output text windows.

## Sensitivity Analysis Scripting

Sensitivity, GSF and PTDF are most likely to be used by other applications, not by a human user. Therefore, currently no user interface is available for calculating them. You can however use InterPSS XML scripts to perform the calculation. Please refer the following two documents for more detailed information on how to construct an InterPSS XML document and perform Custom Scripting Run:

- InterPSS XML Document - You can find more information about how to create an XML document and control InterPSS running process.
- Custom Scripting Run - You can find more information about how to run InterPSS using custom scripts.

There are two sample XML documents for the IEEE-14Bus.ipss sample project in the InterPSS Sample Workspace, which could be used to perform the sensitivity, GSF and PTDF calculation.

### DC Loadflow

<ipss:InterPSS xmlns:ipss="http://www.interpss.org/schema"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

<ipss:runStudyCase>

<ipss:analysisRunTask>RunDclf</ipss:analysisRunTask>

<ipss:runDclfStudyCaseList>

<ipss:runDclfStudyCase>

<ipss:recId>DclfRun-1</ipss:recId>

<ipss:caculatelDclf>true</ipss:caculatelDclf>

</ipss:runDclfStudyCase>

</ipss:runDclfStudyCaseList>

</ipss:runStudyCase>

</ipss:InterPSS>

The ipss:caculatelDclf element allows you to define a DC Loadflow run.

### Power-Angle Sensitivity

The following are sample XML scripts for calculating power angle sensitivity:

<ipss:sensitivity>

<ipss:type>PAngle</ipss:type>

<ipss:injectBusId>0003</ipss:injectBusId>

<ipss:bus>

<ipss:recId>Bus0012_1</ipss:recId>

<ipss:busId>0012</ipss:busId>

</ipss:bus>

<ipss:bus>

<ipss:recId>Bus0013_1</ipss:recId>

<ipss:busId>0013</ipss:busId>

</ipss:bus>

</ipss:sensitivity>

To calculate power angle sensitivity, you set ipss:type = PAngle and define an injection bus. Then you can define a list of buses, where you would like to calculate the sensitivity.

### Q-Voltage Sensitivity

The following are sample XML scripts for calculating Q-Voltage sensitivity:

<ipss:sensitivity>

<ipss:type>QVoltage</ipss:type>

<ipss:injectBusId>0014</ipss:injectBusId>

<ipss:bus>

<ipss:recId>Bus0012_2</ipss:recId>

<ipss:busId>0012</ipss:busId>

</ipss:bus>

</ipss:sensitivity>

To calculate reactive power voltage sensitivity, you set ipss:type = QVoltage and define an injection bus. Then you can define a list of buses, where you would like to calculate the sensitivity.

### Generator Shift Factor

The following are sample XML scripts for calculating generator shift factor:

<ipss:genShiftFactor>

<ipss:type>PAngle</ipss:type>

<ipss:injectBusId>0003</ipss:injectBusId>

<ipss:branch>

<ipss:recId>Branch0004_0007_1</ipss:recId>

<ipss:fromBusId>0004</ipss:fromBusId>

<ipss:toBusId>0007</ipss:toBusId>

</ipss:branch>

<ipss:branch>

<ipss:recId>Branch0004_0009_1</ipss:recId>

<ipss:fromBusId>0004</ipss:fromBusId>

<ipss:toBusId>0009</ipss:toBusId>

</ipss:branch>

</ipss:genShiftFactor>

To calculate generator shift factor, you set ipss:type = PAngle and define an injection bus. Then you can define a list of branches, where you would like to calculate GSF.

### Power Transfer Distribution Factor

The following are sample XML scripts for calculating power transfer distribution factor:

<ipss:pTransferDistFactor>

<ipss:type>PAngle</ipss:type>

<ipss:injectBusId>0003</ipss:injectBusId>

<ipss:withdrawBusId>0014</ipss:withdrawBusId>

<ipss:branch>

<ipss:recId>Branch0004_0007_2</ipss:recId>

<ipss:fromBusId>0004</ipss:fromBusId>

<ipss:toBusId>0007</ipss:toBusId>

</ipss:branch>

<ipss:branch>

<ipss:recId>Branch0004_0009_2</ipss:recId>

<ipss:fromBusId>0004</ipss:fromBusId>

<ipss:toBusId>0009</ipss:toBusId>

</ipss:branch>

<ipss:branch>

<ipss:recId>Branch0005_0006_2</ipss:recId>

<ipss:fromBusId>0005</ipss:fromBusId>

<ipss:toBusId>0006</ipss:toBusId>

</ipss:branch>

</ipss:pTransferDistFactor>

To calculate power transfer distribution factor, you set ipss:type = PAngle, define an injection bus and a withdraw bus. Then you can define a list of branches, where you would like to calculate PTDF.