张量基础 | 概念・指标・坐标变换・张量代数运算

注:本文为 “张量基础” 相关合辑。
图片清晰度受引文原图所限。
略作重排,如有内容异常,请看原文。


张量基础学习(一)概念、求和指标、符号

西瓜皮装猕猴桃 于 2020-07-04 21:14:31

本文系统阐述张量基础定义、阶数与秩的判定规则、张量与线性代数体系的关联,同时说明张量在机器学习、深度学习、量子计算领域的应用场景,完整给出爱因斯坦求和约定执行规则,以及克罗内克符号 δ i j \delta_{ij} δij、Eddington 置换符号 e r s t e_{rst} erst 的定义与代数性质。

本文为张量专题系列开篇内容,内容推导依托线性代数前置知识完成推导,论述深度低于量子计算理论体系。

一、张量基本概念

张量理论属于纯数学分支,在连续介质力学体系中具备广泛应用场景。该术语起源于弹性力学领域,初始用于表征弹性介质内部各空间点的应力分布状态,后续逐步演变为力学、物理学领域通用性较强的数学分析工具。张量体系的适用价值体现在,其全部数学表达形式具备坐标变换不变性,可保证物理定律表述不依赖参考坐标系的选取规则。

张量可视为矢量概念的外延拓展,矢量对应一阶张量。严格定义层面,张量可等价表述为矢量、标量与其他张量之间建立线性映射关系的多重线性函数。

张量分解与张量分析方法在机器学习、深度学习、量子计算及量子机器学习理论框架中均存在大量推导应用,为后续理论推演的必备基础工具。

张量在不同数学体系下存在四类等价定义:

  1. 张量可抽象为高维多维数组;
  2. 张量属于几何不变量,坐标基底变换不会改变其几何实体本身;
  3. 张量可由矢量与余矢量通过张量积运算构造生成;
  4. 张量为多重线性映射,对应映射表达式见下图。

在这里插入图片描述

张量为向量、矩阵的维度自然延拓:向量定义为一阶张量,矩阵定义为二阶张量,矩阵沿维度堆叠形成三维阵列结构,该结构定义为三阶张量。灰度图像在计算机存储格式中对应二维矩阵,属于二阶张量;RGB 三通道彩色图像存储为三维阵列,属于三阶张量。三阶张量可继续沿维度堆叠,构造任意更高阶数的张量结构。

在这里插入图片描述

在这里插入图片描述

配套辅助理解视频链接:
https://player.bilibili.com/player.html?aid=541232550

1.1 张量阶数与秩的界定规则

以多维数组具象化理解张量维度结构,对应示意图如下:

在这里插入图片描述

  • 阶数(order / ways / modes):表征张成该张量线性空间的向量空间数量;
  • 秩(ra(n^k)):表征张量阵列展开后的深度维度数量。

对应直观图示:
在这里插入图片描述

二、爱因斯坦求和约定

该约定为张量指标运算的标准简写规则,在线性代数矩阵运算中被高频使用。

2.1 单重求和简写规则

多项式展开形式:
S = a 1 x 1 + a 2 x 2 + ⋯ + a n x n S = a_{1}x_{1} + a_{2}x_{2} + \dots + a_{n}x_{n} S=a1x1+a2x2++anxn
标准求和符号写法:
S = ∑ i = 1 n a i x i = ∑ j = 1 n a j x j S = \sum_{i=1}^{n} a_{i} x_{i} = \sum_{j=1}^{n} a_{j} x_{j} S=i=1naixi=j=1najxj

爱因斯坦求和约定简写形式:
S = a i x i = a j x j S = a_{i} x_{i} = a_{j} x_{j} S=aixi=ajxj
约定约束:求和所使用的下标字母不影响表达式最终结果;同一单项内重复下标仅允许成对出现一次。

2.2 多重嵌套求和简写规则

三维指标双重求和完整展开式:
∑ i = 1 3 ∑ j = 1 3 A i j x i y j = A 11 x 1 y 1 + A 12 x 1 y 2 + A 13 x 1 y 3 + A 21 x 2 y 1 + A 22 x 2 y 2 + A 23 x 2 y 3 + A 31 x 3 y 1 + A 32 x 3 y 2 + A 33 x 3 y 3 \begin{aligned} \sum_{i=1}^{3}\sum_{j=1}^{3} A_{ij} x_{i} y_{j} =& A_{11}x_{1}y_{1} + A_{12}x_{1}y_{2} + A_{13}x_{1}y_{3} \\ &+ A_{21}x_{2}y_{1} + A_{22}x_{2}y_{2} + A_{23}x_{2}y_{3} \\ &+ A_{31}x_{3}y_{1} + A_{32}x_{3}y_{2} + A_{33}x_{3}y_{3} \end{aligned} i=13j=13Aijxiyj=A11x1y1+A12x1y2+A13x1y3+A21x2y1+A22x2y2+A23x2y3+A31x3y1+A32x3y2+A33x3y3

采用求和约定简写为:
A i j x i y j A_{ij} x_{i} y_{j} Aijxiyj

三阶张量三重求和形式:
A i j k x i y j z k A_{ijk} x_{i} y_{j} z_{k} Aijkxiyjzk
该表达式完整展开后共计 3 3 = 27 3^3 = 27 33=27 个分项。

2.3 自由指标与哑指标划分

