Kaip nubrėžti geriausiai tinkančią liniją MATLAB?

Kaip Nubrezti Geriausiai Tinkancia Linija Matlab



Kreivės pritaikymas yra funkcijos pritaikymo duomenų taškuose procesas. Šis metodas naudojamas geriausiai atitinkančiai linijai nubrėžti MATLAB, sumažinant klaidą tarp funkcijos ir duomenų taškų. Tai sudėtingas metodas, tačiau MATLAB tai palengvina siūlydama įvairias kreivės pritaikymo funkcijas. Viena iš tokių funkcijų yra polifit () kurį galima naudoti norint nubrėžti geriausiai atitinkančią liniją MATLAB.

Šiame tinklaraštyje bus paaiškinta, kaip nubrėžti geriausiai tinkančią MATLAB liniją naudojant polifit () funkcija.

Kaip nubrėžti geriausiai tinkančią liniją MATLAB?

Geriausiai tinkančią liniją MATLAB galima lengvai nubrėžti naudojant įmontuotą polifit () funkcija. Ši funkcija naudojama duomenų aproksimacijai pritaikant kreivę duotuose duomenų taškuose. Funkcija naudoja kelis argumentus, įskaitant duomenų taškus ir polinomo laipsnį. The polifit () funkcija generuoja koeficientų vektorių, kuris naudojamas įvertinti daugianarį bet kuriame taške.







Jei turime n duomenų taškų, naudojant polifit () funkcija.



Sintaksė

The polifit () funkcija turi keletą sintaksių, kurias galima naudoti MATLAB kreivių pritaikymo užduotims atlikti:



p = polifit ( x,y,n )
[ p,S ] = polifit ( x,y,n )
[ p,S,mu ] = polifit ( x,y,n )

Čia:





Funkcija p = polifit(x,y,n) pateikia koeficientus daugianario p(x) turintis n laipsnį, kuris duoda geriausiai atitinkančią liniją, naudojant mažiausio kvadrato metodą y duomenims. P ilgis yra n+1, o p koeficientai turi galias mažėjančia tvarka.

Funkcija [p,S] = polifit(x,y,n) suteikia struktūrą S, kuri gali būti naudojama polivalas () veikia kaip argumentas norint gauti klaidų įvertinimus.



Funkcija [ p , S , in ] = polifit ( x , y , n ) grąžina mu kaip vektorių su dviem elementais, turinčiais centravimo ir mastelio reikšmes. The (1) yra lygiavertis vidurkis (x) , tuo tarpu (2) yra lygus std(x) . Naudodami šias parinktis, polifit () sureguliuoja x taip, kad jo nulinės vertės išvestis atitiktų vieneto standartinį nuokrypį.

Pavyzdžiai

Sekite pateiktus pavyzdžius, kad suprastumėte, kaip veikia polifit () funkcija, kuri geriausiai atitinka MATLAB liniją.

1 pavyzdys: Kaip nubrėžti geriausiai tinkančią liniją MATLAB naudojant polyfit(x, y, n) funkciją?

Šiame pavyzdyje pirmiausia sukuriamas vektorius x, turintis 11 tolygiai išdėstytų elementų, esančių intervale [0, 20]. Tada jis suranda y reikšmes, atitinkančias visus x, naudodamas klaidos funkciją kiemas (x) . Po to jis naudoja polifit () funkcija, skirta 9-ojo laipsnio polinomui pritaikyti duotuose duomenų taškuose. Galiausiai jis nubraižo polinomo įvertinimo rezultatus tikslesniu tinkleliu.

x = [ 0 : 2 : dvidešimt ] ';
y = paveldimumas(x);
p = polifit(x,y,9);
f = daugiavalis(p,x);
plot(x,y,'
O ',x,f,' - ')

2 pavyzdys: Kaip nubrėžti geriausiai tinkančią liniją MATLAB naudojant [p, S]= polyfit(x, y, n) funkciją?

Šis MATLAB kodas pirmiausia sukuria vektorių x su 11 tolygiai išdėstytų elementų, esančių intervale [0, 20]. Tada jis suranda y reikšmes, atitinkančias visus x, naudodamas nuodėmė (x) funkcija. Po to jis naudoja polifit () funkcija, skirta 10-ojo laipsnio polinomui pritaikyti duotuose duomenų taškuose. Galiausiai jis nubraižo polinomo įvertinimo rezultatus tikslesniu tinkleliu.

x = [ 0 : 2 : dvidešimt ] ';
y = sin(x);
[p,S] = polifit(x,y,10)
f = daugiavalis(p,x);
plot(x,y,'
O ',x,f,' - ')

Išvada

MATLAB turi įmontuotą polifit () funkcija geriausiai atitinkančią liniją. Ši funkcija leidžia apytiksliai apskaičiuoti duomenis pritaikant kreivę duotuose duomenų taškuose. Jei turime n duomenų taškų, polinomas, kurio laipsnis mažesnis nei n-1, gali duoti geriausią apytikslę nurodytų n duomenų taškų. Šis vadovas suteikė mums informacijos apie kreivės pritaikymą ir padeda suprasti, kaip nubrėžti geriausiai tinkančią liniją MATLAB.