exp(-b/x) fit, inf problem when fitting
Afficher commentaires plus anciens
I am trying to fit some data with the model: exp(-b/x); When x goes to zero, y should go to zero as well since anything power negative infinity is zero. However Matlab sees the infinity and terminates everything. Here is my code:
vv=data(:,1);
ii=data(:,2);
g = fittype('exp(-b/x)');
f0 = fit(vv,ii,g);
xx = linspace(-1,1);
plot(vv,ii,'o',xx,f0(xx),'r-');
grid('on')
5 commentaires
Mathieu NOE
le 25 Fév 2021
hello
could you share the data as well ?
tx
Basil Eldeeb
le 26 Fév 2021
Mathieu NOE
le 26 Fév 2021
yes , your data show a very linear trend
how can you expect to fit an exponential model to these data ? it will never work
Basil Eldeeb
le 26 Fév 2021
Mathieu NOE
le 26 Fév 2021
not sure it's really a good model...

data = readmatrix('data.txt');
x = data(:,1);
y = data(:,2);
% exponential fit method
% model : y = exp(-b/x)
f = @(b,x) exp(b./x);
obj_fun = @(params) norm(f(params(1), x)-y);
sol = fminsearch(obj_fun, -0.1);
b_sol = sol(1)
y_fit = f(b_sol, x);
figure
plot(x,y,'r',x,y_fit,'-.k');
legend('data','exp fit');
Réponse acceptée
Plus de réponses (0)
Catégories
En savoir plus sur Get Started with Curve Fitting Toolbox dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
