BornAgain  1.18.0
Simulate and fit neutron and x-ray scattering at grazing incidence
BaseMaterialImpl Class Referenceabstract

Interface for material implementation classes. More...

+ Inheritance diagram for BaseMaterialImpl:

Public Member Functions

 BaseMaterialImpl (const std::string &name)
 Constructs basic material with name.
 
virtual BaseMaterialImplclone () const =0
 Returns pointer to a copy of material.
 
virtual BaseMaterialImplinverted () const =0
 Constructs a material with inverted magnetization.
 
virtual complex_t refractiveIndex (double wavelength) const =0
 Returns refractive index.
 
virtual complex_t refractiveIndex2 (double wavelength) const =0
 Returns squared refractive index.
 
virtual bool isScalarMaterial () const =0
 Indicates whether the interaction with the material is scalar. More...
 
virtual bool isMagneticMaterial () const =0
 
virtual kvector_t magnetization () const =0
 Returns the magnetization (in A/m)
 
virtual complex_t materialData () const =0
 Returns underlying material data.
 
virtual MATERIAL_TYPES typeID () const =0
 Returns type of material implementation.
 
virtual complex_t scalarSubtrSLD (const WavevectorInfo &wavevectors) const =0
 Returns ( $ \pi/\lambda^2 $ - sld), sld being the scattering length density.
 
virtual Eigen::Matrix2cd polarizedSubtrSLD (const WavevectorInfo &wavevectors) const =0
 Returns ( $ \pi/\lambda^2 $ - sld) matrix with magnetization corrections.
 
virtual BaseMaterialImplrotatedMaterial (const Transform3D &transform) const =0
 
virtual void print (std::ostream &ostr) const =0
 Prints object data.
 
const std::string & getName () const
 Returns name of the material.
 

Detailed Description

Interface for material implementation classes.

Inherited by MagneticMaterialImpl, which has further children.

Definition at line 31 of file BaseMaterialImpl.h.

Member Function Documentation

◆ isScalarMaterial()

virtual bool BaseMaterialImpl::isScalarMaterial ( ) const
pure virtual

Indicates whether the interaction with the material is scalar.

This means that different polarization states will be diffracted equally

Implemented in MagneticMaterialImpl.


The documentation for this class was generated from the following file: