BaryonForge.utils.Xray module
- class BaryonForge.utils.Xray.EmissivityTable(T, Z, a, emissivity, regular_grid=True, regular_grid_method='linear', pad_low_T=True)[source]
Bases:
objectInterpolate emissivity in (T, Z, z), using log for T and emissivity.
- Parameters:
T (array_like) – Full list of sample-point coordinates. These must always be passed as point lists of equal length, even when the samples lie on a regular Cartesian grid. We need temperature in physical keV, metallicity in Zsolar, and scale factor.
Z (array_like) – Full list of sample-point coordinates. These must always be passed as point lists of equal length, even when the samples lie on a regular Cartesian grid. We need temperature in physical keV, metallicity in Zsolar, and scale factor.
a (array_like) – Full list of sample-point coordinates. These must always be passed as point lists of equal length, even when the samples lie on a regular Cartesian grid. We need temperature in physical keV, metallicity in Zsolar, and scale factor.
emissivity (array_like) – Emissivity values at the supplied points. Must have the same shape as T, Z after flattening. Volumes in CCL/Baryonforge are always in comoving units, so pass in emissivity in cm^3 –> comoving cm^3
regular_grid (bool) – If True, interpret the input points as a full Cartesian product grid and use RegularGridInterpolator after validating this. If False, use NearestNDInterpolator on the scattered points.
regular_method (str, optional) – Interpolation method for RegularGridInterpolator. Default is “linear”.
pad_low_T (bool, optional) – Whether to pad the table so it can handle extremely low astrophysical temperature (T < 1e4 K) that are below the table limits. Setting this to True will return 0 emissivity for these regions, instead of returning out-of-bounds errors. These temperatures can occur in our models for low-mass or large-separation scenarios.
- sentinel_value = 1e-100