Linearni algebra - balicek linalg
> | restart; |
> | with(linalg):
|
Matice muzeme zadavat bud primo jako dvou dimenzionalni pole nebo pomoci prikazu matrix z baliku linalag. V Maplu verze 9.5 je k dispozici modernejsi balicek LinearAlgebra.
> | M:=array([[1-p, 2-q], [1-r, 2-s]]);
|
> | M:=matrix([[1-p, 2-q], [1-r, 2-s]]);
|
> | v:=vector([1+a, 2+b, 3+c]);
|
Definovani indexacni funkce
> | h:=(i,j)->1/(i+j-x);
|
> | matrix(4,4,h);
|
> | matrix(3,3,0);
|
> | v;
|
> | eval(v);
|
> | op(eval(v));
|
> | A:=matrix(2,2, [[a,b],[c,d]]); |
> | B:=toeplitz([alpha, beta]);
|
Pro aritmetiku s maticemi pouzivame funkci evalm (evaluate using matrix arithmetic).
> | evalm(A+B);
|
> | evalm(3*A-2/7*B);
|
> | evalm(A-1);
|
Pro nasobeni matic se pouziva operator &*. Za operatorem je nutno zadat mezeru.
> | evalm(B &* A);
|
Mocniny:
> | evalm(B^3);
|
> | toeplitz([1,2,3]);
|
Vypocet determinantu.
> | det(%);
|
> | A:=matrix([[1,0,0,1], [1,0,1,1], [0,0,1,0]]);
|
Hodnost matice:
> | rank(A);
|
Gaussova eliminace:
> | A:=matrix([[1,1,3,-3],[5,5,13,-17],[3,1,7,-11]]);
|
> | gausselim(A);
|
> | gaussjord(A);
|
Rozmery matice a vektoru zjistime prikazy
> | rowdim(A);
|
> | coldim(A);
|
> | v:=vector([1,2,3]):vectdim(v);
|
> | submatrix(A, 2..3, 1..2);
|