## Plotting an Archimedean Spiral

### Rajbir Singh (view profile)

on 15 Oct 2019
Latest activity Commented on by Rajbir Singh

on 17 Oct 2019

### Jos (10584) (view profile)

b = 0.01; %incerement per rev
n = (r - a)./(b); %number of revolutions
th = 2*n*pi; %angle
Th = linspace(0,th,1250*720);
x = (a + b.*Th).*cos(Th);
y = (a + b.*Th).*sin(Th);
plot(x,y)
The code executes well r, a, n and b are correct. Th and th both are also correct, but the problem which arises is in the values of x and y.
outer value or last value (desired) should be 12.5, but after execution it gives 78.53 and same corresponds to y.
what can be the solutions of this problem?

KALYAN ACHARJYA

### KALYAN ACHARJYA (view profile)

on 15 Oct 2019
Then what is the problem?
Rajbir Singh

### Rajbir Singh (view profile)

on 15 Oct 2019
Sir,
The output which i am getting is an Archimedean Spiral, thats fine. But the problem arises with the output values x and y.
According to the software that i am using r, a, n, b, th and Th values are correct.
My desired outer radius for archemedean spiral is 12.5 but it gives 78.53 Rajbir Singh

### Rajbir Singh (view profile)

on 16 Oct 2019
How can i change the rotation (clockwise or anti-cloclwise) of Archimedean Spiral?

### Jos (10584) (view profile)

on 15 Oct 2019

In the computation of x and y you wrongly multiply b with Th. You should multipy by Th / (2*pi):
b = 0.5; %incerement per rev % Jos: changed to see the spiral!!
n = (r - a)./(b); %number of revolutions
th = 2*n*pi; %angle
Th = linspace(0,th,1250*720);
x = (a + b.*Th/(2*pi)).*cos(Th);
y = (a + b.*Th/(2*pi)).*sin(Th);
% better:
% i = linspace(0,n,1250*720)
% x = (a+b*i).* cos(2*pi*i)
plot(x,y)
[x(end) y(end)]

Show 1 older comment
Rajbir Singh

### Rajbir Singh (view profile)

on 16 Oct 2019
How can i change the rotation (clockwise or anti-cloclwise) of Archimedean Spiral?
Jos (10584)

### Jos (10584) (view profile)

on 16 Oct 2019
hint: use a minus sign :-)
Rajbir Singh

### Rajbir Singh (view profile)

on 17 Oct 2019
It works, thanks once again. :)