annotate aim-mat/tools/@signal/shiftcircular.m @ 4:537f939baef0 tip

various bug fixes and changed copyright message
author Stefan Bleeck <bleeck@gmail.com>
date Tue, 16 Aug 2011 14:37:17 +0100
parents 20ada0af3d7d
children
rev   line source
bleeck@3 1 % This external file is included as part of the 'aim-mat' distribution package
bleeck@3 2 % (c) 2011, University of Southampton
bleeck@3 3 % Maintained by Stefan Bleeck (bleeck@gmail.com)
bleeck@3 4 % download of current version is on the soundsoftware site:
bleeck@3 5 % http://code.soundsoftware.ac.uk/projects/aimmat
bleeck@3 6 % documentation and everything is on http://www.acousticscale.org
tomwalters@0 7 function sig=shiftcircular(sig,shifttime)
tomwalters@0 8 % shift the period in time circlular
tomwalters@0 9 % if shifttime > 0then circle positiv, otherwise negative
tomwalters@0 10
tomwalters@0 11
tomwalters@0 12 bin=time2bin(sig,shifttime);
tomwalters@0 13 nrpoints=getnrpoints(sig);
tomwalters@0 14 if bin<1
tomwalters@0 15 bin=nrpoints+bin;
tomwalters@0 16 end
tomwalters@0 17
tomwalters@0 18 vals=getvalues(sig);
tomwalters@0 19 valnew=zeros(size(vals));
tomwalters@0 20
tomwalters@0 21 valnew(1:bin)=vals(end-bin+1:end);
tomwalters@0 22 valnew(bin+1:end)=vals(1:end-bin);
tomwalters@0 23
tomwalters@0 24 sig=setvalues(sig,valnew);