问题标签 [fipy]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1297 浏览

fipy - 如何在fipy中导入gmsh geo文件

这个问题可能是由于我缺乏对 python 的了解,尽管如此:是否可以导入 gmsh 网格 file.geo 而不是像本教程中所做的那样完全在 fipy 脚本上编写它?

http://www.ctcms.nist.gov/fipy/examples/diffusion/generated/examples.diffusion.circle.html#module-examples.diffusion.circle

像这样的过程:打开文件;读取/存储 data_var 中的内容;mesh = Gmsh2D(data_var) # 使用 gmsh 生成网格

谢谢

0 投票
3 回答
447 浏览

python - FiPy“基本目录”在哪里?

我最近通过 MacPorts 将 FiPy 包安装到我的 Macbook 上,其中包含所有依赖项。我在 Python 中将 FiPy 和 NumPy 称为包没有任何问题。

现在我已经开始工作了,我想看看这些例子。但是,我在计算机中找不到“基本目录”或 FiPy 目录。

如何找到基本目录?如果我通过 Macports 安装了所有这些,我什至还有基本目录吗?

作为说明,我使用的是 Python27。

请帮忙!谢谢。

0 投票
2 回答
331 浏览

python - FiPy 不工作

在 Mac(OS X 10.10.2 和 Python 2.7.6)上全新安装 FiPy 后,我尝试了文档中的一些示例,但它们不起作用。因此,我使用内置的测试例程(从 python shell 中键入“fipy.test()”)测试了 FiPy,但是经过一长串好的文档测试后,我得到了这个日志,有两个失败: https://gist.github。 com/alfrenardi/3b1ad5ff814077b18882

我也尝试了全新的 LTS Ubuntu 安装,但我遇到了同样的问题。有什么解决方法吗?在我看来,这看起来像是 FiPy 模块的问题,而不是平台的问题。

0 投票
1 回答
495 浏览

viewer - fipy 查看器不绘图

我正在尝试从 fipy 示例列表中实现一个示例,即 1D 扩散问题。但我无法将结果视为一个情节。我已经按照示例代码中的建议正确定义了查看器。仍然没有帮助。解向量运行良好。但我无法使用查看器功能进行绘图。谁能帮忙?谢谢你!

0 投票
1 回答
369 浏览

numerical-methods - fipy - 水平集 1D

我正在尝试针对水平集一维问题运行下面的代码(例如在 fipy 网页中)。我收到此错误:

回溯(最后一次调用):文件“C:/Users/sgowda/Documents/pde solver code/level set 1D.py”,第 20 行,在 var.calcDistanceFunction() 文件“C:\Users\sgowda\AppData\ Local\Continuum\Anaconda\lib\site-packages\fipy\variables\distanceVariable.py”,第 335 行,在 calcDistanceFunction 中引发异常,“在 $PATH 上lsmlibskfmm找不到”异常:在 $PATH 上lsmlib也找不到也skfmm找不到小路

你能否让我知道如何解决这个问题。我尝试查看 distancefucntion() 但我不确定这个错误是什么意思?

0 投票
1 回答
337 浏览

python - FiPy:梯度之外的空间变化系数?

这可能是一个简单的问题,但是如果我想用梯度之外的空间变化系数求解 PDE,那么正确的 FiPy 语法是什么?到目前为止,我看到的所有示例都只讨论了梯度内部的系数。

例如:

d/dt(Sigma) = (1/r) d/dr (r^0.5 d/dr(nu Sigma r^0.5))

(我忽略了数字因素)

我想求解 Sigma(t,r)。我如何在 d/dr 面前处理 (1/r)?

我知道可以对这个简单的方程进行按摩,这样我就不必担心梯度之外的空间变化系数(或者只是将系数移动到时间导数项内),但我必须为我试图解决的实际问题,这个技巧将不再有效。例如,如果我的方程式如下所示,我该怎么办:

d/dt (var) = f(r) d^2/dr^2 (var) + g(r) d/dr (var)

任何帮助将不胜感激!

0 投票
1 回答
579 浏览

python - 如何从 FiPy 中的 3D 变量中提取平面(3D 到 2D)

我在 3D 网格上有一个变量,我正在尝试制定一个计划。我很惊讶这个问题以前没有被问过,它看起来是一个简单而常见的问题,但我还没有找到任何好的方法。我会很感激任何建议。


假设我有一个平行六面体 3x3x5,并且我正在尝试提取 z 平面。

输出:

3D 变量看起来正确填充。

首先,我尝试使用此链接http://permalink.gmane.org/gmane.comp.python.fipy/1576中描述的方式

CellVariable的call方法可以对通过call方法传入的一组坐标进行插值(调用方法只需使用括号访问,就像在函数调用中一样)。它返回一组与传入的每个坐标相对应的值。 order 参数仅确定插值的顺序。

我不确定这实际是如何工作的,但据我了解,这应该插入一个具有 0 阶的平面,因此它应该提取特定平面上的确切值。如果我错了,请纠正我。

奇怪的是它不起作用。偶数索引没问题,但奇数索引是连续平面的副本。

我认为某处一定有一个愚蠢的错误,但我不知道。任何想法?

0 投票
1 回答
179 浏览

python - 存储旧值 FiPy

我正在尝试在 Python 中使用 FiPy 解决一些微分方程,作为新手,我仍然遇到一些问题。我所做的如下:我定义了一个单元格变量,我为这个变量求解了一个方程并更新了它。我想在每次迭代后存储它的值。这是一个例子:

我意识到我的错误 - 每次更新“a”时都会更新“a_tt”中的值,所以最后我有一个包含所有相同元素的数组。我应该怎么做才能避免这种情况?

0 投票
1 回答
226 浏览

python - 在 fipy 中连接两个或多个均匀网格

是否可以连接两个(或更多)网格?例子:

1D 或 2D 网格也是如此。

中级问题:是否可以定义偏移量?

0 投票
1 回答
946 浏览

python - 具有非恒定容量的传导-扩散热二维模型

我花了很长时间开发用于稳态近似的二维热传导扩散模型。

偏微分方程

为简单起见,考虑层流剪切膜,即底部的零速度和恒定的速度增加。

剪切

热容量可能是恒定的或随温度线性增加。

边界条件是恒定的入口温度(左)和恒定的输入通量(顶部),而所有外部面都被迫没有梯度。

请参阅此处的代码。

当使用恒定热容量时,输入功率等于输出功率。

当使用非恒定热容量时,它们显着不同。热容量随温度的变化越大,输入和输出的差异就越大。

引入可变速度系数(此处为 v * c * rho)已按照 fipy FAQ 中的说明进行(仅明确显示了扩散项的示例)。网格分辨率不会改变输出功率。所以我会说这不是网格问题。我还尝试添加一个瞬态项并解决一个非常高的时间步长,这不会改变解决方案。

我担心在定义对流项时我做错了什么,但找不到错误。如果fipy 能够将theta(rank=0 单元变量)与velocity(rank=1 单元变量)混合,然后将它们转换为对流项所必需的面变量,我也感到困惑。