我发现解释我的问题有点棘手所以请耐心等待。我试图使用迭代过程求解积分微分方程。这个过程意味着从第一次迭代开始,我可以找到我所需的函数作为三维积分,函数的参数作为外积分的上限。
然后我需要再次将此函数替换回积分,但是当我这样做时,我得到了错误
使用integral3时出错(第66行)
XMAX必须是浮点标量。
我的代码如下。我尝试过使用符号集成,但是我的被积函数很复杂。
err = 1;
g = @(q) 1;
a = 3;
xmin = 0.2;
xmax = @(x) x;
ymin = 0.1;
ymax = @(x) x;
zmin = @(x,y) x-y;
zmax = @(x,y) x+y;
while err>0.1
e = g(10);
G = @(x,y,z) ((z.^2+x.^2-y.^2).^2)./(z.^2.*y.^2.*x.^2).*sqrt(2.*(y.^2.*x.^2+y.^2.*z.^2+x.^2.*z.^2)-y.^4-x.^4-z.^4).*x.^(a-1).*y.^(-a).*g(y).*(z.^(-a).*g(z)-x.^(-a).*g(x));
g = @(q) 1 + (a-4)/(8).*integral3(G,0.2,q,ymin,ymax,zmin,zmax,'Method','iterated','AbsTol',1e-1,'RelTol',1e-1);
err = abs(g(10)-e)
end