deeptrack.backend.pint_definition Module#

Pint constants and units definition for DeepTrack2.

This module consolidates and extends the default definitions provided by Pint’s default_en.txt and constants_en.txt files. It defines physical constants, unit systems, and project-specific adjustments necessary for DeepTrack2.

Introduction#

Pint is a Python library used for handling units and quantities. This module augments Pint’s default definitions by introducing project-specific constants and unit modifications, ensuring precise and flexible calculations in the context of DeepTrack2.

Sources#

Content Overview#

  1. Mathematical Constants: Includes key values like pi, Euler’s number, and

    the natural logarithm of 10.

  2. Physical Constants: Covers fundamental constants like the speed of

    light, Planck constant, and Boltzmann constant.

  3. Derived Constants: Defines values such as the fine-structure constant

    and classical electron radius.

  4. Units: Provides base and derived units for length, mass, time, energy,

    etc., with precise conversion factors.

  5. Prefixes and Aliases: Defines standard prefixes (e.g., milli-, kilo-,

    mega-) and unit aliases.

  6. Unit Systems: Details systems including SI, MKS, CGS, Planck, and

    imperial units.

  7. Contexts and Conversion: Context-specific definitions for

    domain-specific conversions.

Key Modifications#

This module is derived from the default Pint files with the following changes:

  1. Groups Removed: Unit group definitions (e.g., @group) have been

    excluded to avoid conflicts with pixel definitions.

  2. Final Variables Added: Constants and variables required for

    project-specific contexts, such as pixel-related units.

Example#

To create a unit registry with custom pixel-related units:

>>> from pint import UnitRegistry
>>> from .backend.pint_definition import pint_definitions
>>> units = UnitRegistry(pint_definitions.split("\n"))