Red de conocimiento informático - Material del sitio web - Cómo utilizar la programación en Matlab para encontrar la función del espectro de transformada de Fourier de una función

Cómo utilizar la programación en Matlab para encontrar la función del espectro de transformada de Fourier de una función

fs = 128; frecuencia de muestreo

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")