在频域有限元法设计品质因子高的带通滤波器类 RF 器件时,可能会遇到需要设置多个频率采样点以更准确地描述通带的情况。RF 器件仿真中包含的频率采样点的数量与求解时间成正比,即频率分辨率越高,求解时间就越长。 COMSOL Multiphysics® 软件的附加产品 RF 模块提供了2种强大的仿真方法,可以帮助提高这类器件的仿真效率。
编者注:这篇博客最初发布于 2016 年 7 月 4 日。现已更新,以反映软件的后处理新功能。
在今天的博客中,我们将讨论 2 种仿真方法:渐近波形估计(AWE)法和频域模态(FDM)方法。这两种方法都旨在帮助用户解决采用超精细频率分辨率,或通过常规的 频域 研究运行超宽带仿真时,求解时间过长这一常见问题。当涉及描述具有单一谐振或无谐振的平滑频率响应时,AWE 方法非常有效。而 FDM 方法则适用于快速分析多级滤波器,或者目标通带内有多个谐振的大量元件的滤波器。接下来,我们将讨论这两种方法的典型设置和应用场景。
需要说明的是,AWE 和 FDM 方法几乎都不依赖于所选的频率步长。您可以自由地减小频率步长的值,获得分辨率良好的结果绘图,而不会出现明显的速度减慢或额外的内存消耗。不过,这种做法也存在缺点:降低频率步长值可能会影响最终解中保存的数据量。在本文末尾的数据管理部分,我们将给出能显著减小输出文件大小的建议。
请注意,在使用精细分辨率进行 AWE 或 FDM 计算之前,最好先使用较粗的频率分辨率运行一个初步的 特征频率 和常规的 频域 仿真。这可以帮助您快速地估算谐振位置,总体了解系统的频率趋势,包括实际通带和所需的频率分辨率。
AWE 是一种先进的降阶模拟技术,由于其数值特征和数学算法技术性太强,我们在此不过多赘述,只演示如何在 RF 模块中使用此方法。 自 COMSOL Multiphysics 6.2 版本开始,软件新增了有一个专门的 自适应频率扫描 研究步骤,可以实现 AWE 方法。使用此功能时,需要指定目标输出的频率范围,并选择一个表达式用于对AWE 算法进行误差估计。该方法求解器可执行快速频率自适应扫描,默认情况下,使用 Padé 近似。
自适应频率扫描 研究设置。使用查看默认的 渐近波形估计( AWE) 表达式。
在模拟谐振电路,尤其是包含许多频率点的带通滤波器类器件时,AWE方法非常有用。例如,COMSOL 案例库中的消失模圆柱腔滤波器模型先运行了一个常规的 频域研究,以 5 MHz 的频率步长对 3.45 GHz 到 3.61 GHz 之间的仿真频率进行初始扫频。
消失模圆柱腔滤波器教程模型 (左) 及其离散频率扫描结果 (右)。谐振频率附近的 S 参数图看起来并不平滑。
假设以更高的频率分辨率再次运行仿真,例如使用100 kHz的频率步长进行扫描,即分辨率提高 50 倍。可以预计,完成仿真所需的时长将提升50倍。但是,在此特定的示例中,使用 自适应频率 扫描研究完成仿真所需的时长几乎与频率扫描仿真所需的相同,并且能获得以100 kHz 频率步长计算的所有因变量解。
求解时间可能会在一定程度上受用户输入的 AWE 表达式的影响。任何模型变量都可以作为 AWE 表达式,只要能生成一个平滑的结果图,如高斯脉冲或平滑的曲线作为频率的函数,但最明显和典型的选择是基于s参数的全局表达式。例如,对于双端口带通滤波器,将S21 的绝对值 (abs(comp1.emw.S21)) 作为 AWE 表达式的输入可以获得非常好的结果。如果 AWE 表达式的频率响应包含无限梯度,例如在单个频率点具有良好阻抗匹配的天线的S11值,完成仿真则需要更长的时间。如果天线损耗可以忽略不计,使用 sqrt(1-abs(comp1.emw.S11)^2) 表达式可能结果更好,且能缩短计算时间。上述表达式是默认的 物理场控制 选项的 渐近波形评估 (AWE) 表达式。作为合理的检查方式,我们始终可以先以较粗的分辨率运行一个频域 扫描,绘制表达式,并选择最平滑的结果。
开始运行 自适应频率 扫描前,需要在研究中设置所需的更精细的频率步长。当仿真完成后,模拟所需时长几乎与离散频率扫描的相同。对比求解出的S参数。由于AWE求解器运行的频率扫描分辨率提高了50倍,因此其频率响应(S参数)结果绘图看起来也更平滑。使用这种方法,不仅可以节省宝贵的时间,还可以获得准确且出色的结果,而且谐振频率的定位也更加准确,如下图所示。如果您对此感兴趣,可以使用相同的分辨率运行一次常规扫描来进行验证,并检查结果是否一致。
分别运行 自适应频率 (AWE) 和离散 频域仿真 计算出的 S 参数图。使用 AWE 方法模拟的结果绘图的分辨率提高了 50 倍。
无源电路的带通频率响应由多个谐振组合而成,因此 FDM 方法是提升其仿真效率的最佳选择。此方法通常包含两个步骤。特征频率分析是模拟任意形状器件共振频率的关键。从特征频率分析中获得所有必要信息后,就可以在频域模态研究中重复使用。当需要更精细的频率分辨率来更准确地描述频率响应时,这样做能够提升仿真效率,如AWE方法所示。
为了无缝执行 FDM 分析,有几个方面需要注意。一方面,需要过滤掉 特征频率 解中可能存在的所有不需要的非物理低频结果。另一方面,需要考虑目标频率范围内所有可能影响器件性能的物理模式,以获得正确的结果。要满足这两个要求,需要对 特征频率 研究设置进行一些调整(如下方屏幕截图所示)。首先,建议选择 更大的实部 作为 围绕偏移量的搜索方法 的设置。其次,对于 搜索特征频率 设置,最低通带频率可作为一个参考值。最后,必须调整 所需特征频率数 设置(例如根据初步测试),以包含必要的模式数量。
为模型添加包含两个步骤的 频域模态 研究,图中突出显示了 特征频率 设置。
让我们来看一个 耦合线带通滤波器教程模型,尝试使用 FDM 方法进行仿真分析。先以 50 MHz 的频率步长对 3.00 GHz 和 4.20 GHz 之间的仿真频率进行扫描,运行一个常规的 频域研究 。
耦合线带通滤波器教程模型(左)及以 50 MHz 频率分辨率进行离散频率扫描的仿真结果(右)。整个目标通带内的 S 参数图看起来并不平滑。
接下来,运行 频域模态 研究,并按照上文所述设置每个研究步骤。使用分辨率提高了50 倍的频率步长运行研究,并检查结果是否有更优。与 AWE 方法一样,FDM 方法研究得到的 S 参数图看起来更平滑,包含的信息量更大。例如,它显示了最初缺失的所有 S11 参数波纹。如果您对此方法的验证感兴趣,可以运行相同分辨率的常规扫描,并检查结果是否一致。
请注意,特征频率分析包含一个集总端口,作为额外的载荷因子影响仿真,因此计算出的 S 参数的相位与常规频率模型计算的相位不同。计算结果仅和不包含相位的 S 参数值兼容,如以dB为单位的值、绝对值、反射率或透射率。
分别由 频域,模态(FDM)和离散 频域 仿真计算出的 S 参数图。使用 FDM 方法计算的结果精度提高了 50 倍。
这与本文的主题并无直接关系,但在最后一张图中,可以看到到特殊的图形标记,它可以突出显示 S11 参数图的所有局部极小值以及 S21 参数图的通带。COMSOL Multiphysics 最近对结果评估功能进行了另一项改进,即从图表中提取交互式结果,将结果的信息性和交互式价值提升到了一个新的水平。
如前所述, AWE 或 FDM 方法对如何细化频率扫描并没有真正的限制。不过,如果分辨率真的很高,解中将包含大量数据,从而导致在保存模型文件时,文件大小将大幅增加。在大多数无源RF和微波器件设计中,我们通常只对 S 参数感兴趣,因此在这种情况下,没有必要存储所有的场解。在研究的 在输出中存储 部分选择适当的选项,就可以控制模型保存计算的解。例如,可以只添加包含 S 参数计算边界的一个或多个选择。指定这些边界为 端口 或 集总端口,与整个仿真域相比,这些选择通常很小,因此总文件大小可以大幅减小。
请注意,在设置端口时,可以在指定选区后单击 边界选择 部分中的 创建选择 图标添加这种显式选择。然后,可以在相关研究步骤的 在输出中存储 部分添加由端口创建的所需的显式选择。
选择了2个 集总 端口的频域,模态 研究步骤的 在输出中存储 部分。您可以在 图形 窗口中查看这些选择的位置。
这篇博客介绍了COMSOL 软件中的 2 个强大的仿真功能,可以帮助您更快、更高效地模拟无源 RF 和微波器件。下列为 COMSOL 案例库中的一些相关教程模型,您可以浏览下载,进一步了解这些方法的使用:
文中演示的方法和研究是 通用的,不仅适用于RF仿真,在涉及如声学、力学、微机电系统(MEMS)和波动光学计算中,这些方法也尤其有用。
了解 COMSOL 中可用于RF和微波仿真的其他专用功能:
你是否曾经通宵运行大量的参数化扫描,第二天早上却发现参数化求解器仍在运行?你或许希望在等着最后几个参数的收敛的时候,能够查看已计算好的参数解。批处理扫描 功能是解决上述问题的有效方法,计算好的参数化解会自动保存为文件,便于打开进行可视化及结果评估。
编者注: 这篇博客最初发表于 2016 年 2 月 2 日,现在已经更新用于反映软件的新特征和新功能。
在以前的一篇博客文章中,我们探讨了批处理扫描中任务并行的附加值。今天,我们将讨论批处理扫描的另一个重要功能:在求解过程中检索参数化扫描的解。使用批处理扫描可以随时检索部分解,即使在求解器无法计算某些参数时,也可以这样做。当所研究的问题中每个参数的解都独立于其他所有参数的解时,就适合采用批处理扫描。
在求解器扫描过程中,许多情况下会希望查看部分结果。例如:
如果以上任何一种情况中使用了批处理扫描,那么每个参数都在一个能独立开始和停止的进程中求解。每一个求解完的参数值都被存储为一个.mph 文件,你可以在求解过程中打开任何一个这样的文件进行查看。在下面的示例中,你还会了解如何将探针结果保存到文本文件中。
为了演示批处理扫描,我们采用 COMSOL Multiphysics® 核心产品的“案例库”中的电传感器示例。这个示例模型介绍了在盒子边界施加电位差后,盒内的情况。其中产生的表面电荷取决于盒内物体的介电常数,用于判断盒内是否存在物体,甚至可以帮助确定物体的形状。例如电阻抗断层成像采用了一种类似的技术用于医疗诊断,只不过这种技术使用的是交流电。
初始模型中,物体拉伸到 0.8 米厚。在这个示例中,拉伸距离改为 0.5 米。
假设有一组十个样本物体,其形状相同,但制作材料的介电常数值不同。我们要探究的是物体及其形状的检测能力,而不管物体的制作材料是什么。十个样本的介电常数值已存储在内插表 int1 中。我们不会真的在这个表中插入任何值,只是把它作为存储和调用表列值的简便方法。(在这里,我们将内插方法从默认的线性内插 改为最相邻内插,但在本示例中结果不变。)

介电常数的表格。
现在用全局参数 sn(样本编号的英文缩写)对这个样本组添加索引。

