我在fenics中有一个函数,它定义在乘积函数空间上(用于实部和虚部)。现在我要计算这个函数在域上的积分。我没有胶水,这应该如何工作。我在文件里找不到什么东西。我认为这周的文档已经改变了,因为谷歌链接之外的内容已经不再有效了。函数空间的定义如下:
FuncSpace = FiniteElement( "CG“,mesh.ufl_cell(),1) FuncSpace2 = FunctionSpace(网格,MixedElement( FuncSpace,FuncSpace ))
该功能被定义为:
函数( FuncSpace2 )
我正在解决一些部分积分问题,然后想要计算这个函数的积分。有人能帮我解决这个问题吗?
或者,我可以将函数转换为python数组,因为这样我的集成就很简单了。
发布于 2018-01-20 10:16:57
所以我现在找到答案了。首先,将结果函数Psi分解为实部和复部。
真,Imag = split( Psi )
接下来,我通过以下方法定义函数的abs值:
absPsi = sqrt( Real * Real + Imag * Imag )
现在,我必须在使用的网格上定义一个度量:
ds =测度( "dx“,域=网格)
其中网格包含由fenics定义的网格。最后通过以下方法求出积分:
范数=集合(d* ds )
https://stackoverflow.com/questions/48354578
复制相似问题