BornAgain  1.18.0
Simulate and fit neutron and x-ray scattering at grazing incidence
UnitConverterConvSpec Class Reference

Conversion of axis units for the case of conventional (angle-based) reflectometry. More...

+ Inheritance diagram for UnitConverterConvSpec:

Public Member Functions

 UnitConverterConvSpec (const Beam &beam, const IAxis &axis, Axes::Units axis_units=Axes::Units::RADIANS)
 Constructs the object for unit conversion.
 
 UnitConverterConvSpec (const AngularSpecScan &handler)
 
UnitConverterConvSpecclone () const override
 
size_t axisSize (size_t i_axis) const override
 Returns the size of underlying axis.
 
std::vector< Axes::Units > availableUnits () const override
 Returns the list of all available units.
 
Axes::Units defaultUnits () const override
 Returns default units to convert to.
 
- Public Member Functions inherited from UnitConverter1D
size_t dimension () const override
 Returns dimensionality of converted canvas.
 
double calculateMin (size_t i_axis, Axes::Units units_type) const override
 Calculates minimum on-axis value in given units.
 
double calculateMax (size_t i_axis, Axes::Units units_type) const override
 Calculates maximum on-axis value in given units.
 
std::unique_ptr< IAxiscreateConvertedAxis (size_t i_axis, Axes::Units units) const override
 Creates axis in converted units.
 
std::unique_ptr< OutputData< double > > createConvertedData (const OutputData< double > &data, Axes::Units units) const override
 Creates OutputData array in converter units.
 
- Public Member Functions inherited from IUnitConverter
std::string axisName (size_t i_axis, Axes::Units units_type=Axes::Units::DEFAULT) const
 
Axes::Units substituteDefaultUnits (Axes::Units units) const
 
- Public Member Functions inherited from ICloneable
 ICloneable (const ICloneable &)=delete
 
 ICloneable (ICloneable &&)=default
 
virtual void transferToCPP ()
 Used for Python overriding of clone (see swig/tweaks.py)
 

Protected Member Functions

 UnitConverterConvSpec (const UnitConverterConvSpec &other)
 
std::vector< std::map< Axes::Units, std::string > > createNameMaps () const override
 Creates name map for axis in various units.
 
std::function< double(double)> getTraslatorFrom (Axes::Units units_type) const
 Returns translating functional (input units --> rads)
 
std::function< double(double)> getTraslatorTo (Axes::Units units_type) const override
 Returns translating functional (rads --> desired units)
 
const IAxiscoordinateAxis () const override
 
- Protected Member Functions inherited from IUnitConverter
void checkIndex (size_t i_axis) const
 
void throwUnitsError (std::string method, std::vector< Axes::Units > available) const
 

Protected Attributes

double m_wavelength
 basic wavelength in nm (for translation to q-space).
 
std::unique_ptr< IAxism_axis
 basic inclination angles (in rads).
 

Additional Inherited Members

- Static Public Member Functions inherited from UnitConverter1D
static std::unique_ptr< UnitConverter1DcreateUnitConverter (const ISpecularScan &handler)
 Factory function to create unit converter for particular type of specular data.
 

Detailed Description

Conversion of axis units for the case of conventional (angle-based) reflectometry.

Definition at line 63 of file UnitConverter1D.h.


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