BornAgain
1.18.0
Simulate and fit neutron and x-ray scattering at grazing incidence
|
Material implementation based on wavelength-independent data (valid for a range of wavelengths) More...
Public Member Functions | |
MaterialBySLDImpl * | clone () const override |
Returns pointer to a copy of material. | |
complex_t | refractiveIndex (double wavelength) const override |
Returns refractive index. | |
complex_t | refractiveIndex2 (double wavelength) const override |
Returns squared refractive index. | |
complex_t | materialData () const override |
Returns underlying material data. | |
MATERIAL_TYPES | typeID () const override |
Returns type of material implementation. | |
complex_t | scalarSubtrSLD (const WavevectorInfo &wavevectors) const override |
Returns ( - sld), sld (in ) being the scattering length density. | |
void | print (std::ostream &ostr) const override |
Prints object data. | |
Public Member Functions inherited from MagneticMaterialImpl | |
MagneticMaterialImpl (const std::string &name, kvector_t magnetization) | |
Constructs basic material with name and magnetization. | |
MagneticMaterialImpl * | inverted () const override final |
Constructs a material with inverted magnetization. | |
bool | isScalarMaterial () const override final |
Indicates whether the interaction with the material is scalar. More... | |
bool | isMagneticMaterial () const override final |
kvector_t | magnetization () const override final |
Returns the magnetization (in A/m) | |
Eigen::Matrix2cd | polarizedSubtrSLD (const WavevectorInfo &wavevectors) const override final |
Returns ( - sld) matrix with magnetization corrections. | |
MagneticMaterialImpl * | rotatedMaterial (const Transform3D &transform) const override final |
Public Member Functions inherited from BaseMaterialImpl | |
BaseMaterialImpl (const std::string &name) | |
Constructs basic material with name. | |
const std::string & | getName () const |
Returns name of the material. | |
Friends | |
Material | MaterialBySLD (const std::string &name, double sld_real, double sld_imag, kvector_t magnetization) |
Constructs a wavelength-independent material with a given complex-valued scattering length density (SLD). More... | |
Material implementation based on wavelength-independent data (valid for a range of wavelengths)
Definition at line 24 of file MaterialBySLDImpl.h.
|
friend |
Constructs a wavelength-independent material with a given complex-valued scattering length density (SLD).
SLD values for a wide variety of materials can be found on https://sld-calculator.appspot.com/ and https://www.ncnr.nist.gov/resources/activation/ By convention, SLD imaginary part is treated as negative by default, which corresponds to attenuation of the signal. With no parameters given, MaterialBySLD constructs default (vacuum) material with zero sld and zero magnetization.
name | material name |
sld_real | real part of the scattering length density, inverse square angstroms |
sld_imag | imaginary part of the scattering length density, inverse square angstroms |
magnetization | magnetization (in A/m) |
Definition at line 47 of file MaterialFactoryFuncs.cpp.