Fitting data with custom equation

5 views (last 30 days)
Hi,
I have a data set of X-axis and Y-axis. I have attched the Excel file of my data.
So i want to fit this data in a equation P(t) = At^(−(1+α))e(−t/tc).
I want to do this by curve fitting? I'd like to obtain the parameter α,tc as an answer.
please let me know how to do this.
  1 Comment
Rik
Rik on 18 Nov 2020
What was the top google result when you searched for a solution? How did you try to implement it?

Sign in to comment.

Accepted Answer

Ameer Hamza
Ameer Hamza on 18 Nov 2020
You can use lsqcurvefit()
data = readtable('data set.xlsx');
x = data.LOGX;
y = data.LOGY;
P = @(param, t) param(1)*t.^(-(1+param(2))).*exp(-t/param(3));
sol = lsqcurvefit(P, rand(3,1), x, y);
plot(x, y, '+', 'DisplayName', 'Actual Data')
hold on
plot(x, P(sol, x), 'DisplayName', 'Estimated')
legend()
  2 Comments
anubha agarwal
anubha agarwal on 25 Nov 2020
I am obtaining the complex value of parameters even after changing the upper and lower bounds of the parameters.
Ameer Hamza
Ameer Hamza on 25 Nov 2020
Can you show the data which gives complex parameters?

Sign in to comment.

More Answers (0)

Categories

Find more on Get Started with Curve Fitting Toolbox 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!