In-Jae, You can "stack" matrices, which would work here. If top and bottom are matrices with identical number of columns, then top.stack (bottom) will return the right thing. left.augment(right) will build up a matrix "sideways." So for your question above:
sage: a=matrix(ZZ, 5, 20, [1]*(5*20)) sage: b=matrix(ZZ, 14, 20, [3]*(14*20)) sage: c=matrix(ZZ, 1, 20, [-1]*20) sage: d = b.stack(c) sage: ans = a.stack(d) will duplicate Jason's matrix in ans (which I now see is not exactly what you asked for). With a couple more submatrices and "stacks"s you could get the matrix you wanted without defining a function and without thinking about 0-based indices. Rob --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/sage-support URLs: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---
