蒙特卡洛四重积分代码
时间: 2024-08-24 18:00:49 浏览: 37
蒙特卡洛四重积分是一种数值积分方法,它利用随机采样技术求解高维空间下的积分问题。在Python中,你可以使用`numpy`库配合一些基本的循环来编写这个算法。以下是一个简单的示例代码,用于计算二维区域的四重积分:
```python
import numpy as np
def monte_carlo_quadrature(f, a, b, n_samples):
def integrate_over_rectangle(x_range, y_range):
x = (x_range[1] - x_range[0]) * np.random.rand(n_samples) + x_range[0]
y = (y_range[1] - y_range[0]) * np.random.rand(n_samples) + y_range[0]
return f(x, y)
area = (b[0] - a[0]) * (b[1] - a[1])
integral估计 = area * integrate_over_rectangle([a[0], b[0]], [a[1], b[1]])
return integral估计
# 定义你要积分的函数(这里假设f(x, y) = x*y)
def integrand(x, y):
return x * y
# 示例区域 [0, 1]^4
lower_bounds = [0, 0, 0, 0]
upper_bounds = [1, 1, 1, 1]
n_samples = int(1e6) # 设置足够大的样本数以获得更准确的结果
integral_estimate = monte_carlo_quadrature(integrand, lower_bounds, upper_bounds, n_samples)
print(f"四重积分的估计值: {integral_estimate}")
阅读全文