Dear all,
I'm pleased to announce the first release of
LombScargle.jl, a package to compute
the Lomb-Scargle periodogram. Differently from standard FFT, this can be used to find periodicities in unevenly sampled data, which is a fairly common case in astronomy, a field where this periodogram is widely used.
The README.md has some examples of use, in addition a manual is available at
http://lombscarglejl.readthedocs.io/
The package implements the standard Lomb-Scargle periodogram that doesn't take into account a non-null mean of the signal (but it is possible to automatically subtract the average of the signal from the signal itself, and this is the default), and the generalised Lomb-Scargle algorithm which instead can deal with a non-null mean.
Relevant papers on this topic are:
- Townsend, R. H. D. 2010, ApJS, 191, 247 (URL:
http://dx.doi.org/10.1088/0067-0049/191/2/247, Bibcode:
http://adsabs.harvard.edu/abs/2010ApJS..191..247T)
- Zechmeister, M., Kürster, M. 2009, A&A, 496, 577 (URL:
http://dx.doi.org/10.1051/0004-6361:200811296, Bibcode:
http://adsabs.harvard.edu/abs/2009A%26A...496..577Z)
In the future I may implement another much-faster Lomb-Scargle algorithm by Press & Rybicki (1989, ApJ, 338, 277), which however requires the data to be equally sampled (but in this case also the FFT can be used).
In order to test and benchmark the results of LombScargle.jl I compared the result with those of equivalent
methods provided by Astropy package. Running Julia 0.5 I found that the standard Lomb-Scargle periodogram as implemented in LombScargle.jl is ~40% and ~65 faster than the "scipy" and "cython" methods of Astropy, respectively (they're both in Cython, not pure Python). Instead, the generalised Lomb-Scargle periodogram in LombScargle.jl is ~25% faster than the "cython" method in Astropy.
The LombScargle.jl package is licensed under the MIT “Expat” License.