series_fft()
Aplica a FFT (Transformada Rápida de Fourier) em uma série.
A função series_fft() usa uma série de números complexos no domínio tempo/espacial e a transforma no domínio de frequência usando a Transformação Fourier Rápida. A série complexa transformada representa a magnitude e a fase das frequências que aparecem na série original. Use a função complementar series_ifft para transformar do domínio de frequência de volta para o domínio de tempo/espacial.
Syntax
series_fft(
x_real [,
x_imaginary])
Saiba mais sobre as convenções de sintaxe.
Parâmetros
Nome | Tipo | Obrigatório | Descrição |
---|---|---|---|
x_real | dynamic |
✔️ | Uma matriz numérica que representa o componente real da série a ser transformada. |
x_imaginary | dynamic |
Uma matriz semelhante que representa o componente imaginário da série. Esse parâmetro só deverá ser especificado se a série de entrada contiver números complexos. |
Retornos
A função retorna o fft inverso complexo em duas séries. A primeira série para o componente real e a segunda para o componente imaginário.
Exemplo
Gere uma série complexa, em que os componentes reais e imaginários são ondas seno puras em diferentes frequências. Use o FFT para transformá-lo no domínio de frequência:
let sinewave=(x:double, period:double, gain:double=1.0, phase:double=0.0) { gain*sin(2*pi()/period*(x+phase)) } ; let n=128; // signal length range x from 0 to n-1 step 1 | extend yr=sinewave(x, 8), yi=sinewave(x, 32) | summarize x=make_list(x), y_real=make_list(yr), y_imag=make_list(yi) | extend (fft_y_real, fft_y_imag) = series_fft(y_real, y_imag) | render linechart with(ysplit=panels)
Essa consulta retorna fft_y_real e fft_y_imag:
Transforme uma série no domínio de frequência e aplique a transformação inversa para recuperar a série original:
let sinewave=(x:double, period:double, gain:double=1.0, phase:double=0.0) { gain*sin(2*pi()/period*(x+phase)) } ; let n=128; // signal length range x from 0 to n-1 step 1 | extend yr=sinewave(x, 8), yi=sinewave(x, 32) | summarize x=make_list(x), y_real=make_list(yr), y_imag=make_list(yi) | extend (fft_y_real, fft_y_imag) = series_fft(y_real, y_imag) | extend (y_real2, y_image2) = series_ifft(fft_y_real, fft_y_imag) | project-away fft_y_real, fft_y_imag // too many series for linechart with panels | render linechart with(ysplit=panels)
Essa consulta retorna y_real2 e *y_imag2, que são os mesmos que y_real e y_imag:
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de