BornAgain
1.19.79
Open-source research software to simulate and fit neutron and x-ray reflectometry and grazing-incidence small-angle scattering
|
Data structure containing the data of a single slice, for calculating the Fresnel coefficients.
Public Member Functions | |
Slice (const Slice &other) | |
Slice (const ZLimits &zRange, Material material, const R3 &B_field, const LayerRoughness *roughness) | |
Slice (Slice &&other) | |
~Slice () | |
R3 | bField () const |
void | initBField (R3 h_field, double h_z) |
Initializes the magnetic B field from a given ambient field strength H. More... | |
void | invertBField () |
const Material & | material () const |
SpinMatrix | polarizedReducedPotential (R3 k, double n_ref) const |
Return the potential term that is used in the one-dimensional Fresnel calculations in the presence of magnetization. More... | |
complex_t | scalarReducedPotential (R3 k, double n_ref) const |
Return the potential term that is used in the one-dimensional Fresnel calculations. More... | |
void | setMaterial (const Material &material) |
double | thicknessOr0 () const |
const LayerRoughness * | topRoughness () const |
double | zBottom () const |
double | zTop () const |
double | zTopOr0 () const |
Private Attributes | |
R3 | m_B_field |
cached value of magnetic induction More... | |
Material | m_material |
const LayerRoughness *const | m_top_roughness |
const ZLimits | m_zRange |
Slice::Slice | ( | const ZLimits & | zRange, |
Material | material, | ||
const R3 & | B_field, | ||
const LayerRoughness * | roughness | ||
) |
Slice::Slice | ( | const Slice & | other | ) |
Definition at line 31 of file Slice.cpp.
|
default |
|
inline |
void Slice::initBField | ( | R3 | h_field, |
double | h_z | ||
) |
Initializes the magnetic B field from a given ambient field strength H.
Definition at line 93 of file Slice.cpp.
References m_B_field, m_material, M_PI, and Material::magnetization().
Referenced by SliceStack::setBField().
void Slice::invertBField | ( | ) |
const Material & Slice::material | ( | ) | const |
Definition at line 51 of file Slice.cpp.
References m_material.
Referenced by ProfileHelper::calculateProfile(), SliceStack::containsMagneticMaterial(), RoughMultiLayerContribution::get_refractive_term(), and setMaterial().
SpinMatrix Slice::polarizedReducedPotential | ( | R3 | k, |
double | n_ref | ||
) | const |
Return the potential term that is used in the one-dimensional Fresnel calculations in the presence of magnetization.
Definition at line 87 of file Slice.cpp.
References m_B_field, m_material, M_PI, MaterialUtils::PolarizedReducedPotential(), and Material::refractiveIndex().
complex_t Slice::scalarReducedPotential | ( | R3 | k, |
double | n_ref | ||
) | const |
Return the potential term that is used in the one-dimensional Fresnel calculations.
Definition at line 81 of file Slice.cpp.
References m_material, M_PI, Material::refractiveIndex(), and MaterialUtils::ScalarReducedPotential().
void Slice::setMaterial | ( | const Material & | material | ) |
Definition at line 46 of file Slice.cpp.
References m_material, and material().
double Slice::thicknessOr0 | ( | ) | const |
Definition at line 71 of file Slice.cpp.
References m_zRange, and ZLimits::thicknessOr0().
Referenced by RoughMultiLayerContribution::get_sum8terms().
const LayerRoughness * Slice::topRoughness | ( | ) | const |
Definition at line 76 of file Slice.cpp.
References m_top_roughness.
Referenced by ProfileHelper::calculateProfile(), RoughMultiLayerContribution::compute(), and reSample::hasRoughness().
double Slice::zBottom | ( | ) | const |
Definition at line 56 of file Slice.cpp.
References m_zRange, and ZLimits::zBottom().
double Slice::zTop | ( | ) | const |
Definition at line 61 of file Slice.cpp.
References m_zRange, and ZLimits::zTop().
Referenced by ProfileHelper::calculateProfile().
double Slice::zTopOr0 | ( | ) | const |
Definition at line 66 of file Slice.cpp.
References m_zRange, and ZLimits::zTopOr0().
|
private |
cached value of magnetic induction
Definition at line 64 of file Slice.h.
Referenced by bField(), initBField(), invertBField(), and polarizedReducedPotential().
|
private |
Definition at line 63 of file Slice.h.
Referenced by initBField(), material(), polarizedReducedPotential(), scalarReducedPotential(), and setMaterial().
|
private |
Definition at line 65 of file Slice.h.
Referenced by topRoughness().
|
private |