用matlab

时间:2016-01-15 21:46:02

标签: matlab plot cylindrical

我有一个功能,想要在圆柱坐标上绘制它。

w(z,theta)=sin(n.pi.z/a).sin(m.theta) 

变量的极限是:z = 0..a,theta = 0..theta_0,圆柱半径是R = 1.

作为一种物理意义我可以解释,如果我们在笛卡尔坐标系中, z& theta是x,y轴,w是该矩形域上的表面。但是在圆柱坐标z& theta限制一个半径为1的圆柱形圆柱体,该圆柱体在该区域上是表面。

1 个答案:

答案 0 :(得分:1)

使用圆柱坐标或球坐标进行绘图涉及以下几个步骤:

  1. thetaz创建向量:

    theta = linspace(0,2 * pi); z = linspace(0,10);

  2. meshgridtheta创建z

    [TH,Z] = meshgrid(theta,z);

  3. 写下你的函数R(TH,Z):

    R = sin(Z)+ 1 + 5 * sin(TH); %//对于圆柱体,它只是R = 1(尺寸(Z));

  4. 将圆柱坐标转换为笛卡尔坐标:

    [x,y,z] = pol2cart(TH,R,Z);

  5. 使用surfmesh或其他任何内容绘制结果:

    目(X,Y,Z); 轴相等

  6. 这是你得到的结果: enter image description here