Source code for astrohack.utils.constants

import numpy as np
import scipy.constants as constants

# njit cache status
[docs] njit_caching = True
# Physical constants
[docs] clight = constants.speed_of_light
[docs] notavail = "N/A"
# Mathematical constants
[docs] sig_2_fwhm = 2 * np.sqrt(2 * np.log(2))
# frequency units
[docs] freq_units = ["Hz", "kHz", "MHz", "GHz", "THz"]
# From Hz to unit
[docs] freq_factors = [1, 1e3, 1e6, 1e9, 1e12]
# Length units
[docs] length_units = ["km", "mi", "m", "yd", "ft", "in", "cm", "mm", "um", "mils"]
# From m to unit
[docs] length_factors = [ 1e3, 1609.34, 1.0, 0.9144, 0.3048, 0.0254, 1e-2, 1e-3, 1e-6, 25.4 / 1e6, ]
# Trigonometric units
[docs] trigo_units = ["rad", "deg", "hour", "asec", "amin", "masec", "uasec"]
# from rad to unit
[docs] trigo_factors = [ 1.0, constants.pi / 180.0, constants.pi / 12.0, constants.pi / 180.0 / 3.6e3, constants.pi / 180.0 / 60.0, constants.pi / 180.0 / 3.6e6, constants.pi / 180.0 / 3.6e9, ]
# Time units
[docs] time_units = ["nsec", "usec", "msec", "sec", "min", "hour", "day"]
# from sec to unit
[docs] time_factors = [1e-9, 1e-6, 1e-3, 1.0, 60.0, 3600.0, 86400.0]
[docs] unit_dict = { "length": length_units, "trigonometric": trigo_units, "time": time_units, "frequency": freq_units, }
[docs] fact_dict = { "length": length_factors, "trigonometric": trigo_factors, "time": time_factors, "frequency": freq_factors, }
# Trigonometric unit conversions
[docs] pi = constants.pi
[docs] twopi = 2.0 * constants.pi
[docs] fourpi = 4.0 * constants.pi
# https://github.com/casacore/casacore/blob/dbf28794ef446bbf4e6150653dbe404379a3c429/measures/Measures/Stokes.h
[docs] pol_codes_RL = np.array([5, 6, 7, 8]) # 'RR','RL','LR','LL'
[docs] pol_codes_XY = np.array([9, 10, 11, 12]) # ['XX','XY','YX','YY']
[docs] pol_str = np.array( ["0", "I", "Q", "U", "V", "RR", "RL", "LR", "LL", "XX", "XY", "YX", "YY"] )
# possible complex splits:
[docs] possible_splits = ["cartesian", "polar"]
# Plot convenience
[docs] plot_types = ["deviation", "phase", "ancillary", "all"]
[docs] figsize = [8, 6.4]
[docs] fontsize = 6.4
[docs] markersize = 3.2
[docs] minimum_xdtree_version = "0.10.1"