我正在研究一个需要计算数据序列的二阶差分图的项目。数据矢量为x(n)和我需要计算下列值在图形上绘制:二阶差分图
X(n) = x(n+1)- x(n)-----Equation(1)
Y(n) = x(n+2) - x(n-1)-------Equation(2)
然后X(N)相对于Y(n)的曲线图将是我SODP。 如何计算第一个方程的x(n + 1)和MATLAB中第二个方程的x(n + 2)。我尝试下面的代码来计算x的第(n + 1)的值:
X = zeros(1,N);
% Assume the first element is A1
X(1) = A1;
for n = 1:(N-1)
if rem(n,2) == 0
% even case
An = A0;
else
% odd case
An = A1;
end
% step to increment X(n) to X(n+1)
X(n+1) = An*X(n)
end
但是我收到相同的x(n)的数据作为输出。 我很感激在这个问题上的任何输入。 谢谢大家提前。
什么您的阵列的X和Y的样子?从你的算法看来,你的x似乎是'[A1,A1 * A1,A0 * A1^2,A0 * A1^3 ...]'。它是否正确? – Anthony
亲爱的安东尼, 'x'是一个TXT文件,由ASCII代码中的一个EEG时间序列的4096个样本组成。我读这个文件为x(n),需要计算x(n + 1)和x(n + 2)。希望这给你一个清晰的想法。谢谢 – Dattaprasad