ezfit using a function

조회 수: 5 (최근 30일)
aneps
aneps 2022년 7월 8일
편집: Walter Roberson 2022년 7월 13일
I use ezfit to fit a gaussian in my data. It is straight forward as it is in the ezfit examples:
f1 = ezfit(x,counts,'gauss');
showfit(f1)
I want to fit my own function. So before doing that, I attempted using the equation of gaussian, exaclty the same equation in the ezfit documentation to fit the data ( http://www.fast.u-psud.fr/ezyfit/html/ezfit.html ). I am doing this to check if I am doing any mistakes. I did as follows
f1 = ezfit(x,counts,'a*exp(-(x-x0)^2/(2*s^2))');
showfit(f1)
This time it doesn't fit! Could you please tell me what is wrong in it?
  댓글 수: 2
Natalia Demidova
Natalia Demidova 2022년 7월 12일
Hi,
Notice in the ezfit documentation the way functions are specified are with syntax of "y=" as in a usual function. Thus it should look like:
f1 = ezfit(x,counts,'y = a*exp(-(x-x0)^2/(2*s^2))');
Further for your own function you can specify specific guesses for parameters (such as a and s here). The first guesses for the function (ex. a=1 and s=2) to try would be after semicolon in the same string and look like:
f1 = ezfit(x,counts,'y = a*exp(-(x-x0)^2/(2*s^2)); a=1; s=2');
Have fun :)
aneps
aneps 2022년 7월 13일
Still it doesn't fit! I used f1 = ezfit(x,counts,'y = a*exp(-(x-x0)^2/(2*s^2))');, it doesn;t work. But if I use f1 = ezfit(x,counts,'gauss'); it do the job! Don't understand what cause this difference. Data attached.. Here, first I plot the histogram of column 9. Then I do the curve fit on the histogram.

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

답변 (0개)

카테고리

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

제품


릴리스

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by