diff --git a/src/rodassembler.cc b/src/rodassembler.cc
index a942e256953dca510fcf22fb75c641da5219d4ff..a409ccc016f4dd4db1c449a486a56f734fd74c8c 100644
--- a/src/rodassembler.cc
+++ b/src/rodassembler.cc
@@ -1044,11 +1044,21 @@ getResultantForce(const BoundaryPatch<GridType>& boundary,
             //   Compute force across this boundary face
             // //////////////////////////////////////////////
 
+            //   Create local assembler
             
+            Dune::array<double,3> K = {K_[0], K_[1], K_[2]};
+            Dune::array<double,3> A = {A_[0], A_[1], A_[2]};
+            RodLocalStiffness<GridType,double> localStiffness(K, A);
+
             double pos = nIt.intersectionSelfLocal()[0];
 
-            FieldVector<double, blocksize> strain = getStrain(sol, eIt, pos);
-            FieldVector<double, blocksize> referenceStrain = getStrain(referenceConfiguration_, eIt, pos);
+            Dune::array<Configuration,2> localSolution = {sol[indexSet.template subIndex<1>(*eIt,0)],
+                                                          sol[indexSet.template subIndex<1>(*eIt,1)]};
+            Dune::array<Configuration,2> localRefConf  = {referenceConfiguration_[indexSet.template subIndex<1>(*eIt,0)],
+                                                          referenceConfiguration_[indexSet.template subIndex<1>(*eIt,1)]};
+
+            FieldVector<double, blocksize> strain          = localStiffness.getStrain(localSolution, *eIt, pos);
+            FieldVector<double, blocksize> referenceStrain = localStiffness.getStrain(localRefConf, *eIt, pos);
 
             FieldVector<double,3> localStress;
             for (int i=0; i<3; i++)