学习中心

Course:

Modeling with Partial Differential Equations in COMSOL Multiphysics

使用偏微分方程(PDE)接口建模:亥姆霍兹方程


本文为 “在 COMSOL Multiphysics® 中使用偏微分方程(PDE)接口建模” 系列课程的第 7 部分,介绍如何使用 PDE 接口建立亥姆霍兹方程模拟频域中的声波现象。使用预定义的物理场接口建立声波传播模型非常容易,而且几乎在所有情况下,这都是处理声学问题的推荐方法。出于教学目的,本文将重点介绍如何手动推导建立低反射边界条件的表达式,以及如何在软件中处理复值量。学习完本课程,您将对使用声学模块以及其他附加产品在模拟波传播现象时如何实现频域仿真有更深入的了解和认识。

波动方程

波动方程普遍存在于声学、结构动力学和电磁学等工程领域。让我们看看如何使用 COMSOL Multiphysics® 中的数学接口模拟波动方程标量形式的亥姆霍兹方程,一次求解一个频率。在学习亥姆霍兹方程之前,我们需要了解一些用于压力声学的波动方程的背景知识。

我们可以先复习一下系数形式偏微分方程:

该方程模板可在模型向导的 数学 接口中找到。

The Select Physics window in the Model Wizard.
模型向导中的 数学 分支,其下可以找到 系数形式偏微分方程 接口。

有关使用 系数形式偏微分方程 接口的更多信息,请参阅学习中心的文章:扩散型方程建模 中的 系数形式偏微分方程 这一小节内容。

如果保留二阶时间导数项,忽略其他一些项,就可以得到波动方程

我们可以使用这个方程的不同形式来表示声波、电磁波或弹性波。

现在,让我们来考虑压力声学。对于声波来说,因变量是代表声压的标量,波动方程的形式特别简单:

其中,  是压力场, 是流体密度, 是声速。

该方程是模型向导中 声学 分支下 压力声学 的内置方程选项。在声学模块中该方程有多个不同版本,本文只讨论其瞬态和频域版本。压力声学 接口(如下图所示)的 频域 求解在 COMSOL Multiphysics® 基础模块和声学模块中都可以使用,其中,软件的基础模块中包含了一些基本功能,而在声学模块中提供更多高级选项。需要强调的是,使用压力声学内置物理场接口求解压力声学问题要容易得多。不过,就本文而言,我们希望通过使用数学接口来了解基本技术和偏微分方程。

The Add Physics window with Pressure Acoustics, Frequency Domain selected.
添加物理场 窗口中选择 压力声学,频域 接口。

我们可以将压力声学公式与系数形式偏微分方程进行比较,并注意到:




压力声学方程的扩展版本采用以下形式:

其中 是单极源密度,  是偶极源密度。

同样,将其与系数形式偏微分方程进行比较,就会发现:


这也是守恒源项发挥作用的另一种情况。

有关求解瞬态波动方程的示例,请参阅 瞬态高斯爆炸波 教程模型。但请注意,该示例使用的是声学模块的内置接口,而非任何 数学 接口。

亥姆霍兹方程

我们将继续使用压力声学方程,但现在要从时域转向频域。为此,首先假设正弦(也称 谐波)压力场的频率为 ,或角频率为 ,实数声压振幅为 

在一次处理一个频率(或在频域)时,使用复值声压会更方便。

利用复数运算,我们可以采用另一种复值声压表述:

对其取实部即可得到原始方程,

同样,我们要求源项也应该是谐波,并以相同频率发生变化:

将这些复值表达式插入压力波动方程,得出如下所示的亥姆霍兹方程:





将系数与系数形式偏微分方程匹配,就能得出结果:




因此,系数形式偏微分方程中的  项有时被称为 Helmholtz term 项。

现在,让我们改回使用  作为因变量,并定义单位密度的波数  满足 ,然后,就可以写出 

  

亥姆霍兹方程的形式如下

我们还有与该方程相关的诺伊曼边界条件:

和狄利克雷边界条件:

下图分别显示了这个亥姆霍兹方程的 参数系数形式偏微分方程 的设置。

The Model Builder window with Parameters 1 selected and the corresponding Settings window showing the parameter names, expressions, values, and descriptions.
 用于亥姆霍兹方程的相关参数。

