diff --git a/packages/python_interface.cmake b/packages/python_interface.cmake
index 0cdb0fc5e..a94ab468b 100644
--- a/packages/python_interface.cmake
+++ b/packages/python_interface.cmake
@@ -1,83 +1,81 @@
 #===============================================================================
 # @file   python_interface.cmake
 #
 # @author Guillaume Anciaux <guillaume.anciaux@epfl.ch>
 # @author Nicolas Richart <nicolas.richart@epfl.ch>
 #
 # @date creation: Tue Nov 29 2011
 # @date last modification: Fri Jan 22 2016
 #
 # @brief  package description for the python interface
 #
 # @section LICENSE
 #
 # Copyright (©)  2010-2012, 2014,  2015 EPFL  (Ecole Polytechnique  Fédérale de
 # Lausanne)  Laboratory (LSMS  -  Laboratoire de  Simulation  en Mécanique  des
 # Solides)
 #
 # Akantu is free  software: you can redistribute it and/or  modify it under the
 # terms  of the  GNU Lesser  General Public  License as  published by  the Free
 # Software Foundation, either version 3 of the License, or (at your option) any
 # later version.
 #
 # Akantu is  distributed in the  hope that it  will be useful, but  WITHOUT ANY
 # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
 # A  PARTICULAR PURPOSE. See  the GNU  Lesser General  Public License  for more
 # details.
 #
 # You should  have received  a copy  of the GNU  Lesser General  Public License
 # along with Akantu. If not, see <http://www.gnu.org/licenses/>.
 #
 #===============================================================================
 
 package_declare(python_interface
   DESCRIPTION "Akantu's python interface"
   DEPENDS PythonLibs)
 
 package_declare_sources(python_interface
   python/python_functor.cc
   python/python_functor.hh
   python/python_functor_inline_impl.cc
-  model/boundary_condition_python_functor.hh
-  model/boundary_condition_python_functor.cc
   model/solid_mechanics/materials/material_python/material_python.cc
   model/solid_mechanics/materials/material_python/material_python.hh
   )
 
 
 set(AKANTU_PYTHON_INTERFACE_IMPL "swig"
   CACHE STRING "Specifies the implementation of the python interface")
 set_property(CACHE AKANTU_PYTHON_INTERFACE_IMPL PROPERTY STRINGS
   pybind11
   swig
   all
   )
 
 if(AKANTU_PYTHON_INTERFACE_IMPL MATCHES "swig" OR AKANTU_PYTHON_INTERFACE_IMPL MATCHES "all")
   package_add_dependencies(python_interface PRIVATE SWIG)
 else()
   package_remove_dependencies(python_interface SWIG)
 endif()
 
-if(AKANTU_PYTHON_INTERFACE_IMPL MATCHES "swig" OR AKANTU_PYTHON_INTERFACE_IMPL MATCHES "all")
+if(AKANTU_PYTHON_INTERFACE_IMPL MATCHES "pybind11" OR AKANTU_PYTHON_INTERFACE_IMPL MATCHES "all")
   package_add_dependencies(python_interface PUBLIC pybind11)
 else()
   package_remove_dependencies(python_interface pybind11)
 endif()
 
 
 package_set_package_system_dependency(python_interface deb-src swig3.0)
 
 package_declare_documentation(python_interface
   "This package enables the python interface of Akantu. It relies on swig3.0 to generate the code"
   ""
   "Under Ubuntu (14.04 LTS) the installation can be performed using the commands:"
   "\\begin{command}"
   "  > sudo apt-get install swig3.0"
   "\\end{command}"
   ""
 )
 
 package_declare_documentation_files(python_interface
   manual-python.tex
   )
diff --git a/python/pybind11/py_aka_boundary_conditions.cc b/python/pybind11/py_aka_boundary_conditions.cc
index 119f6bf63..c40670a23 100644
--- a/python/pybind11/py_aka_boundary_conditions.cc
+++ b/python/pybind11/py_aka_boundary_conditions.cc
@@ -1,66 +1,66 @@
 /* -------------------------------------------------------------------------- */
 #include "aka_common.hh"
 /* -------------------------------------------------------------------------- */
 #include <pybind11/operators.h>
 #include <pybind11/pybind11.h>
 #include <pybind11/stl.h>
 /* -------------------------------------------------------------------------- */
-#include "boundary_condition_python_functor.hh"
+#include "boundary_condition_functor.hh"
 /* -------------------------------------------------------------------------- */
 namespace py = pybind11;
 namespace _aka = akantu;
 
 namespace {
 
 /* -------------------------------------------------------------------------- */
 
 class PyDirichletFunctor : public _aka::BC::DirichletFunctor {
 public:
   /* Inherit the constructors */
   using _aka::BC::DirichletFunctor::DirichletFunctor;
 
   /* Trampoline (need one for each virtual function) */
   void operator()(_aka::UInt node, _aka::Vector<bool> & flags,
                   _aka::Vector<_aka::Real> & primal,
                   const _aka::Vector<_aka::Real> & coord) const override {
 
     PYBIND11_OVERLOAD_NAME(void, _aka::BC::DirichletFunctor,
                            "__call__", operator(), node, flags, primal, coord);
   }
 };
 /* -------------------------------------------------------------------------- */
 
 class PyNeumannFunctor : public _aka::BC::NeumannFunctor {
 public:
   /* Inherit the constructors */
   using _aka::BC::NeumannFunctor::NeumannFunctor;
 
   /* Trampoline (need one for each virtual function) */
   void operator()(const _aka::IntegrationPoint & quad_point,
                   _aka::Vector<_aka::Real> & dual,
                   const _aka::Vector<_aka::Real> & coord,
                   const _aka::Vector<_aka::Real> & normals) const override {
 
     PYBIND11_OVERLOAD_PURE_NAME(void, _aka::BC::NeumannFunctor,
                            "__call__", operator(), quad_point, dual, coord,
                            normals);
   }
 };
 /* -------------------------------------------------------------------------- */
 
 py::module & register_boundary_conditions(py::module & mod) {
 
   py::class_<_aka::BC::Functor>(mod, "BCFunctor");
   py::class_<_aka::BC::DirichletFunctor, PyDirichletFunctor, _aka::BC::Functor>(
       mod, "DirichletFunctor")
       .def(py::init())
       .def(py::init<_aka::SpatialDirection>());
 
   py::class_<_aka::BC::NeumannFunctor, PyNeumannFunctor, _aka::BC::Functor>(
       mod, "NeumannFunctor")
       .def(py::init());
 
   return mod;
 } // namespace
 
 } // namespace