nenupy.astro.skymodel.HpxGSM
- class nenupy.astro.skymodel.HpxGSM(resolution=<Quantity 1. deg>, time=<Time object: scale='utc' format='datetime' value=2026-07-06 12:39:53.330196>, frequency=<Quantity 50. MHz>, observer=<EarthLocation (4323936.68522791, 165534.49991696, 4670345.36540385) m>)[source]
Bases:
HpxSky- __init__(resolution=<Quantity 1. deg>, time=<Time object: scale='utc' format='datetime' value=2026-07-06 12:39:53.330196>, frequency=<Quantity 50. MHz>, observer=<EarthLocation (4323936.68522791, 165534.49991696, 4670345.36540385) m>)[source]
Methods
__init__([resolution, time, frequency, observer])add_point_source(source, value[, angular_size])Add point source on top of the GSM model.
add_point_source_snr(source, snr[, angular_size])Add point source on top of the GSM model.
compute_lmn(phase_center[, coordinate_mask])(l, m, n) image domain coordinates computed from HEALPix equatorial coordinates (in Right-Ascension \(\alpha\) and Declination \(\delta\), see
coordinates) with respect to thephase_center(of equatorial coordinates \(\alpha_0\), \(\delta_0\)).hour_angle([fast_compute])local_sidereal_time([fast_compute])shaped_like(other)_summary_
Attributes
Allows to modify horizontal coordinates without messing up with the actual coordinates object.
frequencyground_projectionhorizontal_coordinatespolarizationshapetimevaluevisible_maskcoordinatesobserver- add_point_source(source, value, angular_size=None)[source]
Add point source on top of the GSM model.
- Parameters:
source (
Target) – Source target, can either be aFixedTargetor aSolarSystemTarget.value (
float|ndarray) – Value to add to the GSM at the position of the source.angular_size (
Quantity, optional) – Angular size of the point source (a gaussian model is applied with a FWHM equivalent toangular_size), by defaultNone
Example
>>> from nenupy.astro.skymodel import HpxGSM >>> from nenupy.astro.target import FixedTarget >>> from astropy.time import Time >>> times = Time(["2026-05-01 00:00:00", "2026-05-01 12:00:00"]) >>> gsm = HpxGSM(time=times) >>> gsm.add_point_source( source=FixedTarget.from_name("PSR B1919+21"), value=1e5, angular_size=None )
- add_point_source_snr(source, snr, angular_size=None)[source]
Add point source on top of the GSM model.
- Parameters:
source (
Target) – Source target, can either be aFixedTargetor aSolarSystemTarget.snr (
float) – Signal to Noise Ratio of thevalue(seeadd_point_source()) added on top of the GSM map. The value is computed as the sum between the GSM median and the product ofsnrand the standard deviation of the GSM map.angular_size (
Quantity, optional) – Angular size of the point source (a gaussian model is applied with a FWHM equivalent toangular_size), by defaultNone
Example
>>> from nenupy.astro.skymodel import HpxGSM >>> from nenupy.astro.target import SolarSystemTarget >>> import astropy.units as u >>> from astropy.time import Time >>> times = Time(["2026-05-01 00:00:00", "2026-05-01 12:00:00"]) >>> gsm = HpxGSM(time=times) >>> gsm.add_point_source_snr( source=SolarSystemTarget.from_name("Sun", times), snr=20, angular_size=30 * u.arcmin )
- compute_lmn(phase_center, coordinate_mask=None)
(l, m, n) image domain coordinates computed from HEALPix equatorial coordinates (in Right-Ascension \(\alpha\) and Declination \(\delta\), see
coordinates) with respect to thephase_center(of equatorial coordinates \(\alpha_0\), \(\delta_0\)).\[\begin{split}\cases{ l = \cos(\delta) \sin( \Delta \alpha)\\ m = \sin(\delta) \cos(\delta_0) - \cos(\delta) \sin(\delta_0) \cos(\Delta \alpha)\\ n = \sqrt{ 1 - l^2 - m^2 } }\end{split}\]where \(\Delta \alpha = \alpha - \alpha_0\).
- property custom_ho_coordinates
Allows to modify horizontal coordinates without messing up with the actual coordinates object.