请问在matlab中用蒙特卡罗方法计算二重积分: 在x^2+y^2<=1的区间上计算e^(x^2+y^2),多谢了~ matlab求二重积分:Q =
www.zhiqu.org 时间: 2020-12-14
您这还是去百度吧!我想会有答案的!
L:x² + y² = a²,y = x 以及 y = 0
用参数方程:{ x = a • cost
{ y = a • sint
ds = √(x'² + y'²) dt = √(a²sin²t + a²cos²t) dt = a dt
∫L e^(x² + y²) ds = ∫(0→π/4) e^a² • a dt = (πa/4)e^a²
用极座标:{ x = r • cosθ
{ y = r • sinθ
ds = √(r² + r'²) dθ = √(a² + 0) dθ = a dθ
∫L e^(x² + y²) ds = ∫(0→π/4) e^a² • a dθ = (πa/4)e^a²
对于quad、dblquad等求数值积分的函数,要求被积函数能够接受向量输入,所以表达式中积分变量的幂函数应使用点运算:
>> Q = dblquad(@(x,y) (x.^2+y.^2+x*y+2*x+y+1), 0, 2, 0, 1)Q = 11.3333
syms x y;
f_