样本编号参数 sn 作为全局参数。
此模型在“材料”节点下定义了三种材料。“材料 3”表示盒内的星形物体,“材料 2”表示另一个物体。“材料 1”对应盒内物体周围的空气。我们调用了内插表 int1,使用其中的值作为“材料 3”的材料属性定义中星形物体的介电常数。使用语法 int1(sn)。请注意,这里没有考虑单位,因为介电常数没有单位。
为了监控星形物体上方的表面电荷,我们在上表面的位置 x = 1.5,y = 1.5,z = 1.0 处定义了一个“边界点探针”。要快速定义此位置,只须在上表面靠近物体上方的大致位置处单击,然后在设置 窗口中手动调整坐标值。
至于“点探针表达式”,我们选择用变量名 es.nD 和单位 nC/m^2 来表示表面电荷的大小(模值)。

单位为 nC/m^2 的表面电荷的 点探针表达式
稍后,我们会将此探针的输出写入文本文件。为此,单击更新结果。这一操作会生成派生值 和表格项。

探针的 更新结果 按钮
默认情况下不会显示批处理扫描选项。要启用该选项,在模型开发器的工具栏中选择显示更多选项。在显示更多选项 对话框选择研究>批处理和集群。
如果右键单击研究 节点,可以在列表中选择批处理扫描 (单次运行,选择批处理,不要选择批处理扫描)。

从 研究菜单中选择 批处理扫描
在如何定义扫描范围方面,批处理扫描与参数化扫描相似。在这里,我们使用整数 1 到 10 来定义参数 sn 扫描时的步长。

批处理扫描的参数范围。
批处理扫描 模型树设置 窗口的批处理设置 栏中包含了用于控制结果的设置。

控制批处理扫描的设置。
默认文件名为 batchmodel.mph,用于自动创建一个 MPH 文件序列,其中的每个文件对应于扫描中的每个参数。文件名可以更改,不过对于此演示示例,我们仍保留此文件名,生成的MPH文件名将分别为 batchmodel_sn_1.mph,batchmodel_sn_2.mph,……,batchmodel_sn_10.mph。稍后我们会探讨这其中的每个文件为何是一个完整的模型,可以单独打开并执行后处理。
扫掠前 一栏有两个选项:清除网格和清除解。我们清除了这两个复选框,因为只有在执行远程集群计算或云计算时,这两个选项才真正有用,因为这时我们希望经网络传递的文件尽可能小(只有使用网络浮动许可证时才能这样做)。
在扫描过程中 一栏有两个选项:同步解 和同步累积探针表。同步解 将存储的所有文件中的结果收集到我们要开始仿真的“主模型” MPH 文件中,最终结果与运行参数化扫描的结果极其相似。我们选择清除这个复选框,因为在这个示例中我们假定只希望查看每个结果。此外,如果扫描的数量过于庞大,则收集全部结果可能要消耗大量的时间和内存。同步累积探针表 保持选中,表示对探针的输出结果进行累积,与完整的求解信息相比,收集这种信息非常轻松。
在扫掠后 一栏中,我们勾选输出模型到文件 复选框,这确保了自动保存的 MPH 文件包含解(对应每个参数)。
下一个设置是存储所有这些文件的目录(此处是 C:\COMSOL)。
如果你有网络浮动许可证,并且希望使用远程安装的 COMSOL 软件执行这一计算,那么可以使用指定服务器路径 选项。本文中,我们只讨论包括单用户许可证在内的 COMSOL 所有许可证类型都能使用的功能。
要将探针数据保存到文件,不能使用常规的探针表。而要使用一种特殊的累积探针表。第一步是手动添加一个探针表,即右键单击结果下的表格 节点,将表格名称改为保存的探针表。稍后,我们会通过批处理扫描在其中写入“累积探针表”的数据。当异步生成的数据要在表格中按照一定的顺序排列时,就可以使用“累积探针表”。请记住,一般而言,我们不清楚不同的参数对应的解应该按照什么顺序排列,而“累积探针表”帮我们解决了这一难题。

手动添加“保存的探针表”。
在“保存的探针表”的设置中,将存储表 设置改为模型和文件中。在本示例中,我们将探针结果保存到 C:\COMSOL\results.txt。如果扫描的数量过于庞大,则可能需要提高最大行数 的值(这通常适用于需要大量扫描的情况或瞬态解)。

“保存的探针表”设置。
在批处理扫描 设置的求解时输出 一栏中,将输出表 改为保存的探针表。这就是我们的“累积探针表”。

“保存的探针表”用作“累积探针表”。
现在可以单击计算 启动批处理扫描。求解过程中,在图形 窗口下的信息窗口中会看到一个外部进程 窗口。
通过“外部进程”窗口,我们可以了解正在运行的批处理进程及其状态的概况。在我们的示例中,共有十个这样的进程,分别对应扫描中的每一个参数。
在这个阶段,大部分的用户界面不能交互,不过可以单击进度条左侧的脱离作业,重新获得对用户界面的控制。

脱离作业 选项。
使用 脱离作业后,就看不到进程状态的实时更新了,不过这时可以对各个进程执行操作。
此时可以停止所有进程,或者单击某一行来停止该进程。甚至可以单击表中状态为完成 的进程,在另一个 COMSOL Desktop 窗口中打开它。在新打开的窗口中,可以执行任何可视化操作或后处理任务,就像通常对模型所做的那样。

选择一个完成的外部进程,单击 打开文件,即可在一个新的 COMSOL Desktop 窗口中显示结果。
要重新显示进程状态的实时更新,单击外部进程 窗口左上角的附加作业。

对 外部进程窗口附加作业。
可以使用 Notepad 等文本编辑器打开包含探针输出的 results.txt 文件。

包含边界点探针结果的 results.txt 文本文件。
在求解过程中也可以查看这个文件,从而在全部参数都完成收敛之前快速浏览结果。不仅是批处理扫描可以这样做,对于常规的参数化扫描,在表格保存为文件后也可以在求解过程中查看。
如果扫描中每次计算速度都很快,且不需要很大的内存,就如上面的示例,那么批处理扫描所需的计算时间会比常规的参数化扫描的时间长。因为采用批处理扫描时,每个参数都会启动一个 COMSOL Multiphysics 进程。如果扫描中每个参数的计算都比较费时,那么这个额外启动进程的时间就相对较短,可忽略不计。
假设我们调用的是用户定义的外部 C 语言函数,而不是内插表。再假设我们在 C 代码中犯了一个编程错误,导致一个或几个参数在扫描时出现“段错误”。这种情况下,我们仍然可以浏览 C:\COMSOL 目录(或者指定保存 .mph 文件的目录),打开其中的文件执行可视化及后处理,甚至是进一步的计算工作。
在上面的示例中,演示此类错误的一个简单方法是将其中的一个介电常数值设为零,然后启动批处理作业。介电常数为零意味着我们向求解器提供了一个定义模糊(甚至是异常)的方程(类似于 0 = 1),此时会显示一条错误消息,提示求解器找不到出错参数的对应解。同样地,仍可以打开保存的 .mph 文件并执行后处理。如果更正了表格,将介电常数为零的那一项改成非零,则可以重新运行批处理作业,而不会收到错误消息。请注意,如果错误一直存在,则对外部进程 窗口附加作业时始终会提示错误。此时,仍会更新“累积探针表”中与其他参数对应的项。更正错误后继续运行扫描,对外部进程 窗口附加作业后就可以再次访问该窗口了。
如果你在使用一台多核机器,这是现代电脑的常见配置,那么可以更改批处理 的相关设置,控制批处理扫描中可运行的并发进程数,以及每个进程可用的内核数。假如使用的是六核机器,那么可以将并发作业数 改为三,将内核数 改为二。这样设置后,可以并行求解三个参数,每个求解器进程可使用两个内核,所以对于上面的示例,仿真时间减少了一半。
如果所执行的仿真中每个参数的计算量都很少,那么可以增加并发作业的数量,使其与计算机的内核数相同。对于计算量较大的问题,应该将并发作业数保留为一,以完全利用求解器的多核处理能力。

“批处理”设置中的“并发作业数”和“内核数”。
请注意,也可以在批处理扫描 节点研究扩展 一栏下控制并发作业数。这种情况下,软件会用实际内核数除以并发作业数,自动计算出“内核数”。(要实现自动计算,务必不要勾选批处理 设置下的内核数 复选框,因此不会使用以灰色显示的数字 1。)
借助“App 开发器”,可以在用于构建 App 的模型中使用批处理扫描 节点。此时,App 充当批处理扫描的“驱动”,且无法在外部进程 窗口中看到相关信息。也无法在该窗口中看到保存的 .mph 文件,如同此 App 根本没有用户界面。运行结束后,可以打开这些文件进行传统的模型后处理工作。如果需要更灵活地创建可使用批处理扫描 的 App,可以使用一个内置的方法来包含批处理扫描 ,详细请参考 Programming Reference Manual。(注意,在这里使用“录制代码”工具的作用很有限,因为在生成录制的代码时会与实时运行的批处理命令冲突。)
COMSOL Multiphysics 的所有许可证类型都可以使用批处理扫描 功能。如果你有网络浮动许可证,则还可以使用集群扫描 这一附加功能。这两个扫描功能很相似,不过集群扫描 选项多了远程计算和集群配置等设置。“集群扫描”功能可以将大量扫描分散到一个(很可能是大型的)集群上。这种做法显著提高了效率,因为独立扫描(也称作易并行计算)所涵盖的范围通常很广。如果你已熟练掌握了批处理扫描,那么运行集群扫描也不是什么难事。
想自己探索一下这篇博客中讨论的模型吗?欢迎查看 COMSOL 案例库下载:
阅读 COMSOL 博客,了解更多关于批处理扫描和集群扫描的文章:
拓扑优化是一种优化技术,可以将模拟域划分为需要保留或删除的区域。优化在将要删除的区域中使用物理场的近似表示,因此我们应该从几何图形中删除这些区域并进行新的仿真来验证优化结果。借助 COMSOL Multiphysics® 软件,我们可以根据拓扑优化结果图创建几何图形以进行进一步分析,并可以将其轻松导入 CAD 软件中。
本文最初发布于 2017 年,更新后的内容包含了更多关于过滤器数据集的信息。
拓扑优化是一项有用的功能,它可以帮助我们找到我们无法合理想到的设计。但是,在开发设计时,这只是第一步。构建通过拓扑优化找到的特定设计可能是不合理的,也可能无法完成,因为该设计的生产成本太高或根本无法制造。
为了解决这些问题,我们可以基于拓扑优化的结果提出新的设计,然后对其进行进一步的仿真分析。但是,我们该怎么做呢?我们可能需要一个可以剖分网格的几何形状,或者需要一个代表拓扑优化结果的导入网格。事实证明,COMSOL Multiphysics 使我们可以从二维和三维模拟中轻松获得这些。在 COMSOL Multiphysics 中,我们可以直接使用它们,也可以将其导出到各种 CAD 软件平台。下面,我们首先研究如何创建几何结构,然后再讨论如何跳过创建几何的步骤,直接通过导入和修改网格进行仿真。
在 COMSOL Multiphysics 5.5 版本中,使用 “过滤器” 数据集生成拓扑优化结果的几何操作,二维和三维几何操作步骤相同。但是,创建二维几何还有一些额外的步骤。下面,我们通过 COMSOL 案例库中的最小化微通道中的流速案例教程来演示此过程。除了原始教程之外,我们还将展示:在新创建的几何体上进行验证研究时,如何导入添加的域和边界选择,以及如何重复利用这些选择。您可以点击本文末尾的链接,下载带有附加选择和验证研究的 MPH 文件,自己使用 COMSOL 创建几何结构。
该案例教程的目标是寻找多孔填充材料的最佳分布,以最大程度地减小微通道中心的水平流速。

优化后的水平速度(表面图)和速度场(流线)。黑色轮廓代表填充材料。
在上图所示的结果中,黑色轮廓线是设计变量等于 0.5 的等值线。它代表通道与填充材料之间的边界,就是我们希望合并到几何图形中的结果。在其他应用中,绘制的表达式和等值线水平可能有所不同,但是原理是相同的,即找到一个轮廓线来描述固体和非固体材料(通常是某种流体)之间的界限。
下面,我们将使用“过滤器”数据集,根据上述结果创建几何图形。对于三维拓扑优化研究,将使用默认绘图自动设置此类数据集。但是,对于二维拓扑优化,需要通过在“结果”功能区上的“更多数据集”菜单中手动设置添加“过滤器”数据集。

