⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 readme

📁 fastest algorithm to find EMD.
💻
字号:
These codes were developed using matlab 6.0 under Linux.  They have beensuccessfully run on all versions of matlab  >6.0 and on all operating systems. They can be quite memory intensive (and slow) if using a large time series.  A quick test of these codes is run using the file example1.m    imf = example1; or imf = example1(t,x);this runs a synthetic example or runs on user provided data(type 'help example1' at matlab's command prompt for more information)A much longer test is also provided to demonstrate the use of EMD fortime-domain filtering.  See the help for example2.m (type 'help example2').    example2;    this loads a matlab file, line15.mat, or an ASCII file, line15.txt, andperforms the EMD on every seismic trace in the file.  The ASCII file containstwo-way travel time in column 1, followed by trace data in every additionalcolumn.  Once loaded, the emd is performed using mat_emd.m, and the user(after a long time) is allowed to interactively select which cumulative-sumIMFs best represent their desired output.Additional help can be found while running matlab by typing 'help function.m' where function.m is the script of interest.  The general application of these codes is as follows:To perform the Empirical Mode Decomposition  imf = semd(x,nIMFs,nITS);   inputs:	x     = time series to decompose	nIMFS = max number of IMFs to produce	nITS  = max number of iterations for sifting    outputs:	imf   = IMFs for xTo perform the EMD on a matrix  [imf,cumimf] = mat_emd(X,nIMFs,nITS);   inputs:	X      = matrix of several time series to decompose,		 one column per signal	nIMFS  = max number of IMFs to produce	nITS   = max number of iterations for sifting   outputs:	imf    = bank of IMFs for each X	cumimf = cumulative-sum bank of IMFs for each X	To select filtered traces from the outputs from mat_emd  [y,index] = IMFpick(X,t,cumimf,scale);    inputs:     X      = same as in mat_emd above     t      = single column vector of times for each sample in X     cumimf = cumulative-sum IMFs from mat_emd above     scale  = optional t^n scaling factor.  [] for no scaling         outputs:     y      = EMD-filtered data     index  = number of IMFs used to produce each 'y'To perform the Hilbert-Huang Transform (after completing the EMD)  [omega,amp,mag,phase,w] = fhilbert(imf,t0,tf,H);   inputs:	imf   = IMFs from semd.m	t0    = start time for series in seconds	tf    = stop time for series in seconds	H     = set to [] or type 'help fhilbert' in matlab for more information   outputs:	omega = instantaneous frequency as a function of time	amp   = instantaneous amplitude as a function of time	mag   = time-frequency amplitude matrix		(another form of omega(t) and amp(t)	phase = instantaneous phase as a function of time	w     = frequencies for which 'mag' was calculatedAll other files are called from within.A sample data file (line15.mat) is included to test these codes. Type'load line15.mat' in matlab and a matrix of seismic traces will be loadedinto memory (one trace per column)*** The official signal processing toolbox for matlab is required.Bradley M. BattistaUniversity of South CarolinaDepartment of Geological Sciences701 Sumter Street, EWS 617Columbia, SC. 29208COPYRIGHT: see the associated COPYRIGHT.txt file, and alsohttp://software.seg.org/disclaimer2.txtThis source code may be found online at:http://software.seg.org/2007/0003

⌨️ 快捷键说明

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