Helix in Matlab

时间:2017-02-10 09:05:32

标签: matlab helix

我正在使用Matlab创建一个螺旋。

通过以下代码:

t = 0:pi/50:20*pi;

(能否请您解释一下这种语法,或者我们每次创建螺旋时都要遵循这个?)

st = sin(t);
ct = cos(t);
plot3(st,ct,t)

由于螺旋角的最大效率在40到45度之间,如果我想将角度输入为42,那么在代码中怎么可能?

如果有人可以就此分享他们的意见,将会非常有帮助

TIA

1 个答案:

答案 0 :(得分:1)

代码中发生的事情仅仅是执行螺旋的参数化数学描述,您可以在wikipedia上读取

  

x(t)= cos(t)

     

y(t)= sin(t)

     

z(t)= t

代码的第一行生成t值的向量,从{0}到20pi,步长为pi/50(即1000步)。由于每个2pi表示一次完整旋转(cos和sin是2pi周期),它与螺旋的10圈重合(如果你想改变这一点,让t运行到{{1} })。其他两行为2*pi*NumberOfRotationsx生成相应的向量。 plot3在3-D中绘制一条线,其中yx被传递,并且作为y的参数,我们从z开始传递t

要更改螺旋的斜率,请使用

给出的更一般的描述
  

x(t)= a * cos(t)

     

y(t)= a * sin(t)

     

z(t)= b * t

其中a是半径,b / a是斜率。要使用42°z=t。要确保显示的宽高比正确,请在绘图后使用b = a*atand(42),如果要将其调整,请使用axis equal;