mesh grid and mesh ploting

11 ビュー (過去 30 日間)
H-M
H-M 2020 年 5 月 5 日
コメント済み: H-M 2020 年 5 月 6 日
R = 0.003/2;
y=linspace(-1,1,30);
x=linspace(-1,1,30);
r.^2==x.^2+y.^2;
y=r./R;
a0=-6536;
z=a0*R^2*(1-y.^2)/0.016;
[X1,Y1]=meshgrid(x,y);
%zz=griddata(x,y,z,X1,Y1,'cubic');
figure
mesh(X1,Y1,z)
This is a simple poiseuelle flow in a pipe, my goal is to plot the velocity of flow(z) in 3D. R is the redius of pipe, x and y are inplane and z is the velocity along the pipe length. I get the error ' Error using mesh Z must be a matrix, not a scalar or vector.' How can I get the z as a matrix to resolve the error?
  3 件のコメント
H-M
H-M 2020 年 5 月 5 日
編集済み: H-M 2020 年 5 月 6 日
David,
Since the geometry is circle (pipe) and x and y are set in the cicle cross section, I think I need to relate the distance from center of pipe (r) to x and y that is why I wrote r=sqrt(x.^2+y.^2).On the other hand y=r/R.I mean I need to impose to code that the shape is circle or pipe.I do not know how to relate x,y,r together to work properly in code.
Also I put z after the meshgrid but I get z as a vector yet.
I am not sure about what I am doing. If you have any idea please lead me. Thank you
David Hill
David Hill 2020 年 5 月 6 日
Do you have the equations you are trying to model? Or are you creating the model yourself?

サインインしてコメントする。

回答 (1 件)

H-M
H-M 2020 年 5 月 6 日
I just have the poiseuille velocity equation(z equation in my code) in a circular pipe and I am supposed to plot the velocity profile in 3D with meshgrid.
  1 件のコメント
H-M
H-M 2020 年 5 月 6 日
x and y are 30*30 matrix but z is 1*30 matrix. z should be a 30*30 matrix

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeLanguage Fundamentals についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by