The Model Builder with Coefficient Form PDE 1 selected and the corresponding Settings window.
亥姆霍兹方程的 系数形式偏微分方程 节点设置。

请注意,从时域声学方程转到频域对应的亥姆霍兹方程时,我们求解的是稳态偏微分方程,因此将使用 稳态 研究。

示例:双缝实验

现在,我们来看看亥姆霍兹方程的经典应用:双缝实验。在这里,我们假设波是声压波。不过,我们并不关注声速或密度。相反,为了简单起见,我们将假定波矢量是方程的唯一输入,您可以将其理解为声速和流体密度都赋值为 1.0。

在我们的示例中,平面波从左侧进入计算域,一部分波将从壁上反射,一部分波将穿过双缝,并在屏幕上出现干涉图案,同时会有出射波从右侧离开计算域。为简单起见,我们假设波可以无干扰地穿过屏幕。这类分析的难点在于定义边界条件。左边的边界条件需要同时容纳入射波和反射波。此外,我们还需要允许波离开右侧的边界。

A geometric figure with the double slit labeled and blue arrows showing the incident plane wave, reflected wave, and outgoing wave. A geometric figure with the double slit labeled and blue arrows showing the incident plane wave, reflected wave, and outgoing wave.
双缝实验装置

平面波解

要了解如何应用合适的边界条件,首先我们需要复习一个非常重要的平面波无源亥姆霍兹方程的解析解,这个解很容易书写和理解。

自由空间中亥姆霍兹方程的平面波解如下:

其中 波矢量

是波数

是一个空间坐标矢量

是一个恒定的波幅

另一个解, ,其波矢量符号相反,也是亥姆霍兹方程的平面波解。在下面的推导中,我们可以选择这两种解中的任意一种。

请注意,为了获取随时间变化的解,我们可以计算

其中,下标 表示实数。

让我们检验一下平面波的解是否真的满足亥姆霍兹方程。

如果将平面波表达式插入

这里,我们将进一步假设

将得到

现在,我们需要对梯度算子和散度算子使用下面两个等式:


回到亥姆霍兹方程,我们就能得出结论:

变成

这表明平面波解确实满足该方程。

辐射边界条件

在边界处,我们需要一个所谓的辐射边界条件,也称为 低反射边界条件。我们可以从如下所示的平面波解中导出该辐射边界条件的最简单形式。

假设在边界处,解是已知入射波  和未知散射波 之和:

此外,假设入射波和散射波的传播方向相反,就可以设置


因此,使用任意一个符号选择


其中, 是波数, 是边界表面的向外法线矢量。

请注意,这只是一种近似,如果波的矢量与表面的法线不一致,还会产生更多反射,在声学模块中需要通过更复杂的内置辐射条件和完全匹配层(PML)处理。就这个示例而言,这里介绍的简化方法就足够了。

现在,我们需要将入射波和散射波的叠加与诺伊曼边界条件相匹配,假设 :

可以看到,要做到这一点,需要计算边界上的 on the boundary.

我们有:


因此可以写出原始的入射场和散射场: 


得到

由于我们不知道散射波,因此需要用已知量(即因变量 和入射波 . )来表述这一梯度。这样,我们就可以使用诺伊曼边界条件中的表达式。

我们可以这样做 

然后与法向量 相乘,就得到: 

为了便于识别系数形式偏微分方程的诺伊曼边界条件中的系数,我们可以将其写为 

与下式比较

可以看到


请注意,对于没有入射波的边界,我们有

在双缝实验模型中,我们使用的入射波是从左向右传播的(如上图所示),相当于正 x 方向。此外,我们假定波的振幅为 ,因此得到以下条件: 


负号是为了与前面的平面波定义保持一致。不过,在这种情况下,符号并不重要,因为选择另一个符号只是颠倒了时间的含义和波矢量的方向。由于在频域中任何一个方向都是有效的解,因此两个方向都会得到相同的结果。不过,如果运行动画,就会发现改变符号会改变传播方向,或者等同于改变时间方向。

下图显示了输入和输出边界条件的设置。

