Effacer les filtres
Effacer les filtres

Interpolate values triangular prism mesh on unstructured tetrahedral mesh

3 vues (au cours des 30 derniers jours)
I am trying to interpolate the values of a fine structured triangular prism (=wedge) mesh on a coarser unstructured tetrahedral mesh. For both meshes, I have the x,y,z coordinates of the cell center, so in principle it is just a question of finding the x nearest neighbors of the coarse mesh and assign a weight average of the values of these points to the tetrahedron of the coarse mesh. I actually thought this would be possible with the interp3 function, but it gives me an error message stating that my values are not monotonously increasing. Any clue on how I can efficiently to this interpolation job? Best regards and thanks in advance for your help. Sarah

Réponse acceptée

John D'Errico
John D'Errico le 25 Juil 2016
interp3 is not designed to solve an interpolation on a scattered set. It REQUIRES a regular, rectangular mesh. If you lack that, then it won't work. Anyway, just finding the nearest set of k neighbors is a bad way to do interpolation, since it need not yield a continuous prediction.
You need to use tools like scatteredInterpolant, or if you already have the tessellated mesh, then something like tsearchn.
  3 commentaires
John D'Errico
John D'Errico le 26 Juil 2016
In three dimensions, a tessellated mesh would be that 4 column array of indices for the tetrahedral mesh. Each row of that array indicates one tetrahedron of the mesh. It is the array TRI in the call to tsearchn. Likewise, the existing mesh node coordinates will be the array X in your call to tsearchn.
Sarah Garre
Sarah Garre le 26 Juil 2016
Hi John, I tested your first option with scatteredInterpolant and it seems to work and even fairly fast... F = scatteredInterpolant(MeshHYD.cellmid(:,1),MeshHYD.cellmid(:,2),MeshHYD.cellmid(:,3),MeshHYD.WC(:,ii)); MeshBERT.WC(:,ii) = F(MeshBERT.cellmid(:,1),MeshBERT.cellmid(:,2),MeshBERT.cellmid(:,3)); I'll see whether I can make the other option work too. Thanks for your help!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Delaunay Triangulation 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