Unstructured grid to structured grid
13 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Lorenzo
el 20 de Dic. de 2014
Comentada: Emanuel
el 31 de Jul. de 2019
Dear all, what would be the best way, in your opinion, to get a structured grid out of an unstructured grid?
What I have is something like this:
x y f
1 12 7
3 10 4
1 11 2
2.4 15 0
So basically x and y are totally random and in no specific order. What I need is to resample the values of f on a structured grid with a constant step.
I had a quick look at interp2 and it looks like it will only work if my vectors are strictly monotonic which is not the case as I have plenty of repeated values for x and y.
Thanks a lot
0 comentarios
Respuesta aceptada
David Young
el 20 de Dic. de 2014
Editada: David Young
el 20 de Dic. de 2014
scatteredInterpolant may do what you need. Like this:
x = [1 3 1 2.4].';
y = [12 10 11 15].';
f = [7 4 2 0].';
si = scatteredInterpolant(x, y, f); % using default linear interpolation
xint = (0.5:0.5:3.5).'; % regular grid
yint = (9.5:0.5:15.5).';
fint = si({xint yint})
3 comentarios
Emanuel
el 31 de Jul. de 2019
How does this work if you have a lookup table with x and y values only. So, transfer non-momotonic x values into a fixed (strictly momotonic) x step size with the corresponding (interpolated) y values ?
Más respuestas (1)
Lorenzo
el 20 de Dic. de 2014
1 comentario
David Young
el 21 de Dic. de 2014
I'd have to think that through - but scatteredInterpolant doesn't depend on having a grid at any stage - you can use the returned function, called si in my answer, to sample at any required points. To avoid the discontinuity in theta I would expect that converting everything to Cartesian coordinates might be the right thing to do.
Ver también
Categorías
Más información sobre Interpolation 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!