作者gn00291010 (居恩)
看板MATLAB
标题[讨论] 如何自设function来画图
时间Tue Mar 15 11:54:52 2016
小弟是matlab的新手
http://imgur.com/XezK2Uy
Wbar是某个值,而W是服从lognormal的随机变数
我在将上面的函数画成图时出现了这样的讯息
Error using integral (line 85)
A and B must be floating point scalars.
Error in ffn (line 3)
f =
integral(intfn,w_bar,Inf,'ArrayValued',true)-(w_bar)*(1-logncdf(w_bar,1,0.042849));
下面则是我的code
第一部分
function f = ffn(w_bar)
intfn = @(w) w.*lognpdf(w,1,0.042849);
f =
integral(intfn,w_bar,Inf,'ArrayValued',true)-(w_bar)*(1-logncdf(w_bar,1,0.042849));
第二部分
function g = gfn(w_bar)
intfn = @(w) w.*lognpdf(w,0,0.042849);
g =
(w_bar)*(1-logncdf(w_bar,0,0.042849))+integral(intfn,0,w_bar)-0.25*logncdf(w_bar,0,0.042849);
第三部分
syms w_bar phi
f(w_bar) = ffn(w_bar);
g(w_bar) = gfn(w_bar);
h(w_bar) =
(diff(f,w_bar)*gfn(w_bar))/(diff(f,w_bar)*gfn(w_bar)-diff(g,w_bar)*ffn(w_bar));
想请教各位我的code出了甚麽问题,感谢各位了
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 58.114.197.65
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/MATLAB/M.1458014094.A.859.html
※ 编辑: gn00291010 (58.114.197.65), 03/15/2016 11:55:17
1F:推 JamesChen: A and B must be floating point scalars. <= 03/15 12:05
2F:→ JamesChen: 就积分的某部分要是 scalar 阿 03/15 12:05