diff --git a/Snakefile b/Snakefile
index 1312c34f22d784aa35f58446f8d483e105a8fff2..e4fbf825e8c8b686b7bab1673908819fa6b5cb75 100644
--- a/Snakefile
+++ b/Snakefile
@@ -25,6 +25,7 @@ TODO: Discuss how wavelet details should be plotted
 
 Urgent:
 TODO: Vectorize 'plot_details()' -> Done
+TODO: Remove unnecessary dimension during cell average calculation -> Done
 TODO: Replace loops/list comprehension with vectorization if feasible
 TODO: Replace loops with list comprehension if feasible
 TODO: Rework ICs to allow vector input
diff --git a/scripts/tcd/Basis_Function.py b/scripts/tcd/Basis_Function.py
index 01eaf271f62e3c003a45bce4074fb13123f94ba4..2b3c809b960ef2c25d02cec00054d13f3f1aa100 100644
--- a/scripts/tcd/Basis_Function.py
+++ b/scripts/tcd/Basis_Function.py
@@ -500,7 +500,7 @@ class OrthonormalLegendre(Legendre):
             projection.
 
         """
-        cell_averages = np.array([projection[0] / np.sqrt(2)])
+        cell_averages = projection[0] / np.sqrt(2)
 
         if add_reconstructions:
             middle_idx = stencil_len // 2
@@ -508,11 +508,11 @@ class OrthonormalLegendre(Legendre):
                 self._calculate_reconstructions(
                     projection[:, middle_idx:middle_idx+1])
             return np.array(list(map(
-                np.float64, zip(cell_averages[:, :middle_idx],
+                np.float64, zip(cell_averages[:middle_idx],
                                 left_reconstructions,
-                                cell_averages[:, middle_idx],
+                                cell_averages[middle_idx:middle_idx+1],
                                 right_reconstructions,
-                                cell_averages[:, middle_idx+1:]))))
+                                cell_averages[middle_idx+1:]))))
         return np.array(list(map(np.float64, cell_averages)))
 
     def _calculate_reconstructions(self, projection: ndarray) \