3. 收敛判据与残差解读
潮流计算本质上是在反复求解一组非线性方程,直到“不平衡量足够小”为止。所谓收敛判据,就是给这个“足够小”下定义;而残差,就是每次迭代后方程左右两端还差多少。能否读懂残差,直接决定了你是在“等它收敛”,还是在“等一个永远不会来的结果”。
一、三个核心收敛指标
在牛顿-拉夫逊法或PQ分解法中,迭代日志通常输出三类量,它们共同构成收敛判据:
- 功率不平衡量(ΔP、ΔQ):对每个PQ节点,注入有功、无功的给定值与计算值之差;对PV节点,只有ΔP参与迭代。单位通常为p.u.或MW/Mvar。它是判断收敛最直接的量。
- 电压偏差(ΔV):在极坐标形式下表现为电压幅值修正量ΔV和相角修正量Δθ;在直角坐标下则是Δe、Δf。它反映的是状态变量的修正步长,而不是最终误差本身。
- 迭代次数:牛顿法通常3~6次收敛,PQ分解法约5~15次。次数本身不是判据,但“次数异常”是重要信号。
工程上最常用的收敛判据是最大功率不平衡量:当所有节点的|ΔP|、|ΔQ|同时小于给定容差ε(典型取1e-4 p.u.或1e-5 p.u.)时,判定收敛。也有程序采用“2-范数”判据,即所有不平衡量平方和开方小于ε。两种判据的差别在于:最大范数对单个节点敏感,2-范数对整体分布敏感。调试时建议同时观察两者。
二、从迭代日志读出“趋势”
单看某一次迭代的残差没有意义,关键是看残差随迭代次数的变化形态。把每次迭代的最大|ΔP|、|ΔQ|按顺序排列,就能得到一条残差曲线。这条曲线的形状,直接对应四种典型状态:
| 残差形态 | 典型表现 | 物理含义 |
|---|---|---|
| 单调下降 | 每次迭代残差约按固定比例缩小 | 正常收敛,牛顿法呈二次收敛特征 |
| 振荡 | 残差在几个数量级间来回跳动,不持续下降 | 雅可比矩阵病态、初值不当或存在弱节点 |
| 停滞 | 残差降到某一量级后几乎不再变化 | 达到数值精度极限,或存在不可解的约束冲突 |
| 发散 | 残差逐次增大,甚至溢出 | 初值远离解、系统解不存在或模型错误 |
下面这张图把四种残差趋势放在同一坐标系中对比,纵轴为对数刻度的最大功率不平衡量,横轴为迭代次数。它可以帮助你在看到日志数字时,快速把“数字序列”映射为“曲线形态”,从而判断当前算例处于哪种状态。
三、把日志数字翻译成判断
假设某5节点系统采用牛顿法,容差取1e-4 p.u.,日志中最大|ΔP|序列为:
迭代 1: |ΔP|max = 0.4821 p.u.
迭代 2: |ΔP|max = 0.0937 p.u.
迭代 3: |ΔP|max = 0.0084 p.u.
迭代 4: |ΔP|max = 0.00012 p.u.
迭代 5: |ΔP|max = 3.1e-7 p.u. → 收敛
这个序列每次约缩小一个数量级,第4次已低于1e-4,第5次进一步降到1e-7,属于典型的单调收敛。注意第4次虽然已满足容差,但程序通常还会再迭代一次确认,或者直接在第4次判定成功。若日志在第4次后停止,也是正常的。
再看一个异常序列:
迭代 1: |ΔP|max = 0.31 p.u.
迭代 2: |ΔP|max = 0.08 p.u.
迭代 3: |ΔP|max = 0.11 p.u.
迭代 4: |ΔP|max = 0.07 p.u.
迭代 5: |ΔP|max = 0.09 p.u.
迭代 6: |ΔP|max = 0.08 p.u. → 停滞/振荡
残差在0.07~0.11之间反复,既不持续下降也不增大,这是振荡型停滞。常见原因包括:某台变压器分接头导致雅可比矩阵条件数过大、PV节点无功越限后反复切换、或者初值恰好落在两个解之间的鞍点附近。此时继续增加迭代次数通常无效,需要改变策略。
四、不同趋势对应的处理方向
判断出趋势后,处理方式完全不同:
- 单调收敛但次数偏多:检查是否有节点电压接近0.7 p.u.以下,或支路阻抗过大。可尝试平启动改为直流潮流启动,减少迭代次数。
- 振荡:优先检查PV/PQ节点类型是否频繁切换。将无功越限的PV节点改为PQ后,若残差立刻恢复下降,说明是类型切换引起的振荡。也可适当放宽无功限值,或改用带阻尼的修正方程。
- 停滞:先确认容差是否设得过小。若容差合理,检查是否存在孤岛、零阻抗支路或环网中的相位冲突。把停滞时的电压解打印出来,往往能看到某个节点电压异常偏低或相角差接近90°。
- 发散:最常见原因是初值太差或系统本身无解。可先用直流潮流给出相角初值,或用高斯-赛德尔法迭代2~3次再转入牛顿法。若仍发散,需检查负荷是否超过传输极限。
五、一个可操作的残差记录习惯
建议在每次潮流计算时,至少记录以下字段,形成一张简表:迭代次数k、最大|ΔP|、最大|ΔQ|、最大|ΔV|、对应节点编号。这样当出现异常时,你能立刻定位是哪个节点在“拖后腿”。例如最大|ΔQ|始终出现在同一节点,说明该节点无功支撑不足;最大|ΔP|在几个节点间跳动,则更可能是全局性问题。
收敛判据和残差解读不是孤立的数值问题,它连接着模型质量、初值选择和参数合理性。学会从日志中读出趋势,就等于在潮流计算中获得了“诊断能力”——你不再只是等待结果,而是能主动判断结果是否可信、问题出在哪里。