Fitting data with a exponentially modified gaussian equation

조회 수: 14 (최근 30일)
Sanchit Sharma
Sanchit Sharma 2022년 3월 18일
댓글: John D'Errico 2022년 3월 18일
Hello,
I am using curve fitting tool box and I am trying to fit below equation of the exponentially modified gaussian distribution. I have attached my attempt at fittin the PDF, I have also attached my x and y data along with this question. Please help me with the solution. Thanks very much!
(c/2) * (exp((c^2*sg^2)/2)) * exp(-c*(x-mu)) * erf((1/sqrt(2)) * ((c*sg) - ((x-mu)/sg)))

답변 (1개)

Matt J
Matt J 2022년 3월 18일
편집: Matt J 2022년 3월 18일
Because you are using a custom model, you need to supply an initial guess of the parameters under "Fit Options". Otherwise, the toolbox will choose one at random (which will probably be bad).
  댓글 수: 5
Torsten
Torsten 2022년 3월 18일
Is your function a probability density function ?
If yes, try
omega = 800.0;
zeta = 7500;
alpha = -1.3;
f = @(x) 2/(omega*sqrt(2*pi))*exp(-((x-zeta).^2/(2*omega^2)))*0.5.*(1+erf(alpha*(x-zeta)/omega));
x = 7000-1500:0.01:7000+1000;
plot(x,f(x))
But your .png file seems to indicate that the area under your curve is not equal to 1. So I assume you are not dealing with a pdf. In this case, the above function f is not suitable.
John D'Errico
John D'Errico 2022년 3월 18일
It vaguely looks like the data comes from a histogram, but it was not normalized to have unit area under the curve.
trapz(x,y)
ans =
73.2481

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Get Started with Curve Fitting Toolbox에 대해 자세히 알아보기

제품


릴리스

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by