## Sum of empty matrix

### Thomas (view profile)

on 30 Mar 2012

The sum of an empty matrix does not always follow the rule 'sum(empty) = 0'. What's up with this?

>> sum(ones(1,0))

ans = 0

>> sum(ones(0,1),2)

ans = Empty matrix: 0-by-1

>> sum(ones(2,0))

ans = Empty matrix: 1-by-0

>> sum(ones(0,2),2)

ans = Empty matrix: 0-by-1

Thomas

### Thomas (view profile)

on 30 Mar 2012

There is also some funny business with find on an 'all false' matrix, the behavior of find(0) seems inconsistent.

>> [x y] = meshgrid(0:2,0:2)
x =
0 1 2
0 1 2
0 1 2
y =
0 0 0
1 1 1
2 2 2
>> x=num2cell(x)
x =
[0] [1] [2]
[0] [1] [2]
[0] [1] [2]
>> y = num2cell(y)
y =
[0] [0] [0]
[1] [1] [1]
[2] [2] [2]
>> cellfun(@(z,w) find(zeros(z,w)), y, x, 'UniformOutput', false)
ans =
[] [0x1 double] [0x1 double]
[1x0 double] [] [1x0 double]
[0x1 double] [0x1 double] [0x1 double]

## Products

No products are associated with this question.

### the cyclist (view profile)

on 30 Mar 2012

I don't think this answers your question, but it does give some related info: http://blogs.mathworks.com/loren/2009/11/04/calculus-with-empty-arrays/

### Jan Simon (view profile)

on 30 Mar 2012

Especially:

```sum(ones(1, 0))  %  0
sum(ones(2, 0))  %  Empty matrix: 1-by-0
```