【发布时间】:2014-02-14 06:50:47
【问题描述】:
我正在尝试使用 FiPy 解决复杂的 PDE。 FiPY 似乎不支持复杂的参数,一般建议似乎是拆分 PDE,分别求解,然后重新组合。还是这样吗?
其次,我看不到任何设置非恒定初始条件的方法。假设我想让我的网格在每个单元格中都没有相同的值,除了使用 setValue 之外,还有更简单的方法吗?
谢谢。
【问题讨论】:
我正在尝试使用 FiPy 解决复杂的 PDE。 FiPY 似乎不支持复杂的参数,一般建议似乎是拆分 PDE,分别求解,然后重新组合。还是这样吗?
其次,我看不到任何设置非恒定初始条件的方法。假设我想让我的网格在每个单元格中都没有相同的值,除了使用 setValue 之外,还有更简单的方法吗?
谢谢。
【问题讨论】:
FiPy 不支持复杂的参数,但它支持求解向量,这可能会稍微简化您的任务。
见this coupled Cahn-Hilliard simulation的后半部分。
当然可以设置非统一的初始条件。请参阅:examples/cahnHilliard/mesh2DCoupled.py 了解如何将初始条件设置为随机字段或examples/diffusion/electrostatics.py 和 以及examples/phase/ 中关于如何根据坐标设置初始条件的任何内容。正如您在这些示例中看到的那样,有几种不同的语法可以使用,但 setValue() 是一种完全合法的方法。
【讨论】: