Mantid
Loading...
Searching...
No Matches
ScalarUtils.h
Go to the documentation of this file.
1// Mantid Repository : https://github.com/mantidproject/mantid
2//
3// Copyright © 2012 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/* File: Scalar_Utils.h */
8
9#pragma once
10
11//----------------------------------------------------------------------
12// Includes
13//----------------------------------------------------------------------
15#include "MantidGeometry/DllConfig.h"
16#include "MantidKernel/Matrix.h"
17#include "MantidKernel/V3D.h"
18
19namespace Mantid {
20namespace Geometry {
32class MANTID_GEOMETRY_DLL ScalarUtils {
33public:
37 static std::vector<ConventionalCell> GetCells(const Kernel::DblMatrix &UB, bool best_only,
38 bool allowPermutations = false);
39
43 static std::vector<ConventionalCell> GetCells(const Kernel::DblMatrix &UB, const std::string &cell_type,
44 const std::string &centering, bool allowPermutations = false);
45
48 static std::vector<ConventionalCell> GetCellsUBOnly(const Kernel::DblMatrix &UB, const std::string &cell_type,
49 const std::string &centering, bool allowPermutations = false);
50
54 static ConventionalCell GetCellForForm(const Kernel::DblMatrix &UB, size_t form_num, bool allowPermutations = false);
56 static void RemoveHighErrorForms(std::vector<ConventionalCell> &list, double level);
57
60 static ConventionalCell GetCellBestError(const std::vector<ConventionalCell> &list, bool use_triclinic);
61
64 static std::vector<Kernel::DblMatrix> GetRelatedUBs(const Kernel::DblMatrix &UB, double factor,
65 double angle_tolerance);
66
67private:
69 static void AddIfBest(std::vector<ConventionalCell> &list, ConventionalCell &info);
70};
71
72} // namespace Geometry
73} // namespace Mantid
Instances of this class represent information about a selected conventional cell based on a specified...
This class contains static utility methods for determining an orientation matrix corresponding to a c...
Definition: ScalarUtils.h:32
Helper class which provides the Collimation Length for SANS instruments.