pint.models.timing_model

Timing model objects.

Defines the basic timing model interface classes.

A PINT timing model will be an instance of TimingModel. It will have a number of “components”, each an instance of a subclass of Component. These components each implement some part of the timing model, whether astrometry (for example AstrometryEcliptic), noise modelling (for example ScaleToaError), interstellar dispersion (for example DispersionDM), or pulsar binary orbits. This last category is somewhat unusual in that the code for each model is divided into a PINT-facing side (for example BinaryBT) and an internal model that does the actual computation (for example BTmodel); the management of data passing between these two parts is carried out by PulsarBinary and PSR_BINARY.

To actually create a timing model, you almost certainly want to use get_model().

See Timing Models for more details on how PINT’s timing models work.

Functions

property_exists(f)

Mark a function as a property but handle AttributeErrors.

Classes

AllComponents()

A class for the components pool.

Component()

Timing model components.

DelayComponent()

ModelMeta(name, bases, namespace, /, **kwargs)

Ensure timing model registration.

PhaseComponent()

TimingModel([name, components])

Timing model object built from Components.

Exceptions

AliasConflict

If the same alias is used for different parameters.

MissingBinaryError

Error for missing BINARY parameter.

MissingParameter(module, param[, msg])

A required model parameter was not included.

MissingTOAs(parameter_names)

Some parameter does not describe any TOAs.

PropertyAttributeError

TimingModelError

Generic base class for timing model errors.

UnknownBinaryModel(message[, suggestion])

Signal that the par file requested a binary model not in PINT.

UnknownParameter

Signal that a parameter name does not match any PINT parameters and their aliases.