diff --git a/Core/Tools/FileSystem.cpp b/Core/Tools/FileSystem.cpp
index e6ec9abbbbd912a0da2371872d720b3a333a1274..e0932920bf9a99021cf538e79324ac363187effc 100644
--- a/Core/Tools/FileSystem.cpp
+++ b/Core/Tools/FileSystem.cpp
@@ -59,6 +59,12 @@ std::string FileSystem::GetJoinPath(const std::string &spath1, const std::string
     return full_path.string();
 }
 
+//! Returns path without directory part ("Foo/Bar/Doz.int.gz" -> "Doz.int.gz")
+std::string FileSystem::filename(const std::string& path)
+{
+    return boost::filesystem::path(path).filename().string();
+}
+
 //! Returns file names that agree with glob pattern.
 std::vector<std::string> FileSystem::glob(const std::string& pattern)
 {
diff --git a/Core/Tools/FileSystem.h b/Core/Tools/FileSystem.h
index ba8eb16df75f0244d7f17dbc678be935b852d989..6d487bac2eae91865c4c369b46fdf63c0253cfa7 100644
--- a/Core/Tools/FileSystem.h
+++ b/Core/Tools/FileSystem.h
@@ -22,7 +22,7 @@
 
 //! Utilities to deal with file system.
 
-namespace  FileSystem {
+namespace FileSystem {
 
     //! Returns path to the current (working) directory
     std::string GetWorkingPath();
@@ -39,6 +39,9 @@ namespace  FileSystem {
     //! join paths together
     std::string GetJoinPath(const std::string& spath1, const std::string& spath2);
 
+    //! Returns path without directory part ("Foo/Bar/Doz.int.gz" -> "Doz.int.gz")
+    std::string filename(const std::string& path);
+
     //! Returns file names that agree with glob pattern.
     std::vector<std::string> glob(const std::string& pattern);
 
diff --git a/Tests/Functional/PyCore/persistence/PyPersistenceTest.cpp b/Tests/Functional/PyCore/persistence/PyPersistenceTest.cpp
index 80eaf8ab58f0ed79d59b0483ad39d47340c46ba1..8d3b1a5e76f1b7f071e4fc9845882cd90bd89728 100644
--- a/Tests/Functional/PyCore/persistence/PyPersistenceTest.cpp
+++ b/Tests/Functional/PyCore/persistence/PyPersistenceTest.cpp
@@ -58,10 +58,11 @@ void PyPersistenceTest::runTest()
     // Glob simulation results
     std::map<const std::string, const std::string> dat;
     std::string dat_pattern = dat_stem + ".*.*";
-    for (const std::string& fname: FileSystem::glob(dat_pattern))
-        dat.insert(make_pair(Utils::String::split(fname,".")[1]+"."+
-                             Utils::String::split(fname,".")[2],
-                             fname));
+    for (const std::string& fpath: FileSystem::glob(dat_pattern)) {
+        std::vector<std::string> fname_segments =
+            Utils::String::split(FileSystem::filename(fpath), ".");
+        dat.insert(make_pair(fname_segments[1]+"."+fname_segments[2], fpath));
+    }
     if (dat.size()==0) {
         std::cerr << "There is no test output of form " << dat_pattern << "\n";
         m_result = FAILED;
@@ -71,11 +72,11 @@ void PyPersistenceTest::runTest()
     // Glob reference files
     std::string ref_stem = FileSystem::GetJoinPath(PYPERSIST_REF_DIR, getName());
     std::map<const std::string, const std::string> ref;
-    for (const std::string& fname: FileSystem::glob(ref_stem+".*.*"))
-        ref.insert(make_pair(Utils::String::split(fname,".")[1]+"."+
-                             Utils::String::split(fname,".")[2],
-                             fname));
-
+    for (const std::string& fpath: FileSystem::glob(ref_stem+".*.*")) {
+        std::vector<std::string> fname_segments =
+            Utils::String::split(FileSystem::filename(fpath), ".");
+        ref.insert(make_pair(fname_segments[1]+"."+fname_segments[2], fpath));
+    }
     // Compare file lists
     m_result = SUCCESS;
     for( auto const& it: dat ) {
diff --git a/auto/Wrap/doxygen_core.i b/auto/Wrap/doxygen_core.i
index 4a5b643a59d8a18dc2993c31966f0c6051d693a1..04e8a6b0154ab37fb28a972de24f928c07ae6ff5 100644
--- a/auto/Wrap/doxygen_core.i
+++ b/auto/Wrap/doxygen_core.i
@@ -4806,7 +4806,7 @@ C++ includes: FTDecayFunctions.h
 C++ includes: FTDecayFunctions.h
 ";
 
-%feature("docstring")  FTDecayFunction2DCauchy::FTDecayFunction2DCauchy "FTDecayFunction2DCauchy::FTDecayFunction2DCauchy(double decay_length_x, double decay_length_y, double gamma=0, double delta=Units::PID2)
+%feature("docstring")  FTDecayFunction2DCauchy::FTDecayFunction2DCauchy "FTDecayFunction2DCauchy::FTDecayFunction2DCauchy(double decay_length_x, double decay_length_y, double gamma=0, double delta=Pi::PID2)
 ";
 
 %feature("docstring")  FTDecayFunction2DCauchy::~FTDecayFunction2DCauchy "virtual FTDecayFunction2DCauchy::~FTDecayFunction2DCauchy()
@@ -4829,7 +4829,7 @@ evaluate Fourier transformed decay function for q in X,Y coordinates
 C++ includes: FTDecayFunctions.h
 ";
 
-%feature("docstring")  FTDecayFunction2DGauss::FTDecayFunction2DGauss "FTDecayFunction2DGauss::FTDecayFunction2DGauss(double decay_length_x, double decay_length_y, double gamma=0, double delta=Units::PID2)
+%feature("docstring")  FTDecayFunction2DGauss::FTDecayFunction2DGauss "FTDecayFunction2DGauss::FTDecayFunction2DGauss(double decay_length_x, double decay_length_y, double gamma=0, double delta=Pi::PID2)
 ";
 
 %feature("docstring")  FTDecayFunction2DGauss::~FTDecayFunction2DGauss "virtual FTDecayFunction2DGauss::~FTDecayFunction2DGauss()
@@ -4852,7 +4852,7 @@ evaluate Fourier transformed decay function for q in X,Y coordinates
 C++ includes: FTDecayFunctions.h
 ";
 
-%feature("docstring")  FTDecayFunction2DVoigt::FTDecayFunction2DVoigt "FTDecayFunction2DVoigt::FTDecayFunction2DVoigt(double decay_length_x, double decay_length_y, double eta, double gamma=0, double delta=Units::PID2)
+%feature("docstring")  FTDecayFunction2DVoigt::FTDecayFunction2DVoigt "FTDecayFunction2DVoigt::FTDecayFunction2DVoigt(double decay_length_x, double decay_length_y, double eta, double gamma=0, double delta=Pi::PID2)
 ";
 
 %feature("docstring")  FTDecayFunction2DVoigt::~FTDecayFunction2DVoigt "virtual FTDecayFunction2DVoigt::~FTDecayFunction2DVoigt()
@@ -5007,7 +5007,7 @@ C++ includes: FTDistributions1D.h
 C++ includes: FTDistributions2D.h
 ";
 
-%feature("docstring")  FTDistribution2DCauchy::FTDistribution2DCauchy "FTDistribution2DCauchy::FTDistribution2DCauchy(double coherence_length_x, double coherence_length_y, double gamma=0, double delta=Units::PID2)
+%feature("docstring")  FTDistribution2DCauchy::FTDistribution2DCauchy "FTDistribution2DCauchy::FTDistribution2DCauchy(double coherence_length_x, double coherence_length_y, double gamma=0, double delta=Pi::PID2)
 ";
 
 %feature("docstring")  FTDistribution2DCauchy::~FTDistribution2DCauchy "virtual FTDistribution2DCauchy::~FTDistribution2DCauchy()
@@ -5030,7 +5030,7 @@ evaluate Fourier transformed distribution for q in X,Y coordinates the original
 C++ includes: FTDistributions2D.h
 ";
 
-%feature("docstring")  FTDistribution2DCone::FTDistribution2DCone "FTDistribution2DCone::FTDistribution2DCone(double coherence_length_x, double coherence_length_y, double gamma=0, double delta=Units::PID2)
+%feature("docstring")  FTDistribution2DCone::FTDistribution2DCone "FTDistribution2DCone::FTDistribution2DCone(double coherence_length_x, double coherence_length_y, double gamma=0, double delta=Pi::PID2)
 ";
 
 %feature("docstring")  FTDistribution2DCone::~FTDistribution2DCone "virtual FTDistribution2DCone::~FTDistribution2DCone()
@@ -5053,7 +5053,7 @@ evaluate Fourier transformed distribution for q in X,Y coordinates the original
 C++ includes: FTDistributions2D.h
 ";
 
-%feature("docstring")  FTDistribution2DGate::FTDistribution2DGate "FTDistribution2DGate::FTDistribution2DGate(double coherence_length_x, double coherence_length_y, double gamma=0, double delta=Units::PID2)
+%feature("docstring")  FTDistribution2DGate::FTDistribution2DGate "FTDistribution2DGate::FTDistribution2DGate(double coherence_length_x, double coherence_length_y, double gamma=0, double delta=Pi::PID2)
 ";
 
 %feature("docstring")  FTDistribution2DGate::~FTDistribution2DGate "virtual FTDistribution2DGate::~FTDistribution2DGate()
@@ -5076,7 +5076,7 @@ evaluate Fourier transformed distribution for q in X,Y coordinates the original
 C++ includes: FTDistributions2D.h
 ";
 
-%feature("docstring")  FTDistribution2DGauss::FTDistribution2DGauss "FTDistribution2DGauss::FTDistribution2DGauss(double coherence_length_x, double coherence_length_y, double gamma=0, double delta=Units::PID2)
+%feature("docstring")  FTDistribution2DGauss::FTDistribution2DGauss "FTDistribution2DGauss::FTDistribution2DGauss(double coherence_length_x, double coherence_length_y, double gamma=0, double delta=Pi::PID2)
 ";
 
 %feature("docstring")  FTDistribution2DGauss::~FTDistribution2DGauss "virtual FTDistribution2DGauss::~FTDistribution2DGauss()
@@ -5099,7 +5099,7 @@ evaluate Fourier transformed distribution for q in X,Y coordinates the original
 C++ includes: FTDistributions2D.h
 ";
 
-%feature("docstring")  FTDistribution2DVoigt::FTDistribution2DVoigt "FTDistribution2DVoigt::FTDistribution2DVoigt(double coherence_length_x, double coherence_length_y, double eta, double gamma=0, double delta=Units::PID2)
+%feature("docstring")  FTDistribution2DVoigt::FTDistribution2DVoigt "FTDistribution2DVoigt::FTDistribution2DVoigt(double coherence_length_x, double coherence_length_y, double eta, double gamma=0, double delta=Pi::PID2)
 ";
 
 %feature("docstring")  FTDistribution2DVoigt::~FTDistribution2DVoigt "virtual FTDistribution2DVoigt::~FTDistribution2DVoigt()
@@ -6504,7 +6504,7 @@ Interface for 2 dimensional decay function in reciprocal space.
 C++ includes: FTDecayFunctions.h
 ";
 
-%feature("docstring")  IFTDecayFunction2D::IFTDecayFunction2D "IFTDecayFunction2D::IFTDecayFunction2D(double decay_length_x, double decay_length_y, double gamma=0, double delta=Units::PID2)
+%feature("docstring")  IFTDecayFunction2D::IFTDecayFunction2D "IFTDecayFunction2D::IFTDecayFunction2D(double decay_length_x, double decay_length_y, double gamma=0, double delta=Pi::PID2)
 ";
 
 %feature("docstring")  IFTDecayFunction2D::~IFTDecayFunction2D "virtual IFTDecayFunction2D::~IFTDecayFunction2D()
@@ -6584,7 +6584,7 @@ Interface for 2 dimensional distributions in Fourier space.
 C++ includes: FTDistributions2D.h
 ";
 
-%feature("docstring")  IFTDistribution2D::IFTDistribution2D "IFTDistribution2D::IFTDistribution2D(double coherence_length_x, double coherence_length_y, double gamma=0, double delta=Units::PID2)
+%feature("docstring")  IFTDistribution2D::IFTDistribution2D "IFTDistribution2D::IFTDistribution2D(double coherence_length_x, double coherence_length_y, double gamma=0, double delta=Pi::PID2)
 ";
 
 %feature("docstring")  IFTDistribution2D::~IFTDistribution2D "virtual IFTDistribution2D::~IFTDistribution2D()
@@ -13406,13 +13406,13 @@ C++ includes: WavevectorInfo.h
 // File: classMathFunctions_1_1Convolve_1_1Workspace.xml
 
 
-// File: namespace_0D294.xml
+// File: namespace_0D295.xml
 
 
-// File: namespace_0D367.xml
+// File: namespace_0D368.xml
 
 
-// File: namespace_0D433.xml
+// File: namespace_0D434.xml
 
 
 // File: namespaceboost_1_1geometry.xml
@@ -13455,6 +13455,11 @@ creates directory in current directory
 join paths together 
 ";
 
+%feature("docstring")  FileSystem::filename "std::string FileSystem::filename(const std::string &path)
+
+Returns path without directory part (\"Foo/Bar/Doz.int.gz\" -> \"Doz.int.gz\") 
+";
+
 %feature("docstring")  FileSystem::glob "std::vector< std::string > FileSystem::glob(const std::string &pattern)
 
 Returns file names that agree with glob pattern. 
@@ -13747,6 +13752,9 @@ Parse double values from string to vector of double.
 ";
 
 
+// File: namespacePi.xml
+
+
 // File: namespacePythonFormatting.xml
 %feature("docstring")  PythonFormatting::getRepresentation "BA_CORE_API_ std::string PythonFormatting::getRepresentation(const IDistribution1D *distribution)
 
@@ -14006,6 +14014,9 @@ Returns exp(I*z), where I is the imaginary unit.
 // File: Macros_8h.xml
 
 
+// File: Pi_8h.xml
+
+
 // File: SafePointerVector_8h.xml
 
 
diff --git a/auto/Wrap/libBornAgainCore.py b/auto/Wrap/libBornAgainCore.py
index f0be312c794676d243c74ddb381d2c6a8bf6b570..242bd2610fe85da99ca50431a632d51e0e12bb97 100644
--- a/auto/Wrap/libBornAgainCore.py
+++ b/auto/Wrap/libBornAgainCore.py
@@ -8736,7 +8736,7 @@ class FTDecayFunction2DCauchy(IFTDecayFunction2D):
         __init__(FTDecayFunction2DCauchy self, double decay_length_x, double decay_length_y, double gamma=0) -> FTDecayFunction2DCauchy
         __init__(FTDecayFunction2DCauchy self, double decay_length_x, double decay_length_y) -> FTDecayFunction2DCauchy
 
-        FTDecayFunction2DCauchy::FTDecayFunction2DCauchy(double decay_length_x, double decay_length_y, double gamma=0, double delta=Units::PID2)
+        FTDecayFunction2DCauchy::FTDecayFunction2DCauchy(double decay_length_x, double decay_length_y, double gamma=0, double delta=Pi::PID2)
 
         """
         this = _libBornAgainCore.new_FTDecayFunction2DCauchy(*args)
@@ -8796,7 +8796,7 @@ class FTDecayFunction2DGauss(IFTDecayFunction2D):
         __init__(FTDecayFunction2DGauss self, double decay_length_x, double decay_length_y, double gamma=0) -> FTDecayFunction2DGauss
         __init__(FTDecayFunction2DGauss self, double decay_length_x, double decay_length_y) -> FTDecayFunction2DGauss
 
-        FTDecayFunction2DGauss::FTDecayFunction2DGauss(double decay_length_x, double decay_length_y, double gamma=0, double delta=Units::PID2)
+        FTDecayFunction2DGauss::FTDecayFunction2DGauss(double decay_length_x, double decay_length_y, double gamma=0, double delta=Pi::PID2)
 
         """
         this = _libBornAgainCore.new_FTDecayFunction2DGauss(*args)
@@ -8856,7 +8856,7 @@ class FTDecayFunction2DVoigt(IFTDecayFunction2D):
         __init__(FTDecayFunction2DVoigt self, double decay_length_x, double decay_length_y, double eta, double gamma=0) -> FTDecayFunction2DVoigt
         __init__(FTDecayFunction2DVoigt self, double decay_length_x, double decay_length_y, double eta) -> FTDecayFunction2DVoigt
 
-        FTDecayFunction2DVoigt::FTDecayFunction2DVoigt(double decay_length_x, double decay_length_y, double eta, double gamma=0, double delta=Units::PID2)
+        FTDecayFunction2DVoigt::FTDecayFunction2DVoigt(double decay_length_x, double decay_length_y, double eta, double gamma=0, double delta=Pi::PID2)
 
         """
         this = _libBornAgainCore.new_FTDecayFunction2DVoigt(*args)
@@ -9436,7 +9436,7 @@ class FTDistribution2DCauchy(IFTDistribution2D):
         __init__(FTDistribution2DCauchy self, double coherence_length_x, double coherence_length_y, double gamma=0) -> FTDistribution2DCauchy
         __init__(FTDistribution2DCauchy self, double coherence_length_x, double coherence_length_y) -> FTDistribution2DCauchy
 
-        FTDistribution2DCauchy::FTDistribution2DCauchy(double coherence_length_x, double coherence_length_y, double gamma=0, double delta=Units::PID2)
+        FTDistribution2DCauchy::FTDistribution2DCauchy(double coherence_length_x, double coherence_length_y, double gamma=0, double delta=Pi::PID2)
 
         """
         this = _libBornAgainCore.new_FTDistribution2DCauchy(*args)
@@ -9496,7 +9496,7 @@ class FTDistribution2DGauss(IFTDistribution2D):
         __init__(FTDistribution2DGauss self, double coherence_length_x, double coherence_length_y, double gamma=0) -> FTDistribution2DGauss
         __init__(FTDistribution2DGauss self, double coherence_length_x, double coherence_length_y) -> FTDistribution2DGauss
 
-        FTDistribution2DGauss::FTDistribution2DGauss(double coherence_length_x, double coherence_length_y, double gamma=0, double delta=Units::PID2)
+        FTDistribution2DGauss::FTDistribution2DGauss(double coherence_length_x, double coherence_length_y, double gamma=0, double delta=Pi::PID2)
 
         """
         this = _libBornAgainCore.new_FTDistribution2DGauss(*args)
@@ -9556,7 +9556,7 @@ class FTDistribution2DGate(IFTDistribution2D):
         __init__(FTDistribution2DGate self, double coherence_length_x, double coherence_length_y, double gamma=0) -> FTDistribution2DGate
         __init__(FTDistribution2DGate self, double coherence_length_x, double coherence_length_y) -> FTDistribution2DGate
 
-        FTDistribution2DGate::FTDistribution2DGate(double coherence_length_x, double coherence_length_y, double gamma=0, double delta=Units::PID2)
+        FTDistribution2DGate::FTDistribution2DGate(double coherence_length_x, double coherence_length_y, double gamma=0, double delta=Pi::PID2)
 
         """
         this = _libBornAgainCore.new_FTDistribution2DGate(*args)
@@ -9616,7 +9616,7 @@ class FTDistribution2DCone(IFTDistribution2D):
         __init__(FTDistribution2DCone self, double coherence_length_x, double coherence_length_y, double gamma=0) -> FTDistribution2DCone
         __init__(FTDistribution2DCone self, double coherence_length_x, double coherence_length_y) -> FTDistribution2DCone
 
-        FTDistribution2DCone::FTDistribution2DCone(double coherence_length_x, double coherence_length_y, double gamma=0, double delta=Units::PID2)
+        FTDistribution2DCone::FTDistribution2DCone(double coherence_length_x, double coherence_length_y, double gamma=0, double delta=Pi::PID2)
 
         """
         this = _libBornAgainCore.new_FTDistribution2DCone(*args)
@@ -9676,7 +9676,7 @@ class FTDistribution2DVoigt(IFTDistribution2D):
         __init__(FTDistribution2DVoigt self, double coherence_length_x, double coherence_length_y, double eta, double gamma=0) -> FTDistribution2DVoigt
         __init__(FTDistribution2DVoigt self, double coherence_length_x, double coherence_length_y, double eta) -> FTDistribution2DVoigt
 
-        FTDistribution2DVoigt::FTDistribution2DVoigt(double coherence_length_x, double coherence_length_y, double eta, double gamma=0, double delta=Units::PID2)
+        FTDistribution2DVoigt::FTDistribution2DVoigt(double coherence_length_x, double coherence_length_y, double eta, double gamma=0, double delta=Pi::PID2)
 
         """
         this = _libBornAgainCore.new_FTDistribution2DVoigt(*args)
diff --git a/auto/Wrap/libBornAgainCore_wrap.cpp b/auto/Wrap/libBornAgainCore_wrap.cpp
index 076076fac92d43fd959fcb5a4895b0471be6df8d..8dd9f0b96762c763eb53f98551d2bb71b6426e67 100644
--- a/auto/Wrap/libBornAgainCore_wrap.cpp
+++ b/auto/Wrap/libBornAgainCore_wrap.cpp
@@ -105085,7 +105085,7 @@ static PyMethodDef SwigMethods[] = {
 		"FTDecayFunction2DCauchy(double decay_length_x, double decay_length_y, double gamma=0)\n"
 		"new_FTDecayFunction2DCauchy(double decay_length_x, double decay_length_y) -> FTDecayFunction2DCauchy\n"
 		"\n"
-		"FTDecayFunction2DCauchy::FTDecayFunction2DCauchy(double decay_length_x, double decay_length_y, double gamma=0, double delta=Units::PID2)\n"
+		"FTDecayFunction2DCauchy::FTDecayFunction2DCauchy(double decay_length_x, double decay_length_y, double gamma=0, double delta=Pi::PID2)\n"
 		"\n"
 		""},
 	 { (char *)"delete_FTDecayFunction2DCauchy", _wrap_delete_FTDecayFunction2DCauchy, METH_VARARGS, (char *)"\n"
@@ -105114,7 +105114,7 @@ static PyMethodDef SwigMethods[] = {
 		"FTDecayFunction2DGauss(double decay_length_x, double decay_length_y, double gamma=0)\n"
 		"new_FTDecayFunction2DGauss(double decay_length_x, double decay_length_y) -> FTDecayFunction2DGauss\n"
 		"\n"
-		"FTDecayFunction2DGauss::FTDecayFunction2DGauss(double decay_length_x, double decay_length_y, double gamma=0, double delta=Units::PID2)\n"
+		"FTDecayFunction2DGauss::FTDecayFunction2DGauss(double decay_length_x, double decay_length_y, double gamma=0, double delta=Pi::PID2)\n"
 		"\n"
 		""},
 	 { (char *)"delete_FTDecayFunction2DGauss", _wrap_delete_FTDecayFunction2DGauss, METH_VARARGS, (char *)"\n"
@@ -105143,7 +105143,7 @@ static PyMethodDef SwigMethods[] = {
 		"FTDecayFunction2DVoigt(double decay_length_x, double decay_length_y, double eta, double gamma=0)\n"
 		"new_FTDecayFunction2DVoigt(double decay_length_x, double decay_length_y, double eta) -> FTDecayFunction2DVoigt\n"
 		"\n"
-		"FTDecayFunction2DVoigt::FTDecayFunction2DVoigt(double decay_length_x, double decay_length_y, double eta, double gamma=0, double delta=Units::PID2)\n"
+		"FTDecayFunction2DVoigt::FTDecayFunction2DVoigt(double decay_length_x, double decay_length_y, double eta, double gamma=0, double delta=Pi::PID2)\n"
 		"\n"
 		""},
 	 { (char *)"delete_FTDecayFunction2DVoigt", _wrap_delete_FTDecayFunction2DVoigt, METH_VARARGS, (char *)"\n"
@@ -105416,7 +105416,7 @@ static PyMethodDef SwigMethods[] = {
 		"FTDistribution2DCauchy(double coherence_length_x, double coherence_length_y, double gamma=0)\n"
 		"new_FTDistribution2DCauchy(double coherence_length_x, double coherence_length_y) -> FTDistribution2DCauchy\n"
 		"\n"
-		"FTDistribution2DCauchy::FTDistribution2DCauchy(double coherence_length_x, double coherence_length_y, double gamma=0, double delta=Units::PID2)\n"
+		"FTDistribution2DCauchy::FTDistribution2DCauchy(double coherence_length_x, double coherence_length_y, double gamma=0, double delta=Pi::PID2)\n"
 		"\n"
 		""},
 	 { (char *)"delete_FTDistribution2DCauchy", _wrap_delete_FTDistribution2DCauchy, METH_VARARGS, (char *)"\n"
@@ -105445,7 +105445,7 @@ static PyMethodDef SwigMethods[] = {
 		"FTDistribution2DGauss(double coherence_length_x, double coherence_length_y, double gamma=0)\n"
 		"new_FTDistribution2DGauss(double coherence_length_x, double coherence_length_y) -> FTDistribution2DGauss\n"
 		"\n"
-		"FTDistribution2DGauss::FTDistribution2DGauss(double coherence_length_x, double coherence_length_y, double gamma=0, double delta=Units::PID2)\n"
+		"FTDistribution2DGauss::FTDistribution2DGauss(double coherence_length_x, double coherence_length_y, double gamma=0, double delta=Pi::PID2)\n"
 		"\n"
 		""},
 	 { (char *)"delete_FTDistribution2DGauss", _wrap_delete_FTDistribution2DGauss, METH_VARARGS, (char *)"\n"
@@ -105474,7 +105474,7 @@ static PyMethodDef SwigMethods[] = {
 		"FTDistribution2DGate(double coherence_length_x, double coherence_length_y, double gamma=0)\n"
 		"new_FTDistribution2DGate(double coherence_length_x, double coherence_length_y) -> FTDistribution2DGate\n"
 		"\n"
-		"FTDistribution2DGate::FTDistribution2DGate(double coherence_length_x, double coherence_length_y, double gamma=0, double delta=Units::PID2)\n"
+		"FTDistribution2DGate::FTDistribution2DGate(double coherence_length_x, double coherence_length_y, double gamma=0, double delta=Pi::PID2)\n"
 		"\n"
 		""},
 	 { (char *)"delete_FTDistribution2DGate", _wrap_delete_FTDistribution2DGate, METH_VARARGS, (char *)"\n"
@@ -105503,7 +105503,7 @@ static PyMethodDef SwigMethods[] = {
 		"FTDistribution2DCone(double coherence_length_x, double coherence_length_y, double gamma=0)\n"
 		"new_FTDistribution2DCone(double coherence_length_x, double coherence_length_y) -> FTDistribution2DCone\n"
 		"\n"
-		"FTDistribution2DCone::FTDistribution2DCone(double coherence_length_x, double coherence_length_y, double gamma=0, double delta=Units::PID2)\n"
+		"FTDistribution2DCone::FTDistribution2DCone(double coherence_length_x, double coherence_length_y, double gamma=0, double delta=Pi::PID2)\n"
 		"\n"
 		""},
 	 { (char *)"delete_FTDistribution2DCone", _wrap_delete_FTDistribution2DCone, METH_VARARGS, (char *)"\n"
@@ -105532,7 +105532,7 @@ static PyMethodDef SwigMethods[] = {
 		"FTDistribution2DVoigt(double coherence_length_x, double coherence_length_y, double eta, double gamma=0)\n"
 		"new_FTDistribution2DVoigt(double coherence_length_x, double coherence_length_y, double eta) -> FTDistribution2DVoigt\n"
 		"\n"
-		"FTDistribution2DVoigt::FTDistribution2DVoigt(double coherence_length_x, double coherence_length_y, double eta, double gamma=0, double delta=Units::PID2)\n"
+		"FTDistribution2DVoigt::FTDistribution2DVoigt(double coherence_length_x, double coherence_length_y, double eta, double gamma=0, double delta=Pi::PID2)\n"
 		"\n"
 		""},
 	 { (char *)"delete_FTDistribution2DVoigt", _wrap_delete_FTDistribution2DVoigt, METH_VARARGS, (char *)"\n"