全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 MATLAB等数学软件专版
3513 0
2016-08-30
最终我是想求解得到一个满足方程F(x)=1/2的x值,可是代码在求F的时候出了错。下面是代码:
* e=1;a=1;
* z=1;
* f=@(t,x) sqrt(a+e)*normpdf(sqrt(e+a)*(t-x*e/(e+a)-z*a/(e+a)));
* g=@(th,t) sqrt(e)*normpdf(sqrt(e)*(th-t));
* h=@(th,x) integral(@(t) f(t,x).*g(th,t),-Inf, Inf);%the convolution of two pdfs gives a new pdf.
* F=@(x) integral(@(th)h(th,x),x,Inf);
* xt=fzero(@(p) F(p)-1/2,-1000)
报错内容是:错误使用 integralCalc/finalInputChecks (line 515)
函数的输出与输入必须具有相同的大小。如果 FUN 为数组值被积函数,请将 'ArrayValued' 选项设置为 true。


出错 integralCalc/iterateScalarValued (line 315)
  finalInputChecks(x,fx);


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


出错 integralCalc (line 83)
[q,errbnd] = vadapt(@AToInfInvTransform,interval);


出错 integral (line 88)
Q = integralCalc(fun,a,b,opstruct);


出错 @(x)integral(@(th)h(th,x),x,Inf)


我不太明白,为什么计算h的时候好好的,到了计算F的时候就会报错呢?又该怎么改正?
请大家指教!谢谢!
  
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群