我正在尝试使用 integral3 在Matlab中计算一个简单的三重积分。也就是说,
很容易计算 I = 1。但是,我将其实现为
f =@(rho, x, y) 8/pi .* rho ;
xmin = 0;
xmax = 1;
rhomin = 0;
rhomax = @(x) 2.*(1-x);
ymin = 0;
ymax = @(x,rho) sqrt(1-(x + rho/2).^2);
integral3(f, xmin, xmax, rhomin, rhomax, ymin, ymax,'Method', 'auto');
,结果为0.499999999999976。
我做错了什么?!提前谢谢。
答案 0 :(得分:3)
限制的顺序必须与函数的变量输入顺序相同,只需将函数定义更改为
f =@(x, rho, y) 8/pi .* rho ;