i want to do non linear fitting using the function y=ae^(-bt) + C

5 views (last 30 days)
I want to fit the non linear data using the function mentioned above. how do i get the values of a,b, & c. I have attached the text file which has my data.
Thank you.

Answers (1)

Nade Sritanyaratana
Nade Sritanyaratana on 4 Aug 2014
Have you already parsed t and y from the text file?
I would suggest custom nonlinear fitting since it looks like you want to fit an exponential curve with a constant additive term. Here's a doc page about using CFTOOL to do this.
To do this programmatically, you can use a custom fit.
For example, for the function you are using, I would define a fittype like this:
f = fittype( @(a, b, C, t) a*exp(-b*t) + C);
coeffs = fit(t, y, f);
a = coeffs.a;
b = coeffs.b;
C = coeffs.C;
Make sure that t and y are column vectors. Good luck!
  2 Comments
Nade Sritanyaratana
Nade Sritanyaratana on 4 Aug 2014
What do t and y look like? Can you print the output of both?
You will need to convert t and y to column vectors but the method to do so will depend on how they are currently stored.

Sign in to comment.

Categories

Find more on Linear and Nonlinear Regression in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!