BornAgain
1.19.79
Open-source research software to simulate and fit neutron and x-ray reflectometry and grazing-incidence small-angle scattering
|
Computes the diffuse reflection from the rough interfaces of a sample. Used by DWBAComputation.
Definition at line 31 of file RoughMultiLayerContribution.h.
Public Member Functions | |
RoughMultiLayerContribution (const reSample &re_sample) | |
void | compute (DiffuseElement &ele) const |
Private Member Functions | |
complex_t | get_refractive_term (size_t i_layer, double wavelength) const |
complex_t | get_sum8terms (size_t i_layer, const DiffuseElement &ele) const |
Private Attributes | |
const reSample & | m_re_sample |
RoughMultiLayerContribution::RoughMultiLayerContribution | ( | const reSample & | re_sample | ) |
Definition at line 45 of file RoughMultiLayerContribution.cpp.
void RoughMultiLayerContribution::compute | ( | DiffuseElement & | ele | ) | const |
Definition at line 50 of file RoughMultiLayerContribution.cpp.
References DiffuseElement::addIntensity(), DiffuseElement::alphaMean(), reSample::avgeSlice(), MultiLayer::crossCorrLength(), reSample::crossCorrSpectralFun(), get_refractive_term(), get_sum8terms(), M_PI, m_re_sample, DiffuseElement::meanQ(), reSample::numberOfSlices(), reSample::sample(), LayerRoughness::spectralFunction(), Slice::topRoughness(), and DiffuseElement::wavelength().
|
private |
Definition at line 87 of file RoughMultiLayerContribution.cpp.
References reSample::avgeSlice(), m_re_sample, Slice::material(), and Material::refractiveIndex2().
Referenced by compute().
|
private |
Definition at line 93 of file RoughMultiLayerContribution.cpp.
References ASSERT, reSample::averageSlices(), reSample::avgeSlice(), SliceStack::bottomRoughness(), DiffuseElement::fluxIn(), DiffuseElement::fluxOut(), m_re_sample, LayerRoughness::sigma(), and Slice::thicknessOr0().
Referenced by compute().
|
private |
Definition at line 38 of file RoughMultiLayerContribution.h.
Referenced by compute(), get_refractive_term(), and get_sum8terms().