“结果”功能区上的“更多数据集”菜单提供了一种添加过滤器数据集的方式。
在“过滤器”节点的设置 窗口中,“表达式”处输入 dtopo1.theta,设置“下界水平: 0.5。单击“绘制”按钮将可视化显示此水平表示的区域。
右键单击“模型开发器”树中的“过滤器”节点,然后从菜单中选择“创建网格零件”。

使用“创建网格零件”属性作为从拓扑优化结果导出创建几何的第一步。
根据“过滤器”数据集的可视化结果设置“网格零件”。如下图所示,在“网格零件”>“导入”操作的“设置”窗口中,有一个复选框“导入选择”。导入的选择也列在导入设置的下方,并根据实体级别进行分类。在此示例中,原始几何图形上的选择是基于坐标的选择,用于定义拓扑优化研究的材料和物理场设置。

网格零件的 导入节点的设置窗口。所选设置“ 导入选择” 位于“设置”窗口底部列出了 选择列表。正如在“模型开发器”树中看到的那样,选择在“几何”序列和“组件1”中的“定义”下定义的。
网格导入 操作支持导入任何类型的模型选择。最常见的选择类型有“ 定义”下添加的选择,“几何”操作序列中添加的选择以及在 LiveLink
同步和网格导入时创建的选择。从 COMSOL Multiphysics 5.5 版本开始,我们在导入 CAD 文件时,还可以根据材质、颜色、对象(实体)和图层自动创建选择。
导入网格之后,可以使用例如“分割实体”操作来创建更多的实体,或者使用“连接实体”来减少实体,从而对其进行修改。也可以在创建几何之前使用自适应操作修改网格,如导出和导入拓扑优化的钢钩教程中所示。对于三维网格,我们可以直接将网格导出为与 COMSOL Multiphysics 和 CAD 软件兼容的格式,甚至可以直接用于 3D 打印。支持外部软件使用的文件格式是STL、3MF和PLY格式,它们是 3D 扫描和 3D 打印的常见文件格式。
当网格符合要求后,右键单击“网格零件”节点,然后从菜单中选择“基于网格创建几何”,这项设置在“模型开发器”几何操作序列的“导入”节点设置新组件。在之前的博客文章中,我们详细地讨论了三维案例中涉及的过程和导入设置。
导入的选择现在可以用于在验证研究中设置材料和物理场,如下图所示。

根据拓扑优化结果创建的几何。使用通过 网格零件导入的一个边界选择来设置入口边界条件。
我们还可以复制 MPH 文件,清除几何操作序列,添加导入操作,然后直接指向新创建的网格零件。这样,只需确保选择已正确更新,就可以再次使用物理场设置。
从 COMSOL Multiphysics 5.5 版本开始,我们直接使用从“ 过滤器数据集”创建的网格,而不必生成几何。这种操作可以适应曲面网格以提高网格质量,在需要时创建域并构建自由的四面体网格,所有这些都基于导入的网格。以教程导出和导入拓扑优化钢钩的已求解结果开始,按照以下步骤进行操作:
添加一个新的三维组件 然后来到组件3 的网格 4。注意,也可以转到两个现有组件中的任何网格,然后选择“删除序列”以重复使用已经设置的物理场。在选择的组件中,添加一个网格导入操作并设置源:过滤器数据集和数据集:过滤器1,如下图所示。默认情况下,将选中“导入选择”复选框,以方便设置验证研究的物理场,这在上一节中已进行了讨论。这些选择列在“域选择”和“边界选择”下。对于此用途,建议仅导入边界网格单元并单独创建域网格(请参见下面的步骤),因为这样可以得到质量更好的网格。导入后将生成网格和导入的选择,如下图所示。

用“过滤器” 数据集定义的拓扑优化结果创建的网格。原始组件的选择转移到了新网格。
从“过滤器”数据集导入的网格是用于可视化的网格,因此对于模拟而言并不理想。为提高网格的质量,我们可以添加自适应 操作,并进行以下设置:解:无,表达式类型:绝对大小,大小表达式:meshsz/2,其中 meshsz 是一个已定义的参数,用于定义拓扑优化研究中的网格尺寸。

表面网格大小适应表达式 meshsz / 2 设置
使用自适应操作之前(左)和之后(右)创建的表面网格
实体信息也从过滤器 数据集转换过来,因此即使我们仅转换了面网格,也存在域。如果从文件导入表面网格,则还需要在继续下一步之前添加“创建域”操作,否则将没有域来画网格。最后,我们添加了一个自由的四面体 操作来构建域网格。要确保在“自由四面体 ”节点下方的“ 大小” 操作中设置适当的尺寸。这里,我们将预定义的网格大小设置为较细化 并构建网格。
现在,我们可以在验证研究中设置物理场了。
我们研究了基于过滤器 数据集创建几何或网格的可能性。那么,在选择这两种方式时,需要考虑什么呢?
通过创建几何,可以确保非平面用弯曲单元表示,而直接从“过滤器”数据集创建的网格只能使用边界的分段线性表示。如果我们要解决的物理场高度依赖于弯曲边界的平滑性,则可能需要考虑创建几何。此外,通过创建几何图形,我们可以自由地对边界进行网格重划分,而直接在拓扑优化结果创建的网格求解时,则只能适应边界网格。
另一方面,与仅使用网格相比,创建几何更加耗时且消耗更多计算机内存。此外,根据拓扑优化结果的形状,有时可能无法根据结果创建几何。例如,一个典型的情况是,代表较小或狭窄区域的粗糙网格,我们可能需要考虑直接在导入的网格上求解。
DXF 格式是大多数 CAD 软件平台都可以读取的二维格式。DXF 还描述了点之间的高阶多边形,因此与仅导出点相比,它通常可以更好的表示图形。
从这个几何导出优化的拓扑结构到DXF文件,我们可以按照以下步骤操作。请注意,如果要在 DXF 文件中排除域,有一个可选择步骤。
在三维模式下执行拓扑优化后,我们通常通过创建设计变量图来查看最终形状,例如等值面图。在 COMSOL Multiphysics 中,可以从以下绘图功能中导出 STL、PLY 和 3MF 文件:
如果想要导出变形图,COMSOL 软件支持在绘图特征上添加“变形”节点。

支架的拓扑优化结果。体图中的颜色表示总位移。该绘图数据可以直接用多种格式导出,以进一步在 CAD 软件中使用和进行3D打印。
将数据导出为适当的文件格式非常简单, “支架—拓扑优化案例教程中对此进行了演示。右键单击Plot Feature节点,选择添加要导出的绘图数据。在绘图 节点的结果“设置”窗口中,从文件类型下拉列表中选择STL二进制文件(* .stl),STL文本文件(* .stl),PLY二进制文件(* .ply),PLY文本文件(* .ply)或3MF文件(* .3mf)。

绘制数据导出设置。支持在 CAD 软件和 3D 打印中使用的输出文件格式为 STL、PLY 和 3MF。
3MF 和 PLY 文件还将包含所有网格节点的颜色数据。大多数 CAD 软件和 3D 打印平台都可以轻松读取导出的文件。
如果要将实际的 CAD 工程图与优化的结果进行比较,则需要以可以导入到正在使用的 CAD 软件中的格式导出数据。DXF 格式(用于 2D)和 STL,3MF 和 PLY 格式(用于 3D)是广泛使用的格式,应该可以在许多软件平台中导入。
本篇博客文章,我们讨论了以 DXF,STL,3MF 和 PLY 格式导出拓扑优化结果所需的步骤。这将使我们将 COMSOL Multiphysics 和 CAD 软件联合使用更有效地分析模型几何。
了解有关 COMSOL Multiphysics 如何满足您的 CAD 软件和拓扑优化需求的更多信息,请单击下面按钮:
阅读 COMSOL 博客了解有关拓扑优化和导出几何的更多信息:
在有限元模型中,你可能会在多种情境下遇到数值积分和高斯点的概念。在本篇博客文章中,我们将讨论在什么情况下,以及为什么使用数值积分。此外,还强调了在 COMSOL Multiphysics® 软件中检查和修改数值积分方案的方法。最后,对高斯点自由度的使用进行了说明。
目录
在计算一般域上非平凡函数的积分时,我们必须采用数值方法。数值积分也称为数值求积,其本质是用求和代替积分,其中被积函数在多个离散点被采样,可以描述为
其中 xi 是积分点的位置,wi 是相应的权重因子。积分点通常称为高斯点,但是严格来说,这种命名法仅适用于高斯求积 法定义的积分点。在 COMSOL Multiphysics 中,真正的高斯求积用于一维,二维中的四边形单元,三维中的六面体单元等积分。其他情况下,需要使用其他类似的方案。
在高斯求积算法中,需要选择积分点的位置及其权重,以便精确地对阶次尽可能高的多项式进行积分。由于 N 次多项式包含 N + 1 个系数,而具有 M 个点的高斯点规则包含 2M 个参数(位置+权重),因此可以精确积分的多项式的最高阶次是 N = 2M-1。
高斯求积对于可由一定程度的多项式很好地进行近似的积分场非常有效。一维中一阶高斯求积的积分点和权重如下表所示。积分取自归一化区间 [-1,1]。
| 阶次(M) | 精度(N) | 位置(xi) | 权重(wi) |
|---|---|---|---|
| 1 | 1 | 0 | 2 |
| 2 | 3 | ±0.577 | 1 |
| 3 | 5 | 0, ±0.775 | 0.889 (= 8/9), 0.556 (= 5/9) |
| 4 | 7 | ±0.340, ±0.861 | 0.652, 0.348 |
| 5 | 9 | 0, ±0.538, ±0.906 | 0.569, 0.479, 0.237 |
在 COMSOL Multiphysics 中,积分阶次由可以精确积分的多项式的阶次指定,仅使用偶数。对于真正的高斯点积分,如上所示,精度始终是奇数次幂。软件指定为“4”的积分阶次实际上在这些单元形函数上使用精度为 5 阶的高斯求积。
作为高斯求积的一个示例,设想一个函数
在 -1≤x≤1,-1≤y≤1 的正方形上,积分为 1。如下图所示,该函数在域上的分布相当复杂。

要积分的函数。
下表显示了不同高斯求积阶次的结果。只要函数可以用一定阶次的多项式合理地近似,积分的值就会快速收敛。
| 积分点 | 精度 | 积分阶次 | 值 | 注释 |
|---|---|---|---|---|
| 1 | 1 | 0(或 1) | 2.9958 | 仅使用质心处的值明显高估了积分 |
| 2×2 | 3 | 2(或 3) | 0 | 在 2×2 规则中,高斯点位于 |
| 3×3 | 5 | 4(或 5) | 1.1519 | |
| 4×4 | 7 | 6(或 7) | 0.9887 | |
| 5×5 | 9 | 8(或 9) | 1.0005 | |
| 6×6 | 11 | 10(或 11) | 1.0000 | |
| 7×7 | 13 | 12(或 13) | 1.0000 | |
| 8×8 | 15 | 14(或 15) | 1.0000 |
然而,多项式的最优行为高斯求积有一个缺点:不能很好地对非常不连续函数进行积分。假设我们要对如下函数进行积分:在上述相同正方形上,y < -2x – 1 时,函数值为 f(x,y) = 1,其他情况下,f(x,y) = 0。由于函数在正方形四分之一区域上的值为 1,并且正方形面积为 4,我们可以立即看出精确积分应该为 1。结果如下表所示。
| 积分点 | 值 | 注释 |
|---|---|---|
| 1 | 0 | 只有(0,0)一个点上函数的计算结果为 0 |
| 2×2 | 1 | 四分之一点的计算结果为 1,权重为 1 |
| 3×3 | 0.8025 | 两个点的计算结果为 1,权重分别为 |
| 4×4 | 1.2269 | 五个点的计算结果为 1 |
| 5×5 | 1.0325 | |
| 6×6 | 1.0918 | |
| 7×7 | 0.9892 | |
| 8×8 | 0.9961 |

