Solving Exponential equation with data

1 view (last 30 days)
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
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
Onkar Khadke
Onkar Khadke on 11 Sep 2020
Can you tell me how did you got those a b c d values? If you have used any code then please share it, it will help me as I have to fit many other data points.

Sign in to comment.

Accepted Answer

Alan Stevens
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
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.
Onkar Khadke
Onkar Khadke on 11 Sep 2020
Alright. I am Thankful for the help.

Sign in to comment.

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!