How find the function (equation) of the fitting surface using interpolation (method biharmonic)?

7 views (last 30 days)
Hello, I would like some help to discover a function ( f(x,y) ) that describes a surface that was determined through a curve fitting using the Matlab tool "Curve fitting". Afterwards I selected "Interpolant" >> "Biharmonic".
I have three columns with numerical data. From these data, determined numerically, I would like to find an equation (f (x,y) ), which will give me the value of the z axis, if I inform the value of the x and y axis. So I searched for the feature in Matlab through curve fitting to find the function. I noticed that a fifth degree polynomial fit for x and y doesn't look good. So I had to turn to Interpolant. The software plotted a perfect figure, which properly fit the distribution of points. But I can't find the surface equation generated by Matlab.
If anyone can help me I would be very grateful

Accepted Answer

Leonardo Barbosa Torres dos Santos
Dear, thank you for your reply.
I figured the equation must be complicated, but even so I would like to know if it is possible for Matlab to provide it to me.
I'm sending a .dat file of my data, as well as the surface fit constructed using Matlab.
If you know of a way to generate the Equation, however complicated, please let me know.
  4 Comments
Walter Roberson
Walter Roberson on 27 Nov 2022
max(0,Something) returns an array the same size as Something in which each element is the maximum of 0 and the corresponding element of the array.
The maximum of 0 and any value is:
  • the value if the value is greater than 0
  • 0 and the value are the same if the value is exactly equal to 0
  • 0 if the value is less than 0
  • nan if the value is nan
  • a symbolic expression if the value is symbolic and the relationship to 0 cannot be determined
syms x real
max(0, [-2 0 2 x sin(x) exp(x)].')
ans = 
Notice that MATLAB was able to reason that with real values of x, that exp(x) is at least 0
Alex Sha
Alex Sha on 28 Nov 2022
Hi, the fitting function was get through Neural Network fitting procedure, with the activation function of ReLU (Rectified Linear Unit) in output layer of neural network, as show below:

Sign in to comment.

More Answers (1)

John D'Errico
John D'Errico on 26 Nov 2022
Edited: John D'Errico on 26 Nov 2022
This question is asked hundreds of times on the site. The answer is, there is no simple "equation" you can write down. That is true for any such spline or variant of a spline. Instead, you would find dozens or even hundreds of coefficients in a complicated function. Something that a computer has no problem with, but no simple nice looking function.
Sorry.
As far as just finding a nice function you can use, that may depend on finding a model for the problem. And that sometimes takes some ingenuity, some understanding of the process that generated your data. We are not given that here of course. We don't even see your data.

Products


Release

R2021a

Community Treasure Hunt

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

Start Hunting!