File:Fourier transform, Fourier series, DTFT, DFT.svg
De Wikimedia Commons
Salta a la navegació
Salta a la cerca
Mida d'aquesta previsualització PNG del fitxer SVG: 800 × 477 píxels. Altres resolucions: 320 × 191 píxels | 640 × 381 píxels | 1.024 × 610 píxels | 1.280 × 763 píxels | 2.560 × 1.526 píxels | 1.057 × 630 píxels.
Fitxer original (fitxer SVG, nominalment 1.057 × 630 píxels, mida del fitxer: 97 Ko)
Informació del fitxer
Dades estructurades
Llegendes
Resum
[modifica]DescripcióFourier transform, Fourier series, DTFT, DFT.svg |
English: A Fourier transform and 3 variations caused by periodic sampling (at interval T) and/or periodic summation (at interval P) of the underlying time-domain function. |
|||
Data | ||||
Font | Treball propi | |||
Autor | Bob K | |||
Permís (Com reutilitzar aquest fitxer) |
Jo, el titular dels drets d'autor d'aquest treball, el public sota la següent llicència:
|
|||
Altres versions |
This file was derived from: |
|||
SVG genesis InfoField | El codi font d’aquest SVG no és vàlid perquè hi 13 han errors. Aquesta imatge vectorial ha estat creada amb LibreOffice |
|||
Octave/Gnuplot source InfoField | click to expand
This graphic was created with the help of the following Octave script: graphics_toolkit gnuplot
pkg load signal
%=======================================================
function Y = DFT(y,t,f)
W = exp(-j*2*pi * t' * f); % Nx1 × 1x8N = Nx8N
Y = abs(y * W); % 1xN × Nx8N = 1x8N
% Y(1) = SUM(n=1,2,...,N): { e^(-B × t(n)^2) × e^(-j2p ×-4096/8N × t(n)) }
% Y(2) = SUM(n=1,2,...,N): { e^(-B × t(n)^2) × e^(-j2p ×-4095/8N × t(n)) }
% Y(8N) = SUM(n=1,2,...,N): { e^(-B × t(n)^2) × e^(-j2p × 4095/8N × t(n)) }
Y = Y/max(Y);
endfunction
T = 1; % time resolution (arbitrary)
Nyquist = 1/T; % Nyquist bandwidth
N = 1024; % sample size
I = 8; % freq interpolation factor
NI = N*I; % number of frequencies in Nyquist bandwidth
freq_resolution = Nyquist/NI;
X = (-NI/2 : NI/2 -1); % center the frequencies at the origin
freqs = X * freq_resolution; % actual frequencies to be sampled and plotted
% (https://octave.org/doc/v4.2.1/Graphics-Object-Properties.html#Graphics-Object-Properties)
set(0, "DefaultAxesXlim",[min(freqs) max(freqs)])
set(0, "DefaultAxesYlim",[0 1.05])
set(0, "DefaultAxesXtick",[0])
set(0, "DefaultAxesYtick",[])
% set(0, "DefaultAxesXlabel","frequency")
set(0, "DefaultAxesYlabel","amplitude")
#{
Sample a funtion at intervals of T, and display only the Nyquist bandwidth [-0.5/T 0.5/T].
Technically this is just one cycle of a periodic DTFT, but since we can't see the periodicity,
it looks the same as a continuous Fourier transform, provided that the actual bandwidth is
significantly less than the Nyquist bandwidth; i.e. no aliasing.
#}
% We choose the Gaussian function e^{-B (nT)^2}, where B is proportional to bandwidth.
B = 0.1*Nyquist;
x = (-N/2 : N/2 -1); % center the samples at the origin
t = x*T; % actual sample times
y = exp(-B*t.^2); % 1xN matrix
Y = DFT(y, t, freqs); % 1x8N matrix
% Re-sample to reduce the periodicity of the DTFT. But plot the same frequency range.
T = 8/3;
t = x*T; % 1xN
z = exp(-B*t.^2); % 1xN
Z = DFT(z, t, freqs); % 1x8N
%=======================================================
hfig = figure("position", [1 1 1200 900]);
x1 = .08; % left margin for annotation
x2 = .02; % right margin
dx = .05; % whitespace between plots
y1 = .08; % bottom margin
y2 = .08; % top margin
dy = .12; % vertical space between rows
height = (1-y1-y2-dy)/2; % space allocated for each of 2 rows
width = (1-x1-dx-x2)/2; % space allocated for each of 2 columns
x_origin1 = x1;
y_origin1 = 1 -y2 -height; % position of top row
y_origin2 = y_origin1 -dy -height;
x_origin2 = x_origin1 +dx +width;
%=======================================================
% Plot the Fourier transform, S(f)
subplot("position",[x_origin1 y_origin1 width height])
area(freqs, Y, "FaceColor", [0 .4 .6])
% xlabel("frequency") % leave blank for LibreOffice input
%=======================================================
% Plot the DTFT
subplot("position",[x_origin1 y_origin2 width height])
area(freqs, Z, "FaceColor", [0 .4 .6])
xlabel("frequency")
%=======================================================
% Sample S(f) to portray Fourier series coefficients
subplot("position",[x_origin2 y_origin1 width height])
stem(freqs(1:128:end), Y(1:128:end), "-", "Color",[0 .4 .6]);
set(findobj("Type","line"),"Marker","none")
% xlabel("frequency") % leave blank for LibreOffice input
box on
%=======================================================
% Sample the DTFT to portray a DFT
FFT_indices = [32:55]*128+1;
DFT_indices = [0:31 56:63]*128+1;
subplot("position",[x_origin2 y_origin2 width height])
stem(freqs(DFT_indices), Z(DFT_indices), "-", "Color",[0 .4 .6]);
hold on
stem(freqs(FFT_indices), Z(FFT_indices), "-", "Color","red");
set(findobj("Type","line"),"Marker","none")
xlabel("frequency")
box on
%=======================================================
% Output (or use the export function on the GNUPlot figure toolbar).
print(hfig,"-dsvg", "-S1200,800","-color", 'C:\Users\BobK\Fourier transform, Fourier series, DTFT, DFT.svg')
|
LaTex
[modifica]
Historial del fitxer
Cliqueu una data/hora per veure el fitxer tal com era aleshores.
Data/hora | Miniatura | Dimensions | Usuari/a | Comentari | |
---|---|---|---|---|---|
actual | 14:10, 23 ago 2019 | 1.057 × 630 (97 Ko) | Bob K (discussió | contribucions) | re-color the portion of the DFT computed by an FFT | |
14:32, 21 ago 2019 | 1.089 × 630 (95 Ko) | Bob K (discussió | contribucions) | replace copy/paste LaTex with LibreOffice "text boxes" | ||
04:36, 19 ago 2019 | 1.089 × 630 (78 Ko) | Bob K (discussió | contribucions) | Bug fixed in Octave script... minor effect on DTFT plot | ||
17:06, 8 gen 2019 | 922 × 594 (145 Ko) | Bob K (discussió | contribucions) | User created page with UploadWizard |
No podeu sobreescriure aquest fitxer.
Ús del fitxer
Les 9 pàgines següents utilitzen aquest fitxer:
- User:Paris 16/Recent uploads/2019 August 17-19
- User:Paris 16/Recent uploads/2019 August 20-22
- User:Paris 16/Recent uploads/2019 August 23-25
- User:Paris 16/Recent uploads/2019 January 8-10
- Commons:WikiProject Aviation/recent uploads/2019 August 19
- Commons:WikiProject Aviation/recent uploads/2019 August 21
- Commons:WikiProject Aviation/recent uploads/2019 August 23
- Commons:WikiProject Aviation/recent uploads/2019 January 8
- File:Fourier transform, Fourier series, DTFT, DFT.gif
Ús global del fitxer
Utilització d'aquest fitxer en altres wikis:
- Utilització a ca.wikipedia.org
- Utilització a en.wikipedia.org
- Utilització a es.wikipedia.org
- Utilització a id.wikipedia.org
- Utilització a sr.wikipedia.org
Metadades
Aquest fitxer conté informació addicional, probablement afegida per la càmera digital o l'escàner utilitzat per a crear-lo o digitalitzar-lo. Si s'ha modificat posteriorment, alguns detalls poden no reflectir les dades reals del fitxer modificat.
Amplada | 298.45mm |
---|---|
Alçària | 177.8mm |