fastsmooth.m

来自「Interactive smoothing for time-series si」· M 代码 · 共 24 行

M
24
字号
function SmoothY=fastsmooth(Y,smoothwidth)%  fastsmooth(Y,w) smooths vector Y by triangular% smooth of width = smoothwidth. Works well with signals up to % 100,000 points in length and smooth widths up to 1000 points. % Faster than tsmooth for smooth widths above 600 points.%  T. C. O'Haver, 2006.w=round(smoothwidth);SumPoints=sum(Y(1:w));s=zeros(size(Y));halfw=round(w/2);for k=1:length(Y)-w,   s(k+halfw)=SumPoints;   SumPoints=SumPoints-Y(k);   SumPoints=SumPoints+Y(k+w);ends=s./w;SumPoints=sum(s(1:w));SmoothY=zeros(size(s));for k=1:length(s)-w,   SmoothY(k+halfw)=SumPoints;   SumPoints=SumPoints-s(k);   SumPoints=SumPoints+s(k+w);endSmoothY=SmoothY./w;

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?