BornAgain
1.19.79
Open-source research software to simulate and fit neutron and x-ray reflectometry and grazing-incidence small-angle scattering
|
ICoordSystem class that handles the unit translations for rectangular detectors Its default units are mm for both axes.
Definition at line 90 of file CoordSystem2D.h.
Public Member Functions | |
ImageCoords (const OwningVector< IAxis > &axes, RectangularPixel *regionOfInterestPixel, const Direction &direction, double wavelength) | |
~ImageCoords () override | |
std::vector< Coords > | availableUnits () const override |
Returns list of units that are available for all 2D detectors. Further units may be added by child classes. More... | |
std::string | axisName (size_t i_axis, Coords units=Coords::UNDEFINED) const |
size_t | axisSize (size_t i_axis) const override |
double | calculateMax (size_t i_axis, Coords units) const override |
double | calculateMin (size_t i_axis, Coords units) const override |
ImageCoords * | clone () const override |
std::vector< IAxis * > | convertedAxes (Coords units) const |
IAxis * | createConvertedAxis (size_t i_axis, Coords units) const override |
virtual Datafield * | createConvertedData (const Datafield &data, Coords units) const |
Creates Datafield array in converter units. More... | |
std::vector< IAxis * > | defaultAxes () const |
Coords | defaultUnits () const override |
size_t | rank () const override |
virtual void | transferToCPP () |
Used for Python overriding of clone (see swig/tweaks.py) More... | |
Protected Member Functions | |
void | addAxisData (std::string name, double min, double max, size_t nbins) |
Coords | substituteDefaultUnits (Coords units) const |
void | throwUnitsError (std::string method, std::vector< Coords > available) const |
Protected Attributes | |
double | m_alpha_i |
OwningVector< IAxis > | m_axes |
double | m_phi_i |
double | m_wavelength |
Private Member Functions | |
ImageCoords (const ImageCoords &other) | |
used by clone() More... | |
double | calculateValue (size_t i_axis, Coords units, double value) const override |
std::vector< std::map< Coords, std::string > > | createNameMaps () const override |
Private Attributes | |
std::unique_ptr< RectangularPixel > | m_detector_pixel |
ImageCoords::ImageCoords | ( | const OwningVector< IAxis > & | axes, |
RectangularPixel * | regionOfInterestPixel, | ||
const Direction & | direction, | ||
double | wavelength | ||
) |
Definition at line 188 of file CoordSystem2D.cpp.
References ASSERT, and OwningVector< T >::size().
Referenced by clone().
|
overridedefault |
|
private |
used by clone()
Definition at line 196 of file CoordSystem2D.cpp.
|
protectedinherited |
Definition at line 70 of file CoordSystem2D.cpp.
References OwningVector< T >::emplace_back(), and CoordSystem2D::m_axes.
|
overridevirtual |
Returns list of units that are available for all 2D detectors. Further units may be added by child classes.
Reimplemented from CoordSystem2D.
Definition at line 209 of file CoordSystem2D.cpp.
References CoordSystem2D::availableUnits(), MM, and QSPACE.
|
inherited |
Definition at line 36 of file ICoordSystem.cpp.
References ASSERT, ICoordSystem::createNameMaps(), ICoordSystem::defaultUnits(), and UNDEFINED.
Referenced by CoordSystem1D::createConvertedAxis(), and CoordSystem2D::createConvertedAxis().
|
overridevirtualinherited |
Implements ICoordSystem.
Definition at line 93 of file CoordSystem2D.cpp.
References ASSERT, CoordSystem2D::m_axes, CoordSystem2D::rank(), and OwningVector< T >::size().
Referenced by CoordSystem2D::createConvertedAxis().
|
overridevirtualinherited |
Implements ICoordSystem.
Definition at line 84 of file CoordSystem2D.cpp.
References ASSERT, CoordSystem2D::calculateValue(), CoordSystem2D::m_axes, NBINS, CoordSystem2D::rank(), OwningVector< T >::size(), and ICoordSystem::substituteDefaultUnits().
Referenced by CoordSystem2D::createConvertedAxis().
|
overridevirtualinherited |
Implements ICoordSystem.
Definition at line 75 of file CoordSystem2D.cpp.
References ASSERT, CoordSystem2D::calculateValue(), CoordSystem2D::m_axes, NBINS, CoordSystem2D::rank(), and ICoordSystem::substituteDefaultUnits().
Referenced by CoordSystem2D::createConvertedAxis().
|
overrideprivatevirtual |
Implements CoordSystem2D.
Definition at line 217 of file CoordSystem2D.cpp.
References ASSERT, DEGREES, CoordSystem2D::m_alpha_i, CoordSystem2D::m_axes, m_detector_pixel, CoordSystem2D::m_phi_i, M_TWOPI, CoordSystem2D::m_wavelength, MM, QSPACE, QXQY, Units::rad2deg(), RADIANS, and vecOfLambdaAlphaPhi().
|
overridevirtual |
Implements ICoordSystem.
Definition at line 204 of file CoordSystem2D.cpp.
References ImageCoords().
Definition at line 28 of file ICoordSystem.cpp.
References ICoordSystem::createConvertedAxis(), and ICoordSystem::rank().
Referenced by ICoordSystem::defaultAxes().
|
overridevirtualinherited |
Implements ICoordSystem.
Definition at line 104 of file CoordSystem2D.cpp.
References ICoordSystem::axisName(), CoordSystem2D::axisSize(), CoordSystem2D::calculateMax(), and CoordSystem2D::calculateMin().
|
virtualinherited |
Creates Datafield array in converter units.
Reimplemented in CoordSystem1D.
Definition at line 46 of file ICoordSystem.cpp.
References ICoordSystem::createConvertedAxis(), Datafield::flatVector(), ICoordSystem::rank(), and Datafield::setVector().
|
overrideprivatevirtual |
Implements ICoordSystem.
Definition at line 255 of file CoordSystem2D.cpp.
References DataUtils::AxisNames::rectangularAxis0, and DataUtils::AxisNames::rectangularAxis1.
|
inherited |
Definition at line 23 of file ICoordSystem.cpp.
References ICoordSystem::convertedAxes(), and ICoordSystem::defaultUnits().
Referenced by SimDataPair::execSimulation().
|
inlineoverridevirtual |
|
inlineoverridevirtualinherited |
Implements ICoordSystem.
Definition at line 39 of file CoordSystem2D.h.
References CoordSystem2D::m_axes, and OwningVector< T >::size().
Referenced by CoordSystem2D::axisSize(), CoordSystem2D::calculateMax(), and CoordSystem2D::calculateMin().
Definition at line 69 of file ICoordSystem.cpp.
References ICoordSystem::defaultUnits(), and UNDEFINED.
Referenced by CoordSystem1D::calculateMax(), CoordSystem2D::calculateMax(), CoordSystem1D::calculateMin(), CoordSystem2D::calculateMin(), and CoordSystem1D::createConvertedAxis().
|
protectedinherited |
|
inlinevirtualinherited |
Used for Python overriding of clone (see swig/tweaks.py)
Definition at line 32 of file ICloneable.h.
|
protectedinherited |
Definition at line 58 of file CoordSystem2D.h.
Referenced by SphericalCoords::calculateValue(), and calculateValue().
|
protectedinherited |
Definition at line 56 of file CoordSystem2D.h.
Referenced by CoordSystem2D::addAxisData(), CoordSystem2D::axisSize(), CoordSystem2D::calculateMax(), CoordSystem2D::calculateMin(), calculateValue(), and CoordSystem2D::rank().
|
private |
Definition at line 107 of file CoordSystem2D.h.
Referenced by calculateValue().
|
protectedinherited |
Definition at line 59 of file CoordSystem2D.h.
Referenced by SphericalCoords::calculateValue(), and calculateValue().
|
protectedinherited |
Definition at line 57 of file CoordSystem2D.h.
Referenced by SphericalCoords::calculateValue(), calculateValue(), and DepthProbeCoordinates::calculateValue().