如何整合复杂的功能?

时间:2017-06-22 22:12:18

标签: matlab integral

我一直试图弄清楚这个积分已经有一段时间了,但是已经很短了。我试过做一个符号集成,但是我把它击退了,所以我假设没有解决方法。我决定用一个明确的积分来解决它,但仍然会遇到错误:

clear
clc

x = 1;
y = 1;
z = 1;
R = 2;

b =@(theta) y.*cos(theta)/((x-R.*cos(theta)).^2+y.^2+(z - 
            R.*sin(theta)).^2).^(3/2)

integral(b,1,2)

我当前的错误是:

Error using integralCalc/finalInputChecks (line 515)
Output of the function must be the same size as the input. If FUN is an array-valued
integrand, set the 'ArrayValued' option to true.

Error in integralCalc/iterateScalarValued (line 315)
                finalInputChecks(x,fx);

Error in integralCalc/vadapt (line 132)
            [q,errbnd] = iterateScalarValued(u,tinterval,pathlen);

Error in integralCalc (line 75)
        [q,errbnd] = vadapt(@AtoBInvTransform,interval);

Error in integral (line 88)
Q = integralCalc(fun,a,b,opstruct);

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:1)

您需要将第一个字词中的分部符号从LocalBroadcastManager更改为/,以确保您正在执行element-wise division而不是matrix right division

./