【发布时间】:2018-11-10 19:27:30
【问题描述】:
我在 MATLAB 中找出以下公式中的错误时遇到问题:
a=@(z,q)(z.^2 + q.^2);
a1=@(q) integral(@(z) a(z,q),1,10);
首先我只想在z 中对a 进行有限积分,在数值范围内,比如说1 和10,然后我想绘制a1 相对于q .
当我使用以下命令执行上述操作时:
plot(linspace(0,3e8), a1(linspace(0,3e8)))
我收到以下错误:
Matrix dimensions must agree. Error in untitled>@(z,q)(z.^2+q.^2) Error in untitled>@(z)a(z,q) Error in integralCalc/iterateScalarValued (line 314) fx = FUN(t); 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); Error in untitled>@(q)integral(@(z)a(z,q),1,10)
谁能指出错误。
注意:我想将z 和q 作为向量
【问题讨论】:
-
您的问题底部有一个“编辑”链接,就在标签下方。请使用它来编辑您的问题。不要发布编辑作为答案。我已将您的答案复制粘贴到问题中。如果您愿意,请继续编辑您的问题! :)
标签: matlab numerical-integration