How do I double the size of a vector in MATLAB with interpolation?
You need to use interp1 with ‘linear’ interpolation method: >> v = [1 2 3 4 10]; >> newNum = 13; % new number of elements in the “buffed” vector >> iv = interp1( linspace(0,1,numel(v)), v, linspace(0,1,newNum) ) iv = 1.0000 1.3333 1.6667 2.0000 2.3333 2.6667 3.0000 3.3333 3.6667 4.0000 6.0000 8.0000 10.0000