BornAgain
1.19.0
Simulate and fit neutron and x-ray scattering at grazing incidence
|
Axis with variable bin size. More...
Public Member Functions | |
VariableBinAxis (const std::string &name, size_t nbins, const std::vector< double > &bin_boundaries) | |
VariableBinAxis constructor. More... | |
virtual | ~VariableBinAxis () |
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... | |
VariableBinAxis * | clone () const |
clone function More... | |
virtual bool | contains (double value) const |
Returns true if axis contains given point. More... | |
virtual VariableBinAxis * | 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 | |
VariableBinAxis (const std::string &name, size_t nbins=0) | |
virtual bool | equals (const IAxis &other) const |
virtual void | print (std::ostream &ostr) const |
void | setBinBoundaries (const std::vector< double > &bin_boundaries) |
Protected Attributes | |
size_t | m_nbins |
Private Attributes | |
std::vector< double > | m_bin_boundaries |
vector containing the bin limits More... | |
std::string | m_name |
axis name More... | |
Axis with variable bin size.
Definition at line 23 of file VariableBinAxis.h.
VariableBinAxis::VariableBinAxis | ( | const std::string & | name, |
size_t | nbins, | ||
const std::vector< double > & | bin_boundaries | ||
) |
VariableBinAxis constructor.
name | Axis name |
nbins | number of bins |
bin_boundaries | Array of size nbins+1 containing low-edges for each bin and upper edge of last bin. |
Definition at line 20 of file VariableBinAxis.cpp.
References m_nbins, and setBinBoundaries().
Referenced by clone(), and createClippedAxis().
|
inlinevirtual |
Definition at line 32 of file VariableBinAxis.h.
|
protected |
Definition at line 31 of file VariableBinAxis.cpp.
|
virtual |
retrieve a 1d bin for the given index
Implements IAxis.
Definition at line 47 of file VariableBinAxis.cpp.
References m_bin_boundaries, and m_nbins.
Referenced by binCenter(), binCenters(), createClippedAxis(), ConstKBinAxis::createClippedAxis(), and operator[]().
|
inlinevirtual |
Reimplemented from IAxis.
Definition at line 50 of file VariableBinAxis.h.
References m_bin_boundaries.
Referenced by ConstKBinAxis::createClippedAxis().
|
virtual |
Implements IAxis.
Definition at line 66 of file VariableBinAxis.cpp.
References bin(), and Bin1D::center().
|
virtual |
Reimplemented from IAxis.
Definition at line 90 of file VariableBinAxis.cpp.
References bin(), Bin1D::center(), and size().
|
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 36 of file VariableBinAxis.cpp.
References VariableBinAxis(), IAxis::getName(), m_bin_boundaries, and m_nbins.
|
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 IAxis.
Reimplemented in ConstKBinAxis, and CustomBinAxis.
Definition at line 100 of file VariableBinAxis.cpp.
References VariableBinAxis(), bin(), Bin1D::center(), findClosestIndex(), IAxis::getName(), lowerBound(), m_bin_boundaries, size(), and upperBound().
|
protectedvirtual |
Reimplemented from IAxis.
Reimplemented in ConstKBinAxis, and CustomBinAxis.
Definition at line 135 of file VariableBinAxis.cpp.
References algo::almostEqual(), IAxis::equals(), m_bin_boundaries, and size().
|
virtual |
find bin index which is best match for given value
Implements IAxis.
Definition at line 71 of file VariableBinAxis.cpp.
References lowerBound(), m_bin_boundaries, m_nbins, and upperBound().
Referenced by 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(), CustomBinAxis::clone(), FixedBinAxis::clone(), clone(), ConstKBinAxis::clone(), PointwiseAxis::clone(), FixedBinAxis::createClippedAxis(), createClippedAxis(), ConstKBinAxis::createClippedAxis(), PointwiseAxis::createClippedAxis(), ImportDataUtils::CreateSimplifiedOutputData(), IAxis::equals(), CustomBinAxis::print(), FixedBinAxis::print(), print(), ConstKBinAxis::print(), PointwiseAxis::print(), and TransformFromDomain::setAxisItem().
|
virtual |
Returns value of first point of axis.
Implements IAxis.
Definition at line 56 of file VariableBinAxis.cpp.
References m_bin_boundaries.
Referenced by createClippedAxis(), ConstKBinAxis::createClippedAxis(), and findClosestIndex().
|
inlineinherited |
|
inlineinherited |
test for equality
Definition at line 69 of file IAxis.h.
References IAxis::equals().
|
virtual |
indexed accessor retrieves a sample
Implements IAxis.
Definition at line 42 of file VariableBinAxis.cpp.
References bin(), and Bin1D::center().
|
protectedvirtual |
Implements IAxis.
Reimplemented in ConstKBinAxis, and CustomBinAxis.
Definition at line 124 of file VariableBinAxis.cpp.
References IAxis::getName(), m_bin_boundaries, and size().
|
protected |
Definition at line 152 of file VariableBinAxis.cpp.
References m_bin_boundaries.
Referenced by ConstKBinAxis::ConstKBinAxis(), CustomBinAxis::CustomBinAxis(), 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().
|
inlinevirtual |
retrieve the number of bins
Implements IAxis.
Definition at line 36 of file VariableBinAxis.h.
References m_nbins.
Referenced by binCenters(), createClippedAxis(), ConstKBinAxis::createClippedAxis(), CustomBinAxis::equals(), equals(), ConstKBinAxis::equals(), CustomBinAxis::print(), 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().
|
virtual |
Returns value of last point of axis.
Implements IAxis.
Definition at line 61 of file VariableBinAxis.cpp.
References m_bin_boundaries.
Referenced by createClippedAxis(), ConstKBinAxis::createClippedAxis(), and findClosestIndex().
|
private |
vector containing the bin limits
Definition at line 63 of file VariableBinAxis.h.
Referenced by bin(), binBoundaries(), clone(), createClippedAxis(), equals(), findClosestIndex(), lowerBound(), print(), setBinBoundaries(), and upperBound().
|
privateinherited |
axis name
Definition at line 96 of file IAxis.h.
Referenced by IAxis::getName(), and IAxis::setName().
|
protected |
Definition at line 60 of file VariableBinAxis.h.
Referenced by ConstKBinAxis::ConstKBinAxis(), CustomBinAxis::CustomBinAxis(), VariableBinAxis(), CustomBinAxis::bin(), bin(), CustomBinAxis::clone(), clone(), ConstKBinAxis::clone(), findClosestIndex(), and size().