Cómo utilizar la programación en Matlab para encontrar la función del espectro de transformada de Fourier de una función
t = 1/Fs; tiempo de muestreo
L = 256 longitud de la señal
T = (0: L-1)* T; tiempo
x = 5 7 * cos(2 * pi * 15 * t-30 * pi/180) 3 * cos(2 * pi * 40 * t-90 * pi/180); cos es la señal original básica.
y = x randn(size(t)); Agregar ruido
Gráfico
Trazado(t, y)
Título; ("Señal de ruido")
Xlabel('time')
n = 2^nextpow2(l); el número de puntos de muestreo, cuanto mayor sea el número de puntos de muestreo, mayor Más precisa es la frecuencia de resolución, n > ;=L, las señales adicionales se rellenan con 0.
Y = fft(y, N)/N * 2; dividido por n y multiplicado por 2 es la amplitud verdadera. Cuanto mayor es n, mayor es la precisión de la amplitud.
f = Fs/N *(0:1:N-1); Frecuencia
a = ABS(Y); Y); Valor de fase
Gráfico;
Gráfico de rama (211); plot(f(1:N/2), A(1:N/2)); La estructura de datos del valor de retorno de fft es simétrica, solo tomamos la primera mitad.
Título("Espectro de amplitud")
Xlabel('Frecuencia (Hz)')
Ylabel("Amplitud")
Gráfico de rama (212); ('Frecuencia (Hz)')
Ylabel("etapa")