Post on 17-Feb-2019
transcript
Dipartimento di Matematica Università di Bologna
Serena Morigi
Interpolazione Interpolazione Polinomiale a tratti Polinomiale a tratti
Serena Morigi Dipartimento di Matematica Università di Bologna
Dai polinomi ai polinomi a tratti…..
I polinomi sono funzioni regolari, I polinomi sono funzioni regolari, facilmente calcolabili, con derivata ed facilmente calcolabili, con derivata ed antiderivata ancora in forma polinomiale, antiderivata ancora in forma polinomiale, approssimano funzioni continue..approssimano funzioni continue..I polinomi possono presentare la I polinomi possono presentare la caratteristica di oscillare all’aumentare del caratteristica di oscillare all’aumentare del grado;grado;Buon comportamento su piccoli intervalli Buon comportamento su piccoli intervalli e grado basso (n <4,5);e grado basso (n <4,5);
Serena Morigi Dipartimento di Matematica Università di Bologna
Dai Dai polinomipolinomi …..…..aiai polinomipolinomi a a trattitratti
Si suddivide l’intervallo in tratti più piccoli e si lavora su qSi suddivide l’intervallo in tratti più piccoli e si lavora su questi uesti con polinomi di grado relativamente basso;con polinomi di grado relativamente basso;
Serena Morigi Dipartimento di Matematica Università di Bologna
Interpolazione Polinomiale a Interpolazione Polinomiale a trattitratti
Siano assegnate Siano assegnate m+1m+1 osservazioni osservazioni yyii, , i=0,..,mi=0,..,m nei nei punti (punti (NODINODI):):
Un polinomio interpolante a tratti consiste Un polinomio interpolante a tratti consiste di m polinomi di grado n<<m: di m polinomi di grado n<<m:
1,...,0)()(soddisfa],[sudefinito)(
),(),...,(),(
...
11
1
110
210
−===
=<<<<=
++
+
−
mkyxpyxpxxxp
xpxpxp
bxxxxa
kkkkkk
kkk
m
m
Serena Morigi Dipartimento di Matematica Università di Bologna
Polinomi a tratti di interpolazione di grado 1
],[;)()()( 11
1+
+
+ ∈−−
−+== kkkk
kkkkk xxx
xxyyxxyxpxp
a=x1 x2 xk xk+1 xm+1=b
Serena Morigi Dipartimento di Matematica Università di Bologna
Polinomi a tratti di interpolazione
•• Si è però persa un’ importante proprietà: Si è però persa un’ importante proprietà: i polinomi a tratti non sono necessariamente funzioni i polinomi a tratti non sono necessariamente funzioni
regolari: regolari:
•• ESEMPIO: se n=1, p(xESEMPIO: se n=1, p(x) è funzione continua, ma ) è funzione continua, ma p’(x) non è continua, p’(x) non è continua, assume unassume un valore costante valore costante ddk k
susu ogni sottointervallo, con salti nei nodi.ogni sottointervallo, con salti nei nodi.
kk
kkk xx
yyd−−
=+
+
1
1
Serena Morigi Dipartimento di Matematica Università di Bologna
Pendenza nei puntiPendenza nei punti
Serena Morigi Dipartimento di Matematica Università di Bologna
Interpolazione cubica (n=3) atratti di Hermite
Dati i valori Dati i valori yy00,..,y,..,ymm corrispondenti ai parametri corrispondenti ai parametri xx00,..,x,..,xmm,, e le corrispondenti tangenti e le corrispondenti tangenti dd00,..,d,..,dmm
Determinare un polinomio Determinare un polinomio cubico Ccubico C11 a tratti che a tratti che interpoli i dati:interpoli i dati:
ii
ii
dxpdtd
miyxp
=
==
)(
,..,0,)(
Serena Morigi Dipartimento di Matematica Università di Bologna
kkkk
kk
kk
k
k
kk
kkk
k
k
kkkk
kkkk
xxhxxs
dh
hssdh
hss
yh
sshhyh
sshxp
dxpdxpyxpyxp
−=−=
−+
−
++−
+−
=
⎩⎨⎧
====
+
+
+
++
++
1
2
2
12
2
3
323
13
32
11
11
)()(
2323)(
)(';)(')(;)(
m polinomi cubici --> 4m incognite, su ciascun tratto risolvere il sistema 4x4:
Polinomio cubico interpolante a tratti:
Serena Morigi Dipartimento di Matematica Università di Bologna
Stime Stime delle derivatedelle derivate
hhkk=x=xk+1k+1--xxkk
ffkk=y=yk+1k+1--yykk k=0,..,mk=0,..,m--11
ddkk=f=fkk/h/hkk
Es. (stima di BesselEs. (stima di Bessel) no oscillazioni) no oscillazioni
kk
ki
kkkkk
hhhc
dcdcD
−=
+−=
−
−
−
1
1
1)1(
yk
yk-1
yk+1
xk-1 xk xk+1
Serena Morigi Dipartimento di Matematica Università di Bologna
Interpolazionepolinomiale a tratti
Siano assegnate m+1 osservazioni Siano assegnate m+1 osservazioni yykk k=0,..,mk=0,..,mnei punti distinti xnei punti distinti xkk in in [a,b][a,b]
xx00 xx1 1 xx22 xxkk
un polinomio interpolante a tratti consiste di m un polinomio interpolante a tratti consiste di m polinomi ppolinomi pkk(x),k=0,..,m(x),k=0,..,m--1, di grado n<<m : 1, di grado n<<m :
nodia b
1,...,1,..,0)()()2
1,..,1,)()()1],[sudefinito)(
)()(1
1
1
−===
−==≡
−
−
+
mkNlxpxp
mkyxpxpxxxp
kl
kkl
k
iikik
kkk
L’interpolante a tratti è di classe CL’interpolante a tratti è di classe CN N ,funzione continua fino alla ,funzione continua fino alla derivata di ordine N≤nderivata di ordine N≤n--11
Serena Morigi Dipartimento di Matematica Università di Bologna
Def. Def. FunzioneFunzione SplineSpline s(x)s(x)
II0 0 II1 1 IIkk--11 IIkk
xx0 0 xx1 1 xx2 2 xxk k xxk+1k+1
))((1,..,0),()(
:.2
)(,,..,0,),()(.1
1)(1
)( −− ∈−=≡
∈=∈≡
njj
ljj
l
njjj
CxsnlxsDxsD
nodisuicontinuità
PxskjIxxsxs
Spline polinomiale: polinomio a tratti con condizioni di massima regolarità nei nodi
Serena Morigi Dipartimento di Matematica Università di Bologna
Esempio: Esempio: spline spline cubica naturalecubica naturale
⎪⎪⎪
⎩
⎪⎪⎪
⎨
⎧
=+=++=+
++=++=+++=+++=+++=+++
+++=+++=
0620626262
3232
)()(
343143
243243
224232
224232
33
342
3332123
242
23221
23
242
2322113
142
13121
34
23212
34
23211
xbbxaaxbbxaa
xbxbbxaxaayxbxbxbbyxbxbxbbyxaxaxaayxaxaxaa
xbxbxbbxpxaxaxaaxp
x1 x3x2
Risolvere il sistema 8x8 nelle incognite aRisolvere il sistema 8x8 nelle incognite aii, b, bii, i=1,4, i=1,4
Spline Interpolante i dati (xi,yi), i=1,..3 è definita da due pol. cubicisu intervalli [x1,x2] e [x2,x3] che si raccordano C2.
Serena Morigi Dipartimento di Matematica Università di Bologna
Esempio: Esempio: spline spline cubica naturalecubica naturale
⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢
⎣
⎡
=
⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢
⎣
⎡
⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢
⎣
⎡
−−−−−
+++=+++=
0000
62000000000062006200620032103210
1000010000
0000100001
)()(
3
2
2
1
4
3
2
1
4
3
2
1
3
1
22
222
222
33
233
32
222
32
222
31
211
34
23212
34
23211
yyyy
bbbbaaaa
xx
xxxxxx
xxxxxx
xxxxxx
xbxbxbbxpxaxaxaaxp
Funzioni di base diverse da quelle polinomiali qui utilizzate portano a sistemi con matrici coefficienti con strutture a banda.
Serena Morigi Dipartimento di Matematica Università di Bologna
Interpolazione di funzioniInterpolazione di funzioni
Assegnati i punti PAssegnati i punti Pii(t(tii,,yyii) con valori ) con valori trovare la funzione che passa per trovare la funzione che passa per tali punti tali punti f(tf(tii)=)=yyii i=0,..,ni=0,..,n
Risolvere il sistema lineare:Risolvere il sistema lineare:
YVa =
Serena Morigi Dipartimento di Matematica Università di Bologna
Curve in formaparametrica
Una curva parametrica nello spazio è definita da tre funzioni x(t) y(t) e z(t) del parametro t. Al variare di t, le coordinate(x(t),y(t),z(t)) individuano un punto che si sposta sulla curva.
F(t)=(x(t),y(t),z(t))ti
z
xy ti
F(a)
F(b)
a b
F(t)
t in [a,b] individua un segmento di curva
Serena Morigi Dipartimento di Matematica Università di Bologna
Interpolazione con curve in Interpolazione con curve in forma parametricaforma parametrica
Assegnati i punti PAssegnati i punti Pii((xxii,,yyii) con valori ) con valori dei parametri corrispondenti tdei parametri corrispondenti tiitrovare la curva trovare la curva c(t)=(cc(t)=(cxx(t),c(t),cyy(t))(t))cheche passa per tali punti passa per tali punti
c(tc(tii)=P)=Pii i=0,..,mi=0,..,m
Risolvere in RRisolvere in R2 2 i due sistemi lineari:i due sistemi lineari:
ii yVaxVa == 21
Serena Morigi Dipartimento di Matematica Università di Bologna
Curve Curve splinespline di interpolazionedi interpolazione
Problema:Problema:Determinare una curva Determinare una curva s(t)=(s(t)=(ssxx(t),(t),ssyy(t))(t))di grado p tale che passi nell’ordine per di grado p tale che passi nell’ordine per m+1m+1 punti Ppunti Pii=(=(xxii,,yyii) ) i=0,..,mi=0,..,m del piano del piano preassegnatipreassegnati..Algoritmo:Algoritmo:
Determinare i valori dei nodi di Determinare i valori dei nodi di interpolazione tinterpolazione tii
Risolvere le due funzioni Risolvere le due funzioni splinespline di di interpolazione interpolazione ssxx e e ssyy : : ssxx(t(tii)=)=xxii; e ; e ssyy(t(tii)=)=yyii;;
Serena Morigi Dipartimento di Matematica Università di Bologna
Esempio:Esempio:Controllo di un robot 2DControllo di un robot 2D
Le equazioni che regolano il Le equazioni che regolano il braccio sono le seguenti:braccio sono le seguenti:posizione della fine del primoposizione della fine del primo linklink(x(x11,y,y11))
posizione della fine del secondoposizione della fine del secondolinklink (x(x22,y,y22))
quindi, le coordinate (x,y) della quindi, le coordinate (x,y) della mano del robot sono date damano del robot sono date da
)sin()cos(
111
111
θθ
LyLx
==
)sin()cos(
21212
21212
θθθθ
++=++=
LyyLxx
)sin()sin()cos()cos(
212112
212112
θθθθθθ
++=++=
LLyLLx
Serena Morigi Dipartimento di Matematica Università di Bologna
Esempio:Esempio:Controllo di un robot 2DControllo di un robot 2DQueste due equazioni sono risolte per angoli in Queste due equazioni sono risolte per angoli in funzione di x ed y in modo tale che si possa funzione di x ed y in modo tale che si possa determinare gli angoli necessari per spostare determinare gli angoli necessari per spostare la mano ad una posizione specificata da (x,y). la mano ad una posizione specificata da (x,y). Le relazioni risultanti sono le seguenti:Le relazioni risultanti sono le seguenti:
⎩⎨⎧
≥−<+
==
−+=
−−=
+=
00
)arctan(
2)cos(
2)cos(
2
21
1
22
21
2
21
22
21
2
2
222
θβαθβα
θα
βθ
sese
xy
RLLLR
LLLLR
yxR
Serena Morigi Dipartimento di Matematica Università di Bologna
Esempio:Esempio:Controllo di un robot 2DControllo di un robot 2D
Funzioni Funzioni spline spline interpolano i valori di interpolano i valori di θθ11(t(tii) e ) e θθ22(t(tii) in corrispondenza ) in corrispondenza degli istanti tdegli istanti tii prefissati;prefissati;
θθ11(t(tii) e ) e θθ22(t(tii)) corrispondono agli corrispondono agli angoli che permettono di angoli che permettono di posizionare il link2 del robot nelle posizionare il link2 del robot nelle posizioni posizioni (x(t(x(tii),y(t),y(tii)))) assegnate assegnate agli istanti tagli istanti tii..