Sponsored links: Algebra eBooks ### The Maxima on-line user's manual

Algebra Calculator

#### Search: #### Genmatrix

Function: genmatrix (<a>, <i_2>, <j_2>, <i_1>, <j_1>) Function: genmatrix (<a>, <i_2>, <j_2>, <i_1>)

Function: 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 ]```

```(%o1)                                true
(%i2) ```

### Related Examples

##### genmatrix-makelist-random-row-sort-sqrt

norm(x):=sqrt(x.x);

v:[1,1,1];

a[i,j]:=random(15);

Calculate

##### genmatrix-lambda-random-sum

a:genmatrix(lambda([i...

sum(a^^i,i,1,5);

Calculate

genmatrix(lambda([i,j...

Calculate

##### genmatrix-random

f[i,j]:=random(10);

A:genmatrix(f,4,4);

Calculate

##### genmatrix

b [i, j] := if i=j an...

a [i, j] := if i+j=n+...

A: genmatrix(a, 4, 4);

Calculate

##### genmatrix

n:3;

for i: 1 thru n do ...

genmatrix(M,n,n,1,1);

Calculate

##### genmatrix-if-lambda

f(p):=genmatrix(lambd...

f(10)^^2;

Calculate

##### genmatrix-lambda

a:genmatrix(lambda([i...

a+a^^2;

Calculate

genmatrix;

Calculate

##### genmatrix

h [i, j] := 1;

genmatrix (h, 2, 2);

Calculate 