diff --git a/include/coupler.hpp b/include/coupler.hpp
index e2b50b87644470b2c492336241a9af574de79dbb..ed35420a649e80033fd3202682ac4c36dc97156e 100644
--- a/include/coupler.hpp
+++ b/include/coupler.hpp
@@ -11,7 +11,7 @@ class Coupler{
 
                 virtual void precompute(const value_t t_end, const value_t dt, const std::vector<drum_t>& drum_vec) noexcept = 0;
                 virtual void step(value_t dt) noexcept = 0;
-                virtual value_t operator()(size_t drum_index, size_t neighbour_index) const noexcept = 0;
+                virtual value_t operator()(const size_t drum_index, const size_t neighbour_index) const noexcept = 0;
 };
 
 #endif
diff --git a/include/coupler_simple.hpp b/include/coupler_simple.hpp
index 8bf7997e3d32edd81d6e0d005f9a7c140ab6a98c..03b754253510cc4fbeff4a884e18ee22b068415b 100644
--- a/include/coupler_simple.hpp
+++ b/include/coupler_simple.hpp
@@ -7,7 +7,7 @@
 template <typename value_t, typename drum_t>
 class CouplerSimple: public Coupler<value_t, drum_t>{
         public:
-                CouplerSimple(value_t amplitude, value_t frequency): amplitude_(amplitude), frequency_(frequency), time_(0.) {}
+                CouplerSimple(const value_t amplitude, const value_t frequency): amplitude_(amplitude), frequency_(frequency), time_(0.) {}
                 ~CouplerSimple() = default;
 
                 void precompute(const value_t t_end, const value_t dt, const std::vector<drum_t>& drum_vec) noexcept final override { }
@@ -17,7 +17,7 @@ class CouplerSimple: public Coupler<value_t, drum_t>{
                         time_ += dt;
                 }
 
-                value_t operator()(size_t drum_index, size_t neighbour_index) const noexcept final override
+                value_t operator()(const size_t drum_index, const size_t neighbour_index) const noexcept final override
                 {
                         return amplitude_*(std::sin(frequency_*time_) + 1.);
                 }
diff --git a/include/driver.hpp b/include/driver.hpp
index 2630c8ce990df3aa8d08a4f12b01dad44883cffc..b1d4217d7f0257a3b189e187e2427c346690fa82 100644
--- a/include/driver.hpp
+++ b/include/driver.hpp
@@ -12,7 +12,7 @@ class Driver{
 
                 virtual void precompute(const value_t t_end, const value_t dt, const std::vector<drum_t>& drum_vec) noexcept = 0;
                 virtual void step(value_t dt) noexcept = 0;
-                virtual value_t operator()(size_t drum_index) const noexcept = 0;
+                virtual value_t operator()(const size_t drum_index) const noexcept = 0;
 };
 
 #endif
diff --git a/include/driver_simple.hpp b/include/driver_simple.hpp
index 6b57505592fc44b707e282b4ce06d87825c2fc0e..29d3c90763ea6c1ddf0b592c9c49863227a35231 100644
--- a/include/driver_simple.hpp
+++ b/include/driver_simple.hpp
@@ -7,7 +7,7 @@
 template<typename value_t, typename drum_t>
 class DriverSimple: public Driver<value_t, drum_t>{
         public:
-                DriverSimple(value_t amplitude, value_t frequency): amplitude_(amplitude), frequency_(frequency), time_(0.) {}
+                DriverSimple(const value_t amplitude, const value_t frequency): amplitude_(amplitude), frequency_(frequency), time_(0.) {}
                 ~DriverSimple() = default;
 
                 void precompute(const value_t t_end, const value_t dt, const std::vector<drum_t>& drum_vec) noexcept final override{ }
@@ -16,7 +16,7 @@ class DriverSimple: public Driver<value_t, drum_t>{
                         time_ += dt;
                 }
 
-                value_t operator()(size_t drum_index) const noexcept final override{
+                value_t operator()(const size_t drum_index) const noexcept final override{
                         return amplitude_*(std::sin(frequency_*2.*M_PI*time_) + 1.);
                 }