Open Gioele090101 opened 10 months ago
Le colonne j =2, …, k sono sempre un multiplo della colonna 1.
Ad esempio, se l'obiettivo è trovare
Definisco il vettore che contiene la prima colonna .
A questo punto la seconda colonna è uguale a Colonna1 2 la terza colonna è uguale a Colonna1 5
In termini matriciali
Colonna1 *[ 1 2 5 ] , produce le colonne 1, 2, e 3
Con una sola riga di codice
Si noti che (2:2:10)' è un vettore colonna di lunghezza 5 (matrice di dimensione 5x1) [1 2 5] è un vettore riga di lunghezza 3 (matrice di dimensione 1x3)
La moltiplicazione di 5x1 per 1x3 produce la matrice 5x3 richiesta.
Vediamo ora un altro esempio (Esercizio 2.17 del libro).
La prima colonna si ottiene facilmente in quanto è la sequenza (3:3:15)'.
TerzaColonna=PrimaColonna+12
In termini matriciali PrimaColonna+(0:6:36)
produce la matrice richiesta
Ovviamente dato che a+b = a+k-k+b anche
produce il risultato richiesto.
Fatemi sapere se sono stato chiaro
Avrei un dubbio. Nell'esercizio 2.17 del libro, ho capito che bisogna sempre prendere la prima colonna per iniziare, ma non capisco da cosa derivi la sequenza (0:6:36).
La prima colonna si ottiene aggiungendo 0 alla variabile denominata PrimaColonna
La seconda colonna si ottiene aggiungendo 6 alla variabile denominata PrimaColonna
La terza colonna si ottiene aggiungendo 12 alla variabile denominata PrimaColonna
...
La settima colonna si ottiene aggiungendo 36 alla variabile denominata PrimaColonna
In termini matriciali
PrimaColonna+(0:6:36)
ossia
PrimaColonna+[0 6 12 18 24 30 36]
crea la matrice desiderata.
Questo esercizio ora mi è chiaro, ma avrei un ulteriore dubbio su un'altro esercizio, il numero 2.2 del libro, da svolgere. Ho guardato la soluzione, ma non capisco perchè in questo caso il primo termine non sia (6:3:24)', ma è (2:8)'.
Assumo che si riferisca all'Esercizio HW2.2 e non come scrive lei al "numero 2.2". Altra cosa: non capisco cosa lei intenda per primo termine. Qua abbiamo due vettori una colonna (che premoltiplica) e l'altro riga (che postmoltiplica).
La prima colonna
6 9 12 15 18 21 24
si può ottenere come
(6:3:24)'
ossia come sequenza (6 9 12 ..., 24) trasposta
oppure come
(2:8)'*3
(2 3 4 .... 8)'*3
La soluzione proposta dal testo è
X=(2:8)'*(3:10);
ossia la prima colonna di X si ottiene come (2:8)'3 la seconda colonna di X si ottiene come (2:8)'4 la terza colonna di X si ottiene come (2:8)'*5 .....
Mi faccia sapere se ora ha capito
In generale ab =a(k/k)*b con k diverso da 0
Quindi se preferisce può risolvere l'esercizio (da pivello) come segue
X=(6:3:24)'*(3:10)/3;
ossia la prima colonna di X si ottiene come (6:3:24)'3/3 la seconda colonna di X si ottiene come (6:3:24)'4/3 la terza colonna di X si ottiene come (6:3:24)'*5/3
Perfetto. Adesso mi è più chiaro. La ringrazio per le delucidazioni
Buongiorno professore, Le scrivo per avere un chiarimento circa l'argomento delle matrici su MATLAB. In particolare, quando si tratta di ricreare una matrice tramite moltiplicazione matriciale. Quello che non capisco è il metodo per capire quali numeri usare per ricreare una matrice. Se magari esiste una formula particolare o in base a dei numeri scritti nella matrice da ricreare.