Maxima Function
genmatrix (a, i_2, j_2, i_1, j_1)
genmatrix(a,i_2,j_2,i_1)
genmatrix(a,i_2,j_2)
Returns a matrix generated from a,
taking element a[i_1,j_1]
as the upper-left element and a[i_2,j_2]
as the lower-right element of the matrix.
Here a is a declared array (created by array
but not by make_array
)
or an undeclared array,
or an array function,
or a lambda expression of two arguments.
(An array function is created like other functions with :=
or define
,
but arguments are enclosed in square brackets instead of parentheses.)
If j_1 is omitted, it is assumed equal to i_1. If both j_1 and i_1 are omitted, both are assumed equal to 1.
If a selected element i,j
of the array is undefined,
the matrix will contain a symbolic element a[i,j]
.
Examples:
(%i1) h [i, j] := 1 / (i + j - 1); 1 (%o1) h := --------- i, j i + j - 1 (%i2) genmatrix (h, 3, 3); [ 1 1 ] [ 1 - - ] [ 2 3 ] [ ] [ 1 1 1 ] (%o2) [ - - - ] [ 2 3 4 ] [ ] [ 1 1 1 ] [ - - - ] [ 3 4 5 ] (%i3) array (a, fixnum, 2, 2); (%o3) a (%i4) a [1, 1] : %e; (%o4) %e (%i5) a [2, 2] : %pi; (%o5) %pi (%i6) genmatrix (a, 2, 2); [ %e 0 ] (%o6) [ ] [ 0 %pi ] (%i7) genmatrix (lambda ([i, j], j - i), 3, 3); [ 0 1 2 ] [ ] (%o7) [ - 1 0 1 ] [ ] [ - 2 - 1 0 ] (%i8) genmatrix (B, 2, 2); [ B B ] [ 1, 1 1, 2 ] (%o8) [ ] [ B B ] [ 2, 1 2, 2 ]