回复 #7 kevin19821 的帖子
help size 看看回复 #1 zhlong 的帖子
zhlong 的注释写得挺好,但是个人觉得有两处值得商榷:(1)if d(i)==0 % we are on a zero %%导数为0的点,即”驻点“,但驻点不一定都是极值点,如y=x^3的x=0处
这个地方可不是为了找”驻点“,它是为了处理出现峰值相等的情况,例如
x = [ 0 0 1 4 4 1 0 0 ];
这种数据在对正弦波非周期采样时可能会遇到。
在程序中,把第一个4的地方作为峰值。
(2)elseif sign(d(i))~=sign(d(i+1)) % we are straddling a zero so%%如y=|x|在x=0处是极值点,但该点倒数不存在,所以不能用上面的判断方法
同理,这里也不是为了判断导数,这句话是处理正常的情况,例如
x = [ 0 0 1 4 1 0 0 ];
这就是通常意义下的峰值。
此外,个人认为采用 diff求最值的过程中,跟连续信号的求导并没有直接的联系,因为离散数据本身并不存在所谓的连续性问题,所以极值是一定可以通过计算获得的。
ps. 在这个程序中输入参数n并没有起到作用
[ 本帖最后由 zhlong 于 2007-9-3 21:03 编辑 ]
回复 #17 xray 的帖子
非常感谢xary的指正!:handshake 一定要经常光临本版指导工作啊!我后来也觉得这两个地方有问题,但没有深究,误导了各位版友,向大家道歉:loveliness: 。
回复 #18 zhlong 的帖子
你不用太客气,其实你转贴的内容无论对错 都是一个参照,相信仔细看过这个帖子的人都会和rilling的程序作一个比较,也是促进理解啊 :handshake回复 5楼 qinle 的帖子
:@) 您好,我运行这个程序出现错误,请问该怎么做呢?回复 14楼 kevin19821 的帖子
请问您怎么使用楼主程序加曲线延拓运行的啊?初学不懂,忘指教! 谢谢楼主 感谢分享!
页:
1
[2]