18 SphericalPixel::SphericalPixel(
const Bin1D& alpha_bin, 
const Bin1D& phi_bin)
 
   19     : m_alpha(alpha_bin.m_lower), m_phi(phi_bin.m_lower), m_dalpha(alpha_bin.getBinSize()),
 
   20       m_dphi(phi_bin.getBinSize())
 
   22     auto solid_angle_value = std::abs(m_dphi * (std::sin(m_alpha + m_dalpha) - std::sin(m_alpha)));
 
   23     m_solid_angle = solid_angle_value <= 0.0 ? 1.0 : solid_angle_value;
 
   31 SphericalPixel* SphericalPixel::createZeroSizePixel(
double x, 
double y)
 const 
   33     double phi = m_phi + x * m_dphi;
 
   34     double alpha = m_alpha + y * m_dalpha;
 
   35     Bin1D alpha_bin(alpha, alpha);
 
   36     Bin1D phi_bin(phi, phi);
 
   40 kvector_t SphericalPixel::getK(
double x, 
double y, 
double wavelength)
 const 
   42     double phi = m_phi + x * m_dphi;
 
   43     double alpha = m_alpha + y * m_dalpha;
 
   47 double SphericalPixel::getIntegrationFactor(
double , 
double y)
 const 
   51     double alpha = m_alpha + y * m_dalpha;
 
   52     return std::cos(alpha) * m_dalpha / (std::sin(m_alpha + m_dalpha) - std::sin(m_alpha));
 
   55 double SphericalPixel::getSolidAngle()
 const 
BasicVector3D< double > vecOfLambdaAlphaPhi(double _lambda, double _alpha, double _phi)
Creates a vector<double> as a wavevector with given wavelength and angles.
 
Defines structs Bin1D, Bin1DCVector.
 
Defines class SphericalPixel.
 
A pixel in a SphericalDetector.