C-C 方法求时间延迟程序设计 一、子程序设计: 本程序需调用四个子函数: (1) Heaviside.m:用来求解 Heaviside 函数的值; (2) Reconstitution.m:用来进行相空间重构; (3) Disjoint.m:用来将时间序列分拆为 t 个不相关的时间序列; (4) Correlation_integral.m:用来计算时间序列的关联积分。 程序说明: (1) Heaviside.m: 0,10,0)(xxx 输入 r 和 d 值的,根据公式求得 heaviside 函数的值 sita 并输出。 (2) Reconstitution.m:根据给定的时间延迟t 和嵌入维数 m 重构 m 维的相空间 )1(,,2,1)],)1((),2(),(),([)(mNMMimtxtxtxtxtYiiiii 程序输出一个Mm 的矩阵; (3) disjoint.m:将时间序列分成 t 个不相交的时间序列,长度tNl/ },,,{},,,{},,,{3222221211tttttttxxxxxxxxx 程序输出为一个lt 的矩阵 (4) Correlation_integral.m: 关联积分定义为:0,)()1(2),,,(1rdrMMtrNmCMjiij 其中:jiijXXd 0,10,0)(xxx 程序流程: 1、 输入数据 X:X 为根据给定的时间延迟t 和嵌入维数 m 进行相空间重构后得到的Mm 的矩阵; 2、 对相空间中所有点求距离,并保存在数组 d(i,j)中; 3、 调用 Heaviside 函数计算所有的 Heaviside 函数值并求和得到 sum_h 4、 计算出关联积分的值,并输出 C_I。 二、主程序设计: 1、 读入数据; 2、 计算时间序列的标准差; 3、 让 r 从 sigma/2 到 2sigma 变化,m 从 2 到 5 变化,t 从 1 到 200 变化; 4、 调用 disjoint 函数将时间序列分拆成 t 个不相交的子列,并调用correlation_integral 函数计算 C(1,N,r,t); 5、 调用 reconstitution 函数对子列进行相空间重构,并调用 correlation_integral函数计算 C(m,N,r,t); 6、 计算 C(m,N,r,t)- C(1,N,r,t)^m,并对 t 求和得到 s_t3; 7、 根据公式tsjmxjsjtrCtrmCttrmS1)],,1(),,([1),,(计算得到 s_t2(j),并对jr 求和得到 s_t1; 8、 将 s_t1 赋给 s_t0(m),并对 m 求和,得到 s_t; 9、 根据公式 5241),,(161)(mjj trmStS求得 s(t); 10、 同时利用已求出的s(t),根据公式)},,(min{)},,(max{),(trmStrmStmSjj和)()()(tStStScor分别求出相应的 delt_s(t)...