BornAgain
1.19.79
Open-source research software to simulate and fit neutron and x-ray reflectometry and grazing-incidence small-angle scattering
|
A number of materials-related helper functions for internal use.
Functions | |
MATERIAL_TYPES | checkMaterialTypes (const std::vector< const Material * > &materials) |
Checks if all non-default materials in materials are of the same type and returns this type. If several types of materials are involved, InvalidMaterialType identifier is returned. More... | |
template<typename T > | |
SpinMatrix | MagnetizationCorrection (complex_t unit_factor, double magnetic_factor, Vec3< T > polarization) |
SpinMatrix | PolarizedReducedPotential (complex_t n, R3 b_field, R3 k, double n_ref) |
Function for calculating the reduced potential, used for obtaining the Fresnel coefficients (polarized material case) More... | |
complex_t | ScalarReducedPotential (complex_t n, R3 k, double n_ref) |
Function for calculating the reduced potential, used for obtaining the Fresnel coefficients (non-polarized material case) More... | |
MATERIAL_TYPES MaterialUtils::checkMaterialTypes | ( | const std::vector< const Material * > & | materials | ) |
Checks if all non-default materials in materials are of the same type and returns this type. If several types of materials are involved, InvalidMaterialType identifier is returned.
Definition at line 64 of file MaterialUtils.cpp.
References InvalidMaterialType, and RefractiveMaterial.
Referenced by SampleUtils::Multilayer::ContainsCompatibleMaterials().
SpinMatrix MaterialUtils::MagnetizationCorrection | ( | complex_t | unit_factor, |
double | magnetic_factor, | ||
Vec3< T > | polarization | ||
) |
Definition at line 36 of file MaterialUtils.cpp.
References SpinMatrix::One().
Referenced by PolarizedReducedPotential(), and MagneticMaterialImpl::polarizedSubtrSLD().
SpinMatrix MaterialUtils::PolarizedReducedPotential | ( | complex_t | n, |
R3 | b_field, | ||
R3 | k, | ||
double | n_ref | ||
) |
Function for calculating the reduced potential, used for obtaining the Fresnel coefficients (polarized material case)
Definition at line 57 of file MaterialUtils.cpp.
References magnetic_prefactor, MagnetizationCorrection(), and ScalarReducedPotential().
Referenced by Slice::polarizedReducedPotential().
complex_t MaterialUtils::ScalarReducedPotential | ( | complex_t | n, |
R3 | k, | ||
double | n_ref | ||
) |
Function for calculating the reduced potential, used for obtaining the Fresnel coefficients (non-polarized material case)
Definition at line 52 of file MaterialUtils.cpp.
Referenced by PolarizedReducedPotential(), and Slice::scalarReducedPotential().