tseda.periodicity.fft_analyzer module

Frequency-domain analysis helpers based on Lomb-Scargle periodograms.

class tseda.periodicity.fft_analyzer.FFT_Analyzer(series: pandas.Series, fmin: float = 0.1, fmax: float = 2.0, num_freqs: int = 1000)[source]

Bases: object

Analyze periodic structure in a series using Lomb-Scargle power spectra.

Initialize analyzer state and centered signal representation.

Parameters:
  • series – Input numeric signal.

  • fmin – Minimum search frequency (cycles per sample).

  • fmax – Maximum search frequency (cycles per sample).

  • num_freqs – Number of discrete frequencies in the scan.

__init__(series: pandas.Series, fmin: float = 0.1, fmax: float = 2.0, num_freqs: int = 1000) None[source]

Initialize analyzer state and centered signal representation.

Parameters:
  • series – Input numeric signal.

  • fmin – Minimum search frequency (cycles per sample).

  • fmax – Maximum search frequency (cycles per sample).

  • num_freqs – Number of discrete frequencies in the scan.

periodogram() tuple[numpy.ndarray, numpy.ndarray, float][source]

Compute Lomb-Scargle periodogram and best period estimate.

Returns:

Tuple of (period grid, power spectrum, best period).

plot() None[source]

Render the periodogram plot using matplotlib.

Returns:

None. Displays the active matplotlib figure.