diff --git a/Base/Axis/IAxis.cpp b/Base/Axis/IAxis.cpp
index 1390e1bf5e3c7193b131f3d4ebe07dbcad9b922a..0ea07fa4951565ea53d0db80314a950b1cb57c77 100644
--- a/Base/Axis/IAxis.cpp
+++ b/Base/Axis/IAxis.cpp
@@ -41,3 +41,8 @@ bool IAxis::contains(double value) const
 {
     return value >= getMin() && value < getMax();
 }
+
+double IAxis::span() const
+{
+    return getMax() - getMin();
+}
diff --git a/Base/Axis/IAxis.h b/Base/Axis/IAxis.h
index be7894669fd156abf86e32def16deb83820ce681..45c33fdb1245b3585a9975ab3496b3aa7a470967 100644
--- a/Base/Axis/IAxis.h
+++ b/Base/Axis/IAxis.h
@@ -54,6 +54,9 @@ public:
     //! Returns value of last point of axis
     virtual double getMax() const = 0;
 
+    //! Returns distance from first to last point
+    double span() const;
+
     virtual double getBinCenter(size_t index) const = 0;
 
     //! find bin index which is best match for given value
diff --git a/Core/Export/SimulationToPython.cpp b/Core/Export/SimulationToPython.cpp
index 5cfb76f557625c76757976695a87f80ee612ecb7..c6ad1ac2cf4d3bc59e2461f2caf532bc7d846b26 100644
--- a/Core/Export/SimulationToPython.cpp
+++ b/Core/Export/SimulationToPython.cpp
@@ -157,9 +157,9 @@ std::string SimulationToPython::defineDetector(const ISimulation* simulation) co
         for (size_t index = 0; index < det->dimension(); ++index) {
             if (index != 0)
                 result << ", ";
-            result << det->getAxis(index).size() << ", "
-                   << pyfmt::printDegrees(det->getAxis(index).getMin()) << ", "
-                   << pyfmt::printDegrees(det->getAxis(index).getMax());
+            result << det->axis(index).size() << ", "
+                   << pyfmt::printDegrees(det->axis(index).getMin()) << ", "
+                   << pyfmt::printDegrees(det->axis(index).getMax());
         }
         result << ")\n";
     } else if (const auto* const det = dynamic_cast<const RectangularDetector*>(detector)) {
diff --git a/Core/Simulation/ISimulation.cpp b/Core/Simulation/ISimulation.cpp
index a6d505564a75c266bd6c210939bf976ae960031d..614e82cef1c388ca2c6943e99c4f150d0224ebe0 100644
--- a/Core/Simulation/ISimulation.cpp
+++ b/Core/Simulation/ISimulation.cpp
@@ -36,7 +36,7 @@ bool detHasSameDimensions(const IDetector& detector, const OutputData<double>& d
         return false;
 
     for (size_t i = 0; i < detector.dimension(); ++i)
-        if (data.getAxis(i).size() != detector.getAxis(i).size())
+        if (data.axis(i).size() != detector.axis(i).size())
             return false;
 
     return true;
diff --git a/Device/Data/OutputData.cpp b/Device/Data/OutputData.cpp
index 69ab02c31cd371b5750547f0871f2b954ca0b4de..88b623df6e00aa3e24ed198fb83025012e6879e9 100644
--- a/Device/Data/OutputData.cpp
+++ b/Device/Data/OutputData.cpp
@@ -23,7 +23,7 @@ template <> PyObject* OutputData<double>::getArray() const
 {
     std::vector<size_t> dimensions;
     for (size_t i = 0; i < getRank(); i++)
-        dimensions.push_back(getAxis(i).size());
+        dimensions.push_back(axis(i).size());
 
     // for rot90 of 2-dim arrays to conform with numpy
     if (dimensions.size() == 2)
diff --git a/Device/Data/OutputData.h b/Device/Data/OutputData.h
index ca2eea1272ecd500567644f10f5ed36274a16fbe..ea8ddc5900e8352bc9f10f99c1b98bbc75e9de0c 100644
--- a/Device/Data/OutputData.h
+++ b/Device/Data/OutputData.h
@@ -48,10 +48,10 @@ public:
     void addAxis(const std::string& name, size_t size, double start, double end);
 
     //! returns axis with given serial number
-    const IAxis& getAxis(size_t serial_number) const;
+    const IAxis& axis(size_t serial_number) const;
 
     //! returns axis with given name
-    const IAxis& getAxis(const std::string& axis_name) const;
+    const IAxis& axis(const std::string& axis_name) const;
 
     // retrieve basic info
 
@@ -273,7 +273,7 @@ template <class T> template <class U> void OutputData<T>::copyShapeFrom(const Ou
     clear();
     size_t rank = other.getRank();
     for (size_t i = 0; i < rank; ++i)
-        addAxis(other.getAxis(i));
+        addAxis(other.axis(i));
 }
 
 template <class T> OutputData<double>* OutputData<T>::meanValues() const
@@ -311,14 +311,14 @@ void OutputData<T>::addAxis(const std::string& name, size_t size, double start,
     addAxis(new_axis);
 }
 
-template <class T> const IAxis& OutputData<T>::getAxis(size_t serial_number) const
+template <class T> const IAxis& OutputData<T>::axis(size_t serial_number) const
 {
     return *m_value_axes[serial_number];
 }
 
-template <class T> const IAxis& OutputData<T>::getAxis(const std::string& axis_name) const
+template <class T> const IAxis& OutputData<T>::axis(const std::string& axis_name) const
 {
-    return getAxis(getAxisIndex(axis_name));
+    return axis(getAxisIndex(axis_name));
 }
 
 template <class T> inline std::vector<size_t> OutputData<T>::getAllSizes() const
@@ -548,7 +548,7 @@ template <class T> void OutputData<T>::allocate()
     size_t rank = m_value_axes.size();
     int* dims = new int[rank];
     for (size_t i = 0; i < rank; ++i) {
-        dims[i] = (int)getAxis(i).size();
+        dims[i] = (int)axis(i).size();
     }
     m_ll_data = new LLData<T>(rank, dims);
     T default_value = {};
@@ -584,7 +584,7 @@ inline bool OutputData<T>::hasSameDimensions(const OutputData<U>& right) const
     if (getRank() != right.getRank())
         return false;
     for (size_t i_axis = 0; i_axis < getRank(); ++i_axis)
-        if (getAxis(i_axis).size() != right.getAxis(i_axis).size())
+        if (axis(i_axis).size() != right.axis(i_axis).size())
             return false;
     return true;
 }
@@ -598,7 +598,7 @@ bool OutputData<T>::hasSameShape(const OutputData<U>& right) const
         return false;
 
     for (size_t i = 0; i < m_value_axes.size(); ++i)
-        if (!HaveSameNameAndShape(getAxis(i), right.getAxis(i)))
+        if (!HaveSameNameAndShape(axis(i), right.axis(i)))
             return false;
     return true;
 }
diff --git a/Device/Detector/DetectorMask.cpp b/Device/Detector/DetectorMask.cpp
index 832878298b83306bd2ed11d07e026f1e0c49a634..aa3644a5cc1212ba77511de146f51f2c40cb0dfe 100644
--- a/Device/Detector/DetectorMask.cpp
+++ b/Device/Detector/DetectorMask.cpp
@@ -56,7 +56,7 @@ void DetectorMask::initMaskData(const IDetector2D& detector)
     m_mask_data.clear();
 
     for (size_t dim = 0; dim < detector.dimension(); ++dim) {
-        const IAxis& axis = detector.getAxis(dim);
+        const IAxis& axis = detector.axis(dim);
         m_mask_data.addAxis(axis);
     }
 
@@ -69,7 +69,7 @@ void DetectorMask::initMaskData(const OutputData<double>& data)
     m_mask_data.clear();
 
     for (size_t dim = 0; dim < data.getRank(); ++dim)
-        m_mask_data.addAxis(data.getAxis(dim));
+        m_mask_data.addAxis(data.axis(dim));
 
     process_masks();
 }
diff --git a/Device/Detector/IDetector.cpp b/Device/Detector/IDetector.cpp
index 793a0b8e78711442a821508cbf4358d8e2b8b747..5c4258bee7c84dcdf1ff250dc5cf79dbc21e6b31 100644
--- a/Device/Detector/IDetector.cpp
+++ b/Device/Detector/IDetector.cpp
@@ -51,7 +51,7 @@ void IDetector::clear()
     m_axes.clear();
 }
 
-const IAxis& IDetector::getAxis(size_t index) const
+const IAxis& IDetector::axis(size_t index) const
 {
     if (index < dimension())
         return *m_axes[index];
@@ -169,9 +169,9 @@ std::unique_ptr<OutputData<double>> IDetector::createDetectorMap() const
     std::unique_ptr<OutputData<double>> result(new OutputData<double>);
     for (size_t i = 0; i < dim; ++i)
         if (auto roi = regionOfInterest())
-            result->addAxis(*roi->clipAxisToRoi(i, getAxis(i)));
+            result->addAxis(*roi->clipAxisToRoi(i, axis(i)));
         else
-            result->addAxis(getAxis(i));
+            result->addAxis(axis(i));
 
     return result;
 }
diff --git a/Device/Detector/IDetector.h b/Device/Detector/IDetector.h
index 87049a5c6b4f19ffc82d42ea914745b1c806caf1..473ad391745f6fce9e789399da36241a35aeb609 100644
--- a/Device/Detector/IDetector.h
+++ b/Device/Detector/IDetector.h
@@ -47,7 +47,7 @@ public:
 
     void addAxis(const IAxis& axis);
 
-    const IAxis& getAxis(size_t index) const;
+    const IAxis& axis(size_t index) const;
 
     //! Returns actual dimensionality of the detector (number of defined axes)
     size_t dimension() const;
diff --git a/Device/Detector/IDetector2D.cpp b/Device/Detector/IDetector2D.cpp
index a2b23d866f384d38919b858c10c13f549045cc0c..a5faf50355b0b2b359b8ba4ea5ff82ea4ffa3bc0 100644
--- a/Device/Detector/IDetector2D.cpp
+++ b/Device/Detector/IDetector2D.cpp
@@ -99,5 +99,5 @@ size_t IDetector2D::getGlobalIndex(size_t x, size_t y) const
 {
     if (dimension() != 2)
         return totalSize();
-    return x * getAxis(1).size() + y;
+    return x * axis(1).size() + y;
 }
diff --git a/Device/Detector/RectangularDetector.cpp b/Device/Detector/RectangularDetector.cpp
index accfe03c5ee4fae7e386f3f0b886f1b0b40de89f..5105ef2cc2e282f0b8803b57c8441003ea21f84c 100644
--- a/Device/Detector/RectangularDetector.cpp
+++ b/Device/Detector/RectangularDetector.cpp
@@ -92,24 +92,22 @@ void RectangularDetector::setDirectBeamPosition(double u0, double v0)
 
 double RectangularDetector::getWidth() const
 {
-    const IAxis& axis = getAxis(0);
-    return axis.getMax() - axis.getMin();
+    return axis(0).span();
 }
 
 double RectangularDetector::getHeight() const
 {
-    const IAxis& axis = getAxis(1);
-    return axis.getMax() - axis.getMin();
+    return axis(1).span();
 }
 
 size_t RectangularDetector::getNbinsX() const
 {
-    return getAxis(0).size();
+    return axis(0).size();
 }
 
 size_t RectangularDetector::getNbinsY() const
 {
-    return getAxis(1).size();
+    return axis(1).size();
 }
 
 kvector_t RectangularDetector::getNormalVector() const
