diff --git a/Sample/HardParticle/IFormFactorPolyhedron.cpp b/Sample/HardParticle/IFormFactorPolyhedron.cpp
index 4a295effae1e26d6e14d7ea865e6ee159618f51c..6b1f9d4894ec3f964e4feaaccc94c16a34262614 100644
--- a/Sample/HardParticle/IFormFactorPolyhedron.cpp
+++ b/Sample/HardParticle/IFormFactorPolyhedron.cpp
@@ -59,11 +59,6 @@ complex_t IFormFactorPolyhedron::evaluate_for_q(C3 q) const
     return pimpl->evaluate_for_q(q);
 }
 
-complex_t IFormFactorPolyhedron::evaluate_centered(C3 q) const
-{
-    return pimpl->evaluate_centered(q);
-}
-
 double IFormFactorPolyhedron::volume() const
 {
     return pimpl->volume();
diff --git a/Sample/HardParticle/IFormFactorPolyhedron.h b/Sample/HardParticle/IFormFactorPolyhedron.h
index faf98d7dff52a348ecfef2841232d05c46672448..062bf4d2312998312faddef47ceab237722affa2 100644
--- a/Sample/HardParticle/IFormFactorPolyhedron.h
+++ b/Sample/HardParticle/IFormFactorPolyhedron.h
@@ -40,7 +40,6 @@ public:
     double topZ(const IRotation& rotation) const override;
 
     complex_t evaluate_for_q(C3 q) const override;
-    complex_t evaluate_centered(C3 q) const;
 
     double volume() const override;
     double radialExtension() const override;
diff --git a/auto/Wrap/libBornAgainSample.py b/auto/Wrap/libBornAgainSample.py
index 76606e7bd9bb99e827c52090d2c98b2b84a5ea78..b9564596f64089cff4061b1dddc8d396640b2c79 100644
--- a/auto/Wrap/libBornAgainSample.py
+++ b/auto/Wrap/libBornAgainSample.py
@@ -8955,14 +8955,6 @@ class IFormFactorPolyhedron(IBornFF):
         """
         return _libBornAgainSample.IFormFactorPolyhedron_evaluate_for_q(self, q)
 
-    def evaluate_centered(self, q):
-        r"""
-        evaluate_centered(IFormFactorPolyhedron self, C3 q) -> complex_t
-        complex_t IFormFactorPolyhedron::evaluate_centered(C3 q) const
-
-        """
-        return _libBornAgainSample.IFormFactorPolyhedron_evaluate_centered(self, q)
-
     def volume(self):
         r"""
         volume(IFormFactorPolyhedron self) -> double
diff --git a/auto/Wrap/libBornAgainSample_wrap.cpp b/auto/Wrap/libBornAgainSample_wrap.cpp
index 2bd91babaa98b82d8e0902e544fb7831936effdb..dc2da358797d3c723e1402c51acc2672300bc354 100644
--- a/auto/Wrap/libBornAgainSample_wrap.cpp
+++ b/auto/Wrap/libBornAgainSample_wrap.cpp
@@ -59225,44 +59225,6 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_IFormFactorPolyhedron_evaluate_centered(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
-  PyObject *resultobj = 0;
-  IFormFactorPolyhedron *arg1 = (IFormFactorPolyhedron *) 0 ;
-  C3 arg2 ;
-  void *argp1 = 0 ;
-  int res1 = 0 ;
-  void *argp2 ;
-  int res2 = 0 ;
-  PyObject *swig_obj[2] ;
-  complex_t result;
-  
-  if (!SWIG_Python_UnpackTuple(args, "IFormFactorPolyhedron_evaluate_centered", 2, 2, swig_obj)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_IFormFactorPolyhedron, 0 |  0 );
-  if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IFormFactorPolyhedron_evaluate_centered" "', argument " "1"" of type '" "IFormFactorPolyhedron const *""'"); 
-  }
-  arg1 = reinterpret_cast< IFormFactorPolyhedron * >(argp1);
-  {
-    res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_Vec3T_std__complexT_double_t_t,  0  | 0);
-    if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "IFormFactorPolyhedron_evaluate_centered" "', argument " "2"" of type '" "C3""'"); 
-    }  
-    if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "IFormFactorPolyhedron_evaluate_centered" "', argument " "2"" of type '" "C3""'");
-    } else {
-      C3 * temp = reinterpret_cast< C3 * >(argp2);
-      arg2 = *temp;
-      if (SWIG_IsNewObj(res2)) delete temp;
-    }
-  }
-  result = ((IFormFactorPolyhedron const *)arg1)->evaluate_centered(arg2);
-  resultobj = SWIG_From_std_complex_Sl_double_Sg_(static_cast< std::complex<double> >(result));
-  return resultobj;
-fail:
-  return NULL;
-}
-
-
 SWIGINTERN PyObject *_wrap_IFormFactorPolyhedron_volume(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   IFormFactorPolyhedron *arg1 = (IFormFactorPolyhedron *) 0 ;
@@ -75406,11 +75368,6 @@ static PyMethodDef SwigMethods[] = {
 		"Returns scattering amplitude for complex scattering wavevector q=k_i-k_f. This method is public only for convenience of plotting form factors in Python. \n"
 		"\n"
 		""},
-	 { "IFormFactorPolyhedron_evaluate_centered", _wrap_IFormFactorPolyhedron_evaluate_centered, METH_VARARGS, "\n"
-		"IFormFactorPolyhedron_evaluate_centered(IFormFactorPolyhedron self, C3 q) -> complex_t\n"
-		"complex_t IFormFactorPolyhedron::evaluate_centered(C3 q) const\n"
-		"\n"
-		""},
 	 { "IFormFactorPolyhedron_volume", _wrap_IFormFactorPolyhedron_volume, METH_O, "\n"
 		"IFormFactorPolyhedron_volume(IFormFactorPolyhedron self) -> double\n"
 		"double IFormFactorPolyhedron::volume() const override\n"
diff --git a/ff/Polyhedron.h b/ff/Polyhedron.h
index c8cc56a243824d8e7e7964b94b2d12d7b1bc37b6..3107e2d44826d5c93ab454d9f4257a983190756d 100644
--- a/ff/Polyhedron.h
+++ b/ff/Polyhedron.h
@@ -46,9 +46,10 @@ public:
 
     const std::vector<R3> vertices() const; //! needed for topZ, bottomZ computation
     complex_t evaluate_for_q(const C3& q) const;
-    complex_t evaluate_centered(const C3& q) const;
 
 private:
+    complex_t evaluate_centered(const C3& q) const;
+
     double m_z_bottom;
     bool m_sym_Ci; //!< if true, then faces obtainable by inversion are not provided