diff --git a/Core/Examples/StandardSimulations.cpp b/Core/Examples/StandardSimulations.cpp
index e02a9d0614a0a279be4a61b2be56355dbf8b4ef5..78e32e93fa9cceff0191f462fc5f4e1a1ff541db 100644
--- a/Core/Examples/StandardSimulations.cpp
+++ b/Core/Examples/StandardSimulations.cpp
@@ -63,7 +63,7 @@ GISASSimulation* StandardSimulations::BasicGISAS00()
     GISASSimulation* result = BasicGISAS();
     kvector_t zplus(0.0, 0.0, 1.0);
     result->beam().setPolarization(zplus);
-    result->detector().setAnalyzerProperties(zplus, 1.0, 0.5);
+    result->detector().setAnalyzer(zplus, 1.0, 0.5);
     return result;
 }
 
@@ -74,7 +74,7 @@ GISASSimulation* StandardSimulations::BasicPolarizedGISAS()
     GISASSimulation* result = BasicGISAS();
     kvector_t zplus(0.0, 0.0, 1.0);
     result->beam().setPolarization(zplus);
-    result->detector().setAnalyzerProperties(zplus, -1.0, 0.5);
+    result->detector().setAnalyzer(zplus, -1.0, 0.5);
     return result;
 }
 
@@ -163,7 +163,7 @@ GISASSimulation* StandardSimulations::MiniGISASPolarizationPP()
     kvector_t beampol(0.0, 0.0, 1.0);
 
     result->beam().setPolarization(beampol);
-    result->detector().setAnalyzerProperties(analyzer_dir, 1.0, 0.5);
+    result->detector().setAnalyzer(analyzer_dir, 1.0, 0.5);
     return result;
 }
 
@@ -175,7 +175,7 @@ GISASSimulation* StandardSimulations::MiniGISASPolarizationPM()
     kvector_t beampol(0.0, 0.0, 1.0);
 
     result->beam().setPolarization(beampol);
-    result->detector().setAnalyzerProperties(analyzer_dir, 1.0, 0.5);
+    result->detector().setAnalyzer(analyzer_dir, 1.0, 0.5);
     return result;
 }
 
@@ -187,7 +187,7 @@ GISASSimulation* StandardSimulations::MiniGISASPolarizationMP()
     kvector_t beampol(0.0, 0.0, -1.0);
 
     result->beam().setPolarization(beampol);
-    result->detector().setAnalyzerProperties(analyzer_dir, 1.0, 0.5);
+    result->detector().setAnalyzer(analyzer_dir, 1.0, 0.5);
     return result;
 }
 
@@ -199,7 +199,7 @@ GISASSimulation* StandardSimulations::MiniGISASPolarizationMM()
     kvector_t beampol(0.0, 0.0, -1.0);
 
     result->beam().setPolarization(beampol);
-    result->detector().setAnalyzerProperties(analyzer_dir, 1.0, 0.5);
+    result->detector().setAnalyzer(analyzer_dir, 1.0, 0.5);
     return result;
 }
 
@@ -231,7 +231,7 @@ GISASSimulation* StandardSimulations::MaxiGISAS00()
     GISASSimulation* result = MaxiGISAS();
     kvector_t zplus(0.0, 0.0, 1.0);
     result->beam().setPolarization(zplus);
-    result->detector().setAnalyzerProperties(zplus, 1.0, 0.5);
+    result->detector().setAnalyzer(zplus, 1.0, 0.5);
     return result;
 }
 
@@ -485,7 +485,7 @@ SpecularSimulation* StandardSimulations::BasicSpecularPP()
 {
     auto* simulation = BasicSpecular();
     simulation->beam().setPolarization({0.0, 1.0, 0.0});
-    simulation->detector().setAnalyzerProperties({0.0, 1.0, 0.0}, 1.0, 0.5);
+    simulation->detector().setAnalyzer({0.0, 1.0, 0.0}, 1.0, 0.5);
     return simulation;
 }
 
@@ -493,7 +493,7 @@ SpecularSimulation* StandardSimulations::BasicSpecularPM()
 {
     auto* simulation = BasicSpecular();
     simulation->beam().setPolarization({0.0, 1.0, 0.0});
-    simulation->detector().setAnalyzerProperties({0.0, -1.0, 0.0}, 1.0, 0.5);
+    simulation->detector().setAnalyzer({0.0, -1.0, 0.0}, 1.0, 0.5);
     return simulation;
 }
 
@@ -501,7 +501,7 @@ SpecularSimulation* StandardSimulations::BasicSpecularMP()
 {
     auto* simulation = BasicSpecular();
     simulation->beam().setPolarization({0.0, -1.0, 0.0});
-    simulation->detector().setAnalyzerProperties({0.0, 1.0, 0.0}, 1.0, 0.5);
+    simulation->detector().setAnalyzer({0.0, 1.0, 0.0}, 1.0, 0.5);
     return simulation;
 }
 
