BornAgain
1.19.0
Simulate and fit neutron and x-ray scattering at grazing incidence
|
A number of materials-related helper functions for internal use. More...
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. More... | |
template<typename T > | |
Eigen::Matrix2cd | MagnetizationCorrection (complex_t unit_factor, double magnetic_factor, BasicVector3D< T > polarization) |
Eigen::Matrix2cd | PolarizedReducedPotential (complex_t n, kvector_t b_field, kvector_t 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, kvector_t k, double n_ref) |
Function for calculating the reduced potential, used for obtaining the Fresnel coefficients (non-polarized material case) More... | |
A number of materials-related helper functions for internal use.
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 69 of file MaterialUtils.cpp.
References InvalidMaterialType, and RefractiveMaterial.
Referenced by MultiLayerUtils::ContainsCompatibleMaterials(), and createAveragedMaterial().
Eigen::Matrix2cd MaterialUtils::MagnetizationCorrection | ( | complex_t | unit_factor, |
double | magnetic_factor, | ||
BasicVector3D< T > | polarization | ||
) |
Definition at line 36 of file MaterialUtils.cpp.
References Unit_Matrix().
Referenced by PolarizedReducedPotential(), and MagneticMaterialImpl::polarizedSubtrSLD().
Eigen::Matrix2cd MaterialUtils::PolarizedReducedPotential | ( | complex_t | n, |
kvector_t | b_field, | ||
kvector_t | k, | ||
double | n_ref | ||
) |
Function for calculating the reduced potential, used for obtaining the Fresnel coefficients (polarized material case)
Definition at line 60 of file MaterialUtils.cpp.
References BasicVector3D< T >::mag2(), magnetic_prefactor, MagnetizationCorrection(), and ScalarReducedPotential().
Referenced by Slice::polarizedReducedPotential().
Function for calculating the reduced potential, used for obtaining the Fresnel coefficients (non-polarized material case)
Definition at line 55 of file MaterialUtils.cpp.
References BasicVector3D< T >::sin2Theta().
Referenced by PolarizedReducedPotential(), and Slice::scalarReducedPotential().