• Non ci sono risultati.

Esempio 1 Nel 1601 Keplero formul`o la terza legge del moto planetario T

N/A
N/A
Protected

Academic year: 2021

Condividi "Esempio 1 Nel 1601 Keplero formul`o la terza legge del moto planetario T"

Copied!
39
0
0

Testo completo

(1)

Esempio 1

Nel 1601 Keplero formul`o la terza legge del moto planetario T = Cx3/2

dove x `e la distanza dal sole in milione di km., T `e il periodo dell’orbita misurato in giorni e C `e una costante. Le coppie (x, T ) osservate per gli 8 planeti e Plutone sono

(2)

Esempio 1

La costante C non `e immediatamente calcolabile. Infatti: >> x= [ 5 7 . 5 9 ; 1 0 8 . 1 1 ; 1 4 9 . 5 7 ; 2 2 7 . 8 4 ; 7 7 8 . 1 4 ; . . . 1 4 2 7 . 0 ; 2 8 7 0 . 3 ; 4 4 9 9 . 9 ; 5 9 0 9 . 0 ] ; >> T= [ 8 7 . 9 9 ; 2 2 4 . 7 0 ; 3 6 5 . 2 6 ; 6 8 6 . 9 8 ; 4 3 3 2 . 4 ; . . . 10759 ; 3 0 6 8 4 ; 6 0 1 8 8 ; 9 0 7 1 9 ] ; >> f o r m a t long e >> C=T . / ( x . ˆ ( 3 / 2 ) ) C = 2 . 0 1 3 3 1 9 4 9 9 9 5 8 8 5 0 e−01 1 . 9 9 8 9 6 0 7 7 1 4 2 9 3 0 0 e−01 1 . 9 9 6 8 0 3 7 0 7 1 7 8 6 9 0 e−01 1 . 9 9 7 5 5 6 7 9 3 1 6 2 8 8 1 e−01 1 . 9 9 5 9 1 4 5 1 3 5 5 5 4 8 1 e−01 1 . 9 9 5 8 8 6 9 9 2 6 4 0 1 0 7 e−01 1 . 9 9 5 3 5 8 9 6 9 4 3 9 9 3 5 e−01 1 . 9 9 3 9 1 0 3 0 6 7 1 1 4 5 9 e−01 1 . 9 9 7 2 2 6 2 6 7 9 5 4 9 9 6 e−01 >>

(3)

Esempio 2

Siano m la magnitudine apparente di una cometa, ∆ e r rispettivamente le distanze in unit`a astronomiche della cometa dalla Terra e dal Sole, g la magnitudine assoluta e ξ un coefficiente. Noto che

m= g + 5 log10(∆) + ξ log10(r )

e determinati alcuni valori di m, ∆, r , determinare g e ξ. Quindi si desiderano calcolare i migliori A ≈ g , B ≈ ξ tali che

A+ B log10(r ) ≈ m − 5 log10(∆).

(4)
(5)

Plot risultati

1.5 1.6 1.7 1.8 1.9 2 9.4 9.6 9.8 10 10.2 10.4 10.6 10.8 11 11.2 11.4

(6)

Approssimazione ai minimi quadrati

Questi due problemi rientrano nella famiglia pi`u ampia che segue. ◮ Sia fissata una certa funzione f : Ω ⊂ R → R di cui `e noto il valore nei punti {xk}k=1,...,n⊂ Ω. Hp. f ∈ C (Ω), Ω = (a, b)

anche non limitato (per semplicit`a , si pu`o generalizzare).

Si cerchino a = (aj)j=1,...,m per cui la funzione

ψ∗(x) =

m

X

j=1

ajφj(x)

minimizza tra tutte le funzioni del tipo ψ(x) =Pm

j=1cjφj(x), kf −ψk2,d := v u u t n X k=1 |f (xk) − ψ(xk)|2 = v u u t n X k=1 |f (xk) − m X j=1 cjφj(xk)|2

La funzione ψ∗ si diceapprossimante ai minimi quadrati (discreti)

(7)

Approssimazione ai minimi quadrati

Questi due problemi rientrano nella famiglia pi`u ampia che segue. ◮ Sia fissata una certa funzione f : Ω ⊂ R → R di cui `e noto il valore nei punti {xk}k=1,...,n⊂ Ω. Hp. f ∈ C (Ω), Ω = (a, b)

anche non limitato (per semplicit`a , si pu`o generalizzare). ◮ Siano date m funzioni lin. indip. φ1, . . ., φm: Ω ⊂ R → R. Si cerchino a = (aj)j=1,...,m per cui la funzione

