Pseudo Margenau-Hill time-frequency distribution
[TFR,T,F] = tfrpmh(X) [TFR,T,F] = tfrpmh(X, T) [TFR,T,F] = tfrpmh(X, T, N) [TFR,T,F] = tfrpmh(X, T, N, H) [TFR,T,F] = tfrpmh(X, T, N, H, TRACE) [TFR,T,F] = tfrpmh(...,'plot')
A Nx elements vector (auto-PMH) or a Nx by 2 array signal (cross-PMH).
a real Nt vector with elements in [1 Nx] : time instant(s) (default: 1:NX).
a positive integer: the number of frequency bins (default:Nx). For faster computation N should be a power of 2.
real vector with odd length: the frequency smoothing window,(default: Hamming(N/4)).
It will be normalized such as the middle point equals 1 to preserve signal energy.
A boolean (or a real scalar) if true (or nonzero),the progression of the algorithm is shown (default : %f).
if one input parameter is 'plot', tfrqview is called and the time-frequency representation will be plotted.
A real N by Nt array: the time-frequency representation.
A N vector of normalized frequencies.
tfrcw computes the Choi-Williams distribution of a discrete-time signal X, or the cross Choi-Williams representation between two signals.
tfrpmh computes the Pseudo Margenau-Hill distribution of a discrete-time signal X, or the cross Pseudo Margenau-Hill representation between two signals.
Interactive use
N = 128; sig = fmlin(N,0.1,0.4); h = window("kr",N/2-1,3*%pi); tfrpmh(sig,1:N,N,h,'plot'); | ![]() | ![]() |
Non interactive use
N = 128; sig = fmlin(N,0.1,0.4); h = window("kr",N/2-1,3*%pi); [TFR,T,F] = tfrpmh(sig,1:N,N,h); clf; gcf().color_map = jetcolormap(128); grayplot(T,F,TFR'); | ![]() | ![]() |