? plot/.hg Index: special-matrix/vander.m =================================================================== RCS file: /cvs/octave/scripts/special-matrix/vander.m,v retrieving revision 1.25 diff -u -r1.25 vander.m --- special-matrix/vander.m 12 Oct 2007 21:27:26 -0000 1.25 +++ special-matrix/vander.m 15 Jan 2008 20:23:18 -0000 @@ -58,13 +58,17 @@ if (isvector (c)) n = length (c); - retval = zeros (n, n); - j = 1:n; - for i = 1:n - retval(i,:) = c(i) .^ (n - j); - endfor + N = ones(n,1) * [n-1:-1:0]; + C = c(:) * ones(1,n); + retval = C .^ N; else error ("vander: argument must be a vector"); endif endfunction +% +%!test +%! c = [0,1,2,3]; +%! expect = [0,0,0,1; 1,1,1,1; 8,4,2,1; 27,9,3,1]; +%! result = vander(c); +%! assert(expect, result);