haslamBackgroundRadiation
Variables
-
const Eigen::Matrix3d dcm_GN = (Eigen::Matrix3d() << -0.054875539390, -0.873437104725, -0.483834991775, +0.494109453633, -0.444829594298, +0.746982248696, -0.867666135681, -0.198076389622, +0.455983794523).finished()
J2000/ICRS to Galactic IAU (1976) rotation matrix.
Direction cosine matrix for transforming vectors from J2000/ICRS inertial frame to Galactic coordinates. Based on https://doi.org/10.1051/0004-6361/201014961
-
class HaslamMap
- #include <haslamBackgroundRadiation.h>
Singleton class for Haslam 408 MHz all-sky background radiation map.
Reads the Haslam 408 MHz all-sky map from a HEALPix FITS file and provides brightness temperature lookups for given celestial coordinates.
Public Functions
-
bool initialize()
Initialize the map by loading FITS data.
- Returns:
True if initialization successful, false otherwise
-
double getBrightnessTemperature(Eigen::Vector3d n_A_N, double beamRadius) const
Beam-averaged brightness temperature at 408 MHz.
- Parameters:
n_A_N – Antenna boresight direction in inertial {N} frame (normalized)
beamRadius – Circular beam half-angle [rad]
- Returns:
Average brightness temperature over beam area [K]
-
double scaleToFrequency(double T_408, double targetFreq_Hz) const
Scale brightness temperature from 408 MHz to target frequency.
- Parameters:
T_408 – Temperature at 408 MHz [K]
targetFreq_Hz – Target frequency [Hz]
- Returns:
Scaled temperature [K]
-
inline bool isInitialized() const
Check if map data has been loaded.
- Returns:
True if initialized, false otherwise
-
inline long getNside() const
Get HEALPix NSIDE parameter.
- Returns:
NSIDE value
-
inline long getNpix() const
Get total number of HEALPix pixels.
- Returns:
Number of pixels
-
void configureBrightnessFile(const std::string &file)
Method to configure the background temperature data file path
- Parameters:
file – background temperature data file full path
Public Static Functions
Private Functions
-
HaslamMap()
Private constructor for singleton pattern.
-
~HaslamMap() = default
Default destructor.
-
bool loadHaslamMap()
Load Haslam map data from FITS file.
- Returns:
True if loading successful, false otherwise
-
long ang2pix_ring(double theta, double phi) const
Convert spherical angles to HEALPix ring-scheme pixel index.
- Parameters:
theta – Colatitude angle [rad]
phi – Longitude angle [rad]
- Returns:
Pixel index
-
void pix2ang_ring(long ipix, double &theta, double &phi) const
Convert HEALPix pixel index to spherical angles.
- Parameters:
ipix – Pixel index
theta – Output colatitude angle [rad]
phi – Output longitude angle [rad]
-
std::vector<long> query_disc(double theta0, double phi0, double radius) const
Query all pixels within a disc on the sphere.
- Parameters:
theta0 – Disc center colatitude [rad]
phi0 – Disc center longitude [rad]
radius – Disc radius [rad]
- Returns:
Vector of pixel indices within the disc
-
double getPixelTemperature(long ipix) const
Get brightness temperature for a single pixel.
- Parameters:
ipix – Pixel index
- Returns:
Brightness temperature [K]
Private Members
-
BSKLogger bskLogger
BSK Logging.
-
std::vector<float> brightnessTemperatures
[K] Brightness temperature data
-
long nside
HEALPix NSIDE parameter.
-
long npix
Total number of pixels.
-
bool initialized
Map loaded flag.
-
double beamSize_arcmin
[arcmin] Original map beam size
-
std::string filepath
-
bool initialize()