Ploting Results from CFD (streamline,quiver)

2 views (last 30 days)
Hi, I have some results from a CFD program that I am trying to plot. The mesh in the CFD program is a uniform 2d Mesh, it is 1350 units long in the X direction and 260 units high in the Y. The output I get from the program is two notepads, with the U and V velocities at each node. I can import both of them into matlab and have two 351000X1 arrays. The U and V ouputs are along the X meaning the Y co-ordinate does not change for 1350 values. How do i plot these? When i try use the streamline function it says that my X&Y array arent long enough? How do i set up my X and Y arrays?

Accepted Answer

Walter Roberson
Walter Roberson on 23 Oct 2011
You cannot pass in a vector for U: you must pass in a 2D or 3D array. You probably need to reshape() your U data.
  3 Comments
Walter Roberson
Walter Roberson on 23 Oct 2011
U = reshape(YourUData,1350,260);
Marek
Marek on 29 Oct 2011
Using both of the answers given I was able to plot the data how i wanted. The next step is automating the import of all my files!
Thanks for the hlp!

Sign in to comment.

More Answers (1)

bym
bym on 23 Oct 2011
[xx,yy] = meshgrid(X,Y);
streamline(xx,yy,u,v,startx,starty)
  1 Comment
Marek
Marek on 23 Oct 2011
Yeah i have tried something like that, meshgrid gives me sensible xx yy arrays, but streamline then tell me my U and V arrays are wrong.
??? Error using ==> stream2 at 47
U,V must all be size 2x2 or greater.
Error in ==> streamline at 63
verts =
stream2(x,y,u,v,sx,sy,options);
Error in ==> Untitled2 at 2
streamline(xx,yy,u,v,0,0)
As I said my u and v arrays are both 35100X1,

Sign in to comment.

Categories

Find more on Computational Fluid Dynamics (CFD) in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!