4×4 积分点的情况。橙色表面是函数值为 1 的区域,绿色高斯点是对积分值有贡献的点。
从表中可以看出,计算这种不连续函数的精确积分是非常重要的。纯属偶然,2×2 积分方案给出了精确的答案,但收敛完全不单调。
为什么这很重要?在有限元分析中,你可能会遇到呈现明显局部梯度的场,例如相变问题或固体力学中塑性开始时的问题。在包含这种突变的单元上计算的积分可能具有显著的离散化误差。此外,解的收敛性也会减弱。当单个高斯点改变其状态时,解的微小变化可以显著改变计算残差。
在这种情况下,选择一个比用于将场离散化的形函数默认值更低的多项式阶次可能更好。较低的分辨率可以通过使用更密集的网格来补偿,其结果是不可避免的突变将被局限在具有较少积分点的较小单元。
此外,如果你在后处理过程中计算不连续函数的积分,要记住,数值积分收敛可能很缓慢。
在每个有限元内,有各种表达式需要进行积分,以便形成刚度矩阵、质量矩阵、载荷矢量和残差等。以固体力学为例,标准弱(或变分)公式对应于虚功原理:内应力作用于虚应变变化所做的虚功等于外力作用于相应的虚位移变化所做的虚功。
这里,波浪号(〜)表示虚变化。在 COMSOL Multiphysics 的表达式中,它由 test() 运算符表示,其中包含体积力 f 和边界牵引力 t,也可能还包含其他类型的贡献。左侧将贡献于刚度矩阵,而右侧将贡献于载荷矢量(假设力与位移无关)。
为了检查 COMSOL Multiphysics 中有限元实现的公式,你需要启用方程视图。

打开 方程视图。
如果我们在固体力学 接口中查看材料模型(比如线弹性材料)下的方程视图,会看到一个名为弱表达式 的栏,你可以从中看到用于形成各种矩阵的表达式,例如,刚度矩阵。
在上图中,你可以看到积分阶次的文本框,本例中,值为 4。COMSOL Multiphysics 中描述积分阶次的数字是可以精确积分的多项式的最高阶次,默认的积分阶次基于用于描述场(本例中为位移)的形函数的阶次。这里使用了默认的形函数阶次——二次,因此应力和应变在单元上基本上呈线性变化。所以,应力和应变变化的乘积是二次的,这表明 4 阶可能超过必要程度。为什么选择这个值将在下文讨论。
第二个例子,我们来看固体力学 中的边界载荷。
这里,积分阶次也是 4。由于位移形函数是二次多项式,这意味着应该可以精确地积分牵引力不超过二次变化的载荷贡献,因此牵引力与位移变化的乘积是 4 阶。
只有当单元具有理想形状(例如,没有弯曲边界)时,上述讨论内容才完全正确。如果你深入研究这个理论,积分实际上也会包含局部比例因子(雅可比),它来自实际单元几何结构与名义单元几何结构之间的转换。例如,如果在二维四边形单元上进行积分,则在理想正方形 -1≤ξ≤1,-1≤η≤1 上进行数值计算,
\displaystyle \int_{\Omega_e} f(x,y)\;dA = \int_{-1}^{1} \int_{-1}^{1} f(\xi, \eta) \left | \dfrac{\partial \mathbf x}
{\partial \boldsymbol \xi}
\right | \; d\xi d\eta
雅可比通常是一个有理函数(分子和分母都是多项式),所以这种数值求积法甚至可能无法对它进行精确积分。因此,明智的做法是在选定的积分阶次中留出一些余量。顺便提一下,雅可比效应是严重失真的单元比具有理想形状的单元表现更差的原因之一。这篇关于在 COMSOL Multiphysics 中检查网格的博客文章包含了更多关于网格质量的信息。
即使单元形函数被称为“二次函数”,它也可能(在某些情况下)包含更高阶的项。用户界面中指示的形函数阶次显示了形函数中最高阶的完整多项式。因此,使用比看起来更精确的积分规则的另一个原因是,多项式中可能存在一些高阶项。
对于某个贡献,你可能会在方程视图 中看到比预期更高的积分阶次的另一个原因是,可能需要确保刚度矩阵中的对称性。
你可以通过编辑文本框来更改方程视图 中任何弱表达式的积分阶次,这样做有两个主要原因。
第一个也是比较明显的一个原因:提高精度。假设载荷(一般来说可以是力、热通量、电流等)与单元大小相比变化很快,那么增加数值积分的阶次将会提高进入域的总力或通量的精度。但是,靠近应用边界条件的位置的局部解仍然可能不是很理想,原因是,它永远不会比单元的形函数所代表的更好。
然而,还有另一个有趣的情况:降阶积分。这意味着由于某种原因,积分阶次低于正式需要的阶次,其中一个原因是加快计算速度。在求解有限元问题时,大部分 CPU 时间花费在两个任务上:形成单元矩阵(装配)和求解大型线性方程组。求解方程所花费的时间比模型大小增加得更快,通常大约是单元数量的平方。在装配上花费的时间与模型大小成正比(实际上,与单元数和每个单元积分点数的乘积成正比)。对于非常大的模型,方程求解总是占主导地位,但对于在每个积分点有大量计算的中型非线性模型,可能值得考虑使用降阶积分。
降阶积分也是一种数值装置,有时用于消除人工刚度,这种人工刚度可能出现在某些单元公式中,这种现象通常称为锁定。在二维轴对称的壳 接口中可以找到为此目的使用降阶积分的例子。在虚功方程中,一些项采用阶次 2 进行积分,另一些项采用阶次 4 进行积分。如果在任何位置都使用完全积分,当壳厚度变小时,单元实际上会变得太硬。通过使用降阶积分,可以有意地丢弃应变能中一些有问题的项。

轴对称 壳接口的虚功贡献。
编者注:以下部分是于2023年5月4日新增的内容,包括关于 COMSOL Multiphysics 6.0 版本新功能的信息。
一些结构力学的接口包括可以直接从材料模型的设置中选择减缩积分选项。

线弹性材料设置窗口的正交设置部分。
与在方程视图中编辑积分阶次相比,这种方法有几个优点:
在“模型开发器”的定义 下,你可以创建积分算子,用来定义作为问题公式一部分的全局变量,但它们也可以在结果评估期间显式地用在表达式中。

添加积分算子。
添加积分算子时,需要进行三个主要选择:

积分算子的设置。
如果要在后处理期间计算积分,可以使用两个选项:使用积分算子(如上所述)或在派生值 下添加积分 节点。在很大程度上,选择随意。但是,在积分 节点中,你无法明确选择积分框架;它是根据数据集 节点中的框架选择推断出来的。

在结果评估期间添加积分节点。

数据集的设置,从中可以选择结果解释的框架。
如果框架选择很重要,你可能应该使用积分算子将出现细微错误的风险降至最低。如果在求解完成后添加积分算子,则必须先运行更新解,然后才能使用新算子。

更新解。
请记住选择足够高的积分阶次。特别是,如果要积分的表达式是强非线性或不连续的,更加要注意。不连续表达式的一个常见特例是布尔表达式。例如,如果在传热分析后,你想计算温度高于某个值的体积,你可以使用像 T>1066[K] 这样的被积函数,该表达式在满足条件的情况下计算结果为 1,在其他情况下计算结果为 0,因此对它进行积分将给出满足条件时的体积。但是,这两个值之间的边界通常会穿过单元。

积分精度提高后的布尔表达式积分。
如果要对多物理场模型进行扩展,有时需要添加用户定义的自由度(因变量)。执行这个操作时,你必须选择用于表示它们的形函数的类型,其中一个选项是高斯点数据。所有其他选项给出不同类型的场,这些场在单元上为连续分布,在相邻单元之间可以是连续的,也可以是不连续的。“形函数”的高斯点数据 类型完全不同,它仅在每个高斯点存储一个值,但与单元中其他位置的值没有关联。

为用户定义的因变量选择形函数类型。
当你想要存储局部状态时,高斯点数据 类型很有用。比如,在需要“记忆”的历史相关的非线性本构模型中就有这种情况。本构模型主要是在计算刚度矩阵和残差时访问的,因此在求解过程中,单元中唯一实际评估本构模型的位置是积分点。所以,将这种类型的数据准确存储在那里是有意义的。
内部使用高斯点数据的一个例子是在材料模型中存储非弹性应变,例如结构力学中的塑性和蠕变。
决定存储高斯点数据后,就需要选择单元阶次。在高斯点数据情况下,这与上面讨论的积分阶次相同。存储高斯点数据的成本(在内存和 CPU 时间方面)与一维中的选定阶次、二维中的平方和三维中的三次方成正比。

选择积分点模式。
如果要添加高斯点变量以与内置物理场接口一起使用,通常应选择与用于计算相关弱表达式的积分阶次相同的积分阶次。如果不匹配,则必须在单元中的不同位置之间传输值,这种情况下精度和性能会降低。
如果变量存储在高斯点中,无论是内置还是由你定义,都有可能需要在单元上插入这些变量。这在后处理过程中尤为重要。默认情况下,当在单元中的另一个位置求值时,高斯点变量的值只是从最近的高斯点选取的。gpeval() 算子可用于将离散高斯点数据映射到连续场。在其最简单的形式中,算子以 gpeval(gporder, expression) 形式被引用,例如, gpeval(4,solid.epe)。有关更多详细信息,请参阅 COMSOL Multiphysics User’s Guide。
为了进行说明,请设想以下示例:x 坐标(范围从 0 到 3)作为高斯点数据存储在小型三单元模型中。这是通过添加辅助因变量来实现的,如下所示。


将 x 坐标作为高斯点数据存储。
弱贡献 (myX-nojac(X))*test(myX) 只表示:“将变量 myX 设置为当前值 X。”添加算子 nojac() 是为了防止 myX 和 X 之间出现双向耦合。当你只想为因变量赋值时,使用它是一个很好的做法。
如果高斯点变量 myX 随后被绘制为曲面图(没有单元之间的平均值),结果将是不连续的。在每个单元中,高斯点变量被移动到最近的角,然后插值到单元上。相反,如果绘制表达式 gpeval(2,myX),我们将检索精确的 x 坐标分布。

高斯点变量(底部)和外推高斯点变量(顶部)图。箭头指示在结果评估期间高斯点数据默认是如何移动到拐角的。
单击下面的按钮,了解有关 COMSOL® 软件中可用功能的更多信息:
客座博主Eric Linvill(Lightness by Design 公司) 分享了对多层材料采用复合材料建模与实体建模的差异。
有多种方法可以模拟如纸板之类的多层材料。对每一层使用具有薄域的实体模型是一个显而易见的解决方案,但 COMSOL 还为复合材料建模提供了特定工具:等效单层(ESL)方法和分层理论(LWT)方法。本文中,我们将讨论这三种不同的建模方法,并比较它们的模型设置和结果。
复合材料技术专为多层材料建模而开发,而对于简单应用,实体模型就足够了。除了这里的细节之外,在之前的博客文章中有一篇用实体模型对纸板进行建模的深入讨论。
然而,纸板的多层特性非常适合复合材料建模,这就是我们关注复合材料技术的原因。COMSOL Multiphysics® 软件的复合材料模块提供了两种多层材料建模方法,与实体建模相比,这两种方法具有额外的优势:等效单层方法和分层理论方法。
在这种方法中,利用复合材料的一阶壳理论将弹性刚度和旋转刚度(即弯曲刚度)均匀化到一个平面上。单元类型是壳,这意味着每个节点(位于该平面上)在三维中有六个自由度:三个平移自由度和三个旋转自由度。
这种方法计算效率高,原因有两个。首先,ESL 去除了单元几何结构中最薄的部分(即厚度),从而消除了单元长宽比差的问题,并支持使用较粗化的网格。其次,ESL 去除了厚度上的一些自由度,同时将每个剩余平面内节点的自由度加倍,这通常会减少自由度的总数。
理论简化意味着可能会获得错误的全厚度应力和应变评估,特别是对于非线性材料响应(例如,塑性或超弹性)和/或弯曲过程中通过单元的恒定剪切应力的假设(这可以通过使用高阶壳理论选项来避免)。
在这种方法中,单元和积分点通过壳的厚度和不同层来构建。这意味着在每个节点上仅求解平移自由度(即三维中的三个自由度),从而提供了比 ESL 方法更精确的全厚度应力和应变结果,代价是仿真时间更长(原因是自由度总数更多)。
与 ESL 方法不同的是,LWT 方法对较差的单元长宽比仍然很敏感,这是因为,虚拟节点被用于模型的整个厚度范围内。本质上,LWT 方法只是一个由边界(二维几何结构)和全厚度层数据构成的实体单元,与纯实体模型相比,这可以大大缩短模型建立时间。此外,除了许多其他优点,在 LWT 方法中你还可以自由选择面内和面外方向的不同形函数阶次,这在实体单元中是不可能实现的。
下图显示了两种方法的节点和单元的直观表示,其中参考表面可以是实际体积(三维)或面积(二维)的中面、顶面或底面。

