BornAgain
1.18.0
Simulate and fit neutron and x-ray scattering at grazing incidence
|
Public Member Functions | |
SpecularSimulationElement (double kz, bool computable) | |
SpecularSimulationElement (double wavelength, double alpha, bool computable) | |
SpecularSimulationElement (const SpecularSimulationElement &other) | |
SpecularSimulationElement (SpecularSimulationElement &&other) noexcept | |
~SpecularSimulationElement () | |
SpecularSimulationElement & | operator= (const SpecularSimulationElement &other) |
void | setPolarizationHandler (const PolarizationHandler &handler) |
const PolarizationHandler & | polarizationHandler () const |
double | getIntensity () const |
void | setIntensity (double intensity) |
bool | isCalculated () const |
std::vector< complex_t > | produceKz (const std::vector< Slice > &slices) |
Private Member Functions | |
void | swapContent (SpecularSimulationElement &other) |
Private Attributes | |
PolarizationHandler | m_polarization |
double | m_intensity |
const bool | m_computable |
std::function< std::vector< complex_t >const std::vector< Slice > &)> | m_kz_computation |
Data stucture containing both input and output of a single image pixel for specular simulation.
Definition at line 29 of file SpecularSimulationElement.h.
SpecularSimulationElement::SpecularSimulationElement | ( | double | kz, |
bool | computable | ||
) |
Definition at line 18 of file SpecularSimulationElement.cpp.
References KzComputation::computeKzFromSLDs().
SpecularSimulationElement::SpecularSimulationElement | ( | double | wavelength, |
double | alpha, | ||
bool | computable | ||
) |
Definition at line 26 of file SpecularSimulationElement.cpp.
References KzComputation::computeKzFromRefIndices().
SpecularSimulationElement::SpecularSimulationElement | ( | const SpecularSimulationElement & | other | ) |
Definition at line 36 of file SpecularSimulationElement.cpp.
|
noexcept |
Definition at line 42 of file SpecularSimulationElement.cpp.
|
default |
SpecularSimulationElement & SpecularSimulationElement::operator= | ( | const SpecularSimulationElement & | other | ) |
Definition at line 51 of file SpecularSimulationElement.cpp.
References swapContent().
void SpecularSimulationElement::setPolarizationHandler | ( | const PolarizationHandler & | handler | ) |
Assigns PolarizationHandler.
Definition at line 60 of file SpecularSimulationElement.cpp.
References m_polarization.
|
inline |
Returns assigned PolarizationHandler.
Definition at line 46 of file SpecularSimulationElement.h.
References m_polarization.
Referenced by anonymous_namespace{SpecularComputationTerm.cpp}::matrix_intensity().
|
inline |
|
inline |
Definition at line 49 of file SpecularSimulationElement.h.
References m_intensity.
Referenced by SpecularScalarTerm::eval(), and SpecularMatrixTerm::eval().
|
inline |
Returns calculation flag (if it's false, zero intensity is assigned to the element)
Definition at line 52 of file SpecularSimulationElement.h.
References m_computable.
Referenced by SpecularComputationTerm::computeIntensity().
std::vector< complex_t > SpecularSimulationElement::produceKz | ( | const std::vector< Slice > & | slices | ) |
Returns kz values for Abeles computation of reflection/transition coefficients.
Definition at line 65 of file SpecularSimulationElement.cpp.
References m_kz_computation.
Referenced by SpecularScalarTerm::eval(), and SpecularMatrixTerm::eval().
|
private |
Definition at line 70 of file SpecularSimulationElement.cpp.
References m_intensity, m_kz_computation, m_polarization, swap(), and PolarizationHandler::swapContent().
Referenced by operator=().
|
private |
Definition at line 60 of file SpecularSimulationElement.h.
Referenced by polarizationHandler(), setPolarizationHandler(), and swapContent().
|
private |
simulated intensity for detector cell
Definition at line 61 of file SpecularSimulationElement.h.
Referenced by getIntensity(), setIntensity(), and swapContent().
|
private |
Definition at line 62 of file SpecularSimulationElement.h.
Referenced by isCalculated().
|
private |
Definition at line 63 of file SpecularSimulationElement.h.
Referenced by produceKz(), and swapContent().