Mantid
Loading...
Searching...
No Matches
MuonPairAsymmetryCalculator.h
Go to the documentation of this file.
1// Mantid Repository : https://github.com/mantidproject/mantid
2//
3// Copyright © 2015 ISIS Rutherford Appleton Laboratory UKRI,
4// NScD Oak Ridge National Laboratory, European Spallation Source,
5// Institut Laue - Langevin & CSNS, Institute of High Energy Physics, CAS
6// SPDX - License - Identifier: GPL - 3.0 +
7#pragma once
8
10
11namespace Mantid {
12namespace WorkflowAlgorithms {
13
18public:
19 MuonPairAsymmetryCalculator(const API::WorkspaceGroup_sptr &inputWS, const std::vector<int> &summedPeriods,
20 const std::vector<int> &subtractedPeriods, const int firstPairIndex,
21 const int secondPairIndex, const double alpha = 1);
22
24 API::MatrixWorkspace_sptr calculate() const override;
25
26private:
28 API::MatrixWorkspace_sptr asymmetryCalc(const API::Workspace_sptr &inputWS) const;
29
31 const double m_alpha;
32
35
38};
39
40} // namespace WorkflowAlgorithms
41} // namespace Mantid
#define DLLExport
Definitions of the DLLImport compiler directives for MSVC.
Definition: System.h:53
IMuonAsymmetryCalculator : Abstract base class for muon asymmetry calculations.
MuonPairAsymmetryCalculator : Calculates asymmetry for a given pair of groups, given the alpha value.
const int m_secondPairIndex
Workspace index of the second group of the pair.
const int m_firstPairIndex
Workspace index of the first group of the pair.
std::shared_ptr< WorkspaceGroup > WorkspaceGroup_sptr
shared pointer to Mantid::API::WorkspaceGroup
std::shared_ptr< Workspace > Workspace_sptr
shared pointer to Mantid::API::Workspace
Definition: Workspace_fwd.h:20
std::shared_ptr< MatrixWorkspace > MatrixWorkspace_sptr
shared pointer to the matrix workspace base class
Helper class which provides the Collimation Length for SANS instruments.