I have a graph between 2 functions f and g.
I know it follows a power law function with exponential cutoff.
f(x) = x**(-alpha)*e**(-lambda*x)
How do I find the value of exponent alpha?
Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.
Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.
Lost your password? Please enter your email address. You will receive a link and will create a new password via email.
Please briefly explain why you feel this question should be reported.
Please briefly explain why you feel this answer should be reported.
Please briefly explain why you feel this user should be reported.
If you have sufficiently close x points (for example one every 0.1), you can try the following:
So depending on where you have your points:
If you have a lot of points near 0, you can try:
So the limit of the function h when x goes to 0 is -alpha
If you have large values of x, the function x -> ln(f(x))’ tends toward lambda when x goes to infinity, so you can guess lambda and use pwdyson’s expression.
If you don’t have close x points, the numerical derivative will be very noisy, so I would try to guess lambda as the limit of
-ln(f(x)/xfor large x’s…If you don’t have large values, but a large number of x’s, you can try a minimization of
on both alpha and lambda (I guess It would be more precise than the initial expression)…
It is a simple least square regression (
numpy.linalg.lstsqwill do the job).So you have plenty of methods, the one to chose really depends on you inputs.