gpt4 book ai didi

python - FiPy 内部传导边界条件

转载 作者:行者123 更新时间:2023-12-01 04:26:11 25 4
gpt4 key购买 nike

我是 FiPy 的新手,我正在求解 3D 体积内电势的泊松方程。它对于表面边界条件工作得很好,但现在我需要在里面放置一个导体。这将是一个恒定的势表面,我意识到您不能将势能.constrain 用于内表面。

文档建议使用 ImplicitSourceTerm 以及定义表面的掩模,但尚不清楚如何使用它来约束电势恒定,或者等效地约束电场垂直于表面。这可能吗?

感谢您的帮助。

最佳答案

http://www.ctcms.nist.gov/fipy/documentation/USAGE.html#applying-internal-boundary-conditions 的讨论准确地描述了您正在尝试做的事情。不过,我想我知道为什么它可能对你不起作用。声明 ImplicitSourceTerm 时,FiPy 必须小心,不要向矩阵的对角线添加负值,因此它会检查 ImplicitSourceTerm 系数的符号并比较它们到已放入矩阵中的 DiffusionTerm(及其他)的对角线元素的符号;如果符号相反,则 FiPy 显式处理这些细胞(将所有内容放在 RHS 向量上)。

如果你将方程声明为(就像我最初所做的那样)

eq = (fp.DiffusionTerm(coeff=dielectric) + charge ==   
conductor * largeValue * conductorPotential
- fp.ImplicitSourceTerm(coeff=conductor * largeValue)

然后关于导体的所有内容都会被放在 RHS 向量上,并且隐式求解器永远不会“看到”它。如果颠倒最后两项的顺序,则将 conductor * largeValue 放在矩阵对角线上,并将 conductor * largeValue *conductorPotential 放在 RHS 上,并且解为这些细胞受到conductorPotential的支配。

简而言之,我想说的是(对于 FiPy(在本例中))你是否说很重要

V == conductorPotential

conductorPotential == V

我在 https://gist.github.com/guyer/a61d5adfa9a050eb970a 发布了一个 IPython 笔记本

关于python - FiPy 内部传导边界条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33109744/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com