2026年5月2日 星期六

如何用重向量(dyadic)協助梯度運算

重向量(dyadic)中國翻譯叫做並矢量,外觀看起來是並列的向量,本身並不代表數值或是代數對象。 它其實是某種梯度運算的中間結果。就像函數式程式設計一樣,你可以 partial apply 一個函數,也就是 像例如$\,\text{f(a,b)}$,我們只對它應用了一個參數得到$\,\text{f(a)}$,這在函數式程式設計是有意義的,它代表另一 個函數$\,\text{g}$,可以繼續應用剩下的那一個參數,使得$\,\text{g(b)=f(a,b)}$。並列的向量$\,\textbf{a}\textbf{b}$ 可以視為一個運算,它還需要另外一個向量對它進行內積才能得到最後的結果:$\,\textbf{u}\cdot\textbf{a}\textbf{b} =(\textbf{u}\cdot\textbf{a})\textbf{b}\,$或是$\,\textbf{a}\textbf{b}\cdot\textbf{u} =\textbf{a}(\textbf{b}\cdot\textbf{u})$。回顧一下梯度運算$$\nabla=\textbf{i}\frac{\partial}{\partial{x}} +\textbf{j}\frac{\partial}{\partial{y}}+\textbf{k}\frac{\partial}{\partial{z}}$$這是用在純量上的, 但是如果像下列的運算$\,\nabla(\textbf{f}\cdot\textbf{f})\,$,可以先寫出中間結果$\,2\nabla\textbf{f}\cdot\textbf{f}\,$ 其中$\,\nabla\textbf{f}=\textbf{i}\textbf{f}_x+\textbf{j}\textbf{f}_y+\textbf{k}\textbf{f}_z\,$是一個重向量。

梯度運算有另一種表示方法。令$\,\textbf{r}=(x, y, z)$,則 $$\frac{\partial{f}}{\partial\textbf{r}}=\textbf{i}f_x+\textbf{j}f_y+\textbf{k}f_z$$ 回顧一下純量三重積 $$\textbf{a}\times\textbf{b}\cdot\textbf{c}=\begin{vmatrix} a_1 & a_2 & a_3 \\ b_1 & b_2 & b_3 \\ c_1 & c_2 & c_3 \end{vmatrix}$$ 根據行列式定義可以得到 $$\textbf{a}\times\textbf{b}\cdot\textbf{c}=\textbf{b}\times\textbf{c}\cdot\textbf{a}= \textbf{c}\times\textbf{a}\cdot\textbf{b}$$ 假如$\,\textbf{f}=\textbf{r}$,可以得到 $$\frac{\partial\textbf{r}}{\partial\textbf{r}}=\textbf{i}\textbf{i}+\textbf{j}\textbf{j}+\textbf{k}\textbf{k}$$ 令$\,\textbf{I}=\textbf{i}\textbf{i}+\textbf{j}\textbf{j}+\textbf{k}\textbf{k}$,這是一個很有趣的重向量,因為 $\mathbf{u}\cdot\mathbf{I}=\mathbf{u}=\mathbf{I}\cdot\mathbf{u}$,而
$\partial\mathbf{r}/\partial\mathbf{r}=\mathbf{I}\,$也很直觀。

作為範例,接下來計算$\,(\partial/\partial\mathbf{x^\prime})(\textbf{ω}\times\mathbf{x}^\prime)^2$ ,這是在用拉格朗日力學導出旋轉坐標系當中的運動方程會遇到的。 $$\begin{aligned} \frac{\partial}{\partial\mathbf{x}^\prime}(\textbf{ω}\times\mathbf{x}^\prime)^2 &= 2(\textbf{ω}\times\frac{\partial{\mathbf{x}}^\prime}{\partial{\mathbf{x}}^\prime}) \cdot(\textbf{ω}\times\mathbf{x}^\prime) \\ &= 2(\textbf{ω}\times\mathbf{I}) \cdot(\textbf{ω}\times\mathbf{x}^\prime) \\ &=2(\textbf{ω}\times\mathbf{x}^\prime)\times\mathbf{x}^\prime\cdot\mathbf{I} \\ &=2(\textbf{ω}\times\mathbf{x}^\prime)\times\mathbf{x}^\prime \end{aligned}$$其中第二行到第三行使用了純量三重積的換序。

沒有留言: