Solving Exponential equation with data
1 view (last 30 days)
Show older comments
Onkar Khadke
on 10 Sep 2020
Commented: Onkar Khadke
on 11 Sep 2020
Dear sir,
I want to find four unknowns(a,b,c,d) which would fit with the model as y = a*(1-exp(-b*x)) + c*(exp(d*x)-1).
I am attaching data herewith. Please help me in chosing initial guess for unknowns.
Please provide steps and code in case for me to get started and able to fit it with the model.
Thank you
2 Comments
Alex Sha
on 11 Sep 2020
1:
a -0.00353320943950358
b -0.00183821185934112
c -0.0092638389118119
d -0.00950908245890883
2:
a 0.00926383877006205
b 0.00950908267448672
c 0.00353320959565315
d 0.0018382118314121
Accepted Answer
Alan Stevens
on 10 Sep 2020
Try
a = 0.0093; b = 0.0095; c = 0.0035; d = 0.00185;
f = a*(1 - exp(-b*x)) + c*(exp(d*x) - 1);
plot(x,y,'o',x,f),grid
xlabel('x'),ylabel('y')
legend('data','function')
to get
However, the curve fitting toolbox shoud get an even better fit (I don't have the curve fitting toolbox, so did a rough fit outside of Matlab).
3 Comments
Alan Stevens
on 11 Sep 2020
As I said, because I don't have MATLAB's curve fitting toolbox I used another piece of software (Mathcad) to do the fit. I then rounded the numbers to the values I listed in my earlier reply.
More Answers (0)
See Also
Categories
Find more on Interpolation in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!