15 #ifndef BORNAGAIN_CORE_MATERIAL_MAGNETICMATERIALIMPL_H 
   16 #define BORNAGAIN_CORE_MATERIAL_MAGNETICMATERIALIMPL_H 
   46     bool isMagneticMaterial() const override final;
 
Defines basic material implementation interface.
 
Interface for material implementation classes.
 
Basic implementation for magnetized material.
 
MagneticMaterialImpl * clone() const override=0
Returns pointer to a copy of material.
 
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.
 
kvector_t magnetization() const override final
Returns the magnetization (in A/m)
 
bool isScalarMaterial() const override final
Indicates whether the interaction with the material is scalar.
 
Eigen::Matrix2cd polarizedSubtrSLD(const WavevectorInfo &wavevectors) const override final
Returns (  - sld) matrix with magnetization corrections.
 
Holds all wavevector information relevant for calculating form factors.