how to create helix

create helix with radius 2 withone revolution in xy plane and one unit in z direction

Answers (2)

Ameer Hamza
Ameer Hamza on 12 Oct 2020
Edited: Ameer Hamza on 12 Oct 2020
Try this
r = 2;
t = linspace(0, 10*pi, 1000);
x = r*cos(t);
y = r*sin(t);
z = t/(2*pi);
plot3(x, y, z);
grid on

5 Comments

can you explain how is it one revolution in x y
axis
If you want just one revolution then change 't' to
t = linspace(0, 2*pi, 1000);
t control the number of revolutions. 2*k*pi will create k revolutions.
Got it thankyouuu and can you tell what about moving one unit in z direction?
John D'Errico
John D'Errico on 12 Oct 2020
Edited: John D'Errico on 12 Oct 2020
What happens after 2*pi radians? (Hint: x,y return to their original position, because sin and cos are periodic with period 2*pi.)
Therefore, at t = 0, we start the curve, where z=0. When do x and y return to the same spot? Again, at t = 2*pi. What is the value of z at that "time"?
z = (2*pi)/(2*pi) = 1
So z increments by EXACTLY one unit in z, every 2*pi units of time.
@Adil, as John explained, you will move a unit distance along the z-axis for each 2*pi increment in 't'.

Sign in to comment.

KSSV
KSSV on 12 Oct 2020
Edited: KSSV on 12 Oct 2020
r = 2 ;
c = 10 ;
th = linspace(0,2*pi*c,500) ;
x = r*cos(th) ;
y = r*sin(th) ;
z = c*th ;
plot3(x,y,z)

Tags

Asked:

on 12 Oct 2020

Edited:

on 12 Oct 2020

Community Treasure Hunt

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

Start Hunting!