ψ∗(x) =

m

X

j=1

ajφj(x)

minimizza tra tutte le funzioni del tipo ψ(x) =Pm

j=1cjφj(x), kf −ψk2,d := v u u t n X k=1 |f (xk) − ψ(xk)|2 = v u u t n X k=1 |f (xk) − m X j=1 cjφj(xk)|2

La funzione ψ∗ si diceapprossimante ai minimi quadrati (discreti)

(8)

Approssimazione ai minimi quadrati e sistemi lineari

Posto kxk2 :=pPnk=1|xk|2 e definiti

◮ V la matrice n × m le cui componenti sono Vi,j = φj(xi), ◮ y il vettore n × 1 le cui componenti sono yk = f (xk), ◮ a il vettore m × 1 le cui componenti sono ak,

il problema di approssimazione ai minimi quadraticonsiste nel risolvere il sistema sovradeterminato Va = y cosicch`e sia minima kV a − yk2 in quanto kV a − yk2 = v u u t n X k=1 |yk− (V a)k|2 = v u u t n X k=1 |yk− m X j=1 Vk,jaj|2 = v u u t n X k=1 |f (xk) − m X j=1 ajφj(xk)|2 = kf − m X j=1 ajφjk2,d

(9)

Funzione peso e prodotto scalare

Al momento non risulta chiaro come risolvere questo sistema sovradeterminato V a = y cosicch`e sia minima kV a − yk2.

