微分算子及其离散化3:旋度
type
status
date
slug
summary
tags
category
icon
password
3 旋度 curl
定义
三维空间旋度算子(或写作curl)
作用于三维向量函数:
因此三维旋度算子作用在三维向量函数(三维向量场),输出向量场。
几何理解
从物理意义直观理解旋度。
图中的两个向量场是三维向量场在xy平面上的切面,示意如下(红色为切面):
两个场是有“涡旋”的,并且旋转的方向相反。
切面在xy平面上,因此考虑相对于z轴的旋转。我们规定以右手定则为准,因此左侧为正旋(旋度大于零),右侧为负旋(旋度小于零)。
这就是对三维向量场某个切面上旋度的定性理解,接下来是定量推导。
在三维场中取任意一个平行于坐标轴的长方体区域,假设网格xyz各方向的网格间距分别为𝛿𝑥,𝛿𝑦,𝛿𝑧:
我们先考虑绕z轴的“旋转量”。因此我们只需要看前后、左右四个面上的总旋转量。俯视图如下:
首先看前后两面。取前后面的中心点位置的值,只有平行于x轴的分量对绕z轴旋转有贡献,因此只取x分量。假设前面中点位置为(x,y,z),前、后面中点取值如下图:
注意我们以右手法则定义旋转的正方向,因此后面的值为负(类比散度的流入流出量与坐标正方向的关系)。如下图中蓝色为正向流动,红色为负向流动:
如果区域足够小,我们就认为面的中心点数据等于该面其他点。前后面的面积为,则整个前面的旋转量近似为:
整个后面的旋转量近似为:
因此前面和后面的总旋转量为:
接下来考虑左右两面。假设坐面中点位置为(x,y,z):
整个右面的旋转量近似为:
整个左面的旋转量近似为:
因此左面和右面的总旋转量为
把前、后、左、右四个面上所有的绕z轴的的旋转量加起来(公式(1)和(2)),得到绕z轴总的旋转量:
等价于:
我们以这个量近似整个区域中绕z轴的旋转量。整个区域的体积为,若区域足够小,我们认为区域中每个点绕z轴的旋转量相等。以平均值来近似任意点绕z轴的旋转量,公式(3)除以体积:
整理成左右两项:
左右两项都是经典的有限差分形式,对和取极限:
得到:
正是旋度表达式的第三项(z分量)
x分量和y分量可以同样的方式推导。
注意该方式并不是严谨的微分推导,只是以一种容易理解的离散视角来介绍旋度的物理意义。
离散化
由推导即可得到算子各个分量有限差分的格式,以中心差分的形式为例: