梅森增益公式

**梅森增益公式**（，**MGF**）是寻找线性信号流图（SFG）传递函数的方法。该公式是推导出的， 也是用他的名字命名的。MGF是用代数方法标记每个信号，将信号依赖于其他信号的方式写成方程，然后求解多元方程组得出输出信号与输入信号的关系，以求传递函数的方法。MGF提供了由信号流图一步一步获得传递函数的方法。通常，MGF可以通过检查信号流图确定。该方法可以很容易地处理多变量、多回路包括内循环回路的信号流图。MGF经常出现在控制系统和数字滤波器的内容中，因为控制系统和数字滤波器常會用信号流图表示。

## 公式
增益公式如下：

: G = \frac{y_\text{out}}{y_\text{in}} = \frac{ \sum_{k=1}^N  {G_k \Delta _k} }{ \Delta\ }  

: \Delta = 1 - \sum L_i + \sum L_iL_j- \sum L_iL_jL_k + \cdots + (-1)^m \sum \cdots +\cdots 

其中：
*\Delta = 图的特征式
*y_{\mathrm{in}} = 输入节点变量
*y_{\mathrm{out}} = 输出节点变量
**G* = y_{\mathrm{in}} 和 y_{\mathrm{out}} 间的总增益
**N* = y_{\mathrm{in}} 与 y_{\mathrm{out}} 间的前向通道的总数
**G**k* = y_{\mathrm{in}} 与 y_{\mathrm{out}} 间的第 *k* 个前向通道的路径增益
**L**i* = 系统中每个闭环回路增益
**L**i**L**j* = 任意2个互不接触回路（没有公共节点）的回路增益的乘积
**L**i**L**j**L**k* = 任何三个互不接触回路的回路增益的乘积
*\Delta_k =  第 *k* 个前向通道的余子式，即将接触第 *k* 个前向通道的回路增益置为0后，特征式Δ所剩下的部分。

### 定义
*通道：一组沿标识方向的连接输入输出的连续分支
*前向通道：从一个输入节点到一个输出节点的通道，每个节点接触不超过一次。
*回路：起始和终止在相同节点，并且没有节点接触两次的通道。
*路径增益：该通道的所有分支的增益之积。
*回路增益：回路中所有分支的增益之积。

### 步骤
要使用这种方法，
# 列出前向通道和它们的增益，将他们记为 *G**k*。
# 列出所有回路和它们的增益，将他们记为 *L**i*（对第 *i* 个回路）。列出所有互不接触的回路和他们的增益（*L**i**L**j*）。列出所有三个互不接触的回路（*L**i**L**j**L**k*），然后四个，以至更多，直到找不出更多的互不接触的组合。
# 计算特征式 Δ 和余子式 Δ*k*。
# 运用公式。

## 例子

### 二端口电路

需要求从 **V<sub>in</sub>** 到 **V<sub>2</sub>** 的传递函数。

只有一个前向通路：
:* **V<sub>in</sub>** 到 **V<sub>1</sub>** 到 **I<sub>2</sub>**  到  **V<sub>2</sub>** 增益为 G_1 = -y_{21} R_L \, 

有三个回路：
:* **V<sub>1</sub>**  到 **I<sub>1</sub>** 到 **V<sub>1</sub>** 增益为  L_1 = -R_{in} y_{11} \, 
:* **V<sub>2</sub>**  到 **I<sub>2</sub>** 到 **V<sub>2</sub>** 增益为  L_2 = -R_L y_{22} \, 
:* **V<sub>1</sub>**  到 **I<sub>2</sub>** 到 **V<sub>2</sub>**  到 **I<sub>1</sub>**  到 **V<sub>1</sub>** 增益为  L_3 = y_{21} R_L y_{12} R_{in} \, 

: \Delta = 1 - ( L_1 + L_2 + L_3 ) + ( L_1 L_2 ) \,   注意：**L<sub>1</sub>** 和 **L<sub>2</sub>** 相互不接触，而 **L<sub>3</sub>** 接触其他两个回路。

: \Delta_1 = 1 \,   注意：前向通路接触了所有回路，所以剩下的就是 **1**。

