MATLAB: Alternatives to using diff(X,2)

MATLABprogramming

Just a simple question:
We have an alternative for the opreation diff(A,1) given by A(2:end)-A(1:end-1), from an earlier post.
How to generalize it for diff(A,2)? for say A=[1 2 3 4 5 6]? to get [0 0 0 0].
Thanks.

Best Answer

Just apply the same method twice
D1 = A(2:end)-A(1:end-1);
D2 = D1(2:end)-D1(1:end-1)
or
D2 = conv(A,[1 -2 1],'valid')