2 private links
This repository contains an implementation of Burg's Algorithm for the computation of the power spectral density of time-series via Maximum Entropy Principle, known as Maximum Entropy Spectral Analysis (MESA). Two different methods implement the standard Algorithm and a Faster version, called FastBurg. The problem admits an analytical solution that can be expressed in closed form as a Discrete Fourier Transform of some coefficients a_k, known as forward prediction error coefficients. The a_k coefficients are computed recursively by the use of Levinson Recursion. The role of MESA class is to solve the recursion. Various method exist to estimate the recursive order that better approximate the power spectral density. A second class is inserted to implement different loss functions to choose the recursive order.
The a_k coefficients are found to be the "best linear predictor" for the time series under study, their computation via the former method is equivalent to a least square fitting with an autoregressive process of order p (AR(p)). Levinson recursion also return a "P" coefficient that is equivalent to the variance of the white noise component for the process. This description is stationary by construction of Burg's Method.
Given the a_k coefficient, they can be used to perform high quality forecasting for the future values of the time series. A method to perform forecast is implemented in mesa class.
The code is also released as a public package memspectrum, available on the PyPI repository. A paper is in publication.