Daniel@0: function T2 = sumv(T1, sum_over) Daniel@0: % Daniel@0: % Like the built in sum, but will sum over several dimensions and then squeeze the result. Daniel@0: Daniel@0: T2 = T1; Daniel@0: for i=1:length(sum_over) Daniel@0: if sum_over(i) <= ndims(T2) % prevent summing over non-existent dimensions Daniel@0: T2=sum(T2, sum_over(i)); Daniel@0: end Daniel@0: end Daniel@0: T2 = squeeze(T2);