function [y] = my_prod_trid(a,b,c,v) %calcolare il prodotto matrice vettore nel caso % la matrice abbia elementi eventualmente non nulli %solo sulla diagonale principale (i=j) denotata con a; %sulla sopradiagonale (i=j-1) denotata con c e sulla %sottodiagonale denotata con b(i-1=j) %queste matrici si chiamano tridiagonali %a,b,c sono vettori che raccolgono gli elementi della matrice %a ha dimensione n, b e c hanno dimensione n-1 n=length(v); y=zeros(n); y(1)=a(1)*v(1)+c(1)*v(2); for k=2:n-1 y(k)=b(k-1)*v(k-1)+a(k)*v(k)+c(k)*v(k+1); end y(n)=a(n)*v(n)+b(n-1)*v(n-1); end %%%%Esercizio: osservare la matrice e' memorizzata %%%tramite O(n) dati. Determinare il costo computazionale. %%%Scrivere un programma che moltiplica una matrice %%%%tra loro 2 matrici tridiagonali. Determinarne il costo %%%computazionale