Sia w : Ω = (a, b) → R una funzione peso(continua, strettamente positiva in (a, b), singolarit`a integrabili agli estremi sono ammesse).

◮ Jacobi: w (x) = (1 − x)α(1 + x)β, x ∈ (−1, 1), α, β > −1. Casi speciali: α = β = 0 (Legendre), α = β = −1/2 (Chebyshev), α = β (Gegenbauer).

Due classici prodotti scalaridi due funzioni w -integrabili sono ◮ (f , g )c :=R

Ωf(x)g (x)w (x)dx, caso continuo;

(10)

Funzione peso e prodotto scalare

Al momento non risulta chiaro come risolvere questo sistema sovradeterminato V a = y cosicch`e sia minima kV a − yk2.

Sia w : Ω = (a, b) → R una funzione peso(continua, strettamente positiva in (a, b), singolarit`a integrabili agli estremi sono ammesse).

◮ Jacobi: w (x) = (1 − x)α(1 + x)β, x ∈ (−1, 1), α, β > −1. Casi speciali: α = β = 0 (Legendre), α = β = −1/2 (Chebyshev), α = β (Gegenbauer).

◮ Gauss: w (x) = exp(−x2), x ∈ R.

Due classici prodotti scalaridi due funzioni w -integrabili sono ◮ (f , g )c :=R

Ωf(x)g (x)w (x)dx, caso continuo;

◮ (f , g )d :=Pn

i=1f(xi)g (xi)wi,caso discreto.

I coeffs. wi del caso discreto dipendono dalla funz. peso w .

(11)

Norme, prod. scalari e ortogonalit`a

Definiamo kf k =p(f , f ). Osserviamo che:

◮ kxk

2:=pPnk=1|xk|2 =p(x, x)Rn dove (·, ·)Rn `e l’usuale prodotto scalare di Rn.

◮ kf − ψk

2,d :=pPnk=1|f (xk) − ψ(xk)|2 =p(f − ψ, f − ψ)d

Alcune definizioni ulteriori.

◮ Due funzioni f , g si dicono ortogonalise (f , g ) = 0. ◮ Una sequenza finita o infinita di funzioni {φk}

k=1,... si dice

sistema ortogonale se (φi, φj) = 0 per i 6= j, (φi, φi) > 0.

◮ Un sistema ortogonale {φk}k=1,... per cui (φi, φi) = 1 si dice

(12)

Riassunto

◮ Dobbiamo cercare una funzione ψ∗ =Pm

k=1φk che meglio

approssimi f nei punti 2 a 2 distinti {xk}, nel senso di

minimizzare kf − ψk2,d := v u u t n X k=1 |f (xk) − ψ(xk)|2 =p(f − ψ, f − ψ)d, con (f , g )d := Pn

(13)

Riassunto

◮ Dobbiamo cercare una funzione ψ∗ =Pm

k=1φk che meglio

approssimi f nei punti 2 a 2 distinti {xk}, nel senso di

minimizzare kf − ψk2,d := v u u t n X k=1 |f (xk) − ψ(xk)|2 =p(f − ψ, f − ψ)d, con (f , g )d := Pn

i=1f(xi)g (xi), quindi per wi = 1.

◮ Il problema si converte in una questione di algebra lineare: risolvere il sistema sovradeterminato V a = y cosicch`e sia minima

(14)

Alcuni teoremi

Teorema. [Pitagora] Se (f , g ) = 0 allora kf + g k2 = kf k2+ kg k2.

Teorema. Se φ1, . . . , φn `e un sistema ortogonale, allora i φj sono

linearmente indipendenti.

Teorema. Se φ1, . . . , φn `e un sistema ortogonale, allora

(15)

Teorema miglior approssimazione minimi quadrati

Teorema. Siano {φj}1,...,m∈ C (Ω) funzioni linearmente

indipendenti. Allora la soluzione del problema

kf − ψ∗k2 = min ψ∈span{φj}j=1,...,m kf − ψk2 `e ψ∗ = X 1,...,m cj∗φj

dove i coefficienti cj∗ verificano le cosidetteequazioni normali m

X

k=1

(φj, φk)ck∗ = (φj, f ), j = 1, . . . , m.

La soluzione `e caratterizzata dalla propriet`a di ortogonalit´a cio`e che ψ∗− f `e ortogonale a tutti gli φk, con k = 1, . . . , m, cio`e

(16)

Teorema miglior approssimazione minimi quadrati: dim.

Sia c = (ck)1,...,m, una vettore di coefficienti e supponiamo che per

almeno un indice j sia cj 6= cj∗, cio`e c 6= c∗= (ck∗)1,...,m. Allora

m X j=1 cjφj − f =   m X j=1 cjφj − ψ∗  + (ψ∗− f ) = m X j=1 (cj − cj∗)φj + (ψ∗− f ) (2) Se u = ψ∗− f `e ortogonale a tutti i φ

j, allora `e ortogonale pure

alla combinazione lineare di φj come ad esempio

(17)

Teorema miglior approssimazione minimi quadrati: dim.

(18)

Teorema miglior approssimazione minimi quadrati: dim.

Di conseguenza se ψ∗ ∈ span{φ

k}k=1,...,m e ψ∗− f `e ortogonale a

tutti i φk allora ψ∗ `e la miglior approssimazione di f in

span{φk}k=1,...,m. Rimane allora da mostrare che le condizioni di

ortogonalit`a   m X j=1 cj∗φj − f , φk  = 0, k = 1, . . . , m

possano essere soddisfatte per un qualche c∗ = (c

j)j=1,...,m.

Questo problema `e equivalente alla soluzione del sistema di equazioni normali

m

X

k=1

(19)

Teorema miglior approssimazione minimi quadrati: dim.

Se φ1, . . . , φm sono m vettori linearmente indipendenti che

formano un sistema ortogonale, si ha che

m X k=1 (φj, φk)ck∗ = (φj, φj)cj∗ e quindi da (??) che (φk, φk)ck∗ = (φk, f ).

Visto che (φk, φk) 6= 0 (se cos`ı non fosse 0 = (φk, φk) = kφkk2

avremmo φk = 0 e quindi {φj}j=1,...,m non sarebbe un sistema di

vettori linearmente indipendenti) si vede subito che (ck∗)k esistono

unici e uguali a

ck∗ = (φk, f ) (φk, φk)

(20)

Teorema miglior approssimazione minimi quadrati: dim.

Se invece φ1, . . . , φm non formano un sistema ortogonale, il

sistema di equazioni normali ha una e una sola soluzione se il sistema omogeneo di equazioni

m

X

k=1

(φj, φk)ck∗ = 0, j = 1, . . . , m (5)

(21)

Teorema miglior approssimazione minimi quadrati: dim.

Se cos`ı non fosse, esisterebbe c∗ = (cj)j=1,...,m per cui da (??)

k m X j=1 cjφjk2 =   m X j=1 cjφj, m X k=1 ckφk   = m X k=1 ck m X j=1 cj(φj, φk) = m X k=1 ck · 0 = 0 (6)

e quindi essendo k · k una norma, necessariamente Pm

j=1cj∗φj = 0,

(22)

Corollario miglior approssimazione minimi quadrati

Teorema. Se {φj}j=1,...,m `e un sistema ortogonale allora i

coefficienti c∗

j (detti in questo caso di Fourier) sono calcolabili pi`u

semplicemente con la formula

cj∗= (f , φj) (φj, φj)

(23)

Risoluzione minimi quadrati iniziale

◮ Si determina una base ortogonale {φ⊥

k} dello spazio vett.

S = span({φk}k=1,...,m) (algoritmo di Gram-Schmidt);

(24)

Risoluzione minimi quadrati iniziale

◮ Si determina una base ortogonale {φ⊥

k} dello spazio vett.

S = span({φk}k=1,...,m) (algoritmo di Gram-Schmidt);

◮ Si calcola c∗

j =

(f ,φj)

(φj,φj), j = 1, . . . , m;

(25)

Risoluzione minimi quadrati iniziale

◮ Si determina una base ortogonale {φ⊥

k} dello spazio vett.

S = span({φk}k=1,...,m) (algoritmo di Gram-Schmidt);

◮ Si calcola c∗ j = (f ,φj) (φj,φj), j = 1, . . . , m; ◮ Si ottiene ψ∗ =P jcj∗φ⊥k.

(26)

Minimi quadrati in Matlab/Octave

Per risolvere il problema ai minimi quadrati in Matlab (sistema sovradeterminato), basta usare il comando \.

(27)

Risultati esempio 1

% d a t i =[UT m r d e l t a ] dati=[ 4 . 0 1 1 1 . 4 1 . 9 8 7 1 . 2 4 9 5 . 0 0 1 1 . 5 1 . 9 8 1 1 . 2 5 2 9 . 0 2 1 1 . 5 1 . 9 5 8 1 . 2 6 6 1 0 . 0 2 1 1 . 3 1 . 9 5 2 1 . 2 7 0 2 5 . 0 3 1 1 . 5 1 . 8 6 5 1 . 3 3 5 7 . 0 7 1 1 . 3 1 . 8 0 9 1 . 3 8 2 1 4 . 0 3 1 1 . 5 1 . 7 7 2 1 . 4 1 5 3 0 . 0 5 1 1 . 0 1 . 6 9 3 1 . 4 8 7 3 . 0 5 1 1 . 1 1 . 6 7 4 1 . 5 0 4 1 0 . 0 6 1 0 . 9 1 . 6 4 3 1 . 5 3 2 2 6 . 0 7 1 0 . 7 1 . 5 8 2 1 . 5 9 2 1 . 0 8 1 0 . 6 1 . 5 6 6 1 . 6 1 0 8 . 0 7 1 0 . 7 1 . 5 4 5 1 . 6 3 4 2 6 . 0 9 1 0 . 8 1 . 5 0 7 1 . 6 9 6 ] ;

UT=dati ( : , 1 ) ; m=dati ( : , 2 ) ; r=dati ( : , 3 ) ; delta=dati ( : , 4 ) ;

% g+x ∗ l o g ( r )=m−5∗ l o g ( d e l t a ) , DETERMINARE g , x . % p h i 1 ( x ) =1 , p h i 2 ( x )=l o g ( r ) , c1=g , c2=x .

(28)
(29)

Minimi quadrati e smoothing

Digitiamo sulla shell di Matlab >> x= 0 : 0 . 0 1 : 2 ∗p i;

>> y=s i n( 2 ∗ x ) +(10ˆ( −1) ) ∗r a n d(s i z e( x ) ) ; >> p l o t( x , y ,’ r− ’) ;

(30)

Minimi quadrati e smoothing

Digitiamo sulla shell di Matlab >> x= 0 : 0 . 0 1 : 2 ∗p i;

>> y=s i n( 2 ∗ x ) +(10ˆ( −1) ) ∗r a n d(s i z e( x ) ) ; >> p l o t( x , y ,’ r− ’) ;

◮ Interpretazione: perturbazione della funzione sin(2x) nell’intervallo [0, 2π].

(31)

Minimi quadrati e smoothing

Digitiamo sulla shell di Matlab >> x= 0 : 0 . 0 1 : 2 ∗p i;

>> y=s i n( 2 ∗ x ) +(10ˆ( −1) ) ∗r a n d(s i z e( x ) ) ; >> p l o t( x , y ,’ r− ’) ;

◮ Interpretazione: perturbazione della funzione sin(2x) nell’intervallo [0, 2π].

◮ Necessit´a: ricostruire sin(2x) (e non funz. perturbata). ◮ Nota: non ha senso utilizzare un interpolante polinomiale p di

(32)

Minimi quadrati e polyfit

Scriviamo sulla shell di Matlab/Octave help polyfit. In una recente release di Matlab appare

POLYFIT Fit polynomial to data.

POLYFIT( X , Y , N ) finds the coefficients of a polynomial P( X )

of degree N that fits the data, P ( X ( I ) )˜=Y ( I ) , in a least

−squares sense .

In altri termini polyfit calcola i coefficienti del polinomio pN di

grado N che meglio approssima (in norma 2 discreta) la funzione f avente nel vettore di nodi X i valori Y (cio`e Y (i ) := f (X (i ))). Operativamente si cerca il polinomio pN per cui risulta minima

