Costruzione di matrici e vettori

Oltre a creare matrici/vettori assegnando esplicitamente tutte le sue componenti si può usare un'altra costruzione:

> A:=matrix(2,3,giuseppe);

è stata creata in questo modo una matrice che al posto i,j ha l'oggetto giuseppe(i,j) . Se giuseppe fosse stata una funzione avremma avuto la matrice con l'elemento di posto i,j pari al valore del la funzione calcolata in i,j. Ad esempio

> funz := (i,j) -> i+j:
A:=matrix(5,3,funz);

> funz := (i,j) -> (-1)^(i+j);
matrix(10,10,funz);

>

Esempio

Come si piò definire una funzione id(n) che generi la matrice identità?

Soluzione

>

Osservazione

Può essere utile generare matrici e vettori casuali , a tal fine si possono usare le istruzioni ramndmatrix e randvector :

> randvector(25);

> randmatrix(3,7);