@@ -159,8 +157,8 @@ Axes::Units RectangularDetector::defaultAxesUnits() const
 
 RectangularPixel* RectangularDetector::regionOfInterestPixel() const
 {
-    const IAxis& u_axis = getAxis(0);
-    const IAxis& v_axis = getAxis(1);
+    const IAxis& u_axis = axis(0);
+    const IAxis& v_axis = axis(1);
     double u_min, v_min, width, height;
     auto p_roi = regionOfInterest();
     if (p_roi) {
@@ -183,8 +181,8 @@ RectangularPixel* RectangularDetector::regionOfInterestPixel() const
 
 IPixel* RectangularDetector::createPixel(size_t index) const
 {
-    const IAxis& u_axis = getAxis(0);
-    const IAxis& v_axis = getAxis(1);
+    const IAxis& u_axis = axis(0);
+    const IAxis& v_axis = axis(1);
     const size_t u_index = axisBinIndex(index, 0);
     const size_t v_index = axisBinIndex(index, 1);
 
@@ -225,8 +223,8 @@ size_t RectangularDetector::indexOfSpecular(const Beam& beam) const
     const kvector_t rpix = k_spec * (m_distance / kd);
     const double u = rpix.dot(m_u_unit) + m_u0;
     const double v = rpix.dot(m_v_unit) + m_v0;
-    const IAxis& u_axis = getAxis(0); // the x axis, GISAS only
-    const IAxis& v_axis = getAxis(1); // the y axis, in reflectometer plane
+    const IAxis& u_axis = axis(0); // the x axis, GISAS only
+    const IAxis& v_axis = axis(1); // the y axis, in reflectometer plane
     if (!u_axis.contains(u) || !v_axis.contains(v))
         return totalSize();
     return getGlobalIndex(u_axis.findClosestIndex(u), v_axis.findClosestIndex(v));
diff --git a/Device/Detector/RegionOfInterest.cpp b/Device/Detector/RegionOfInterest.cpp
index 21b60d42056fe2377cbcca35f25443ffdcd0d490..81d0e60288068964534c1392a39a05b3145debad 100644
--- a/Device/Detector/RegionOfInterest.cpp
+++ b/Device/Detector/RegionOfInterest.cpp
@@ -20,7 +20,7 @@ RegionOfInterest::RegionOfInterest(const IDetector2D& detector, double xlow, dou
                                    double xup, double yup)
     : RegionOfInterest(xlow, ylow, xup, yup)
 {
-    initFrom(detector.getAxis(0), detector.getAxis(1));
+    initFrom(detector.axis(0), detector.axis(1));
 }
 
 RegionOfInterest::RegionOfInterest(const OutputData<double>& data, double xlow, double ylow,
@@ -31,7 +31,7 @@ RegionOfInterest::RegionOfInterest(const OutputData<double>& data, double xlow,
         throw Exceptions::RuntimeErrorException("RegionOfInterest::RegionOfInterest() -> Error. "
                                                 "Data is not two-dimensional.");
 
-    initFrom(data.getAxis(0), data.getAxis(1));
+    initFrom(data.axis(0), data.axis(1));
 }
 
 RegionOfInterest::RegionOfInterest(double xlow, double ylow, double xup, double yup)
diff --git a/Device/Detector/SimpleUnitConverters.cpp b/Device/Detector/SimpleUnitConverters.cpp
index 927accd989042b11b24624b9b6b8faab6cdf295a..5d04f263bf84d02254a5b053138118b42d6329c9 100644
--- a/Device/Detector/SimpleUnitConverters.cpp
+++ b/Device/Detector/SimpleUnitConverters.cpp
@@ -103,7 +103,7 @@ UnitConverterSimple::UnitConverterSimple(const UnitConverterSimple& other)
 
 void UnitConverterSimple::addDetectorAxis(const IDetector& detector, size_t i_axis)
 {
-    const auto& axis = detector.getAxis(i_axis);
+    const auto& axis = detector.axis(i_axis);
     const auto* p_roi = detector.regionOfInterest();
     const auto& axis_name = axisName(i_axis);
     if (!p_roi) {
@@ -365,7 +365,7 @@ std::vector<std::map<Axes::Units, std::string>> OffSpecularConverter::createName
 
 void OffSpecularConverter::addDetectorYAxis(const IDetector2D& detector)
 {
-    const auto& axis = detector.getAxis(1);
+    const auto& axis = detector.axis(1);
     const auto* p_roi = detector.regionOfInterest();
     const auto& axis_name = axisName(1);
     std::unique_ptr<IAxis> P_new_axis;
diff --git a/Device/Detector/SphericalDetector.cpp b/Device/Detector/SphericalDetector.cpp
index 41a55b2a82668c66b303b2a170f15c18584869ea..d30dad1dbc70377abe1068d7a4c75998872beec0 100644
--- a/Device/Detector/SphericalDetector.cpp
+++ b/Device/Detector/SphericalDetector.cpp
@@ -49,8 +49,8 @@ Axes::Units SphericalDetector::defaultAxesUnits() const
 
 IPixel* SphericalDetector::createPixel(size_t index) const
 {
-    const IAxis& phi_axis = getAxis(0);
-    const IAxis& alpha_axis = getAxis(1);
+    const IAxis& phi_axis = axis(0);
+    const IAxis& alpha_axis = axis(1);
     const size_t phi_index = axisBinIndex(index, 0);
     const size_t alpha_index = axisBinIndex(index, 1);
 
@@ -78,8 +78,8 @@ size_t SphericalDetector::indexOfSpecular(const Beam& beam) const
         return totalSize();
     double alpha = beam.getAlpha();
     double phi = beam.getPhi();
-    const IAxis& phi_axis = getAxis(0);
-    const IAxis& alpha_axis = getAxis(1);
+    const IAxis& phi_axis = axis(0);
+    const IAxis& alpha_axis = axis(1);
     if (phi_axis.contains(phi) && alpha_axis.contains(alpha))
         return getGlobalIndex(phi_axis.findClosestIndex(phi), alpha_axis.findClosestIndex(alpha));
     return totalSize();
diff --git a/Device/Histo/Histogram2D.cpp b/Device/Histo/Histogram2D.cpp
index 0665654fb80be0c2a6ed9795a8c3d8f148f23965..820d283e98d75f857c8d4cca3b45a72d0c9d6b09 100644
--- a/Device/Histo/Histogram2D.cpp
+++ b/Device/Histo/Histogram2D.cpp
@@ -128,12 +128,12 @@ void Histogram2D::addContent(const std::vector<std::vector<double>>& data)
     const size_t nrows = shape.first;
     const size_t ncols = shape.second;
 
-    if (nrows != m_data.getAxis(1).size() || ncols != m_data.getAxis(0).size()) {
+    if (nrows != m_data.axis(1).size() || ncols != m_data.axis(0).size()) {
         std::ostringstream ostr;
         ostr << "Histogram2D::addContent() -> Shape of input array [" << nrows << ", " << ncols
              << "] doesn't mach histogram axes. "
-             << "X-axis size: " << m_data.getAxis(0).size()
-             << "Y-axis size: " << m_data.getAxis(1).size();
+             << "X-axis size: " << m_data.axis(0).size()
+             << "Y-axis size: " << m_data.axis(1).size();
         throw Exceptions::LogicErrorException(ostr.str());
     }
 
diff --git a/Device/Histo/IHistogram.cpp b/Device/Histo/IHistogram.cpp
index 2402d02b4d0294d000c0d2ed144a094bd364ca7d..248fe2ec5bd4a5a4e56d38fa228e2574fcbfd838 100644
--- a/Device/Histo/IHistogram.cpp
+++ b/Device/Histo/IHistogram.cpp
@@ -44,13 +44,13 @@ size_t IHistogram::getTotalNumberOfBins() const
 const IAxis& IHistogram::getXaxis() const
 {
     check_x_axis();
-    return m_data.getAxis(0);
+    return m_data.axis(0);
 }
 
 const IAxis& IHistogram::getYaxis() const
 {
     check_y_axis();
-    return m_data.getAxis(1);
+    return m_data.axis(1);
 }
 
 double IHistogram::getXmin() const
diff --git a/Device/InputOutput/OutputDataWriteStrategy.cpp b/Device/InputOutput/OutputDataWriteStrategy.cpp
index 93fafb0f81294bcc9055cd1b378f07c0ca650649..31c7085eeedec266cdd2af6ff77d6da6e95ad5d6 100644
--- a/Device/InputOutput/OutputDataWriteStrategy.cpp
+++ b/Device/InputOutput/OutputDataWriteStrategy.cpp
@@ -31,8 +31,8 @@ double IgnoreDenormalized(double value)
 
 void Write2DRepresentation(const OutputData<double>& data, std::ostream& output_stream)
 {
-    const size_t nrows = data.getAxis(1).size();
-    const size_t ncols = data.getAxis(0).size();
+    const size_t nrows = data.axis(1).size();
+    const size_t ncols = data.axis(0).size();
 
     output_stream << "# [nrows=" << nrows << ", ncols=" << ncols << "]" << std::endl;
 
@@ -74,7 +74,7 @@ void Write1DRepresentation(const OutputData<double>& data, std::ostream& output_
     output_stream.imbue(std::locale::classic());
     output_stream << std::scientific << std::setprecision(precision);
 
-    const std::vector<double> axis_values = data.getAxis(0).getBinCenters();
+    const std::vector<double> axis_values = data.axis(0).getBinCenters();
 
     // printing coordinate and associated intensity
     for (size_t i = 0, nrows = axis_values.size(); i < nrows; ++i)
@@ -93,13 +93,13 @@ void OutputDataWriteINTStrategy::writeOutputData(const OutputData<double>& data,
 
     for (size_t i = 0; i < data.getRank(); ++i) {
         std::string axis_name = std::string("axis") + std::to_string(i);
-        std::unique_ptr<IAxis> P_axis(data.getAxis(i).clone());
+        std::unique_ptr<IAxis> P_axis(data.axis(i).clone());
         P_axis->setName(axis_name);
         output_stream << std::endl;
         output_stream << "# axis-" << i << "\n";
         output_stream << (*P_axis) << "\n";
     }
-    size_t n_columns = data.getAxis(data.getRank() - 1).size();
+    size_t n_columns = data.axis(data.getRank() - 1).size();
 
     output_stream << "\n# data\n";
     WriteOutputDataDoubles(data, output_stream, n_columns);
diff --git a/Device/InputOutput/TiffHandler.cpp b/Device/InputOutput/TiffHandler.cpp
index a8ae02058892b4145d06c482d227dd2f9285a3f9..d1d96361c811fd05356409c18ab8aa6c39caa3eb 100644
--- a/Device/InputOutput/TiffHandler.cpp
+++ b/Device/InputOutput/TiffHandler.cpp
@@ -52,8 +52,8 @@ void TiffHandler::write(const OutputData<double>& data, std::ostream& output_str
         throw Exceptions::LogicErrorException("TiffHandler::write -> Error. "
                                               "Only 2-dim arrays supported");
     m_tiff = TIFFStreamOpen("MemTIFF", &output_stream);
-    m_width = m_data->getAxis(0).size();
-    m_height = m_data->getAxis(1).size(); // this does not exist for 1d data
+    m_width = m_data->axis(0).size();
+    m_height = m_data->axis(1).size(); // this does not exist for 1d data
     write_header();
     write_data();
     close();
diff --git a/Device/Instrument/Instrument.cpp b/Device/Instrument/Instrument.cpp
index 8f4eedccaa5509be0e8f7ee828625c97d9d4ed69..429fbd3d76d7bbc8c593b1acb79557c1b38d4cdf 100644
--- a/Device/Instrument/Instrument.cpp
+++ b/Device/Instrument/Instrument.cpp
@@ -156,7 +156,7 @@ const IDetector2D& Instrument::detector2D() const
 
 const IAxis& Instrument::getDetectorAxis(size_t index) const
 {
-    return m_detector->getAxis(index);
+    return m_detector->axis(index);
 }
 
 size_t Instrument::getDetectorDimension() const
diff --git a/Device/Instrument/IntensityDataFunctions.cpp b/Device/Instrument/IntensityDataFunctions.cpp
index 76737ae26b883632a79d8a73e1094a051631e991..deae245545b4f501c369d2d818e400c4da345080 100644
--- a/Device/Instrument/IntensityDataFunctions.cpp
+++ b/Device/Instrument/IntensityDataFunctions.cpp
@@ -110,8 +110,8 @@ IntensityDataFunctions::createRearrangedDataSet(const OutputData<double>& data,
     std::unique_ptr<OutputData<double>> output(new OutputData<double>());
 
     // swapping axes if necessary
-    const IAxis& x_axis = data.getAxis(0);
-    const IAxis& y_axis = data.getAxis(1);
+    const IAxis& x_axis = data.axis(0);
+    const IAxis& y_axis = data.axis(1);
     output->addAxis(n == 2 ? x_axis : y_axis);
     output->addAxis(n == 2 ? y_axis : x_axis);
 
@@ -126,7 +126,7 @@ IntensityDataFunctions::createRearrangedDataSet(const OutputData<double>& data,
         };
     } else {
         const size_t rev_axis_i = n % 3;
-        const size_t end_bin = data.getAxis(rev_axis_i).size() - 1;
+        const size_t end_bin = data.axis(rev_axis_i).size() - 1;
         index_mapping = [rev_axis_i, end_bin](std::vector<int>& inds) {
             const int tm_index = inds[rev_axis_i];
             inds[rev_axis_i] = inds[rev_axis_i ^ 1];
@@ -154,7 +154,7 @@ IntensityDataFunctions::createClippedDataSet(const OutputData<double>& origin, d
 
     std::unique_ptr<OutputData<double>> result(new OutputData<double>);
     for (size_t i_axis = 0; i_axis < origin.getRank(); i_axis++) {
-        const IAxis& axis = origin.getAxis(i_axis);
+        const IAxis& axis = origin.axis(i_axis);
         IAxis* new_axis;
         if (i_axis == 0)
             new_axis = axis.createClippedAxis(x1, x2);
@@ -170,7 +170,7 @@ IntensityDataFunctions::createClippedDataSet(const OutputData<double>& origin, d
     while (it_origin != origin.end()) {
         double x = origin.getAxisValue(it_origin.getIndex(), 0);
         double y = origin.getAxisValue(it_origin.getIndex(), 1);
-        if (result->getAxis(0).contains(x) && result->getAxis(1).contains(y)) {
+        if (result->axis(0).contains(x) && result->axis(1).contains(y)) {
             *it_result = *it_origin;
             ++it_result;
         }
@@ -215,15 +215,15 @@ double IntensityDataFunctions::coordinateFromBinf(double value, const IAxis& axi
 
 void IntensityDataFunctions::coordinateToBinf(double& x, double& y, const OutputData<double>& data)
 {
-    x = coordinateToBinf(x, data.getAxis(0));
-    y = coordinateToBinf(y, data.getAxis(1));
+    x = coordinateToBinf(x, data.axis(0));
+    y = coordinateToBinf(y, data.axis(1));
 }
 
 void IntensityDataFunctions::coordinateFromBinf(double& x, double& y,
                                                 const OutputData<double>& data)
 {
-    x = coordinateFromBinf(x, data.getAxis(0));
-    y = coordinateFromBinf(y, data.getAxis(1));
+    x = coordinateFromBinf(x, data.axis(0));
+    y = coordinateFromBinf(y, data.axis(1));
 }
 
 std::vector<std::vector<double>>
@@ -237,8 +237,8 @@ IntensityDataFunctions::create2DArrayfromOutputData(const OutputData<double>& da
     std::vector<std::vector<double>> array_2d;
     std::vector<double> row_vec; // row vector for constructing each row of 2D array
 
-    size_t nrows = data.getAxis(0).size();
-    size_t ncols = data.getAxis(1).size();
+    size_t nrows = data.axis(0).size();
+    size_t ncols = data.axis(1).size();
 
     size_t it = 0; // iterator of 'data'
     for (size_t row = 0; row < nrows; row++) {
diff --git a/Device/Intensity/ArrayUtils.h b/Device/Intensity/ArrayUtils.h
index ea9615f6ef7a3e578135b7e0ae9626b425040739..5822aa67fa9e76cf3baf5acbf7e0dc2905adc66a 100644
--- a/Device/Intensity/ArrayUtils.h
+++ b/Device/Intensity/ArrayUtils.h
@@ -148,8 +148,8 @@ template <class T> decltype(auto) ArrayUtils::createVector2D(const T& data)
     using value_type = typename T::value_type;
     std::vector<std::vector<value_type>> result;
 
-    const size_t nrows = data.getAxis(1).size();
-    const size_t ncols = data.getAxis(0).size();
+    const size_t nrows = data.axis(1).size();
+    const size_t ncols = data.axis(0).size();
 
     result.resize(nrows);
 
diff --git a/Device/Resolution/ConvolutionDetectorResolution.cpp b/Device/Resolution/ConvolutionDetectorResolution.cpp
index 38a5a1cc200a5115ed6f72bf39684142eb36e6bb..5d240d029ded4429acee243a0be1a5ea6d3b6e92 100644
--- a/Device/Resolution/ConvolutionDetectorResolution.cpp
+++ b/Device/Resolution/ConvolutionDetectorResolution.cpp
@@ -89,7 +89,7 @@ void ConvolutionDetectorResolution::apply1dConvolution(OutputData<double>* p_int
         throw Exceptions::LogicErrorException(
             "ConvolutionDetectorResolution::apply1dConvolution() -> Error! "
             "Number of axes for intensity map does not correspond to the dimension of the map.");
-    const IAxis& axis = p_intensity_map->getAxis(0);
+    const IAxis& axis = p_intensity_map->axis(0);
     // Construct source vector from original intensity map
     std::vector<double> source_vector = p_intensity_map->getRawDataVector();
     size_t data_size = source_vector.size();
@@ -125,8 +125,8 @@ void ConvolutionDetectorResolution::apply2dConvolution(OutputData<double>* p_int
         throw Exceptions::LogicErrorException(
             "ConvolutionDetectorResolution::apply2dConvolution() -> Error! "
             "Number of axes for intensity map does not correspond to the dimension of the map.");
-    const IAxis& axis_1 = p_intensity_map->getAxis(0);
-    const IAxis& axis_2 = p_intensity_map->getAxis(1);
+    const IAxis& axis_1 = p_intensity_map->axis(0);
+    const IAxis& axis_2 = p_intensity_map->axis(1);
     size_t axis_size_1 = axis_1.size();
     size_t axis_size_2 = axis_2.size();
     if (axis_size_1 < 2 || axis_size_2 < 2)
diff --git a/GUI/coregui/Models/BeamItems.cpp b/GUI/coregui/Models/BeamItems.cpp
index 81ec800bb178411ccded27ee05c1826a1886d34b..10477822519b77ae3a79d509ffa7f8e74220dcf9 100644
--- a/GUI/coregui/Models/BeamItems.cpp
+++ b/GUI/coregui/Models/BeamItems.cpp
@@ -215,7 +215,7 @@ void SpecularBeamItem::updateWavelength()
     auto item = inclinationAxisGroup()->currentItem();
     auto wl_item = static_cast<SpecularBeamWavelengthItem*>(getItem(P_WAVELENGTH));
     if (auto axis_item = dynamic_cast<PointwiseAxisItem*>(item)) {
-        auto axis = axis_item->getAxis();
+        auto axis = axis_item->axis();
         if (axis && axis_item->getUnitsLabel() == "q-space")
             wl_item->setToRange(getLimits(axis->getMax()));
     } else
diff --git a/GUI/coregui/Models/Data1DViewItem.cpp b/GUI/coregui/Models/Data1DViewItem.cpp
index 3435d3f3de5425a63c9847fa471a820c463ab7c4..3cc8605c6f4c9853cbaea0437215502f0bcd1cb1 100644
--- a/GUI/coregui/Models/Data1DViewItem.cpp
+++ b/GUI/coregui/Models/Data1DViewItem.cpp
@@ -133,8 +133,8 @@ void Data1DViewItem::setAxesRangeToData()
     if (!data)
         return;
 
-    setLowerX(data->getAxis(0).getMin());
-    setUpperX(data->getAxis(0).getMax());
+    setLowerX(data->axis(0).getMin());
+    setUpperX(data->axis(0).getMax());
 
     auto data_range = dataRange(data.get());
     setLowerY(data_range.first);
@@ -154,12 +154,12 @@ QPair<QVector<double>, QVector<double>> Data1DViewItem::graphData(Data1DProperti
         return {};
 
 #if QT_VERSION >= QT_VERSION_CHECK(5, 14, 0)
-    auto centers = data->getAxis(0).getBinCenters();
+    auto centers = data->axis(0).getBinCenters();
     auto values = data->getRawDataVector();
     return {QVector<double>(centers.begin(), centers.end()),
             QVector<double>(values.begin(), values.end())};
 #else
-    return {QVector<double>::fromStdVector(data->getAxis(0).getBinCenters()),
+    return {QVector<double>::fromStdVector(data->axis(0).getBinCenters()),
             QVector<double>::fromStdVector(data->getRawDataVector())};
 #endif
 }
diff --git a/GUI/coregui/Models/InstrumentItems.cpp b/GUI/coregui/Models/InstrumentItems.cpp
index eec3af284157de7c55d56ca164bd5058bcfcd5c7..357f242913f426b0c0efc3a6862476b63ad29213 100644
--- a/GUI/coregui/Models/InstrumentItems.cpp
+++ b/GUI/coregui/Models/InstrumentItems.cpp
@@ -134,7 +134,7 @@ void SpecularInstrumentItem::updateToRealData(const RealDataItem* item)
                                 "of instrument is incompatible with passed data shape.");
 
     QString units = item->getItemValue(RealDataItem::P_NATIVE_DATA_UNITS).toString();
-    const auto& data = item->nativeData()->getOutputData()->getAxis(0);
+    const auto& data = item->nativeData()->getOutputData()->axis(0);
     beamItem()->updateToData(data, units);
 }
 
@@ -151,11 +151,11 @@ bool SpecularInstrumentItem::alignedWith(const RealDataItem* item) const
         if (axis_item->getUnitsLabel() != native_units)
             return false;
 
-        auto instrument_axis = axis_item->getAxis();
+        auto instrument_axis = axis_item->axis();
         if (!instrument_axis)
             return false;
 
-        const auto& native_axis = item->nativeData()->getOutputData()->getAxis(0);
+        const auto& native_axis = item->nativeData()->getOutputData()->axis(0);
         return *instrument_axis == native_axis;
         ;
     }
@@ -170,7 +170,7 @@ std::unique_ptr<IUnitConverter> SpecularInstrumentItem::createUnitConverter() co
             return nullptr;
         Axes::Units native_units = JobItemUtils::axesUnitsFromName(pointwise_axis->getUnitsLabel());
         return std::make_unique<UnitConverterConvSpec>(instrument->beam(),
-                                                       *pointwise_axis->getAxis(), native_units);
+                                                       *pointwise_axis->axis(), native_units);
     } else
         return std::make_unique<UnitConverterConvSpec>(
             instrument->beam(), *axis_item->createAxis(1.0), Axes::Units::DEGREES);
diff --git a/GUI/coregui/Models/IntensityDataItem.cpp b/GUI/coregui/Models/IntensityDataItem.cpp
index c6fb0d59c4ee0f935025c59a998a55d769ff8a98..7677940b165fc8f55d3548417a53a091a647f39e 100644
--- a/GUI/coregui/Models/IntensityDataItem.cpp
+++ b/GUI/coregui/Models/IntensityDataItem.cpp
@@ -120,13 +120,13 @@ double IntensityDataItem::getUpperX() const
 double IntensityDataItem::getXmin() const
 {
     const double defaultXmin(0.0);
-    return m_data ? m_data->getAxis(0).getMin() : defaultXmin;
+    return m_data ? m_data->axis(0).getMin() : defaultXmin;
 }
 
 double IntensityDataItem::getXmax() const
 {
     const double defaultXmax(1.0);
-    return m_data ? m_data->getAxis(0).getMax() : defaultXmax;
+    return m_data ? m_data->axis(0).getMax() : defaultXmax;
 }
 
 double IntensityDataItem::getLowerY() const
@@ -142,13 +142,13 @@ double IntensityDataItem::getUpperY() const
 double IntensityDataItem::getYmin() const
 {
     const double defaultYmin(0.0);
-    return m_data ? m_data->getAxis(1).getMin() : defaultYmin;
+    return m_data ? m_data->axis(1).getMin() : defaultYmin;
 }
 
 double IntensityDataItem::getYmax() const
 {
     const double defaultYmax(1.0);
-    return m_data ? m_data->getAxis(1).getMax() : defaultYmax;
+    return m_data ? m_data->axis(1).getMax() : defaultYmax;
 }
 
 double IntensityDataItem::getLowerZ() const
@@ -312,9 +312,9 @@ void IntensityDataItem::updateAxesZoomLevel()
         setUpperY(getYmax());
     }
 
-    const int nx = static_cast<int>(m_data->getAxis(0).size());
+    const int nx = static_cast<int>(m_data->axis(0).size());
     xAxisItem()->setItemValue(BasicAxisItem::P_NBINS, nx);
-    const int ny = static_cast<int>(m_data->getAxis(1).size());
+    const int ny = static_cast<int>(m_data->axis(1).size());
     yAxisItem()->setItemValue(BasicAxisItem::P_NBINS, ny);
 }
 
@@ -323,10 +323,10 @@ void IntensityDataItem::updateAxesZoomLevel()
 void IntensityDataItem::updateAxesLabels()
 {
     if (getXaxisTitle().isEmpty())
-        setXaxisTitle(QString::fromStdString(m_data->getAxis(0).getName()));
+        setXaxisTitle(QString::fromStdString(m_data->axis(0).getName()));
 
     if (getYaxisTitle().isEmpty())
-        setYaxisTitle(QString::fromStdString(m_data->getAxis(1).getName()));
+        setYaxisTitle(QString::fromStdString(m_data->axis(1).getName()));
 }
 
 //! Sets min,max values for z-axis, if axes is not locked, and ranges are not yet set.
diff --git a/GUI/coregui/Models/JobModelFunctions.cpp b/GUI/coregui/Models/JobModelFunctions.cpp
index d67f9d1e78a068536a80b0b39abd5bb84181429c..5d0bce120985170b6624ac4a20b48e7f7a601406 100644
--- a/GUI/coregui/Models/JobModelFunctions.cpp
+++ b/GUI/coregui/Models/JobModelFunctions.cpp
@@ -132,9 +132,9 @@ void JobModelFunctions::setupJobItemInstrument(JobItem* jobItem, const Instrumen
     auto axis_origin = getPointwiseAxisItem(spec_from);
     const QString current_axis_type = spec_from->beamItem()->inclinationAxisGroup()->currentType();
     if (current_axis_type == "PointwiseAxis")
-        spec_to->beamItem()->updateToData(*axis_origin->getAxis(), axis_origin->getUnitsLabel());
+        spec_to->beamItem()->updateToData(*axis_origin->axis(), axis_origin->getUnitsLabel());
     else if (axis_origin->containsNonXMLData())
-        getPointwiseAxisItem(spec_to)->init(*axis_origin->getAxis(), axis_origin->getUnitsLabel());
+        getPointwiseAxisItem(spec_to)->init(*axis_origin->axis(), axis_origin->getUnitsLabel());
 }
 
 //! Setup items intended for storing results of the job.
diff --git a/GUI/coregui/Models/PointwiseAxisItem.cpp b/GUI/coregui/Models/PointwiseAxisItem.cpp
index 851e8bfa871c3abf3521fd8aa1b5169e5f2eb2e9..9d0fc5dfb4f126e51fbbdce56d54d9fbcd275157 100644
--- a/GUI/coregui/Models/PointwiseAxisItem.cpp
+++ b/GUI/coregui/Models/PointwiseAxisItem.cpp
@@ -52,7 +52,7 @@ void PointwiseAxisItem::init(const IAxis& axis, const QString& units_label)
     findInstrument();
 }
 
-const IAxis* PointwiseAxisItem::getAxis() const
+const IAxis* PointwiseAxisItem::axis() const
 {
     return m_axis.get();
 }
@@ -84,7 +84,7 @@ bool PointwiseAxisItem::load(const QString& projectDir)
     if (!data)
         return false;
 
-    m_axis = std::unique_ptr<IAxis>(data->getAxis(0).clone());
+    m_axis = std::unique_ptr<IAxis>(data->axis(0).clone());
     findInstrument();
     setLastModified(QDateTime::currentDateTime());
     return true;
diff --git a/GUI/coregui/Models/PointwiseAxisItem.h b/GUI/coregui/Models/PointwiseAxisItem.h
index 0de7c0efce71dc574f8d91a9b3dcd98756f030a4..ecb4dff14841fac61424894f21212dc315b31bdc 100644
--- a/GUI/coregui/Models/PointwiseAxisItem.h
+++ b/GUI/coregui/Models/PointwiseAxisItem.h
@@ -34,7 +34,7 @@ public:
 
     // setters, getters
     void init(const IAxis& axis, const QString& units_label);
-    const IAxis* getAxis() const;
+    const IAxis* axis() const;
     const QString getUnitsLabel() const;
 
     // virtual function overloads
diff --git a/GUI/coregui/Models/SpecularDataItem.cpp b/GUI/coregui/Models/SpecularDataItem.cpp
index d7111cab1838987957a2305b8793e727274bf6bd..24bea0d67b505de4c096c1d29feb3144345c469b 100644
--- a/GUI/coregui/Models/SpecularDataItem.cpp
+++ b/GUI/coregui/Models/SpecularDataItem.cpp
@@ -72,13 +72,13 @@ double SpecularDataItem::getUpperX() const
 double SpecularDataItem::getXmin() const
 {
     const double defaultXmin(0.0);
-    return m_data ? m_data->getAxis(0).getMin() : defaultXmin;
+    return m_data ? m_data->axis(0).getMin() : defaultXmin;
 }
 
 double SpecularDataItem::getXmax() const
 {
     const double defaultXmax(1.0);
-    return m_data ? m_data->getAxis(0).getMax() : defaultXmax;
+    return m_data ? m_data->axis(0).getMax() : defaultXmax;
 }
 
 double SpecularDataItem::getLowerY() const
@@ -198,7 +198,7 @@ void SpecularDataItem::updateAxesZoomLevel()
         setUpperY(getYmax());
     }
 
-    const int nx = static_cast<int>(m_data->getAxis(0).size());
+    const int nx = static_cast<int>(m_data->axis(0).size());
     xAxisItem()->setItemValue(BasicAxisItem::P_NBINS, nx);
 }
 
diff --git a/GUI/coregui/Models/TransformFromDomain.cpp b/GUI/coregui/Models/TransformFromDomain.cpp
index ec0c12a018ba55d731fe6dbcf65ccf92d61e160a..3e63421654839800727620322ed1593ec27d4181 100644
--- a/GUI/coregui/Models/TransformFromDomain.cpp
+++ b/GUI/coregui/Models/TransformFromDomain.cpp
@@ -388,8 +388,8 @@ void TransformFromDomain::setSphericalDetector(SphericalDetectorItem* detector_i
                                                const SphericalDetector& detector)
 {
     // Axes
-    const IAxis& phi_axis = detector.getAxis(0);
-    const IAxis& alpha_axis = detector.getAxis(1);
+    const IAxis& phi_axis = detector.axis(0);
+    const IAxis& alpha_axis = detector.axis(1);
 
     BasicAxisItem* phiAxisItem =
         dynamic_cast<BasicAxisItem*>(detector_item->getItem(SphericalDetectorItem::P_PHI_AXIS));
diff --git a/GUI/coregui/Views/ImportDataWidgets/ImportDataUtils.cpp b/GUI/coregui/Views/ImportDataWidgets/ImportDataUtils.cpp
index e8a5881d3b4c050369d1d6e790b7bf4e51d2cdcf..85b4b4e76c33a85f225c052184bc866638d8c2e2 100644
--- a/GUI/coregui/Views/ImportDataWidgets/ImportDataUtils.cpp
+++ b/GUI/coregui/Views/ImportDataWidgets/ImportDataUtils.cpp
@@ -151,7 +151,7 @@ ImportDataUtils::CreateSimplifiedOutputData(const OutputData<double>& data)
 
     std::unique_ptr<OutputData<double>> result(new OutputData<double>);
     for (size_t i = 0; i < data_rank; ++i) {
-        const IAxis& axis = data.getAxis(i);
+        const IAxis& axis = data.axis(i);
         const size_t axis_size = axis.size();
         const double min = 0.0;
         const double max = axis_size;
diff --git a/GUI/coregui/Views/InstrumentWidgets/InstrumentViewActions.cpp b/GUI/coregui/Views/InstrumentWidgets/InstrumentViewActions.cpp
index 4f38b65c1d7a8d0a10e416fbd18e7787a72dc01a..b47f9f2d51b106b81e85348546cac49de25aa0c1 100644
--- a/GUI/coregui/Views/InstrumentWidgets/InstrumentViewActions.cpp
+++ b/GUI/coregui/Views/InstrumentWidgets/InstrumentViewActions.cpp
@@ -141,7 +141,7 @@ void InstrumentViewActions::onCloneInstrument()
                                                      ->beamItem()
                                                      ->inclinationAxisGroup()
                                                      ->getItemOfType("PointwiseAxis"));
-            acceptor_axis->init(*donor_axis->getAxis(), donor_axis->getUnitsLabel());
+            acceptor_axis->init(*donor_axis->axis(), donor_axis->getUnitsLabel());
         }
     }
 }
diff --git a/GUI/coregui/Views/MaskWidgets/MaskUnitsConverter.cpp b/GUI/coregui/Views/MaskWidgets/MaskUnitsConverter.cpp
index a575f12b5bfbd8433d4750e65764db6655af4623..681f3f49d19aa9b5cb566172097de570d9245475 100644
--- a/GUI/coregui/Views/MaskWidgets/MaskUnitsConverter.cpp
+++ b/GUI/coregui/Views/MaskWidgets/MaskUnitsConverter.cpp
@@ -117,9 +117,9 @@ double MaskUnitsConverter::convert(double value, int axis_index)
     ASSERT(axis_index == 0 || axis_index == 1);
 
     if (m_direction == TO_NBINS) {
-        return IntensityDataFunctions::coordinateToBinf(value, m_data->getAxis(axis_index));
+        return IntensityDataFunctions::coordinateToBinf(value, m_data->axis(axis_index));
     } else if (m_direction == FROM_NBINS) {
-        return IntensityDataFunctions::coordinateFromBinf(value, m_data->getAxis(axis_index));
+        return IntensityDataFunctions::coordinateFromBinf(value, m_data->axis(axis_index));
     }
     throw GUIHelpers::Error("MaskUnitsConverter::convertX() -> Error. Unknown conversion");
 }
diff --git a/Tests/Functional/Python/PyCore/intensitydata_io.py b/Tests/Functional/Python/PyCore/intensitydata_io.py
index 72ab0c9cd71dbd1d8b53375f480f00a02c3fcd9d..73585a7440802c9e28f2cc4fb3fd1a38fb7df09b 100644
--- a/Tests/Functional/Python/PyCore/intensitydata_io.py
+++ b/Tests/Functional/Python/PyCore/intensitydata_io.py
@@ -22,7 +22,7 @@ def is_the_same_data(data1, data2):
     if data1.getRank() != data2.getRank():
         return False
     for i in range(0, data1.getRank()):
-        if data1.getAxis(i) != data2.getAxis(i):
+        if data1.axis(i) != data2.axis(i):
             return False
     for i in range(0, data1.getAllocatedSize()):
         if data1[i] != data2[i]:
diff --git a/Tests/Functional/Python/PyCore/intensitydata_io_tiff.py b/Tests/Functional/Python/PyCore/intensitydata_io_tiff.py
index 516da5129568582e0bb946fc7d1a2217fc07d9ed..41140fc918fabc6c3d18fbf13766492cecf8a966 100644
--- a/Tests/Functional/Python/PyCore/intensitydata_io_tiff.py
+++ b/Tests/Functional/Python/PyCore/intensitydata_io_tiff.py
@@ -23,7 +23,7 @@ def is_the_same_data(data1, data2):
     if data1.getRank() != data2.getRank():
         return False
     for i in range(0, data1.getRank()):
-        if data1.getAxis(i) != data2.getAxis(i):
+        if data1.axis(i) != data2.axis(i):
             return False
     for i in range(0, data1.getAllocatedSize()):
         if data1[i] != data2[i]:
diff --git a/Tests/Functional/Python/PyCore/utils.py b/Tests/Functional/Python/PyCore/utils.py
index 90ee5bc2dad8bbac1b6503c4195fd05fe2b983f6..25dbc1c7213681ad2a4edf9d974c8fbb68999ee4 100644
--- a/Tests/Functional/Python/PyCore/utils.py
+++ b/Tests/Functional/Python/PyCore/utils.py
@@ -58,10 +58,10 @@ def plot_intensity_data(intensity):
     import matplotlib, pylab
     data = intensity.getArray() + 1
     # data = numpy.abs(intensity.getArray())
-    phi_min = rad2deg(intensity.getAxis(0).getMin())
-    phi_max = rad2deg(intensity.getAxis(0).getMax())
-    alpha_min = rad2deg(intensity.getAxis(1).getMin())
-    alpha_max = rad2deg(intensity.getAxis(1).getMax())
+    phi_min = rad2deg(intensity.axis(0).getMin())
+    phi_max = rad2deg(intensity.axis(0).getMax())
+    alpha_min = rad2deg(intensity.axis(1).getMin())
+    alpha_max = rad2deg(intensity.axis(1).getMax())
     im = pylab.imshow(data, norm=matplotlib.colors.LogNorm(),
                       extent=[phi_min, phi_max, alpha_min, alpha_max])
     cb = pylab.colorbar(im)
diff --git a/Tests/Functional/Python/PyPersistence/example_template.py b/Tests/Functional/Python/PyPersistence/example_template.py
index 1aade7b6345d364d9204d91f1584421de1211fe9..25b8ff6c46205cdcb28312b4a09ff5337a970fa6 100644
--- a/Tests/Functional/Python/PyPersistence/example_template.py
+++ b/Tests/Functional/Python/PyPersistence/example_template.py
@@ -65,8 +65,8 @@ def get_simulation_GenericExample():
     detector = simulation.instrument().getDetector()
 
     # preserving axes range, making less bins
-    ax = detector.getAxis(0)
-    ay = detector.getAxis(1)
+    ax = detector.axis(0)
+    ay = detector.axis(1)
     xmin, xmax = ax.getMin(), ax.getMax()
     ymin, ymax = ay.getMin(), ay.getMax()
     simulation.setDetectorParameters(5, xmin, xmax, 6, ymin, ymax)
diff --git a/Tests/UnitTests/Core/Axes/Histogram1DTest.cpp b/Tests/UnitTests/Core/Axes/Histogram1DTest.cpp
index 33fb67d06b3723e002bd83d85d854ab5927a323d..faacee1e7ef9a74433d69347a2774bc6ba5fdf6f 100644
--- a/Tests/UnitTests/Core/Axes/Histogram1DTest.cpp
+++ b/Tests/UnitTests/Core/Axes/Histogram1DTest.cpp
@@ -139,8 +139,8 @@ TEST_F(Histogram1DTest, CreateHistogram)
     std::unique_ptr<IHistogram> hist(IHistogram::createHistogram(data));
     EXPECT_EQ(size_t(1), hist->getRank());
     EXPECT_EQ(data.getAllocatedSize(), hist->getNbinsX());
-    EXPECT_EQ(data.getAxis(0).getMin(), hist->getXmin());
-    EXPECT_EQ(data.getAxis(0).getMax(), hist->getXmax());
+    EXPECT_EQ(data.axis(0).getMin(), hist->getXmin());
+    EXPECT_EQ(data.axis(0).getMax(), hist->getXmax());
     for (size_t i = 0; i < hist->getTotalNumberOfBins(); ++i) {
         EXPECT_EQ(data[i], hist->getBinContent(i));
         EXPECT_EQ(data[i], hist->getBinAverage(i));
@@ -161,8 +161,8 @@ TEST_F(Histogram1DTest, CreateOutputData)
     std::unique_ptr<OutputData<double>> data(hist.createOutputData(IHistogram::DataType::INTEGRAL));
     EXPECT_EQ(size_t(1), data->getRank());
     EXPECT_EQ(data->getAllocatedSize(), hist.getNbinsX());
-    EXPECT_EQ(data->getAxis(0).getMin(), hist.getXmin());
-    EXPECT_EQ(data->getAxis(0).getMax(), hist.getXmax());
+    EXPECT_EQ(data->axis(0).getMin(), hist.getXmin());
+    EXPECT_EQ(data->axis(0).getMax(), hist.getXmax());
     for (size_t i = 0; i < data->getAllocatedSize(); ++i) {
         EXPECT_EQ(4.0, (*data)[i]);
     }
diff --git a/Tests/UnitTests/Core/Axes/Histogram2DTest.cpp b/Tests/UnitTests/Core/Axes/Histogram2DTest.cpp
index 06b43d1308be27223d0c26a9ab2b7769569befb3..2f62f39ad7c2fa455bee47653ebeede09c1ae715 100644
--- a/Tests/UnitTests/Core/Axes/Histogram2DTest.cpp
+++ b/Tests/UnitTests/Core/Axes/Histogram2DTest.cpp
@@ -346,10 +346,10 @@ TEST_F(Histogram2DTest, CreateHistogram)
     std::unique_ptr<IHistogram> h2(IHistogram::createHistogram(data));
     EXPECT_EQ(size_t(2), h2->getRank());
     EXPECT_EQ(data.getAllocatedSize(), h2->getTotalNumberOfBins());
-    EXPECT_EQ(data.getAxis(0).getMin(), h2->getXmin());
-    EXPECT_EQ(data.getAxis(0).getMax(), h2->getXmax());
-    EXPECT_EQ(data.getAxis(1).getMin(), h2->getYmin());
-    EXPECT_EQ(data.getAxis(1).getMax(), h2->getYmax());
+    EXPECT_EQ(data.axis(0).getMin(), h2->getXmin());
+    EXPECT_EQ(data.axis(0).getMax(), h2->getXmax());
+    EXPECT_EQ(data.axis(1).getMin(), h2->getYmin());
+    EXPECT_EQ(data.axis(1).getMax(), h2->getYmax());
     for (size_t i = 0; i < h2->getTotalNumberOfBins(); ++i) {
         EXPECT_EQ(data[i], h2->getBinContent(i));
         EXPECT_EQ(data[i], h2->getBinAverage(i));
@@ -373,10 +373,10 @@ TEST_F(Histogram2DTest, CreateOutputData)
     std::unique_ptr<OutputData<double>> data(h2.createOutputData(IHistogram::DataType::INTEGRAL));
     EXPECT_EQ(size_t(2), data->getRank());
     EXPECT_EQ(data->getAllocatedSize(), h2.getTotalNumberOfBins());
-    EXPECT_EQ(data->getAxis(0).getMin(), h2.getXmin());
-    EXPECT_EQ(data->getAxis(0).getMax(), h2.getXmax());
-    EXPECT_EQ(data->getAxis(1).getMin(), h2.getYmin());
-    EXPECT_EQ(data->getAxis(1).getMax(), h2.getYmax());
+    EXPECT_EQ(data->axis(0).getMin(), h2.getXmin());
+    EXPECT_EQ(data->axis(0).getMax(), h2.getXmax());
+    EXPECT_EQ(data->axis(1).getMin(), h2.getYmin());
+    EXPECT_EQ(data->axis(1).getMax(), h2.getYmax());
     for (size_t i = 0; i < data->getAllocatedSize(); ++i) {
         EXPECT_EQ(double(i), (*data)[i]);
     }
diff --git a/Tests/UnitTests/Core/Axes/UnitConverter1DTest.cpp b/Tests/UnitTests/Core/Axes/UnitConverter1DTest.cpp
index db0291f8dd15ccf3b8174a15b971615fe9babc5b..ae3d0121287c2d74dbd4b8722f71a4151d5426c3 100644
--- a/Tests/UnitTests/Core/Axes/UnitConverter1DTest.cpp
+++ b/Tests/UnitTests/Core/Axes/UnitConverter1DTest.cpp
@@ -98,13 +98,13 @@ void UnitConverter1DTest::checkConventionalConverter(const UnitConverter1D& test
 
     // NBINS
     auto data_nbins = test_object.createConvertedData(fake_data, Axes::Units::NBINS);
-    EXPECT_EQ(data_nbins->getAxis(0), *axis_nbins);
+    EXPECT_EQ(data_nbins->axis(0), *axis_nbins);
     EXPECT_EQ(data_nbins->getAllocatedSize(), axis_nbins->size());
     EXPECT_EQ(raw_fake, data_nbins->getRawDataVector());
 
     // RQ4
     auto data_rq4 = test_object.createConvertedData(fake_data, Axes::Units::RQ4);
-    EXPECT_EQ(data_rq4->getAxis(0), *axis_rq4);
+    EXPECT_EQ(data_rq4->axis(0), *axis_rq4);
     auto raw_data_rq4 = data_rq4->getRawDataVector();
     EXPECT_EQ(raw_data_rq4.size(), raw_fake.size());
     EXPECT_EQ(raw_data_rq4.size(), axis_rq4->size());
@@ -166,13 +166,13 @@ void UnitConverter1DTest::checkQSpecConverter(const UnitConverter1D& test_object
 
     // NBINS
     auto data_nbins = test_object.createConvertedData(fake_data, Axes::Units::NBINS);
-    EXPECT_EQ(data_nbins->getAxis(0), *axis_nbins);
+    EXPECT_EQ(data_nbins->axis(0), *axis_nbins);
     EXPECT_EQ(data_nbins->getAllocatedSize(), axis_nbins->size());
     EXPECT_EQ(raw_fake, data_nbins->getRawDataVector());
 
     // RQ4
     auto data_rq4 = test_object.createConvertedData(fake_data, Axes::Units::RQ4);
-    EXPECT_EQ(data_rq4->getAxis(0), *axis_rq4);
+    EXPECT_EQ(data_rq4->axis(0), *axis_rq4);
     auto raw_data_rq4 = data_rq4->getRawDataVector();
     EXPECT_EQ(raw_data_rq4.size(), raw_fake.size());
     EXPECT_EQ(raw_data_rq4.size(), axis_rq4->size());
diff --git a/Tests/UnitTests/Core/DataStructure/ArrayUtilsTest.cpp b/Tests/UnitTests/Core/DataStructure/ArrayUtilsTest.cpp
index 5ac47152dec8bfd5132fe8e8f9bed521c5a50245..9460c7b2588fd8ed357bd1303852b28ef1808522 100644
--- a/Tests/UnitTests/Core/DataStructure/ArrayUtilsTest.cpp
+++ b/Tests/UnitTests/Core/DataStructure/ArrayUtilsTest.cpp
@@ -14,8 +14,8 @@ TEST_F(ArrayUtilsTest, OutputDataFromVector1D)
 
     EXPECT_EQ(data1->getAllocatedSize(), vec_double.size());
     EXPECT_EQ(data1->getRawDataVector(), vec_double);
-    EXPECT_EQ(data1->getAxis(0).getMin(), 0.0);
-    EXPECT_EQ(data1->getAxis(0).getMax(), 4.0);
+    EXPECT_EQ(data1->axis(0).getMin(), 0.0);
+    EXPECT_EQ(data1->axis(0).getMax(), 4.0);
 
     // int
     const std::vector<int> vec_int = {10, 20, 30};
@@ -23,8 +23,8 @@ TEST_F(ArrayUtilsTest, OutputDataFromVector1D)
 
     EXPECT_EQ(data2->getAllocatedSize(), vec_int.size());
     EXPECT_EQ(data2->getRawDataVector(), vec_int);
-    EXPECT_EQ(data2->getAxis(0).getMin(), 0.0);
-    EXPECT_EQ(data2->getAxis(0).getMax(), 3.0);
+    EXPECT_EQ(data2->axis(0).getMin(), 0.0);
+    EXPECT_EQ(data2->axis(0).getMax(), 3.0);
 }
 
 TEST_F(ArrayUtilsTest, OutputDataToVector1D)
@@ -48,12 +48,12 @@ TEST_F(ArrayUtilsTest, OutputDataFromVector2D)
 
     EXPECT_EQ(data->getRank(), 2u);
     EXPECT_EQ(data->getAllocatedSize(), 12u);
-    EXPECT_EQ(data->getAxis(0).size(), 4u);
-    EXPECT_EQ(data->getAxis(0).getMin(), 0.0);
-    EXPECT_EQ(data->getAxis(0).getMax(), 4.0);
-    EXPECT_EQ(data->getAxis(1).size(), 3u);
-    EXPECT_EQ(data->getAxis(1).getMin(), 0.0);
-    EXPECT_EQ(data->getAxis(1).getMax(), 3.0);
+    EXPECT_EQ(data->axis(0).size(), 4u);
+    EXPECT_EQ(data->axis(0).getMin(), 0.0);
+    EXPECT_EQ(data->axis(0).getMax(), 4.0);
+    EXPECT_EQ(data->axis(1).size(), 3u);
+    EXPECT_EQ(data->axis(1).getMin(), 0.0);
+    EXPECT_EQ(data->axis(1).getMax(), 3.0);
 
     const std::vector<double> expected = {8.0,  4.0, 0.0, 9.0,  5.0, 1.0,
                                           10.0, 6.0, 2.0, 11.0, 7.0, 3.0};
diff --git a/Tests/UnitTests/Core/DataStructure/IOStrategyTest.cpp b/Tests/UnitTests/Core/DataStructure/IOStrategyTest.cpp
index fc9774f67edd9a4659c9ec720d156de84c33cbfd..f5ecfacbe9473ced627fd551ea9f5be5be112c8a 100644
--- a/Tests/UnitTests/Core/DataStructure/IOStrategyTest.cpp
+++ b/Tests/UnitTests/Core/DataStructure/IOStrategyTest.cpp
@@ -30,9 +30,9 @@ TEST_F(IOStrategyTest, TestINTStrategies)
     auto result = std::unique_ptr<OutputData<double>>(read_int_strategy.readOutputData(ss));
 
     auto compare_axis = [this, &result](size_t index) {
-        EXPECT_EQ(m_model_data.getAxis(index).size(), result->getAxis(index).size());
-        EXPECT_EQ(m_model_data.getAxis(index).getMin(), result->getAxis(index).getMin());
-        EXPECT_EQ(m_model_data.getAxis(index).getMax(), result->getAxis(index).getMax());
+        EXPECT_EQ(m_model_data.axis(index).size(), result->axis(index).size());
+        EXPECT_EQ(m_model_data.axis(index).getMin(), result->axis(index).getMin());
+        EXPECT_EQ(m_model_data.axis(index).getMax(), result->axis(index).getMax());
     };
 
     EXPECT_EQ(m_model_data.getRank(), result->getRank());
diff --git a/Tests/UnitTests/Core/DataStructure/IntensityDataFunctionsTest.cpp b/Tests/UnitTests/Core/DataStructure/IntensityDataFunctionsTest.cpp
index 982d1c2639e1ea52b728808038fbe86e4142095d..dc851b5e47563f3ebe1ac5c4097ab5561f0043a4 100644
--- a/Tests/UnitTests/Core/DataStructure/IntensityDataFunctionsTest.cpp
+++ b/Tests/UnitTests/Core/DataStructure/IntensityDataFunctionsTest.cpp
@@ -57,12 +57,12 @@ TEST_F(IntensityDataFunctionsTest, createRearrangedDataSet)
     std::unique_ptr<OutputData<double>> output_data =
         IntensityDataFunctions::createRearrangedDataSet(input_data, 5);
 
-    EXPECT_EQ(3.0, output_data->getAxis(0).getBinBoundaries().front());
-    EXPECT_EQ(4.0, output_data->getAxis(0).getBinBoundaries().back());
-    EXPECT_EQ(1.0, output_data->getAxis(1).getBinBoundaries().front());
-    EXPECT_EQ(2.0, output_data->getAxis(1).getBinBoundaries().back());
-    EXPECT_EQ(size_t(3), output_data->getAxis(0).size());
-    EXPECT_EQ(size_t(2), output_data->getAxis(1).size());
+    EXPECT_EQ(3.0, output_data->axis(0).getBinBoundaries().front());
+    EXPECT_EQ(4.0, output_data->axis(0).getBinBoundaries().back());
+    EXPECT_EQ(1.0, output_data->axis(1).getBinBoundaries().front());
+    EXPECT_EQ(2.0, output_data->axis(1).getBinBoundaries().back());
+    EXPECT_EQ(size_t(3), output_data->axis(0).size());
+    EXPECT_EQ(size_t(2), output_data->axis(1).size());
 
     EXPECT_EQ(input_data[2], (*output_data)[0]);
     EXPECT_EQ(input_data[5], (*output_data)[1]);
@@ -73,12 +73,12 @@ TEST_F(IntensityDataFunctionsTest, createRearrangedDataSet)
 
     output_data = IntensityDataFunctions::createRearrangedDataSet(input_data, -6);
 
-    EXPECT_EQ(1.0, output_data->getAxis(0).getBinBoundaries().front());
-    EXPECT_EQ(2.0, output_data->getAxis(0).getBinBoundaries().back());
-    EXPECT_EQ(3.0, output_data->getAxis(1).getBinBoundaries().front());
-    EXPECT_EQ(4.0, output_data->getAxis(1).getBinBoundaries().back());
-    EXPECT_EQ(size_t(2), output_data->getAxis(0).size());
-    EXPECT_EQ(size_t(3), output_data->getAxis(1).size());
+    EXPECT_EQ(1.0, output_data->axis(0).getBinBoundaries().front());
+    EXPECT_EQ(2.0, output_data->axis(0).getBinBoundaries().back());
+    EXPECT_EQ(3.0, output_data->axis(1).getBinBoundaries().front());
+    EXPECT_EQ(4.0, output_data->axis(1).getBinBoundaries().back());
+    EXPECT_EQ(size_t(2), output_data->axis(0).size());
+    EXPECT_EQ(size_t(3), output_data->axis(1).size());
 
     EXPECT_EQ(input_data[5], (*output_data)[0]);
     EXPECT_EQ(input_data[4], (*output_data)[1]);
@@ -89,12 +89,12 @@ TEST_F(IntensityDataFunctionsTest, createRearrangedDataSet)
 
     output_data = IntensityDataFunctions::createRearrangedDataSet(input_data, 3);
 
-    EXPECT_EQ(3.0, output_data->getAxis(0).getBinBoundaries().front());
-    EXPECT_EQ(4.0, output_data->getAxis(0).getBinBoundaries().back());
-    EXPECT_EQ(1.0, output_data->getAxis(1).getBinBoundaries().front());
-    EXPECT_EQ(2.0, output_data->getAxis(1).getBinBoundaries().back());
-    EXPECT_EQ(size_t(3), output_data->getAxis(0).size());
-    EXPECT_EQ(size_t(2), output_data->getAxis(1).size());
+    EXPECT_EQ(3.0, output_data->axis(0).getBinBoundaries().front());
+    EXPECT_EQ(4.0, output_data->axis(0).getBinBoundaries().back());
+    EXPECT_EQ(1.0, output_data->axis(1).getBinBoundaries().front());
+    EXPECT_EQ(2.0, output_data->axis(1).getBinBoundaries().back());
+    EXPECT_EQ(size_t(3), output_data->axis(0).size());
+    EXPECT_EQ(size_t(2), output_data->axis(1).size());
 
     EXPECT_EQ(input_data[3], (*output_data)[0]);
     EXPECT_EQ(input_data[0], (*output_data)[1]);
@@ -157,8 +157,8 @@ TEST_F(IntensityDataFunctionsTest, create2DArrayfromOutputDataTest)
     out_data.addAxis("axis1", 3, 3.0, 4.0);
     EXPECT_EQ(6u, out_data.getAllocatedSize());
 
-    EXPECT_EQ(2u, out_data.getAxis(0).size()); // no. of rows
-    EXPECT_EQ(3u, out_data.getAxis(1).size()); // no. of cols
+    EXPECT_EQ(2u, out_data.axis(0).size()); // no. of rows
+    EXPECT_EQ(3u, out_data.axis(1).size()); // no. of cols
 
     std::vector<double> arr_in{1, 2, 3, 4, 5, 6};
     out_data.setRawDataVector(arr_in);
diff --git a/Tests/UnitTests/Core/Detector/SpecularDetector1DTest.cpp b/Tests/UnitTests/Core/Detector/SpecularDetector1DTest.cpp
index dc91cd02e85b99ba6736400b8bf437b4556ceac3..e015857b32f1dfab34207cc7307bc4ae2fced30b 100644
--- a/Tests/UnitTests/Core/Detector/SpecularDetector1DTest.cpp
+++ b/Tests/UnitTests/Core/Detector/SpecularDetector1DTest.cpp
@@ -23,8 +23,8 @@ TEST_F(SpecularDetectorTest, basicBehaviour)
 
     // checking size and axis
     EXPECT_EQ(1u, detector.dimension());
-    EXPECT_EQ(axis.getMin(), detector.getAxis(0).getMin());
-    EXPECT_EQ(axis.getMax(), detector.getAxis(0).getMax());
+    EXPECT_EQ(axis.getMin(), detector.axis(0).getMin());
+    EXPECT_EQ(axis.getMax(), detector.axis(0).getMax());
 
     // throwing exceptions
     OutputData<double>* p_intensity_map(nullptr);
@@ -39,9 +39,9 @@ TEST_F(SpecularDetectorTest, createDetectorMap)
 
     // creating map in default units, which are radians and checking axes
     auto data = detector.createDetectorMap();
-    EXPECT_EQ(data->getAxis(0).size(), 10u);
-    EXPECT_EQ(data->getAxis(0).getMin(), 1.0 * Units::deg);
-    EXPECT_EQ(data->getAxis(0).getMax(), 10.0 * Units::deg);
+    EXPECT_EQ(data->axis(0).size(), 10u);
+    EXPECT_EQ(data->axis(0).getMin(), 1.0 * Units::deg);
+    EXPECT_EQ(data->axis(0).getMax(), 10.0 * Units::deg);
 }
 
 TEST_F(SpecularDetectorTest, Clone)
@@ -51,9 +51,9 @@ TEST_F(SpecularDetectorTest, Clone)
     std::unique_ptr<SpecularDetector1D> clone(detector.clone());
 
     const auto data = clone->createDetectorMap();
-    EXPECT_EQ(data->getAxis(0).size(), 5u);
-    EXPECT_EQ(data->getAxis(0).getMin(), 1.0 * Units::deg);
-    EXPECT_EQ(data->getAxis(0).getMax(), 10.0 * Units::deg);
+    EXPECT_EQ(data->axis(0).size(), 5u);
+    EXPECT_EQ(data->axis(0).getMin(), 1.0 * Units::deg);
+    EXPECT_EQ(data->axis(0).getMax(), 10.0 * Units::deg);
 
     EXPECT_EQ(nullptr, clone->detectorResolution());
     EXPECT_EQ(nullptr, clone->detectorMask());
diff --git a/Tests/UnitTests/Core/Detector/SphericalDetectorTest.cpp b/Tests/UnitTests/Core/Detector/SphericalDetectorTest.cpp
index bd363f72a915cfc3cd0bffebb95c2fbec8cc612d..128d2551d3435343261cb32242a8539f95fa22cb 100644
--- a/Tests/UnitTests/Core/Detector/SphericalDetectorTest.cpp
+++ b/Tests/UnitTests/Core/Detector/SphericalDetectorTest.cpp
@@ -34,7 +34,7 @@ TEST_F(SphericalDetectorTest, initialState)
     EXPECT_EQ(nullptr, detector.regionOfInterest());
 
     // behavior
-    ASSERT_THROW(detector.getAxis(0), std::runtime_error);
+    ASSERT_THROW(detector.axis(0), std::runtime_error);
     OutputData<double>* p_intensity_map(nullptr);
     ASSERT_THROW(detector.applyDetectorResolution(p_intensity_map), std::runtime_error);
 }
@@ -50,22 +50,22 @@ TEST_F(SphericalDetectorTest, constructionWithAxes)
 
     // checking dimension and axes
     EXPECT_EQ(2u, detector.dimension());
-    EXPECT_EQ(axis0.getMin(), detector.getAxis(0).getMin());
-    EXPECT_EQ(axis0.getMax(), detector.getAxis(0).getMax());
-    EXPECT_EQ(axis1.getMin(), detector.getAxis(1).getMin());
-    EXPECT_EQ(axis1.getMax(), detector.getAxis(1).getMax());
+    EXPECT_EQ(axis0.getMin(), detector.axis(0).getMin());
+    EXPECT_EQ(axis0.getMax(), detector.axis(0).getMax());
+    EXPECT_EQ(axis1.getMin(), detector.axis(1).getMin());
+    EXPECT_EQ(axis1.getMax(), detector.axis(1).getMax());
 }
 
 // Construction of the detector via classical constructor.
 TEST_F(SphericalDetectorTest, constructionWithParameters)
 {
     SphericalDetector detector(10, -1.0, 1.0, 20, 0.0, 2.0);
-    EXPECT_EQ(10u, detector.getAxis(0).size());
-    EXPECT_EQ(-1.0, detector.getAxis(0).getMin());
-    EXPECT_EQ(1.0, detector.getAxis(0).getMax());
-    EXPECT_EQ(20u, detector.getAxis(1).size());
-    EXPECT_EQ(0.0, detector.getAxis(1).getMin());
-    EXPECT_EQ(2.0, detector.getAxis(1).getMax());
+    EXPECT_EQ(10u, detector.axis(0).size());
+    EXPECT_EQ(-1.0, detector.axis(0).getMin());
+    EXPECT_EQ(1.0, detector.axis(0).getMax());
+    EXPECT_EQ(20u, detector.axis(1).size());
+    EXPECT_EQ(0.0, detector.axis(1).getMin());
+    EXPECT_EQ(2.0, detector.axis(1).getMax());
 }
 
 // Creation of the detector map with axes in given units
@@ -76,12 +76,12 @@ TEST_F(SphericalDetectorTest, createDetectorMap)
 
     // creating map in default units, which are radians and checking axes
     auto data = detector.createDetectorMap();
-    EXPECT_EQ(data->getAxis(0).size(), 10u);
-    EXPECT_EQ(data->getAxis(0).getMin(), -1.0 * Units::deg);
-    EXPECT_EQ(data->getAxis(0).getMax(), 1.0 * Units::deg);
-    EXPECT_EQ(data->getAxis(1).size(), 20u);
-    EXPECT_EQ(data->getAxis(1).getMin(), 0.0 * Units::deg);
-    EXPECT_EQ(data->getAxis(1).getMax(), 2.0 * Units::deg);
+    EXPECT_EQ(data->axis(0).size(), 10u);
+    EXPECT_EQ(data->axis(0).getMin(), -1.0 * Units::deg);
+    EXPECT_EQ(data->axis(0).getMax(), 1.0 * Units::deg);
+    EXPECT_EQ(data->axis(1).size(), 20u);
+    EXPECT_EQ(data->axis(1).getMin(), 0.0 * Units::deg);
+    EXPECT_EQ(data->axis(1).getMax(), 2.0 * Units::deg);
 }
 
 // Testing region of interest.
@@ -124,12 +124,12 @@ TEST_F(SphericalDetectorTest, regionOfInterestAndDetectorMap)
     // Creating map in default units, which are radians and checking that axes are clipped
     // to region of interest.
     auto data = detector.createDetectorMap();
-    EXPECT_EQ(data->getAxis(0).size(), 4u);
-    EXPECT_EQ(data->getAxis(0).getMin(), 0.0 * Units::deg);
-    EXPECT_EQ(data->getAxis(0).getMax(), 4.0 * Units::deg);
-    EXPECT_EQ(data->getAxis(1).size(), 2u);
-    EXPECT_EQ(data->getAxis(1).getMin(), 1.0 * Units::deg);
-    EXPECT_EQ(data->getAxis(1).getMax(), 3.0 * Units::deg);
+    EXPECT_EQ(data->axis(0).size(), 4u);
+    EXPECT_EQ(data->axis(0).getMin(), 0.0 * Units::deg);
+    EXPECT_EQ(data->axis(0).getMax(), 4.0 * Units::deg);
+    EXPECT_EQ(data->axis(1).size(), 2u);
+    EXPECT_EQ(data->axis(1).getMin(), 1.0 * Units::deg);
+    EXPECT_EQ(data->axis(1).getMax(), 3.0 * Units::deg);
 }
 
 TEST_F(SphericalDetectorTest, MaskOfDetector)
@@ -196,12 +196,12 @@ TEST_F(SphericalDetectorTest, Clone)
     std::unique_ptr<SphericalDetector> clone(detector.clone());
 
     auto data = clone->createDetectorMap();
-    EXPECT_EQ(data->getAxis(0).size(), 4u);
-    EXPECT_EQ(data->getAxis(0).getMin(), 0.0 * Units::deg);
-    EXPECT_EQ(data->getAxis(0).getMax(), 4.0 * Units::deg);
-    EXPECT_EQ(data->getAxis(1).size(), 2u);
-    EXPECT_EQ(data->getAxis(1).getMin(), 1.0 * Units::deg);
-    EXPECT_EQ(data->getAxis(1).getMax(), 3.0 * Units::deg);
+    EXPECT_EQ(data->axis(0).size(), 4u);
+    EXPECT_EQ(data->axis(0).getMin(), 0.0 * Units::deg);
+    EXPECT_EQ(data->axis(0).getMax(), 4.0 * Units::deg);
+    EXPECT_EQ(data->axis(1).size(), 2u);
+    EXPECT_EQ(data->axis(1).getMin(), 1.0 * Units::deg);
+    EXPECT_EQ(data->axis(1).getMax(), 3.0 * Units::deg);
 
     EXPECT_EQ(clone->detectorMask()->numberOfMaskedChannels(), 8);
 
diff --git a/Tests/UnitTests/Core/Fresnel/DepthProbeSimulationTest.cpp b/Tests/UnitTests/Core/Fresnel/DepthProbeSimulationTest.cpp
index 6103eb2af0800fc194061039a0abb8a9e431c16f..1c7ad879f73d8449351d10ac6bfd006ebdfe7746 100644
--- a/Tests/UnitTests/Core/Fresnel/DepthProbeSimulationTest.cpp
+++ b/Tests/UnitTests/Core/Fresnel/DepthProbeSimulationTest.cpp
@@ -161,8 +161,8 @@ TEST_F(DepthProbeSimulationTest, ResultAquisition)
     const auto output = sim_result.data();
     EXPECT_EQ(depth_map->getTotalNumberOfBins(), output->getAllocatedSize());
     EXPECT_EQ(depth_map->getRank(), output->getRank());
-    EXPECT_EQ(depth_map->getXaxis().getMin(), output->getAxis(0).getMin());
-    EXPECT_EQ(depth_map->getXaxis().getMax(), output->getAxis(0).getMax());
+    EXPECT_EQ(depth_map->getXaxis().getMin(), output->axis(0).getMin());
+    EXPECT_EQ(depth_map->getXaxis().getMax(), output->axis(0).getMax());
 
     checkBeamState(*sim);
 }
diff --git a/Tests/UnitTests/GUI/TestSavingSpecularData.cpp b/Tests/UnitTests/GUI/TestSavingSpecularData.cpp
index 54f70edd4176327cb9b114d9f8f22e89bedbc914..779a568b7b1a324e4fba9c79d533afc2f9d08e69 100644
--- a/Tests/UnitTests/GUI/TestSavingSpecularData.cpp
+++ b/Tests/UnitTests/GUI/TestSavingSpecularData.cpp
@@ -226,8 +226,8 @@ TEST_F(TestSavingSpecularData, test_OutputDataIOService)
     EXPECT_TRUE(ProjectUtils::exists(fname2));
 
     // Reading data from disk, checking it is the same
-    EXPECT_TRUE(isSame(fname1, pointwise_axis_item1->getAxis()));
-    EXPECT_TRUE(isSame(fname2, pointwise_axis_item2->getAxis()));
+    EXPECT_TRUE(isSame(fname1, pointwise_axis_item1->axis()));
+    EXPECT_TRUE(isSame(fname2, pointwise_axis_item2->axis()));
     ;
 
     // Modifying data and saving the project.
@@ -236,8 +236,8 @@ TEST_F(TestSavingSpecularData, test_OutputDataIOService)
     service.save(projectDir);
     QTest::qSleep(10);
 
-    EXPECT_TRUE(isSame(fname1, pointwise_axis_item1->getAxis()));
-    EXPECT_TRUE(isSame(fname2, pointwise_axis_item2->getAxis()));
+    EXPECT_TRUE(isSame(fname1, pointwise_axis_item1->axis()));
+    EXPECT_TRUE(isSame(fname2, pointwise_axis_item2->axis()));
 
     // Renaming RealData and check that file on disk changed the name
     pointwise_axis_item2->setItemValue(PointwiseAxisItem::P_FILE_NAME, "data2new.int.gz");
@@ -246,7 +246,7 @@ TEST_F(TestSavingSpecularData, test_OutputDataIOService)
 
     QString fname2new = "./" + projectDir + "/" + pointwise_axis_item2->fileName();
     EXPECT_TRUE(ProjectUtils::exists(fname2new));
-    EXPECT_TRUE(isSame(fname2new, pointwise_axis_item2->getAxis()));
+    EXPECT_TRUE(isSame(fname2new, pointwise_axis_item2->axis()));
 
     // Check that file with old name was removed.
     EXPECT_FALSE(ProjectUtils::exists(fname2));
@@ -293,6 +293,6 @@ TEST_F(TestSavingSpecularData, test_CopyInstrumentToJobItem)
     EXPECT_TRUE(ProjectUtils::exists(fname2));
 
     // Reading data from disk, checking it is the same
-    EXPECT_TRUE(isSame(fname1, pointwise_axis_item->getAxis()));
-    EXPECT_TRUE(isSame(fname2, job_axis_item->getAxis()));
+    EXPECT_TRUE(isSame(fname1, pointwise_axis_item->axis()));
+    EXPECT_TRUE(isSame(fname2, job_axis_item->axis()));
 }
diff --git a/auto/Wrap/doxygenBase.i b/auto/Wrap/doxygenBase.i
index 65b76c17333b35efdebfe75d29b0c6f9dca7249d..09c1007e28998068ff1da32f6ea6f55edd108f43 100644
--- a/auto/Wrap/doxygenBase.i
+++ b/auto/Wrap/doxygenBase.i
@@ -536,6 +536,11 @@ Returns value of first point of axis.
 Returns value of last point of axis. 
 ";
 
+%feature("docstring")  IAxis::span "double IAxis::span() const
+
+Returns distance from first to last point. 
+";
+
 %feature("docstring")  IAxis::getBinCenter "virtual double IAxis::getBinCenter(size_t index) const =0
 ";
 
diff --git a/auto/Wrap/doxygenDevice.i b/auto/Wrap/doxygenDevice.i
index be3bb405c55532498ee269ec9e3915999ae160ef..3c8edcea55a14f1ba040d6be5bf962c3947c80f9 100644
--- a/auto/Wrap/doxygenDevice.i
+++ b/auto/Wrap/doxygenDevice.i
@@ -930,7 +930,7 @@ Inits detector with the beam settings.
 %feature("docstring")  IDetector::addAxis "void IDetector::addAxis(const IAxis &axis)
 ";
 
-%feature("docstring")  IDetector::getAxis "const IAxis & IDetector::getAxis(size_t index) const
+%feature("docstring")  IDetector::axis "const IAxis & IDetector::axis(size_t index) const
 ";
 
 %feature("docstring")  IDetector::dimension "size_t IDetector::dimension() const
@@ -1904,12 +1904,12 @@ C++ includes: OutputData.h
 %feature("docstring")  OutputData::addAxis "void OutputData< T >::addAxis(const std::string &name, size_t size, double start, double end)
 ";
 
-%feature("docstring")  OutputData::getAxis "const IAxis & OutputData< T >::getAxis(size_t serial_number) const
+%feature("docstring")  OutputData::axis "const IAxis & OutputData< T >::axis(size_t serial_number) const
 
 returns axis with given serial number 
 ";
 
-%feature("docstring")  OutputData::getAxis "const IAxis & OutputData< T >::getAxis(const std::string &axis_name) const
+%feature("docstring")  OutputData::axis "const IAxis & OutputData< T >::axis(const std::string &axis_name) const
 
 returns axis with given name 
 ";
diff --git a/auto/Wrap/libBornAgainBase.py b/auto/Wrap/libBornAgainBase.py
index 917855e1cde810a9f16e9f16374947e7a26b6463..14db9441cf664eadeed1f903dfbb675b9cdc793a 100644
--- a/auto/Wrap/libBornAgainBase.py
+++ b/auto/Wrap/libBornAgainBase.py
@@ -2079,6 +2079,16 @@ class IAxis(object):
         """
         return _libBornAgainBase.IAxis_getMax(self)
 
+    def span(self):
+        r"""
+        span(IAxis self) -> double
+        double IAxis::span() const
+
+        Returns distance from first to last point. 
+
+        """
+        return _libBornAgainBase.IAxis_span(self)
+
     def getBinCenter(self, index):
         r"""
         getBinCenter(IAxis self, size_t index) -> double
diff --git a/auto/Wrap/libBornAgainBase_wrap.cpp b/auto/Wrap/libBornAgainBase_wrap.cpp
index 4942a7b52da378f19316f6e10fb006a5ffd17d69..8849da4d8852427b8dc017eb31c736f9c293ba38 100644
--- a/auto/Wrap/libBornAgainBase_wrap.cpp
+++ b/auto/Wrap/libBornAgainBase_wrap.cpp
@@ -26041,6 +26041,29 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_IAxis_span(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  IAxis *arg1 = (IAxis *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject *swig_obj[1] ;
+  double result;
+  
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_IAxis, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IAxis_span" "', argument " "1"" of type '" "IAxis const *""'"); 
+  }
+  arg1 = reinterpret_cast< IAxis * >(argp1);
+  result = (double)((IAxis const *)arg1)->span();
+  resultobj = SWIG_From_double(static_cast< double >(result));
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *_wrap_IAxis_getBinCenter(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   IAxis *arg1 = (IAxis *) 0 ;
@@ -33446,6 +33469,13 @@ static PyMethodDef SwigMethods[] = {
 		"Returns value of last point of axis. \n"
 		"\n"
 		""},
+	 { "IAxis_span", _wrap_IAxis_span, METH_O, "\n"
+		"IAxis_span(IAxis self) -> double\n"
+		"double IAxis::span() const\n"
+		"\n"
+		"Returns distance from first to last point. \n"
+		"\n"
+		""},
 	 { "IAxis_getBinCenter", _wrap_IAxis_getBinCenter, METH_VARARGS, "\n"
 		"IAxis_getBinCenter(IAxis self, size_t index) -> double\n"
 		"virtual double IAxis::getBinCenter(size_t index) const =0\n"
diff --git a/auto/Wrap/libBornAgainDevice.py b/auto/Wrap/libBornAgainDevice.py
index b7eef1a36f299bcf8b633c261e9a566c44887a91..1891c7351bec360b663220e31cd810a93fc98285 100644
--- a/auto/Wrap/libBornAgainDevice.py
+++ b/auto/Wrap/libBornAgainDevice.py
@@ -2268,16 +2268,16 @@ class IntensityData(object):
         """
         return _libBornAgainDevice.IntensityData_addAxis(self, *args)
 
-    def getAxis(self, *args):
+    def axis(self, *args):
         r"""
-        getAxis(IntensityData self, size_t serial_number) -> IAxis
-        getAxis(IntensityData self, std::string const & axis_name) -> IAxis
-        const IAxis & OutputData< T >::getAxis(const std::string &axis_name) const
+        axis(IntensityData self, size_t serial_number) -> IAxis
+        axis(IntensityData self, std::string const & axis_name) -> IAxis
+        const IAxis & OutputData< T >::axis(const std::string &axis_name) const
 
         returns axis with given name 
 
         """
-        return _libBornAgainDevice.IntensityData_getAxis(self, *args)
+        return _libBornAgainDevice.IntensityData_axis(self, *args)
 
     def getRank(self):
         r"""
@@ -4589,13 +4589,13 @@ class IDetector(libBornAgainBase.ICloneable, libBornAgainParam.INode):
         """
         return _libBornAgainDevice.IDetector_addAxis(self, axis)
 
-    def getAxis(self, index):
+    def axis(self, index):
         r"""
-        getAxis(IDetector self, size_t index) -> IAxis
-        const IAxis & IDetector::getAxis(size_t index) const
+        axis(IDetector self, size_t index) -> IAxis
+        const IAxis & IDetector::axis(size_t index) const
 
         """
-        return _libBornAgainDevice.IDetector_getAxis(self, index)
+        return _libBornAgainDevice.IDetector_axis(self, index)
 
     def dimension(self):
         r"""
diff --git a/auto/Wrap/libBornAgainDevice_wrap.cpp b/auto/Wrap/libBornAgainDevice_wrap.cpp
index 7006e9b35035166fd8ef2402572afc8c3378dd6f..f51a4c003bbd5742f51390694a1d383f159b639c 100644
--- a/auto/Wrap/libBornAgainDevice_wrap.cpp
+++ b/auto/Wrap/libBornAgainDevice_wrap.cpp
@@ -29146,7 +29146,7 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_IntensityData_getAxis__SWIG_0(PyObject *SWIGUNUSEDPARM(self), Py_ssize_t nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_IntensityData_axis__SWIG_0(PyObject *SWIGUNUSEDPARM(self), Py_ssize_t nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   OutputData< double > *arg1 = (OutputData< double > *) 0 ;
   size_t arg2 ;
@@ -29159,15 +29159,15 @@ SWIGINTERN PyObject *_wrap_IntensityData_getAxis__SWIG_0(PyObject *SWIGUNUSEDPAR
   if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
   res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_OutputDataT_double_t, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IntensityData_getAxis" "', argument " "1"" of type '" "OutputData< double > const *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IntensityData_axis" "', argument " "1"" of type '" "OutputData< double > const *""'"); 
   }
   arg1 = reinterpret_cast< OutputData< double > * >(argp1);
   ecode2 = SWIG_AsVal_size_t(swig_obj[1], &val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "IntensityData_getAxis" "', argument " "2"" of type '" "size_t""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "IntensityData_axis" "', argument " "2"" of type '" "size_t""'");
   } 
   arg2 = static_cast< size_t >(val2);
-  result = (IAxis *) &((OutputData< double > const *)arg1)->getAxis(arg2);
+  result = (IAxis *) &((OutputData< double > const *)arg1)->axis(arg2);
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_IAxis, 0 |  0 );
   return resultobj;
 fail:
@@ -29175,7 +29175,7 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_IntensityData_getAxis__SWIG_1(PyObject *SWIGUNUSEDPARM(self), Py_ssize_t nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_IntensityData_axis__SWIG_1(PyObject *SWIGUNUSEDPARM(self), Py_ssize_t nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   OutputData< double > *arg1 = (OutputData< double > *) 0 ;
   std::string *arg2 = 0 ;
@@ -29187,21 +29187,21 @@ SWIGINTERN PyObject *_wrap_IntensityData_getAxis__SWIG_1(PyObject *SWIGUNUSEDPAR
   if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
   res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_OutputDataT_double_t, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IntensityData_getAxis" "', argument " "1"" of type '" "OutputData< double > const *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IntensityData_axis" "', argument " "1"" of type '" "OutputData< double > const *""'"); 
   }
   arg1 = reinterpret_cast< OutputData< double > * >(argp1);
   {
     std::string *ptr = (std::string *)0;
     res2 = SWIG_AsPtr_std_string(swig_obj[1], &ptr);
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "IntensityData_getAxis" "', argument " "2"" of type '" "std::string const &""'"); 
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "IntensityData_axis" "', argument " "2"" of type '" "std::string const &""'"); 
     }
     if (!ptr) {
-      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "IntensityData_getAxis" "', argument " "2"" of type '" "std::string const &""'"); 
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "IntensityData_axis" "', argument " "2"" of type '" "std::string const &""'"); 
     }
     arg2 = ptr;
   }
-  result = (IAxis *) &((OutputData< double > const *)arg1)->getAxis((std::string const &)*arg2);
+  result = (IAxis *) &((OutputData< double > const *)arg1)->axis((std::string const &)*arg2);
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_IAxis, 0 |  0 );
   if (SWIG_IsNewObj(res2)) delete arg2;
   return resultobj;
@@ -29211,13 +29211,13 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_IntensityData_getAxis(PyObject *self, PyObject *args) {
+SWIGINTERN PyObject *_wrap_IntensityData_axis(PyObject *self, PyObject *args) {
   Py_ssize_t argc;
   PyObject *argv[3] = {
     0
   };
   
-  if (!(argc = SWIG_Python_UnpackTuple(args, "IntensityData_getAxis", 0, 2, argv))) SWIG_fail;
+  if (!(argc = SWIG_Python_UnpackTuple(args, "IntensityData_axis", 0, 2, argv))) SWIG_fail;
   --argc;
   if (argc == 2) {
     int _v;
@@ -29230,7 +29230,7 @@ SWIGINTERN PyObject *_wrap_IntensityData_getAxis(PyObject *self, PyObject *args)
         _v = SWIG_CheckState(res);
       }
       if (_v) {
-        return _wrap_IntensityData_getAxis__SWIG_0(self, argc, argv);
+        return _wrap_IntensityData_axis__SWIG_0(self, argc, argv);
       }
     }
   }
@@ -29243,16 +29243,16 @@ SWIGINTERN PyObject *_wrap_IntensityData_getAxis(PyObject *self, PyObject *args)
       int res = SWIG_AsPtr_std_string(argv[1], (std::string**)(0));
       _v = SWIG_CheckState(res);
       if (_v) {
-        return _wrap_IntensityData_getAxis__SWIG_1(self, argc, argv);
+        return _wrap_IntensityData_axis__SWIG_1(self, argc, argv);
       }
     }
   }
   
 fail:
-  SWIG_Python_RaiseOrModifyTypeError("Wrong number or type of arguments for overloaded function 'IntensityData_getAxis'.\n"
+  SWIG_Python_RaiseOrModifyTypeError("Wrong number or type of arguments for overloaded function 'IntensityData_axis'.\n"
     "  Possible C/C++ prototypes are:\n"
-    "    OutputData< double >::getAxis(size_t) const\n"
-    "    OutputData< double >::getAxis(std::string const &) const\n");
+    "    OutputData< double >::axis(size_t) const\n"
+    "    OutputData< double >::axis(std::string const &) const\n");
   return 0;
 }
 
@@ -38154,7 +38154,7 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_IDetector_getAxis(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_IDetector_axis(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   IDetector *arg1 = (IDetector *) 0 ;
   size_t arg2 ;
@@ -38165,18 +38165,18 @@ SWIGINTERN PyObject *_wrap_IDetector_getAxis(PyObject *SWIGUNUSEDPARM(self), PyO
   PyObject *swig_obj[2] ;
   IAxis *result = 0 ;
   
-  if (!SWIG_Python_UnpackTuple(args, "IDetector_getAxis", 2, 2, swig_obj)) SWIG_fail;
+  if (!SWIG_Python_UnpackTuple(args, "IDetector_axis", 2, 2, swig_obj)) SWIG_fail;
   res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_IDetector, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IDetector_getAxis" "', argument " "1"" of type '" "IDetector const *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IDetector_axis" "', argument " "1"" of type '" "IDetector const *""'"); 
   }
   arg1 = reinterpret_cast< IDetector * >(argp1);
   ecode2 = SWIG_AsVal_size_t(swig_obj[1], &val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "IDetector_getAxis" "', argument " "2"" of type '" "size_t""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "IDetector_axis" "', argument " "2"" of type '" "size_t""'");
   } 
   arg2 = static_cast< size_t >(val2);
-  result = (IAxis *) &((IDetector const *)arg1)->getAxis(arg2);
+  result = (IAxis *) &((IDetector const *)arg1)->axis(arg2);
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_IAxis, 0 |  0 );
   return resultobj;
 fail:
@@ -46442,10 +46442,10 @@ static PyMethodDef SwigMethods[] = {
 		"void OutputData< T >::addAxis(const std::string &name, size_t size, double start, double end)\n"
 		"\n"
 		""},
-	 { "IntensityData_getAxis", _wrap_IntensityData_getAxis, METH_VARARGS, "\n"
-		"IntensityData_getAxis(IntensityData self, size_t serial_number) -> IAxis\n"
-		"IntensityData_getAxis(IntensityData self, std::string const & axis_name) -> IAxis\n"
-		"const IAxis & OutputData< T >::getAxis(const std::string &axis_name) const\n"
+	 { "IntensityData_axis", _wrap_IntensityData_axis, METH_VARARGS, "\n"
+		"IntensityData_axis(IntensityData self, size_t serial_number) -> IAxis\n"
+		"IntensityData_axis(IntensityData self, std::string const & axis_name) -> IAxis\n"
+		"const IAxis & OutputData< T >::axis(const std::string &axis_name) const\n"
 		"\n"
 		"returns axis with given name \n"
 		"\n"
@@ -47782,9 +47782,9 @@ static PyMethodDef SwigMethods[] = {
 		"void IDetector::addAxis(const IAxis &axis)\n"
 		"\n"
 		""},
-	 { "IDetector_getAxis", _wrap_IDetector_getAxis, METH_VARARGS, "\n"
-		"IDetector_getAxis(IDetector self, size_t index) -> IAxis\n"
-		"const IAxis & IDetector::getAxis(size_t index) const\n"
+	 { "IDetector_axis", _wrap_IDetector_axis, METH_VARARGS, "\n"
+		"IDetector_axis(IDetector self, size_t index) -> IAxis\n"
+		"const IAxis & IDetector::axis(size_t index) const\n"
 		"\n"
 		""},
 	 { "IDetector_dimension", _wrap_IDetector_dimension, METH_O, "\n"