Questa è una vecchia versione del documento!
Alcuni esercizi per casa
Lezione del 1/3/2010
Scrivere una function Sierpinski per disegnare il triangolo di Sierpinski usando le trasformazioni lineari affini
x=Ax+b_i
dove A=[1/2, 0; 0, 1/2], b_1=[0,0]; b_2=[1/2 0]; b_3=[1/4, sqrt(3)/4]. Ognuna delle trasformazione si applica con probabilita' 1/3.
Lezione del 15 Marzo 2010
Scivere la funzione miaspline per valutare la spline cubica in un nodo i
function v=miaspline(nodi,y, u)
con nodi vettore dei nodi e y valori e u un vettore di valori sulla quale si vuole valutare la spline s(x). v e' un vettore lungo quanto u tale che v=s(u). Sia n=length(nodi)-1, cioe' n e' il numero di intervalli in cui e' diviso l'intervallo [x_0, x_n].
Dalla teoria vista a lezione, detti mu(i) i momenti del secondo ordine mu(i)=s“_i(x(i)), si arriva ad un sistema tridiagonale con elementi principali uguali a 2 e con elemeti sopra diagonali d_i e sotto diagonali c_i, dove valcolo le seguenti relazioni. Poiche' nodi=[x_0, x_1…, x_n], abbiamo che nodi(i)=x_(i-1)
d_i=h_i/(h_(i-1)+h_(i)) i=1, 2, …, n-2
e c_i=h_(i-1)/(h_(i-1)+h_i) i=2, 3, …, n-1
dove h_i=nodi(i+2)-nodi(i+1)=x_(i+1)-x_i, i=0,1,.. n-1.
Si faccia attenzione al fatto che poiche' in Octave gli indici partono da 1, le due relazioni precedenti devono essere riscritte tenedo conto che h_i=nodi(i+2)-nodi(i+1), mentre se h=diff(nodi) abbiamo che h(i)=nodi(i+1)-nodi(i), cioe' h(i)=h_(i+1), quindi le relazioni precedenti diventano
d(i)=h(i+1)/(h(i)+h(i+1)) per i=1, 2, .. ,n-2
c(i)=h(i)/(h(i)+h(i+1)) per i=2, 3, …, n-1
In particolare il primo d_i e'
d(1)=h(2)/(h(1)+h(2))= (x_2-x_1)/(x_2-x_0)=(nodi(3)-nodi(2))/(nodi(3)-nodi(1))
e l'ultimo c_i e'
c(n-1)= h(n-1)/(h(n-1)+h(n))=(nodi(n)-nodi(n-1))/(nodi(n+1)-nodi(n-1))
Se i nodi sono equidistanti si deve ottenere d(i)=c(i)=1/2.
Per il termine noto abbiamo che posto
delta= diff(y)./h;
dove delta e' un vettore lungo n.
diffdelta=diff(delta)
Il termine noto del sistema risulta
b(i)=diffdelta(i)/(h(i)+h(i+1))
Lezione del 18/3/2010
Completare l'esercizio iniziati a lezione sulle Bspline. In particolare, scrivere la funzione bs_coeff con le seguenti specifiche
function N=bs_coeff(i,p,t,u)
tale che N=N_{i,p}(u), con nodi specificati da t.
Lezione del 22/3/2010
Finire di scrivere la funzione polytrig con le seguenti caratteristiche
function v=polytrig(y, u)
che restituisce il polinomio di interpolazione triogonometrico valutato in u, cioe' v=F(u).
Si ricorda che F e' definito nel seguente modo