Fit an exponential curve

5 Ansichten (letzte 30 Tage)
Sahar khalili
Sahar khalili am 7 Jul. 2021
Kommentiert: Star Strider am 8 Jul. 2021
Hi, I have a data set like this
x=[6.5 2.45 2.7 1.85 2.25 1.35 1.4 1 0.7 .475 .66 .475];
y=[0.40 0.80 1 1.40 1.80 2.50 3.00 4.00 6.00 7.00 8.00 9.00];
and I want to fit an exponential curve like this: y=6.5*e^(-a*x) to my data set. Since, the value 6.5 is constant I do not get my desired reslut from cftool. Does anybody know how can I solve this?

Akzeptierte Antwort

Star Strider
Star Strider am 7 Jul. 2021
Try this —
x=[6.5 2.45 2.7 1.85 2.25 1.35 1.4 1 0.7 .475 .66 .475];
y=[0.40 0.80 1 1.40 1.80 2.50 3.00 4.00 6.00 7.00 8.00 9.00];
[fitobject,gof,output] = fit(x(:),y(:),'6.5*exp(-a*x)')
Warning: Start point not provided, choosing random start point.
fitobject =
General model: fitobject(x) = 6.5*exp(-a*x) Coefficients (with 95% confidence bounds): a = 0.4585 (0.1848, 0.7323)
gof = struct with fields:
sse: 35.1246 rsquare: 0.6496 dfe: 11 adjrsquare: 0.6496 rmse: 1.7869
output = struct with fields:
numobs: 12 numparam: 1 residuals: [12×1 double] Jacobian: [12×1 double] exitflag: 3 firstorderopt: 0.0109 iterations: 7 funcCount: 16 cgiterations: 0 algorithm: 'trust-region-reflective' stepsize: 2.6832e-04 message: 'Success, but fitting stopped because change in residuals less than tolerance (TolFun).'
figure
plot(fitobject, x, y, 'p')
grid
.
  2 Kommentare
Sahar khalili
Sahar khalili am 8 Jul. 2021
Thank you so much. Yes, it works.
Star Strider
Star Strider am 8 Jul. 2021
As always, my pleasure!
.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Sulaymon Eshkabilov
Sulaymon Eshkabilov am 7 Jul. 2021
1st of all, your data's good fit is not 6.5*exp(a*x) that is why cftool is giving you the best fit that differs from your expected 6.5*exp(-a*x).
If you're aiming to get a fit for 6.5*exp(-a*x) then use "custom equation" option and set it to 6.5*exp(-a*x).

Kategorien

Mehr zu Interpolation finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by