Effacer les filtres
Effacer les filtres

Setting your own start points for curve fitting

121 vues (au cours des 30 derniers jours)
J.S.
J.S. le 27 Juin 2018
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 commentaires
Adam Danz
Adam Danz le 27 Juin 2018
Modifié(e) : Adam Danz le 27 Juin 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. le 27 Juin 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.

Connectez-vous pour commenter.

Réponse acceptée

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

Plus de réponses (0)

Catégories

En savoir plus sur Get Started with Curve Fitting Toolbox dans Help Center et File Exchange

Produits


Version

R2015b

Community Treasure Hunt

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

Start Hunting!

Translated by