PhaseCurveTableModel¶
-
class
gammapy.time.models.PhaseCurveTableModel(table, time_0, phase_0, f0, f1, f2)[source]¶ Bases:
gammapy.utils.fitting.ModelTemporal phase curve model.
Phase for a given time is computed as:
\[\phi(t) = \phi_0 + f_0(t-t_0) + (1/2)f_1(t-t_0)^2 + (1/6)f_2(t-t_0)^3\]Strictly periodic sources such as gamma-ray binaries have
f1=0andf2=0. Sources like some pulsars where the period spins up or down havef1!=0and / orf2 !=0. For a binary,f0should be calculated as 1/T, where T is the period of the binary in unit ofseconds.The “phase curve”, i.e. multiplicative flux factor for a given phase is given by a
Tableof nodes(phase, norm), using linear interpolation and circular behaviour, wherenorm(phase=0) == norm(phase=1).Parameters: - table :
Table A table of ‘PHASE’ vs ‘NORM’ should be given
- time_0 : float
The MJD value where phase is considered as 0.
- phase_0 : float
Phase at the reference MJD
- f0, f1, f2 : float
Derivatives of the function phi with time of order 1, 2, 3 in units of
s^-1, s^-2 & s^-3, respectively.
Examples
Create an example phase curve object:
from astropy.table import Table from gammapy.utils.scripts import make_path from gammapy.time.models import PhaseCurveTableModel filename = make_path('$GAMMAPY_DATA/tests/phasecurve_LSI_DC.fits') table = Table.read(str(filename)) phase_curve = PhaseCurveTableModel(table, time_0=43366.275, phase_0=0.0, f0=4.367575e-7, f1=0.0, f2=0.0)
Use it to compute a phase and evaluate the phase curve model for a given time:
>>> phase_curve.phase(time=46300.0) 0.7066006737999402 >>> phase_curve.evaluate_norm_at_time(46300) 0.49059393580053845
Attributes Summary
f0f1f2parametersParameters ( Parameters)phase_0tabletime_0Methods Summary
copy(self)A deep copy. evaluate_norm_at_phase(self, phase)evaluate_norm_at_time(self, time)Evaluate for a given time. phase(self, time)Evaluate phase for a given time. Attributes Documentation
-
f0¶
-
f1¶
-
f2¶
-
parameters¶ Parameters (
Parameters)
-
phase_0¶
-
table¶
-
time_0¶
Methods Documentation
-
copy(self)¶ A deep copy.
- table :