Ploting Results from CFD (streamline,quiver)

3 次查看(过去 30 天)
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?

采纳的回答

Walter Roberson
Walter Roberson 2011-10-23
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 个评论
Marek
Marek 2011-10-29
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!

请先登录,再进行评论。

更多回答(1 个)

bym
bym 2011-10-23
[xx,yy] = meshgrid(X,Y);
streamline(xx,yy,u,v,startx,starty)
  1 个评论
Marek
Marek 2011-10-23
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,

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Computational Fluid Dynamics (CFD) 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by