Paano mag-code ng polyfit sa MATLAB?

Paano Mag Code Ng Polyfit Sa Matlab



Sa MATLAB, ang polyfit ay isang function na nagbibigay-daan sa iyong magsagawa ng polynomial curve fitting. Ang polynomial curve fitting ay nagsasangkot ng paghahanap ng pinakaangkop na polynomial equation na kumakatawan sa isang set ng mga punto ng data. Ang prosesong ito ay kapaki-pakinabang sa iba't ibang mga aplikasyon, tulad ng pagsusuri ng data, pagmomodelo, at hula. Sa pamamagitan ng paggamit ng polyfit function, madali mong mahahanap ang mga coefficient ng polynomial equation na umaangkop sa iyong data, na nagbibigay-daan sa iyong tumpak na ilarawan at suriin ang mga pinagbabatayan na trend at relasyon.

Matutuklasan mo kung paano magkasya ang mga polynomial curve gamit ang polyfit() function ng MATLAB sa tutorial na ito.

Paano mag-code ng polyfit() sa MATLAB?

Upang mag-code polyfit() sa MATLAB, kailangan mo munang sundin ang ibinigay na syntax sa ibaba:







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

Ang syntax sa itaas ay maaaring ilarawan bilang:



  • p = polyfit(x,y,n) : nagbibigay ng mga coefficient ng degree n polynomial p(x) na pinakaangkop sa data sa y sa mga tuntunin ng least-square. Ang mga coefficient sa p ay nakaayos sa pababang kapangyarihan at may haba na n+1.
  • [p,S] = polyfit(x,y,n) : gumagawa ng isang istraktura S na maaaring magamit bilang isang input sa polyval upang makakuha ng mga pagtatantya ng error.
  • [ p , S , mu ] = polyfit ( x , y , n ) : nagbubunga ng mu, isang vector na may dalawang elemento na may mga halaga para sa pag-scale at pagsentro. Ang mu(1) ay mean(x), samantalang ang mu(2) ay std(x). Gamit ang mga setting na ito, polyfit() kaliskis x upang magkaroon ng isang unit standard deviation, kung saan ito ay nakasentro sa x sa zero.

Isaalang-alang natin ang ilang mga halimbawa na nagpapakita ng paggamit ng MATLAB polyfit() function.



Halimbawa 1
Sa ibinigay na halimbawa, una, bumubuo kami ng isang vector x na mayroong 10 pantay na espasyong elemento na nakahiga sa pagitan (10, 20). Pagkatapos ay makikita natin ang mga halaga ng y na tumutugma sa lahat ng mga halaga ng x gamit ang trigonometric function na cos(x). Pagkatapos nito, ang polyfit() Ang function ay ginagamit upang magkasya ang 6th-degree polynomial sa mga punto ng data. Sa wakas, I-Plot namin ang mga resulta ng polynomial evaluation na may mas pinong grid.





x = linspace ( 10 ,pi, dalawampu ) ;
y = cos ( x ) ;
p = polyfit ( x,y, 6 ) ;
x_1 = linspace ( 10 ,pi ) ;
y_1 = polyval ( p,x_1 ) ;
pigura
balangkas ( x,y, 'O' )
hawakan mo
balangkas ( x_1,y_1 )
huminto ka

Halimbawa 2
Ang halimbawang ito ay gumagamit ng polyfit() function upang magkasya ang isang simpleng linear regression na modelo sa isang set na mayroong 2-D discrete data point. Sa code na ito, nabuo ang isang set ng mga data point na may mga halagang x mula 2 hanggang 100 na may hakbang na 2. Ang mga katumbas na halaga ng y ay kinakalkula sa pamamagitan ng pagbabawas ng random na ingay mula sa isang linear na function ng x. Ang polyfit() Ang function ay pagkatapos ay ginagamit upang magkasya ang isang linear polynomial sa data, pagkuha ng coefficients p. Ang fitted polynomial ay sinusuri gamit ang polyval() at naka-plot kasama ang orihinal na mga punto ng data gamit ang plot() function.



x = 2 : 2 : 100 ;
y = x - 5 * randn ( 1 , limampu ) ;
p = polyfit ( x,y, 1 ) ;
f = polyval ( p,x ) ;
balangkas ( x,y, 'O' ,x,f, '-' )
alamat ( 'data' , 'linear fit' )

Konklusyon

Ang MATLAB polyfit() Ang function ay ginagamit para sa polynomial curve fitting. Ang function na ito ay tumatagal ng dalawang vector at isang antas ng polynomial bilang mga argumento at inilalagay ang mga nakuhang resulta. Ang tutorial na ito ay nagbigay ng ilang kapaki-pakinabang na impormasyon tungkol sa kung paano mag-code a polyfit() function sa MATLAB, na may ilang kapaki-pakinabang na halimbawa na makakatulong sa mga nagsisimula na maunawaan ang paggamit ng function na ito.