Azzera filtri
Azzera filtri

Setting your own start points for curve fitting

121 visualizzazioni (ultimi 30 giorni)
I have a set of data which I am attempting to fit via a modified ("custom") two-exponential function: a*exp(b*(x-x0))+c*exp(d*(x-x0))+y0, where x0 and y0 are known. I know how to set upper and lower bounds for a,b,c,d, but how can I specify starting values (start points) for them?
Thanks in advance.
  3 Commenti
Adam Danz
Adam Danz il 27 Giu 2018
Modificato: Adam Danz il 27 Giu 2018
I see, what function are you using to do the fitting? For most of matlab's fitting functions, the 2nd input is "x0" which is a vector of values [1-by-n] for the n parameters of the function you're fitting. If the parameters in your function are [a,b,c,d] with an expected outcome of [100, 20, .5, -2], then that vector would be the input to 'x0'.
J.S.
J.S. il 27 Giu 2018
I am using my custom two-exponential with x and y offsets: a*exp(b*(x-x0))+c*exp(d*(x-x0))+y0, where x0 and y0 are known.

Accedi per commentare.

Risposta accettata

Walter Roberson
Walter Roberson il 27 Giu 2018
If you are using fit() then use the InitialPoint option as shown in https://www.mathworks.com/help/curvefit/fit.html#bto2vuv-10

Più risposte (0)

Categorie

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

Prodotti


Release

R2015b

Community Treasure Hunt

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

Start Hunting!

Translated by