astroML.time_series.search_frequencies(t, y, dy, LS_func=<function lomb_scargle>, LS_kwargs=None, initial_guess=25, limit_fractions=[0.04, 0.3, 0.9, 0.99], n_eval=10000, n_retry=5, n_save=50)[source]

Utility Routine to find the best frequencies

To find the best frequency with a Lomb-Scargle periodogram requires searching a large range of frequencies at a very fine resolution. This is an iterative routine that searches progressively finer grids to narrow-in on the best result.

t: array_like

observed times

y: array_like

observed fluxes or magnitudes

dy: array_like

observed errors on y

omega_top, power_top: ndarrays

The saved values of omega and power. These will have size 1 + n_save * (1 + n_retry * len(limit_fractions)) as long as n_save > n_retry

Other Parameters

Function used to perform Lomb-Scargle periodogram. The call signature should be LS_func(t, y, dy, omega, **kwargs) (Default is astroML.periodogram.lomb_scargle)


dictionary of keyword arguments to pass to LS_func in addition to (t, y, dy, omega)


the initial guess of the best period


the list of fractions to use when zooming in on peak possibilities. On the i^th iteration, with f_i = limit_fractions[i], the range probed around each candidate will be (candidate * f_i, candidate / f_i).

n_evalinteger or list

The number of point to evaluate in the range on each iteration. If n_eval is a list, it should have the same length as limit_fractions.

n_retryinteger or list

Number of top points to search on each iteration. If n_retry is a list, it should have the same length as limit_fractions.

n_saveinteger or list

Number of evaluations to save on each iteration. If n_save is a list, it should have the same length as limit_fractions.