kf − pNk2,d =

s X

i

(33)

Applicazione polyfit

◮ Posto f (x) = sin (x) e ˜f(x) = sin (x) + δ(x), confrontiamo graficamente per n = 2, . . . , 8, nei nodi xk = kh, h = 2π/999,

(34)

Applicazione polyfit

◮ Posto f (x) = sin (x) e ˜f(x) = sin (x) + δ(x), confrontiamo graficamente per n = 2, . . . , 8, nei nodi xk = kh, h = 2π/999,

k = 0, . . . , 999, la funzione perturbata f (x) = sin (x) + δ(x) con la approssimante ai minimi quadrati p∗n.

◮ Valutiamo per n = 2, . . . , 8 la quantit`a kf − p∗

nk2,d e

(35)

Applicazione polyfit

◮ Posto f (x) = sin (x) e ˜f(x) = sin (x) + δ(x), confrontiamo graficamente per n = 2, . . . , 8, nei nodi xk = kh, h = 2π/999,

k = 0, . . . , 999, la funzione perturbata f (x) = sin (x) + δ(x) con la approssimante ai minimi quadrati p∗n.

◮ Valutiamo per n = 2, . . . , 8 la quantit`a kf − p∗

nk2,d e

k˜f − p∗ nk2,d.

◮ Valutiamo per n = 2, . . . , 8 la quantit`a kf − p∗

nk∞,d e

k˜f − p∗

nk∞,d, dove ricordiamo

kg k∞,d = max

(36)

Applicazione polyfit

Salviamo in esempio3.m: x=l i n s p a c e( 0 , 2 ∗p i, 1 0 0 0 ) ;

y=s i n( 2 ∗ x ) ; yy=y+(10ˆ( −2) ) ∗r a n d(s i z e( x ) ) ; f o r n=2:8

coeff=p o l y f i t( x , yy , n ) ; % COEFFS . BEST APPROX (B . A . )

z=p o l y v a l( coeff , x ) ; % VALORE B . A . NEI NODI ” x ” .

p l o t( x , yy , ’ r− ’, x , z ,’ k− ’) ;

err2=norm( z−y , 2 ) ; err2p=norm( z−yy , 2 ) ; % ERRS .

errinf=norm( z−y , inf ) ; errinfp=norm( z−yy , inf ) ; % ERRS .

f p r i n t f(’ \n\ t [ DEG] : % 2 . 0 f ’, n ) ;

f p r i n t f(’ [ 2 ] : % 2 . 2 e %2.2 e ’, err2 , err2p ) ; f p r i n t f(’ [ INF ] : % 2 . 2 e %2.2 e ’, errinf , errinfp ) ; p a u s e( 2 ) ;

end

(37)

Risultati

>>% [ ERR . ] [ 2 ] : SIN .−SIN PERT . [ INF ] : SIN .− SIN PERT . >> esempio3

(38)

Plot risultati

0 1 2 3 4 5 6 7 −1.5 −1 −0.5 0 0.5 1 1.5

(39)

Nota: polyfit e interpolazione

Supponiamo fissati i punti {xk}k=1,...,m (a due a due distinti) e sia

pm−1 il polinomio che interpola le coppie (xk,f (xk)) per

k = 1, . . . , m Evidentemente da f (xi) = pm−1(xi) per i = 1, . . . , m abbiamo kf − pm−1k2,d = v u u t m X i=1 |f (xi) − pm−1(xi)|2 = 0,

e quindi il polinomio interpolatore risulta la approssimante ai minimi quadrati di f (relativa alla norma 2 discreta basata sui punti {xk}k=1,...,m).

Riferimenti

Documenti correlati

• L’implementazione con array consiste nell’usare un array flessibile, cioè un array che può modificare dinamicamente le sue dimensioni, perchè, in generale, non è noto a

[r]

[r]

Ricordiamo che in generale, non ha senso cercare un grado troppo alto del polinomio di miglior approssimazio- ne p N in quanto si otterrebbe a partire da un certo valore il

• Per fare il plot del polinomio di miglior approssimazione ai minimi quadrati, visto che `e una retta bastano due pun- ti

Ora la leggibilità delle frecce è molto aumentata. Come in ogni esempio, si può ora fare un’analisi non matematica ma qualitativa delle associazioni tra regioni, tra frecce e

Indicare l’indirizzo del 1° e dell’ultimo host della 10° subnet relativa all’indirizzo di rete 25.0.0.0 di cui 13 bit sono dedicati agli host e i rimanenti alle subnet.

[r]