|
Mantid
|
The class specializes ConvToDataObjectsBase for the case when the conversion occurs from Events WS to the MD events WS. More...
#include <ConvToMDEventsWS.h>
Public Member Functions | |
| size_t | initialize (const MDWSDescription &WSD, std::shared_ptr< MDEventWSWrapper > inWSWrapper, bool ignoreZeros, bool useLogTimes) override |
| method sets up all internal variables necessary to convert from Event Workspace to MDEvent workspace | |
| void | runConversion (API::Progress *pProgress) override |
| method which starts the conversion procedure | |
Public Member Functions inherited from Mantid::MDAlgorithms::ConvToMDBase | |
| ConvToMDBase () | |
| empty default constructor | |
| UnitsConversionHelper & | getUnitConversionHelper () |
| method returns unit conversion helper, used to convert input workspace units to the units, used by appropriate MD transformation (if such conversion is necessary) | |
| virtual void | setDisplayNormalization (Mantid::API::IMDEventWorkspace_sptr mdWorkspace, const Mantid::API::MatrixWorkspace_sptr &underlyingWorkspace) |
| Set the normalization options. | |
| virtual | ~ConvToMDBase ()=default |
| virtual destructor | |
Protected Attributes | |
| DataObjects::EventWorkspace_const_sptr | m_EventWS |
Protected Attributes inherited from Mantid::MDAlgorithms::ConvToMDBase | |
| std::vector< coord_t > | m_Coord |
| Mantid::Kernel::SpecialCoordinateSystem | m_coordinateSystem |
| Any special coordinate system used. | |
| std::vector< int32_t > | m_detID |
| std::vector< size_t > | m_detIDMap |
| uint16_t | m_ExpInfoIndex |
| bool | m_ignoreZeros |
| API::MatrixWorkspace_const_sptr | m_InWS2D |
| size_t | m_NDims |
| number of target ws dimensions | |
| uint32_t | m_NSpectra |
| int | m_NumThreads |
| std::shared_ptr< MDEventWSWrapper > | m_OutWSWrapper |
| MDTransf_sptr | m_QConverter |
| UnitsConversionHelper | m_UnitConversion |
| bool | m_useLogTimes |
| Flag to use log values corresponding to event pulse time instead of average values. | |
Private Member Functions | |
| virtual void | appendEventsFromInputWS (API::Progress *pProgress, const API::BoxController_sptr &bc) |
| size_t | conversionChunk (size_t workspaceIndex) override |
| The method runs conversion for a single event list, corresponding to a particular workspace index. | |
| template<class T > | |
| size_t | convertEventList (size_t workspaceIndex) |
| function converts particular type of events into MD space and add these events to the workspace itself | |
| template<class T > | |
| bool | setGoniometersFromLogs (const T &ev) |
Private Attributes | |
| std::vector< size_t > | m_GonioIndex |
| Geometry::Goniometer | m_Goniometer |
| std::vector< std::unique_ptr< Kernel::TimeSeriesProperty< double > > > | m_Logs |
| Kernel::DblMatrix | m_tmpRot |
| Kernel::DblMatrix | m_Wtransf |
Additional Inherited Members | |
Static Protected Attributes inherited from Mantid::MDAlgorithms::ConvToMDBase | |
| static Mantid::Kernel::Logger | g_Log |
The class specializes ConvToDataObjectsBase for the case when the conversion occurs from Events WS to the MD events WS.
The detailed description of the algorithm is provided at dev-docs/source/WritingCustomConvertToMDTransformation.rst.
Definition at line 36 of file ConvToMDEventsWS.h.
|
privatevirtual |
Reimplemented in Mantid::MDAlgorithms::ConvToMDEventsWSIndexing, Mantid::MDAlgorithms::ConvToMDEventsWSIndexing, and Mantid::MDAlgorithms::ConvToMDEventsWSIndexing.
Definition at line 155 of file ConvToMDEventsWS.cpp.
References conversionChunk(), Mantid::MDAlgorithms::ConvToMDBase::m_NSpectra, Mantid::MDAlgorithms::ConvToMDBase::m_NumThreads, Mantid::MDAlgorithms::ConvToMDBase::m_OutWSWrapper, Mantid::Kernel::ProgressBase::report(), Mantid::Kernel::ProgressBase::resetNumSteps(), Mantid::Kernel::ThreadSchedulerFIFO::size(), and tp.
Referenced by runConversion().
|
overrideprivatevirtual |
The method runs conversion for a single event list, corresponding to a particular workspace index.
Implements Mantid::MDAlgorithms::ConvToMDBase.
Definition at line 81 of file ConvToMDEventsWS.cpp.
References m_EventWS, Mantid::API::TOF, Mantid::API::WEIGHTED, and Mantid::API::WEIGHTED_NOTIME.
Referenced by appendEventsFromInputWS().
|
private |
function converts particular type of events into MD space and add these events to the workspace itself
function converts particular list of events of type T into MD workspace and adds these events to the workspace itself
Definition at line 15 of file ConvToMDEventsWS.cpp.
References Mantid::MDAlgorithms::UnitsConversionHelper::convertUnits(), Mantid::DataObjects::getEventsFrom(), Mantid::DataObjects::EventList::getNumberEvents(), Mantid::MDAlgorithms::ConvToMDBase::m_Coord, Mantid::MDAlgorithms::ConvToMDBase::m_detID, m_EventWS, Mantid::MDAlgorithms::ConvToMDBase::m_ExpInfoIndex, Mantid::MDAlgorithms::ConvToMDBase::m_NDims, Mantid::MDAlgorithms::ConvToMDBase::m_OutWSWrapper, Mantid::MDAlgorithms::ConvToMDBase::m_QConverter, Mantid::MDAlgorithms::ConvToMDBase::m_UnitConversion, Mantid::DataHandling::numEvents(), setGoniometersFromLogs(), and Mantid::MDAlgorithms::UnitsConversionHelper::updateConversion().
|
overridevirtual |
method sets up all internal variables necessary to convert from Event Workspace to MDEvent workspace
| WSD | – the class describing the target MD workspace, source Event workspace and the transformations, necessary to perform on these workspaces |
| inWSWrapper | – the class wrapping the target MD workspace |
| ignoreZeros | – if zero value signals should be rejected |
| useLogTimes | – if log values at event pulse time should be used for computing Goniometer matrix or additional dimensions |
Reimplemented from Mantid::MDAlgorithms::ConvToMDBase.
Reimplemented in Mantid::MDAlgorithms::ConvToMDEventsWSIndexing.
Definition at line 105 of file ConvToMDEventsWS.cpp.
References Mantid::Geometry::Goniometer::getAxis(), Mantid::MDAlgorithms::MDWSDescription::getCoordinateSystem(), Mantid::API::Run::getGoniometer(), Mantid::MDAlgorithms::MDWSDescription::getInWS(), Mantid::Geometry::Goniometer::getNumberAxes(), Mantid::API::LogManager::getTimeSeriesProperty(), Mantid::API::LogManager::hasProperty(), Mantid::MDAlgorithms::ConvToMDBase::initialize(), Mantid::MDAlgorithms::ConvToMDBase::m_coordinateSystem, m_EventWS, m_GonioIndex, m_Goniometer, Mantid::MDAlgorithms::ConvToMDBase::m_InWS2D, m_Logs, m_tmpRot, Mantid::MDAlgorithms::ConvToMDBase::m_useLogTimes, m_Wtransf, Mantid::MDAlgorithms::MDWSDescription::m_Wtransf, n, and Mantid::Geometry::GoniometerAxis::name.
Referenced by Mantid::MDAlgorithms::ConvToMDEventsWSIndexing::initialize().
|
overridevirtual |
method which starts the conversion procedure
Set the special coordinate system flag on the output workspace.
Implements Mantid::MDAlgorithms::ConvToMDBase.
Definition at line 137 of file ConvToMDEventsWS.cpp.
References appendEventsFromInputWS(), Mantid::MDAlgorithms::ConvToMDBase::m_Coord, Mantid::MDAlgorithms::ConvToMDBase::m_coordinateSystem, Mantid::MDAlgorithms::ConvToMDBase::m_NDims, Mantid::MDAlgorithms::ConvToMDBase::m_OutWSWrapper, Mantid::MDAlgorithms::ConvToMDBase::m_QConverter, and Mantid::Kernel::ProgressBase::report().
|
inlineprivate |
Definition at line 62 of file ConvToMDEventsWS.h.
References Mantid::Geometry::Goniometer::getR(), Mantid::Kernel::Matrix< T >::getVector(), Mantid::Kernel::Matrix< T >::Invert(), m_GonioIndex, m_Goniometer, m_Logs, Mantid::MDAlgorithms::ConvToMDBase::m_QConverter, m_tmpRot, Mantid::MDAlgorithms::ConvToMDBase::m_useLogTimes, m_Wtransf, and Mantid::Geometry::Goniometer::setRotationAngle().
Referenced by convertEventList().
|
protected |
Definition at line 43 of file ConvToMDEventsWS.h.
Referenced by Mantid::MDAlgorithms::ConvToMDEventsWSIndexing::appendEvents(), conversionChunk(), convertEventList(), Mantid::MDAlgorithms::ConvToMDEventsWSIndexing::convertEvents(), and initialize().
|
private |
Definition at line 60 of file ConvToMDEventsWS.h.
Referenced by initialize(), and setGoniometersFromLogs().
|
private |
Definition at line 58 of file ConvToMDEventsWS.h.
Referenced by initialize(), and setGoniometersFromLogs().
|
private |
Definition at line 59 of file ConvToMDEventsWS.h.
Referenced by initialize(), and setGoniometersFromLogs().
|
private |
Definition at line 57 of file ConvToMDEventsWS.h.
Referenced by initialize(), and setGoniometersFromLogs().
|
private |
Definition at line 56 of file ConvToMDEventsWS.h.
Referenced by initialize(), and setGoniometersFromLogs().