计算方法07 电阻网络
Published:
\newcommand\norm[1]{\left\lVert#1\right\rVert} \newcommand\abs[1]{\left\lvert#1\right\rvert}
前置
前置的物理定律包括如下两条:
欧姆定律,即 $\phi_i-\phi_j=U_{i,j}=I_{i,j}R$。定义电导率为 $w=R^{-1}$,那么有 $I_{i,j}=U_{i,j}w$。
基尔霍夫定律,即对于电阻网络的任意节点 $v$,流入的电流等于流出的电流 。
电路网络与 $L$
对于单位电阻组成的电路网络 $G$,其拉普拉斯矩阵 $L$ 可以通过上面两条物理定律和电流联系起来。
考虑电路网络内部的节点 $x$,根据基尔霍夫定律有
\begin{aligned}
b_x=\sum_{y\in N(x)} I_{x,y}=\sum_{y\in N(x)} (\phi_x-\phi_y)w
\end{aligned}
为了方便讨论,一般会规定电源电势为 $1V$,或流入电路网络的电流总量为 $1A$,此处采用第二个约定。
对于单位电阻有 $w=1$,此时上述方程组可以写成
\begin{aligned}
L\phi=b
\end{aligned}
其中 $b_x$ 表示流入 $x$ 的电流(流入为正,流出为负)。将电源接在图上任意两点间(不妨设为 $s,tttt$),其含义为向量 $b$ 满足 $b_s=1,b_t=-1$,其余均为 $0$。
再考虑欧姆定律,有
\begin{aligned}
B^\intercal \phi=I
\end{aligned}
其中 $B$ 为图 $G$ 的 $n\times m$ 关联矩阵,形如 $\begin{bmatrix}\cdots&\cdots&\cdots
\cdots& 1& \cdots \ \cdots&\cdots&\cdots \ \cdots& -1& \cdots\\cdots&\cdots&\cdots\end{bmatrix}$,第 $i$ 列表示边 $e_i$ 关联哪两条边,正负表示方向。$m$ 维向量 $I$ 表示每条边上电流的流量。
如果要考虑非单位电阻的矩阵,那么需要引入 $m\times m$ 的对角阵 $W=\text{diag}\set{w_{e_1},w_{e_2}\ldots w_{e_m} }$ 来分别建模每条边的电导率,在需要的时候乘上就行了。
考虑 $L$ 的另一形式有
\begin{aligned}
L=\sum_{e\in E(G)} L_e=\sum_{e\in E(G)} w_e b_e{b_e}^\intercal=BWB^\intercal
\end{aligned}
因此还可以写成
\begin{aligned}
L\phi=BWB^\intercal \phi=BWI=b
\end{aligned}
这也是很直观的,对边上的电流分布做一次图上的按邻居求和,就能得到一个节点上的全局电流分布 $b$。
电路方程的解
定理:
若 $L\phi=b$ 有解当且仅当 $b\perp \textbf1$
”$\Rightarrow$”
注意到 $L$ 实对称,取一组由 $\textbf1$ 扩充而来的正交基 $\Set{v_i}$,则 $\phi=a_1\textbf1 + \sum_{i=2}^n a_i v_i$
此时 $L\phi=L\left(a_1\textbf1+\sum_{i=2}^n a_iv_i\right)=\sum_{i=2}^n a_i\lambda_i v_i$,根据正交基可知 $L\phi\perp b$
直观含义为电阻网络流入的电流要等于流出的电流。
”$\Leftarrow$”
若 $b\perp\textbf1$,那么 $b=\sum_{i=2}^n b_iv_i$
此时取 $\phi=\sum_{i=2}^n \frac{b_i}{\lambda_i}v_i$ 即为一个解。
直观含义为对于一组外部电流的电势解,可以任意整体平移得到同方程的其余解(因为电流只和电势差有关)。在固定某个点电势为 $0$ 的前提下,就能得到唯一解。
上面关于 “$\Leftarrow$” 方向的证明用到了一个构造,实际上可以写成
\begin{aligned}
\phi^*=L^\dagger b
\end{aligned}
其中
\begin{aligned}
\begin{aligned}
L^\dagger&=\sum_{i=2}^n {\lambda_i}^{-1}v_i{v_i}^\intercal
\
b&=\sum_{i=2}^n {\lambda_i} v_i
\end{aligned}
\end{aligned}
这意味着,当 $b$ 是一个合法的电流(满足 $b\perp \textbf1$)时,$L$ 存在伪逆。并且 $L\phi=b$ 的解集为 $\Set{L^\dagger b + k\textbf1\mid k\in \mathbb R}$
电势能和等效电阻
同样只考虑单位电阻。
考虑令 $b$ 流入单位电流,电路网络为单位电阻,那么整个电路的等效电阻就是 $s,t$ 间的电势差,即
\begin{aligned}
R_{\text{eff} }=\phi_s-\phi_t=b^\intercal\phi=b^\intercal L^\dagger b
\end{aligned}
对于电势能同样可以通过等效电阻来算。注意到通的是单位电流,并且电阻为 $R_{\text{eff} }$,因此电势能就是 $R_{\text{eff} }$。
另一种对每条边单独推导的方法如下:
\begin{aligned}
E=\sum_{e\in E(G)} E_e=\sum_{(x,y)\in E(G)} {\left({\phi_x-\phi_y}\right)}^2
\end{aligned}
回忆关于 $L$ 的二次型,有
\begin{aligned}
E=\phi^\intercal L\phi=R_{\text{eff} }
\end{aligned}
并且有结论:对与任意的 $s,t$ 流,其电势能不会比 $R_{\text{eff} }$ 更小。即这样的电势分布会最小化单位流的能量损耗,非常神奇的物理意义。
