Best tool to calculate the parameters of a custom equation fit
    9 views (last 30 days)
  
       Show older comments
    
Hello,
There are quite a bit merhods/tools to fit an custom equation to the experimantal data. I am struggling to use the right one (I tried many of them and eventually decided to ask to an expert). My custom equation is   (a+b/x^2)*exp(-x/c). What is the best way to find a,b and c if you really don't know what the starting parameter values are. 
Thank you
Birsen 
0 Comments
Accepted Answer
  Matt J
      
      
 on 7 Jul 2022
        
      Edited: Matt J
      
      
 on 7 Jul 2022
  
      For your particular equation, I'd rcommend,
[a,b,c]=deal(3,2,1)
x=linspace(1,2,30);   %fake data
y=a+b./x.^2.*exp(-x/c);
funlist={1,@(c,x) exp(-x/c)./x.^2};
[c,ab]=fminspleas(funlist,2, x,y);
a=ab(1), b=ab(2),c  %fitted values
yfit=a+b./x.^2.*exp(-x/c);
plot(x,y,'x',x,yfit); legend('Sample Data','Fit')
2 Comments
  Matt J
      
      
 on 11 Jul 2022
				
      Edited: Matt J
      
      
 on 14 Jul 2022
  
			Would it be the same with the updated equation?
I don't see any change in the equation since I posted. But yes, the fminspleas algorithm only iterates over c (and only requires an initial guess for c) in your case, because that is the only parameter that the model equation has a nonlinear dependence. on.
More Answers (1)
  Kevin Holly
    
 on 7 Jul 2022
        Have you tried using the Curve Fitting Toolbox? You can fit your custom equation to a set of data and it will provide you with the coefficients that provide the best fit along with statistical metrics and a plot.
See Also
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!


