fitting a gamma model to a data set

10 views (last 30 days)
Rowan Humphreys
Rowan Humphreys on 22 Nov 2022
Answered: Rohit Kulkarni on 28 Aug 2023
Hello,
I have a horrible equation that I need to fit some data to. How may I go about doing this?
This is the function:
where the gamma presumably is this thing:
I have 32 data points evenly spaced from 1 to 32.
Any ideas on how to start would be really appreciated!
  1 Comment
Torsten
Torsten on 22 Nov 2022
Edited: Torsten on 22 Nov 2022
Which parameters do you want to fit ? For which variable(s) in the equation do you have these 32 data ?

Sign in to comment.

Answers (1)

Rohit Kulkarni
Rohit Kulkarni on 28 Aug 2023
Hi,
In my understanding you want to model the above functions and then fit the a vector of values from 1 to 32 in these. You can use symbolic equation to model such expressions:
syms f(mu) N(D,mu)
f(mu) = ((6/3.67^4)) * ((3.67 + mu)^(mu + 4))/gamma(mu+4);
N(D,mu) = Nw * f(mu) * ((D/D_0)^mu) * exp(-(3.67 + mu) * (D/D_0));
MATLAB offers a built-in function called gamma that allows you to calculate the values of the gamma function.
From the equation provided, it can assumed that 'D' and 'mu' are variables and all others are constants.
Then create a vector v and substitute it for mu, also provide the values for 'D' variable.
v = 1:32;
ans = N(D,v);
Hope it helps!

Categories

Find more on Frequently-used Algorithms in Help Center and File Exchange

Products


Release

R2022a

Community Treasure Hunt

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

Start Hunting!