The COMSOL Multiphysics UI showing the Model Builder with the Flux/Source 1 boundary condition selected, the corresponding Settings window, and the double-slit model in the Graphics window. The COMSOL Multiphysics UI showing the Model Builder with the Flux/Source 1 boundary condition selected, the corresponding Settings window, and the double-slit model in the Graphics window. -x +x 方向传播的入射波 通量/源 边界条件的设置。

The COMSOL Multiphysics UI showing the Model Builder with the Flux/Source 2 boundary condition selected, the corresponding Settings window, and the double-slit model in the Graphics window with more 3D visuals. The COMSOL Multiphysics UI showing the Model Builder with the Flux/Source 2 boundary condition selected, the corresponding Settings window, and the double-slit model in the Graphics window with more 3D visuals. 出射波边界的 通量/源 边界条件的设置。

网格划分与求解

在求解亥姆霍兹方程时,必须使网格足够精细,以解决波的振荡问题。根据经验,每个波长的网格应包含 5 到 6 个二阶单元。但在本例中,我们将设置每个波长 4 个二阶单元,以降低模型的计算要求。在这种网格密度下,干涉图开始显现,并且与使用更细网格的结果非常接近。所使用的求解器是一种带偏移拉普拉斯预条件器的几何多重网格法,其中偏移值 0.8 是一个很好的偏移系数。有关该求解器的更多信息,请参阅 COMSOL Multiphysics Reference Manual。请注意,对于声学模块中的 压力声学、频域 接口,提供了合适的求解器设置作为预定义求解器建议,因此,通常无需更改求解器设置。

本示例中,在一台中等功能的工作站上计算时间约为 1 小时,需要约 31 GB 内存。如果您没有足够强大的计算机,可以下载并使用本文提供的相应二维模型,所需的求解时间为 2 秒,大约 1.5 GB 内存。

The COMSOL Multiphysics UI with Mesh 1 selected in the Model Builder window with the settings open and the meshed double-slit model in the Graphics window. The COMSOL Multiphysics UI with Mesh 1 selected in the Model Builder window with the settings open and the meshed double-slit model in the Graphics window. 网格需要足够精细,以解决波的振荡问题,在本例中约为 l/4,其中 l 为波长。

结果

结果显示了狭缝后的经典干涉图。狭缝后的振幅明显下降,而狭缝前的振幅则进一步增大,因为大部分波都从狭缝壁上反射回来。

The COMSOL Multiphysics UI showing the Model Builder with Slice 1 selected, the corresponding Settings window, and the model in the Graphics window. The COMSOL Multiphysics UI showing the Model Builder with Slice 1 selected, the corresponding Settings window, and the model in the Graphics window.
The COMSOL Multiphysics UI showing the Model Builder and Settings windows and a close-up of the model's interference pattern with blue and red amplitude maxima. The COMSOL Multiphysics UI showing the Model Builder and Settings windows and a close-up of the model's interference pattern with blue and red amplitude maxima.

两种不同视角下的偏微分方程解。为了使干涉图更加突出,可视化解被限制在 -1 和 +1 之间。


在狭缝后面的屏幕上,干涉图更加清晰可见。在图中,我们可以看到一些蓝色和红色的振幅最大值,以及白色的振幅最小值。蓝色和红色的最大值反映了相移 180 度后导致的振幅符号变化。

The COMSOL Multiphysics UI showing the Model Builder with Surface 1 selected, the corresponding settings, and the Graphics window showing an outline of the model and the interference pattern in blue, red, and white. The COMSOL Multiphysics UI showing the Model Builder with Surface 1 selected, the corresponding settings, and the Graphics window showing an outline of the model and the interference pattern in blue, red, and white. 屏幕上显示的干涉图案


相应的二维模型显示出大致相同的干涉图,但振幅不同。二维模型大致相当于 “从上方” 观察三维模型,但狭缝在平面外方向无限延伸。

The COMSOL Multiphysics UI showing the Model Builder window with Surface 1 selected, the corresponding settings, and a close-up of the model's interference pattern for a 2D geometry, visualized as a square with red and blue lines increasing in waviness from left to right. The COMSOL Multiphysics UI showing the Model Builder window with Surface 1 selected, the corresponding settings, and a close-up of the model's interference pattern for a 2D geometry, visualized as a square with red and blue lines increasing in waviness from left to right. 相同的方程,但求解的是二维几何模型。


