mesh grid and mesh ploting

5 Ansichten (letzte 30 Tage)
H-M
H-M am 5 Mai 2020
Kommentiert: H-M am 6 Mai 2020
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 Kommentare
H-M
H-M am 5 Mai 2020
Bearbeitet: H-M am 6 Mai 2020
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 am 6 Mai 2020
Do you have the equations you are trying to model? Or are you creating the model yourself?

Melden Sie sich an, um zu kommentieren.

Antworten (1)

H-M
H-M am 6 Mai 2020
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 Kommentar
H-M
H-M am 6 Mai 2020
x and y are 30*30 matrix but z is 1*30 matrix. z should be a 30*30 matrix

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Language Fundamentals finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by