help 归一化
这是我编的程序可是为什么y总是归一化不了,因为y表示的是概率,所以要归一化
帮我看下是不是有问题那
function =ps(x,a,b,c,k,D);
a=0.25; b=1; c=1.8; k=2; D=0.01;
m=-(b+x*x)/c-k*x*x/c/(a-x);
out=exp(((1+x)*m-m*m/2)/D);
clear all; clf
N=1; y=1;
a=0.25; b=1; c=1.8; k=2; D=0.01;
x=0.01:0.0001:5.01;
for i=1:50001;
y(i)=ps(x(i),a,b,c,k,D);
end
N=trapz(x,y); y=y/N;
figure(1); plot(x,y,'k-');归一化
[ 本帖最后由 ChaChing 于 2009-8-23 14:49 编辑 ] 没有看懂,哪部分程序是归一化阿? delete or combine ?
http://forum.vibunion.com/forum/viewthread.php?tid=85647&highlight=已删除
[ 本帖最后由 ChaChing 于 2009-8-23 15:34 编辑 ]
回复 板凳 ChaChing 的帖子
原来matlab的删除,把这个移动过来了!回复 地板 无水1324 的帖子
跟偶相同想法, 这次坏人无水院长做!:lol 如无水院长所说, 没说清楚很难猜测!先说说一些小建议
1.a,b,c,k,D为输入引数, 在函数第一行又重新定义, 有点矛盾多馀, 建议拿掉
2.LZ原程序的写法是归一化面积!
3.猜测LZ是否要, y总合为1(是吗?), 将N=trapz(x,y);改为N=sum(y)
4.猜测LZ是否要, y最大值为1(是吗?), 将N=trapz(x,y);改为N=max(y) x 是否从-5算起?你的是啥分布?
回复 沙发 无水1324 的帖子
N=trapz(x,y); y=y/N 是归一化 也就是使得y总小于1因为如果f=ny(x)
则n为归一化系数,n就等于1除以y(x)对x积分
谢谢
那若是在matlab里归一化一般是怎么算呢
[ 本帖最后由 ChaChing 于 2009-8-24 16:16 编辑 ]
回复 6楼 ChaChing 的帖子
好的 我试试 谢谢你 我想要总和为1 。。。回复 8楼 zhang314hui 的帖子
我认为就是除以 ( 元素平方和开根号)这样子归一化吧,我只是猜测你的意图,回复 6楼 ChaChing 的帖子
为什么步长变了 p值就又变了呢 没有看懂, p是什么? 关于归一化,参考一下:http://forum.vibunion.com/UChome/space-89781-do-blog-id-17783.html
回复 11楼 zhang314hui 的帖子
不好意思是y 值 归一化使得y总等于1, 步长变了总点数变了, y的最大值当然变了!LZ到底是要, 归一化面积, y总或 y最大值?
页:
[1]
2