function data=locsmooth(data,Fs,Tw,Ts) % Running line fit (using local linear regression) - 1d only, continuous % processes % Usage: data=locsmooth(data,Fs,Tw,Ts) % Inputs: % Note that units of Fs, movinwin have to be consistent. % data (single vector) % Fs (sampling frequency) - optional. Default 1 % Tw (length of moving window) - optional. Default. full length of data (global detrend) % Ts (step size) - optional. Default Tw/2. % % Output: % data (locally smoothed data). data=change_row_to_column(data); N=size(data,1); if nargin < 2; Fs=1; end; if nargin < 3; Tw=N/Fs; end; if nargin < 4; Ts=Tw/2; end; n=round(Fs*Tw); dn=round(Fs*Ts); if ~isreal(data) yr=real(data); yi=imag(data); tmp=runline(yr,n,dn); yr=tmp'; tmp=runline(yi,n,dn); yi=tmp'; data=yr+i*yi; else tmp=runline(data,n,dn); data=tmp'; end