DG 方法求解高维守恒律方程组的记号整理

整理一下一般的高维区域的 DG 方程组需要的公式推导,之前使用的记号都过于简化,无法统一。 下文中使用粗体泛指向量或笛卡尔张量,使用下标对应空间坐标,使用带括号的上标对应方程组的各个分量。 通量和测试函数梯度均把空间指标放在第一位:矩阵的行对应空间方向,列对应方程分量。

方程的表示

对于求解区域 ,考虑一个有 个分量的守恒律方程组问题

其中守恒变量是一个向量 ,流通量函数是一个矩阵值函数 ,这里暂不考虑边界条件。

先讨论一下方程的各种记号,可以先按照空间分量拆分,此时每一个空间方向对应一个通量向量 。将其视为列向量,则

完全用分量形式表示即

或者使用向量形式

Remark (张量场的散度)

对于张量场的散度,采用如下方式定义:对于向量场(一阶张量场) ,散度记号定义为

向量场的散度为标量场。对于二阶以及高阶张量场,可以推广上述定义,散度使张量的阶数降低一阶。本文约定 处理第一个指标, 处理最后一个指标,被处理的指标必须对应空间方向。这是本文采用的记号约定,不同资料可能采用不同定义。例如考虑矩阵值场(这里的双下标表示矩阵的行、列)

可以定义

如果二阶张量场 的两个分量索引范围均为 ,那么两个记号均可以定义,总是存在对应关系 , 如果满足对称性 时,则有

方程分部积分后的表示

考虑任意子区域 ,对原方程与测试函数 作内积,使用分部积分公式可得

其中的 表示边界处的单位外法向量, 均为 矩阵, 是方程分量空间中的向量,其第 个分量为 。 用分量形式表示即

Remark

说明一下这里使用的记号,下面的双下标表示一般张量的指标位置:

  1. 对于一阶张量场 和二阶张量场 ,点积记号 是一个向量场,具体定义为

    对于更一般的情况,点积是在前者的最后一个指标和后者的第一个指标之间进行对应相乘和求和。

  2. 对于两个二阶张量场 , ,双点积记号 是一个标量场,具体定义为

    对于更一般的情况,双点积是在前者的最后两个指标和后者的前两个指标之间进行对应相乘和求和。

Remark (张量场的梯度)

对于张量场的梯度,采用如下方式定义:对于标量场(零阶张量),梯度记号定义为

标量场的梯度为向量。对于向量场以及高阶张量场,梯度使张量的阶数增加一阶,但是存在一个小问题,多出的一个空间指标放在第一位还是最后一位?在不同资料中有不同的做法,这里采用的是放在第一位。例如对测试函数 ,其梯度为

另一种排列把导数指标放在最后,本文用 与之区分:

特别地,对于速度场 ,速度分量本身对应空间方向,因此仍使用下标。两种速度梯度分别为

对于标量场,两种记号相同: 。这里对 的区分是本文约定,并非所有资料都如此使用。上面的弱式采用 ,因为两者都按“空间指标在前”排列。

DG半离散格式的表示

对求解区域 进行的网格剖分记作 ,定义有限元空间为分片多项式空间

DG 半离散格式为:Find , such that ,

用分量形式表示即

DG 的核心想法是在边界项中引入数值流通量 ,它由界面 两侧的迹 以及单元 的单位外法向量 决定。下面简记两侧的迹为 。 例如 Lax-Friedrichs 数值流通量

最后一项需要特别注意:记号 不是点积( ),而是张量的并积

得到的结果是一个 矩阵,可以和 进行加减运算。也可以直接定义法向数值流通量 ,将边界项写为

此时 Lax-Friedrichs 数值流通量可以定义为