Mais sobre sinais aleatórios (séries temporais)

Re: Mais sobre sinais aleatórios (séries temporais)

por Marcelo Queiroz -
Número de respostas: 0

Oi, Pedro!

Muito legal seu exemplo! De fato ele se relaciona com aquele exercício 2.12 sugerido pelo livro na discussão do exemplo de sinal aleatório.

Em relação aos filtros usados no exemplo que você mandou, isso tem relação com o que estudaremos no capítulo 4. A função np.convolve() realiza a convolução linear entre os vetores (no caso, entre o espectro e o vetor de coeficientes do filtro), o que equivale a considerar o sinal como identicamente nulo fora da janela observada, e isso explica os efeitos "de borda" (onde parece que os extremos do gráfico não condizem com a propriedade que se pretende ilustrar). Um jeito de resolver isso é usar a convolução circular, que na prática considera o sinal como periódico (e sabemos que o espectro de um sinal finito de fato é periódico!). Na implementação da figura abaixo, a convolução circular é calculada via FFT (veremos isso no capítulo 4), e os filtros são como o seu primeiro exemplo, filtros da média com L pontos, que nada mais são que os pulsos quadrados que vimos no exemplo imediatamente anterior! Os gráficos mostram como o espectro filtrado por médias mais longas vai se aproximando de uma curva constante com o valor médio do espectro (igual à variância do sinal original). Note que o último gráfico é o caso extremo da média de todos os pontos (mas foi calculado via convolução, com o mesmo código dos outros gráficos).

Abraços,

Marcelo