annotate multi_freq_ddm_int.m @ 4:72c011ed1977
tip
more elaborate example with non-stat. estimate explanation
author |
smusevic |
date |
Tue, 30 Jul 2013 09:56:27 +0100 |
parents |
a4a7e3405062 |
children |
|
rev |
line source |
dan@0
|
1 function mfdi = multi_freq_ddm_int(frqs, mf_ders, sig, N, tol)
|
dan@0
|
2 %multi-frequency distribution derivative based estimator for
|
dan@0
|
3 % non-stationary sinusoidal analysis. Frequencies may not be at the bins of
|
dan@0
|
4 % FFT...
|
dan@0
|
5 %
|
dan@0
|
6 % Uses the Fourier kernel at specified frequencies. No assumptions about
|
dan@0
|
7 %
|
dan@0
|
8 % [1] Michael Betser: Sinusoidal Polynomial Estimation Using The Distribution
|
dan@0
|
9 % Derivative, in IEEE Transactions on Signal Processing, Vol.57, Nr. 12,
|
dan@0
|
10 % December 2009
|
dan@0
|
11 %
|
dan@0
|
12 %
|
dan@0
|
13 %
|
dan@0
|
14
|
dan@0
|
15
|
dan@0
|
16 R = size(frqs,2);
|
dan@0
|
17 t = [-(N-1)/2:(N-1)/2]'/fs;
|
dan@0
|
18
|
dan@0
|
19 t_mat = repmat(t,[1,R]);
|
dan@0
|
20 frq_mat = repmat(frqs,[N,1]);
|
dan@0
|
21 krnls = exp(1j .* t_mat .* frq_mat);
|
dan@0
|
22 krlns_ders = 1j * krnls .* frq_mat;
|
dan@0
|
23
|
dan@0
|
24 mfdi = gen_ddm_int(krnls, krlns_ders, mf_ders, sig, N, tol);
|
dan@0
|
25
|
dan@0
|
26 end |