16 #error no need to expose this header to Swig
20 #ifndef BORNAGAIN_BASE_PIXEL_SIMULATIONELEMENT_H
21 #define BORNAGAIN_BASE_PIXEL_SIMULATIONELEMENT_H
36 std::unique_ptr<IPixel> pixel,
const Eigen::Matrix2cd& beam_polarization,
37 const Eigen::Matrix2cd& analyzer,
bool isSpecular_);
66 double getAlpha(
double x,
double y)
const;
67 double getPhi(
double x,
double y)
const;
Defines class PolarizationHandler.
Defines basic vectors in Z^3, R^3, C^3.
Interface for a function that maps [0,1]x[0,1] to the kvectors in a pixel.
Convenience class for handling polarization density matrix and polarization analyzer operator.
Data stucture containing both input and output of a single detector cell.
const PolarizationHandler m_polarization
double solidAngle() const
double wavelength() const
SimulationElement pointElement(double x, double y) const
Returns copy of this SimulationElement with k_f given by in-pixel coordinate x,y.
SimulationElement & operator=(const SimulationElement &)=delete
double m_intensity
simulated intensity for detector cell
SimulationElement()=delete
void addIntensity(double intensity)
kvector_t getMeanKf() const
double getPhiMean() const
const double m_wavelength
wavelength of beam
SimulationElement(SimulationElement &&other)
void setIntensity(double intensity)
const double m_phi_i
incident angle in xy plane
kvector_t getKf(double x, double y) const
Returns outgoing wavevector Kf for in-pixel coordinates x,y.
const kvector_t m_mean_kf
cached value of mean_kf
const double m_alpha_i
incident grazing angle
double integrationFactor(double x, double y) const
kvector_t getQ(double x, double y) const
Returns scattering vector Q, with Kf determined from in-pixel coordinates x,y.
const PolarizationHandler & polarizationHandler() const
Returns assigned PolarizationHandler.
const kvector_t m_k_i
cached value of k_i
std::unique_ptr< IPixel > m_pixel
double getAlphaMean() const
double getAlpha(double x, double y) const
bool isSpecular() const
Tells if simulation element corresponds to a specular peak.
double getPhi(double x, double y) const