Signal

class mutis.signal.Signal(times, values, dvalues=None, fgen=None)[source]

Bases: object

Analysis and generation of a signal.

Class for a generic signal.

Attributes
timesnumpy.ndarray or pandas.Series

Values of the time axis.

valuesnumpy.ndarray or pandas.Series

Values of the signal axis.

fgenstr

Method to generate the synthetic signal.

Methods Summary

OU_fit([bins, rang, a, b])

Fit the signal to an OU stochastic process, using several statistical approaches.

check_gen([fgen, fgen_params, fpsd])

Check the generation of synthetic signals.

gen_synth(samples)

Generate synthethic light curves for this signal.

pdf(xx, ll, mu)

Helper func to fit pdf as a curve.

plot([ax])

Methods Documentation

OU_fit(bins=None, rang=None, a=1e-05, b=100)[source]

Fit the signal to an OU stochastic process, using several statistical approaches.

This function tries to fit the signal to an OU stochastic process using both basic curve fitting and the Maximum Likelihood Estimation method, and returns some plots of the signals and its properties, and the estimated parameters.

check_gen(fgen=None, fgen_params=None, fpsd='lombscargle', **axes)[source]

Check the generation of synthetic signals.

This function checks the generation of a synthetic light curve.

Parameters
fgen: :str:

A valid fgen method name.

fgen_params: :dict:

Parameters for fgen (e.g. for fgen=’lc_gen_ou’, a dict containing values for theta, mu and sigma).

Returns
axes: :tuple:

Tuple of three axes, on which: - The first plot show both the original signal and the synthetic one. - The second plot shows the histogram of the values taken by both signals. - The third plot shows their PSD.

gen_synth(samples)[source]

Generate synthethic light curves for this signal.

Generated curves are saved in self.synth. The times used are the same of this signal.

Parameters
samples: :int: number of samples to generate.
static pdf(xx, ll, mu)[source]

Helper func to fit pdf as a curve.

plot(ax=None)[source]