Borrar filtros
Borrar filtros

How can I perform multivariable polynomial curve fitting?

131 visualizaciones (últimos 30 días)
Hey Community! I am looking to perform a polynomial curve fit on a set of data so that I get a multivariable polynomial. I have successfully been able to fit a variable on an independent set using polyfit(). In my case, that was "voltage as a function of current." I want to be able to perform a fit that gives me a function for something like, "voltage as a function of current and temperature." Any ideas?
Cheers!

Respuesta aceptada

Shashank Prasanna
Shashank Prasanna el 15 de Mayo de 2013
You can use the curve fitting toolbox (cftool) or the statistics toolbox (regress, LinearModel.fit, NonLinearModel.fit) to perform multiple linear regression.
If you don't have any of those toolboxes then you can set up your own optimization problem to fit your function as below:
  2 comentarios
Mitchell
Mitchell el 15 de Mayo de 2013
So surface fitting gives me a 3D graph with x,y,z axis. From the looks of the help cftool file it seems like it is z as a function of x and y? Am I interpreting this correctly?
On another note, the temperature vector (call it y) will not be the same length as the current vector (call it x) since the experiment will be performed a discrete temperatures (say 5) and current will be ramped giving thousands of data-points. Will this be a problem?
Shashank Prasanna
Shashank Prasanna el 15 de Mayo de 2013
Editada: Shashank Prasanna el 15 de Mayo de 2013
1) Yes Z = f(X,Y)
2) If you don't have same size data, you may have to interpolate.

Iniciar sesión para comentar.

Más respuestas (2)

cr
cr el 15 de Mayo de 2013
I dont think basic Matlab has got that ability. You will need curve fitting toolbox to do surface fitting. See this link: http://www.mathworks.in/help/curvefit/surface-fitting.html
Regards.
  1 comentario
Mitchell
Mitchell el 15 de Mayo de 2013
I have full MatLab with pretty much every toolbox! Thank goodness for university licensing!

Iniciar sesión para comentar.


David Graff
David Graff el 27 de Abr. de 2015
Use the excellent polyfitn package at http://www.mathworks.com/matlabcentral/fileexchange/34765-polyfitn . I love it and use it all the time.

Categorías

Más información sobre Get Started with Curve Fitting Toolbox en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by