关于三维矢量和三维二阶张量的一些运算

使用爱因斯坦求和约定以及 Kronecker delta 记号来推导类似的公式会比较方便.

以下所有的矢量或者张量都是三维的

矢量符号或者张量符号就不打了,大写字母表示二阶张量,小写字母表示矢量,希腊字母表示标量

矢量的点乘、叉乘和并矢

  • 点乘

    ϕ=aibi\phi = a_ib_i

  • 叉乘

    ci=ϵijkajbkc_i = \epsilon_{ijk}a_jb_k

    其中,ϵijk\epsilon_{ijk}为三阶反对称张量.

  • 并矢

    Tij=aibjT_{ij} = a_ib_j

二阶张量和矢量运算

  • 张量和矢量点乘

    bi=Aijajb_i = A_{ij}a_j

  • 矢量和张量点乘

    ci=ajAjic_i = a_jA_{ji}

  • 矢量和张量叉乘

    Tij=ϵiklakAljT_{ij} = \epsilon_{ikl}a_{k}A_{lj}

二阶矢量的特殊运算

  • 点乘(虽然不算什么特殊运算)

    Cij=AikBkjC_{ij} = A_{ik}B_{kj}

  • 双点乘

    ϕ=A:B=AijBji=trace(AB)\phi = A:B = A_{ij}B_{ji} = trace(AB)

  • trace(A)=Aii=Aijδji=A:Itrace(A) = A_{ii} = A_{ij}\delta_{ji} = A:I

  • 矩阵的行列式(可以看成三个矢量加上反对称张量的缩并,然而并没有什么卵用)

det(A)=ϵijkA1iA2jA3k=ϵijkAi1Aj2Ak3det(A) = \epsilon_{ijk}A_{1i}A_{2j}A_{3k} = \epsilon_{ijk}A_{i1}A_{j2}A_{k3}

梯度,散度,旋度,nabla 算子与矢量的并矢

  • \nabla算子

    =xex+yey+zez\nabla = \dfrac{\partial}{\partial x}\vec{e_x} + \dfrac{\partial}{\partial y}\vec{e_y} + \dfrac{\partial}{\partial z} \vec{e_z}

    这是可以看成一个矢量的,也可以写成

    i=i=xi\nabla_i = \partial_i = \dfrac{\partial}{\partial x_i}

  • 矢量的散度

ϕ=a=iai\phi = \nabla\cdot\vec{a} = \partial_i a_i

  • 标量的梯度

    ai=iϕa_i = \partial_i \phi

  • \nabla算子与矢量的并矢其实就矢量的梯度,形成二阶张量

    Tij=a=iajT_{ij} = \nabla\vec{a} = \partial_i a_j

  • 矢量的旋度

    bi=×a=ϵijkjakb_i = \nabla\times\vec{a} = \epsilon_{ijk}\partial_ja_k

  • 并矢的散度

    (ab)=i(aibj)=(iai)bj+ai(ibj)=(a)b+ab\nabla\cdot(\vec{a}\vec{b}) = \partial_i(a_ib_j) = (\partial_ia_i)b_j + a_i(\partial_ib_j) = (\nabla\cdot\vec{a})\vec{b} + \vec{a}\cdot\nabla\vec{b}

  • 并矢的旋度

    ×(ab)=ϵijkj(akbl)=ϵijk(jak)bl+ϵijkak(kbl)=(×a)b+a×(b)\nabla\times(\vec{a}\vec{b}) = \epsilon_{ijk}\partial_j(a_kb_l) = \epsilon_{ijk}(\partial_ja_k)b_l+\epsilon_{ijk}a_k(\partial_kb_l) = (\nabla\times\vec{a})\vec{b} + \vec{a}\times(\nabla\vec{b})

一些公式

  • \nabla算子的二阶作用

2ϕ=()ϕ×(×a)=(a)2a×ϕ=0(×a)=0\begin{aligned} \nabla^2\phi &= (\nabla\cdot\nabla)\phi \\ \nabla\times(\nabla\times\vec{a}) &= \nabla(\nabla\cdot\vec{a}) - \nabla^2\vec{a} \\ \nabla\times\nabla\phi &= 0 \\ \nabla\cdot(\nabla\times\vec{a}) &= 0 \end{aligned}

以其中第二个式子的证明为例

×(×a)=ϵijkj(ϵklmlam)=ϵijkϵklmjlam=(δilδjmδimδjl)jlam=i(jaj)jjai=(a)2a\begin{aligned} \nabla\times(\nabla\times\vec{a}) &= \epsilon_{ijk}\partial_j(\epsilon_{klm}\partial_la_m) \\ &= \epsilon_{ijk}\epsilon_{klm}\partial_j\partial_la_m \\ &= (\delta_{il}\delta_{jm}-\delta_{im}\delta_{jl})\partial_j\partial_la_m \\ &= \partial_i(\partial_ja_j) - \partial_j\partial_ja_i \\ &= \nabla(\nabla\cdot\vec{a})-\nabla^2\vec{a} \end{aligned}

Kronecker delta

要完成以上的推导,你还需要一些关于 delta 函数的一些知识

ϵijkϵlmn=(δilδimδinδjlδjmδjnδklδjmδkn)\epsilon_{ijk}\epsilon^{lmn} =\left( \begin{matrix} \delta_{i}^{l} & \delta_{i}^{m} & \delta_{i}^{n} \\ \delta_{j}^{l} & \delta_{j}^{m} & \delta_{j}^{n} \\ \delta_{k}^{l} & \delta_{j}^{m} & \delta_{k}^{n} \end{matrix}\right)

ϵijkϵimn=δjmδknδjnδkmϵjmnϵimn=2δjiϵijkϵijk=6\begin{aligned} & \epsilon_{ijk}\epsilon^{imn} = \delta_j^m\delta_k^n - \delta_j^n\delta_k^m \\ & \epsilon_{jmn}\epsilon^{imn} = 2\delta_j^i \\ & \epsilon_{ijk}\epsilon^{ijk} = 6 \end{aligned}