diff --git a/ShoulderCase/@Muscle/getForceResultant.m b/ShoulderCase/@Muscle/getForceResultant.m
new file mode 100644
index 0000000..3160a27
--- /dev/null
+++ b/ShoulderCase/@Muscle/getForceResultant.m
@@ -0,0 +1,8 @@
+function output = getForceResultant(obj)
+  applicationPoint = mean(obj.forceApplicationPoint);
+  forceResultant = Vector(applicationPoint, applicationPoint);
+  for i = 1:size(obj.subdivisions, 3)
+    forceResultant = forceResultant + obj.forceVector(i);
+  end
+  output = forceResultant;
+end
\ No newline at end of file
diff --git a/ShoulderCase/@RotatorCuff/measureAnteroPosteriorImbalance.m b/ShoulderCase/@RotatorCuff/measureAnteroPosteriorImbalance.m
index e2875ab..f40a60d 100644
--- a/ShoulderCase/@RotatorCuff/measureAnteroPosteriorImbalance.m
+++ b/ShoulderCase/@RotatorCuff/measureAnteroPosteriorImbalance.m
@@ -1,21 +1,21 @@
 function measureAnteroPosteriorImbalance(obj)
   scapulaCS = obj.shoulder.scapula.coordSys;
 
   forceResultant = Vector(scapulaCS.origin, scapulaCS.origin)...
-    + obj.SC.forceVector...
-    + obj.SS.forceVector...
-    + obj.IS.forceVector...
-    + obj.TM.forceVector;
+    + obj.SC.getForceResultant()...
+    + obj.SS.getForceResultant()...
+    + obj.IS.getForceResultant()...
+    + obj.TM.getForceResultant();
 
   % Take infero-superior orthogonal component <=> project on scapular axial plane
   inferoSuperior = Vector(scapulaCS.origin, scapulaCS.origin + scapulaCS.IS);
   imbalanceVector = inferoSuperior.orthogonalComplementTo(forceResultant);
 
   lateroMedial = Vector(scapulaCS.origin, scapulaCS.origin - scapulaCS.ML);
   anteroPosterior = Vector(scapulaCS.origin, scapulaCS.origin - scapulaCS.PA);
 
   % posterior imbalance is positive 
   obj.anteroPosteriorImbalance = ...
     sign(dot(imbalanceVector, anteroPosterior)) *...
     rad2deg(lateroMedial.angle(imbalanceVector));
 end
\ No newline at end of file