MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   MATLAB论坛 (https://www.labfans.com/bbs/forumdisplay.php?f=6)
-   -   [讨论]我的函数为何得不到想要的结果? (https://www.labfans.com/bbs/showthread.php?t=6964)

linzuhan2009 2009-03-20 18:12

[讨论]我的函数为何得不到想要的结果?
 
简单说明一下:
这里,y是已知,x是所求,gy是x的函数,e是y*gy在0到正无穷的积分,故e也是x的函数。
function x=fire(y)
gy='2/(sqrt(2*pi)*x))*exp(-y^2/(2*x^2))';
e='int(y*gy,y,0,+inf)';
x=solve('e=2*x/sqrt(2*pi)','x');
结果如下:
ans =

1/2*e*pi^(1/2)*2^(1/2)

而我需要的答案是没有e的,(这里e是x的函数)。
请大家帮我看看,应该怎样写程序。

slgu 2009-03-21 07:55

回复: [讨论]我的函数为何得不到想要的结果?
 
正态分布的积分没有原函数,不能以函数的方式表示曲线下的面积!int对该被积函数(正态概率密度函数)无效。正态分布的积分应用诸如辛普森积分法才行。当然,matlab本身就带有正态分布的累积概率函数(概率)命令:normcdf

linzuhan2009 2009-03-21 10:28

回复: [讨论]我的函数为何得不到想要的结果?
 
[QUOTE=slgu;26662]正态分布的积分没有原函数,不能以函数的方式表示曲线下的面积!int对该被积函数(正态概率密度函数)无效。正态分布的积分应用诸如辛普森积分法才行。当然,matlab本身就带有正态分布的累积概率函数(概率)命令:normcdf[/QUOTE]

你好,问题还是没有得到解决。


所有时间均为北京时间。现在的时间是 14:36

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.