random equation fitting to data set and finding constant parameters

2 visualizaciones (últimos 30 días)
I have x and y coordinates and I want to fit an equation:
y=a*exp(x^b - 2^b)
to the data set and thus finding parameters a and b. Please help me through it.

Respuesta aceptada

Amit
Amit el 22 de En. de 2014
First make a function that you'll use to fit like this:
function val = myfunc(par_fit,x,y)
% par_fit = [a b]
val = norm(y - par_fit(1)*exp(x.^2-2^par_fit(2)));
Now, find the parameters like:
my_par = fminsearch(@(par_fit) myfunc(par_fit,x,y),rand(1,2));
  35 comentarios
aditi
aditi el 23 de En. de 2014
okay...i will follow previous instructions carefully...maybe i have done something wrong...
and a big thanks to u amit...u were of great help :) will contact u if m stuck again somewher else thanks
aditi
aditi el 23 de En. de 2014
one more thing...what i found after googling is that in such cases u have to give a specific range for 1 of the parameter... so any idea about that..??
like in above equation if i deliberately want that the b value should lie betweem 0.2 and 2 and then find a and b...how can i do that???

Iniciar sesión para comentar.

Más respuestas (1)

Matt J
Matt J el 22 de En. de 2014
You might also try FMINSPLEAS. It can take advantage of the fact that y has a linear dependence on one of the parameters 'a'.
  8 comentarios
Sneha Roy
Sneha Roy el 21 de Oct. de 2017
Editada: Sneha Roy el 21 de Oct. de 2017
for some reason the variable par_fit is undefined error doesn't go away. How did you solve that error?

Iniciar sesión para comentar.

Categorías

Más información sobre Interpolation en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by