25
Leksion nr 7 Polinomet dhe përshtatja e kurbës me anën e një fuksioni

Leksion nr 7 - jurgencoku.files.wordpress.com · Mbledhja e polinomeve Dy polinome mund të mblidhen edhe nqse nuk kanë të njëjtën rend në Matlab duke shtuar zero . Shembull:

  • Upload
    others

  • View
    16

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Leksion nr 7 - jurgencoku.files.wordpress.com · Mbledhja e polinomeve Dy polinome mund të mblidhen edhe nqse nuk kanë të njëjtën rend në Matlab duke shtuar zero . Shembull:

Leksion nr 7

Polinomet dhe përshtatja e kurbës me anën e një fuksioni

Page 2: Leksion nr 7 - jurgencoku.files.wordpress.com · Mbledhja e polinomeve Dy polinome mund të mblidhen edhe nqse nuk kanë të njëjtën rend në Matlab duke shtuar zero . Shembull:

Polinomet

Polinomet janë të formës:Në Matlab polinomet jepen nga një vektor në të cilën elementët janë koeficientët an , an-1 , an-2 , an-3 ,………,a1 , a0

Shembuj

Në Matlabp=[8 5]

p=[2 -4 10]

p=[6 0 -150]

p=[5 0 0 6 -7 0]

n n 1 n 2f (x) an x an 1x an 2 x .......... a0

Polinomet8 x 5

2 x 2 4 x 1 0

6 x 2 1 5 0

5 x 5 6 x 2 7 x

Page 3: Leksion nr 7 - jurgencoku.files.wordpress.com · Mbledhja e polinomeve Dy polinome mund të mblidhen edhe nqse nuk kanë të njëjtën rend në Matlab duke shtuar zero . Shembull:

Polinomet

7.1 Vlera e polinomit në një pikë.

Per te llogaritur vleren e nje polinomi ne nje pike te dhene x perdorimfunksionin “polyval” e cila ka formën :

polyval(p,x)

Vektori me koeficientët e polinomit

Numri ku duam të llogarisim vlerën e polinomit

x mund të jetë vektor ose matricë. Në këtë rast polinomi llogaritet për cdo element dhe përgjigja është vektor ose matricë me vlerat korresponduese të polinomit.

Page 4: Leksion nr 7 - jurgencoku.files.wordpress.com · Mbledhja e polinomeve Dy polinome mund të mblidhen edhe nqse nuk kanë të njëjtën rend në Matlab duke shtuar zero . Shembull:

Vlera e polinomit në një pikë. ShembullTë llogaritet vlera e polinomit në Matlab:

a) Të llogaritet vlera e funksionit për x=9.b) Të ndërtohet grafiku per

p= [1 -12.1 40.59 -17.015 -71.95 35.88];

polyval(p,9)

ans =

7.2611e+003

x=-1.5:0.1:6.7;

y=polyval(p,x)

plot(x,y)

x5f (x) 12.1x4 40, 9x3 17.015x2 71.95x 35.88

1, 5 x 6 , 7

-2 -1 0 1 2 3 4 5 6 7

-150

-200

-100

-50

0

50

100

150

Page 5: Leksion nr 7 - jurgencoku.files.wordpress.com · Mbledhja e polinomeve Dy polinome mund të mblidhen edhe nqse nuk kanë të njëjtën rend në Matlab duke shtuar zero . Shembull:

Rrenjët e polinomitGjetja e rrenjëve të një polinomi është problem që ngrihet ne shume fusha. Në Matlab rrenjët e polinomit gjenden me anë të komandës:

r=roots(p)

p është vektori rresht mekoeficientët e polinomit

Shembull:

p= [1 -12.1 40.59 -17.015 -71.95 35.88];

r=roots(p)

r =

6.5000

4.0000

2.3000

-1.2000

0.5000

r është vektori kolonë me rrënjët e polinomit

