Mantid
Loading...
Searching...
No Matches
Public Member Functions | List of all members
Mantid::Kernel::Units::Empty Class Reference

Empty unit. More...

#include <Unit.h>

Inheritance diagram for Mantid::Kernel::Units::Empty:
Mantid::Kernel::Unit Mantid::Kernel::Units::AtomicDistance Mantid::Kernel::Units::Degrees Mantid::Kernel::Units::Label Mantid::Kernel::Units::Temperature Mantid::Kernel::Units::Phi

Public Member Functions

const std::string caption () const override
 The full name of the unit. More...
 
Unitclone () const override
 
double conversionTOFMax () const override
 
double conversionTOFMin () const override
 
 Empty ()
 Constructor. More...
 
void init () override
 Finalize the initialization. More...
 
bool isConvertible () const override
 Returns if the unit can be used in conversions. More...
 
const UnitLabel label () const override
 A label for the unit to be printed on axes,. More...
 
double singleFromTOF (const double tof) const override
 Convert a single tof value to this unit. More...
 
double singleToTOF (const double x) const override
 Convert a single X value to TOF. More...
 
const std::string unitID () const override
 "Empty" More...
 
- Public Member Functions inherited from Mantid::Kernel::Unit
virtual const std::string caption () const =0
 The full name of the unit. More...
 
virtual Unitclone () const =0
 
virtual std::pair< double, double > conversionRange () const
 The range where conversion to TOF from given units is monotonic and reversible. More...
 
virtual double conversionTOFMax () const =0
 This function returns maximal TOF value still reversibly convertible into the unit. More...
 
virtual double conversionTOFMin () const =0
 some units can be converted from TOF only in the range of TOF ; This function returns minimal TOF value still reversibly convertible into the unit. More...
 
double convertSingleFromTOF (const double xvalue, const double &l1, const int &emode, const UnitParametersMap &params)
 Convert from the time-of-flight to the concrete unit. More...
 
double convertSingleToTOF (const double xvalue, const double &l1, const int &emode, const UnitParametersMap &params)
 Convert from the concrete unit to time-of-flight. More...
 
void fromTOF (std::vector< double > &xdata, std::vector< double > &ydata, const double &_l1, const int &_emode, const UnitParametersMap &params)
 
void fromTOF (std::vector< double > &xdata, std::vector< double > &ydata, const double &_l1, const int &_emode, std::initializer_list< std::pair< const UnitParams, double > > params)
 Convert from time-of-flight to the concrete unit. More...
 
virtual void init ()=0
 Finalize the initialization. More...
 
void initialize (const double &_l1, const int &_emode, const UnitParametersMap &params)
 Initialize the unit to perform conversion using singleToTof() and singleFromTof() More...
 
virtual bool isConvertible () const
 Returns if the unit can be used in conversions. More...
 
bool isInitialized () const
 
virtual const UnitLabel label () const =0
 A label for the unit to be printed on axes,. More...
 
bool operator!= (const Unit &u) const
 
bool operator== (const Unit &u) const
 
bool quickConversion (const Unit &destination, double &factor, double &power) const
 Is conversion by constant multiplication possible? More...
 
bool quickConversion (std::string destUnitName, double &factor, double &power) const
 Is conversion by constant multiplication possible? More...
 
virtual double singleFromTOF (const double tof) const =0
 Convert a single tof value to this unit. More...
 
virtual double singleToTOF (const double x) const =0
 Convert a single X value to TOF. More...
 
void toTOF (std::vector< double > &xdata, std::vector< double > &ydata, const double &_l1, const int &_emode, const UnitParametersMap &params)
 
void toTOF (std::vector< double > &xdata, std::vector< double > &ydata, const double &_l1, const int &_emode, std::initializer_list< std::pair< const UnitParams, double > > params)
 Convert from the concrete unit to time-of-flight. More...
 
 Unit ()
 (Empty) Constructor More...
 
virtual const std::string unitID () const =0
 The name of the unit. More...
 
virtual ~Unit ()=default
 Virtual destructor. More...
 

Additional Inherited Members

- Protected Member Functions inherited from Mantid::Kernel::Unit
void addConversion (std::string to, const double &factor, const double &power=1.0) const
 Add a 'quick conversion' from the unit class on which this method is called. More...
 
virtual void validateUnitParams (const int emode, const UnitParametersMap &params)
 
- Protected Attributes inherited from Mantid::Kernel::Unit
int emode
 emode :: The energy mode (0=elastic, 1=direct geometry, 2=indirect geometry) More...
 
bool initialized
 The unit values have been initialized. More...
 
double l1
 l1 :: The source-sample distance (in metres) More...
 