以三元线性方程组作为实例进行指标分类说明:
{ A 11 x 1 + A 12 x 2 + A 13 x 3 = b 1 A 21 x 1 + A 22 x 2 + A 23 x 3 = b 2 A 31 x 1 + A 32 x 2 + A 33 x 3 = b 3 \begin{cases} A_{11}x_{1} + A_{12}x_{2} + A_{13}x_{3} = b_{1} \\ A_{21}x_{1} + A_{22}x_{2} + A_{23}x_{3} = b_{2} \\ A_{31}x_{1} + A_{32}x_{2} + A_{33}x_{3} = b_{3} \end{cases} A11x1+A12x2+A13x3=b1A21x1+A22x2+A23x3=b2A31x1+A32x2+A33x3=b3

指标分类示意图:
在这里插入图片描述

约定执行细则
  1. 自由指标可在同一表达式内多次出现,禁止在同一单项内成对重复;单项内成对重复的下标定义为哑指标;
  2. 哑指标仅用于遍历全量取值完成累加运算,可在成对前提下替换为任意同取值范围字母,矢量点积示例:
    a ⋅ b = a j b j = a m b m \mathbf{a} \cdot \mathbf{b} = a_{j} b_{j} = a_{m} b_{m} ab=ajbj=ambm
  3. 通用取值约定:未标注取值区间时,拉丁字母下标 i ,   j ,   k i,\,j,\,k i,j,k 默认为三维指标,取值集合 { 1 ,   2 ,   3 } \{1,\,2,\,3\} {1,2,3};希腊字母下标 α ,   β ,   γ \alpha,\,\beta,\,\gamma α,β,γ 默认为二维指标,取值集合 { 1 ,   2 } \{1,\,2\} {1,2}
    在这里插入图片描述
  4. 联立方程组书写规则:同步参与取值的自由指标需保持符号一致,相互独立取值的自由指标需规避符号重名;
  5. 自由指标替换规则:表达式或方程内同名自由指标需整体批量替换,不可局部修改。

2.4 约定量化说明

哑指标可将多项式累加表达式压缩为单项书写形式,自由指标可将分量方程组压缩为单一指标方程。
若指标形式方程包含 k k k 个相互独立的自由指标,指标取值范围为 1 ∼ n 1 \sim n 1n,则该方程等价于 n k n^k nk 条独立分量方程;若单项内包含 m m m 对取值范围 1 ∼ n 1 \sim n 1n 的哑指标,则该单项展开后包含 n m n^m nm 个累加分项。

该指标符号体系可直接拓展至微分算子与高阶导数表达式。

三、克罗内克符号 δ i j \mathbf{\delta_{ij}} δij 与 Eddington 置换符号 e r s t \mathbf{e_{rst}} erst

3.1 克罗内克符号 δ i j \delta_{ij} δij

笛卡尔直角坐标系下,三组两两正交单位基矢量构成标准正交基底,基底示意图如下:

在这里插入图片描述

3.1.1 定义式

通过基矢量内积完成定义:
δ i j = e i ⋅ e j = { 1 , i = j 0 , i ≠ j \delta_{ij} = \mathbf{e}_i \cdot \mathbf{e}_j =\begin{cases} 1, & i = j \\ 0, & i \neq j \end{cases} δij=eiej={1,0,i=ji=j

3.1.2 代数性质
  1. 对称性
    δ i j = δ j i \delta_{ij} = \delta_{ji} δij=δji

  2. 矩阵等价形式
    δ i j \delta_{ij} δij 全部分量构成三阶单位矩阵:
    [ δ 11 δ 12 δ 13 δ 21 δ 22 δ 23 δ 31 δ 32 δ 33 ] = [ 1 0 0 0 1 0 0 0 1 ] \begin{bmatrix} \delta_{11} & \delta_{12} & \delta_{13} \\ \delta_{21} & \delta_{22} & \delta_{23} \\ \delta_{31} & \delta_{32} & \delta_{33} \end{bmatrix} = \begin{bmatrix} 1 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 1 \end{bmatrix} δ11δ21δ31δ12δ22δ32δ13δ23δ33 = 100010001

  3. 指标替换运算规则
    δ i j \delta_{ij} δij 其中一个下标与同项其他张量下标重复时,可完成下标置换并消去 δ i j \delta_{ij} δij 符号:
    δ i j a j k = a i k , δ i j a i k = a j k δ i j a k j = a k i , δ i j a k i = a k j δ i j δ j k = δ i k , δ i j δ j k δ k l = δ i l \begin{aligned} \delta_{ij} a_{jk} &= a_{ik},\quad & \delta_{ij} a_{ik} &= a_{jk} \\ \delta_{ij} a_{kj} &= a_{ki},\quad & \delta_{ij} a_{ki} &= a_{kj} \\ \delta_{ij} \delta_{jk} &= \delta_{ik},\quad & \delta_{ij} \delta_{jk} \delta_{kl} &= \delta_{il} \end{aligned} δijajkδijakjδijδjk=aik,=aki,=δik,δijaikδijakiδijδjkδkl=ajk=akj=δil

3.2 Eddington 置换符号 e r s t e_{rst} erst

该符号又称排列符号、置换符号,仅适用于三维下标 r , s , t ∈ { 1 , 2 , 3 } r,s,t \in \{1,2,3\} r,s,t{1,2,3}

3.2.1 分段定义

e r s t = { 1 , r , s , t  为自然正序轮换排列 − 1 , r , s , t  为逆序轮换排列 0 , r , s , t  存在任意两个下标取值相等 e_{rst} =\begin{cases} 1, & r,s,t \text{ 为自然正序轮换排列} \\ -1, & r,s,t \text{ 为逆序轮换排列} \\ 0, & r,s,t \text{ 存在任意两个下标取值相等} \end{cases} erst= 1,1,0,r,s,t 为自然正序轮换排列r,s,t 为逆序轮换排列r,s,t 存在任意两个下标取值相等

多项式等价表达式:
e r s t = 1 2 ( r − s ) ( s − t ) ( t − r ) e_{rst} = \frac{1}{2}(r-s)(s-t)(t-r) erst=21(rs)(st)(tr)

3.2.2 排列判定规则
  • 正序排列: ( 1 , 2 , 3 ) (1,2,3) (1,2,3) 及其循环轮换 ( 2 , 3 , 1 ) (2,3,1) (2,3,1) ( 3 , 1 , 2 ) (3,1,2) (3,1,2),符号取值为 1 1 1
  • 逆序排列: ( 3 , 2 , 1 ) (3,2,1) (3,2,1) 及其循环轮换 ( 2 , 1 , 3 ) (2,1,3) (2,1,3) ( 1 , 3 , 2 ) (1,3,2) (1,3,2),符号取值为 − 1 -1 1

配套演示视频链接:
https://player.bilibili.com/player.html

3.2.3 基础代数性质
  1. 全集分量数量统计:三维下标组合共计 27 27 27 组,取值为 1 1 1 − 1 -1 1 的组合各占 3 3 3 组,剩余 21 21 21 组分量取值为 0 0 0
  2. 双指标反对称性:任意两个下标交换,符号整体取反
    e r s t = − e s r t = − e t r s = − e t s r e_{rst} = -e_{srt} = -e_{trs} = -e_{tsr} erst=esrt=etrs=etsr
  3. 三指标循环不变性:下标连续两次轮换,符号数值保持不变
    e r s t = e s t r = e t r s e_{rst} = e_{str} = e_{trs} erst=estr=etrs

矢量叉积可通过置换符号完成指标形式表达,对应推导示意图:

在这里插入图片描述


张量基础学习(二):坐标变换、分量转化规律与张量方程

西瓜皮装猕猴桃 于 2020-07-07 11:14:37

本文对张量体系中坐标变换的数学表达、张量分量在坐标更替下的变换法则,以及张量方程的几何不变属性展开推导与论述,通过几何实例说明张量分量在不同坐标系下的改写形式,同时阐释张量方程对客观物理规律的等价描述能力。

一、坐标与坐标转换

1.1 笛卡尔坐标系下矢量表达

笛卡尔坐标系几何示意图:
在这里插入图片描述

对应矢量基础表达式:
在这里插入图片描述

上述形式为初等几何范畴内的矢量标准表达。在非笛卡尔曲线坐标系中,矢径可写作标量坐标的映射函数:
r = r ( x 1 ,   x 2 ,   x 3 ) \mathbf{r} = \mathbf{r}\left(x_1,\ x_2,\ x_3\right) r=r(x1, x2, x3)
当坐标系发生整体变换时,矢径在新坐标系下的表达形式如下:
在这里插入图片描述

1.2 基矢量与坐标参考架定义

(1)基矢量

以矢径对曲线坐标的偏导数定义曲线坐标系下协变基矢量 g i \mathbf{g}_i gi,下标取值范围 i = 1 ,   2 ,   3 i = 1,\ 2,\ 3 i=1, 2, 3
g i = ∂ r ∂ x i ( i = 1 , 2 , 3 ) \mathbf{g}_{i} = \frac{\partial \mathbf{r}}{\partial x_i} \qquad (i = 1,2,3) gi=xir(i=1,2,3)

(2)坐标参考架

空间任意几何点处的三组基矢量共同构成该点的坐标参考架。具备方向属性的物理量均可在作用点对应的参考架下完成分解。
对于笛卡尔直角坐标系,基矢量退化为单位正交基:
{ g 1 = ∂ r ∂ x 1 = e 1 g 2 = ∂ r ∂ x 2 = e 2 g 3 = ∂ r ∂ x 3 = e 3 \begin{cases} \mathbf{g}_{1}=\displaystyle\frac{\partial \mathbf{r}}{\partial x_{1}}=\mathbf{e}_{1} \\[4pt] \mathbf{g}_{2}=\displaystyle\frac{\partial \mathbf{r}}{\partial x_{2}}=\mathbf{e}_{2} \\[4pt] \mathbf{g}_{3}=\displaystyle\frac{\partial \mathbf{r}}{\partial x_{3}}=\mathbf{e}_{3} \end{cases} g1=x1r=e1g2=x2r=e2g3=x3r=e3

坐标参考架几何示意:
在这里插入图片描述

1.3 一般曲线坐标系的几何特征

欧几里得空间内任意曲线坐标系具备四项几何特征:

  1. 坐标线相互之间不一定满足正交约束;
  2. 不同空间点位的坐标线不再保持平行关系;
  3. 基矢量的模长与空间指向随空间点位发生变化;
  4. 各点位对应的坐标参考架不再为正交归一化基底。

1.4 笛卡尔坐标系之间的刚性坐标变换

两组直角坐标系几何关系示意图:
在这里插入图片描述

新旧两组笛卡尔单位正交基均满足克罗内克δ正交归一条件:
e i ′ ⋅ e j ′ = δ i j , e i ⋅ e j = δ i j \mathbf{e}_{i}' \cdot \mathbf{e}_{j}' = \delta_{ij},\quad \mathbf{e}_{i} \cdot \mathbf{e}_{j} = \delta_{ij} eiej=δij,eiej=δij

1.4.1 基矢量变换系数

引入坐标变换系数 β i j \beta_{ij} βij,将新坐标系基矢量沿原坐标系基底展开:
e i ′ = β i 1 e 1 + β i 2 e 2 + β i 3 e 3 = ∑ j = 1 3 β i j e j \mathbf{e}_{i}' = \beta_{i1}\mathbf{e}_{1} + \beta_{i2}\mathbf{e}_{2} + \beta_{i3}\mathbf{e}_{3} = \sum_{j=1}^{3} \beta_{ij} \mathbf{e}_{j} ei=βi1e1+βi2e2+βi3e3=j=13βijej

变换系数由两组基矢量夹角余弦与点积等价定义:
β i j = cos ⁡ ( e i ′ , e j ) = e i ′ ⋅ e j = e j ⋅ e i ′ \beta_{ij} = \cos\left(\mathbf{e}_{i}',\mathbf{e}_{j}\right) = \mathbf{e}_{i}' \cdot \mathbf{e}_{j} = \mathbf{e}_{j} \cdot \mathbf{e}_{i}' βij=cos(ei,ej)=eiej=ejei

反向完成原坐标系基矢量向新坐标系基底的分解:
e j = β 1 ′ j e 1 ′ + β 2 ′ j e 2 ′ + β 3 ′ j e 3 ′ = β i ′ j e i ′ \mathbf{e}_{j} = \beta_{1'j}\mathbf{e}_{1}' + \beta_{2'j}\mathbf{e}_{2}' + \beta_{3'j}\mathbf{e}_{3}' = \beta_{i'j} \mathbf{e}_{i}' ej=β1je1+β2je2+β3je3=βijei

1.4.2 矢量坐标平移加旋转变换

设新坐标系原点相对原坐标系原点的位置矢量为 r 0 ′ \mathbf{r}_{0}' r0,空间同一点在两套坐标系下的矢径满足矢量三角形叠加关系:
r ′ = r 0 ′ + r \mathbf{r}' = \mathbf{r}_{0}' + \mathbf{r} r=r0+r

三套矢径在对应基底上的分量分解形式:
r ′ = x i ′ e i ′ , r = x j e j , r 0 ′ = ( x i ′ ) 0 e i ′ \mathbf{r}' = x_{i}' \mathbf{e}_{i}',\quad \mathbf{r} = x_{j} \mathbf{e}_{j},\quad \mathbf{r}_{0}' = \left(x_{i}'\right)_0 \mathbf{e}_{i}' r=xiei,r=xjej,r0=(xi)0ei

对矢量等式两端同时左点乘新坐标系基矢量 e i ′ \mathbf{e}_{i}' ei 完成投影求解:

  • 等式左侧投影:
    r ′ ⋅ e i ′ = x k ′ e k ′ ⋅ e i ′ = x k ′ δ k i = x i ′ \mathbf{r}' \cdot \mathbf{e}_{i}' = x_{k}' \mathbf{e}_{k}' \cdot \mathbf{e}_{i}' = x_{k}' \delta_{ki} = x_{i}' rei=xkekei=xkδki=xi

  • 等式右侧投影:
    ( r + r 0 ′ ) ⋅ e i ′ = x j e j ⋅ e i ′ + ( x k ′ ) 0 e k ′ ⋅ e i ′ = x j β i j + ( x i ′ ) 0 \left(\mathbf{r} + \mathbf{r}_{0}'\right) \cdot \mathbf{e}_{i}' = x_{j} \mathbf{e}_{j} \cdot \mathbf{e}_{i}' + \left(x_{k}'\right)_0 \mathbf{e}_{k}' \cdot \mathbf{e}_{i}' = x_{j} \beta_{ij} + \left(x_{i}'\right)_0 (r+r0)ei=xjejei+(xk)0ekei=xjβij+(xi)0

坐标投影几何示意:
在这里插入图片描述

联立可得任意矢量在平移旋转坐标系下的坐标换算表达式。

1.4.3 原点重合时的矩阵变换形式

当坐标原点保持不变,仅发生纯旋转变换,借助爱因斯坦求和约定可将坐标变换写为矩阵列向量乘法形式:
{ x 1 ′ x 2 ′ x 3 ′ } = [ β 1 ′ 1 β 1 ′ 2 β 1 ′ 3 β 2 ′ 1 β 2 ′ 2 β 2 ′ 3 β 3 ′ 1 β 3 ′ 2 β 3 ′ 3 ] { x 1 x 2 x 3 } \begin{Bmatrix} x_{1}' \\ x_{2}' \\ x_{3}' \end{Bmatrix} =\begin{bmatrix} \beta_{1'1} & \beta_{1'2} & \beta_{1'3} \\ \beta_{2'1} & \beta_{2'2} & \beta_{2'3} \\ \beta_{3'1} & \beta_{3'2} & \beta_{3'3} \end{bmatrix} \begin{Bmatrix} x_{1} \\ x_{2} \\ x_{3} \end{Bmatrix} x1x2x3 = β11β21β31β12β22β32β13β23β33 x1x2x3
(简写为紧凑矩阵记号:)
{ x ′ } = [ β ] { x } \left\{x'\right\} = \left[\beta\right] \left\{x\right\} {x}=[β]{x}

逆变换通过变换矩阵转置实现:
{ x 1 x 2 x 3 } = [ β 1 ′ 1 β 2 ′ 1 β 3 ′ 1 β 1 ′ 2 β 2 ′ 2 β 3 ′ 2 β 1 ′ 3 β 2 ′ 3 β 3 ′ 3 ] { x 1 ′ x 2 ′ x 3 ′ } \begin{Bmatrix} x_{1} \\ x_{2} \\ x_{3} \end{Bmatrix} =\begin{bmatrix} \beta_{1'1} & \beta_{2'1} & \beta_{3'1} \\ \beta_{1'2} & \beta_{2'2} & \beta_{3'2} \\ \beta_{1'3} & \beta_{2'3} & \beta_{3'3} \end{bmatrix} \begin{Bmatrix} x_{1}' \\ x_{2}' \\ x_{3}' \end{Bmatrix} x1x2x3 = β11β12β13β21β22β23β31β32β33 x1x2x3
(简写形式:)
{ x } = [ β ] T { x ′ } \left\{x\right\} = \left[\beta\right]^{\mathrm{T}} \left\{x'\right\} {x}=[β]T{x}

1.5 广义坐标正变换与逆变换的微分形式

三维欧氏空间内取两组任意坐标系,记点 P P P 在新坐标系坐标为 x i ′ x_i' xi、原坐标系坐标为 x j x_j xj,映射方程组
x i ′ = x i ′ ( x j ) ( i , j = 1 , 2 , 3 ) x_{i}' = x_{i}'\left(x_j\right) \quad (i,j=1,2,3) xi=xi(xj)(i,j=1,2,3)
定义为自原坐标系指向新坐标系的坐标正变换;反向映射
x j = x j ( x i ′ ) ( i , j = 1 , 2 , 3 ) x_{j} = x_{j}\left(x_{i}'\right) \quad (i,j=1,2,3) xj=xj(xi)(i,j=1,2,3)
定义为坐标逆变换。

对正变换表达式做全微分运算:
d x i ′ = ∂ x i ′ ∂ x j d x j \mathrm{d} x_{i}' = \frac{\partial x_{i}'}{\partial x_{j}} \mathrm{d} x_{j} dxi=xjxidxj
式中偏导数构成的方阵对应坐标变换雅克比矩阵,其行列式为雅克比行列式:
在这里插入图片描述

逆变换微分可通过雅克比矩阵逆矩阵完成 d x j \mathrm{d}x_j dxj d x i ′ \mathrm{d}x_i' dxi 的唯一映射。


二、张量分量转换规律与张量方程

2.1 张量分量坐标变换法则

张量本身作为几何不变量,其数学定义不随观测坐标系的人为选取发生改变;张量在指定参考架下的分量取值依赖坐标系选取,坐标更替过程中分量需服从固定变换规则以保证张量整体几何不变性。该性质可类比矢量正交分解分量随坐标系的改写逻辑。

以三维空间二阶张量为例,其在基底上的并矢展开形式:
在这里插入图片描述

式中 T i j T_{ij} Tij 为二阶张量分量, e i e j \mathbf{e}_i\mathbf{e}_j eiej 为基底并矢。结合前文坐标变换偏导系数,可得张量分量完整变换公式:
在这里插入图片描述

张量阶数与分量总数判定规则

指标记号 T i j k ⋯ T_{ijk\cdots} Tijk 内自由指标的计数等于张量阶数 K K K;单个指标可取数值的数量等于张量定义空间的维数 n n n。对所有指标做全组合遍历, n n n K K K 阶张量的独立分量总数量为 n K n^K nK

2.2 张量方程的坐标不变性

张量方程由若干张量项通过等号联结构成,初等数学范畴的标量等式、经典力学范畴的矢量等式、线性代数范畴的矩阵等式均属于张量方程子集。
张量方程具备坐标无关属性:方程成立与否不受坐标系选取影响,因此可用于对客观物理过程的固有定量规律进行普适性数学描述。

张量方程不变性说明示意图:
在这里插入图片描述

至此完成本次张量基础内容梳理。


张量基础学习(三):张量代数运算(上)

西瓜皮装猕猴桃 于 2020-07-10 14:59:55 发布

经过前面几期博客的学习,我们初步认识了张量的基本概念、重要的符号与指标、坐标变换规律以及张量分量的变换规律。接下来,将继续学习张量的各种运算法则。

一、张量代数基础

张量具有多个维度与层次。为便于入门理解,本节主要以一阶张量(向量)与二阶张量为例进行说明,相关运算法则可推广至高阶张量。

(1)和差、数乘与相等关系

张量满足以下基本代数运算规则:

1) 相等关系

若两个张量相等,例如 T = T i j e i e j \mathbf{T} = T_{ij} \mathbf{e}_i \mathbf{e}_j T=Tijeiej S = S i j e i e j \mathbf{S} = S_{ij} \mathbf{e}_i \mathbf{e}_j S=Sijeiej 相等,则其对应分量满足:

T i j = S i j T_{ij} = S_{ij} Tij=Sij

2) 和差运算

两个张量相加减,即对应分量相加减。新张量 Z \mathbf{Z} Z 的分量为:

Z i j = T i j ± S i j Z_{ij} = T_{ij} \pm S_{ij} Zij=Tij±Sij

3) 数乘运算

张量 A \mathbf{A} A 与标量 λ \lambda λ 相乘后,所得新张量的阶数不变,各分量均乘以该标量:

( λ A ) i j = λ A i j (\lambda \mathbf{A})_{ij} = \lambda A_{ij} (λA)ij=λAij

4) 向量的数量积(点积)

向量间的数量积运算(点乘)在高中物理与高等数学中已有介绍,此处不再赘述。

(2)极向量与轴向量

三维欧几里得空间中的向量定义为具有特定大小(标量值)和方向的有向线段。向量 a \mathbf{a} a 的大小(长度)用 ∣ a ∣ |\mathbf{a}| a 表示。两个向量相等,当且仅当它们具有相同的大小和方向。零向量 0 \mathbf{0} 0 的大小为 0 0 0

在力学中,向量可分为两类:

  1. 极向量(Polar Vectors):有向线段,与三维空间中的平动相关。物理实例包括力、位移、速度、加速度、动量等。
  2. 轴向量(Axial Vectors):用于描述旋转运动及相关物理量,如角速度、力矩、角动量等。下图所示为自旋向量 a ∗ \mathbf{a}^* a,表示绕给定轴的旋转,旋转方向由圆形箭头指示,旋转"幅度"对应其长度。

极向量与轴向量示意图

极向量 a \mathbf{a} a 与轴向量 a ∗ \mathbf{a}^* a 的关系如下:

  • 向量 a \mathbf{a} a 位于自旋向量的轴线上;
  • 向量 a \mathbf{a} a 的大小等于 a ∗ \mathbf{a}^* a 的大小;
  • 方向关系分别满足左手定则与右手定则。

(3)向量的叉积

c = a × b \mathbf{c} = \mathbf{a} \times \mathbf{b} c=a×b,其几何意义由以下三方面确定:

  1. 方向:向量 c \mathbf{c} c 正交于 a \mathbf{a} a b \mathbf{b} b 张成的平面,如图(a)所示;
  2. 旋向:圆形箭头表示从 a \mathbf{a} a b \mathbf{b} b 的最短旋转方向,如图(b)所示;
  3. 大小 ∣ c ∣ = ∣ a ∣ ∣ b ∣ sin ⁡ φ |\mathbf{c}| = |\mathbf{a}| |\mathbf{b}| \sin\varphi c=a∣∣bsinφ,其中 φ \varphi φ 为从 a \mathbf{a} a b \mathbf{b} b 的最短旋转方向夹角。

向量叉积示意图

张量的内积运算已在前文介绍。向量的叉积又称为外积。从数学意义上讲,外积仅对向量有定义,并非所有张量均具备外积运算。

叉积满足如下运算法则:

a × b = − b × a \mathbf{a} \times \mathbf{b} = -\mathbf{b} \times \mathbf{a} a×b=b×a

a × ( b + c ) = a × b + a × c \mathbf{a} \times (\mathbf{b} + \mathbf{c}) = \mathbf{a} \times \mathbf{b} + \mathbf{a} \times \mathbf{c} a×(b+c)=a×b+a×c

外积与内积可结合构成混合积(标量三重积),记为 ( b × a ) ⋅ c (\mathbf{b} \times \mathbf{a}) \cdot \mathbf{c} (b×a)c,其结果为标量,满足恒等式:

a ⋅ ( b × c ) = b ⋅ ( c × a ) = c ⋅ ( a × b ) \mathbf{a} \cdot (\mathbf{b} \times \mathbf{c}) = \mathbf{b} \cdot (\mathbf{c} \times \mathbf{a}) = \mathbf{c} \cdot (\mathbf{a} \times \mathbf{b}) a(b×c)=b(c×a)=c(a×b)

连续两次外积运算可转化为点乘形式(向量三重积公式):

a × ( b × c ) = b ( a ⋅ c ) − c ( a ⋅ b ) \mathbf{a} \times (\mathbf{b} \times \mathbf{c}) = \mathbf{b}(\mathbf{a} \cdot \mathbf{c}) - \mathbf{c}(\mathbf{a} \cdot \mathbf{b}) a×(b×c)=b(ac)c(ab)

进一步,联立上述二式可得:

( a × b ) ⋅ ( c × d ) = a ⋅ [ b × ( c × d ) ] = a ⋅ [ c ( b ⋅ d ) − d ( b ⋅ c ) ] = ( a ⋅ c ) ( b ⋅ d ) − ( a ⋅ d ) ( b ⋅ c ) \begin{align*} (\mathbf{a} \times \mathbf{b}) \cdot (\mathbf{c} \times \mathbf{d}) &= \mathbf{a} \cdot \big[\mathbf{b} \times (\mathbf{c} \times \mathbf{d})\big] \\ &= \mathbf{a} \cdot \big[\mathbf{c}(\mathbf{b} \cdot \mathbf{d}) - \mathbf{d}(\mathbf{b} \cdot \mathbf{c})\big] \\ &= (\mathbf{a} \cdot \mathbf{c})(\mathbf{b} \cdot \mathbf{d}) - (\mathbf{a} \cdot \mathbf{d})(\mathbf{b} \cdot \mathbf{c}) \end{align*} (a×b)(c×d)=a[b×(c×d)]=a[c(bd)d(bc)]=(ac)(bd)(ad)(bc)

二、矩阵与张量的几种乘积

(1)并积(张量积)

两个张量 A \mathbf{A} A B \mathbf{B} B 的并积(张量积)得到一个阶数等于二者阶数之和的新张量。

A = A i j k e i e j e k \mathbf{A} = A_{ijk} \mathbf{e}_i \mathbf{e}_j \mathbf{e}_k A=Aijkeiejek 为三阶张量, B = B l m e l e m \mathbf{B} = B_{lm} \mathbf{e}_l \mathbf{e}_m B=Blmelem 为二阶张量,则并积结果为:

T = A B = T i j k l m e i e j e k e l e m \mathbf{T} = \mathbf{A} \mathbf{B} = T_{ijklm} \mathbf{e}_i \mathbf{e}_j \mathbf{e}_k \mathbf{e}_l \mathbf{e}_m T=AB=Tijklmeiejekelem

其中 T i j k l m = A i j k B l m T_{ijklm} = A_{ijk} B_{lm} Tijklm=AijkBlm

并积示意图

并积运算将二阶张量(平面 3 × 3 3 \times 3 3×3 网格)与三阶张量(三维结构)结合,形成五阶张量,其直观理解如上所示。

(2)Kronecker 积

Kronecker 积是张量计算中常见的运算,是衔接矩阵计算与张量计算的重要桥梁。

给定矩阵 A ∈ R m 1 × m 2 \mathbf{A} \in \mathbb{R}^{m_1 \times m_2} ARm1×m2 B ∈ R n 1 × n 2 \mathbf{B} \in \mathbb{R}^{n_1 \times n_2} BRn1×n2,其 Kronecker 积定义为:

A ⊗ B = [ a 11 B a 12 B ⋯ a 1 m 2 B a 21 B a 22 B ⋯ a 2 m 2 B ⋮ ⋮ ⋱ ⋮ a m 1 1 B a m 1 2 B ⋯ a m 1 m 2 B ] \mathbf{A} \otimes \mathbf{B} = \begin{bmatrix} a_{11}\mathbf{B} & a_{12}\mathbf{B} & \cdots & a_{1m_2}\mathbf{B} \\ a_{21}\mathbf{B} & a_{22}\mathbf{B} & \cdots & a_{2m_2}\mathbf{B} \\ \vdots & \vdots & \ddots & \vdots \\ a_{m_1 1}\mathbf{B} & a_{m_1 2}\mathbf{B} & \cdots & a_{m_1 m_2}\mathbf{B} \end{bmatrix} AB= a11Ba21Bam11Ba12Ba22Bam12Ba1m2Ba2m2Bam1m2B

所得矩阵 A ⊗ B \mathbf{A} \otimes \mathbf{B} AB 的大小为 ( m 1 n 1 ) × ( m 2 n 2 ) (m_1 n_1) \times (m_2 n_2) (m1n1)×(m2n2),即行数为 m 1 n 1 m_1 n_1 m1n1,列数为 m 2 n 2 m_2 n_2 m2n2

该运算可理解为:以矩阵 A \mathbf{A} A 的每个元素 a i j a_{ij} aij 为系数,与整个矩阵 B \mathbf{B} B 相乘,按原位置排列构成新矩阵。

示例:给定

A = [ 1 2 3 4 ] , B = [ 5 6 7 8 9 10 ] \mathbf{A} = \begin{bmatrix} 1 & 2 \\ 3 & 4 \end{bmatrix}, \quad \mathbf{B} = \begin{bmatrix} 5 & 6 & 7 \\ 8 & 9 & 10 \end{bmatrix} A=[1324],B=[5869710]

则:

A ⊗ B = [ 1 ⋅ B 2 ⋅ B 3 ⋅ B 4 ⋅ B ] = [ 5 6 7 10 12 14 8 9 10 16 18 20 15 18 21 20 24 28 24 27 30 32 36 40 ] \mathbf{A} \otimes \mathbf{B} = \begin{bmatrix} 1 \cdot \mathbf{B} & 2 \cdot \mathbf{B} \\ 3 \cdot \mathbf{B} & 4 \cdot \mathbf{B} \end{bmatrix} = \begin{bmatrix} 5 & 6 & 7 & 10 & 12 & 14 \\ 8 & 9 & 10 & 16 & 18 & 20 \\ 15 & 18 & 21 & 20 & 24 & 28 \\ 24 & 27 & 30 & 32 & 36 & 40 \end{bmatrix} AB=[1B3B2B4B]= 5815246918277102130101620321218243614202840

Kronecker 积不满足乘法交换律,即 A ⊗ B ≠ B ⊗ A \mathbf{A} \otimes \mathbf{B} \neq \mathbf{B} \otimes \mathbf{A} AB=BA

其基本运算性质如下:

克罗内克积基本运算性质

左分配律
A ⊗ ( B + C ) = A ⊗ B + A ⊗ C \mathbf{A} \otimes (\mathbf{B} + \mathbf{C}) = \mathbf{A} \otimes \mathbf{B} + \mathbf{A} \otimes \mathbf{C} A(B+C)=AB+AC

右分配律
( B + C ) ⊗ A = B ⊗ A + C ⊗ A (\mathbf{B} + \mathbf{C}) \otimes \mathbf{A} = \mathbf{B} \otimes \mathbf{A} + \mathbf{C} \otimes \mathbf{A} (B+C)A=BA+CA

数乘齐次性
( k A ) ⊗ B = A ⊗ ( k B ) = k ( A ⊗ B ) (k\mathbf{A}) \otimes \mathbf{B} = \mathbf{A} \otimes (k\mathbf{B}) = k(\mathbf{A} \otimes \mathbf{B}) (kA)B=A(kB)=k(AB)

运算结合律
( A ⊗ B ) ⊗ C = A ⊗ ( B ⊗ C ) (\mathbf{A} \otimes \mathbf{B}) \otimes \mathbf{C} = \mathbf{A} \otimes (\mathbf{B} \otimes \mathbf{C}) (AB)C=A(BC)

零矩阵吸收性质
A ⊗ 0 = 0 ⊗ A = 0 \mathbf{A} \otimes \mathbf{0} = \mathbf{0} \otimes \mathbf{A} = \mathbf{0} A0=0A=0

补充说明

  1. ⊗ \otimes 为克罗内克积(Kronecker product),不满足通用交换律,表述为“一般 A ⊗ B ≠ B ⊗ A \mathbf{A}\otimes\mathbf{B} \ne \mathbf{B}\otimes\mathbf{A} AB=BA”是出于数学严谨性:绝大多数不同规格矩阵进行克罗内克积运算时,交换前后结果矩阵维度或内部元素排布均不一致,无法相等;仅存在极少数特殊特例可满足交换后结果相等:
    • 两个矩阵均为1阶标量矩阵,等价于普通标量乘法,天然满足交换;
    • 其中任一矩阵为零矩阵,交换后均得到同阶高阶零矩阵;
    • 同阶数量矩阵(如 k I n k\mathbf{I}_n kIn l I n l\mathbf{I}_n lIn)做克罗内克积,交换结果一致。
      常规理论推导与工程计算中,默认不可直接调换克罗内克积左右因子。
  2. k k k 为任意标量常数, 0 \mathbf{0} 0 为对应阶数的零矩阵;
  3. 上述性质为矩阵张量运算、线性算子克罗内克形式表达、向量向量化拉直运算的理论基础。

(3)Hadamard 积

Hadamard 积(元素对应积)定义在两个同维矩阵 A , B ∈ R I × J \mathbf{A}, \mathbf{B} \in \mathbb{R}^{I \times J} A,BRI×J 上,运算法则为对应元素相乘:

A ∗ B = [ a 11 b 11 a 12 b 12 ⋯ a 1 J b 1 J a 21 b 21 a 22 b 22 ⋯ a 2 J b 2 J ⋮ ⋮ ⋱ ⋮ a I 1 b I 1 a I 2 b I 2 ⋯ a I J b I J ] ∈ R I × J \mathbf{A} \ast \mathbf{B} = \begin{bmatrix} a_{11}b_{11} & a_{12}b_{12} & \cdots & a_{1J}b_{1J} \\ a_{21}b_{21} & a_{22}b_{22} & \cdots & a_{2J}b_{2J} \\ \vdots & \vdots & \ddots & \vdots \\ a_{I1}b_{I1} & a_{I2}b_{I2} & \cdots & a_{IJ}b_{IJ} \end{bmatrix} \in \mathbb{R}^{I \times J} AB= a11b11a21b21aI1bI1a12b12a22b22aI2bI2a1Jb1Ja2Jb2JaIJbIJ RI×J

Hadamard 积示意图

该运算的符号常用 ∘ \circ ∗ \ast 表示,其中 ∗ \ast 更为常见。运算结果矩阵的行列数保持不变。

示例

[ a 11 a 12 a 13 a 21 a 22 a 23 a 31 a 32 a 33 ] ∗ [ b 11 b 12 b 13 b 21 b 22 b 23 b 31 b 32 b 33 ] = [ a 11 b 11 a 12 b 12 a 13 b 13 a 21 b 21 a 22 b 22 a 23 b 23 a 31 b 31 a 32 b 32 a 33 b 33 ] \begin{bmatrix} a_{11} & a_{12} & a_{13} \\ a_{21} & a_{22} & a_{23} \\ a_{31} & a_{32} & a_{33} \end{bmatrix} \ast \begin{bmatrix} b_{11} & b_{12} & b_{13} \\ b_{21} & b_{22} & b_{23} \\ b_{31} & b_{32} & b_{33} \end{bmatrix} =\begin{bmatrix} a_{11}b_{11} & a_{12}b_{12} & a_{13}b_{13} \\ a_{21}b_{21} & a_{22}b_{22} & a_{23}b_{23} \\ a_{31}b_{31} & a_{32}b_{32} & a_{33}b_{33} \end{bmatrix} a11a21a31a12a22a32a13a23a33 b11b21b31b12b22b32b13b23b33 = a11b11a21b21a31b31a12b12a22b22a32b32a13b13a23b23a33b33

Hadamard 积(哈达玛积)基本性质
  1. A , B , C \mathbf{A},\mathbf{B},\mathbf{C} A,B,C同型矩阵(行数、列数完全相等), ∗ \ast 为矩阵 Hadamard 逐元素乘积运算符;
  2. k k k 为任意数域内标量, 0 \mathbf{0} 0 为与左运算矩阵同型的零矩阵;
  3. Hadamard 积定义: ( A ∗ B ) i j = a i j b i j (\mathbf{A}\ast\mathbf{B})_{ij}=a_{ij}b_{ij} (AB)ij=aijbij,即对应位置元素直接相乘。
1. 交换律

矩阵 Hadamard 积满足运算交换性,调换两个运算矩阵的顺序,逐元素相乘结果完全一致。
A ∗ B = B ∗ A \mathbf{A} \ast \mathbf{B} = \mathbf{B} \ast \mathbf{A} AB=BA

2. 结合律

连续三次 Hadamard 嵌套乘积时,任意调整括号绑定的运算优先级,运算结果不变,可省略括号简写为 A ∗ B ∗ C \mathbf{A}\ast\mathbf{B}\ast\mathbf{C} ABC
A ∗ ( B ∗ C ) = ( A ∗ B ) ∗ C \mathbf{A} \ast (\mathbf{B} \ast \mathbf{C}) = (\mathbf{A} \ast \mathbf{B}) \ast \mathbf{C} A(BC)=(AB)C

3. 对矩阵加法的左分配律

Hadamard 积对矩阵加法具备分配特性,可将左侧矩阵分别与相加的两个矩阵做 Hadamard 积后再求和。
A ∗ ( B + C ) = A ∗ B + A ∗ C \mathbf{A} \ast (\mathbf{B} + \mathbf{C}) = \mathbf{A} \ast \mathbf{B} + \mathbf{A} \ast \mathbf{C} A(B+C)=AB+AC

4. 标量数乘相容性质

标量与矩阵先做数乘再取 Hadamard 积,等价于仅对其中一个矩阵数乘后做 Hadamard 积,也等价于两矩阵先求 Hadamard 积再整体乘以该标量。
( k A ) ∗ B = A ∗ ( k B ) = k ( A ∗ B ) (k\mathbf{A}) \ast \mathbf{B} = \mathbf{A} \ast (k\mathbf{B}) = k(\mathbf{A} \ast \mathbf{B}) (kA)B=A(kB)=k(AB)

5. 零矩阵吸收性质

任意同型矩阵与零矩阵做 Hadamard 积,结果恒等于零矩阵,零矩阵在 Hadamard 乘法中起到零元吸收作用。
A ∗ 0 = 0 ∗ A = 0 \mathbf{A} \ast \mathbf{0} =\mathbf{0} \ast \mathbf{A} =\mathbf{0} A0=0A=0

补充

矩阵普通矩阵乘法不满足交换律,但 Hadamard 逐元素积天然满足交换律,二者不可混淆;所有性质成立的前提均为参与 Hadamard 运算的矩阵维度完全匹配。

(4)Khatri-Rao 积

给定矩阵 A ∈ R I × k \mathbf{A} \in \mathbb{R}^{I \times k} ARI×k,按列分块为 A = ( a ⃗ 1 , a ⃗ 2 , … , a ⃗ k ) \mathbf{A} = (\vec{a}_1, \vec{a}_2, \ldots, \vec{a}_k) A=(a 1,a 2,,a k),以及矩阵 B ∈ R J × k \mathbf{B} \in \mathbb{R}^{J \times k} BRJ×k,按列分块为 B = ( b ⃗ 1 , b ⃗ 2 , … , b ⃗ k ) \mathbf{B} = (\vec{b}_1, \vec{b}_2, \ldots, \vec{b}_k) B=(b 1,b 2,,b k),则 A \mathbf{A} A B \mathbf{B} B 的 Khatri-Rao 积定义为各对应列的 Kronecker 积按列拼接:

A ⊙ B = ( a ⃗ 1 ⊗ b ⃗ 1 , a ⃗ 2 ⊗ b ⃗ 2 , … , a ⃗ k ⊗ b ⃗ k ) \mathbf{A} \odot \mathbf{B} = (\vec{a}_1 \otimes \vec{b}_1, \vec{a}_2 \otimes \vec{b}_2, \ldots, \vec{a}_k \otimes \vec{b}_k) AB=(a 1b 1,a 2b 2,,a kb k)

Khatri-Rao 积示意图

示例:给定

A = [ 1 2 3 4 ] = ( a ⃗ 1 , a ⃗ 2 ) , B = [ 5 6 7 8 9 10 ] = ( b ⃗ 1 , b ⃗ 2 ) \mathbf{A} = \begin{bmatrix} 1 & 2 \\ 3 & 4 \end{bmatrix} = (\vec{a}_1, \vec{a}_2), \quad \mathbf{B} = \begin{bmatrix} 5 & 6 \\ 7 & 8 \\ 9 & 10 \end{bmatrix} = (\vec{b}_1, \vec{b}_2) A=[1324]=(a 1,a 2),B= 5796810 =(b 1,b 2)

则:

A ⊙ B = ( a ⃗ 1 ⊗ b ⃗ 1 , a ⃗ 2 ⊗ b ⃗ 2 ) = [ [ 1 3 ] ⊗ [ 5 7 9 ] [ 2 4 ] ⊗ [ 6 8 10 ] ] \mathbf{A} \odot \mathbf{B} = (\vec{a}_1 \otimes \vec{b}_1, \vec{a}_2 \otimes \vec{b}_2) = \begin{bmatrix} \begin{bmatrix} 1 \\ 3 \end{bmatrix} \otimes \begin{bmatrix} 5 \\ 7 \\ 9 \end{bmatrix} & \begin{bmatrix} 2 \\ 4 \end{bmatrix} \otimes \begin{bmatrix} 6 \\ 8 \\ 10 \end{bmatrix} \end{bmatrix} AB=(a 1b 1,a 2b 2)= [13] 579 [24] 6810

最终结果为:

A ⊙ B = [ 5 12 7 16 9 20 15 24 21 32 27 40 ] \mathbf{A} \odot \mathbf{B} = \begin{bmatrix} 5 & 12 \\ 7 & 16 \\ 9 & 20 \\ 15 & 24 \\ 21 & 32 \\ 27 & 40 \end{bmatrix} AB= 579152127121620243240

Khatri-Rao 积同样不满足交换律

以上三种乘积的定义与区别可总结如下:

三种乘积对比图


张量基础学习(四):张量代数运算(下)

西瓜皮装猕猴桃 于 2020-07-12 20:45:06 发布

本期继续深入讨论张量的缩并、内积、双点积等代数运算。

一、张量的缩并

缩并是张量特有的代数运算。对 n n n 阶张量进行缩并,即对其中两个相同的指标按爱因斯坦求和约定求和。

二阶张量缩并后得到标量。注意:低于二阶的张量无法进行缩并运算。

以三阶张量 T i j k T_{ijk} Tijk 为例,将第一指标与第三指标缩并(即令 i = k i = k i=k),则三阶张量降为一阶张量:

张量缩并示意图

根据爱因斯坦求和约定,每进行一次缩并运算,即对两个自由指标求和,使其化为一对哑指标,张量的阶数相应降低两阶。下图有助于直观理解这一过程:

缩并过程示意图

矩阵乘法在本质上也可视为一种缩并运算。

此外需注意:对张量不同位置的基矢量进行缩并,所得结果一般不同,即 R ≠ S \mathbf{R} \neq \mathbf{S} R=S

不同缩并位置结果对比

上述内容仅为张量分析的基础概念介绍。

二、张量的内积与双点积

(1)内积与点积

内积:两个张量 T \mathbf{T} T S \mathbf{S} S 先进行并积运算,再对指定的一对基矢量进行缩并,称为张量的内积。进行内积运算时,需明确指定 T \mathbf{T} T 的哪一个基矢量与 S \mathbf{S} S 的哪一个基矢量进行点积。

m m m 阶张量 T \mathbf{T} T n n n 阶张量 S \mathbf{S} S 进行内积运算,所得新张量 U \mathbf{U} U 的阶数为 m + n − 2 m + n - 2 m+n2

在线性代数中,两个向量的内积为标量,这是因为向量为一阶张量, 1 + 1 − 2 = 0 1 + 1 - 2 = 0 1+12=0,所得结果恰好为零阶张量(标量)。

例如,设 A = A i j k e i e j e k \mathbf{A} = A_{ijk} \mathbf{e}_i \mathbf{e}_j \mathbf{e}_k A=Aijkeiejek(三阶张量), B = B l m e l e m \mathbf{B} = B_{lm} \mathbf{e}_l \mathbf{e}_m B=Blmelem(二阶张量),则二者内积为:

内积运算公式

同理,选择不同的基矢量对进行缩并,所得内积结果亦不同。

点积是内积的一种特殊情形,定义为前张量 A \mathbf{A} A 的最后一个基矢量与后张量 B \mathbf{B} B 的第一个基矢量缩并的运算:

点积运算公式

需注意:内积与点积的区别不仅在于缩并位置不同,所得结果亦不相同。

(2)双点积

双点积是指两个张量 T \mathbf{T} T S \mathbf{S} S 并乘后进行两次缩并的运算。双点积有两种形式:

并联式

并联式双点积

串联式

串联式

两种形式的区别在于缩并的指标对不同:并联式对相同位置的指标缩并,串联式对交叉位置的指标缩并。

以下以二阶张量为例说明二者关系:

二阶张量双点积示例

二阶张量的迹可通过与单位张量 I \mathbf{I} I 的双点积得到:

tr ⁡ S = S : I = S ⋅ ⋅ I \operatorname{tr} \mathbf{S} = \mathbf{S} : \mathbf{I} = \mathbf{S} \cdot \cdot \mathbf{I} trS=S:I=SI

三、特殊张量

(1)零张量

若张量的所有分量均为零,即 T i j = 0 T_{ij} = 0 Tij=0(在任意坐标系下 T i j ′ = 0 T_{ij}' = 0 Tij=0),则称该张量为零张量。

(2)单位张量

单位张量可类比于单位矩阵,定义为:

I = δ i j e i e j = e 1 e 1 + e 2 e 2 + e 3 e 3 \mathbf{I} = \delta_{ij} \mathbf{e}_i \mathbf{e}_j = \mathbf{e}_1 \mathbf{e}_1 + \mathbf{e}_2 \mathbf{e}_2 + \mathbf{e}_3 \mathbf{e}_3 I=δijeiej=e1e1+e2e2+e3e3

其分量满足 I i j = δ i j I_{ij} = \delta_{ij} Iij=δij,且在坐标变换下保持不变。单位张量与任意张量的点积等于该张量本身:

I ⋅ T = T ⋅ I = T \mathbf{I} \cdot \mathbf{T} = \mathbf{T} \cdot \mathbf{I} = \mathbf{T} IT=TI=T

(3)转置张量

对于二阶张量 T = T i j e i e j \mathbf{T} = T_{ij} \mathbf{e}_i \mathbf{e}_j T=Tijeiej,其转置张量 T T \mathbf{T}^{\mathrm{T}} TT 通过交换分量指标得到,基矢量顺序保持不变:

T T = T j i e i e j = T i j e j e i \mathbf{T}^{\mathrm{T}} = T_{ji} \mathbf{e}_i \mathbf{e}_j = T_{ij} \mathbf{e}_j \mathbf{e}_i TT=Tjieiej=Tijejei

高阶张量亦可进行转置运算,但其转置方式随阶数增加而趋于复杂。下图展示了三阶张量的几种转置结果:

高阶张量转置示意图

随着张量阶数的增加,可能的转置方式亦随之增多。在实际应用中,高阶张量通常通过分解处理,以简化分析。

(4)对称与反对称张量

对于张量 X ∈ R I 1 × I 2 × ⋯ × I n \mathcal{X} \in \mathbb{R}^{I_1 \times I_2 \times \cdots \times I_n} XRI1×I2××In,若 I 1 = I 2 = ⋯ = I n I_1 = I_2 = \cdots = I_n I1=I2==In,且张量元素关于某一超平面对称,即对应位置元素相等,则称为对称张量;若对应位置元素互为相反数,则称为反对称张量

T = T T    , T i j = T j i T = − T T    , T i j = − T j i \begin{aligned} T &= T^\mathrm{T} \;, & T_{ij} &= T_{ji} \\ T &= -T^\mathrm{T} \;, & T_{ij} &= -T_{ji} \end{aligned} TT=TT,=TT,TijTij=Tji=Tji

反对称张量的主对角线元素均为零。

四、张量的主轴、主值与主分量

设二阶张量 T \mathbf{T} T 与向量 b \mathbf{b} b 的点积产生新向量 b ′ \mathbf{b}' b。对于给定的 T \mathbf{T} T,是否存在某个方向上的非零向量 b \mathbf{b} b,使得 b ′ \mathbf{b}' b b \mathbf{b} b 同向(仅长度改变),即满足:

b ′ = T ⋅ b = λ b \mathbf{b}' = \mathbf{T} \cdot \mathbf{b} = \lambda \mathbf{b} b=Tb=λb

上述方程与线性代数中的特征值问题具有相同的形式,其中 λ \lambda λ 对应特征值, b \mathbf{b} b 对应特征向量。

满足上述方程的非零向量 b \mathbf{b} b 的方向称为张量 T \mathbf{T} T主轴(或主方向),标量 λ \lambda λ 称为其主值(或主分量)。

b ′ = T ⋅ b = λ b \mathbf{b}' = \mathbf{T} \cdot \mathbf{b} = \lambda \mathbf{b} b=Tb=λb 写成分量形式,整理可得齐次线性方程组:

( T i j − λ δ i j ) b j = 0 , i = 1 , 2 , 3 (T_{ij} - \lambda \delta_{ij}) b_j = 0, \quad i = 1, 2, 3 (Tijλδij)bj=0,i=1,2,3

该方程组存在非零解的充要条件是系数行列式为零:

λ 3 − I 1 λ 2 + I 2 λ − I 3 = 0 \lambda^3 - I_1 \lambda^2 + I_2 \lambda - I_3 = 0 λ3I1λ2+I2λI3=0

式中三个不变量分别为:


I 1 = T 11 + T 22 + T 33 = T i i I_1 = T_{11} + T_{22} + T_{33} = T_{ii} I1=T11+T22+T33=Tii

二阶主子式之和

I 2 = ∣ T 22 T 23 T 32 T 33 ∣ + ∣ T 11 T 13 T 31 T 33 ∣ + ∣ T 11 T 12 T 21 T 22 ∣ = 1 2 ( T i i T j j − T i j T j i ) I_2 = \begin{vmatrix} T_{22} & T_{23} \\ T_{32} & T_{33} \end{vmatrix} + \begin{vmatrix} T_{11} & T_{13} \\ T_{31} & T_{33} \end{vmatrix} + \begin{vmatrix} T_{11} & T_{12} \\ T_{21} & T_{22} \end{vmatrix} = \frac{1}{2}\left(T_{ii}T_{jj} - T_{ij}T_{ji}\right) I2= T22T32T23T33 + T11T31T13T33 + T11T21T12T22 =21(TiiTjjTijTji)

行列式本身

I 3 = ∣ T 11 T 12 T 13 T 21 T 22 T 23 T 31 T 32 T 33 ∣ = ε i j k T 1 i T 2 j T 3 k I_3 = \begin{vmatrix} T_{11} & T_{12} & T_{13} \\ T_{21} & T_{22} & T_{23} \\ T_{31} & T_{32} & T_{33} \end{vmatrix} = \varepsilon_{ijk} T_{1i} T_{2j} T_{3k} I3= T11T21T31T12T22T32T13T23T33 =εijkT1iT2jT3k

求解上述特征方程,可得三个主值 λ 1 , λ 2 , λ 3 \lambda_1, \lambda_2, \lambda_3 λ1,λ2,λ3,即张量 T \mathbf{T} T主分量

关于主分量与主轴,有以下结论:

  1. 特征方程的成立与坐标系选取无关。
  2. 若三个主值 λ 1 , λ 2 , λ 3 \lambda_1, \lambda_2, \lambda_3 λ1,λ2,λ3 互不相同,则对应的主轴方向 b 1 , b 2 , b 3 \mathbf{b}_1, \mathbf{b}_2, \mathbf{b}_3 b1,b2,b3 两两正交。
  3. 若存在二重根(例如 λ 1 = λ 2 \lambda_1 = \lambda_2 λ1=λ2),则垂直于 b 3 \mathbf{b}_3 b3 的平面内任意方向均为主方向。
  4. 若三个主值相等(三重根),则任何方向均为主方向。

Reference

内容概要:本文系统研究了基于豪猪优化算法(CPO)的多无人机协同集群在三维空间中的避障路径规划问题,聚焦于实现以最低成本为目标的航迹优化,综合考虑路径长度、飞行高度、威胁规避及转弯角度等多个关键因素。通过构建精细化的三维环境模型与多无人机协同机制,采用Matlab平台实现CPO算法的仿真与验证,充分展示了该算法在复杂动态障碍环境下的高效搜索能力与全局优化性能。研究不仅涵盖了路径规划的数学建模与目标函数设计,还深入探讨了算法的收敛特性与鲁棒性,为智能群体系统在实际场景中的应用提供了理论依据与技术支撑。; 适合人群:具备一定编程基础和优化算法背景,从事无人机系统控制、智能路径规划、群体协同、人工智能与自动化等相关领域的科研人员、高校研究生及工程技术人员。; 使用场景及目标:①应用于多无人机协同执行侦察、灾害监测、应急救援、区域巡检等复杂任务中的自主路径规划;②为智能优化算法在三维动态环境下的路径决策问题提供可复现的技术范例;③支持研究人员对CPO算法与其他主流群智能算法(如PSO、GWO、WOA等)进行性能对比与改进研究,推动路径规划技术的发展。; 阅读建议:建议结合提供的Matlab代码进行实践操作,重点理解目标函数的多维度建模方式与CPO算法的迭代优化流程,可通过调整环境参数与约束条件进行仿真实验,对比不同算法在相同场景下的路径质量与收敛速度,从而深入掌握其优势与适用边界。
内容概要:本文围绕电动汽车参与电力系统运行备用的能力评估展开深入研究,利用Matlab代码实现对电动汽车集群提供运行备用服务的建模与仿真分析。研究重点在于量化电动汽车作为分布式灵活资源参与电网辅助服务的潜力,通过构建精细化的数学模型,分析其可调功率容量、响应速度、时空分布特性及聚合能力,并采用多面体聚合、内近似模型与闵可夫斯基和等先进方法精确刻画其可调度能力边界。研究进一步结合大规模电动汽车接入场景,探讨其在多时间尺度调度框架下参与调峰、调频等辅助服务的优化策略,评估其对提升高比例可再生能源电网灵活性与稳定性的贡献,最终通过仿真验证所提模型与方法的有效性与实用性。; 适合人群:具备电力系统分析、智能电网、新能源汽车或优化调度等相关专业背景,熟悉Matlab/Simulink仿真工具,从事科研、工程应用的高校研究生、科研人员及电力行业工程师。; 使用场景及目标:①精确评估大规模电动汽车集群在不同约束条件下可提供的运行备用容量;②研究电动汽车在日前、日内及实时调度中的动态响应能力与优化调度策略;③为高渗透率新能源电力系统提供基于移动储能的灵活性资源解决方案,支撑电网安全经济运行。; 阅读建议:建议结合Matlab代码与技术文档同步学习,重点关注多面体聚合建模、能力边界计算及优化调度算法的设计与实现,可进一步拓展至V2G(车辆到电网)、需求响应等互动场景进行二次开发与应用验证。
打开链接下载源码: https://pan.quark.cn/s/a4b39357ea24 OpenCV(开源计算机视觉库)中的DNN(Deep Neural Network)模块是一种功能强大的工具,其目的是用于深度学习模型的操作。该模块使得开发人员能够在OpenCV环境中直接运用已经训练好的深度学习网络,以执行图像识别、目标检测、图像分割等多种功能。DNN模块能够兼容多种深度学习框架的模型,包括TensorFlow、Caffe、ONNX等。 一、DNN模块概述 OpenCV的DNN模块是为了简化深度学习模型的集成过程而专门设计的,它允许开发人员加载预先训练好的神经网络模型,并在图像数据上执行前向传播操作。借助这个模块,用户可以选用GPU或者CPU来提升计算效率,从而构建出高效的应用程序。 二、目标检测案例 在OpenCV的DNN模块中,目标检测是一个常见的应用情形。例如,可以选用SSD(Single Shot Multibox Detector)、YOLO(You Only Look Once)或者 Faster R-CNN 等模型进行实时的目标检测。这些模型能够识别并定位图像中的多个对象,并返回每个对象的类别和边界框坐标。 三、模型转换:PB到PBTXT 在OpenCV中运用TensorFlow模型时,通常需要处理的是`.pb`格式的模型文件,这是TensorFlow的二进制模型文件格式。然而,为了能够读取模型的结构信息,我们需要`.pbtxt`格式的文本文件。转换过程涉及解析`.pb`文件并将其结构信息导出为`.pbtxt`格式,这样做可以让人清晰地了解网络层和参数的配置。在OpenCV中,可以使用`tf.train.write_graph()`函数将.pb...
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值