COMSOL Multiphysics 中 ESL 和 LWT 公式二维示例的节点和单元。黑点表示出现在 COMSOL Multiphysics 可视化网格中的节点,橙色点表示 COMSOL Multiphysics 在求解过程中使用的虚拟节点,其贡献出现在自由度总数中,灰色区域表示多层结构的空间区域。
在之前关于复合材料模块的博客文章中,了解更多关于在 COMSOL Multiphysics 中实现 ESL 和 LWT 公式的信息。
我们已经概述了复合材料技术,现在我们比较一下 COMSOL Multiphysics 中纸板或任何其他多层材料的三种不同建模方法:实体单元;等效单层方法(即含多层材料的壳单元)和分层理论方法(即多层壳单元)。
纸板模型类似于之前纸张力学博客文章中的模型,但中间层的尺寸为 300 微米而不是 200 微米(顶层和底层仍为 100 微米)。
为了将这三个模型相互比较,我们需要在所有三个模型中以一致的方式设置网格和形函数。请注意,如前所述,等效单层方法支持使用较粗化的网格,同时保持良好的单元长宽比,原因是全厚度几何结构已被移除并替换为单个表面。但是,出于基准测试的目的,对于平面内的所有三个模型,网格被控制为完全相同。在 x 和 y 方向都使用 1 mm 的网格单元长度。

所有三个模型的面内网格,从左到右:实体、ESL 和 LWT。所有三个网格是相同的。
对于三个模型,面外方向的几何结构和网格定义不同。实体模型由代表三层折叠箱板(FBB)的三个矩形域组成,有五个网格单元。对于 ESL 模型,几何结构是一个边界,整个厚度范围只使用一个单元。LWT 模型也利用了边界几何结构,但是在下面所示的多层材料表中使用并定义了贯穿厚度范围的五个单元。
厚度方向上多单元模型的面外网格;实体全厚度网格在空间中显示(三个域和五个网格单元)。LWT 模型的图层显示在全局材料节点下的多层材料节点中。
除了具有一致的面内网格,模型还必须具有相似的形函数,以便进行并排比较。多层壳 公式处理 serendipity 形函数的方式与实体 公式不同,因此每个模型的形函数都设置为二次拉格朗日函数。实体模型和 LWT 模型在厚度范围有五个单元。对于二次形函数,这意味着实体模型和 LWT 模型在整个厚度范围总共有 11 个节点。ESL 模型在整个厚度范围只有一个节点(比实体模型和 LWT 模型少 11 倍),但每个节点和虚拟节点的自由度也是其他模型的两倍。
因此,对于这个特定示例,ESL 模型的自由度数应是实体模型和 LWT 模型自由度数的 2/11(或 18.2%)。下表显示了三个模型的自由度数,其中 ESL 模型与实体模型的自由度精确比率为 2/11。自由度越少,通常表示仿真时间越短。ESL 模型也很有用,原因是你可以使用较粗化的网格。然而,为了直接比较,我们将为每个模型使用相同的网格大小。
| 模型 | 自由度(DOF) | DOF /(实体模型 DOF) |
|---|---|---|
| 实体 | 256,641 | 100.0% |
| 等效单层(ESL) | 46,662 | 18.2% |
| 分层理论(LWT) | 256,641 | 100.0% |
所有三个模型的自由度以及每个模型的自由度除以实体模型的自由度。
这些模型使用与上一篇博客文章相同的材料属性和空间材料变化参数。下图显示了所有三个模型的横向(CD)弹性模量的空间变异性,它们都涉及相同的空间材料可变性场(即,所有三个模型都经历完全相同的材料可变性)。请注意,ESL 和 LWT 模型的弹性模量是用特殊绘图工具多层材料切面 绘制的。

