Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- % ***** ***** ***** ***** ***** ***** ***** ***** *****
- % Předmět
- % Zpracování číslicových signálů
- %
- % Téma
- % Poměr počtu násobení při DFT a FFT
- % DFT, FFT, DFT/FFT
- % Srovnání náročnosti výpočtu DFT a FFT
- %
- % Připravil
- % Jan (jenik) Skapa, 2007/2008,
- % E-mail: jan.skapa@vsb.cz
- % JABBER: ska109@vsb.cz
- % ICQ: 349 682 616
- %
- % ***** ***** ***** ***** ***** ***** ***** ***** *****
- % Soubor je určen jako studijní materiál!
- % Nešířit mimo katedru 440 VŠB-TU Ostrava.
- % ***** ***** ***** ***** ***** ***** ***** ***** *****
- %
- % VSB-Technical University of Ostrava
- % Dept. of Telecommunications
- % 17. listopadu 15/2172
- % 708 33 Ostrava-Poruba, Czech Republic
- % ***** ***** ***** ***** ***** ***** ***** ***** *****
- clear all; close all; clc;
- pocet_vzorku = 1 : 2^4;
- pocet_nasobeni_DFT = pocet_vzorku.^2;
- pocet_nasobeni_FFT = pocet_vzorku .* log2(pocet_vzorku);
- pomer_nasobeni_DFT_FFT = pocet_nasobeni_DFT ./ pocet_nasobeni_FFT;
- %% Vykreslení průběhů
- plot(pocet_vzorku, pocet_nasobeni_DFT, 'k', pocet_vzorku, pocet_nasobeni_FFT, 'k', pocet_vzorku, pomer_nasobeni_DFT_FFT, 'k'); axis([1 max(pocet_vzorku) 0 max(pocet_nasobeni_DFT)]);
- title('Pocty nasobeni pri DFT a FFT');
- xlabel('N'); ylabel('Pocty nasobeni');
- text(max(pocet_vzorku) *3/4, pocet_nasobeni_DFT(pocet_vzorku == max(pocet_vzorku) *3/4), ...
- ['$DFT$', ' ', ... \sim N^{2}
- '$\rightarrow$'], ...
- 'HorizontalAlignment','right', 'VerticalAlignment', 'baseline', 'FontSize', 16);
- text(max(pocet_vzorku) *3/4, pocet_nasobeni_FFT(pocet_vzorku == max(pocet_vzorku) *3/4), ...
- ['$FFT$', ' ', ... \sim N log_2(N)
- '$\searrow$'], ...
- 'HorizontalAlignment', 'right', 'VerticalAlignment', 'bottom', 'FontSize', 16);
- text(max(pocet_vzorku) *3/4, pomer_nasobeni_DFT_FFT(pocet_vzorku == max(pocet_vzorku) *3/4), ...
- '$\swarrow DFT / FFT$', ...
- 'HorizontalAlignment','left', 'VerticalAlignment', 'bottom', 'FontSize', 16);
- %% Uložení průběhů do souboru
- csvwrite('/media/Data/Skola/Zpracovani_cislicovych_signalu/_DSP_skripta_4/figures/pocet_nasobeni_DFT.csv', [pocet_vzorku.' pocet_nasobeni_DFT.']);
- csvwrite('/media/Data/Skola/Zpracovani_cislicovych_signalu/_DSP_skripta_4/figures/pocet_nasobeni_FFT.csv', [pocet_vzorku.' pocet_nasobeni_FFT.']);
- csvwrite('/media/Data/Skola/Zpracovani_cislicovych_signalu/_DSP_skripta_4/figures/pomer_nasobeni_DFT_FFT.csv', [pocet_vzorku.' pomer_nasobeni_DFT_FFT.']);
- %% Tisk FIGURE na celou šířku A4 do PDF
- set(0, 'Units', 'normalized');
- monitor = get(0, 'ScreenSize');
- set(gcf, ...
- 'PaperPositionMode', 'manual', ...
- 'PaperUnits', 'centimeters', ...
- 'PaperType', 'A4',...
- 'PaperOrientation', 'landscape');
- papir = get(gcf, 'PaperSize');
- set(gcf, ...
- 'MenuBar', 'none',...
- 'PaperPosition', [0 0 papir(1) papir(2)]);
- % get(fig_1, 'PaperSize')
- print(gcf, '-dpdf', 'Pomer_nasobeni_DFT_FFT.pdf');
- close gcf;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement