|
BornAgain
1.19.0
Simulate and fit neutron and x-ray scattering at grazing incidence
|
Data structure containing the data of a single slice, for calculating the Fresnel coefficients. More...
Public Member Functions | |
| Slice (const Slice &other) | |
| Slice (double thickness, const Material &material) | |
| Slice (double thickness, const Material &material, const LayerRoughness &top_roughness) | |
| Slice (Slice &&other) | |
| ~Slice () | |
| kvector_t | bField () const |
| void | initBField (kvector_t h_field, double b_z) |
| Initializes the magnetic B field from a given ambient field strength H. More... | |
| void | invertBField () |
| const Material & | material () const |
| Slice & | operator= (const Slice &other) |
| Eigen::Matrix2cd | polarizedReducedPotential (kvector_t 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 (kvector_t 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 | thickness () const |
| const LayerRoughness * | topRoughness () const |
Static Public Attributes | |
| static constexpr double | Magnetic_Permeability = 4e-7 * M_PI |
Private Attributes | |
| kvector_t | m_B_field |
| cached value of magnetic induction More... | |
| Material | m_material |
| double | m_thickness |
| std::unique_ptr< LayerRoughness > | m_top_roughness |
Data structure containing the data of a single slice, for calculating the Fresnel coefficients.
| Slice::Slice | ( | double | thickness, |
| const Material & | material | ||
| ) |
| Slice::Slice | ( | double | thickness, |
| const Material & | material, | ||
| const LayerRoughness & | top_roughness | ||
| ) |
Definition at line 24 of file Slice.cpp.
| Slice::Slice | ( | const Slice & | other | ) |
|
default |
|
inline |
| void Slice::initBField | ( | kvector_t | h_field, |
| double | b_z | ||
| ) |
Initializes the magnetic B field from a given ambient field strength H.
Definition at line 96 of file Slice.cpp.
References m_B_field, m_material, Magnetic_Permeability, Material::magnetization(), and BasicVector3D< T >::setZ().
| void Slice::invertBField | ( | ) |
| const Material & Slice::material | ( | ) | const |
Definition at line 51 of file Slice.cpp.
References m_B_field, m_material, m_thickness, and m_top_roughness.
| Eigen::Matrix2cd Slice::polarizedReducedPotential | ( | kvector_t | 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 90 of file Slice.cpp.
References m_B_field, m_material, M_PI, BasicVector3D< T >::mag(), MaterialUtils::PolarizedReducedPotential(), and Material::refractiveIndex().
Return the potential term that is used in the one-dimensional Fresnel calculations.
Definition at line 84 of file Slice.cpp.
References m_material, M_PI, BasicVector3D< T >::mag(), Material::refractiveIndex(), and MaterialUtils::ScalarReducedPotential().
| void Slice::setMaterial | ( | const Material & | material | ) |
Definition at line 64 of file Slice.cpp.
References m_material, and material().
| double Slice::thickness | ( | ) | const |
| const LayerRoughness * Slice::topRoughness | ( | ) | const |
Definition at line 79 of file Slice.cpp.
References m_top_roughness.
|
private |
cached value of magnetic induction
Definition at line 67 of file Slice.h.
Referenced by bField(), initBField(), invertBField(), operator=(), and polarizedReducedPotential().
|
private |
Definition at line 66 of file Slice.h.
Referenced by initBField(), material(), operator=(), polarizedReducedPotential(), scalarReducedPotential(), and setMaterial().
|
private |
Definition at line 65 of file Slice.h.
Referenced by operator=(), and thickness().
|
private |
Definition at line 68 of file Slice.h.
Referenced by Slice(), operator=(), and topRoughness().
|
staticconstexpr |
Definition at line 62 of file Slice.h.
Referenced by initBField(), and ProcessedSample::initBFields().