开关电源知识库

数值说明:本文的代入数值为本库教学复算,用于说明计算过程与量级,不作为设计依据;引用的库内实例均标注出处(型号/文件号),通用公式标「教科书通识」。

数学专题七 · 数值方法与曲线拟合

电源设计里有大量没有解析解、只有曲线或实测数据的问题:磁芯损耗曲线、电容 ESR(f)、开关管导通电阻随温度的变化、实测波形的反推参数。这类问题的工具箱是数值方法,而不是公式推导。

0 本篇速览

问题 方法 典型用途
解一个没有解析解的方程 二分法、牛顿迭代 求谐振点、截止频率、满足条件的匝数
从厂商曲线上取值 插值(线性 / 对数) 磁损、ESR(f)、铁心曲线
从实测数据反推参数 最小二乘拟合 ESR、DCR、损耗系数 k、α、β
判断样本是否可信 残差与相关系数 拟合失败时先怀疑模型形式

1 求根:二分法

适用前提:函数在区间上连续,且两端异号。

算法(工程上常用“整数区间收敛”写法):

给定 f(a) < 0 < f(b),误差限 ε
while (b - a) > ε:
    m = (a + b) / 2
    if f(m) > 0: b = m
    else:        a = m
return (a + b) / 2

收敛速度:每次区间减半,$n$ 次后区间长度为 $(b-a)/2^n$。$n = \lceil \log_2((b-a)/\varepsilon)\rceil$。

电源实例:求输出滤波在给定 ESR 下的实际拐点频率,需要解 $|Z_{C}(j\omega)| = R_{load}$;求“多少 ESR 才能让 $\zeta = 0.7$”,需要反解一个含 $\sqrt{\text{ESR}}$ 的方程——两者都能用二分法稳定求解。

优点与缺点:二分法绝对可靠(不会发散),但收敛慢。在设计收敛阶段优先用它排除错误,在需要速度时再用牛顿法。

2 求根:牛顿迭代

$$x_{n+1} = x_n - \frac{f(x_n)}{f'(x_n)}$$

收敛速度:当初值接近根时为平方收敛——每次迭代有效位数翻倍,5~6 次即可达到双精度。

前提条件(不满足会发散):

条件 说明
$f'$ 存在且不为零 拐点处牛顿法退化
初值足够近 从根的哪一侧靠近决定迭代方向
$f$ 在邻域单调 否则可能跳到别的根

工程技巧:先扫一遍 $[a,b]$ 的函数值符号,确认区间内只有一个根,再取该点附近的初值;若牛顿法跳出了预期区间,回退到二分法——这个混合策略(牛顿起步 + 失败回退二分)在工程上最稳。

电源实例:求使环路增益穿越频率等于 $f_{r}/4$ 的补偿电阻值,方程含 $R$ 与 $1/R$ 的组合,牛顿法三四步即收敛。

3 插值:从曲线取值

厂商手册给的曲线是离散数据点,使用时需要插值。

插值方式 适用场景 误差
线性插值 曲线平滑、点密集 $O(h^2)$
对数插值(log-log) 幂律关系(损耗、ESR vs 频率) 幂律下误差最小
三次样条 曲线有拐点 $O(h^4)$,但可能过冲

幂律曲线必须用对数插值:磁芯损耗 $P_v = k f^{\alpha} B^{\beta}$ 在双对数坐标下近似直线,直接线性插值会在指数区域引入数十个百分点误差。

取点规则(影响精度的关键):

  1. 不跨越数据点的“折点”(如磁损曲线的膝点)插值——那附近函数曲率极大;
  2. 数据点密集处用线性插值即可,数据稀疏处用对数;
  3. 需要“保守取值”时(温升、应力核算),向不利方向取整,不要取曲线中段。

Excel 实现:=FORECAST.LINEAR(x, 已知y, 已知x);双对数拟合用 =SLOPE(LN(y), LN(x)) 求指数,再用 =INTERCEPT 求系数。

4 最小二乘拟合

给定 $n$ 组数据 $(x_i, y_i)$,求使残差平方和最小的参数:

$$\min_{\beta}\sum_{i=1}^{n}\left[y_i - \sum_j \beta_j f_j(x_i)\right]^2$$

线性情形($f_j$ 为基函数)有闭式解:

$$\hat{\beta} = (X^TX)^{-1}X^T y$$

这使得“从实测数据反推模型参数”成为例行工作而非研究课题。

电源应用清单:

待拟合关系 拟合形式 得到什么
磁芯损耗 vs 频率(固定 B) $P_v = k f^{\alpha}$ 损耗系数 $k$、指数 $\alpha$
导通电阻 vs 温度 $R(T) = R_0(1+\alpha_T T)$ 25 ℃ 电阻、温度系数
ESR vs 频率 等效模型(平台 + 并联 RC) 高频与低频 ESR
效率 vs 负载 二次/三次多项式 峰值效率点

拟合必须做的三件事:

  1. 画残差图:残差若呈明显系统性趋势(不是随机散布),说明模型形式错了,不是数据不好。此时应换模型(如指数改幂律、加线性项)。
  2. 不要外推:拟合区间外的预测极不可靠,磁损曲线在膝点之外完全不能用幂律外推。
  3. 记录来源:拟合出的参数要标注“由某组实测数据拟合”,并随模型文件一起归档——否则三个月后没人知道这个 $k$ 从哪来(这正是全库建模方法论强调的纪律)。

5 数值积分与微分

任务 方法 说明
积分 梯形法、辛普森法 梯形法误差 $O(h^2)$,辛普森 $O(h^4)$
面积(电荷量) 累加 等价于梯形法
峰值/RMS 先采样后计算 需固定采样率与带宽限制
微分 中心差分 $f'(x) \approx \dfrac{f(x+h)-f(x-h)}{2h}$

仿真数据处理的三个陷阱:

陷阱 后果 对策
采样率不足 峰值被漏掉、看起来“很稳” 采样率至少为被测频率的 10 倍
带宽限制不一致 纹波读数不可比 统一带宽限制并记录
探头接地引入 波形失真 见“测量本身会改变电路”一节

库内仿真与实测对账方法论给了完整的口径定义与容差表。

6 收敛与精度

判据 定义 用在哪
残差 $\|f(x_n)\|$ 求根是否收敛
步长 $\|x_n - x_{n-1}\|$ 迭代是否还在动
相对误差 $\dfrac{\text{绝对误差}}{\text{真值}}$ 报告结果时用
蒙特卡洛标准差 $\sigma/\sqrt{N}$ 抽样收敛(见专题八)

必须区分“数值收敛”与“物理收敛”:仿真迭代收敛只说明方程组有解,不代表这个解对应真实工况。模型是否成立要与实测核对——这是仿真方法论的核心纪律。

7 速查

记不住就查这张表 内容
选求根方法 要可靠用二分,要快用牛顿,混合最稳
牛顿法初值 先扫区间确认单根,再取邻近点
幂律曲线插值 必须双对数,否则误差可达数十个百分点
拟合失败怎么办 画残差图;系统性趋势 = 模型形式错
拟合结果能否外推 不能,超出区间不可信
采样率要求 至少 10 倍于被测频率
数值收敛≠物理正确 必须与实测核对

与库内文档联动

上一级:01_数学