BornAgain
1.19.0
Simulate and fit neutron and x-ray scattering at grazing incidence
|
Axis with fixed bin size in sin(angle) space used for numerical comparison with IsGisaxs. More...
Public Member Functions | |
CustomBinAxis (const std::string &name, size_t nbins, double start, double end) | |
CustomBinAxis constructor. More... | |
virtual | ~CustomBinAxis () |
Bin1D | bin (size_t index) const |
retrieve a 1d bin for the given index More... | |
std::vector< double > | binBoundaries () const |
double | binCenter (size_t index) const |
std::vector< double > | binCenters () const |
double | center () const |
Returns midpoint of axis. More... | |
CustomBinAxis * | clone () const |
clone function More... | |
virtual bool | contains (double value) const |
Returns true if axis contains given point. More... | |
CustomBinAxis * | createClippedAxis (double left, double right) const |
Creates a new clipped axis. More... | |
size_t | findClosestIndex (double value) const |
find bin index which is best match for given value More... | |
std::string | getName () const |
retrieve the label of the axis More... | |
double | lowerBound () const |
Returns value of first point of axis. More... | |
bool | operator!= (const IAxis &right) const |
bool | operator== (const IAxis &right) const |
test for equality More... | |
double | operator[] (size_t index) const |
indexed accessor retrieves a sample More... | |
void | setName (std::string name) |
Sets the axis label. More... | |
size_t | size () const |
retrieve the number of bins More... | |
double | span () const |
Returns distance from first to last point. More... | |
double | upperBound () const |
Returns value of last point of axis. More... | |
Protected Member Functions | |
bool | equals (const IAxis &other) const |
void | print (std::ostream &ostr) const |
void | setBinBoundaries (const std::vector< double > &bin_boundaries) |
Protected Attributes | |
std::vector< double > | m_bin_centers |
double | m_end |
size_t | m_nbins |
double | m_start |
Private Attributes | |
std::vector< double > | m_bin_boundaries |
vector containing the bin limits More... | |
std::string | m_name |
axis name More... | |
Axis with fixed bin size in sin(angle) space used for numerical comparison with IsGisaxs.
The main feature of the axis is that it produces zero bin sizes.
Definition at line 24 of file CustomBinAxis.h.
CustomBinAxis::CustomBinAxis | ( | const std::string & | name, |
size_t | nbins, | ||
double | start, | ||
double | end | ||
) |
CustomBinAxis constructor.
name | Axis name |
nbins | number of bins |
start | center of first bin (IsGisaxs convention) |
end | center of last bin (IsGisaxs convention) |
Definition at line 20 of file CustomBinAxis.cpp.
References m_bin_centers, m_end, VariableBinAxis::m_nbins, m_start, and VariableBinAxis::setBinBoundaries().
Referenced by clone().
|
inlinevirtual |
Definition at line 32 of file CustomBinAxis.h.
|
virtual |
retrieve a 1d bin for the given index
Implements IAxis.
Definition at line 49 of file CustomBinAxis.cpp.
References m_bin_centers, and VariableBinAxis::m_nbins.
|
inlinevirtualinherited |
Reimplemented from IAxis.
Definition at line 50 of file VariableBinAxis.h.
References VariableBinAxis::m_bin_boundaries.
Referenced by ConstKBinAxis::createClippedAxis().
|
virtualinherited |
Implements IAxis.
Definition at line 66 of file VariableBinAxis.cpp.
References VariableBinAxis::bin(), and Bin1D::center().
|
virtual |
Reimplemented from IAxis.
Definition at line 58 of file CustomBinAxis.cpp.
References m_bin_centers.
|
inherited |
Returns midpoint of axis.
Definition at line 47 of file IAxis.cpp.
References IAxis::lowerBound(), and IAxis::upperBound().
|
virtual |
clone function
Implements IAxis.
Definition at line 44 of file CustomBinAxis.cpp.
References CustomBinAxis(), IAxis::getName(), m_end, VariableBinAxis::m_nbins, and m_start.
|
virtualinherited |
Returns true if axis contains given point.
Definition at line 37 of file IAxis.cpp.
References IAxis::lowerBound(), and IAxis::upperBound().
Referenced by Histogram1D::crop(), Histogram2D::crop(), Histogram1D::fill(), RectangularDetector::indexOfSpecular(), and SphericalDetector::indexOfSpecular().
|
virtual |
Creates a new clipped axis.
Reimplemented from VariableBinAxis.
Definition at line 63 of file CustomBinAxis.cpp.
|
protectedvirtual |
Reimplemented from VariableBinAxis.
Definition at line 76 of file CustomBinAxis.cpp.
References algo::almostEqual(), IAxis::equals(), m_end, m_start, and VariableBinAxis::size().
|
virtualinherited |
find bin index which is best match for given value
Implements IAxis.
Definition at line 71 of file VariableBinAxis.cpp.
References VariableBinAxis::lowerBound(), VariableBinAxis::m_bin_boundaries, VariableBinAxis::m_nbins, and VariableBinAxis::upperBound().
Referenced by VariableBinAxis::createClippedAxis(), and ConstKBinAxis::createClippedAxis().
|
inlineinherited |
retrieve the label of the axis
Definition at line 40 of file IAxis.h.
References IAxis::m_name.
Referenced by OutputData< T >::addAxis(), RegionOfInterest::clipAxisToRoi(), clone(), FixedBinAxis::clone(), VariableBinAxis::clone(), ConstKBinAxis::clone(), PointwiseAxis::clone(), FixedBinAxis::createClippedAxis(), VariableBinAxis::createClippedAxis(), ConstKBinAxis::createClippedAxis(), PointwiseAxis::createClippedAxis(), ImportDataUtils::CreateSimplifiedOutputData(), IAxis::equals(), print(), FixedBinAxis::print(), VariableBinAxis::print(), ConstKBinAxis::print(), PointwiseAxis::print(), and TransformFromDomain::setAxisItem().
|
virtualinherited |
Returns value of first point of axis.
Implements IAxis.
Definition at line 56 of file VariableBinAxis.cpp.
References VariableBinAxis::m_bin_boundaries.
Referenced by VariableBinAxis::createClippedAxis(), ConstKBinAxis::createClippedAxis(), and VariableBinAxis::findClosestIndex().
|
inlineinherited |
|
inlineinherited |
test for equality
Definition at line 69 of file IAxis.h.
References IAxis::equals().
|
virtualinherited |
indexed accessor retrieves a sample
Implements IAxis.
Definition at line 42 of file VariableBinAxis.cpp.
References VariableBinAxis::bin(), and Bin1D::center().
|
protectedvirtual |
Reimplemented from VariableBinAxis.
Definition at line 69 of file CustomBinAxis.cpp.
References IAxis::getName(), m_end, m_start, and VariableBinAxis::size().
|
protectedinherited |
Definition at line 152 of file VariableBinAxis.cpp.
References VariableBinAxis::m_bin_boundaries.
Referenced by ConstKBinAxis::ConstKBinAxis(), CustomBinAxis(), VariableBinAxis::VariableBinAxis(), and ConstKBinAxis::createClippedAxis().
|
inlineinherited |
Sets the axis label.
Definition at line 43 of file IAxis.h.
References IAxis::m_name, and RealSpace::Particles::name().
|
inlinevirtualinherited |
retrieve the number of bins
Implements IAxis.
Definition at line 36 of file VariableBinAxis.h.
References VariableBinAxis::m_nbins.
Referenced by VariableBinAxis::binCenters(), VariableBinAxis::createClippedAxis(), ConstKBinAxis::createClippedAxis(), equals(), VariableBinAxis::equals(), ConstKBinAxis::equals(), print(), VariableBinAxis::print(), and ConstKBinAxis::print().
|
inherited |
Returns distance from first to last point.
Definition at line 42 of file IAxis.cpp.
References IAxis::lowerBound(), and IAxis::upperBound().
Referenced by RectangularDetector::getHeight(), RectangularDetector::getWidth(), and DetectorUtils::isQuadratic().
|
virtualinherited |
Returns value of last point of axis.
Implements IAxis.
Definition at line 61 of file VariableBinAxis.cpp.
References VariableBinAxis::m_bin_boundaries.
Referenced by VariableBinAxis::createClippedAxis(), ConstKBinAxis::createClippedAxis(), and VariableBinAxis::findClosestIndex().
|
privateinherited |
vector containing the bin limits
Definition at line 63 of file VariableBinAxis.h.
Referenced by VariableBinAxis::bin(), VariableBinAxis::binBoundaries(), VariableBinAxis::clone(), VariableBinAxis::createClippedAxis(), VariableBinAxis::equals(), VariableBinAxis::findClosestIndex(), VariableBinAxis::lowerBound(), VariableBinAxis::print(), VariableBinAxis::setBinBoundaries(), and VariableBinAxis::upperBound().
|
protected |
Definition at line 48 of file CustomBinAxis.h.
Referenced by CustomBinAxis(), bin(), and binCenters().
|
protected |
Definition at line 47 of file CustomBinAxis.h.
Referenced by CustomBinAxis(), clone(), equals(), and print().
|
privateinherited |
axis name
Definition at line 96 of file IAxis.h.
Referenced by IAxis::getName(), and IAxis::setName().
|
protectedinherited |
Definition at line 60 of file VariableBinAxis.h.
Referenced by ConstKBinAxis::ConstKBinAxis(), CustomBinAxis(), VariableBinAxis::VariableBinAxis(), bin(), VariableBinAxis::bin(), clone(), VariableBinAxis::clone(), ConstKBinAxis::clone(), VariableBinAxis::findClosestIndex(), and VariableBinAxis::size().
|
protected |
Definition at line 46 of file CustomBinAxis.h.
Referenced by CustomBinAxis(), clone(), equals(), and print().