Kur njihen rrenjet, polinomi mund te shkruhet si:

)5.6)(4)(3.2)(5.0)(2.1()( xxxxxxf

Page 6: Leksion nr 7 - jurgencoku.files.wordpress.com · Mbledhja e polinomeve Dy polinome mund të mblidhen edhe nqse nuk kanë të njëjtën rend në Matlab duke shtuar zero . Shembull:

Kur njihen rrenjët e një polinomi në Matlab me anë të komandës “poly” mund të përcaktojmë koeficientët e një polinomi:

Rrenjët e polinomit

p=poly(r)

r është vektori (rresht ose kolone)merrënjët e polinomit

p është vektori rresht me koeficientët epolinomit

Shembull:

r= [6.5 4 2.3 -1.2 0.5];

p=poly(r)

p =

1 -12.1 40.59 -17.015 -71.95 35.88

Page 7: Leksion nr 7 - jurgencoku.files.wordpress.com · Mbledhja e polinomeve Dy polinome mund të mblidhen edhe nqse nuk kanë të njëjtën rend në Matlab duke shtuar zero . Shembull:

Mbledhja e polinomeve

Dy polinome mund të mblidhen edhe nqse nuk kanë të njëjtën rend në Matlab duke shtuar zero . Shembull:Janë dhënë ploinomet:

p1= [3 15 0 -10 -3 15 -40];

p2= [3 0 -2 -6];

p=p1+[0 0 0 p2]

p=

p2= [0 0 0 3 0 -2 -6];

p=p1+p2

p=

3 15 0 -7 -3 13 -46

Mqse p1 është polinom i rendit 6 dhe p2 polinom i rendit 3 janë shtuar zerot polinomit p2.

3 15 0 -7 -3 13 -46

ose

p1= [3 15 0 -10 -3 15 -40];

Mqse p1 është polinom i rendit 6dhe p2 polinom i rendit 3 janë shtuar zerot brenda polinomit p2.

p1 3x6 15x5 10x3 3x2 15x 40 p2 3x3 2x 6

p 3x6 15x5 7x3 3x2 13x 46

Page 8: Leksion nr 7 - jurgencoku.files.wordpress.com · Mbledhja e polinomeve Dy polinome mund të mblidhen edhe nqse nuk kanë të njëjtën rend në Matlab duke shtuar zero . Shembull:

Shumëzimi polinomeveDy polinome mund të shumëzohen duke perdorur komanden “conv” :

p=conv(a,b)

p është vektori me koeficientët e polinomit mbasi është kryer shumëzimi i polinomeve

a dhe b janë vektorët me koeficientët e polinomit që do të shumëzohen

Shembull: Janë dhënë polinomet dhe

a=[1 -12 0 25 116];

b=[1 1];

p=conv(a,b)

p =

1 -11 -12 25 141 116

Shumëzimi i tre polinomeve mund të realizohet duke e përsëritur komandënconv.

x4a 12x3 25x 116 b x 1

Page 9: Leksion nr 7 - jurgencoku.files.wordpress.com · Mbledhja e polinomeve Dy polinome mund të mblidhen edhe nqse nuk kanë të njëjtën rend në Matlab duke shtuar zero . Shembull:

Pjestimi i polinomeveDy polinome mund të pjestohen duke perdorur komanden “deconv” :

[q,r]=deconv(a,b)

q është vektori me koeficientët e plotë të polinomit dhe r është vektori me koeficientët e mbetjes të polinomit mbasi është kryer pjestimi i polinomeve

a dhe b janë vektorët me koeficientët e polinomit që do të pjestohen

Shembull: Të kryhet pjestimi i dy polinomeve.

a=[2 9 7 -6];

b=[1 3];

[q,r]=deconv(a,b)

q =

2 3 2

r=

0 0 0 0

a 2x3 9x2 7x 6 b x 3

Page 10: Leksion nr 7 - jurgencoku.files.wordpress.com · Mbledhja e polinomeve Dy polinome mund të mblidhen edhe nqse nuk kanë të njëjtën rend në Matlab duke shtuar zero . Shembull:

Pjestimi i polinomeve

[q,r]=deconv(a,b)

q është vektori me koeficientët e plotë të polinomit dhe r është vektori me koeficientët e mbetjes të polinomit mbasi është kryer pjestimi i polinomeve

a dhe b janë vektorët me koeficientët e polinomit që do të pjestohen

Shembull: Të kryhet pjestimi i dy polinomeve.

u=[1 1 2];

v=[2 0 0 1];

[q,r]=deconv(v,u)

q =

2 -2

r=

0 0 -2 5

x2u x 2

Pas pjestimit të dy vektorëve do të marrim :

2x 52x 2

x2 x 2

Page 11: Leksion nr 7 - jurgencoku.files.wordpress.com · Mbledhja e polinomeve Dy polinome mund të mblidhen edhe nqse nuk kanë të njëjtën rend në Matlab duke shtuar zero . Shembull:

Derivatet e polinomeveKomanda “polyder” është komanda e cila shërben për të llogaritur derivatin e një polinomi të vetëm, produktit të dy polinomeve dhe pjestimit të dy polinomeve si tregohet më poshtë:

K=polyder(p) Derivati i polinomit , ku p është vektori mekoeficientët e polinomit.K është vektori mekoeficientët e derivatit

K=polyder(a,b) Derivati i produktit të dy polinomeve , ku a dhe b janë vektorët me koeficientët e polinomeve . K është vektori me koeficientët e derivatit të shumëzimit.

[n,d]=polyder(u,v) Derivati i pjestimit të dy polinomeve , ku u dhe v janë vektorët me koeficientët e polinomeve ,ndërsa n dhe d janë koeficientët e numëruesit dhe emëruesit të polinomit që është derivati ipjestimit.

Page 12: Leksion nr 7 - jurgencoku.files.wordpress.com · Mbledhja e polinomeve Dy polinome mund të mblidhen edhe nqse nuk kanë të njëjtën rend në Matlab duke shtuar zero . Shembull:

Derivatet e polinomeve. ShembujJanë dhënë polinomet: dhe

Përcaktoni derivatet e polinomeve , derivatet e shumëzimit dhe

pjestimit të tyre.

f2=[1 0 5];f1=[3 -2 4];

k=polyder(f1)

k=

6 -2

f=polyder(f2)

f =

2 0

h=polyder(f1,f2)

h =

12 -6 38 -10

[n,d]=polyder(f1,f2)

n =

2 22 -10

d =

1 0 10 0 25

f 1(x) 3x2 2x 4 f 1(x) 5x2

Page 13: Leksion nr 7 - jurgencoku.files.wordpress.com · Mbledhja e polinomeve Dy polinome mund të mblidhen edhe nqse nuk kanë të njëjtën rend në Matlab duke shtuar zero . Shembull:

Përshtatja e kurbës me anë të një polinomiPërshtatja e kurbës është procesi i cili i përshtat një funksion disa të dhënavëtë përcaktuara . Funksioni mund të përdoret si modeli matematik i këtyre tëdhënave. Kemi disa funksione kështu qe përshtatja e kurbës me anë të njëfunksioni është një proces i vështirë.Përshtatja e një kurbe të caktuar me anë të një polinomi realizohet dukepërdorur komandën “polyfit”. Polinomet pëërdoren në dy mënyra për tjupërshtatur një kurbe të caktuar:❖Polinomi i përshtatur kalon në të gjitha pikat e dhëna.❖Polinomi i përshtatur nuk kalon në të gjitha pikat e dhëna por jep një përshkrim të mirë të të dhënave.

p=polyfit(x,y,n)

“x” jane te dhenat per boshtin e x-ve, y janë te dhenat per boshtin e y-ve, dhe “n” eshte rendi i polinomit qe ne duam te ndertojme

p është vektori me koeficientët e polinomit që i përshtatet të dhënave

Page 14: Leksion nr 7 - jurgencoku.files.wordpress.com · Mbledhja e polinomeve Dy polinome mund të mblidhen edhe nqse nuk kanë të njëjtën rend në Matlab duke shtuar zero . Shembull:

Përshtatja e kurbës me anë të një funksioniPër m cift pikash të dhënë polinomi i cili përshtatet më tepër është polinomi i renditn=m-1. Nqse n=1 atëherë kurba është vijë e drejtë =, për n=2 është parabolë e kështu me radhë. Polinomi përshkon të gjitha pikat kur n=m-1.Shembull :Jepen disa të dhëna dhe përcaktojmë polinomin për këto të dhëna:

1 2 3 4 5 6 7 8 9 1000

1

2

3

4

5

6

7

x=[0.9 1.5 3 4 6 8 9.5];

y=[0.9 1.5 2.5 5.1 4.5 4.9 6.3];

p=polyfit(x,y,1)

yp=polyval(p,x)

plot(x,y,'o',x,yp)

x 0.9 1.5 3 4 6 8 9.5

y 0.9 1.5 2.5 5.1 4.5 4.9 6.3

Page 15: Leksion nr 7 - jurgencoku.files.wordpress.com · Mbledhja e polinomeve Dy polinome mund të mblidhen edhe nqse nuk kanë të njëjtën rend në Matlab duke shtuar zero . Shembull:

Shembulli

x=[0.9 1.5 3 4 6 8 9.5];

y=[0.9 1.5 2.5 5.1 4.5 4.9 6.3];

p=polyfit(x,y,2)

yp=polyval(p,x)

plot(x,y,'o',x,yp)

x=[0.9 1.5 3 4 6 8 9.5];

y=[0.9 1.5 2.5 5.1 4.5 4.9 6.3];

p=polyfit(x,y,3)

yp=polyval(p,x)

plot(x,y,'o',x,yp)

1 2 3 4 5 6 7 8 9 100

1

2

3

4

5

6

7

1 2 3 4 5 6 7 8 9 100

0

2

1

3

4

5

6

70

Page 16: Leksion nr 7 - jurgencoku.files.wordpress.com · Mbledhja e polinomeve Dy polinome mund të mblidhen edhe nqse nuk kanë të njëjtën rend në Matlab duke shtuar zero . Shembull:

Shembulli

x=[0.9 1.5 3 4 6 8 9.5];

y=[0.9 1.5 2.5 5.1 4.5 4.9 6.3];

p=polyfit(x,y,4)

yp=polyval(p,x)

plot(x,y,'o',x,yp)

x=[0.9 1.5 3 4 6 8 9.5];

y=[0.9 1.5 2.5 5.1 4.5 4.9 6.3];

p=polyfit(x,y,5)

yp=polyval(p,x)

plot(x,y,'o',x,yp)

1 2 3 4 5 6 7 8 9 100

1

2

3

4

5

6

7

1 2 3 4 5 6 7 8 9 1000

2

1

3

4

5

6

70

Page 17: Leksion nr 7 - jurgencoku.files.wordpress.com · Mbledhja e polinomeve Dy polinome mund të mblidhen edhe nqse nuk kanë të njëjtën rend në Matlab duke shtuar zero . Shembull:

Shembulli

x=[0.9 1.5 3 4 6 8 9.5];

y=[0.9 1.5 2.5 5.1 4.5 4.9 6.3];

p=polyfit(x,y,6)

yp=polyval(p,x)

plot(x,y,'o',x,yp)

1 2 3 4 5 6 7 8 9 1000

6

5

4

3

2

1

7

Page 18: Leksion nr 7 - jurgencoku.files.wordpress.com · Mbledhja e polinomeve Dy polinome mund të mblidhen edhe nqse nuk kanë të njëjtën rend në Matlab duke shtuar zero . Shembull:

Përshtatja e kurbës me anë të një funksioni

Shpesh herë ndodh që funksioni që do ti përshtasim disa të dhënave të mos jetëpolinom. Përshtatja e kurbave mund të realizohet me anë të funksioneve eksponenciale, funksioneve të ngritjes në fuqi, logaritmike etje.

Funksionet :

ose

ose

➢Funksioni eksponencial➢Funksioni i ngritjes në fuqi➢Funksioni logaritmik➢Funksioni reciprok

y b10mx

y m log(x) b

y bemx

y bxm

y m ln(x) b

y1

mx b

Komanda që përdoret është komanda ‘polyfit’. Kjo realizohet duke i rishkruajtur të gjithafunksionet si një polinom i rendit të parë(n=1):

y mx bFunksioni logaritmik është në këtë form ndërsa funksioni i ngritjes në fuqi, eksponencialdhe ai reciprok mund të shkruhen:

mln(x) lnb

mx ln(b)

mx b

ln(y)

ln(y)

1/ y

Funksioni i ngritjes në fuqi

Funksioni eksponencial

Funksioni reciprok

Page 19: Leksion nr 7 - jurgencoku.files.wordpress.com · Mbledhja e polinomeve Dy polinome mund të mblidhen edhe nqse nuk kanë të njëjtën rend në Matlab duke shtuar zero . Shembull:

Përshtatja e kurbës me anë të një funksioni

Këto funksione kanë një varësi lineare ln(y) dhe x për funksionin eksponencial, ln(y)dhe ln(x) për funksionin e ngritjes në fuqi, y dhe ln(x) për funksionet logaritmike etje.

Funksionet :➢Funksioni eksponencial

➢Funksioni i ngritjes në fuqi➢Funksioni logaritmik

p=polyfit(x,log(y),1) p=polyfit(x,log10(y),1) p=polyfit(log(x),log(y),1) p=polyfit(log(x),y,1 p=polyfit(log10(x),y,1)

➢Funksioni reciprok p=polyfit(x,1./y,1)y

y bemx

y b10mx

y bxm

y mln(x) by m log(x) b

1

mx b

Në zgjedhjen e një funksioni duhet te kemi parasysh:• Funksionet eksponenciale nuk mund të kalojnë përmes origjinës.• Funksionet eksponenciale mund të përshtaten vetëm me të gjitha y-të pozitive ose të gjitha y-të negative.• Funksionet logaritmike nuk mund të pershtaten x = 0 ose vlerat negative të x.• Për funksionin e fuqisë y = 0 kur x = 0.• Ekuacioni reciprok nuk mund të pershtatet kur y = 0.

Page 20: Leksion nr 7 - jurgencoku.files.wordpress.com · Mbledhja e polinomeve Dy polinome mund të mblidhen edhe nqse nuk kanë të njëjtën rend në Matlab duke shtuar zero . Shembull:

ShembullJepet tabela me të dhënat e mëposhtme. Gjeni funksionin w=f(t).

0.5 1 1.5 2 2.5 3 3.5 4 4.5 50

0

1

2

3

4

5

6

Ndërtojmë grafikun e të dhënave.t=0:0.5:5;

w=[6 4.83 3.7 3.15 2.41 1.83 1.49 1.21 0.96 0.73 0.64];

plot(t,w,'o')

Nga grafiku shohim një eksponencë

rënëse, kështu që funksioni do të

ketë një trajtë eksponenciale.

Page 21: Leksion nr 7 - jurgencoku.files.wordpress.com · Mbledhja e polinomeve Dy polinome mund të mblidhen edhe nqse nuk kanë të njëjtën rend në Matlab duke shtuar zero . Shembull:

Shembull

0.5 1 1.5 2 2.5 3 3.5 4 4.5 50

0

1

2

3

4

5

6

p=polyfit(t,log(w),1)

m=p(1);

b=exp(p(2));

tm=0:0.5:5;

wm=b*exp(m*tm)

plot(t,w,'o',tm,wm)

Page 22: Leksion nr 7 - jurgencoku.files.wordpress.com · Mbledhja e polinomeve Dy polinome mund të mblidhen edhe nqse nuk kanë të njëjtën rend në Matlab duke shtuar zero . Shembull:

Interpolimi është vlerësimi i vlerave midis pikave të të dhënave. MATLAB kafunksionet e interpolimit që bazohen në polinome. Në interpoliminnjëdimensional çdo pikë ka një variabël të pavarur (x) dhe një variabli të varur(y). Në interpolimin dy-dimensional çdo pikë ka dy të pavarurvariablave (x dhe y) dhe një variabël të varur (z).

Interpolimi

Interpolimi njëdimensional:

yi=interp1(x, y, xi, ‘metoda’)

yi vlera e interpoluar

x eshte vektori me vlerat horizontale te tedhenave hyrese (vlariblat e pavarur). yeshte vektori me vlerat horizontale te tedhenave hyrese (variablat e varur). xi eshtevektori me vlerat horizontale te pikave teinterpolimit(variablat e pavarura).

Metoda e interpolimit, e shkruajtursi njestring

Page 23: Leksion nr 7 - jurgencoku.files.wordpress.com · Mbledhja e polinomeve Dy polinome mund të mblidhen edhe nqse nuk kanë të njëjtën rend në Matlab duke shtuar zero . Shembull:

Interpolimi

➢Vektori x duhet të jetë vektor monoton (me elemente sipas rendit rrites ose zbrites➢xi mund të jetë një skalar (interpolimi i një pike) ose një vektor (interpolimi ishumë pikë). yi është një skalar ose një vektor me interpolimin vlerat korresponduese➢MATLAB mund të bëjë interpolimin duke përdorur një nga disa metoda që mund të jenë te specifikuara. Këto metoda përfshijnë:❖‘nearest‘ (Më e afërt) kthen vlerën e pikëve të të dhënave që është më e afërt mepikën interpoluar.❖‘linear' përdor interpolimin linear të spline.❖'Spline' përdor interpolimin kub spline.❖'Pchip' përdor interpolimin pjesërisht cubic Hermite, i quajtur edhe 'cubic'• Kur përdoren metodat 'nearest' dhe 'lineare', vlerat e xi duhet të jenë brenda domenit të x. Nëse janë 'spline' ose 'pchip' metodat e përdorura, xi mund të ketë vlera jashtë domenit të x dhe funksionit interp1 kryen ekstrapolim.• Metoda 'spline' mund të japë gabime të mëdha nëse pikat e të dhënave jane jo-uniforme, kështu që disa pika janë shumë më afër së bashku se të tjerët.• Specifikimi i metodës është opsinal. Nëse nuk është caktuar ndonjë metodë, është e paracaktuar ‘linear'.

Page 24: Leksion nr 7 - jurgencoku.files.wordpress.com · Mbledhja e polinomeve Dy polinome mund të mblidhen edhe nqse nuk kanë të njëjtën rend në Matlab duke shtuar zero . Shembull:

Shembull (Interpolimi)Pikat e mëposhtme të të dhënave, janë pikat e funksionit . Përdorni metoda të interpolimit linear, spline dhe pchip për të llogaritur vlera e y midis pikave. Bëni një figurë për secilën prej metodave të interpolimit.Në figurë tregojnë pikat, një komplot të funksionit dhe një kurbë që korrespondon

)1.5xcos(2x f(x)

x= 0 : 1.0 : 5; y=[1.0 -0.6242 -1.4707 3.2406 -0.7366 -6.3717];xi=0: 0.1:5; yilin=interp1 (x,y,xi, 'linear'); yispl=interp1 (x,y,xi, 'spline'); yipch=interp1 (x,y,xi, 'pchip'); yfun=1. 5. ^xi. *cos (2*xi); subplot(1,3,1)plot(x,y,'o',xi,yfun,xi,yilin,'--');subplot(1,3,2)plot(x,y,' o' ,xi,yfun,xi,yispl ,'--');subplot(1,3,3)plot(x,y,'o',xi,yfun,xi,yipch ,'--');

Krijon vektoret x dhe y me kordinatat e dhena.

Krijon vektoret xi me pikat per interpolimin.

Llogarit pikat y nga interpolimi linear.

Llogarit pikat y ngainterpolimi spline.

Llogarit pikat y ngainterpolimi pchip.

Page 25: Leksion nr 7 - jurgencoku.files.wordpress.com · Mbledhja e polinomeve Dy polinome mund të mblidhen edhe nqse nuk kanë të njëjtën rend në Matlab duke shtuar zero . Shembull:

Shembull (Interpolimi)