Fourierreihen und Fouriertransformation - Fachhochschule ...
Fourierreihen und Fouriertransformation - Fachhochschule ...
Fourierreihen und Fouriertransformation - Fachhochschule ...
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 74<br />
Wenn die Abtastwerte sich auf ein allgemeines Intervall [a , a + T] beziehen, dann muss<br />
im trigonometrischen Polynom noch zusätzlich t durch t – a ersetzt werden<br />
N<br />
( ) ( ) ∑ − 1<br />
α<br />
0<br />
α<br />
N ⎛ 2πN<br />
⎞ ⎛ ⎛ 2πk<br />
⎞ ⎛ 2πk<br />
⎞⎞<br />
f t = + cos⎜<br />
t − a ⎟ + ⎜α<br />
k<br />
cos⎜<br />
( t − a) ⎟ + β<br />
k<br />
sin⎜<br />
( t − a)<br />
⎟⎟<br />
2 2 ⎝ T ⎠ k = 1 ⎝ ⎝ T ⎠ ⎝ T ⎠⎠<br />
5.4.1 Beispiel (Abgetastete Werte in einem beliebigen Intervall)<br />
Das folgende Programm implementiert die Berechnung der α k <strong>und</strong> β k aus den komplexen<br />
c k für das Intervall [a, a + T] mit a = 0 <strong>und</strong> Τ = 2π.<br />
% Berechnung der reellen Fourierkoeffizienten<br />
% aus den komplexen von fft<br />
% abgetastete Werte in einem beliebigen Intervall [a,a+T]<br />
% Beispiel Funktion f(t)=1./(1+t.^2)<br />
% Fillename = dfi4_fft.m<br />
clear<br />
% verschiedene Funktionen zum ausprobieren<br />
%func='exp(t)';<br />
%func='abs(t)/pi'; % Dreiecksfolge<br />
%func='exp(-t.^2)';<br />
%func='exp(-abs(t))';<br />
%func='sin(t)';<br />
func='1./(1+t.^2)';<br />
%func='sin(2*pi*5*t)+sin(2*pi*15*t)+randn(size(t))';<br />
%func='t';<br />
f=inline(func);<br />
N=8; % 2N Werte<br />
n=2*N;<br />
% Defintion des Intervalls, in welchem die obigen<br />
% Funktionsgleichungen gelten<br />
A=0; % Anfangswert des Intervalls<br />
T=2*pi; % Periode des Intervalls<br />
ome=2*pi/T;<br />
% Abtastung an 2N Stellen im Intervall<br />
x=[0:2*N-1].*T/(2*N)+A;<br />
y=f(x);<br />
n=length(y);<br />
% Plotten der abgetasteten Punkte<br />
plot(x,y,'o','MarkerFaceColor','k'); % plot der Datenpunkte<br />
title(['Periode = ',num2str(T)]);<br />
axis([A-T A+2*T min(y)-1 max(y)+1])<br />
grid on<br />
% Berechnung der Fourierkoeffizienten mit fft<br />
y(1)=0.5*(f(A)+f(A+T));<br />
fy=fft(y);