: G = \frac { G_1 \Delta_1 } { \Delta }   =  \frac { -y_{21} R_L } {1 + R_{in}y_{11} + R_L y_{22} - y_{21} R_L y_{12} R_{in} + R_{in}y_{11} R_L y_{22} }    \, 

### 数字IIR双二阶滤波器

经常将数字滤波器化成信号流图。

: 有两个回路
:* L_1 = -a_1 Z^{-1} \, 
:* L_2 = -a_2 Z^{-2} \, 

: \Delta = 1 - ( L_1 + L_2 ) \,  注意，这两个回路接触，所以没有他们的乘积项。

:有三个前向通道
:* G_0 = b_0  \, 
:* G_1 = b_1 Z^{-1} \, 
:* G_2 = b_2 Z^{-2} \, 

: 所有的前向通道都接触，所以  \Delta_0 = \Delta_1 = \Delta_2 = 1  \, 

:  G = \frac { G_0 \Delta_0 +G_1 \Delta_1  + G_2 \Delta_2  } {\Delta} \, 

:  G = \frac { b_0 + b_1 Z^{-1} + b_2 Z^{-2} } {1 +a_1 Z^{-1} + a_2 Z^{-2} } \, 

### 伺服驅動器

此信號流中有六個迴路，分別是：
:* L_0 = -  \frac {\beta} {sM} \, 

:* L_1 = \frac{-( R_M + R_S)} {sL_M} \, 

:* L_2 = \, \frac {-G_M K_M} {s^2 L_M M} 

:* L_3 = \frac {-K_C R_S} {sL_M} \, 

:* L_4 = \frac {-K_V K_C K_M G_T} {s^2 L_M M} \, 

:* L_5 = \frac {-K_P K_V K_C K_M } {s^3 L_M M} \, 

: \Delta = 1 - (L_0+L_1+L_2+L_3+L_4+L_5) + (L_0 L_1 + L_0 L_3)\, 

只有一个前向通路：

:*g_0 = \frac {K_P K_V K_C K_M } {s^3 L_M M} \,

: 所有的前向通道都接触，所以  \Delta_0 = 1 

整個系統的增益是  \frac {\theta_L} {\theta_C} = \frac {g_0 \Delta_0} {\Delta} \,   

## 等效矩陣-{zh-cn:形式;zh-tw:型式}-
梅森增益公式可以用簡單的矩陣公式表示。假設\mathbf{T}是信號流圖的轉換矩陣，其中t_{nm} = \left[\mathbf{T}\right]_{nm}是由節點*m*到'n*所有分支transmittance的和，則節點*m*到'n*的增益為u_{nm} = \left[\mathbf{U}\right]_{nm}，其中

:  \mathbf{U} = \left ( \mathbf{I} - \mathbf{T} \right ) ^ {-1} ,

而\mathbf{I}為單位矩陣。

梅森增益公式也可以用在推導有巢狀網路（其內迴路在外迴路以內）的離散網路z域传递函数。若是離散網路可以以信號流圖表示，則梅森增益公式可以計算網路的z域传递函数H(z)。

## 複雜度及計算應用
由於有向圖的路徑數會隨節點會以階乘的形式增加，因此梅森增益公式的複雜度會以階乘的形式往上成長。先考慮完整的有 n個頂點的有向圖，每二個頂點都有一個邊，從節點y_{in}到節點y_{out}的路徑會是其他(n-2)!個節點的(n-2)!個排列，因此在一般的情形下，高斯消去法會比此方式有效率很多。

不過梅森增益公式將互相連接的系統的轉換函數用代數及組合的方處理，允許一些代数系统理论中較廣義的定義及計算方式。高斯消去法中會有許多的倒數計算，而梅森增益公式將其整理為單一的逆元素，其通式為
::\frac{p}{1-q},

如上所述，q是迴路乘積的總和，每一個都是环论中的理想。上式的分數形成有理函數的子環 R(1+\langle L_i\rangle)^{-1}。上述的觀察可以延伸到非交換性的情形，不過梅森增益公式會被里格尔公式（Riegle's rule）所取代。

## 参见
*信号流图

## 注释

## 参考文献
*
*