const UnitParametersMapm_params
 additional parameters l2 :: distance from sample to detector (in metres) twoTheta :: scattering angle in radians efixed :: Value of fixed energy: EI (emode=1) or EF (emode=2) (in meV) difc :: diffractometer constant DIFC More...
 

Detailed Description

Empty unit.

Definition at line 242 of file Unit.h.

Constructor & Destructor Documentation

◆ Empty()

Mantid::Kernel::Units::Empty::Empty ( )
inline

Constructor.

Definition at line 258 of file Unit.h.

Referenced by clone().

Member Function Documentation

◆ caption()

const std::string Mantid::Kernel::Units::Empty::caption ( ) const
inlineoverridevirtual

The full name of the unit.

Returns
The unit caption

Implements Mantid::Kernel::Unit.

Reimplemented in Mantid::Kernel::Units::Label, Mantid::Kernel::Units::Degrees, Mantid::Kernel::Units::Phi, Mantid::Kernel::Units::Temperature, and Mantid::Kernel::Units::AtomicDistance.

Definition at line 245 of file Unit.h.

◆ clone()

Unit * Mantid::Kernel::Units::Empty::clone ( ) const
overridevirtual

◆ conversionTOFMax()

double Mantid::Kernel::Units::Empty::conversionTOFMax ( ) const
overridevirtual
Returns
NaN as Label can not be obtained from TOF in any reasonable manner

Implements Mantid::Kernel::Unit.

Reimplemented in Mantid::Kernel::Units::Degrees, Mantid::Kernel::Units::Temperature, and Mantid::Kernel::Units::AtomicDistance.

Definition at line 243 of file Unit.cpp.

◆ conversionTOFMin()

double Mantid::Kernel::Units::Empty::conversionTOFMin ( ) const
overridevirtual
Returns
NaN as Label can not be obtained from TOF in any reasonable manner

Implements Mantid::Kernel::Unit.

Reimplemented in Mantid::Kernel::Units::Degrees, Mantid::Kernel::Units::Temperature, and Mantid::Kernel::Units::AtomicDistance.

Definition at line 238 of file Unit.cpp.

◆ init()

void Mantid::Kernel::Units::Empty::init ( )
overridevirtual

Finalize the initialization.

This will be overridden by subclasses as needed.

Implements Mantid::Kernel::Unit.

Reimplemented in Mantid::Kernel::Units::Degrees, Mantid::Kernel::Units::Temperature, and Mantid::Kernel::Units::AtomicDistance.

Definition at line 221 of file Unit.cpp.

◆ isConvertible()

bool Mantid::Kernel::Units::Empty::isConvertible ( ) const
inlineoverridevirtual

Returns if the unit can be used in conversions.

Returns
true if the unit can be used in unit conversions

Reimplemented from Mantid::Kernel::Unit.

Definition at line 248 of file Unit.h.

◆ label()

const UnitLabel Mantid::Kernel::Units::Empty::label ( ) const
overridevirtual

A label for the unit to be printed on axes,.

See also
UnitLabel
Returns
The unit label

Implements Mantid::Kernel::Unit.

Reimplemented in Mantid::Kernel::Units::Label, Mantid::Kernel::Units::Degrees, Mantid::Kernel::Units::Temperature, and Mantid::Kernel::Units::AtomicDistance.

Definition at line 219 of file Unit.cpp.

References Mantid::Kernel::Units::Symbol::EmptyLabel.

◆ singleFromTOF()

double Mantid::Kernel::Units::Empty::singleFromTOF ( const double  tof) const
overridevirtual

Convert a single tof value to this unit.

Parameters
tofvalue to convert
Returns
the value in this unit as converted.

Implements Mantid::Kernel::Unit.

Reimplemented in Mantid::Kernel::Units::Degrees, Mantid::Kernel::Units::Temperature, and Mantid::Kernel::Units::AtomicDistance.

Definition at line 228 of file Unit.cpp.

References unitID(), and UNUSED_ARG.

◆ singleToTOF()

double Mantid::Kernel::Units::Empty::singleToTOF ( const double  x) const
overridevirtual

Convert a single X value to TOF.

Parameters
xvalue to convert
Returns
the TOF as converted.

Implements Mantid::Kernel::Unit.

Reimplemented in Mantid::Kernel::Units::Degrees, Mantid::Kernel::Units::Temperature, and Mantid::Kernel::Units::AtomicDistance.

Definition at line 223 of file Unit.cpp.

References unitID(), UNUSED_ARG, and Mantid::Geometry::x.

◆ unitID()

const std::string Mantid::Kernel::Units::Empty::unitID ( ) const
overridevirtual

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