diff --git a/src/grid_dist.hpp b/src/grid_dist.hpp
index af4d369b9fcbcbdbd0d437520fd1b22608f0e1e4..4d57013e2a2841d2ecff4d69c95b527ee4240149 100644
--- a/src/grid_dist.hpp
+++ b/src/grid_dist.hpp
@@ -150,14 +150,40 @@ class grid_dist
 	//! Space Decomposition
 	Decomposition dec;
 
+public:
+
 	//! constructor
-	grid_dist(Decomposition dec)
+	grid_dist()
+	:loc_grid(NULL)
+	{
+	}
+
+	/*! \brief get the object that store the decomposition information
+	 *
+	 * get the object that store the decomposition information
+	 *
+	 * \return the decomposition object
+	 *
+	 */
+
+	Decomposition & getDecomposition()
+	{
+		return dec;
+	}
+
+	/*! \brief Decompose the domain
+	 *
+	 * Decompose the domain
+	 *
+	 */
+
+	void Decompose()
 	{
 		// ! Create an hyper-cube approximation.
 		// ! In order to work on grid_dist the decomposition
 		// ! has to be a set of hyper-cube
 
-		dec.HyperCube();
+		dec.hyperCube();
 
 		// Get the number of local grid needed