|
Mantid
|
Class that handles all the calibration constants for a bank of detectors. More...
#include <BankCalibration.h>
Public Member Functions | |
| BankCalibration (const detid_t idmin, const detid_t idmax, const double time_conversion, const std::map< detid_t, double > &calibration_map, const std::map< detid_t, double > &scale_at_sample, const std::set< detid_t > &mask) | |
| Calibration of a subset of pixels as requested in the constructor. | |
| detid_t | idmax () const |
| const detid_t & | idmin () const |
| const double & | value_calibration (const detid_t detid) const |
| This assumes that everything is in range. | |
| double | value_scale_at_sample (const detid_t detid) const |
| This returns a value with no bounds checking. | |
Private Attributes | |
| std::vector< double > | m_calibration |
| const detid_t | m_detid_offset |
| std::vector< double > | m_scale_at_sample |
Class that handles all the calibration constants for a bank of detectors.
Accessing values DOES NO RANGE CHECKING so only request values within the range of detector IDs supplied to the constructor.
Definition at line 24 of file BankCalibration.h.
| Mantid::DataHandling::AlignAndFocusPowderSlim::BankCalibration::BankCalibration | ( | const detid_t | idmin, |
| const detid_t | idmax, | ||
| const double | time_conversion, | ||
| const std::map< detid_t, double > & | calibration_map, | ||
| const std::map< detid_t, double > & | scale_at_sample, | ||
| const std::set< detid_t > & | mask | ||
| ) |
Calibration of a subset of pixels as requested in the constructor.
This is used because a vector is faster lookup than a map for dense array of values.
| idmin | Minimum detector id to include in the calibration |
| idmax | Maximum detector id to include in the calibration |
| time_conversion | Value to bundle into the calibration constant to account for converting the time-of-flight into microseconds. Applying it here is effectively the same as applying it to each event time-of-flight. |
| calibration_map | Calibration for the entire instrument. |
| scale_at_sample | Scalar factor to multiply the time-of-flight by to get the time-of-flight of the neutron back at the sample position. |
| mask | detector ids that exist in the map should not be included. |
Definition at line 50 of file BankCalibration.cpp.
References idmax(), idmin(), Mantid::DataHandling::AlignAndFocusPowderSlim::IGNORE_PIXEL, m_calibration, m_detid_offset, m_scale_at_sample, std::to_string(), and value.
| detid_t Mantid::DataHandling::AlignAndFocusPowderSlim::BankCalibration::idmax | ( | ) | const |
Definition at line 95 of file BankCalibration.cpp.
References m_calibration, and m_detid_offset.
Referenced by BankCalibration().
| const detid_t & Mantid::DataHandling::AlignAndFocusPowderSlim::BankCalibration::idmin | ( | ) | const |
Definition at line 94 of file BankCalibration.cpp.
References m_detid_offset.
Referenced by BankCalibration().
| const double & Mantid::DataHandling::AlignAndFocusPowderSlim::BankCalibration::value_calibration | ( | const detid_t | detid | ) | const |
This assumes that everything is in range.
Values that weren't in the calibration map get set to 1.
Definition at line 86 of file BankCalibration.cpp.
References m_calibration, and m_detid_offset.
Referenced by Mantid::DataHandling::AlignAndFocusPowderSlim::ProcessEventsTask< DetIDsVector, TofVector >::operator()().
| double Mantid::DataHandling::AlignAndFocusPowderSlim::BankCalibration::value_scale_at_sample | ( | const detid_t | detid | ) | const |
This returns a value with no bounds checking.
If scale_at_sample is not provided, this will have undefined behavior.
Definition at line 90 of file BankCalibration.cpp.
References m_detid_offset, and m_scale_at_sample.
|
private |
Definition at line 39 of file BankCalibration.h.
Referenced by BankCalibration(), idmax(), and value_calibration().
|
private |
Definition at line 41 of file BankCalibration.h.
Referenced by BankCalibration(), idmax(), idmin(), value_calibration(), and value_scale_at_sample().
|
private |
Definition at line 40 of file BankCalibration.h.
Referenced by BankCalibration(), and value_scale_at_sample().