How to make curve fit equation for 2 variables?

80 vues (au cours des 30 derniers jours)
Muhammad Raza
Muhammad Raza le 21 Mar 2014
Commenté : Muhammad Raza le 26 Mar 2014
Hello,
I have got a function with respect to 2 different variables. I want to make an equation of that function with respect to both the variables (for example: f(x1,x2) = ax1.x2^2 + bx1 +cx1^2). Is there anyone have an idea how i can make it? please let me know..
I am looking forward
Cheers Raza

Réponse acceptée

Star Strider
Star Strider le 21 Mar 2014
Modifié(e) : Star Strider le 21 Mar 2014
I went into some detail in my answer 2D data fitting - Surface. (It’s easier to hyperlink to it than to repeat it here.)
To use your equation in a regression model, this will work:
f = @(B,XY) B(1).*XY(:,:,1).*XY(:,:,2).^2 + B(2).*XY(:,:,1) + B(3).*XY(:,:,1).^2;
To see what it produces with arbitrary parameters and data:
[X Y] = meshgrid(0:10, 0:10);
XY(:,:,1) = X;
XY(:,:,2) = Y;
B = [3; 5; 7];
figure(1)
mesh(X, Y, f(B,XY))
grid on
xlabel('X')
ylabel('Y')
zlabel('Z')
It creates a surface.
  11 commentaires
Star Strider
Star Strider le 26 Mar 2014
Modifié(e) : Star Strider le 26 Mar 2014
If you’re simply looking to fit your data to a polynomial surface rather than fit it to a model, I suggest using polyfitn that Image Analyst refers to in his answer.
Muhammad Raza
Muhammad Raza le 26 Mar 2014
Thank you so much sir .. I got what I was looking for. Your help regarding curve fitting is greatly appreciated :)
Cheers Raza

Connectez-vous pour commenter.

Plus de réponses (1)

Image Analyst
Image Analyst le 25 Mar 2014
I'll also put in a plug for John D'Errico's polyfitn http://www.mathworks.com/matlabcentral/fileexchange/34765-polyfitn which I use to create a 2D polynomial fit to a surface, for example to create a smooth background image from a noisy, actual, image snapped from a camera.
Attached is a demo that uses it on a standard MATLAB demo image.

Catégories

En savoir plus sur Get Started with Curve Fitting Toolbox 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!

Translated by