当 FEM 离散化和求解反应扩散问题时,例如 with(奇异扰动),离散问题的解通常会表现出靠近边界的振荡层。使用,和线性有限元,解看起来像
我看到有很多文献说明当它们是由对流(例如,逆风离散化)引起的这种不良影响时,但是当涉及到反应时,人们似乎专注于精细网格(Shishkin,Bakhvalov)。
是否存在避免这种振荡的离散化,即保持单调性?在这种情况下还有什么有用的?
当 FEM 离散化和求解反应扩散问题时,例如 with(奇异扰动),离散问题的解通常会表现出靠近边界的振荡层。使用,和线性有限元,解看起来像
我看到有很多文献说明当它们是由对流(例如,逆风离散化)引起的这种不良影响时,但是当涉及到反应时,人们似乎专注于精细网格(Shishkin,Bakhvalov)。
是否存在避免这种振荡的离散化,即保持单调性?在这种情况下还有什么有用的?
在您展示的情况下,解决方案具有边界层。如果由于网格太粗糙而无法解决它,那么对于所有实际问题,解决方案对于数值方案都是不连续的。
现在,如果你只是对这个问题应用标准离散化,离散解是对精确解应用线性投影算子的结果,投影到有限维空间。这实际上与例如取傅里叶级数的前项没有什么不同。但是当你把它应用到一个不连续的函数上时,你知道会发生什么:你会得到吉布斯现象,有上冲和下冲。这里的情况确实没有什么不同,任何线性方案都会发生这种情况。
基本上有两种方法可以解决这个问题: (i) 添加人工扩散,即添加与网格大小成正比的扩散项;这会将边界层的大小增加到可以由网格表示的宽度,但它会返回到作为。(ii) 您使用非线性投影方案;双曲线文献有许多这样的方案,例如,冲击捕获、斜率限制等。
TL;DR:你的选择是有限的 1)去蛮力自适应精确和昂贵的解决方案 2)使用数值扩散来获得不太准确但稳定的解决方案或(我最喜欢的)3)利用这是一个奇异扰动问题的事实并解决两个便宜的内部/外部问题,让匹配的渐近线发挥它的魔力!
如果您真的必须获得问题的统一数值解,那么除了自适应网格细化之外,您真的无能为力。您正面临一个奇异的扰动问题,该问题会产生厚度的边界层边界附近。该边界层将内部和外部解决方案分开。
更准确地说,考虑左边界,其中. 在这个区域,可以通过使用拉伸坐标重新调整方程,对于内部解决方案:
受边界条件影响和. 对于外部解决方案,, 假设因此主要的平衡是和这只是给出. 使用手头的外部解决方案,您现在可以轻松地解决正则化内部解决方案 - 在这种情况下甚至可以解析。
这实际上是过去(现在仍然是)非常流行的用于解决流体力学中层流边界层问题的技术。事实上,如果你看一下 Navier-Stokes 方程,在高雷诺数下,你实际上面临着一个奇异的扰动问题,就像你在这里提到的那样,会产生一个边界层(有趣的事实:扰动中的术语“边界层”分析实际上来自我刚才描述的流体边界层问题)。
因此,在计算资源非常有限的时代,典型的做法是将外部问题和内部问题分开。对于外部,首先要解决势流(类似于这里)和内部的边界层方程!如果您要在单个计算域中一次解决整个问题,那么所有这些都不需要花哨的自适应方法。