Fitting a fourth order polynomial

23 visualizzazioni (ultimi 30 giorni)
Christopher Peter Wutti
Christopher Peter Wutti il 31 Mar 2022
Modificato: Matt J il 31 Mar 2022
Hell everybody, i am trying to fit my data. The theory says that it should be a fourth order polynomial (a * x^4 + c). I used the command fitobject = fit(x,y, 'poly4'), but obviously this does not work, because it gives me a function of the form (ax^4 + bx^3 + c^x^2 + dx + e). I also tried the command fit = polyfit(x,y,4); but this seems to produce the same outcome. So I am a little lost how to do such a fit in matlab.
Thank you for you help in advance!
Best regards!
Christopher

Risposta accettata

Matt J
Matt J il 31 Mar 2022
Modificato: Matt J il 31 Mar 2022
You can use bounds to force the unwanted coefficients to zero.
lb=[-inf,0,0,0,-inf];
fitobject = fit(x,y, 'poly4','Lower',lb,'Upper',-lb);
  2 Commenti
Christopher Peter Wutti
Christopher Peter Wutti il 31 Mar 2022
Hello, thank you very much for the answers, this is wonderful, now I get a polynomial of the form a x^4 + bx + c, so is there a way to also fix the 'b' to 0 ?
Torsten
Torsten il 31 Mar 2022
Modificato: Torsten il 31 Mar 2022
lb = [-Inf ,0, 0, 0, -Inf];
Matt forgot one "0".

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Get Started with Curve Fitting Toolbox in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by