@@ -509,7 +509,7 @@ SpecularSimulation* StandardSimulations::BasicSpecularMM()
 {
     auto* simulation = BasicSpecular();
     simulation->beam().setPolarization({0.0, -1.0, 0.0});
-    simulation->detector().setAnalyzerProperties({0.0, -1.0, 0.0}, 1.0, 0.5);
+    simulation->detector().setAnalyzer({0.0, -1.0, 0.0}, 1.0, 0.5);
     return simulation;
 }
 
@@ -517,7 +517,7 @@ SpecularSimulation* StandardSimulations::BasicSpecularQPP()
 {
     auto* simulation = BasicSpecularQ();
     simulation->beam().setPolarization({0.0, 1.0, 0.0});
-    simulation->detector().setAnalyzerProperties({0.0, 1.0, 0.0}, 1.0, 0.5);
+    simulation->detector().setAnalyzer({0.0, 1.0, 0.0}, 1.0, 0.5);
     return simulation;
 }
 
@@ -525,7 +525,7 @@ SpecularSimulation* StandardSimulations::BasicSpecularQMM()
 {
     auto* simulation = BasicSpecularQ();
     simulation->beam().setPolarization({0.0, -1.0, 0.0});
-    simulation->detector().setAnalyzerProperties({0.0, -1.0, 0.0}, 1.0, 0.5);
+    simulation->detector().setAnalyzer({0.0, -1.0, 0.0}, 1.0, 0.5);
     return simulation;
 }
 
@@ -533,7 +533,7 @@ SpecularSimulation* StandardSimulations::BasicSpecularQPM()
 {
     auto* simulation = BasicSpecularQ();
     simulation->beam().setPolarization({0.0, 1.0, 0.0});
-    simulation->detector().setAnalyzerProperties({0.0, -1.0, 0.0}, 1.0, 0.5);
+    simulation->detector().setAnalyzer({0.0, -1.0, 0.0}, 1.0, 0.5);
     return simulation;
 }
 
@@ -541,7 +541,7 @@ SpecularSimulation* StandardSimulations::BasicSpecularQMP()
 {
     auto* simulation = BasicSpecularQ();
     simulation->beam().setPolarization({0.0, -1.0, 0.0});
-    simulation->detector().setAnalyzerProperties({0.0, 1.0, 0.0}, 1.0, 0.5);
+    simulation->detector().setAnalyzer({0.0, 1.0, 0.0}, 1.0, 0.5);
     return simulation;
 }
 
diff --git a/Core/Export/SimulationToPython.cpp b/Core/Export/SimulationToPython.cpp
index e84f1e9dccc8da8ebfd50c863078442dd3e03f95..1ad58fbbe7cc6ab1d9cf3a0dc4ced88491d01ff3 100644
--- a/Core/Export/SimulationToPython.cpp
+++ b/Core/Export/SimulationToPython.cpp
@@ -252,7 +252,7 @@ std::string defineDetectorPolarizationAnalysis(const ISimulation* simulation)
                << Py::Fmt::printDouble(analyzer_direction.x()) << ", "
                << Py::Fmt::printDouble(analyzer_direction.y()) << ", "
                << Py::Fmt::printDouble(analyzer_direction.z()) << ")\n";
-        result << indent() << "simulation.detector().setAnalyzerProperties(" << direction_name
+        result << indent() << "simulation.detector().setAnalyzer(" << direction_name
                << ", " << Py::Fmt::printDouble(analyzer_efficiency) << ", "
                << Py::Fmt::printDouble(analyzer_total_transmission) << ")\n";
     }
diff --git a/Device/Detector/IDetector.cpp b/Device/Detector/IDetector.cpp
index b0f769efd4fc9d718b209cc63cb033768b24b65a..9591ef826c361ff355975a9f6de6b853b6d57433 100644
--- a/Device/Detector/IDetector.cpp
+++ b/Device/Detector/IDetector.cpp
@@ -154,10 +154,10 @@ size_t IDetector::detectorIndexToRegionOfInterestIndex(const size_t detectorInde
                              "implemented by derived class.");
 }
 
