Operazioni puntuali in MatLab

thedarkhero
Non mi è chiara la differenza tra le normali operazioni in MatLab e le operazioni puntuali.
In alcuni casi ad esempio si deve scrivere
x*y
, in altri
x.*y
.
Qual'è la differenza?

Risposte
_luca.barletta
L'operazione con il punto permette di fare l'operazione binaria per ogni elemento nelle posizioni corrispondenti di x e di y. Senza il punto è l'usuale prodotto scalare, o righe-colonne, tra x e y.
Analogamente per le altre operazioni.

thedarkhero
Quindi se x=[x1,x2] e y=[y1,y2] cosa significa x.*y?

_luca.barletta
"thedarkhero":
Quindi se x=[x1,x2] e y=[y1,y2] cosa significa x.*y?


significa
[x1*y1, x2*y2]

apatriarca
Per gli x e y postati non è possibile usare l'altra operazione perché sono entrambe matrici righe. È necessario trasporre una delle due nel modo seguente:
x * y' = x1 * y1 + x2*y2
x' * y = [x1*y1, x1*y2; x2*y1, x2*y2]

La prima fa quindi un prodotto scalare mentre il secondo calcola una matrice con tutti i prodotti misti tra le componenti dei due vettori.

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.