BornAgain
1.18.0
Simulate and fit neutron and x-ray scattering at grazing incidence
SphericalPixel.h
Go to the documentation of this file.
1
// ************************************************************************** //
2
//
3
// BornAgain: simulate and fit scattering at grazing incidence
4
//
5
//! @file Device/Detector/SphericalPixel.h
6
//! @brief Defines class SphericalPixel.
7
//!
8
//! @homepage http://www.bornagainproject.org
9
//! @license GNU General Public License v3 or higher (see COPYING)
10
//! @copyright Forschungszentrum Jülich GmbH 2018
11
//! @authors Scientific Computing Group at MLZ (see CITATION, AUTHORS)
12
//
13
// ************************************************************************** //
14
15
#ifndef BORNAGAIN_CORE_DETECTOR_SPHERICALPIXEL_H
16
#define BORNAGAIN_CORE_DETECTOR_SPHERICALPIXEL_H
17
18
#include "
Base/Pixel/IPixel.h
"
19
20
struct
Bin1D
;
21
22
//! A pixel in a SphericalDetector
23
24
class
SphericalPixel
:
public
IPixel
25
{
26
public
:
27
SphericalPixel
(
const
Bin1D
& alpha_bin,
const
Bin1D
& phi_bin);
28
29
SphericalPixel
* clone()
const override
;
30
SphericalPixel
* createZeroSizePixel(
double
x,
double
y)
const override
;
31
kvector_t
getK(
double
x,
double
y,
double
wavelength)
const override
;
32
double
getIntegrationFactor(
double
x,
double
y)
const override
;
33
double
getSolidAngle()
const override
;
34
35
private
:
36
double
m_alpha, m_phi;
37
double
m_dalpha, m_dphi;
38
double
m_solid_angle;
39
};
40
41
#endif
// BORNAGAIN_CORE_DETECTOR_SPHERICALPIXEL_H
IPixel.h
Defines pure virtual interface IPixel (has no cpp file)
BasicVector3D< double >
IPixel
Interface for a function that maps [0,1]x[0,1] to the kvectors in a pixel.
Definition:
IPixel.h:24
SphericalPixel
A pixel in a SphericalDetector.
Definition:
SphericalPixel.h:25
Bin1D
Definition:
Bin.h:20
Device
Detector
SphericalPixel.h
Generated by
1.9.1