注册 登录
编程论坛 Matlab

差分的方法求取离散点极大值个数

lius0602 发布于 2013-05-06 21:54, 895 次点击
求各位大侠们帮帮忙,小弟不胜感激!
具体的需求如下所示,数据在附近中!



差分的方法求取离散点极大值个数
1、调用1982.txt中的数据,运用差分的方法求取行数据的极大值个数。
2、总体需求:
一行数据是包含N个元素的离散点系列S,由S的前后两个元素值的差构成包含N-1个元素点系列S1。
S1=diff(S)
diff为取前后两个元素差的函数。
接着判断S1各个元素值的正负,如果S1的某个元素值小于0,就把这个元素值赋为-1,如果大于等于0,就把这个元素的值赋为1,存为点系列S2。
S2=sign(S1)
sign为判断元素值为正负的函数。
然后,再求S2的前后两个元素值的差,形成点系列S3。
S3=diff(S2)
最后,将点系列S3的元素值为-2的元素计数,最终求得的极大值个数即为元素值为-2的总个数。
Number=sum(S3==-2)
sum为求元素值为-2的元素的计数函数。
●注:由于需求所致,最终极大值个数会受到多方面的影响,在这里有所限制:当值大于等于340时,取最终计数的极大值个数;当小于340时,取极大值个数为0。
3、计算出每行数据的极大值个数然后输出,按行输出结果值。
只有本站会员才能查看附件,请 登录
2 回复
#2
lius06022013-05-06 21:55
用Matlab实现--差分的方法求取离散点极大值个数!
#3
lius06022013-05-08 16:52
求高手指点?
1