功能:数据分段匹配

格式:
[z,i,n]=DataMatch(x,y,a,b,Error)
[z,i,n]=DataMatch(x,y,a,b)
[z,i,n]=DataMatch(x,y,a)
[z,i,n]=DataMatch(x,y)

x:需要匹配的矩阵变量
y:需要对比的矩阵变量
a:匹配时在x当中的起始索引位置,默认为1
b:匹配时在x当中的结束索引位置,默认为x中元素最大索引值
Error:梯度误差控制变量,默认为1E-6

z:返回最佳的匹配数据段
i:返回匹配最佳数据时在x数据当中的起始索引
n:返回梯度匹配时的匹配量


说明:函数采用梯度匹配算法进行匹配,注意x、y数据的采样间隔必须一致.本函数作用是在x数据中匹配一段最佳的与y变化趋势一致的数据

例子:

x=[1  2  3  2  1  1  3  6  9  8  5  6  8  9 ]
y=[2  3.2  6.5  8.8  7.6 ]

[z,i,n]=DataMatch(x,y)//回车得到如下结果,下面的z是在x当中从第i=6索引位置开始往后取数据获得
z =
[ 1.00000000000000    3.00000000000000    6.00000000000000    9.00000000000000    8.00000000000000 ]
i =
[ 6.00000000000000 ]
n =
[ 5.00000000000000 ]