附录
1
附录 牛顿-拉夫逊法潮流计算程序
本附录所介绍的牛顿-拉夫逊法潮流计算程序采用极坐标形式,其中所涉及的计算
公式与第四章中的式(4-42)-(4-59)完全相同,计算程序框图与图 4-6 基本一致。程序
采用 C 语言编制。为了便于初学者阅读,节点导纳矩阵和雅可比矩阵都用满阵存储而未
采用稀疏技巧;但为了适当照顾使用的方便性,在输入数据中对节点编号次序不作任何
要求。
下面先介绍输入文件的格式和要求,然后列出程序,最后说明潮流结果的输出。建
议读者先从原始数据的输入中了解和熟悉它们在程序中对应的变量、结构体数组及其成
员的名称,然后对照图 4-6 和式(4-42)-(4-59)仔细和耐心地阅读程序,最好能在计算机上
亲自实现和进行调试。在调试时,可以用下面给出的对应于[例 4-3]系统的输入数据,以
及程序运行中得出的中间结果,逐步与[例 4-3]中所给出的中间结果进行对比,从而查找
错误所在并进行改正。
一、原始数据的输入
程序通过“输入数据.txt”文件输入以下 5 个数据段。
1. 信息(共 6 个)
(1) 总节点数(变量 num_node)
(2) 线路和并联电容器总数(变量 num_line)
(3) 变压器支路总数(变量 num_tran)
(4) 发电机节点总数(变量 num_gene)
(5) 负荷节点总数(变量 num_load)
(6) 节点功率不平衡量的容许误差(变量 error)
2. 线路和并联电容器数据(结构体数组 line):每一线路或并联电容器包括 5 个数据
线路
并联电容器
成员
I 侧节点编号
所接节点编号
i
J 侧节点编号
同上
j
Π 型等值电路电阻
电容器电阻
a
Π 型等值电路电抗
电容器电抗(负数)
b
Π 型等值电路一端电纳
0.0
c
I 侧节点编号和 J 侧节点编号可以对换;线路和并联电容器之间的次序可以任意,
而且允许多条线路或多个电容器并联。
3. 变压器支路数据(结构体数组 tran):每一变压器支路包括 5 个数据
变压器支路
成员
1 侧节点编号
i
2 侧节点编号
j