Effacer les filtres
Effacer les filtres

polyfit step by step or analytics

23 vues (au cours des 30 derniers jours)
Luca
Luca le 5 Avr 2024 à 14:30
Commenté : John D'Errico le 5 Avr 2024 à 16:53
Hello
x = array of max 10 items
y = array of max 10 items
x and y has the same length
i use polyfit(x,y,3)
i get the desired result
but there is a way to have all the steps done for reach the result, or there is a way to have the analytic result?
Thanks
  2 commentaires
Steven Lord
Steven Lord le 5 Avr 2024 à 15:33
but there is a way to have all the steps done for reach the result
For what purpose are you hoping to see "all the steps"? Is it for pedagogical purposes (to learn what polyfit does) or is it for some other reason?
If the former, see the Algorithms section on the polyfit documentation page or the Least Squares chapter in Cleve Moler's Numerical Computing with MATLAB.
John D'Errico
John D'Errico le 5 Avr 2024 à 16:53
I don't think a step by step explanation of what polyfit does will help you, at least not without an understanding of the linear algebra, but also of MATLAB itself. You are admittedly a MATLAB novice, so much of what happens inside polyfit will seem quite strange, since it worries about things like tall arrays, etc.
Anyway, that suggests to not worry about exactly what the code does, but to go instead to a good text on numerical linear algebra. Start with the Moler text as suggested by @Steven Lord.

Connectez-vous pour commenter.

Réponses (1)

Bruno Luong
Bruno Luong le 5 Avr 2024 à 14:42
polyfit is the mfile you can step through in debugging mode.
If you call with one outout argument (non normalized) it build vandermond matrix of size 10 x 4 then solve least square linear
system.
There is a formula for 4 x 4 system but it will have a moderately long formula.
  2 commentaires
Luca
Luca le 5 Avr 2024 à 14:44
sorry but how i can debug i'm totally new
Thanks
Bruno Luong
Bruno Luong le 5 Avr 2024 à 15:28
Modifié(e) : Bruno Luong le 5 Avr 2024 à 15:29
Start reading the debug doc
Then type this in MATLAB command window to see what polyfit does.
dbstop in polyfit
x = 1:10;
P = 1:4;
y = polyval(P, x);
polyfit(x, y, 3);

Connectez-vous pour commenter.

Catégories

En savoir plus sur Linear Algebra dans Help Center et File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by