在matlab中绘制圆柱坐标系中的曲面

问题描述 投票:0回答:1

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

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的圆柱形圆柱体,该圆柱体在该区域上是表面。

matlab plot cylindrical
1个回答
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);轴相等

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

© www.soinside.com 2019 - 2024. All rights reserved.