0001 clear
0002
0003 N=10000;
0004
0005
0006 a=randn(N,1);
0007 b=diff(a);
0008 c=sin(2*pi*100*(1:N)'/N);
0009 d=sin(2*pi*110*(1:N)'/N);
0010
0011 x=[a;b;c;d];
0012
0013
0014 SHIFTS=0:10;
0015 x=nt_multishift(x,SHIFTS);
0016
0017
0018 figure(3); clf
0019 DEPTH=2;
0020 nt_split(x,3,DEPTH);
0021
0022 TOL=10^-6;
0023 disp(['rank of whole data: ', num2str(rank(x,TOL))]);
0024 idx=nt_split(x,3,DEPTH);
0025 disp(['rank of intervals: ', ...
0026 num2str([rank(x(1:idx(1),:),TOL), ...
0027 rank(x(idx(1)+1:idx(2),:),TOL), ...
0028 rank(x(idx(2)+1:idx(3),:),TOL), ...
0029 rank(x(idx(3)+1:end,:),TOL)])]);