Index: framspy/dissimilarity/density-distribution.py
===================================================================
--- framspy/dissimilarity/density-distribution.py	(revision 1211)
+++ framspy/dissimilarity/density-distribution.py	(revision 1214)
@@ -12,6 +12,6 @@
         Args:
             density (int, optional): density of samplings for frams.ModelGeometry . Defaults to 10.
-            steps (int, optional): How many steps is used for sampling space of voxels, 
-                The higher value the more accurate sampling and the longer calculations. Defaults to 3.
+            steps (int, optional): How many steps are used for sampling the space of voxels, 
+                The higher the value, the more accurate the sampling and the longer the calculations. Defaults to 3.
             reduce (bool, optional): If we should use reduction to remove blank samples. Defaults to True.
             frequency (bool, optional): If we should use frequency distribution. Defaults to False.
@@ -73,5 +73,4 @@
     def calculateDistanceMatrix(self,array1, array2):
         """
-
         Args:
             array1 ([type]): array of size n with points representing firsts model 
@@ -173,5 +172,5 @@
 
     def getSignaturesForPair(self,array1,array2):
-        """generates signatures for given pair of models represented by array of voxels.
+        """Generates signatures for given pair of models represented by array of voxels.
         We calculate space for given models by taking the extremas for each axis and dividing the space by the number of steps.
         This divided space generate us samples which contains points. Each sample will have new coordinates which are mean of all points from it and weight
@@ -182,5 +181,5 @@
             array2 (np.array(np.array(,dtype=float))): array with voxels representing model2
             steps (int, optional): How many steps is used for sampling space of voxels. Defaults to self.steps (3).
-
+                
         Returns:
             s1 ([np.array(,dtype=np.float64),np.array(,dtype=np.float64)]): [coordinates of samples, weights] 
@@ -188,5 +187,5 @@
         """
 
-        min_x = np.min([np.min(array1[:,0]),np.min(array2[:,0])])
+        min_x = np.min([np.min(array1[:,0]),np.min(array2[:,0])])   
         max_x = np.max([np.max(array1[:,0]),np.max(array2[:,0])])
         min_y = np.min([np.min(array1[:,1]),np.min(array2[:,1])])
@@ -195,7 +194,8 @@
         max_z = np.max([np.max(array1[:,2]),np.max(array2[:,2])])
 
-        x_steps,x_step = np.linspace(min_x,max_x,self.steps,retstep=True)
-        y_steps,y_step = np.linspace(min_y,max_y,self.steps,retstep=True)
-        z_steps,z_step = np.linspace(min_z,max_z,self.steps,retstep=True)
+        # We request self.steps+1 samples since we need self.steps intervals
+        x_steps,x_step = np.linspace(min_x,max_x,self.steps+1,retstep=True)
+        y_steps,y_step = np.linspace(min_y,max_y,self.steps+1,retstep=True)
+        z_steps,z_step = np.linspace(min_z,max_z,self.steps+1,retstep=True)
         
         for intervals in (x_steps, y_steps, z_steps):  # EPSILON subtracted to deal with boundary voxels (one-sided open intervals and comparisons in loops in function getSignatures())
@@ -212,5 +212,5 @@
 
     def getVoxels(self,geno):
-        """ Generates voxels for genotype using frams.ModelGeometry
+        """Generates voxels for genotype using frams.ModelGeometry
 
         Args:
@@ -230,5 +230,5 @@
 
     def calculateDissimforVoxels(self, voxels1, voxels2):
-        """ Calculate EMD for pair of voxels representing models.
+        """Calculates EMD for pair of voxels representing models.
         Args:
             voxels1 np.array([np.array(,dtype=float)]: list of voxels representing model1.
@@ -296,5 +296,5 @@
 
     def calculateDissimforGeno(self, geno1, geno2):
-        """ Calculate EMD for pair of genos.
+        """Calculates EMD for pair of genos.
         Args:
             geno1 (string): representation of model1 in one of the formats handled by frams http://www.framsticks.com/a/al_genotype.html
@@ -322,5 +322,4 @@
     def getDissimilarityMatrix(self,listOfGeno):
         """
-
         Args:
             listOfGeno ([string]): list of strings representing genotypes in one of the formats handled by frams http://www.framsticks.com/a/al_genotype.html
