title: Numpy add with multiple arrays
body: <p>Is there a way to <em>add</em> (as opposed to sum) multiple arrays together in a single operation? Obviously, <code>np.sum</code> and <code>np.add</code> are different operations, however, the problem I'm struggling with right now is that <code>np.add</code> only takes two arrays at once. I could utilize either</p>
  
  <pre><code>output = 0
  for arr in arr_list:
      output = output + array
  </code></pre>
  
  <p>or</p>
  
  <pre><code>output = 0
  for arr in arr_list:
      output = np.add(output, array)
  </code></pre>
  
  <p>and, yes, this is workable. However, it would be nice if I could simply do some variant of</p>
  
  <pre><code>output = np.add_multiple(arr_list)
  </code></pre>
  
  <p>Does this exist?</p>
  
  <p>EDIT:
  I failed to be clear initially. I specifically require a function that does <em>not</em> require an <em>array</em> of arrays to be constructed, as my arrays are not of equal dimensions and require broadcasting, for example:</p>
  
  <pre><code>a = np.arange(3).reshape(1,3)
  b = np.arange(9).reshape(3,3)
  
  a, b = a[:,:,None,None], b[None,None,:,:]
  </code></pre>
  
  <p>These work:</p>
  
  <pre><code>a + b        # Works
  np.add(a, b) # Works
  </code></pre>
  
  <p>These do <em>not</em>, and fail with the same exception:</p>
  
  <pre><code>np.sum([a, b], axis = 0)
  np.add.reduce([a, b])
  
  Traceback (most recent call last):
    File "&lt;stdin&gt;", line 1, in &lt;module&gt;
  ValueError: could not broadcast input array from shape (3,1,1) into shape (1)
  </code></pre>