问题标签 [fenics]

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 回答
357 浏览

c++ - RuntimeError using FEniCS

I'm trying to solve a continuum mechanics problem using FEniCS. I want to calculate the displacement field u in a certain case.

Here is my code :

When I run it, I get that error :

Do you know how to fix it ?

0 投票
1 回答
347 浏览

python-3.x - “ ArityMismatch:使用 FEniCS 添加具有不匹配表单参数 () 与 ('v_1',) 的表达式”

感谢 FEniCS,我想解决一个连续力学问题。我施加压力并考虑到重量。但是当我添加热弹性组件时,它不再起作用了。
这是我的代码:

我收到此错误消息:

当我写这篇文章时(我从 sigma(u) 中删除了 Kt):

它完美地工作。在此页面(单击此处)中,他们尝试绘制相同类型的问题,并且可以在我的计算机上运行。你知道如何解决吗?

0 投票
1 回答
141 浏览

python - 用 Expression() 编译 C++ 的问题

我是 fenics 的初学者,我正在尝试opensimplex使用 Python 库生成的 Perlin 噪声的边界条件来求解 Poisson 方程。

我试图定义 f,边界条件Expression()

我试过Expression('function(x[0],x[1],x[2])')在哪里function (x,y,z)=opensimplex.tmp.noise3d(x,y,z))。但是,由于这个 opensimplex 函数不是由 C++ 管理的,所以我得到了一个编译错误;Compilation failed!.

有没有办法克服这个错误?

0 投票
1 回答
204 浏览

python - 无法添加不同形状的表达式

我正在研究 fenics 中的混合配方。运行代码时,它给了我一个错误:UFLException:无法添加具有不同形状的表达式。我是新手。任何人都可以帮助我完整的代码是

0 投票
1 回答
313 浏览

pytorch - AttributeError:“函数”对象没有属性“block_variable”

我写了一个 torch_fenics 的子类。在这种情况下,输入是来自 DG 空间的向量。我在弱公式中使用此输入,然后计算解决方案。此外,我需要解决方案相对于给定输入的梯度。

~/miniconda3/envs/py37/lib/python3.7/site-packages/torch/autograd/function.py in apply(self, *args) 75 76 def apply(self, *args): ---> 77 return self._forward_cls.backward(self, *args) 78 79

~/miniconda3/envs/py37/lib/python3.7/site-packages/torch_fenics/torch_fenics.py in backward(ctx, *grad_outputs) 88 # 检查哪些梯度需要计算 89 controls = list(map(fenics_adjoint.Control , ---> 90 (c for g, c in zip(ctx.needs_input_grad[1:], ctx.fenics_inputs) if g))) 91 92 # 针对每个输入计算和累积每个输出的梯度

~/miniconda3/envs/py37/lib/python3.7/site-packages/pyadjoint/control.py init (self, control) 38 def init (self, control): 39 self.control = control ---> 40 self.block_variable = control.block_variable 41 42 def data(self):

AttributeError:“函数”对象没有属性“block_variable”

0 投票
1 回答
42 浏览

matplotlib - 为什么我的 FEniCS 图上总是出现彩色线条?

我正在使用 FEniCS 来解决一个基本的随时间扩散问题作为概念证明。我只使用一个线性求解器,但是当我用 pyplot 绘制我的函数时,我得到了几条彩色线,其中任何一条都可以代表真正的函数。我如何消除这些并只看到一个功能?

另外我会注意到,随着时间的推移,所有功能线都接近相同的曲线。

具有多个功能线的 pyplot

0 投票
0 回答
930 浏览

python - 如何在带有 Python 3.8 的 Spyder 中使用 FEniCS?

我对 python 很陌生,到目前为止只做过较小的项目。对于一个新项目,我想使用 FEniCS 来解决 PDE。我正在使用 Windows 10 并且已经成功安装了 Ubuntu(我仍然不完全了解 Ubunutu 需要什么)。为了测试解决 PDE,我在 Ubuntu 命令窗口中从 FEniCS 项目的网站 ( https://fenicsproject.org/tutorial/ ) 执行了一个教程文件“ ft01_poisson.py ”,它工作正常。

之后,我还想在 spyder 中执行该文件,因为我将在我自己的项目中使用 Spyder 来解决 PDE。我做了pip install fenics,当我重复它说的命令时Requirement already satisfied: fenics c:\users\airwaves12\anaconda3\envs\spyder-4.1.5\lib\site-packages (2019.1.0)

但是当我在 spyder 中执行脚本时,我总是得到错误ModuleNotFoundError: No module named 'fenics'。在上述路径中,只有名为、 、fenics_dijitso-2019.1.0.dist-infofenics_ffc-2019.1.0.post0.dist-info的文件夹。我知道“fenics 包”由不同的子包组成,如“ ffc ”、“ FIAT ”、“ ufl ”或“ dijitso ”。这些也存在于上述文件中。我试图手动将保存在名为“fenics”的文件夹中的那些子包复制到路径中,但这显然不起作用,因为 python 没有找到例如函数。fenics_fiat-2019.1.0.dist-infofenics_ufl-2019.1.0.dist-infofenics-2019.1.0.dist-infoC:\Users\Airwaves12\anaconda3\envs\spyder-4.1.5\Lib\site-packagesUnitSquareMesh()

我花了将近两天的时间阅读有关此主题的所有内容并尝试了很多东西,但最有用的建议来自No module named 'dolfin' using Spyder,它对我不起作用,最初仅适用于 anaconda。如何在 Jupyter Notebook 或 Spyder 中使用 FEniCS?到目前为止还没有得到 spyder 的答案。

有谁知道如何正确使用 FEniCS 和 spyder?我将不胜感激任何建议。

0 投票
0 回答
1206 浏览

python - ModuleNotFoundError:没有名为“fenics”的模块

我是 Mac 上的 python 新手,我需要解决偏微分方程。我看到 Fenics 适合我。当我打开 Spider 并运行程序时,我收到以下警告:

ModuleNotFoundError: No module named 'fenics'

我猜蜘蛛找不到 Fenics,但我从终端正确安装了它。有人能帮我吗?提前谢谢了

0 投票
1 回答
84 浏览

python - 在 Windows 子系统中运行 FEniCS 时添加无效语法错误

我目前正在开展一个项目,我们正在解决 FEniC 中的 PDE 系统。我创建了以下代码以解决系统问题,但出现无效语法错误

我在 Python 方面不是那么好,而且我以前从未使用过 FEniCS。我还使用 Windows 子系统来运行它,这让我更难以理解我可能犯的任何错误。感谢您提出的任何建议,如果我提出明显的问题,我会提前道歉!

0 投票
3 回答
807 浏览

python-3.x - 如何在 Ubuntu 中使用 PIP 为特定的 python 环境安装 fenics?

我想在 Ubuntu 20 中安装fenics。首先我使用以下命令创建了一个 python 环境:

然后在我想创建一个环境的文件夹中,我打开一个终端并使用:

myproject是我制作的环境名称。

然后我激活我的环境:

要在激活环境时为这个特定环境安装 fenics,我使用:

我使用pip listwhich 返回验证安装:

我尝试使用以下方法导入 fenics:

但我收到以下错误,指出没有 fenics 模块:

问题是什么?希望成功安装 fenics 后,我可以安装 Spyder 和其他 python 包,并能够在 spyder 中使用 fenics。

编辑 我想在 python 虚拟环境中安装 fenics。