<p>这个答案可能并不令人满意,但希望它能让我们对问题所在的领域有所了解。在</p>
<p>重申一下,最初的问题是计算四重积分</p>
<pre><code>integrate(
integrate(
integrate(
integrate(
f(x1, x2, x3, x4),
[1+abs(x3), -1-abs(x3)]
),
[x2, -x2]
),
[1-abs(x1), -x1**3]
),
[-3, 1])
</code></pre>
<p>从数学上讲,我们可以将其表述为</p>
^{pr2}$
<p>其中<code>Omega</code>是由上述积分极限定义的四维域。如果这个领域是在一个、两个或三个维度,那么你的问题的答案就会很清楚:</p>
<ol>
<li><p>将复杂域离散成直线、三角形或四面体(分别是维度1、2、3中的简单体)(使用<a href="http://gmsh.info/" rel="nofollow noreferrer">one</a><a href="https://github.com/nschloe/frentos" rel="nofollow noreferrer">of</a><a href="https://bitbucket.org/fenics-project/mshr" rel="nofollow noreferrer">many</a><a href="https://pypi.python.org/pypi/MeshPy" rel="nofollow noreferrer">mesh</a><a href="https://github.com/nschloe/pygmsh" rel="nofollow noreferrer">tools</a>),然后</p></li>
<li><p>对每一条线/三角形/四面体使用数值求积(例如,从<a href="https://github.com/nschloe/quadpy" rel="nofollow noreferrer">here</a>开始)。</p></li>
</ol>
<p>不幸的是,我不知道有什么工具可以将四维域离散成4个单形,也不知道4个单形的求积规则(可能除了顶点和中点规则)。然而,两者都有可能在一般情况下创建;特别是一组求积规则应该很容易想出。在</p>
<p>为了完整起见,让我提一下,至少有一类域在任何维度上都存在集成规则:超立方体。在</p>