title: Find the difference between two 1d arrays to form a 2d array of those differences in the shortest time
body: <p>I am trying to find the absolute difference between every element of one array and every element of another to form a matrix. </p>
  
  <p>I have achieved this using for loops but it is slow and I need it to be faster. I can do it faster in R for example by using the dist method but I am struggling to make it fast in C#.</p>
  
  <pre><code>double[] array1 = new double [] { 1.1, 2.0, 3.0, 4.0, 5.0 };
  double[] array2 = new double[] { 6.1, 7.0, 8.0};    
  double[,] final_array = new double[5, 3];
  for (int i = 0; i &lt; 5; i++)
  {
      for (j = 0; j &lt; 3; j++)
      {
          final_array[i,j] = Math.Abs(array1[i] - array2[j])
      }
  }
  
  # expected result of final_array
  5    4.1    3.1     2.1     1.1
  5.9  5      4       3       2
  6.9  6      5       4       3
  </code></pre>
  
  <p>Although this result is the correct answer I want to do this faster as I will need to do this calculation for arrays of up to 15,000 in size. </p>