Mantid
|
QENSFitSequential - Performs a sequential QENS fit. More...
#include <QENSFitSequential.h>
Public Member Functions | |
const std::string | category () const override |
Algorithm's category for identification. More... | |
const std::string | name () const override |
Algorithms name for identification. More... | |
const std::vector< std::string > | seeAlso () const override |
Algorithm's see also for related algorithms. More... | |
const std::string | summary () const override |
Algorithm's summary for use in the GUI and help. More... | |
int | version () const override |
Algorithm's version for identification. More... | |
Public Member Functions inherited from Mantid::API::GenericDataProcessorAlgorithm< Base > | |
GenericDataProcessorAlgorithm () | |
Constructor. More... | |
Kernel::IPropertyManager::TypedValue | getProperty (const std::string &name) const override |
Get the property held by this object. More... | |
std::string | getPropertyValue (const std::string &name) const override |
Get the property held by this object. More... | |
Protected Member Functions | |
virtual std::map< std::string, std::string > | getAdditionalLogNumbers () const |
virtual std::map< std::string, std::string > | getAdditionalLogStrings () const |
virtual std::vector< std::string > | getFitParameterNames () const |
virtual std::vector< API::MatrixWorkspace_sptr > | getWorkspaces () const |
virtual API::ITableWorkspace_sptr | processParameterTable (API::ITableWorkspace_sptr parameterTable) |
std::map< std::string, std::string > | validateInputs () override |
Protected Member Functions inherited from Mantid::API::GenericDataProcessorAlgorithm< Base > | |
Workspace_sptr | assemble (const std::string &partialWSName, const std::string &outputWSName) |
Assemble the partial workspaces from all MPI processes. More... | |
Workspace_sptr | assemble (Workspace_sptr partialWS) |
Assemble the partial workspaces from all MPI processes. More... | |
void | copyProperty (const API::Algorithm_sptr &alg, const std::string &name) |
Copy a property from an existing algorithm. More... | |
std::shared_ptr< Algorithm > | createChildAlgorithm (const std::string &name, const double startProgress=-1., const double endProgress=-1., const bool enableLogging=true, const int &version=-1) override |
Create a Child Algorithm. More... | |
virtual ITableWorkspace_sptr | determineChunk (const std::string &filename) |
MatrixWorkspace_sptr | divide (const MatrixWorkspace_sptr lhs, const double &rhsValue) |
Divide a matrix workspace by a single value. More... | |
MatrixWorkspace_sptr | divide (const MatrixWorkspace_sptr lhs, const MatrixWorkspace_sptr rhs) |
Divide a matrix workspace by another matrix workspace. More... | |
void | forwardProperties () |
int | getNThreads () |
Return the number of MPI processes running. More... | |
std::shared_ptr< Kernel::PropertyManager > | getProcessProperties (const std::string &propertyManager=std::string()) const |
Get the property manager object of a given name from the property manager data service, or create a new one. More... | |
bool | isMainThread () |
Return true if we are running on the main thread. More... | |
Workspace_sptr | load (const std::string &inputData, const bool loadQuiet=false) |
Determine what kind of input data we have and load it. More... | |
virtual MatrixWorkspace_sptr | loadChunk (const size_t rowIndex) |
void | mapPropertyName (const std::string &nameInProp, const std::string &nameInPropManager) |
Declare mapping of property name to name in the PropertyManager. More... | |
MatrixWorkspace_sptr | minus (const MatrixWorkspace_sptr lhs, const double &rhsValue) |
Subract a single value from a matrix workspace. More... | |
MatrixWorkspace_sptr | minus (const MatrixWorkspace_sptr lhs, const MatrixWorkspace_sptr rhs) |
Subract a matrix workspace by another matrix workspace. More... | |
MatrixWorkspace_sptr | multiply (const MatrixWorkspace_sptr lhs, const double &rhsValue) |
Multiply a matrix workspace by a single value. More... | |
MatrixWorkspace_sptr | multiply (const MatrixWorkspace_sptr lhs, const MatrixWorkspace_sptr rhs) |
Multiply a matrix workspace by another matrix workspace. More... | |
MatrixWorkspace_sptr | plus (const MatrixWorkspace_sptr lhs, const double &rhsValue) |
Add a single value to a matrix workspace. More... | |
MatrixWorkspace_sptr | plus (const MatrixWorkspace_sptr lhs, const MatrixWorkspace_sptr rhs) |
Add a matrix workspace to another matrix workspace. More... | |
void | saveNexus (const std::string &outputWSName, const std::string &outputFile) |
Save a workspace as a nexus file, with check for which thread we are executing in. More... | |
void | setAccumAlg (const std::string &alg) |
void | setLoadAlg (const std::string &alg) |
void | setLoadAlgFileProp (const std::string &filePropName) |
void | setPropManagerPropName (const std::string &propName) |
std::vector< std::string > | splitInput (const std::string &input) |
Private Member Functions | |
void | addAdditionalLogs (const API::Workspace_sptr &result) |
void | addAdditionalLogs (const API::WorkspaceGroup_sptr &resultWorkspace) |
void | addFitRangeLogs (const API::Workspace_sptr &resultWorkspace, size_t itter) |
std::vector< API::MatrixWorkspace_sptr > | convertInputToElasticQ (const std::vector< API::MatrixWorkspace_sptr > &workspaces) const |
void | copyLogs (const API::MatrixWorkspace_sptr &resultWorkspace, const API::Workspace_sptr &resultGroup) |
void | copyLogs (const API::MatrixWorkspace_sptr &resultWorkspace, const API::WorkspaceGroup_sptr &resultGroup) |
void | copyLogs (const API::Workspace_sptr &resultWorkspace, std::vector< API::MatrixWorkspace_sptr > const &workspaces) |
void | copyLogs (const API::WorkspaceGroup_sptr &resultWorkspaces, std::vector< API::MatrixWorkspace_sptr > const &workspaces) |
void | deleteTemporaryWorkspaces (const std::string &outputBaseName) |
void | exec () override |
void | extractMembers (const API::WorkspaceGroup_sptr &resultGroupWs, const std::vector< API::MatrixWorkspace_sptr > &workspaces, const std::string &outputWsName) |
API::IAlgorithm_sptr | extractMembersAlgorithm (const API::WorkspaceGroup_sptr &resultGroupWs, const std::string &outputWsName) const |
std::vector< std::size_t > | getDatasetGrouping (const std::vector< API::MatrixWorkspace_sptr > &workspaces) const |
std::string | getInputString (const std::vector< API::MatrixWorkspace_sptr > &workspaces) const |
std::string | getOutputBaseName () const |
std::string | getTemporaryName () const |
std::set< std::string > | getUniqueParameterNames () const |
void | init () override |
virtual bool | isFitParameter (const std::string ¶meterName) const |
API::ITableWorkspace_sptr | performFit (const std::string &input, const std::string &output) |
API::WorkspaceGroup_sptr | processIndirectFitParameters (const API::ITableWorkspace_sptr ¶meterWorkspace, const std::vector< std::size_t > &grouping) |
void | renameGroupWorkspace (std::string const ¤tName, std::vector< std::string > const &spectra, std::string const &outputBaseName, std::string const &endOfSuffix) |
void | renameWorkspaces (API::WorkspaceGroup_sptr outputGroup, std::vector< std::string > const &spectra, std::string const &outputBaseName, std::string const &endOfSuffix) |
void | renameWorkspaces (API::WorkspaceGroup_sptr outputGroup, std::vector< std::string > const &spectra, std::string const &outputBaseName, std::string const &endOfSuffix, std::vector< std::string > const &names) |
virtual bool | throwIfElasticQConversionFails () const |
Additional Inherited Members | |
Protected Attributes inherited from Mantid::API::GenericDataProcessorAlgorithm< Base > | |
bool | m_useMPI |
MPI option. If false, we will use one job event if MPI is available. More... | |
QENSFitSequential - Performs a sequential QENS fit.
Definition at line 25 of file QENSFitSequential.h.
|
private |
Definition at line 573 of file QENSFitSequential.cpp.
References Mantid::API::GenericDataProcessorAlgorithm< Base >::createChildAlgorithm(), getAdditionalLogNumbers(), getAdditionalLogStrings(), and Mantid::Kernel::ProgressBase::report().
|
private |
Definition at line 568 of file QENSFitSequential.cpp.
References addAdditionalLogs(), and workspace.
Referenced by addAdditionalLogs(), and exec().
|
private |
Definition at line 593 of file QENSFitSequential.cpp.
References Mantid::API::GenericDataProcessorAlgorithm< Base >::createChildAlgorithm(), Mantid::API::GenericDataProcessorAlgorithm< Base >::getProperty(), and std::to_string().
Referenced by exec().
|
override |
Algorithm's category for identification.
Definition at line 309 of file QENSFitSequential.cpp.
|
private |
Definition at line 782 of file QENSFitSequential.cpp.
References getTemporaryName(), and throwIfElasticQConversionFails().
Referenced by exec(), and validateInputs().
|
private |
Definition at line 819 of file QENSFitSequential.cpp.
References Mantid::API::GenericDataProcessorAlgorithm< Base >::createChildAlgorithm().
|
private |
Definition at line 814 of file QENSFitSequential.cpp.
References copyLogs(), and workspace.
|
private |
Definition at line 804 of file QENSFitSequential.cpp.
References Mantid::API::GenericDataProcessorAlgorithm< Base >::createChildAlgorithm(), and workspace.
|
private |
Definition at line 798 of file QENSFitSequential.cpp.
References copyLogs().
Referenced by copyLogs(), and exec().
|
private |
Definition at line 647 of file QENSFitSequential.cpp.
References Mantid::API::GenericDataProcessorAlgorithm< Base >::createChildAlgorithm(), and getTemporaryName().
Referenced by exec().
|
overrideprivate |
Definition at line 481 of file QENSFitSequential.cpp.
References addAdditionalLogs(), addFitRangeLogs(), Mantid::API::containsMultipleData(), convertInputToElasticQ(), copyLogs(), deleteTemporaryWorkspaces(), extractMembers(), getDatasetGrouping(), getInputString(), getOutputBaseName(), Mantid::API::GenericDataProcessorAlgorithm< Base >::getProperty(), Mantid::API::GenericDataProcessorAlgorithm< Base >::getPropertyValue(), getWorkspaces(), Mantid::Kernel::SingletonHolder< T >::Instance(), performFit(), processIndirectFitParameters(), processParameterTable(), renameGroupWorkspace(), renameWorkspaces(), and workspace.
|
private |
Definition at line 786 of file QENSFitSequential.cpp.
References extractMembersAlgorithm(), and workspace.
Referenced by exec().
|
private |
Definition at line 826 of file QENSFitSequential.cpp.
References Mantid::API::GenericDataProcessorAlgorithm< Base >::getProperty(), and Mantid::Kernel::SingletonHolder< T >::Instance().
Referenced by extractMembers().
|
protectedvirtual |
Definition at line 564 of file QENSFitSequential.cpp.
Referenced by addAdditionalLogs().
|
protectedvirtual |
Definition at line 551 of file QENSFitSequential.cpp.
References Mantid::API::GenericDataProcessorAlgorithm< Base >::getProperty(), Mantid::API::GenericDataProcessorAlgorithm< Base >::getPropertyValue(), and name().
Referenced by addAdditionalLogs().
|
private |
Definition at line 659 of file QENSFitSequential.cpp.
References Mantid::API::GenericDataProcessorAlgorithm< Base >::getProperty(), and Mantid::API::GenericDataProcessorAlgorithm< Base >::getPropertyValue().
Referenced by exec().
|
protectedvirtual |
Definition at line 630 of file QENSFitSequential.cpp.
References getUniqueParameterNames().
Referenced by processIndirectFitParameters().
|
private |
Definition at line 762 of file QENSFitSequential.cpp.
References Mantid::API::GenericDataProcessorAlgorithm< Base >::getProperty(), and Mantid::API::GenericDataProcessorAlgorithm< Base >::getPropertyValue().
Referenced by exec(), and validateInputs().
|
private |
Definition at line 618 of file QENSFitSequential.cpp.
References Mantid::API::GenericDataProcessorAlgorithm< Base >::getPropertyValue(), and position.
Referenced by exec().
|
private |
Definition at line 843 of file QENSFitSequential.cpp.
References name().
Referenced by convertInputToElasticQ(), and deleteTemporaryWorkspaces().
|
private |
Definition at line 639 of file QENSFitSequential.cpp.
References Mantid::API::GenericDataProcessorAlgorithm< Base >::getProperty().
Referenced by getFitParameterNames().
|
protectedvirtual |
Definition at line 769 of file QENSFitSequential.cpp.
References Mantid::API::GenericDataProcessorAlgorithm< Base >::getProperty(), and Mantid::API::GenericDataProcessorAlgorithm< Base >::getPropertyValue().
Referenced by exec(), and validateInputs().
|
overrideprivate |
Definition at line 319 of file QENSFitSequential.cpp.
References Mantid::Kernel::Direction::InOut, Mantid::Kernel::Direction::Input, Mantid::Kernel::SingletonHolder< T >::Instance(), Mantid::API::PropertyMode::Optional, and Mantid::Kernel::Direction::Output.
|
privatevirtual |
Definition at line 628 of file QENSFitSequential.cpp.
|
override |
Algorithms name for identification.
Definition at line 303 of file QENSFitSequential.cpp.
Referenced by getAdditionalLogStrings(), and getTemporaryName().
|
private |
Definition at line 714 of file QENSFitSequential.cpp.
References Mantid::API::GenericDataProcessorAlgorithm< Base >::createChildAlgorithm(), Mantid::API::GenericDataProcessorAlgorithm< Base >::getProperty(), Mantid::API::GenericDataProcessorAlgorithm< Base >::getPropertyValue(), and Mantid::Kernel::Direction::Output.
Referenced by exec().
|
private |
Definition at line 667 of file QENSFitSequential.cpp.
References Mantid::API::GenericDataProcessorAlgorithm< Base >::createChildAlgorithm(), getFitParameterNames(), and Mantid::API::GenericDataProcessorAlgorithm< Base >::getProperty().
Referenced by exec().
|
protectedvirtual |
Definition at line 681 of file QENSFitSequential.cpp.
Referenced by exec().
|
private |
Definition at line 705 of file QENSFitSequential.cpp.
References Mantid::Kernel::SingletonHolder< T >::Instance(), and renameWorkspaces().
Referenced by exec().
|
private |
Definition at line 697 of file QENSFitSequential.cpp.
References Mantid::API::GenericDataProcessorAlgorithm< Base >::createChildAlgorithm(), and Mantid::API::renameWorkspacesInQENSFit().
Referenced by exec(), and renameGroupWorkspace().
|
private |
Definition at line 685 of file QENSFitSequential.cpp.
References Mantid::API::GenericDataProcessorAlgorithm< Base >::createChildAlgorithm(), and Mantid::API::renameWorkspacesInQENSFit().
|
override |
Algorithm's see also for related algorithms.
Definition at line 315 of file QENSFitSequential.cpp.
|
override |
Algorithm's summary for use in the GUI and help.
Definition at line 312 of file QENSFitSequential.cpp.
|
privatevirtual |
Definition at line 626 of file QENSFitSequential.cpp.
Referenced by convertInputToElasticQ().
|
overrideprotected |
Definition at line 448 of file QENSFitSequential.cpp.
References convertInputToElasticQ(), getInputString(), Mantid::API::GenericDataProcessorAlgorithm< Base >::getProperty(), Mantid::API::GenericDataProcessorAlgorithm< Base >::getPropertyValue(), getWorkspaces(), and workspace.
|
override |
Algorithm's version for identification.
Definition at line 306 of file QENSFitSequential.cpp.