-void IDetector::setAnalyzerProperties(const kvector_t direction, double efficiency,
+void IDetector::setAnalyzer(const kvector_t direction, double efficiency,
                                       double total_transmission)
 {
-    m_detection_properties.setAnalyzerProperties(direction, efficiency, total_transmission);
+    m_detection_properties.setAnalyzer(direction, efficiency, total_transmission);
 }
 
 void IDetector::setDetectorResolution(const IDetectorResolution& p_detector_resolution)
diff --git a/Device/Detector/IDetector.h b/Device/Detector/IDetector.h
index f49e14485e63a4051dab545fe3283fc7cea89a4f..02f05d1aaf6e6b9861c6828f6626264a638f3203 100644
--- a/Device/Detector/IDetector.h
+++ b/Device/Detector/IDetector.h
@@ -63,7 +63,7 @@ public:
     void addAxis(const IAxis& axis);
 
     //! Sets the polarization analyzer characteristics of the detector
-    void setAnalyzerProperties(const kvector_t direction, double efficiency,
+    void setAnalyzer(const kvector_t direction, double efficiency,
                                double total_transmission);
     //! Sets the detector resolution
     void setDetectorResolution(const IDetectorResolution& p_detector_resolution);
diff --git a/Device/ProDetector/DetectionProperties.cpp b/Device/ProDetector/DetectionProperties.cpp
index e250f98681eb0ef13d025c086ec4370cf55d169b..da50ae7eafecc391aa5bb651a5e6322cf11f07fa 100644
--- a/Device/ProDetector/DetectionProperties.cpp
+++ b/Device/ProDetector/DetectionProperties.cpp
@@ -31,11 +31,11 @@ DetectionProperties::DetectionProperties(const DetectionProperties& other)
 {
 }
 
-void DetectionProperties::setAnalyzerProperties(const kvector_t direction, double efficiency,
+void DetectionProperties::setAnalyzer(const kvector_t direction, double efficiency,
                                                 double total_transmission)
 {
     if (!checkAnalyzerProperties(direction, efficiency, total_transmission))
-        throw std::runtime_error("IDetector2D::setAnalyzerProperties: the "
+        throw std::runtime_error("IDetector2D::setAnalyzer: the "
                                  "given properties are not physical");
     if (efficiency == 0.0 || total_transmission == 0.0 || direction.mag() == 0.0) {
         m_direction = kvector_t{};
diff --git a/Device/ProDetector/DetectionProperties.h b/Device/ProDetector/DetectionProperties.h
index ebfd2a1be435f0bb2a0388043dbfdb76b66b7d2b..46ba5f0df08f1bd6f8eae682f6c4686d6cd04110 100644
--- a/Device/ProDetector/DetectionProperties.h
+++ b/Device/ProDetector/DetectionProperties.h
@@ -36,7 +36,7 @@ public:
     virtual ~DetectionProperties() = default;
 
     //! Sets the polarization analyzer characteristics of the detector
-    void setAnalyzerProperties(const kvector_t direction, double efficiency,
+    void setAnalyzer(const kvector_t direction, double efficiency,
                                double total_transmission);
 
     //! Return the polarization density matrix (in spin basis along z-axis)
diff --git a/Examples/fit55_SpecularIntro/PolarizedSpinAsymmetryFit.py b/Examples/fit55_SpecularIntro/PolarizedSpinAsymmetryFit.py
index 905e58b55eb9a2bac1bd28e7557336473d22e9c6..93b0805fccf80d65d69a0a500bd2b59b6980de14 100755
--- a/Examples/fit55_SpecularIntro/PolarizedSpinAsymmetryFit.py
+++ b/Examples/fit55_SpecularIntro/PolarizedSpinAsymmetryFit.py
@@ -82,7 +82,7 @@ def get_simulation(q_axis, parameters, polarization, analyzer):
     scan.setAbsoluteQResolution(distr, parameters["q_res"])
 
     simulation.beam().setPolarization(polarization)
-    simulation.detector().setAnalyzerProperties(analyzer, 1, 0.5)
+    simulation.detector().setAnalyzer(analyzer, 1, 0.5)
 
     simulation.setScan(scan)
     return simulation
diff --git a/Examples/scatter2d/MagneticSpheres.py b/Examples/scatter2d/MagneticSpheres.py
index f06fd7d58ba5d039632666965082840cd5c96bde..bbb544b11112e75fdfec976cf0a0fd9a4de51b49 100755
--- a/Examples/scatter2d/MagneticSpheres.py
+++ b/Examples/scatter2d/MagneticSpheres.py
@@ -53,7 +53,7 @@ def get_simulation(sample):
     detector = ba.SphericalDetector(200, 6*deg, 0, 3*deg)
     simulation = ba.GISASSimulation(beam, sample, detector)
     analyzer_direction = kvector_t(0, 0, -1)
-    simulation.detector().setAnalyzerProperties(analyzer_direction, 1, 0.5)
+    simulation.detector().setAnalyzer(analyzer_direction, 1, 0.5)
     return simulation
 
 
diff --git a/Examples/scatter2d/PolarizedSANS.py b/Examples/scatter2d/PolarizedSANS.py
index 02d9138ed604b1bbd29c4763c8d3236d6dacc4c2..227da6e8e4076acfc5f59fc6557cddfae5cc0ab6 100755
--- a/Examples/scatter2d/PolarizedSANS.py
+++ b/Examples/scatter2d/PolarizedSANS.py
@@ -62,7 +62,7 @@ def get_simulation(sample):
     detPix = 200  # number of pixels per direction
     det = ba.RectangularDetector(detPix, detWid, detPix, detWid)
     det.setPerpendicularToDirectBeam(detPos, detWid/2, detWid/2)
-    det.setAnalyzerProperties(kvector_t(0, -1, 0), 1, 0.5)
+    det.setAnalyzer(kvector_t(0, -1, 0), 1, 0.5)
 
     return ba.GISASSimulation(beam, sample, det)
 
diff --git a/Examples/varia/BasicPolarizedReflectometry.py b/Examples/varia/BasicPolarizedReflectometry.py
index 64d993343675604a68b1d5338aa78547692aa7ee..4e5af3c774e4541fc90a64715e6ef2334f225ef1 100755
--- a/Examples/varia/BasicPolarizedReflectometry.py
+++ b/Examples/varia/BasicPolarizedReflectometry.py
@@ -57,7 +57,7 @@ def run_simulation(polarization=ba.kvector_t(0, 1, 0),
 
     # adding polarization and analyzer operator
     simulation.beam().setPolarization(polarization)
-    simulation.detector().setAnalyzerProperties(analyzer, 1, 0.5)
+    simulation.detector().setAnalyzer(analyzer, 1, 0.5)
 
     simulation.runSimulation()
     return simulation.result()
diff --git a/Examples/varia/PolarizedNoAnalyzer.py b/Examples/varia/PolarizedNoAnalyzer.py
index 7bd98b02da8546154c95195f56e6cf46d510f5cc..95d25769a07d865ec20813a2dd25b100799f864c 100755
--- a/Examples/varia/PolarizedNoAnalyzer.py
+++ b/Examples/varia/PolarizedNoAnalyzer.py
@@ -58,7 +58,7 @@ def run_simulation(polarization=ba.kvector_t(0, 1, 0), analyzer=None):
     # adding polarization and analyzer operator
     simulation.beam().setPolarization(polarization)
     if analyzer:
-        simulation.detector().setAnalyzerProperties(analyzer, 1, 0.5)
+        simulation.detector().setAnalyzer(analyzer, 1, 0.5)
 
     simulation.runSimulation()
     result = simulation.result()
diff --git a/Examples/varia/PolarizedNonperfectAnalyzerPolarizer.py b/Examples/varia/PolarizedNonperfectAnalyzerPolarizer.py
index 2b88a1c1f3bc6125aeccae4c5d887bd039d30383..023e8f9c826041cacc4c646984fbd9c099399a60 100755
--- a/Examples/varia/PolarizedNonperfectAnalyzerPolarizer.py
+++ b/Examples/varia/PolarizedNonperfectAnalyzerPolarizer.py
@@ -82,7 +82,7 @@ def run_simulation(*,
     simulation = get_simulation(sample)
 
     simulation.beam().setPolarization(polarization*polarizer_efficiency)
-    simulation.detector().setAnalyzerProperties(analyzer,
+    simulation.detector().setAnalyzer(analyzer,
                                                 analyzer_efficiency, 0.5)
 
     simulation.setBackground(ba.ConstantBackground(1e-7))
diff --git a/Examples/varia/PolarizedSpinAsymmetry.py b/Examples/varia/PolarizedSpinAsymmetry.py
index ee6f01c436a7625dfa584b532a630b9b96836a39..307e2490099608f9c10c06641815d834a6c5effd 100755
--- a/Examples/varia/PolarizedSpinAsymmetry.py
+++ b/Examples/varia/PolarizedSpinAsymmetry.py
@@ -81,7 +81,7 @@ def get_simulation(q_axis, parameters, polarization, analyzer):
     scan.setAbsoluteQResolution(distr, parameters["q_res"])
 
     simulation.beam().setPolarization(polarization)
-    simulation.detector().setAnalyzerProperties(analyzer, 1, 0.5)
+    simulation.detector().setAnalyzer(analyzer, 1, 0.5)
 
     simulation.setScan(scan)
     return simulation
diff --git a/Examples/varia/PolarizedSpinFlip.py b/Examples/varia/PolarizedSpinFlip.py
index 3449746b1fac004dafbb2e752380ba0133898d4c..5ed7f6f75a9ab3b382d07936dd41507297b81332 100755
--- a/Examples/varia/PolarizedSpinFlip.py
+++ b/Examples/varia/PolarizedSpinFlip.py
@@ -57,7 +57,7 @@ def run_simulation(polarization=ba.kvector_t(0, 1, 0),
 
     # adding polarization and analyzer operator
     simulation.beam().setPolarization(polarization)
-    simulation.detector().setAnalyzerProperties(analyzer, 1, 0.5)
+    simulation.detector().setAnalyzer(analyzer, 1, 0.5)
 
     simulation.runSimulation()
     return simulation.result()
diff --git a/GUI/Models/DetectorItems.cpp b/GUI/Models/DetectorItems.cpp
index cf4d3e5da6ff026d978f5dc82cf931809df722a7..22681c0b7137bdc40b7b2dadb475c7a72776136c 100644
--- a/GUI/Models/DetectorItems.cpp
+++ b/GUI/Models/DetectorItems.cpp
@@ -47,7 +47,7 @@ std::unique_ptr<IDetector2D> DetectorItem::createDetector() const
     double analyzer_eff = getItemValue(P_ANALYZER_EFFICIENCY).toDouble();
     double analyzer_total_trans = getItemValue(P_ANALYZER_TOTAL_TRANSMISSION).toDouble();
     if (analyzer_dir.mag() > 0.0)
-        result->setAnalyzerProperties(analyzer_dir, analyzer_eff, analyzer_total_trans);
+        result->setAnalyzer(analyzer_dir, analyzer_eff, analyzer_total_trans);
 
     return result;
 }
diff --git a/Tests/Functional/PyCore/polmagcylinders2.py b/Tests/Functional/PyCore/polmagcylinders2.py
index 9a94fd39dce7f8acb788608b155e34cf3f503acd..bf34dc910114ea00fab19f488fcc4dea088c7cdc 100644
--- a/Tests/Functional/PyCore/polmagcylinders2.py
+++ b/Tests/Functional/PyCore/polmagcylinders2.py
@@ -43,7 +43,7 @@ def getSimulationIntensity(rho_beam, efficiency):
     simulation = GISASSimulation()
     simulation.setDetectorParameters(100, -1*deg, 1*deg, 100, 0, 2*deg)
     zplus = kvector_t(0, 0, 1)
-    simulation.detector().setAnalyzerProperties(zplus, efficiency, 0.5)
+    simulation.detector().setAnalyzer(zplus, efficiency, 0.5)
     simulation.setBeamParameters(1*angstrom, 0.2*deg, 0)
     simulation.beam().setPolarization(rho_beam)
     simulation.setSample(multi_layer)
diff --git a/Tests/Unit/Core/RectangularDetectorTest.cpp b/Tests/Unit/Core/RectangularDetectorTest.cpp
index de7640fae09571aa8725c73ad95feb8fb18375ce..85a80cee11639882dddf05e11055ea21998a28a3 100644
--- a/Tests/Unit/Core/RectangularDetectorTest.cpp
+++ b/Tests/Unit/Core/RectangularDetectorTest.cpp
@@ -197,13 +197,13 @@ TEST_F(RectangularDetectorTest, AnalyzerProperties)
     kvector_t unit_direction;
 
     // if direction is the zero vector, an exception is thrown
-    EXPECT_THROW(detector.setAnalyzerProperties(direction, efficiency, total_transmission),
+    EXPECT_THROW(detector.setAnalyzer(direction, efficiency, total_transmission),
                  std::runtime_error);
 
     // zero efficiency
     direction = kvector_t(1.0, 0.0, 0.0);
     unit_direction = direction.unit();
-    detector.setAnalyzerProperties(direction, efficiency, total_transmission);
+    detector.setAnalyzer(direction, efficiency, total_transmission);
     const DetectionProperties& detect_properties = detector.detectionProperties();
 
     EXPECT_NEAR(detect_properties.analyzerEfficiency(), efficiency, 1e-8);
@@ -218,7 +218,7 @@ TEST_F(RectangularDetectorTest, AnalyzerProperties)
     efficiency = 0.5;
     total_transmission = 0.6;
     unit_direction = direction.unit();
-    detector.setAnalyzerProperties(direction, efficiency, total_transmission);
+    detector.setAnalyzer(direction, efficiency, total_transmission);
     const DetectionProperties& detect_properties2 = detector.detectionProperties();
 
     EXPECT_NEAR(detect_properties2.analyzerEfficiency(), efficiency, 1e-8);
@@ -232,7 +232,7 @@ TEST_F(RectangularDetectorTest, AnalyzerProperties)
     efficiency = 1.0;
     total_transmission = 0.5;
     unit_direction = direction.unit();
-    detector.setAnalyzerProperties(direction, efficiency, total_transmission);
+    detector.setAnalyzer(direction, efficiency, total_transmission);
     const DetectionProperties& detect_properties3 = detector.detectionProperties();
 
     EXPECT_NEAR(detect_properties3.analyzerEfficiency(), efficiency, 1e-8);
@@ -246,7 +246,7 @@ TEST_F(RectangularDetectorTest, AnalyzerProperties)
     efficiency = 1.0;
     total_transmission = 0.5;
     unit_direction = direction.unit();
-    detector.setAnalyzerProperties(direction, efficiency, total_transmission);
+    detector.setAnalyzer(direction, efficiency, total_transmission);
     const DetectionProperties& detect_properties4 = detector.detectionProperties();
 
     EXPECT_NEAR(detect_properties4.analyzerEfficiency(), efficiency, 1e-8);
@@ -260,7 +260,7 @@ TEST_F(RectangularDetectorTest, AnalyzerProperties)
     efficiency = -1.0;
     total_transmission = 0.5;
     unit_direction = direction.unit();
-    detector.setAnalyzerProperties(direction, efficiency, total_transmission);
+    detector.setAnalyzer(direction, efficiency, total_transmission);
     const DetectionProperties& detect_properties5 = detector.detectionProperties();
 
     EXPECT_NEAR(detect_properties5.analyzerEfficiency(), efficiency, 1e-8);
diff --git a/Tests/Unit/Core/SpecularSimulationTest.cpp b/Tests/Unit/Core/SpecularSimulationTest.cpp
index d93c6de948af84783eee24b841332cbd32675230..4f7c6edd6a0e468246c763e8962bd124244d329c 100644
--- a/Tests/Unit/Core/SpecularSimulationTest.cpp
+++ b/Tests/Unit/Core/SpecularSimulationTest.cpp
@@ -101,7 +101,7 @@ TEST_F(SpecularSimulationTest, SetAngularScan)
     const auto polarization = kvector_t({0., 0., 0.876});
     const auto analyzer = kvector_t({0., 0., 1.});
     sim4.beam().setPolarization(polarization);
-    sim4.detector().setAnalyzerProperties(analyzer, 0.33, 0.22);
+    sim4.detector().setAnalyzer(analyzer, 0.33, 0.22);
     sim4.setScan(scan4);
     EXPECT_THROW(sim4.setScan(scan4), std::runtime_error);
 
@@ -155,7 +155,7 @@ TEST_F(SpecularSimulationTest, SetQScan)
     const auto polarization = kvector_t({0., 0., 0.876});
     const auto analyzer = kvector_t({0., 0., 1.});
     sim3.beam().setPolarization(polarization);
-    sim3.detector().setAnalyzerProperties(analyzer, 0.33, 0.22);
+    sim3.detector().setAnalyzer(analyzer, 0.33, 0.22);
     sim3.setScan(scan3);
 
     EXPECT_EQ(1.0, sim3.coordinateAxis()->lowerBound());
diff --git a/Tests/Unit/Device/SpecularDetector1DTest.cpp b/Tests/Unit/Device/SpecularDetector1DTest.cpp
index d17050c0c37f0834871ecf0666e78db9f331629d..36ab59f115e1b1152e1812ca960f320bd9e8a58f 100644
--- a/Tests/Unit/Device/SpecularDetector1DTest.cpp
+++ b/Tests/Unit/Device/SpecularDetector1DTest.cpp
@@ -48,7 +48,7 @@ TEST_F(SpecularDetectorTest, Clone)
     SpecularDetector1D detector(axis);
 
     const auto analyzer = kvector_t({0., 0., 1.});
-    detector.setAnalyzerProperties(analyzer, 0.33, 0.22);
+    detector.setAnalyzer(analyzer, 0.33, 0.22);
 
     std::unique_ptr<SpecularDetector1D> clone(detector.clone());
 
diff --git a/Tests/Unit/Device/SphericalDetectorTest.cpp b/Tests/Unit/Device/SphericalDetectorTest.cpp
index ae0cb9715d0be72f4fa07d1f858f11b3130c97ec..22e27de896e9fd8b1114086bc557960a1cda0721 100644
--- a/Tests/Unit/Device/SphericalDetectorTest.cpp
+++ b/Tests/Unit/Device/SphericalDetectorTest.cpp
@@ -224,13 +224,13 @@ TEST_F(SphericalDetectorTest, AnalyzerProperties)
     kvector_t unit_direction;
 
     // if direction is the zero vector, an exception is thrown
-    EXPECT_THROW(detector.setAnalyzerProperties(direction, efficiency, total_transmission),
+    EXPECT_THROW(detector.setAnalyzer(direction, efficiency, total_transmission),
                  std::runtime_error);
 
     // zero efficiency
     direction = kvector_t(1.0, 0.0, 0.0);
     unit_direction = direction.unit();
-    detector.setAnalyzerProperties(direction, efficiency, total_transmission);
+    detector.setAnalyzer(direction, efficiency, total_transmission);
     const DetectionProperties& detect_properties = detector.detectionProperties();
 
     EXPECT_NEAR(detect_properties.analyzerEfficiency(), efficiency, 1e-8);
@@ -245,7 +245,7 @@ TEST_F(SphericalDetectorTest, AnalyzerProperties)
     efficiency = 0.5;
     total_transmission = 0.6;
     unit_direction = direction.unit();
-    detector.setAnalyzerProperties(direction, efficiency, total_transmission);
+    detector.setAnalyzer(direction, efficiency, total_transmission);
     const DetectionProperties& detect_properties2 = detector.detectionProperties();
 
     EXPECT_NEAR(detect_properties2.analyzerEfficiency(), efficiency, 1e-8);
@@ -259,7 +259,7 @@ TEST_F(SphericalDetectorTest, AnalyzerProperties)
     efficiency = 1.0;
     total_transmission = 0.5;
     unit_direction = direction.unit();
-    detector.setAnalyzerProperties(direction, efficiency, total_transmission);
+    detector.setAnalyzer(direction, efficiency, total_transmission);
     const DetectionProperties& detect_properties3 = detector.detectionProperties();
 
     EXPECT_NEAR(detect_properties3.analyzerEfficiency(), efficiency, 1e-8);
@@ -273,7 +273,7 @@ TEST_F(SphericalDetectorTest, AnalyzerProperties)
     efficiency = 1.0;
     total_transmission = 0.5;
     unit_direction = direction.unit();
-    detector.setAnalyzerProperties(direction, efficiency, total_transmission);
+    detector.setAnalyzer(direction, efficiency, total_transmission);
     const DetectionProperties& detect_properties4 = detector.detectionProperties();
 
     EXPECT_NEAR(detect_properties4.analyzerEfficiency(), efficiency, 1e-8);
@@ -287,7 +287,7 @@ TEST_F(SphericalDetectorTest, AnalyzerProperties)
     efficiency = -1.0;
     total_transmission = 0.5;
     unit_direction = direction.unit();
-    detector.setAnalyzerProperties(direction, efficiency, total_transmission);
+    detector.setAnalyzer(direction, efficiency, total_transmission);
     const DetectionProperties& detect_properties5 = detector.detectionProperties();
 
     EXPECT_NEAR(detect_properties5.analyzerEfficiency(), efficiency, 1e-8);
diff --git a/auto/Wrap/doxygenDevice.i b/auto/Wrap/doxygenDevice.i
index a8b7f14abba68f2d1c9147d4e8841705cbbe0571..8174871610d709d63ddfb24a92b52c25cc85c293 100644
--- a/auto/Wrap/doxygenDevice.i
+++ b/auto/Wrap/doxygenDevice.i
@@ -391,7 +391,7 @@ C++ includes: DetectionProperties.h
 %feature("docstring")  DetectionProperties::~DetectionProperties "virtual DetectionProperties::~DetectionProperties()=default
 ";
 
-%feature("docstring")  DetectionProperties::setAnalyzerProperties "void DetectionProperties::setAnalyzerProperties(const kvector_t direction, double efficiency, double total_transmission)
+%feature("docstring")  DetectionProperties::setAnalyzer "void DetectionProperties::setAnalyzer(const kvector_t direction, double efficiency, double total_transmission)
 
 Sets the polarization analyzer characteristics of the detector. 
 ";
@@ -989,7 +989,7 @@ Inits detector with the beam settings.
 %feature("docstring")  IDetector::addAxis "void IDetector::addAxis(const IAxis &axis)
 ";
 
-%feature("docstring")  IDetector::setAnalyzerProperties "void IDetector::setAnalyzerProperties(const kvector_t direction, double efficiency, double total_transmission)
+%feature("docstring")  IDetector::setAnalyzer "void IDetector::setAnalyzer(const kvector_t direction, double efficiency, double total_transmission)
 
 Sets the polarization analyzer characteristics of the detector. 
 ";
diff --git a/auto/Wrap/libBornAgainDevice.py b/auto/Wrap/libBornAgainDevice.py
index 14eb174cfc6d587dce926e693627cfad7d426af4..0ade3ca41c1933fd30635f684f25603a420c2f96 100644
--- a/auto/Wrap/libBornAgainDevice.py
+++ b/auto/Wrap/libBornAgainDevice.py
@@ -3934,15 +3934,15 @@ class IDetector(libBornAgainBase.ICloneable, libBornAgainParam.INode):
         """
         return _libBornAgainDevice.IDetector_addAxis(self, axis)
 
-    def setAnalyzerProperties(self, direction, efficiency, total_transmission):
+    def setAnalyzer(self, direction, efficiency, total_transmission):
         r"""
-        setAnalyzerProperties(IDetector self, kvector_t direction, double efficiency, double total_transmission)
-        void IDetector::setAnalyzerProperties(const kvector_t direction, double efficiency, double total_transmission)
+        setAnalyzer(IDetector self, kvector_t direction, double efficiency, double total_transmission)
+        void IDetector::setAnalyzer(const kvector_t direction, double efficiency, double total_transmission)
 
         Sets the polarization analyzer characteristics of the detector. 
 
         """
-        return _libBornAgainDevice.IDetector_setAnalyzerProperties(self, direction, efficiency, total_transmission)
+        return _libBornAgainDevice.IDetector_setAnalyzer(self, direction, efficiency, total_transmission)
 
     def setDetectorResolution(self, p_detector_resolution):
         r"""
diff --git a/auto/Wrap/libBornAgainDevice_wrap.cpp b/auto/Wrap/libBornAgainDevice_wrap.cpp
index ae273b9b312d3dcd4beb0776edb89b881d7b90ae..010b2c6024d1ddc49c3ab7e7febfbc05f0734ad9 100644
--- a/auto/Wrap/libBornAgainDevice_wrap.cpp
+++ b/auto/Wrap/libBornAgainDevice_wrap.cpp
@@ -35727,7 +35727,7 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_IDetector_setAnalyzerProperties(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_IDetector_setAnalyzer(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   IDetector *arg1 = (IDetector *) 0 ;
   kvector_t arg2 ;
@@ -35743,19 +35743,19 @@ SWIGINTERN PyObject *_wrap_IDetector_setAnalyzerProperties(PyObject *SWIGUNUSEDP
   int ecode4 = 0 ;
   PyObject *swig_obj[4] ;
   
-  if (!SWIG_Python_UnpackTuple(args, "IDetector_setAnalyzerProperties", 4, 4, swig_obj)) SWIG_fail;
+  if (!SWIG_Python_UnpackTuple(args, "IDetector_setAnalyzer", 4, 4, 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_setAnalyzerProperties" "', argument " "1"" of type '" "IDetector *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IDetector_setAnalyzer" "', argument " "1"" of type '" "IDetector *""'"); 
   }
   arg1 = reinterpret_cast< IDetector * >(argp1);
   {
     res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_BasicVector3DT_double_t,  0  | 0);
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "IDetector_setAnalyzerProperties" "', argument " "2"" of type '" "kvector_t const""'"); 
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "IDetector_setAnalyzer" "', argument " "2"" of type '" "kvector_t const""'"); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "IDetector_setAnalyzerProperties" "', argument " "2"" of type '" "kvector_t const""'");
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "IDetector_setAnalyzer" "', argument " "2"" of type '" "kvector_t const""'");
     } else {
       kvector_t * temp = reinterpret_cast< kvector_t * >(argp2);
       arg2 = *temp;
@@ -35764,15 +35764,15 @@ SWIGINTERN PyObject *_wrap_IDetector_setAnalyzerProperties(PyObject *SWIGUNUSEDP
   }
   ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
   if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "IDetector_setAnalyzerProperties" "', argument " "3"" of type '" "double""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "IDetector_setAnalyzer" "', argument " "3"" of type '" "double""'");
   } 
   arg3 = static_cast< double >(val3);
   ecode4 = SWIG_AsVal_double(swig_obj[3], &val4);
   if (!SWIG_IsOK(ecode4)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "IDetector_setAnalyzerProperties" "', argument " "4"" of type '" "double""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "IDetector_setAnalyzer" "', argument " "4"" of type '" "double""'");
   } 
   arg4 = static_cast< double >(val4);
-  (arg1)->setAnalyzerProperties(arg2,arg3,arg4);
+  (arg1)->setAnalyzer(arg2,arg3,arg4);
   resultobj = SWIG_Py_Void();
   return resultobj;
 fail:
@@ -45619,9 +45619,9 @@ static PyMethodDef SwigMethods[] = {
 		"void IDetector::addAxis(const IAxis &axis)\n"
 		"\n"
 		""},
-	 { "IDetector_setAnalyzerProperties", _wrap_IDetector_setAnalyzerProperties, METH_VARARGS, "\n"
-		"IDetector_setAnalyzerProperties(IDetector self, kvector_t direction, double efficiency, double total_transmission)\n"
-		"void IDetector::setAnalyzerProperties(const kvector_t direction, double efficiency, double total_transmission)\n"
+	 { "IDetector_setAnalyzer", _wrap_IDetector_setAnalyzer, METH_VARARGS, "\n"
+		"IDetector_setAnalyzer(IDetector self, kvector_t direction, double efficiency, double total_transmission)\n"
+		"void IDetector::setAnalyzer(const kvector_t direction, double efficiency, double total_transmission)\n"
 		"\n"
 		"Sets the polarization analyzer characteristics of the detector. \n"
 		"\n"