所有三个模型的横向弹性模量。从左到右:实体、ESL 和 LWT。
纸板一端固定(y = 0),另一端施加面外(z)位移(y = 50 mm),这对应于 Lorentzen & Wettre(L&W)弯曲试验期间的 15°弯曲旋转(在第 1 部分中进一步解释)。利用 10 个载荷步来得出解。
下表提供了 15°弯曲旋转的弯曲力。变形过程中产生的应力和应变场是不对称的,这是因为材料属性本身是不对称的(如上图所示)。三种方法的横向应力场如下图所示。如下面的表和图所示,所有三个模型给出的结果非常相似。
| 模型 | 弯曲力(mN) |
|---|---|
| 实体 | 247.7 |
| 等效单层(ESL) | 248.5 |
| 分层理论(LWT) | 250.3 |
下表给出了三个模型的求解时间。尽管与实体模型相比,ESL 模型的自由度数量为 18%,但其求解时间仅是实体模型所需时间的 27%。这种性能损失是由于 ESL 模型需要求解实体模型不需要求解的附加方程(例如,利用复合材料的一阶壳理论将层均匀化为弹性刚度、弯曲刚度和的恒定剪切)。
LWT 模型比实体模型花费更多时间。大部分额外的求解时间用于刚度矩阵组装所需的额外步骤,尤其是每个高斯点的材料变化插值。虽然仿真所需时间增加,但 LWT 模型仍然比实体模型具有总时间优势。LWT 模型的几何结构只是一个边界,而实体模型的几何结构是三个域,因此创建和应用正确的网格参数需要更多的时间。所以,与实体模型相比,利用 LWT 模型仍然可以节省大量时间(从概念到结果)。
| 模型 | 求解时间 (s) | 求解时间/(实体模型求解时间) |
|---|---|---|
| 实体 | 152 | 100% |
| 等效单层(ESL) | 41 | 27% |
| 分层理论(LWT) | 231 | 152% |
所有三个模型的求解时间。请注意,由于固有的易用性,ESL 和 LWT 模型的总建模时间(包括几何结构创建、网格设置和求解)比实体模型短。
所有三个模型都成功地生成了相同材料和材料变化的弯曲试验结果。使用实体模型作为基线,ESL 模型求解速度稍快,但没有精确的全厚度结果(此处未显示)。与实体模型相比,LWT 模型给出了完全相同的应力和应变结果,建模时间显著缩短,计算时间略有增加。LWT 模型计算时间的增加归因于组装刚度矩阵所需的额外时间。
除了对多层结构进行建模之外,ESL 和 LWT 模型还支持实体模型难以实现或不可能实现的功能:
无论如何,这三个模型都能够处理纸质材料和其他多层材料的线弹性模型,包括空间材料变化。
COMSOL 认证的顾问公司 Lightness by Design 为纸张力学的前沿课题提供仿真开发和执行服务,并提供复合材料结构方面的专业知识。
Eric 是 COMSOL 认证的顾问公司 Lightness by Design 的顾问,他对纸质包装材料和航空航天结构特别感兴趣。虽然这两个方面看起来像是随机组合,但这两种应用之间的共同联系是使用轻质承重结构和纤维基材料。Eric 在航空航天结构工程方面的背景包括作为顾问的项目经验和在美国安柏瑞德航空大学的正规学士教育。在接受航空航天领域的初步教育后,Eric 在瑞典斯德哥尔摩的 KTH 皇家理工学院攻读固体力学博士学位,重点研究纸张力学,随后在造纸公司 WestRock 的研发部门工作了一年半,从而开启了令人兴奋的纸张旅程。 此后,他一直担任 Lightness by Design 公司的顾问,除了咨询服务之外,他还继续开发有限元仿真工具(全面的用户定义材料和虚拟实验室),以便对纸制品和工艺进行高级仿真。
今天,我们邀请西班牙巴塞罗那自治大学(UAB)的客座博主 F. Xavier Alvarez 跟我们一起探讨如何使用一种新的理论架构和 COMSOL Multiphysics® 软件在纳米尺度上进行传热建模。
随着电子工业的发展,越来越小的电子设备出现在人们的生活中,这些设备会产生热量,因而需要进行有效的散热。观察证据表明,在较短的尺度上,热量比傅立叶定律预测的更难提取,这说明它的局限性。我们目前的研究重点是如何解决这个悬而未决的问题。
1822 年,傅立叶发表了《热的解析理论》(Théorie Analytique de la Chaleur)。从那时起,傅立叶定律成功用于描述各种系统中的许多不同的实验观察,并且成效显著。傅立叶定律由热梯度与热通量之间的简单关系式来描述:
(1)
其中是导热系数,这是一种材料属性。
在过去几十年间,有证据表明,方程(1)在分析特征长度 L 小于热载体(声子)平均自由程的器件时是不正确的。观察到的热流比傅立叶定律预测的要小得多,从而降低了这些部件释放多余热量的能力。这个问题常常通过使用取决于特征长度 的有效导热系数来解决,该特征长度必须根据经验确定。
通过动力学理论,我们能够正确预测简单几何结构中的导热系数,但目前该理论在电子器件复杂几何结构中的应用尚不可行。
在 UAB 开发的动力学集体模型(kinetic-collective model,简称 KCM)是一个理论架构,其重点是描述纳米和微米尺度的传热,以及通过微观计算方法来计算方程中出现的相应传输参数。只有通过这种计算组合,我们才能得到预测模型。
傅立叶定律的一阶修正为 Guyer-Krumhansl 方程:
(2)
该方程与通量的边界条件相结合。出于教学原因,这里我们使用最简单的版本:
(3)
请注意,方程(2)中的新拉普拉斯项将傅立叶定律变为类似于粘性流体的斯托克斯方程的定律。因此,遵循方程(2)的特性通常称为声子流体动力学。这个新术语引入了热粘度,它会降低通量不均匀区域的有效电导率。在这些区域,热通量与温度梯度不再平行,这对热量分布和温度分布有重要影响。
使用像纳米线这样的简单几何结构来分析方程(1)和方程(2-3)的不同结果是非常有用的。在下图中,我们可以看到半径为 500 nm 的纳米线内部的热流,其一端被加热,另一端被冷却。分别在导线的两端施加冷热温度,并为通量应用周期性条件,以避免边界对分布产生影响。所有情况下的温度分布都是相同的:纵向梯度恒定,横向没有变化。针对粘度值增加的范围(从傅立叶定律()到
nm 绘制通量。我们很容易观察到主要的区别:方程(1)给出了横截面上恒定的通量,而方程(2-3)给出了弯曲的流动曲线。

半径为 500nm 的纳米线内部的纵向热通量。三张幻灯片显示了基于方程(2-3)得到的热通量分布。均匀温度分布对应于 (相当于傅立叶定律),中间的一张对应于
nm,左边一张对应于
nm。总热通量随
的增大而减少,导致纳米线的有效电导率降低。
出现热通量曲率的原因是,边界的影响减少了宽度为 的区域中的流量。当
小于线半径(
)时,只有边界附近圆柱壳(称为克努森层)中的流动受到影响。在克努森层之外,对应于傅立叶极限的热流值重新恢复。
当特征长度与线半径的阶数相同时,克努特森层增厚,直至中心位置也能观察到这种效应为止。此时,样品横截面各处的流量都减少,并且流动剖面与粘性流体的抛物线泊肃叶(Poiseuille)流动相似。
正如我们之前指出的,确定纳米线中热输运方程的最重要的方面是不可能通过实验获得横截面内的热通量分布。唯一可测量的是有效导热系数,定义为横截面上的平均通量除以温度梯度。这使我们无法从实验上区分我们观察到的是根据 Guyer-Krumhansl 方程预测的现象,还是仅仅根据方程(1)预测的有效导热系数降低的现象。

使用 nm 的 KCM(黑线)和傅立叶定律(蓝线)得出的线径上的通量分布。
上图显示了线径上的两种不同通量分布。黑线是使用非局部长度为 100nm 的 KCM 的结果,蓝线是傅立叶分布。由于这两个系统的平均通量相同,它们的有效导热系数也相同,因此得出的实验结果相同。
为了确定这个方程是否有效,我们需要进行空间分辨测量,近年来人们常使用热反射装置进行测量。
反射率 是指示物体表面反射电磁波能力的材料属性。这个量值的一个重要特征是它随温度变化,这便于热反射成像(thermoreflectance imaging,简称 TRI)测量,其中从表面反射的光用于获取其温度。
美国普渡大学的比尔克纳米技术中心(BNC)最近开发了一种热反射装置,用于测量热量从顶部不同亚微米长度的金属线释放时,硅衬底的温度。结果如下所示。
![]()
使用 KCM 获得的由亚微米金属线加热的硅衬底中的热通量(白色箭头)和温度梯度(黑色箭头)的方向。由于热通量与温度梯度矢量的方向不同,因此线附近的热粘度非常重要。
BNC 和 UAB 小组尝试解决的问题是,这个实验是否可以用有效的傅立叶定律来描述,或者我们是否需要使用改进的模型。几何结构的复杂性明显高于前一种情况,因此,重要的是有一种工具可以求解这种情况下的热特性,这就需要将简单的 KCM 理论方法与 COMSOL Multiphysics 中强大的有限元求解器结合使用。
借助 COMSOL Multiphysics,我们能够完整地定义实验,包括衬底、氧化物绝缘层和顶部金属线的一致性。与玻尔兹曼输运方程方法相反,这些简单的方程可以很容易地在全三维模型中求解。
可以看出,傅立叶定律不能用导热系数的标称值、拟合值或有效值来描述整个数据集。

根据热反射成像(TRI)测量(星号)获得的温度分布图,与在电导率值增加的情况下根据傅立叶定律获得的预测数据、在电导率降低以适应加热器温度的情况下根据傅立叶定律获得的预测数据(绿色)以及根据 KCM 获得的预测数据(蓝色)进行比较。
在上图中,红线是使用傅立叶定律得到的结果,衬底的标称值为 λ。在本例中,我们观察到加热器管线的温度被低估。如果我们使用傅立叶定律和 λ 的修正值来拟合加热器温度,如绿线所示,我们会在尾部得到一个高估值。
上述示例中无法预测全部数据,这清楚地表明傅立叶定律不是描述这些尺度下热输运的有效模型。
图中的蓝线显示了该几何结构的 KCM 预测结果。由此可见,该模型能够利用导热系数的标称值 λ=150W/mK 以及非局部长度 nm 来预测温度计和尾部的温度分布。
这些结果说明了像 COMSOL Multiphysics 这样的工具如何在研究中用于理解纳米尺度的传热等传输过程的特性。我们预计在未来几年里,使用这种组合方法来模拟纳米尺度的传热会有新的进展。
阅读研究人员的完整论文,了解关于这一主题的更多信息:P.Torres、A.Ziabari、A.Torell、J.Bafaluy、J.Camacho、X.Cartoix、A.Shakouri 和 F.X.Alvarez,“Emergence of hydrodynamic heat transport in semiconductors at the nanoscale”,Phys. Rev. Materials,2018 年 2 月,076001。
F.Xavier Alvarez 是巴塞罗那自治大学物理系副教授。他的研究课题是传输现象和非平衡态热力学。在过去的几年里,他一直致力于研究纳米尺度的热现象。这项研究的主要目标是得到更有效的输运方程,提高电气工程界所使用的仿真工具的可预测性。如今,他是 UAB 纳米传输小组的知识产权工程师。
我们已经确定数字孪生概念可不仅仅只是一种炒作。在本篇博客文章中,我们将讨论如何结合使用高保真多物理场模型与轻量化模型和测量数据,来创建可用于理解、预测、优化和控制真实系统和真实系统模型的数字孪生模型,下面我们以混合动力汽车的电池组为例进行说明。
传统的基于模型的设计需要进行模型验证和确认,这可以用来优化设备或过程的设计或运行。我们通常通过比较实验结果和模型结果并进行参数估计来验证模型。
数学建模和仿真广泛用于设备和过程设计。
数字孪生(也称为虚拟孪生)的概念涵盖了上述基于模型设计的验证和确认步骤。不同之处在于,数字孪生意味着模型与设备或过程之间的信息传递更加紧密,而且通常是实时性的。数字孪生概念可用于设备或过程的设计、制造和运行阶段,目的是基于虚拟空间中的模型来理解、预测、优化和控制真实系统。我们可以认为数字孪生模型适用于相对复杂且成本较高的系统。我们不太可能为传统汽车的每根排气管构建数字孪生模型或管理数字孪生模型实例,这可能不会带来投资回报。然而,电池组是一个成本相对较高的系统。
在本篇博客文章中,我们举例说明了数字孪生模型在 混合动力或电动汽车电池组的设计和运行阶段的应用。
下图显示包含真实空间中物理设备的数字孪生模型概念:一个带有传感器和控制系统的电池组。虚拟空间包含模型,本例中为电池组模型。数据和信息的传递将真实空间与虚拟空间联系起来( 参考文献 1 )。
虚拟空间包含真实过程的丰富表示,以非常高的保真度虚拟地模拟真实过程( 参考文献 2 )。不仅如此,当需要较小时间尺度的结果时,轻量化模型还可用于更快的交互,我们可以不断地校准这些轻量化模型,得到高保真的模型。
在电池组案例中,数字孪生模型可以是同样包含历史数据的 电池组多物理场和多尺度系统模型,轻量化模型可以是 电池组的集总和等效电路模型。历史数据可以包含特定电池组的测量数据,包括:
它还可能包含来自同一模型的其他电池组的数据。特定电池组的数字孪生模型可称为该电池组模型的数字孪生模型实例。

数字孪生模型由一系列不同的模型构建而成,这些模型以极高的保真度一同模拟电池组的特性。
借助这些模型,我们可以使用测量数据和报告中的数据精确地表示电池组的内部条件,并提取模型中的参数。然后将这些模型用于预测电池组的运行情况,并计算可用于电池组控制的控制参数。
信息处理意味着发回控制参数,这些参数使电池组的运行适应电池的状态、驾驶员的驾驶状况以及当前的运行和驾驶条件,它还可以向电池组和驾驶员发回有关预计电池组未来运行状况和特性的报告。例如,如果存在温度过高的风险或者在电池的特定充电状态下,它可以发送在充电期间(制动期间)暂时限制最大电流的参数,还可以检测到异常电池组中的电池,并将其与电路断开。
虚拟空间中的复杂模型可能需要功能强大的计算机才能足够快地生成实时有用的结果。这意味着数字孪生模型的大部分性能可能是由通过功能强大的服务器(例如,使用云计算)远程运行的进程提供的,而另外一些进程可能在汽车中安装的控制装置中本地运行。
例如,上述轻量化模型可直接用于电池组中的控制装置。为了保持这些轻量化模型的准确性,我们可以将控制参数与较大时间尺度上计算的更丰富模型的预测数据和结果进行比较,从而实时更新控制参数。更丰富的模型可以对电池的温度分布、充电状态以及其他电化学和物理参数进行详尽的物理描述。因此,数字孪生模型可以在不同组件部署于不同平台和位置的系统中产生。
数字孪生模型与其实际对应物通常不是孤立的系统。在大多数情况下,它们是更大系统的一部分,这个系统可能还包含其他设备及相应的数字孪生模型。此外,为了优化、控制和预测设备的各个方面,真实设备可能具有多个数字孪生模型,称为数字孪生模型集合体。
举例来说,如果电池组的某些零件容易发生疲劳,我们可能想要为电池组的结构性能创建一个数字孪生模型。这可能只在更大的时间尺度上影响电池组的运行,因此这种数字孪生模型可以更松散地耦合到模拟电池组电性能的数字孪生模型中。电池组的数字孪生模型也可与混合动力汽车的发电机、电动机和内燃机的数字孪生模型交换信息。

真实系统可以与许多数字孪生模型互动,而这些数字孪生模型之间也可以互动。
较大系统中的不同部分和它们的数字孪生模型可能需要相互通信。此外,数字孪生模型可能需要从安装在不同物理位置的传感器和设备获取数据。 物联网(IoT)及相关技术可用于传感器、设备和产生数字孪生模型的计算机系统之间的通信。
机器学习(有时也称为人工智能或 AI)算法可用来训练数字孪生模型,以决定何时应查询不同设备或其他数字孪生模型的数据,何时应更新不同的控制参数,以及何时应更新数字孪生模型和真实系统的报告。因此,数字孪生模型、云计算、物联网 和人工智能 等术语是高效开发、设计、制造和运行高成本电池系统(如安装在电动汽车上的系统)的重要概念。
工程技术人员和科研人员可以使用 COMSOL Multiphysics® 软件创建极其精确的多物理场和多尺度模型。此外,该软件还能轻松组合轻量化模型,并根据较丰富模型预测的高保真特性持续更新轻量化模型。我们可以使用最先进的参数估计和优化方法不断验证模型。这种模型是数字孪生模型的关键组成部分。
为了使用 COMSOL Multiphysics 模型创建数字孪生模型,我们必须允许这些模型不断接收来自外部系统的测量数据和报告,然后将预测和控制参数传回该系统,最简单的方法是使用与 Java® 结合使用的 COMSOL API。
举个例子,COMSOL Multiphysics 模型文件可能包含代表数字孪生模型不同方面的多个模型组件。在电池组示例中,这些模型组件可以是三维高保真模型组件、微观尺度的精细电化学模型组件以及用于快速交互的集总模型组件。当模型保存为 Java® 模型文件时,我们可以从 Java® 程序中访问所有这些组件。包含在这种程序中的 Java® 模型文件可以与外部系统通信,比如通过使用动态链接库文件(dll 文件)来实现。借助 Java® 生态系统,你还可以将虚拟空间实现为一个网络服务(例如,运行在 Tomcat 内部的基于 Java® 的网络服务),该服务可以提供代表性状态传输(representation state transfer,简称 REST)API,用于与真实空间通信。
在真实空间与虚拟空间之间建立连接的另一种方法也可以通过 COMSOL Server
中的 App 和使用 COMSOL Compiler
创建的编译 App 获取。这里的限制在于,在 COMSOL Server
或已编译 App 中运行的仿真在执行过程中无法更新。但我们可以启动或重新启动执行程序,以根据事件触发的变化来更新真实物理设备和数字孪生模型;例如,文件中的更改、传感器触发的命令或操作员触发的事件。真实空间与虚拟空间之间的数据和控制参数可作为由这些事件触发的命令的结果来回发送。
数字孪生模型的概念在军事和空间应用之外刚刚开始变得切实可行,并且备受青睐。分析人员提出的一个问题是缺乏模型,以及缺乏产生高保真预测所需的建模和仿真知识( 参考文献 3 )。
许多数字孪生模型仅仅依靠对输入数据的统计处理以及对历史数据的查表来创建数字孪生模型。其缺点在于,我们很难了解和理解设备或过程中的真实情况。对于特定制造商的大量设备或过程,我们还需要非常大量的可靠数据;而对于大批量生产的成本较低的产品来说,这可能是一种可选的方法。
相比之下,多物理场模型在得到验证后即可用最少的数据在广泛的运行范围内保持精确。出于这些原因,包含某种基于模型描述的数字孪生模型是理想之选。对于电池组等高成本产品,尤其需要使用可靠的多物理场模型。
偏微分方程(Partial differential equation,简称 PDE)是表述物理定律的最精确方法( 参考文献 4)。借助 COMSOL Multiphysics,我们能够使用基于 PDE 的多物理场模型,根据最精确的描述创建数字孪生模型。
Oracle 和 Java 是 Oracle 和/或其附属公司的注册商标。
“数字孪生”这一概念仅仅是炒作,还是一个从新角度推销建模软件的把戏?在本篇博文中,我们讨论了模型、App 和数字孪生之间的区别。我们得出的结论是,虽然这个概念(相对于其最初的表述)在一定程度上遭到了误用,但它背后其实蕴含了实质性内容。
航空航天工业是最早使用数字孪生的行业之一。在一篇很有见地的论文中,Glaessgen 和 Stargel (参考文献1 )阐释了数字孪生在飞行器认证和机队管理中的应用,可以实现“持续地预测飞行器或系统的健康状况、剩余使用寿命,以及任务成功概率。”对数字孪生的描述如下:“数字孪生是已建成飞行器或系统的一个集成的多物理场、多尺度、概率仿真,它借助了现有最佳的物理模型、传感器更新和机队历史等来反映其对应的孪生实体飞行物的寿命。”
“数字孪生”一词是由美国密歇根大学的 Michael Grieves 于2011年所创造的(参考文献2 )。早在2002年,这一概念就已由 Grieves 提出,但后来又被称为“镜像空间模型”。根据 Grieves 给出的定义,数字孪生概念由真实空间和虚拟空间组成,其中虚拟空间包含了从真实空间收集到的所有信息,它还包含从微观层次到几何和宏观层次对物理设备或过程的高保真描述。数字孪生提供的这种描述应该“与物理孪生所提供的几乎没有区别。”(参考文献3 )
M. Grieves 给出的一些定义
- 数字孪生原型(Digital twin prototype,DTP):用于数字孪生实例的原型,精确的高保真模型通常是这样一个原型的组成部分。然而,这一原型还不(尚未)包括实测数据和来自特定物理设备的报告。
- 数字孪生实例(Digital twin instance,DTI):包含特定产品、设备或过程的参数、控制参数、传感器数据和历史数据的数字孪生。例如,这样的实例可以对特定战斗机中的特定发动机进行寿命预测,如上文所述。
- 数字孪生聚合(Digital twin aggregate,DTA):可能没有独立且唯一的数据结构的数字孪生集合。相反,DTI 这一组成部分可以相互查询数据。
- 数字孪生环境(Digital twin environment,DTE):用于操作数字孪生的集成多域物理场应用空间。
数字孪生概念中一个重要的要求是,它应该是对真实物理产品、设备或过程的动态和持续更新的表示,而不应该是对真实空间的静态表达。真实空间和虚拟空间从产品、设备或过程的制造、操作到处置都是相互联系的。来自传感器的信息、来自用户的报告以及通过制造和操作过程收集的其他信息,都必须连续地传输到数字孪生中。可用于设计和操作真实设备的预测、控制参数和其他变量都必须从虚拟空间连续地传回真实空间。

与传统模型相比,数字孪生在真实空间和虚拟空间之间有着非常紧密的联系。
如果我们观察喷气式飞机在运行阶段(包括态势感知阶段)的情况,飞机的传感器和控制系统可能会不断地向数字孪生发送数据。此外,飞行员还可以发送数据和报告。数字孪生可以向飞机传回控制参数和报告。因此,数字孪生的某些方面可以实时运行,并部署在飞机的不同计算机系统中,而其他要求更高的任务可能无法在真实设备上实时运行。在任何情况下,真实空间和虚拟空间之间都存在着密切的联系。
我们可以想象得到,喷气式飞机是一个极其复杂的系统,这种先进机器的高保真建模与仿真环境可能需要数百甚至上千个多物理场和多尺度模型才能准确描述。
例如,为了优化喷气飞机的性能,以及预测和控制燃烧的工作条件,喷气发动机可以用燃烧模型来描述。CFD 模型也可以与燃烧模型耦合,而燃烧模型又可以与燃料分配系统的管流模型耦合。而且,冷却系统可能需要一个特定的模型,其中管流模型可与固体传热和 CFD 耦合。此外,考虑到流场和流体所施加的力,多体动力学-流固耦合(fluid-structure interaction, FSI)模型可以预测和控制喷气发动机某些部件的运动;可以进行结构力学分析,并可将其与某些关键部件的精确微观材料模型耦合,这些关键部件则对疲劳和温度循环表现得敏感。这些模型可以连续地从以下条件获取数据:涡轮中的流量、气体混合物的成分、温度、喷气发动机的转数、振动、速度以及特定涡轮所有操作变量的历史数据——而且,仅涡轮就还有许多其他方面的数据。

通过 CFD 和传热分析,可以计算出涡轮定子上的应力和应变。这些应力使工程师能够估算出涡轮定子在因疲劳而面临故障风险之前可能承受的循环次数。数字孪生实例记录了温度循环次数,以及定子在使用寿命期间承受的最大应力和应变。
喷气式飞机的其他部件也需要同样准确的描述。飞行控制、液压、起落架和其他子系统可能有自己的数字孪生,而各数字孪生都由多物理场、多尺度模型、仿真数据、传感器数据和历史数据组成。

上图显示了战斗机中一些最重要的子系统。数字孪生由许多不同的子空间组成,而这些不同的子空间又包含飞机每个子系统的模型、仿真数据、实测数据和报告。此类系统可以用数字孪生聚合来描述。
因此,数字孪生可能由许多虚拟子空间和子系统组成,这些虚拟子空间和子系统可相互通信并查询信息,例如在数字孪生集合中。仿真数据管理系统可以协调不同的多物理场和多尺度模型之间的松散连接,如通过查询来自另一个子系统的更新信息来执行仿真。具有协同仿真功能的系统模型可用于运行需要不同子系统之间双向耦合的仿真。
高保真模型、传感器数据、历史数据和用户报告可用于产品、设备或过程的不同阶段的数字孪生。对于上述喷气式飞机的情况,数字孪生及其技术可应用于以下过程:设计、认证、制造、操作、态势感知和使用寿命预测。(参考文献1 )
高保真多物理场和多尺度模型可能需要计算机能力,并且可能需要很长的计算时间才能给出结果。然而,一些物理产品的系统可能需要实时的仿真数据;例如,用于上述喷气式飞机的控制系统和实时诊断。为了能够对来自真实系统的查询进行快速回复的目的,数字孪生必须包含能够提供快速回复的轻量级模型。
对这一简单的基准机翼剖面进行精确 CFD 仿真(LES),需要耗费数小时才能在相对强大的台式计算机上运行。而对真实机翼几何结构进行相应的仿真,则需要在超级计算机上耗费数小时的计算。这类精确的仿真只能用于验证一系列更简单的模型,比如湍流模型,再到可以实时运行的非常简单的集总模型。
轻量级模型的缺点在于它们的有效性范围是有限的。数字孪生则可以通过使用高保真模型、传感器和操作范围的报告数据来持续验证轻量级模型,以此扩大其有效性范围。轻量级模型的更新可以是按计划执行的,而当操作范围接近以前验证过的范围之外时也可以触发更新。
轻量级模型的好处是显而易见的:速度很快。通过战斗机的例子就可以发现,轻量级模型能够嵌入到控制这些子系统的子系统和计算机中。这些模型的持续更新和验证可以借助传感器和报告数据来完成,也可以通过与空军设施的超级计算机进行高速通信来完成,其中高保真多物理场和多尺度模型同历史数据和传感器数据一起得到了部署。
通过以上讨论,我们可以得出结论:大量的传感器数据、历史数据、报告、仿真数据和控制参数都必须在真实空间和虚拟空间之间发送,并存储在一个统一的存储库中。针对军用,所有这些数据资料都将在一个封闭系统内进行传输,在该系统中,喷气式战斗机使用军事通信系统与空军设施内的超级计算机进行通信。针对民用,对通信和计算的需求解释了围绕物联网(internet of things, IoT)、5G 网络、机器学习和云计算连同数字孪生一起的炒作。封闭系统中的类似要求适用于军事用途。

这些技术与数字孪生概念相结合具有真正的价值。这不仅仅是炒作!
民用方面,物联网能够传输传感器数据,并将验证和控制数据传回设备中的嵌入式系统,这一点至关重要。机器学习,亦称人工智能,它可以用来决定何时查询或更新子系统、传感器和不同的模型,以保持数字孪生和物理设备或过程的高保真。云计算可用于求解复杂的模型方程、验证模型、过滤并处理实测数据、存储并处理历史数据,并根据用户或 AI 的命令查询不同的系统和子系统。因此,这个概念有其真正的价值,而不仅仅是炒作。
显而易见,COMSOL Multiphysics® 软件可以为数字孪生高保真描述的创建提供所需的多物理场和多尺度模型。此外,COMSOL® 软件还能够使用实测数据,并结合不同的参数估计、优化和控制方法来控制和验证这些模型。COMSOL Multiphysics 还提供了模型降阶方法(参考文献4 )和集总模型方法,这些方法可用于生成并验证轻量级模型。
COMSOL Multiphysics 模型还可以包含多个模型组件,以便借助能实现非常紧密耦合的组件对系统进行建模。例如,一个系统模型可以是喷气式发动机的模型,其中包含一个用于燃料分配系统的管流模型组件、一个用于冷却系统的组件、一个或多个用于发动机不同部件的结构模型组件、燃烧和 CFD 模型组件。
在 COMSOL Multiphysics 中,借助 COMSOL API 与 Java® 一起使用 可以实现真实空间和虚拟空间之间的紧密连接。包含在模型中的 Java® 程序可以与外部系统进行通信,例如,通过使用动态链接库文件(dynamic link library files,dll-files)。得益于 Java® 生态系统,还可以将虚拟空间实现为 web 服务(比如运行在 Tomcat 中基于 Java® 的 web 服务),举例来说,这种 web 服务可以提供表征性状态转移应用程序接口(representation state transfer application programming interface,REST API),用于与真实空间进行通信。这将会是数字孪生环境的核心部分。

运行 Apache Tomcat 的 Web 服务提供了一个 REST API,可以用来在物理设备和 COMSOL App 之间建立起紧密连接,从而实现数字孪生的创建。涡轮图片由 Sanjay Acharya — Own work 提供,在 CC BY-SA 3.0 授权下使用,通过维基共享资源发布。
COMSOL Server
用来对模型和 App 进行管理,这些模型和 App 可用于查询输入文件或运算符更新所触发的仿真数据。此外,借助 COMSOL Compiler
编译的 App,可以用来接收输入数据,并以控制参数和报告的形式生成输出数据。COMSOL Server
App 和编译的 App 中的唯一局限是:在执行过程中不能对输入进行更新(这两者与上面使用 COMSOL API for use with Java® 的示例截然相反,而后者则可以实时持续接收输入数据)。
输入在一开始执行就已经完成,而在执行过程中的输出可能是连续进行的。因此,COMSOL Server
和编译的 App 的典型用法是在功能相对强大的计算机上运行高保真度描述。这些 App 可以在数字孪生中进行查询,以生成用于验证可能嵌入到产品、设备或过程中的轻量级模型的数据。
从上面的讨论我们可以得出结论,数字孪生的概念不仅仅是炒作。在设计、制造、操作甚至是处理过程中,数字孪生能够理解、预测和优化产品、设备或过程,这便是其巨大的价值所在。例如,在战斗机的例子中,数字孪生会遵循其物理对应物的产品生命周期,以相对较低的成本交付设计、控制和运行参数,以及进行安全和寿命预测。
COMSOL Multiphysics、COMSOL Server
和 COMSOL Compiler
都可以提供多物理场、多尺度和轻量级模型,以及数字孪生的验证和控制方法,所有这些都可以通过真实的多物理场功能在真实空间和虚拟空间之间提供最高的保真度!
如需了解更多关于 COMSOL Multiphysics 模型和仿真 App 如何适用于贵单位的数字孪生的使用,以及评估本软件,请通过以下按钮与我们联系:
Oracle和Java是Oracle和/或其附属公司的注册商标。
故事始于阿基米德正在处理的一桩金皇冠诈骗案。当他洗澡的时候突然有了灵感:将一个物体浸入水中,所排出的水量与该物体的体积相同,这样他就可以查出掺有杂质的黄金了。阿基米德高兴地大喊:“找到了(eureka)!”但是会有人会听到这著名的呐喊吗?通过仿真,我们可以评估共振和混响封闭空间(如浴室)的声学效果,及其对基源的响应。
当阿基米德喊出“找到了”时,如果他的声音波长与浴室的尺寸相匹配,就会产生共振。发生共振时,声音的振幅会变得非常大。在封闭的空间中,不同的频率下会有许多共振或声学空间模式,每种模式都有节点和波腹:节点的声压为零,而波腹位于声压最大的地方。

阿基米德在浴缸中高喊“找到了”,据说他在浴缸中创造了这个词。图片由 John Leech 通过维基共享提供,不受专利权限制。
共振通常与较大的响应相关联。然而,如果单极子位于节点上,则不会产生噪声;单极子位于波腹上时效率最高。相反,如果偶极子位于一个节点上,它将不会发出声音;但如果偶极子位于波腹上,并且垂直于波腹方向,则会产生强烈的响应。你可以通过嘴巴进行频率扫描(也被称为在淋浴时唱歌)来找到自己浴室的共振模式,同时倾听并寻找某些音高的音量是否意外增大。
混响空间存在许多声波反射,这些声波在边界处没有被有效吸收。混响与回声相似,不同之处在于不同回声之间可以明显区分。混响对空间中的语音清晰度有很大的影响:混响时间越短,声音效果就越清脆、越清晰、越干净,而像大教堂这样的空间,声音就会很浑浊。你可以通过拍手并计算能够听到的噪声衰减时间来对混响空间进行试验。
研究封闭空间声学的第一步是绘制浴室的几何图形。在这里,浴室被改造成一个 2m × 5m 的矩形,中间有一个点。首先,我们要找到最初的几个振型和频率。一旦这些被建立起来,就可以将单极子和偶极子被放置在一个节点和波腹上从而研究响应。
将压力声学、频域接口应用于矩形,方程的频域形式为稳态亥姆霍兹方程。矩形的边界条件与默认的声学刚性边界;因此,该模型是无损的。几何图形和接口如下图所示。
第一项研究解决了域的本征频率,这些本征频率对应于矩形的声场模式。请注意,当求解特征频率时,任何应用于模型的源都将被忽略;即,它是方程齐次形式的根。空间模态由域的长度和边界条件决定,可以通过推导的解析解来验证这个典型问题的数值近似解。
下图显示了封闭空间的前两个振型。图中显示波腹和节点分别位于第一和第二振型的 x = 0 线上。该几何图形的两种模态频率分别为34 Hz 和 68 Hz。但实际的频率并不重要,所以在这篇博文中不会被直接引用。
封闭空间前两个振型的归一化压力。第一种振型(左)在中间点有一个波腹,而第二种振型(右)有一个节点。
在确定了振型和相关频率后,下一步是将单极子和偶极子添加到几何图形中心的点上,偶极子沿 x 方向。在两个频域研究步骤中,单极子和偶极子在适当的频率范围内被激发。在后处理过程中对结果进行归一化处理,使两个源都具有单位振幅。
为了评估封闭空间对基源的影响,对声压级(sound pressure level, SPL)进行平均处理。为了实现这一点,将平均 组件耦合应用到域中,该耦合算符可以计算变量的空间平均值。
不同的基源在封闭空间中的平均 SPL 如下图所示。图中显示,在任一模式下,每种源的平均 SPL(超过 80 dB)都有很大的增加。结果表明,单极子在第一种模式下影响不大,但当位于波腹上时,其响应很大。偶极子的响应是相反的。对于简单的模型,这一结果可以通过分析预测得到证实。

两种基源的平均 SPL。蓝线是单极子,绿色虚线是偶极子负载。两个源都位于封闭空间的中间位置。
或者,源可以按本征频率的精确值加载。这可以通过在接口的设置 面板下将方程形式从研究控制 更改为频域 来实现。然后可以使用 withsol('sol1',real(freq),setind(λ,N) ) 指定应用频率。这意味着:使用 (withsol ) 解 1 ('sol1'),并将频率 (real(freq) ) 设置为指定索引( N 等于 1 和 2)的特征值 (λ)。因为该模型是无损的,所以需要 1e-3 Hz 的偏移量,并且在共振时很难在数学上定义,因此不会返回解。

在 COMSOL Multiphysics 中以精确的本征频率加载模型所需的编辑步骤。
实施这种方法时,两种基源中一种模式的平均 SPL 要比另一种模式低约 87 dB。
通过对共振模型的分析,我们可以得到:如果阿基米德和他的浴缸是无穷小的,位于波腹上,并且具有单极子噪声方向性特征,那么当阿基米德大喊“找到了”时,几乎没有人会听到。
封闭空间的混响可以通过模拟瞬态基源和测量随时间变化的 SPL 来量化。单极子可以用扬声器的球面阵列来近似描述。建筑声学专家常用的度量标准是测量一个房间的 T60 值——声场衰减 60 dB 所需的时间。
射线理论可以用来预测封闭空间的脉冲响应,但这种近似仅在高频极限下有效,不适用于声学上小而封闭的空间(如阿基米德的浴室)。幸运的是,有限元法(finite element method,FEM)可以用来计算低频响应,然后这个低频响应可以传递到一个快速傅立叶逆变换(inverse fast Fourier transform,iFFT)程序中,生成由基源或分布源引起的低频脉冲响应。
当获取脉冲预测时,下面左图中显示的参数可以加快建模过程。
混响模型中使用的参数(左)和衰减模型(右)。
流体模型 从默认的线弹性 (不含损耗)变为大气衰减。这种衰减模型基于半经验模型。因为温水浴作用,将相对湿度设置为较高值 80。此外,边界改为微损耗阻抗边界。
偶极子被禁用,按参数给出的频率加载单极子。本研究分两步进行,第二步取值研究 1 的频率响应结果,并对窗口结果进行 iFFT。下面的动画显示了由于单极子以 250 Hz 的中心频率振荡而产生的总瞬时压力。在这个频率下,很明显波长不在这个长度的几何图形的高频限值内。
单极子源在域中心 250 Hz 时的瞬时压力。
下面左图显示了 iFFT 产生的瞬时压力。正如预期的那样,原始数据的对数是有噪声的,因此使用高斯平均来平滑信号,如右图所示。内置高斯脉冲函数和 iFFT 数据的卷积积分是通过沿一维分量放置脉冲和 iFFT 数据,并使用线积分组件耦合在直线上积分(合适的被积函数)来实现的。
左图是低频下 FEM 预测的 iFFT 瞬时压力,右图的红线是瞬时压力的对数,而蓝线是红线的平滑版本。
压力的平滑对数在时间周期的中间大致呈线性。通过外推这种情况,图中显示浴室的T60 值大约为 6 s。这表明在阿基米德的浴室里谈话是困难的,但是,如果被发明出来的话,格里高利的圣歌听起来会很美妙。
为了验证我们的结果,我们可以将其与一种能够有效预测模式 T60 值的简单方法进行比较。我们将本征频率的虚部乘以 0.9 来估计模式的 T60 值。在这种情况下,iFFT 研究的中心频率为 250 Hz,最近模式为 255 Hz,该模式将主导响应,相应的 T60 值为 5.9 s。
在这篇博文中,我们使用了 COMSOL Multiphysics 软件和内置的声学模块在一个非常简单的封闭空间中模拟单极子和偶极子。我们证明了一个有趣的现象:当把基源放在一个封闭区域的特定位置和频率时,基本源基本上不产生声音。此外,我们还使用 了FEM 来预测低频 T60 值,而没有采用似是而非的射线近似法。
点击下面的按钮,了解声学模块中提供的声学建模专业特性。
压电器件被广泛用作产生声波的信号源或探测声信号的接收器。在超声成像和无损检测等应用中,同一换能器可以作为发射器发送源信号,也可以作为接收器检测回波。这些设备的建模通常需要以飞行时间为输出进行瞬态分析。让我们共同探讨如何使用 COMSOL Multiphysics® 软件建立兼具发射器与接收器功能的压电器件模型。
建立一个兼具发射器和接收器功能的压电器件模型的最佳方法是使用终端 功能将换能器连接到外部电路。实际应用中通常是将压电层夹在两片电极薄层之间,以便将压电层连接到电路上。COMSOL Multiphysics 软件的终端 功能的另一优势是,对可得到的集总参数进行了计算,这些参数可以在模型求解后直接计算获取。

带有压电换能器的声波测井装置模型示意图,可用于声音发射和接收。
该终端 功能和电路 接口存在于 AC/DC 模块 或 MEMS 模块 中。另一种方法则是利用表面电荷密度 特性,并指定表面电荷来激励换能器。(这将在稍后的博文中进行讨论。)
为了进行演示,我们将建立一个简单的压电器件的二维轴对称模型。如下图所示,采用了半径为2 mm、厚度为1 mm 的锆钛酸铅(PZT-5H)圆片作为换能器。它位于一个无限大的障板中,并向上方的水域发射一个声波脉冲。当声波到达顶部的刚性壁面时,会被反射回水域,并被换能器接收。声波能量一部分被反射回接收器,还有一些会被传输到域外。
在声波能量因散射或衰减而减少之前,这个过程会多次重复。假定水域在横向上无限延伸,并利用完美匹配层 (Perfectly Matched Layer,PML)特性对其进行建模。

模型的几何形状示意图。
该场景可以使用声-压电相互作用,瞬态 接口(一个预定义的多物理场接口)来进行建模,该接口结合了压力声学,瞬态 和压电器件 接口,将流体中的声压变化耦合到固体和压电体区域中的结构变形。压电器件 接口也是一个多物理场接口,它结合了固体力学 和静电 接口,以及建立压电模型所需的本构关系。
当使用终端 功能时,将一个电路 接口添加到模型中,以此激励换能器并接收被检测信号。电路示意图如下图左侧所示。电压源产生的激励脉冲是中心频率为200 kHz的高斯型调制正弦波(如下图右侧所示)。

电路连接到换能器上,以此驱动设备并接收信号。激励电脉冲如右侧所示。
要将换能器连接到模型中的电路,你需要:



使用 终端 功能将换能器连接到电路。
下图为换能器顶部表面中心点处的声压图。对该模型进行了长达13个声学周期的求解,以采集到达换能器的前两个回波。这一信息也包含在电路接收到的终端电压中,如下图所示,其中来自第一和第二回波信号被放大了,以便获取更好的视觉效果。

换能器顶部表面中心点处的声压图。

可由电路测量的终端电压图。
如果你无法访问 终端 功能,则可以使用 表面电荷密度 特性代替。 表面电荷密度 是一种边界条件,它可以添加到 静电 接口,并应用于换能器的电极表面。
一般来说,你可以使用 终端 功能或 表面电荷密度 特性将换能器模拟为发射器、接收器或是兼具发射器和接收器功能。当换能器仅用作发射器,而你又不打算使用换能器来检测任何回传信号,这时还可以使用 电势 节点 来指定激励表面上的电势。另一方面,为了将换能器仅模拟为接收器,还可以使用 悬浮电位 特性。 悬浮电位 节点用于在浮动电势下对金属电极进行建模。当电荷为零时,边界将在静电条件下表现为一个未连接的、电中性的良导体。
在声波测井教程模型中,你可以使用带有电路的终端 功能来模拟发射器,其同时也用作接收器。模型中使用的另外两个接收器采用悬浮电位 特性进行了仿真。
单击下面的按钮,访问声波测井模型的文档和 MPH 文件(可通过COMSOL Access 帐户和有效的软件许可证进行访问):