用数值方法解决一些PDE问题时,可变比例缩放是否必不可少?


15

在半导体仿真中,通常需要对方程进行缩放以使它们具有归一化的值。例如,在极端情况下,半导体中的电子密度可能会变化超过18个数量级,而电场会发生形状变化,变化超过6个(或更多)数量级。

但是,论文从未真正给出这样做的理由。我个人很高兴以实际单位处理方程式,这样做有任何数值上的优势,否则是不可能的吗?我认为使用双精度数字将足以应付这些波动。


这两个答案都非常有用,非常感谢!


1
“可以变化超过18个数量级”-如果您考虑以双精度保留多少个数字,您会发现“以双精度将有足够的数字来应对这些波动”是真的吗?
JM

1
当您将这些数字输入数值算法时,真正的问题就开始了:取平方,突然之间有36个数量级的差异……
Christian Clason

Answers:


9

求解(线性)PDE在于将方程离散化以生成线性系统,然后由线性求解器求解,其收敛度(速率)取决于矩阵的条件数。缩放变量通常会减少此条件数,从而提高收敛性。(这基本上等于应用对角预处理器,请参阅Nicholas Higham的数值算法准确性和稳定性。)

此外,求解非线性PDE还需要一种用于求解非线性方程的方法,例如牛顿法,其缩放比例也会影响收敛。

由于对所有内容进行规范化通常只需很少的精力,因此几乎总是一个好主意。


我敢肯定@ArnoldNeumaier在这个话题上还有更多话要说。
克里斯蒂安·克拉森

我正在使用的矩阵的条件数(未缩放变量)为〜1.25。这看起来合理吗?这是使用2-norm方法(docs.scipy.org/doc/numpy/reference/generated/…)计算的。
boyfarrell

@boy,如果没有什么别的乘以1.25,那么这是一个不错的条件数,特别是如果你还记得的单式矩阵有κ2=1个
JM

1
@boyfarrell:我通常使用条件编号最大为10 ^ 7的方法,结果令人满意。但是,我不接受高于10 ^ 9的条件编号。
jvriesem 2015年

9

解决方案具有严格边界的PDE带来的问题超出了能够以浮点表示解决方案的范围。当溶液具有某种物理意义(例如密度(密度本身不能小于0))时,尤其如此。考虑,例如,

-εΔü+ü=0 上 Ωü=1个 上 Ω

也就是说,没有缩放变量或域的方法可以消除此困难。

üα

-α2Δü=Fα 上 αΩ
αü1个
-Δü=F 上 Ω
üαX:=ü1个X/α 对于任何 α。这表明扩展参数α根本不真正影响解决方案的行为-这在这里很明显,但是在其他情况下可能很难看到。您可以用相同的方式构造具有更多参数的非常复杂的示例,例如Navier-Stokes and its nondimensionalization into the Reynolds-number-formulation.

4
然后,其余参数对于确定溶液的定性行为必不可少-这就是为什么雷诺数在流体动力学中如此重要的原因。此过程称为“无量纲化”
克里斯蒂安·克拉森

当然,找到这样的参数等效项本质上是找到PDE的对称组的问题,这通常很难解决
lurscher 2013年

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.