How to find the values of a function at any desired point given its value at some arbitrary points??

2 Ansichten (letzte 30 Tage)
If my function u(x,y,z) values is given at say 5 points (x,y,z).....now I want to find the value of the function at the meshgrid points [x,y,z]=meshgrid (0:.1:1,0:.1:1,0:.1:1) ,x=[1 2 3 4 5],y=[1 2 3 4 5],z=[1 2 3 4 5] u=[1 8 27 64 125]

Akzeptierte Antwort

Bjorn Gustavsson
Bjorn Gustavsson am 24 Jun. 2019
Five points worth of information is not a lot for interpolation in 3-D - plot the points and all their connections and see how utterly little it is.
You can try scatteredInterpolant and hope that your points are inside the convex hull of your 5 points and that your function is "very nice".
HTH
  3 Kommentare
Bjorn Gustavsson
Bjorn Gustavsson am 24 Jun. 2019
That's much better! For a 3-D grid 3000 points would be approximately 14.5^3 points - i.e. you could have a regular grid with 14.5 points per dimension. If your function is not too meanspirited over your domain you might get a rather good interpolation. The curse of dimensionality are "lurking at the horizon" - if you had an additional dimension or two the number of points-per dimension in a regular grid would go down to 7.4 then ~5.
It would still be scatteredInterpolant.
HTH

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Interpolation finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by