|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
最近在编一个程序,一部分代码如下:
syms x u d r n
F=1/((1+x)*sqrt(2*pi*d^2))*exp(-(log(1+x)+d^2/2)^2/(2*d^2)); %对数正态分布的分布函数
f=1/(x*sqrt(2*pi*d^2))*exp(-1/2*((log(x)-u)/d)^2); %对数正态分布的密度函数
frn=(vpa('n!')/(vpa('(r-1)!')*vpa('(n-r)!')))*F^(r-1)*(1-F)^(n-r)*f; %次序统计量密度函数
Ern=int(x*frn,x,0,1)
其实Ern就是求次序统计量的期望,但是估计式子太复杂,int积分不出来,matlab提示:
Warning: Explicit integral could not be found.
然后我考虑用数值积分函数quadl(),将上面int函数一行换成
[I,num]=quadl(frn,0,1)
但也不对,matlab提示:
??? Error using ==> fcnchk
If FUN is a MATLAB object, it must have an feval method.
Error in ==> quadl at 54
f = fcnchk(funfcn);
Error in ==> tmp3 at 11
[I,num]=quadl(frn,0,1)
是我对quadl使用错误吗?请问quadl能对多元函数数值积分吗?这个问题该如何解决?恳请高人指点,我在网上查了半天没弄明白,谢谢谢谢谢!!!
我QQ 93660036,在线等回复 |
|