Confusão em descobrir a relação entre valores reais de frequência e índices de enredo FFT no MATLAB

Eu sei que há muitas perguntas semelhantes para isso, ainda não consegui descobrir a resposta. Vamos dizer que temos sinal de tempo no MATLAB:

t=0:1/44100:1

e um sinal coseno com frequência 500Hz:

x=cos(2*pi*500*t);

Agora, estou tentando plotar o espectro de magnitude obtido usando offt comando no sinal x

FFT=abs(fft(x))
plot(FFT)

De acordo com a teoria, devemos obter dois picos no gráfico, um a -500 Hz e outro a 500Hz. O que eu não entendo é que eu tenho dois picos, mas não consigo descobrir em quais frequências esses picos são. Eu sei que há uma maneira de descobrir a frequência usando o índice FFT, o comprimento do sinal de entrada e a frequência de amostragem, mas ainda não consigo calcular a frequência.

Eu sei que existem métodos para alinhar os gráficos de FFT de modo que os picos se encontrem no número de índice da frequência que eles representam usando offtshift função, mas o que eu quero é descobrir a frequência usando o gráfico resultante de simplesmente chamar esta função:

FFT=fft(x)

Neste caso, eu já sei que o sinal contém um co-seno de 500Hz, mas e se o sinal que queremos obter a FFT não for conhecido antes do tempo. Como podemos obter os valores de frequência dos picos nessa amostra usando a saída dofft função?

questionAnswers(2)

yourAnswerToTheQuestion