Best fitting curve for variable data
    3 vues (au cours des 30 derniers jours)
  
       Afficher commentaires plus anciens
    
Hello
I was trying fitting to fit the following data
x = 1.0779    1.2727    1.4700  1.5766    1.6471    1.7396   1.7828    1.8208    1.8370
y = 7.9511    9.8400   12.8838   15.1925   31.0055   36.0292   62.5528   87.9648  176.4142
for the equation:
y = a exp(b*(1/x)^c)
where a ba nd c are fitting paramters.
I triesd the fiting but unfortinately i was not able to magae it. It will be really helpful experties can guide me in this context.
Thanks in advance!
0 commentaires
Réponse acceptée
  Matt J
      
      
 le 23 Avr 2022
        
      Modifié(e) : Matt J
      
      
 le 23 Avr 2022
  
      Using fminspleas from the File Exchange
% data 
x = [1.0779    1.2727    1.4700  1.5766    1.6471    1.7396   1.7828    1.8208    1.8370]' ; 
y = [7.9511    9.8400   12.8838   15.1925   31.0055   36.0292   62.5528   87.9648  176.4142]' ; ;
funlist={1,@(c,xx) (1./xx).^c};
[c,ab]= fminspleas(funlist,-3,x,log(y),-inf,0);
a=exp(ab(1));
b=ab(2);
a,b,c
xx=linspace(min(x),max(x),100);
fun=@(x)a*exp(b*(1./x).^c);
plot(x,y,'o',xx,fun(xx))
ylim([0,max(y)])
0 commentaires
Plus de réponses (1)
  KSSV
      
      
 le 23 Avr 2022
        
      Modifié(e) : KSSV
      
      
 le 23 Avr 2022
  
      % data 
x = [1.0779    1.2727    1.4700  1.5766    1.6471    1.7396   1.7828    1.8208    1.8370]' ; 
y = [7.9511    9.8400   12.8838   15.1925   31.0055   36.0292   62.5528   87.9648  176.4142]' ; ;
eqn = @(a,b,c,x) a*exp(b*(1./x).^c) ; % equation to fit  
% Define Start points
x0 = [1 1 1]; 
% fit-function 
fitfun = fittype(eqn);
% fit curve
[fitted_curve,gof] = fit(x,y,fitfun,'StartPoint',x0)
% Save the coeffiecient values for a,b,c 
coeffvals = coeffvalues(fitted_curve);
% Plot results
scatter(x, y, 'bs')
hold on
plot(x,fitted_curve(x),'r')
legend('data','fitted curve')
3 commentaires
Voir également
Catégories
				En savoir plus sur Spline Postprocessing dans Help Center et File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!




