TemplatePhaseCurveTemporalModel#
- class gammapy.modeling.models.TemplatePhaseCurveTemporalModel[source]#
Bases:
TemporalModelTemporal phase curve model.
A timing solution is used to compute the phase corresponding to time and a template phase curve is used to determine the associated
norm.The phasecurve is given as a table with columns
phaseandnorm.The
normis supposed to be a unit-less multiplicative factor in the model, to be multiplied with a spectral model.The model does linear interpolation for times between the given
(phase, norm)values.The implementation currently uses
scipy.interpolate. InterpolatedUnivariateSpline, using degreek=1to get linear interpolation. This class also contains anintegralmethod, making the computation of mean fluxes for a given time interval a one-liner.- Parameters:
- table
Table A table with ‘PHASE’ vs ‘NORM’.
- filenamestr
The name of the file containing the phase curve.
- t_ref
Quantity The reference time in mjd. Default is 48442.5 mjd.
- phi_ref
Quantity The phase at reference time. Default is 0.
- f0
Quantity The frequency at t_ref in s-1. Default is 29.946923 s-1.
- f1
Quantity The frequency derivative at t_ref in s-2. Default is 0 s-2.
- f2
Quantity The frequency second derivative at t_ref in s-3. Default is 0 s-3.
- table
Attributes Summary
A model parameter.
A model parameter.
A model parameter.
A model parameter.
A model parameter.
Methods Summary
evaluate(time, t_ref, phi_ref, f0, f1, f2)from_dict(data)Create a temporal model from a dictionary.
integral(t_min, t_max)Evaluate the integrated flux within the given time intervals.
plot_phasogram([ax, n_points])Plot phasogram of the phase model.
read(path[, t_ref, phi_ref, f0, f1, f2])Read phasecurve model table from FITS file.
sample_time(n_events, t_min, t_max[, ...])Sample arrival times of events.
to_dict([full_output])Create dictionary for YAML serialisation.
write([path, overwrite])Attributes Documentation
- default_parameters = <gammapy.modeling.parameter.Parameters object>#
- f0#
A model parameter.
Note that the parameter value has been split into a factor and scale like this:
value = factor x scale
Users should interact with the
value,quantityorminandmaxproperties and consider the fact that there is afactorandscalean implementation detail.That was introduced for numerical stability in parameter and error estimation methods, only in the Gammapy optimiser interface do we interact with the
factor,factor_minandfactor_maxproperties, i.e. the optimiser “sees” the well-scaled problem.- Parameters:
- namestr
Name.
- valuefloat or
Quantity Value.
- scalefloat, optional
Scale (sometimes used in fitting).
- unit
Unitor str, optional Unit. Default is “”.
- minfloat, str or
quantity, optional Minimum (sometimes used in fitting). If
None, set tonumpy.nan. Default is None.- maxfloat, str or
quantity, optional Maximum (sometimes used in fitting). Default is
numpy.nan.- frozenbool, optional
Frozen (used in fitting). Default is False.
- errorfloat, optional
Parameter error. Default is 0.
- scan_minfloat, optional
Minimum value for the parameter scan. Overwrites scan_n_sigma. Default is None.
- scan_maxfloat, optional
Maximum value for the parameter scan. Overwrites scan_n_sigma. Default is None.
- scan_n_values: int, optional
Number of values to be used for the parameter scan. Default is 11.
- scan_n_sigmaint, optional
Number of sigmas to scan. Default is 2.
- scan_values: `numpy.array`, optional
Scan values. Overwrites all the scan keywords before. Default is None.
- scale_method{‘scale10’, ‘factor1’, None}, optional
Method used to set
factorandscale. Default is “scale10”.- interp{“lin”, “sqrt”, “log”}, optional
Parameter scaling to use for the scan. Default is “lin”.
- prior
Prior, optional Prior set on the parameter. Default is None.
- f1#
A model parameter.
Note that the parameter value has been split into a factor and scale like this:
value = factor x scale
Users should interact with the
value,quantityorminandmaxproperties and consider the fact that there is afactorandscalean implementation detail.That was introduced for numerical stability in parameter and error estimation methods, only in the Gammapy optimiser interface do we interact with the
factor,factor_minandfactor_maxproperties, i.e. the optimiser “sees” the well-scaled problem.- Parameters:
- namestr
Name.
- valuefloat or
Quantity Value.
- scalefloat, optional
Scale (sometimes used in fitting).
- unit
Unitor str, optional Unit. Default is “”.
- minfloat, str or
quantity, optional Minimum (sometimes used in fitting). If
None, set tonumpy.nan. Default is None.- maxfloat, str or
quantity, optional Maximum (sometimes used in fitting). Default is
numpy.nan.- frozenbool, optional
Frozen (used in fitting). Default is False.
- errorfloat, optional
Parameter error. Default is 0.
- scan_minfloat, optional
Minimum value for the parameter scan. Overwrites scan_n_sigma. Default is None.
- scan_maxfloat, optional
Maximum value for the parameter scan. Overwrites scan_n_sigma. Default is None.
- scan_n_values: int, optional
Number of values to be used for the parameter scan. Default is 11.
- scan_n_sigmaint, optional
Number of sigmas to scan. Default is 2.
- scan_values: `numpy.array`, optional
Scan values. Overwrites all the scan keywords before. Default is None.
- scale_method{‘scale10’, ‘factor1’, None}, optional
Method used to set
factorandscale. Default is “scale10”.- interp{“lin”, “sqrt”, “log”}, optional
Parameter scaling to use for the scan. Default is “lin”.
- prior
Prior, optional Prior set on the parameter. Default is None.
- f2#
A model parameter.
Note that the parameter value has been split into a factor and scale like this:
value = factor x scale
Users should interact with the
value,quantityorminandmaxproperties and consider the fact that there is afactorandscalean implementation detail.That was introduced for numerical stability in parameter and error estimation methods, only in the Gammapy optimiser interface do we interact with the
factor,factor_minandfactor_maxproperties, i.e. the optimiser “sees” the well-scaled problem.- Parameters:
- namestr
Name.
- valuefloat or
Quantity Value.
- scalefloat, optional
Scale (sometimes used in fitting).
- unit
Unitor str, optional Unit. Default is “”.
- minfloat, str or
quantity, optional Minimum (sometimes used in fitting). If
None, set tonumpy.nan. Default is None.- maxfloat, str or
quantity, optional Maximum (sometimes used in fitting). Default is
numpy.nan.- frozenbool, optional
Frozen (used in fitting). Default is False.
- errorfloat, optional
Parameter error. Default is 0.
- scan_minfloat, optional
Minimum value for the parameter scan. Overwrites scan_n_sigma. Default is None.
- scan_maxfloat, optional
Maximum value for the parameter scan. Overwrites scan_n_sigma. Default is None.
- scan_n_values: int, optional
Number of values to be used for the parameter scan. Default is 11.
- scan_n_sigmaint, optional
Number of sigmas to scan. Default is 2.
- scan_values: `numpy.array`, optional
Scan values. Overwrites all the scan keywords before. Default is None.
- scale_method{‘scale10’, ‘factor1’, None}, optional
Method used to set
factorandscale. Default is “scale10”.- interp{“lin”, “sqrt”, “log”}, optional
Parameter scaling to use for the scan. Default is “lin”.
- prior
Prior, optional Prior set on the parameter. Default is None.
- phi_ref#
A model parameter.
Note that the parameter value has been split into a factor and scale like this:
value = factor x scale
Users should interact with the
value,quantityorminandmaxproperties and consider the fact that there is afactorandscalean implementation detail.That was introduced for numerical stability in parameter and error estimation methods, only in the Gammapy optimiser interface do we interact with the
factor,factor_minandfactor_maxproperties, i.e. the optimiser “sees” the well-scaled problem.- Parameters:
- namestr
Name.
- valuefloat or
Quantity Value.
- scalefloat, optional
Scale (sometimes used in fitting).
- unit
Unitor str, optional Unit. Default is “”.
- minfloat, str or
quantity, optional Minimum (sometimes used in fitting). If
None, set tonumpy.nan. Default is None.- maxfloat, str or
quantity, optional Maximum (sometimes used in fitting). Default is
numpy.nan.- frozenbool, optional
Frozen (used in fitting). Default is False.
- errorfloat, optional
Parameter error. Default is 0.
- scan_minfloat, optional
Minimum value for the parameter scan. Overwrites scan_n_sigma. Default is None.
- scan_maxfloat, optional
Maximum value for the parameter scan. Overwrites scan_n_sigma. Default is None.
- scan_n_values: int, optional
Number of values to be used for the parameter scan. Default is 11.
- scan_n_sigmaint, optional
Number of sigmas to scan. Default is 2.
- scan_values: `numpy.array`, optional
Scan values. Overwrites all the scan keywords before. Default is None.
- scale_method{‘scale10’, ‘factor1’, None}, optional
Method used to set
factorandscale. Default is “scale10”.- interp{“lin”, “sqrt”, “log”}, optional
Parameter scaling to use for the scan. Default is “lin”.
- prior
Prior, optional Prior set on the parameter. Default is None.
- t_ref#
A model parameter.
Note that the parameter value has been split into a factor and scale like this:
value = factor x scale
Users should interact with the
value,quantityorminandmaxproperties and consider the fact that there is afactorandscalean implementation detail.That was introduced for numerical stability in parameter and error estimation methods, only in the Gammapy optimiser interface do we interact with the
factor,factor_minandfactor_maxproperties, i.e. the optimiser “sees” the well-scaled problem.- Parameters:
- namestr
Name.
- valuefloat or
Quantity Value.
- scalefloat, optional
Scale (sometimes used in fitting).
- unit
Unitor str, optional Unit. Default is “”.
- minfloat, str or
quantity, optional Minimum (sometimes used in fitting). If
None, set tonumpy.nan. Default is None.- maxfloat, str or
quantity, optional Maximum (sometimes used in fitting). Default is
numpy.nan.- frozenbool, optional
Frozen (used in fitting). Default is False.
- errorfloat, optional
Parameter error. Default is 0.
- scan_minfloat, optional
Minimum value for the parameter scan. Overwrites scan_n_sigma. Default is None.
- scan_maxfloat, optional
Maximum value for the parameter scan. Overwrites scan_n_sigma. Default is None.
- scan_n_values: int, optional
Number of values to be used for the parameter scan. Default is 11.
- scan_n_sigmaint, optional
Number of sigmas to scan. Default is 2.
- scan_values: `numpy.array`, optional
Scan values. Overwrites all the scan keywords before. Default is None.
- scale_method{‘scale10’, ‘factor1’, None}, optional
Method used to set
factorandscale. Default is “scale10”.- interp{“lin”, “sqrt”, “log”}, optional
Parameter scaling to use for the scan. Default is “lin”.
- prior
Prior, optional Prior set on the parameter. Default is None.
- tag = ['TemplatePhaseCurveTemporalModel', 'template-phase']#
Methods Documentation
- classmethod from_dict(data)[source]#
Create a temporal model from a dictionary.
- Parameters:
- datadict
Dictionary containing the model parameters.
- **kwargsdict
Keyword arguments passed to
from_parameters.
- integral(t_min, t_max)[source]#
Evaluate the integrated flux within the given time intervals.
- Parameters:
- t_min: `~astropy.time.Time`
Start times of observation.
- t_max: `~astropy.time.Time`
Stop times of observation.
- Returns:
- norm: The model integrated flux.
- classmethod read(path, t_ref=<Quantity 48442.5 d>, phi_ref=0, f0=<Quantity 29.946923 1 / s>, f1=<Quantity 0. 1 / s2>, f2=<Quantity 0. 1 / s3>)[source]#
Read phasecurve model table from FITS file.
Beware : this does not read parameters. They will be set to defaults.
- Parameters:
- pathstr or
Path Filename with path.
- pathstr or
- sample_time(n_events, t_min, t_max, t_delta='1 s', random_state=0)[source]#
Sample arrival times of events.
To fully cover the phase range, t_delta is the minimum between the input and product of the period at 0.5*(t_min + t_max) and the table bin size.
- Parameters:
- n_eventsint
Number of events to sample.
- t_min
Time Start time of the sampling.
- t_max
Time Stop time of the sampling.
- t_delta
Quantity Time step used for sampling of the temporal model.
- random_state{int, ‘random-seed’, ‘global-rng’,
RandomState} Defines random number generator initialisation. Passed to
get_random_state.
- Returns:
- time
Quantity Array with times of the sampled events.
- time
- classmethod __new__(*args, **kwargs)#