diff --git a/resultsanalysis.m b/resultsanalysis.m
index e1d862f253a10de28c336882111ce587d079a98f..65c726c71f134717098d5912d26d09d524313a02 100644
--- a/resultsanalysis.m
+++ b/resultsanalysis.m
@@ -31,7 +31,11 @@ function ResData = resultsanalysis(matFiles)
             tmp = load(resFile);
             ResData(iFile, :) = tmp.ExpData;
         end
-        ResData = rmfield(ResData, {'arduStart', 'tunnelStart'});
+        % Remove useless data
+        ResData = rmfield(ResData, {'arduStart', 'tunnelStart'}); % Useless
+        % FIXME: remove deprecated
+        ResData = rmfield(ResData, {'arduFile', 'tunnelFile', ...
+                                    'dx', 'airspeed', 'freq', 'front', 'aft'});
 
         % Cache values to prevent excessive reloads
         matFiles_ = matFiles;
@@ -40,14 +44,65 @@ function ResData = resultsanalysis(matFiles)
         ResData = ResData_;
     end
 
+    ResData = getallphases(ResData, OFFSET_VALUES);
+
+    ResData = getmeancoefficients(ResData);
+
+end
+
+function ResData = getallphases(ResData, offsetVal)
+    % GETALLPHASES Determine the range for all phase offsets
+
     for i = 1:size(ResData, 1)
         for j = 1:size(ResData, 2)
+
             fprintf('\nFinding phase for element (%d,%d): %0.2fm, %0.2fHz, %0.1fm/s\n', ...
-                    i, j, ResData(i, j).dx, ResData(i, j).freq, ResData(i, j).airspeed);
+                    i, j, ...
+                    ResData(i, j).Testcase.dx, ...
+                    ResData(i, j).Testcase.freq, ...
+                    ResData(i, j).Testcase.airspeed);
+
+            for k = 1:length(offsetVal)
+                ResData(i, j).Phase(k).phaseVal = offsetVal(k);
+                ResData(i, j).Phase(k).idx = findwingphase(ResData(i, j), offsetVal(k));
+            end
+        end
+    end
+end
+
+function ResData = getmeancoefficients(ResData)
+    % GETMEANCOEFFICIENTS Returns the true mean coefficients
+
+    for i = 1:size(ResData, 1)
+        for j = 1:size(ResData, 2)
+
+            % Remove inertia forces
+            woIdx = (j) - mod(j - 1, 4);
+            ResData(i, j) = removeinertia(ResData(i, j), ResData(i, woIdx), 'Front');
+            ResData(i, j) = removeinertia(ResData(i, j), ResData(i, woIdx), 'Aft');
+
+            % Transform forces/moments into coefficients
+            ResData(i, j) = calccoeff(ResData(i, j));
+
+        end
+    end
+end
+
+function ResData = calccoeff(ResData)
+
+    POSITIONS = {'Front', 'Aft'};
+    CHORD = 0.05;
+    SPAN = 2 * 0.2;
 
-            for k = 1:length(OFFSET_VALUES)
-                ResData(i, j).Phase(k).phaseVal = OFFSET_VALUES(k);
-                ResData(i, j).Phase(k).idx = findwingphase(ResData(i, j), OFFSET_VALUES(k));
+    if ~isempty(ResData.Phase.idx)
+        for i = 1:length(ResData.Phase.idx)
+            for j = 1:length(POSITIONS)
+                dens = airdensity(ResData.Testcase.temp, ResData.Testcase.press);
+                speed = ResData.Testcase.airspeed;
+                coeffF = forcetocoeff(ResData.Phase(i).(POSITIONS{j}).forces, ...
+                                      dens, speed, CHORD, SPAN, 'force');
+                coeffM = forcetocoeff(ResData.Phase(i).(POSITIONS{j}).moments, ...
+                                      dens, speed, CHORD, SPAN, 'moment');
             end
         end
     end