Azzera filtri
Azzera filtri

How to preserve meshgrid compatibility after rotation

1 visualizzazione (ultimi 30 giorni)
AP
AP il 28 Ott 2012
Dear All,
I have generated a vector field in 3D. the coordinates are created by meshgrid. Now I need to rotate the domain 90° about y-axis. When I do this and try to plot the isosurface of some values, I get the following error:
Input grid is not a valid MESHGRID.
How can I solve this problem?
Thanks,
Ahmad
  3 Commenti
AP
AP il 29 Ott 2012
This is the error message that I get in Matlab.
Matt J
Matt J il 29 Ott 2012
Modificato: Matt J il 29 Ott 2012
How are you performing the rotation? A 90 degree rotation about y should transform (x,y,z) to (z,y,-x). Are you doing this formula directly, or are you using trigonometric functions to generate rotation matrices? If you are using trig functions are you using COS & SIN or are you using COSD & SIND ?

Accedi per commentare.

Risposte (1)

Matt J
Matt J il 29 Ott 2012
You can't perform a coordinate transformation on a meshgrid and still expect it to be a meshgrid. Only certain transforms like translations preserve a mesh. Use griddata or TriScatterdInterp to obtain gridded samples.
  3 Commenti
Matt J
Matt J il 29 Ott 2012
Modificato: Matt J il 29 Ott 2012
It would still form a lattice, but the new x-coordinates would not be monotonically increasing.
Walter Roberson
Walter Roberson il 29 Ott 2012
isosurface() requires that the X and Y be monotonic, not that they be monotonic increasing.

Accedi per commentare.

Community Treasure Hunt

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

Start Hunting!

Translated by