% function [T,X]=my_filter(t,x,l,o); % % Uses the butterworth filter to filter the data. % % t : time vector % x : data vector or matrix % l : l=length of filter % o : order of filter % % T : new time vector (end values removed) % X : filtered vector or matrix % made by Tore Furevik, Geophysical Institute, University of Bergen. % email: tore@gfi.uib.no Date 18/9-1997. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% function [T,X]=my_filter(t,x,l,o); [b,a]=butter(o,2/l); [I,J]=size(x); X=filtfilt(b,a,x); T=0.5*(t(1:length(t)+1-l)+t(l:length(t))); c=l+1; if (min(I,J)==1) X=0.5*(X(floor(c/2):length(X)+1-ceil(c/2))+... X(ceil(c/2):length(X)+1-floor(c/2))); else X=0.5*(X(floor(c/2):I+1-ceil(c/2),:)+... X(ceil(c/2):I+1-floor(c/2),:)); end;