您可以使用 压力声学,频域 接口设置相同的问题,并将流体密度和声速均设为 1.0。相应二维模型给出的结果几乎相同;不过,由于 压力声学,频域 接口采用了更为复杂的 柱面波辐射 边界条件,因此结果会略有不同。

复值量

在频域建模时,所有场量都是复值。复值场的参数或角度包含波的相位信息,而绝对值或模量则代表波的振幅。

您可以在任何结果图的表达式栏中使用以下函数来计算相应的量:

  • abs() 用于计算绝对值
  • arg() 用于计算复相角,或参数
  • real() 用于计算实部
  • imag() 用于计算虚部

下图显示了模型右侧部分的绝对值和相位。

The COMSOL Multiphysics UI with Surface 1 selected and the Graphics window showing the absolute value of the field behind the double slit in blue, red, and white. The COMSOL Multiphysics UI with Surface 1 selected and the Graphics window showing the absolute value of the field behind the double slit in blue, red, and white. 双缝后场的绝对值的视图。

The phase angle visualization of the field behind the double slit, shown as a half-circle with blue, red, and white lines. The phase angle visualization of the field behind the double slit, shown as a half-circle with blue, red, and white lines. 双缝后场相角的视图。

特征值方程

COMSOL Multiphysics® 为特征频率分析提供了大量内置接口和相关研究类型。不使用任何附加产品的情况下,您可以使用声学和结构的特征频率分析。使用 一些附加产品,您可以使用各种类型特征频率分析的内置接口,例如,在处理电磁和压电谐振设备时可以使用这些接口。根据应用的不同,这些内置接口的研究类型有不同的名称,如 特征频率、特征值模式分析,但本质上,它们都是特征值方程的各种公式。

出于教学和研究的目的,您还可以使用 数学 接口求解自己的特征值方程,包括亥姆霍兹方程。为此,您需要选择 特征值 研究类型,而不是 稳态。对于前者,您还应设置希望求解器能找到的特征值和特征函数的数量。

系数形式偏微分方程 的特征值版本为:

其中, 是特征值, 是相应的特征函数,也称为 特征模式 或简称 模式。通过选择 特征值 研究类型,您将自动获得这种形式的 系数形式偏微分方程

为了理解这个方程的来源,我们进行了与亥姆霍兹方程的推导类似的谐波解假设。不过,在这种情况下,惯例是假设具有实值指数:

如果我们将其代入常规 系数形式偏微分方程,就会得到

接下来使用微分的定义:

将它们代入到方程中,就得到了系数形式偏微分方程的特征值版本(系数  被抵消)。请注意,这是一个二次特征值方程,要得到一个传统的线性特征值方程,只需设置 

由于软件支持复值运算,我们将自动得到分别对应实值、虚值和复值特征值的指数、正弦或二者兼有的解。当然,您也可以将方程系统作为特征值方程的耦合系统来求解。

有关使用特征值方程建模的示例,请参阅我们的博客 聆听鼓的形状,以及教程案例模型 同谱鼓锥形量子点

The COMSOL Multiphysics UI showing the Model Builder window with Surface 1 selected, the corresponding settings, and the Graphics window with a drum membrane model shown in bright green with two blue spots and two red spots. The COMSOL Multiphysics UI showing the Model Builder window with Surface 1 selected, the corresponding settings, and the Graphics window with a drum membrane model shown in bright green with two blue spots and two red spots. 具有多边形边界的鼓膜的特征模态之一,来自 同谱鼓 教程模型。

扩展学习

本文随附的文件包括一个没有求解的三维模型,和根据上述 “手动” 推导使用系数形式偏微分方程和内置 压力声学,频域 接口对结果进行比较的二维模型。作为练习,您可以使用系数形式偏微分方程实现与 压力声学,频域 接口中相同的辐射条件,这可以在 柱面波辐射 边界条件的 方程 部分找到。 

The Model Builder with the Cylindrical Wave Radiation 1 boundary condition selected and the corresponding Settings window with the Study 1, Stationary setting selected. The Model Builder with the Cylindrical Wave Radiation 1 boundary condition selected and the corresponding Settings window with the Study 1, Stationary setting selected. 柱面波辐射 边界条件


请提交与此页面相关的反馈,或点击此处联系技术支持