diff --git a/Core/Export/PyGenVisitor.cpp b/Core/Export/PyGenVisitor.cpp
index b5431b251669bf00cafd3914c6f0e74711ed0ca9..2d0386ae00e984fe06bff3b66aca3691d147c110 100644
--- a/Core/Export/PyGenVisitor.cpp
+++ b/Core/Export/PyGenVisitor.cpp
@@ -950,7 +950,9 @@ std::string PyGenVisitor::defineBeam(const GISASSimulation* simulation) const
     // result << indent() << "# Defining Beam Parameters\n";
     const Beam& beam = simulation->getInstrument().getBeam();
     result << indent() << "simulation.setBeamParameters("
-           << PyGenTools::argumentList(&beam) << ")\n";
+           << PyGenTools::printNm(beam.getWavelength()) << ", "
+           << PyGenTools::printDegrees(beam.getAlpha()) << ", "
+           << PyGenTools::printDegrees(beam.getPhi()) << ")\n";
     double beam_intensity = beam.getIntensity();
     if(beam_intensity > 0.0)
         result << indent() << "simulation.setBeamIntensity("
diff --git a/auto/Wrap/doxygen_core.i b/auto/Wrap/doxygen_core.i
index 07a85a0f6fa35abaac3a0e827c5b953778c319d6..2aa7082368ca347d9fa6f9c1386cdbe9e412aeab 100644
--- a/auto/Wrap/doxygen_core.i
+++ b/auto/Wrap/doxygen_core.i
@@ -7238,14 +7238,13 @@ C++ includes: Instrument.h
 %feature("docstring")  Instrument::~Instrument "Instrument::~Instrument()
 ";
 
-%feature("docstring")  Instrument::getBeam "Beam Instrument::getBeam() const
+%feature("docstring")  Instrument::getBeam "Beam& Instrument::getBeam()
+";
 
-Returns the beam data. 
+%feature("docstring")  Instrument::getBeam "const Beam& Instrument::getBeam() const 
 ";
 
 %feature("docstring")  Instrument::setBeam "void Instrument::setBeam(const Beam &beam)
-
-Sets the beam data. 
 ";
 
 %feature("docstring")  Instrument::setBeamParameters "void Instrument::setBeamParameters(double wavelength, double alpha_i, double phi_i)
diff --git a/auto/Wrap/libBornAgainCore.py b/auto/Wrap/libBornAgainCore.py
index 21e55041447d6494a9c053c2e3877120003e708a..47ccd98e98526c71f5e557efd4f48105d4d47621 100644
--- a/auto/Wrap/libBornAgainCore.py
+++ b/auto/Wrap/libBornAgainCore.py
@@ -18313,9 +18313,7 @@ class Instrument(IParameterized):
         getBeam(Instrument self) -> Beam
         getBeam(Instrument self) -> Beam
 
-        Beam Instrument::getBeam() const
-
-        Returns the beam data. 
+        const Beam& Instrument::getBeam() const 
 
         """
         return _libBornAgainCore.Instrument_getBeam(self, *args)
@@ -18327,8 +18325,6 @@ class Instrument(IParameterized):
 
         void Instrument::setBeam(const Beam &beam)
 
-        Sets the beam data. 
-
         """
         return _libBornAgainCore.Instrument_setBeam(self, beam)
 
diff --git a/auto/Wrap/libBornAgainCore_wrap.cpp b/auto/Wrap/libBornAgainCore_wrap.cpp
index 1bc898fe2e56df7d0f453bd67d2cb2dce3524602..a48cbcfa04a176e8fa8aaab9162c8c6f200422cb 100644
--- a/auto/Wrap/libBornAgainCore_wrap.cpp
+++ b/auto/Wrap/libBornAgainCore_wrap.cpp
@@ -108702,9 +108702,7 @@ static PyMethodDef SwigMethods[] = {
 		"getBeam() -> Beam\n"
 		"Instrument_getBeam(Instrument self) -> Beam\n"
 		"\n"
-		"Beam Instrument::getBeam() const\n"
-		"\n"
-		"Returns the beam data. \n"
+		"const Beam& Instrument::getBeam() const \n"
 		"\n"
 		""},
 	 { (char *)"Instrument_setBeam", _wrap_Instrument_setBeam, METH_VARARGS, (char *)"\n"
@@ -108712,8 +108710,6 @@ static PyMethodDef SwigMethods[] = {
 		"\n"
 		"void Instrument::setBeam(const Beam &beam)\n"
 		"\n"
-		"Sets the beam data. \n"
-		"\n"
 		""},
 	 { (char *)"Instrument_setBeamParameters", _wrap_Instrument_setBeamParameters, METH_VARARGS, (char *)"\n"
 		"Instrument_setBeamParameters(Instrument self, double wavelength, double alpha_i, double phi_i)\n"