Home > Article > Computer Tutorials > How about doing Fourier Transform using Matlab?
Write the program first:
clc
clear
CU=[]; %%Import your data here
CU_f=fft(CU); %%Do FFT transformation to frequency domain
figure(1)
subplot(2,1,1)
plot(CU);
subplot(2,1,2)
plot(abs(CU_f))
******************************
CU_f is the spectrum diagram, but the point you mentioned corresponding to 50Hz needs to be found based on your experimental process. The data input to MATLAB are just thousands of points, which have only mathematical meaning and no physical meaning. First of all, you sampled these thousands of points, so what is your sampling frequency? Only the person doing the experiment knows this, not MATLAB itself. Assume that the sampling frequency is Fs. Then in the picture CU_f, the actual frequency corresponding to the last point is Fs (the actual frequency corresponding to the first point is 0Hz). Then you can find the point corresponding to 50Hz based on the linear proportional relationship.
Use MATLAB to implement Fourier transform:
The user inputs a function arbitrarily, and then outputs the Fourier transform function of the function, and then outputs the amplitude frequency.
x=sin(2*pi*t); %Enter any function.
y=fft(x); %Fourier transform function.
plot(abs(y)); % amplitude frequency.
Function (function) represents a correspondence relationship between each input value and a unique output value. This relationship causes each element in one set to correspond to a unique element in another (possibly the same) set. The standard symbol for the output value x corresponding to the input value in function f is f(x). The set containing all input values of a function is called the domain of the function, and the set containing all output values is called the range. If we define the concept of mapping first, we can simply define the function as . The mapping defined between non-empty number sets is called a function.
Fourier transform can express a function that meets certain conditions as a trigonometric function (sine and/or cosine function) or a linear combination of their integrals. There are many different variations of Fourier transform in different research fields, such as continuous Fourier transform and discrete Fourier transform.
% Don’t forget to give me points, [a big smile]
clear all
ts=0.001; % Sampling period
t=0:ts:20; % Time sequence
y=sin(t) 0.5*sin(2*t) 0.2*sin(6*t);
figure
plot(t,y)
title('Original Singal')
xlabel('Time (s)')
ylabel('Magnitude')
Fs=1/ts; % Sampling frequency
L=length(y);
NFFT = 2^nextpow2(L); % Next power of 2 from length of y
Y = fft(y,NFFT)/L;
f = Fs/2*linspace(0,1,NFFT/2 1);
% Plot single-sided amplitude spectrum.
figure
plot(f,2*abs(Y(1:NFFT/2 1)))
title('Single-Sided Amplitude Spectrum of y(t)')
xlim([0,3])
xlabel('Frequency (Hz)')
ylabel('|Y(f)|')
The above is the detailed content of How about doing Fourier Transform using Matlab?. For more information, please follow other related articles on the PHP Chinese website!