|
Mantid
|
Set of helper methods for testing MDEventWorkspace things. More...
Functions | |
| void | checkAndDeleteFile (const std::string &filename) |
| Delete a file from disk. More... | |
| Mantid::DataObjects::EventWorkspace_sptr | createDiffractionEventWorkspace (int numEvents, int numPixels=400, int numBins=160) |
| Create an EventWorkspace containing fake data of single-crystal diffraction. More... | |
| template<typename MDBOX > | |
| static void | extents_match (MDBOX box, size_t dim, double min, double max) |
| Helper function compares the extents of the given box. More... | |
| template<size_t nd> | |
| static void | feedMDBox (MDBoxBase< MDLeanEvent< nd >, nd > *box, size_t repeat=1, size_t numPerSide=10, coord_t start=0.5, coord_t step=1.0) |
| Feed a MDGridBox with evenly-spaced events. More... | |
| template<typename MDE , size_t nd> | |
| std::shared_ptr< Mantid::DataObjects::MDEventWorkspace< MDE, nd > > | makeAnyMDEW (size_t splitInto, coord_t min, coord_t max, size_t numEventsPerBox=0, const std::string &wsName="", const std::string &axisNameFormat="Axis%d", const std::string &axisIdFormat="Axis%d") |
| Create a test MDEventWorkspace<nd> . More... | |
| template<typename MDE , size_t nd> | |
| std::shared_ptr< Mantid::DataObjects::MDEventWorkspace< MDE, nd > > | makeAnyMDEWWithFrames (size_t splitInto, coord_t min, coord_t max, const Mantid::Geometry::MDFrame &frame, size_t numEventsPerBox=0, const std::string &wsName="", const std::string &axisNameFormat="Axis%d", const std::string &axisIdFormat="Axis%d") |
| Create a test MDEventWorkspace<nd> . More... | |
| template<typename MDE , size_t nd> | |
| std::shared_ptr< Mantid::DataObjects::MDEventWorkspace< MDE, nd > > | makeAnyMDEWWithIndividualFrames (size_t splitInto, coord_t min, coord_t max, std::vector< Mantid::Geometry::MDFrame_sptr > frames, size_t numEventsPerBox=0, const std::string &wsName="", std::string axisNameFormat="Axis%d", std::string axisIdFormat="Axis%d") |
| Create a test MDEventWorkspace<nd> . More... | |
| MDEventWorkspace3Lean::sptr | makeFakeMDEventWorkspace (const std::string &wsName, long numEvents=10000, Kernel::SpecialCoordinateSystem coord=Kernel::None) |
| Make a (optionally) file backed MDEventWorkspace with 10000 fake random data points. More... | |
| MDHistoWorkspace_sptr | makeFakeMDHistoWorkspace (double signal, size_t numDims, size_t numBins=10, coord_t max=10.0, double errorSquared=1.0, const std::string &name="", double numEvents=1.0) |
| Make a fake n-dimensional MDHistoWorkspace. More... | |
| Mantid::DataObjects::MDHistoWorkspace_sptr | makeFakeMDHistoWorkspaceGeneral (size_t numDims, double signal, double errorSquared, size_t *numBins, coord_t *min, coord_t *max, const std::string &name="") |
| More general fake n-dimensionsal MDHistoWorkspace. More... | |
| Mantid::DataObjects::MDHistoWorkspace_sptr | makeFakeMDHistoWorkspaceGeneral (size_t numDims, double signal, double errorSquared, size_t *numBins, coord_t *min, coord_t *max, std::vector< std::string > names, const std::string &name="") |
| More general fake n-dimensionsal MDHistoWorkspace. More... | |
| Mantid::DataObjects::MDHistoWorkspace_sptr | makeFakeMDHistoWorkspaceWithMDFrame (double signal, size_t numDims, const Mantid::Geometry::MDFrame &frame, size_t numBins, coord_t max, double errorSquared, const std::string &name, double numEvents) |
| Creates a fake MDHistoWorkspace with MDFrame selection. More... | |
| MDBox< MDLeanEvent< 1 >, 1 > * | makeMDBox1 (size_t splitInto=10, API::BoxController *splitter=nullptr) |
| Generate an empty MDBox. More... | |
| MDBox< MDLeanEvent< 3 >, 3 > * | makeMDBox3 () |
| Generate an empty MDBox with 3 dimensions, split 10x5x2. More... | |
| std::vector< MDLeanEvent< 1 > > | makeMDEvents1 (size_t num) |
| Return a vector with this many MDEvents, spaced evenly from 0.5, 1.5, etc. More... | |
| template<size_t nd> | |
| std::shared_ptr< MDEventWorkspace< MDLeanEvent< nd >, nd > > | makeMDEW (size_t splitInto, coord_t min, coord_t max, size_t numEventsPerBox=0) |
| Make a MDEventWorkspace with MDLeanEvents. More... | |
| template<size_t nd> | |
| std::shared_ptr< MDEventWorkspace< MDEvent< nd >, nd > > | makeMDEWFull (size_t splitInto, coord_t min, coord_t max, size_t numEventsPerBox=0) |
| Make a MDEventWorkspace with MDEvents - updated to split dims by splitInto, not 10. More... | |
| template<size_t nd> | |
| std::shared_ptr< MDEventWorkspace< MDLeanEvent< nd >, nd > > | makeMDEWWithFrames (size_t splitInto, coord_t min, coord_t max, const Mantid::Geometry::MDFrame &frame, size_t numEventsPerBox=0) |
| Make a MDEventWorkspace with MDLeanEvents nad MDFrames. More... | |
| template<size_t nd> | |
| std::shared_ptr< MDEventWorkspace< MDLeanEvent< nd >, nd > > | makeMDEWWithIndividualFrames (size_t splitInto, coord_t min, coord_t max, const std::vector< Mantid::Geometry::MDFrame_sptr > &frame, size_t numEventsPerBox=0) |
| Make a MDEventWorkspace with MDLeanEvents and individual MDFrames. More... | |
| template<size_t nd> | |
| static MDGridBox< MDLeanEvent< nd >, nd > * | makeMDGridBox (size_t split0=10, size_t split1=10, coord_t dimensionMin=0.0, coord_t dimensionMax=10.0) |
| Generate an empty MDBox with 2 dimensions, splitting in (default) 10x10 boxes. More... | |
| template<size_t nd> | |
| static MDGridBox< MDLeanEvent< nd >, nd > * | makeRecursiveMDGridBox (size_t splitInto, size_t levels) |
| Generate a recursively gridded MDGridBox. More... | |
| template<size_t nd> | |
| static void | recurseSplit (MDGridBox< MDLeanEvent< nd >, nd > *box, size_t atRecurseLevel, size_t recurseLimit) |
| Recursively split an existing MDGridBox. More... | |
| void Mantid::DataObjects::MDEventsTestHelper::checkAndDeleteFile | ( | const std::string & | filename | ) |
Delete a file from disk.
| filename | : File name to check and delete |
Definition at line 342 of file MDEventsTestHelper.cpp.
References Mantid::DataHandling::exists().
| EventWorkspace_sptr Mantid::DataObjects::MDEventsTestHelper::createDiffractionEventWorkspace | ( | int | numEvents, |
| int | numPixels = 400, |
||
| int | numBins = 160 |
||
| ) |
Create an EventWorkspace containing fake data of single-crystal diffraction.
Instrument is MINITOPAZ
Definition at line 68 of file MDEventsTestHelper.cpp.
References Mantid::Kernel::SingletonHolder< T >::Instance(), Mantid::Kernel::Strings::loadFile(), Mantid::DataHandling::numEvents(), Mantid::Geometry::InstrumentDefinitionParser::parseXML(), WorkspaceCreationHelper::setGoniometer(), and WorkspaceCreationHelper::setOrientedLattice().
|
static |
Helper function compares the extents of the given box.
Definition at line 458 of file MDEventsTestHelper.h.
|
static |
Feed a MDGridBox with evenly-spaced events.
| box | :: MDGridBox pointer |
| repeat | :: how many events to stick in the same place |
| numPerSide | :: e.g. if 10, and 3 dimensions, there will be 10x10x10 events |
| start | :: x-coordinate starts at this for event 0 |
| step | :: x-coordinate increases by this much. |
Definition at line 374 of file MDEventsTestHelper.h.
References Mantid::Geometry::d, Mantid::Kernel::Utils::NestedForLoop::Increment(), and Mantid::Kernel::Utils::NestedForLoop::SetUp().
| std::shared_ptr< Mantid::DataObjects::MDEventWorkspace< MDE, nd > > Mantid::DataObjects::MDEventsTestHelper::makeAnyMDEW | ( | size_t | splitInto, |
| coord_t | min, | ||
| coord_t | max, | ||
| size_t | numEventsPerBox = 0, |
||
| const std::string & | wsName = "", |
||
| const std::string & | axisNameFormat = "Axis%d", |
||
| const std::string & | axisIdFormat = "Axis%d" |
||
| ) |
Create a test MDEventWorkspace<nd> .
Dimensions are names Axis0, Axis1, etc.
| splitInto | :: each dimension will split into this many subgrids |
| min | :: extent of each dimension (min) |
| max | :: extent of each dimension (max) |
| numEventsPerBox | :: will create one MDLeanEvent in the center of each sub-box. 0 = don't split box, don't add events |
| wsName | :: if specified, then add the workspace to the analysis data service |
| axisNameFormat | :: string for the axis name, processed via sprintf() |
| axisIdFormat | :: string for the axis ID, processed via sprintf() |
Definition at line 189 of file MDEventsTestHelper.h.
References Mantid::Kernel::SingletonHolder< T >::Instance().
| std::shared_ptr< Mantid::DataObjects::MDEventWorkspace< MDE, nd > > Mantid::DataObjects::MDEventsTestHelper::makeAnyMDEWWithFrames | ( | size_t | splitInto, |
| coord_t | min, | ||
| coord_t | max, | ||
| const Mantid::Geometry::MDFrame & | frame, | ||
| size_t | numEventsPerBox = 0, |
||
| const std::string & | wsName = "", |
||
| const std::string & | axisNameFormat = "Axis%d", |
||
| const std::string & | axisIdFormat = "Axis%d" |
||
| ) |
Create a test MDEventWorkspace<nd> .
Dimensions are names Axis0, Axis1, etc. But you can set an MDFrame. For now the same frame for all dimensions is used.
| splitInto | :: each dimension will split into this many subgrids |
| min | :: extent of each dimension (min) |
| max | :: extent of each dimension (max) |
| frame,: | the chosen frame |
| numEventsPerBox | :: will create one MDLeanEvent in the center of each sub-box. 0 = don't split box, don't add events |
| wsName | :: if specified, then add the workspace to the analysis data service |
| axisNameFormat | :: string for the axis name, processed via sprintf() |
| axisIdFormat | :: string for the axis ID, processed via sprintf() |
Definition at line 264 of file MDEventsTestHelper.h.
References Mantid::Kernel::SingletonHolder< T >::Instance().
| std::shared_ptr< Mantid::DataObjects::MDEventWorkspace< MDE, nd > > Mantid::DataObjects::MDEventsTestHelper::makeAnyMDEWWithIndividualFrames | ( | size_t | splitInto, |
| coord_t | min, | ||
| coord_t | max, | ||
| std::vector< Mantid::Geometry::MDFrame_sptr > | frames, | ||
| size_t | numEventsPerBox = 0, |
||
| const std::string & | wsName = "", |
||
| std::string | axisNameFormat = "Axis%d", |
||
| std::string | axisIdFormat = "Axis%d" |
||
| ) |
Create a test MDEventWorkspace<nd> .
Dimensions are names Axis0, Axis1, etc. But you can set an MDFrame. The frames can be set individually.
| splitInto | :: each dimension will split into this many subgrids |
| min | :: extent of each dimension (min) |
| max | :: extent of each dimension (max) |
| frames,: | the chosen frame |
| numEventsPerBox | :: will create one MDLeanEvent in the center of each sub-box. 0 = don't split box, don't add events |
| wsName | :: if specified, then add the workspace to the analysis data service |
| axisNameFormat | :: string for the axis name, processed via sprintf() |
| axisIdFormat | :: string for the axis ID, processed via sprintf() |
Definition at line 225 of file MDEventsTestHelper.h.
References Mantid::Kernel::SingletonHolder< T >::Instance().
| MDEventWorkspace3Lean::sptr Mantid::DataObjects::MDEventsTestHelper::makeFakeMDEventWorkspace | ( | const std::string & | wsName, |
| long | numEvents = 10000, |
||
| Kernel::SpecialCoordinateSystem | coord = Kernel::None |
||
| ) |
Make a (optionally) file backed MDEventWorkspace with 10000 fake random data points.
Make an MDEventWorkspace with nEvents fake data points the points are randomly distributed within the box (nEvents>0) or homoheneously and regularly spread through the box (nEvents<0)
| wsName | :: name of the workspace in ADS |
| wsName | :: name of the workspace in ADS |
| numEvents | :: number of events in the target workspace distributed randomly if numEvents>0 or regularly & homogeneously if numEvents<0 |
| coord | :: Required coordinate system |
Definition at line 137 of file MDEventsTestHelper.cpp.
References Mantid::DataObjects::FakeMD::fill(), Mantid::Kernel::SingletonHolder< T >::Instance(), and Mantid::DataHandling::numEvents().
| Mantid::DataObjects::MDHistoWorkspace_sptr Mantid::DataObjects::MDEventsTestHelper::makeFakeMDHistoWorkspace | ( | double | signal, |
| size_t | numDims, | ||
| size_t | numBins, | ||
| coord_t | max, | ||
| double | errorSquared, | ||
| const std::string & | name, | ||
| double | numEvents | ||
| ) |
Make a fake n-dimensional MDHistoWorkspace.
Creates a fake MDHistoWorkspace.
| signal | :: signal in every point |
| numDims | :: number of dimensions to create. They will range from 0 to max |
| numBins | :: bins in each dimensions |
| max | :: max position in each dimension |
| errorSquared | :: error squared in every point |
| name | :: optional name |
| numEvents | :: optional number of events in each bin. Default 1.0 |
Definition at line 217 of file MDEventsTestHelper.cpp.
References Mantid::Geometry::GeneralFrame::GeneralFrameDistance, makeFakeMDHistoWorkspaceWithMDFrame(), and Mantid::DataHandling::numEvents().
Referenced by UnaryOperationMDTestHelper::doTest(), and BinaryOperationMDTestHelper::setUpBinaryOperationMDTestHelper().
| MDHistoWorkspace_sptr Mantid::DataObjects::MDEventsTestHelper::makeFakeMDHistoWorkspaceGeneral | ( | size_t | numDims, |
| double | signal, | ||
| double | errorSquared, | ||
| size_t * | numBins, | ||
| coord_t * | min, | ||
| coord_t * | max, | ||
| const std::string & | name | ||
| ) |
More general fake n-dimensionsal MDHistoWorkspace.
Creates a fake MDHistoWorkspace with more options.
| numDims | :: number of dimensions to create. They will range from 0 to max |
| signal | :: signal in every point |
| errorSquared | :: error squared in every point |
| numBins | :: array of # of bins in each dimensions |
| min | :: array of min position in each dimension |
| max | :: array of max position in each dimension |
| name | :: optional name |
Definition at line 238 of file MDEventsTestHelper.cpp.
References Mantid::Geometry::d, Mantid::Geometry::GeneralFrame::GeneralFrameDistance, and Mantid::Kernel::SingletonHolder< T >::Instance().
| MDHistoWorkspace_sptr Mantid::DataObjects::MDEventsTestHelper::makeFakeMDHistoWorkspaceGeneral | ( | size_t | numDims, |
| double | signal, | ||
| double | errorSquared, | ||
| size_t * | numBins, | ||
| coord_t * | min, | ||
| coord_t * | max, | ||
| std::vector< std::string > | names, | ||
| const std::string & | name | ||
| ) |
More general fake n-dimensionsal MDHistoWorkspace.
Creates a fake MDHistoWorkspace with more options.
| numDims | :: number of dimensions to create. They will range from 0 to max |
| signal | :: signal in every point |
| errorSquared | :: error squared in every point |
| numBins | :: array of # of bins in each dimensions |
| min | :: array of min position in each dimension |
| max | :: array of max position in each dimension |
| names | :: array of names for each dimension |
| name | :: optional name |
Definition at line 271 of file MDEventsTestHelper.cpp.
References Mantid::Geometry::d, Mantid::Geometry::GeneralFrame::GeneralFrameDistance, and Mantid::Kernel::SingletonHolder< T >::Instance().
| Mantid::DataObjects::MDHistoWorkspace_sptr Mantid::DataObjects::MDEventsTestHelper::makeFakeMDHistoWorkspaceWithMDFrame | ( | double | signal, |
| size_t | numDims, | ||
| const Mantid::Geometry::MDFrame & | frame, | ||
| size_t | numBins, | ||
| coord_t | max, | ||
| double | errorSquared, | ||
| const std::string & | name, | ||
| double | numEvents | ||
| ) |
Creates a fake MDHistoWorkspace with MDFrame selection.
| signal | :: signal in every point |
| numDims | :: number of dimensions to create. They will range from 0 to max |
| frame | :: the selected frame |
| numBins | :: bins in each dimensions |
| max | :: max position in each dimension |
| errorSquared | :: error squared in every point |
| name | :: optional name |
| numEvents | :: optional number of events in each bin. Default 1.0 |
Definition at line 303 of file MDEventsTestHelper.cpp.
References Mantid::Kernel::SingletonHolder< T >::Instance(), and Mantid::DataHandling::numEvents().
Referenced by makeFakeMDHistoWorkspace().
| MDBox< MDLeanEvent< 1 >, 1 > * Mantid::DataObjects::MDEventsTestHelper::makeMDBox1 | ( | size_t | splitInto = 10, |
| API::BoxController * | splitter = nullptr |
||
| ) |
Generate an empty MDBox.
Generate an empty MDBox , !!! Box controller has to be deleted saparately to avoid memory leaks in tests !!!!
Definition at line 155 of file MDEventsTestHelper.cpp.
References Mantid::DataObjects::MDBoxBase::setExtents(), Mantid::API::BoxController::setSplitInto(), and Mantid::API::BoxController::setSplitThreshold().
| MDBox< MDLeanEvent< 3 >, 3 > * Mantid::DataObjects::MDEventsTestHelper::makeMDBox3 | ( | ) |
Generate an empty MDBox with 3 dimensions, split 10x5x2.
Generate an empty MDBox with 3 dimensions, split 10x5x2 !!! Box controller has to be deleted saparately to avoid memory leaks in tests !!!!
Definition at line 174 of file MDEventsTestHelper.cpp.
References Mantid::Geometry::d, and Mantid::DataObjects::MDBoxBase::setExtents().
| std::vector< MDLeanEvent< 1 > > Mantid::DataObjects::MDEventsTestHelper::makeMDEvents1 | ( | size_t | num | ) |
Return a vector with this many MDEvents, spaced evenly from 0.5, 1.5, etc.
Definition at line 194 of file MDEventsTestHelper.cpp.
| std::shared_ptr< MDEventWorkspace< MDLeanEvent< nd >, nd > > Mantid::DataObjects::MDEventsTestHelper::makeMDEW | ( | size_t | splitInto, |
| coord_t | min, | ||
| coord_t | max, | ||
| size_t | numEventsPerBox = 0 |
||
| ) |
Make a MDEventWorkspace with MDLeanEvents.
Definition at line 285 of file MDEventsTestHelper.h.
| std::shared_ptr< MDEventWorkspace< MDEvent< nd >, nd > > Mantid::DataObjects::MDEventsTestHelper::makeMDEWFull | ( | size_t | splitInto, |
| coord_t | min, | ||
| coord_t | max, | ||
| size_t | numEventsPerBox = 0 |
||
| ) |
Make a MDEventWorkspace with MDEvents - updated to split dims by splitInto, not 10.
Definition at line 309 of file MDEventsTestHelper.h.
| std::shared_ptr< MDEventWorkspace< MDLeanEvent< nd >, nd > > Mantid::DataObjects::MDEventsTestHelper::makeMDEWWithFrames | ( | size_t | splitInto, |
| coord_t | min, | ||
| coord_t | max, | ||
| const Mantid::Geometry::MDFrame & | frame, | ||
| size_t | numEventsPerBox = 0 |
||
| ) |
Make a MDEventWorkspace with MDLeanEvents nad MDFrames.
Definition at line 292 of file MDEventsTestHelper.h.
| std::shared_ptr< MDEventWorkspace< MDLeanEvent< nd >, nd > > Mantid::DataObjects::MDEventsTestHelper::makeMDEWWithIndividualFrames | ( | size_t | splitInto, |
| coord_t | min, | ||
| coord_t | max, | ||
| const std::vector< Mantid::Geometry::MDFrame_sptr > & | frame, | ||
| size_t | numEventsPerBox = 0 |
||
| ) |
Make a MDEventWorkspace with MDLeanEvents and individual MDFrames.
Definition at line 301 of file MDEventsTestHelper.h.
|
static |
Generate an empty MDBox with 2 dimensions, splitting in (default) 10x10 boxes.
Box size is 10x10.
| split0 | :: for uneven splitting |
| split1 | :: for uneven splitting |
| dimensionMin | :: minimum dimesion extent |
| dimensionMax | :: maximum dimesion extent |
Definition at line 340 of file MDEventsTestHelper.h.
References Mantid::Geometry::d.
|
static |
Generate a recursively gridded MDGridBox.
| splitInto | :: boxes split into this many boxes/side |
| levels | :: levels of splitting recursion (0=just the top level is split) |
Definition at line 436 of file MDEventsTestHelper.h.
References Mantid::Geometry::d, and recurseSplit().
|
static |
Recursively split an existing MDGridBox.
| box | :: box to split |
| atRecurseLevel | :: This is the recursion level at which we are |
| recurseLimit | :: this is where to spot |
Definition at line 406 of file MDEventsTestHelper.h.
References recurseSplit().
Referenced by makeRecursiveMDGridBox(), and recurseSplit().