equifill7.mws

The Equiangular Spiral

(Alternate Version -- file partly filled-in)

Enter the plotting package:

> with(plots):

Warning, the name changecoords has been redefined

Part 1. Background

(No response is required in Part 1.)

Part 2. Measuring a Spiral Seashell

Enter your x , y , r , and t measurements here. Adjust your values of t (= theta ) as necessary, by adding multiples of 2*Pi .

These data pasted in from applet in Part 2 of the module. Multiples of 2*pi have been added where necessary to the t values.

> n := 24;
x := [156, 154, 123, 100, 96, 107, 130, 166, 187, 199,
195, 165, 93, 33, 21, 55, 137, 249, 318, 341,
320, 273, 196, 136];
y := [177, 197, 208, 190, 165, 143, 129, 131, 148, 177,
218, 249, 262, 215, 133, 69, 28, 49, 123, 233,
312, 378, 427, 446];
r := [ 20.00, 26.91, 33.62, 38.28, 41.76, 44.69, 48.37, 54.92, 58.67, 63.00,
71.85, 77.62, 95.26, 109.79, 123.13, 135.00, 149.00, 170.74, 189.84, 212.51,
228.21, 243.25, 257.10, 269.00];
t := [ 0.0000, .8380, 1.9679, 2.7951, 3.4330, 4.0062, 4.5880, 5.2903, 5.7662, 0.0000+2*Pi,
.6073+2*Pi, 1.1879+2*Pi, 2.0391+2*Pi, 2.7882+2*Pi, 3.5070+2*Pi, 4.0689+2*Pi, 4.7191+2*Pi, 5.4356+2*Pi, 5.9948+2*Pi, .2667+4*Pi,
.6330+4*Pi, .9725+4*Pi, 1.3353+4*Pi, 1.5708+4*Pi];

n := 24

x := [156, 154, 123, 100, 96, 107, 130, 166, 187, 1...
x := [156, 154, 123, 100, 96, 107, 130, 166, 187, 1...
x := [156, 154, 123, 100, 96, 107, 130, 166, 187, 1...

y := [177, 197, 208, 190, 165, 143, 129, 131, 148, ...
y := [177, 197, 208, 190, 165, 143, 129, 131, 148, ...

r := [20.00, 26.91, 33.62, 38.28, 41.76, 44.69, 48....
r := [20.00, 26.91, 33.62, 38.28, 41.76, 44.69, 48....

t := [0., .8380, 1.9679, 2.7951, 3.4330, 4.0062, 4....
t := [0., .8380, 1.9679, 2.7951, 3.4330, 4.0062, 4....
t := [0., .8380, 1.9679, 2.7951, 3.4330, 4.0062, 4....

>

Construct the ( theta, r ) pairs by entering the next line.

> rData:=zip((x,y)->[x,y], t, r);

rData := [[0., 20.00], [.8380, 26.91], [1.9679, 33....
rData := [[0., 20.00], [.8380, 26.91], [1.9679, 33....
rData := [[0., 20.00], [.8380, 26.91], [1.9679, 33....
rData := [[0., 20.00], [.8380, 26.91], [1.9679, 33....
rData := [[0., 20.00], [.8380, 26.91], [1.9679, 33....

>

Plot the data points.

> p1:=plot(rData, style=point, symbol=circle): display(p1);

[Maple Plot]

>

Construct an appropriate plot of the data to determine the growth type.

> p2:=logplot(rData, style=point, symbol=circle): : display(p2);

[Maple Plot]

>

Do your calculations here to determine a function that will reasonably fit the radial measurment data.

>

> slope:=(log(r[19])-log(r[6]))/(t[19]-t[6]);

slope := 1.446431849*1/(1.9886+2*Pi)

>

Enter your fitted function here, and superimpose its graph on the data plot. Note that we are using R for the dependent variable, since r is already in use for data values.

> R:=theta->r[13]*exp(slope*(theta-t[13]));

> p3:=plot(R(theta), theta=0..6*Pi, R=0..r[n]):

> display(p1,p3);

R := proc (theta) options operator, arrow; r[13]*ex...

[Maple Plot]

>

Part 3: Plotting a Spiral Curve

Check your polar function by plotting it in polar coordinates.

> polarplot(R(theta),theta=-2*Pi..4.5*Pi, scaling=constrained);

[Maple Plot]

>

Enter your parametric formulas for x and y.

> x := theta->R(theta)*cos(theta);
y := theta->R(theta)*sin(theta);

x := proc (theta) options operator, arrow; R(theta)...

y := proc (theta) options operator, arrow; R(theta)...

>

Check your parametric equations by plotting the curve. You may change the theta interval by changing a and/or b . You may change the x -range and y -range by changing c . In particular, you may use c to zoom in on the graph. For very small values of c , you will need to make b smaller and p bigger.

>

> a:=-2*Pi; b:=4.5*Pi; a <= theta and theta <= b

> c:=300; x and y range between -c and c

> p:=1000; number of points plotted between theta = a and theta = b

> plot([x(theta),y(theta),theta=a..b], x=-c..c,y=-c..c, numpoints=p, scaling=constrained);

a := -2*Pi

b := 4.5*Pi

c := 300

p := 1000

[Maple Plot]

>

Part 4: Why "Equiangular"?

Answer question 1 here.

>

Enter the parametric formulas for the equiangular spiral:

> x := theta->r0*exp(k*theta)*cos(theta);

> y := theta->r0*exp(k*theta)*sin(theta);

x := proc (theta) options operator, arrow; r0*exp(k...

y := proc (theta) options operator, arrow; r0*exp(k...

>

Do the rest of your calculations here, and answer the rest of the questions in this part.

> den := diff(x(theta),theta);

> num := diff(y(theta),theta);

> tanalpha:=simplify(num/den);

den := r0*k*exp(k*theta)*cos(theta)-r0*exp(k*theta)...

num := r0*k*exp(k*theta)*sin(theta)+r0*exp(k*theta)...

tanalpha := -(k*sin(theta)+cos(theta))/(-k*cos(thet...

> tantheta := sin(theta)/cos(theta);

tantheta := sin(theta)/cos(theta)

> tanbeta := (tanalpha-tantheta)/(1+tanalpha*tantheta);

tanbeta := (-(k*sin(theta)+cos(theta))/(-k*cos(thet...

> simplify(%);

1/k

>

Part 5: Summary

Answer the summary questions here.

>

>