LightCurveEstimator#

class gammapy.estimators.LightCurveEstimator[source]#

Bases: FluxPointsEstimator

Estimate light curve.

The estimator will apply flux point estimation on the source model component to datasets in each of the provided time intervals. The normalisation, norm, is the only parameter of the source model left free to vary. Other model components can be left free to vary with the reoptimize option.

If no time intervals are provided, the estimator will use the time intervals defined by the datasets GTIs.

To be included in the estimation, the dataset must have their GTI fully overlapping a time interval.

Time intervals without any dataset GTI fully overlapping will be dropped. They will not be stored in the final lightcurve FluxPoints object.

Parameters:
time_intervalslist of Time objects

Start and stop time for each interval to compute the LC.

sourcestr or int, optional

For which source in the model to compute the flux points. Default is 0, i.e. the first source of the models.

atolQuantity, optional

Tolerance value for time comparison with different scale. Default 1e-6 sec.

n_sigmafloat, optional

Number of sigma to use for asymmetric error computation. Must be a positive value. Default is 1.

n_sigma_ulfloat, optional

Number of sigma to use for upper limit computation. Must be a positive value. Default is 2.

selection_optionallist of str, optional

Which steps to execute. Available options are:

  • “all”: all the optional steps are executed.

  • “errn-errp”: estimate asymmetric errors.

  • “ul”: estimate upper limits.

  • “scan”: estimate fit statistic profiles.

Default is None so the optional steps are not executed.

energy_edgeslist of Quantity, optional

Edges of the lightcurve energy bins. The resulting bin edges won’t be exactly equal to the input ones, but rather the closest values to the energy axis edges of the parent dataset. Default is None: apply the estimator in each energy bin of the parent dataset. For further explanation see Estimators (DL4 to DL5, and DL6).

fitFit, optional

Fit instance specifying the backend and fit options. If None, the Fit instance is created internally. Default is None.

reoptimizebool, optional

If True the free parameters of the other models are fitted in each bin independently, together with the norm of the source of interest (but the other parameters of the source of interest are kept frozen). If False only the norm of the source of interest if fitted, and all other parameters are frozen at their current values. Default is False.

stack_over_time_intervalbool, optional

Whether to stack datasets within each time interval. Default is False. The predicted background counts from all datasets in the given interval will be stacked together, and the final background model (if any) will not have any free parameters. Available only if reoptimize is False.

n_jobsint, optional

Number of processes used in parallel for the computation. Default is one, unless N_JOBS_DEFAULT was modified. The number of jobs is limited to the number of physical CPUs.

parallel_backend{“multiprocessing”, “ray”}, optional

Which backend to use for multiprocessing. Defaults to BACKEND_DEFAULT.

norm~gammapy.modeling.Parameter` or dict, optional

Norm parameter used for the fit. Default is None and a new parameter is created automatically, with value=1, name=”norm”, scan_min=0.2, scan_max=5, and scan_n_values = 11. By default, the min and max are not set and derived from the source model, unless the source model does not have one and only one norm parameter. If a dict is given the entries should be a subset of Parameter arguments.

Notes

In case of failure of upper limits computation (e.g. nan), see the User Guide: Avoid NaN results in Flux Point estimation.

Examples

For a usage example, see Light curves tutorial.

Attributes Summary

tag

Methods Summary

estimate_time_bin_flux(datasets[, dataset_names])

Estimate flux point for a single energy group.

expand_map(m, dataset_names)

Expand map in dataset axis.

run(datasets)

Run light curve extraction.

Attributes Documentation

tag = 'LightCurveEstimator'#

Methods Documentation

estimate_time_bin_flux(datasets, dataset_names=None)[source]#

Estimate flux point for a single energy group.

Parameters:
datasetsDatasets

List of dataset objects.

dataset_nameslist of str

Dataset names.

Returns:
resultFluxPoints

Resulting flux points.

static expand_map(m, dataset_names)[source]#

Expand map in dataset axis.

Parameters:
mapMap

Map to expand.

dataset_nameslist of str

Dataset names.

Returns:
mapMap

Expanded map.

run(datasets)[source]#

Run light curve extraction.

Normalize integral and energy flux between emin and emax.

Parameters:
datasetslist of SpectrumDataset or MapDataset

Spectrum or Map datasets.

Returns:
lightcurveFluxPoints

Light curve flux points.

Notes

The progress bar can be displayed for this function.

__init__(time_intervals=None, atol='1e-6 s', stack_over_time_interval=False, **kwargs)[source]#
classmethod __new__(*args, **kwargs)#