Heim >Computer-Tutorials >Computerwissen >Wie wäre es mit einer Fourier-Transformation mit Matlab?
Schreiben Sie zuerst das Programm:
clc
klar
CU=[]; %%Importieren Sie Ihre Daten hier
CU_f=fft(CU); %% führt eine FFT-Transformation in den Frequenzbereich durch
Abbildung(1)
Nebenhandlung(2,1,1)
plot(CU);
Nebenhandlung(2,1,2)
plot(abs(CU_f))
******************************
CU_f ist das Spektrogramm, aber der von Ihnen erwähnte Punkt, der 50 Hz entspricht, muss basierend auf Ihrem experimentellen Prozess gefunden werden. Die in MATLAB eingegebenen Daten bestehen lediglich aus Tausenden von Punkten, die nur eine mathematische Bedeutung und keine physikalische Bedeutung haben. Zunächst haben Sie diese Tausenden von Punkten abgetastet. Wie hoch ist also Ihre Abtastfrequenz? Das weiß nur die Person, die das Experiment durchführt, nicht MATLAB selbst. Nehmen Sie an, dass die Abtastfrequenz Fs beträgt. Dann beträgt im Bild CU_f die tatsächliche Frequenz, die dem letzten Punkt entspricht, Fs (die tatsächliche Frequenz, die dem ersten Punkt entspricht, beträgt 0 Hz). Dann können Sie anhand der linearen Proportionalbeziehung den Punkt ermitteln, der 50 Hz entspricht.
Verwenden Sie MATLAB, um die Fourier-Transformation zu implementieren:
Der Benutzer gibt eine Funktion willkürlich ein, gibt dann die Fourier-Transformationsfunktion der Funktion aus und gibt dann die Amplitudenfrequenz aus.
x=sin(2*pi*t); %Geben Sie eine beliebige Funktion ein.
y=fft(x); %Fourier-Transformationsfunktion.
plot(abs(y)); % Amplitudenfrequenz.
Funktion stellt eine Entsprechung zwischen jedem Eingabewert und einem eindeutigen Ausgabewert dar. Diese Beziehung führt dazu, dass jedes Element in einem Satz einem eindeutigen Element in einem anderen (möglicherweise demselben) Satz entspricht. Das Standardsymbol für den Ausgabewert x, der dem Eingabewert in der Funktion f entspricht, ist f(x). Die Menge, die alle Eingabewerte einer Funktion enthält, wird als Domäne der Funktion bezeichnet, und die Menge, die alle Ausgabewerte enthält, wird als Bereich bezeichnet. Wenn wir zuerst das Konzept der Zuordnung definieren, können wir die Funktion einfach als definieren. Die zwischen nicht leeren Zahlenmengen definierte Zuordnung wird als Funktion bezeichnet.
Fourier-Transformation kann eine Funktion, die bestimmte Bedingungen erfüllt, als lineare Kombination trigonometrischer Funktionen (Sinus- und/oder Kosinusfunktionen) oder ihrer Integrale ausdrücken. In verschiedenen Forschungsbereichen gibt es viele verschiedene Variationen der Fourier-Transformation, beispielsweise die kontinuierliche Fourier-Transformation und die diskrete Fourier-Transformation.
% Vergiss nicht, mir Punkte zu geben, [ein breites Lächeln]
alles löschen
ts=0,001; % Abtastzeitraum
t=0:ts:20; % Zeitsequenz
y=sin(t)+0,5*sin(2*t)+0,2*sin(6*t);
Figur
plot(t,y)
Titel('Original Singal')
xlabel('Zeit(en)')
ylabel('Magnitude')
Fs=1/ts; % Abtastfrequenz
L=Länge(y);
NFFT = 2^nextpow2(L); % Nächste Potenz von 2 aus der Länge von y
Y = fft(y,NFFT)/L;
f = Fs/2*linspace(0,1,NFFT/2+1);
% Zeichnen Sie einseitiges Amplitudenspektrum auf.
Figur
plot(f,2*abs(Y(1:NFFT/2+1)))
title('Einseitiges Amplitudenspektrum von y(t)')
xlim([0,3])
xlabel('Frequenz (Hz)')
ylabel('|Y(f)|')
Das obige ist der detaillierte Inhalt vonWie wäre es mit einer Fourier-Transformation mit Matlab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!