1.Construct the line segments joining points of the curve with the corresponding center of curvature for each of the following: the nephroid, the astroid, the deltoid and the cardioid.
(1)the nephroid:

> restart:

> x:=3*cos(s)-cos(3*s):y:=3*sin(s)-sin(3*s):

> x1:=diff(x,s):y1:=diff(y,s):

> x2:=diff(x1,s):y2:=diff(y1,s):

> s:=n*Pi/50:

> f:=(x1^2+y1^2)/(x1*y2-x2*y1):

> xc:=x-f*y1:yc:=y+f*x1:

> m:=[[x,y],[xc,yc]]:

> w:=evalf(m):

> plot([w$n=1..100],scaling=constrained,axes=none,color=blue);

[Maple Plot]

(2)the astroid:

> restart:

> x:=3*cos(t)-cos(3*t):y:=3*sin(t)+sin(3*t):

> x1:=diff(x,t):y1:=diff(y,t):

> x2:=diff(x1,t):y2:=diff(y1,t):

> t:=n*Pi/50:

> f:=(x1^2+y1^2)/(x1*y2-x2*y1):

> xc:=x-f*y1:yc:=y+f*x1:

> m:=[[x,y],[xc,yc]]:

> w:=evalf(m):

> plot([w$n=1..100],scaling=constrained,axes=none,color=blue);

[Maple Plot]

(3)the deltoid:

> restart:

> x:=2*cos(t)-cos(2*t):y:=2*sin(t)+sin(2*t):

> x1:=diff(x,t):y1:=diff(y,t):

> x2:=diff(x1,t):y2:=diff(y1,t):

> t:=n*Pi/50:

> f:=(x1^2+y1^2)/(x1*y2-x2*y1):

> xc:=x-f*y1:yc:=y+f*x1:

> m:=[[x,y],[xc,yc]]:

> w:=evalf(m):

> plot([w$n=1..100],scaling=constrained,axes=none,color=blue);

[Maple Plot]

(4)the cardioid:

> restart:

> x:=2*cos(s)-cos(2*s):y:=2*sin(s)-sin(2*s):

> x1:=diff(x,s):y1:=diff(y,s):

> x2:=diff(x1,s):y2:=diff(y1,s):

> s:=n*Pi/50:

> f:=(x1^2+y1^2)/(x1*y2-x2*y1):

> xc:=x-f*y1:yc:=y+f*x1:

> m:=[[x,y],[xc,yc]]:

> w:=evalf(m):

> plot([w$n=1..100],scaling=constrained,axes=none,color=blue);

[Maple Plot]

2.Construct an animation displaying the various positions of the osculating circle of the following curves:
(1) The astroid: (3 cos t + cos 3t, 3 sin t - sin 3t)

> restart:

> x:=3*cos(t)+cos(3*t):

> y:=3*sin(t)-sin(3*t):

> a:=plot([x,y,t=0..2*Pi],scaling=constrained,axes=none,color=blue):

> x1:=diff(x,t):

> y1:=diff(y,t):

> x2:=diff(x1,t):

> y2:=diff(y1,t):

> r:=((x1)^2+(y1)^2)^(3/2)/abs(x1*y2-x2*y1):

> xc:=x-((x1)^2+(y1)^2)/(x1*y2-x2*y1)*y1:

> yc:=y+((x1)^2+(y1)^2)/(x1*y2-x2*y1)*x1:

> b:=plot([xc,yc,t=0..2*Pi],scaling=constrained,axes=none,color=red):

> c:=animate([xc+r*cos(s),yc+r*sin(s),s=0..2*Pi],t=0..2*Pi,frames=50,axes=none,scaling=constrained,color=yellow):

> d:=animate([(1-s)*xc+s*x,(1-s)*yc+s*y,s=0..1],t=0..2*Pi,frames=50,axes=none,scaling=constained,color=green):

> with(plots):

Warning, the name changecoords has been redefined

> display(a,b,c,d);

[Maple Plot]

(2)the deltoid:(2cos t+cos 2t,2sin t-sin 2t)

> restart:

> x:=2*cos(t)+cos(2*t):

> y:=2*sin(t)-sin(2*t):

> a:=plot([x,y,t=0..2*Pi],scaling=constrained,axes=none,color=black):

> x1:=diff(x,t):

> y1:=diff(y,t):

> x2:=diff(x1,t):

> y2:=diff(y1,t):

> r:=((x1)^2+(y1)^2)^(3/2)/abs(x1*y2-x2*y1):

> xc:=x-((x1)^2+(y1)^2)/(x1*y2-x2*y1)*y1:

> yc:=y+((x1)^2+(y1)^2)/(x1*y2-x2*y1)*x1:

> b:=plot([xc,yc,t=0..2*Pi],scaling=constrained,axes=none,color=green):

> c:=animate([xc+r*cos(s),yc+r*sin(s),s=0..2*Pi],t=0..2*Pi,frames=50,axes=none,scaling=constrained,color=blue):

> d:=animate([(1-s)*xc+s*x,(1-s)*yc+s*y,s=0..1],t=0..2*Pi,frames=50,axes=none,scaling=constained,color=red):

> with(plots):

Warning, the name changecoords has been redefined

> display(a,b,c,d);

[Maple Plot]

(3)The cardioid:(2cos t-cos 2t,2sin t-sin 2t)

> restart:

> x:=2*cos(t)-cos(2*t):

> y:=2*sin(t)-sin(2*t):

> a:=plot([x,y,t=0..2*Pi],scaling=constrained,axes=none,color=green):

> x1:=diff(x,t):

> y1:=diff(y,t):

> x2:=diff(x1,t):

> y2:=diff(y1,t):

> r:=((x1)^2+(y1)^2)^(3/2)/abs(x1*y2-x2*y1):

> xc:=x-((x1)^2+(y1)^2)/(x1*y2-x2*y1)*y1:

> yc:=y+((x1)^2+(y1)^2)/(x1*y2-x2*y1)*x1:

> b:=plot([xc,yc,t=0..2*Pi],scaling=constrained,axes=none,color=yellow):

> c:=animate([xc+r*cos(s),yc+r*sin(s),s=0..2*Pi],t=0..2*Pi,frames=50,axes=none,scaling=constrained,color=blue):

> d:=animate([(1-s)*xc+s*x,(1-s)*yc+s*y,s=0..1],t=0..2*Pi,frames=50,axes=none,scaling=constained,color=red):

> with(plots):

Warning, the name changecoords has been redefined

> display(a,b,c,d);

[Maple Plot]

(4)The cycloid:(t+sin t,cos t)

> restart:

> x:=t+sin(t):

> y:=cos(t):

> a:=plot([x,y,t=0..6*Pi],scaling=constrained,axes=none,color=gray):

> x1:=diff(x,t):

> y1:=diff(y,t):

> x2:=diff(x1,t):

> y2:=diff(y1,t):

> r:=((x1)^2+(y1)^2)^(3/2)/abs(x1*y2-x2*y1):

> xc:=x-((x1)^2+(y1)^2)/(x1*y2-x2*y1)*y1:

> yc:=y+((x1)^2+(y1)^2)/(x1*y2-x2*y1)*x1:

> b:=plot([xc,yc,t=0..6*Pi],scaling=constrained,axes=none,color=brown):

> c:=animate([xc+r*cos(s),yc+r*sin(s),s=0..2*Pi],t=0..6*Pi,frames=50,axes=none,scaling=constrained,color=blue):

> d:=animate([(1-s)*xc+s*x,(1-s)*yc+s*y,s=0..1],t=0..6*Pi,frames=50,axes=none,scaling=constained,color=red):

> with(plots):

Warning, the name changecoords has been redefined

> display(a,b,c,d);

[Maple Plot]

(5)The ellipse:(5cos t,3sin t)

> restart:

> x:=5*cos(t):

> y:=3*sin(t):

> a:=plot([x,y,t=0..2*Pi],scaling=constrained,axes=none,color=brown):

> x1:=diff(x,t):

> y1:=diff(y,t):

> x2:=diff(x1,t):

> y2:=diff(y1,t):

> r:=((x1)^2+(y1)^2)^(3/2)/abs(x1*y2-x2*y1):

> xc:=x-((x1)^2+(y1)^2)/(x1*y2-x2*y1)*y1:

> yc:=y+((x1)^2+(y1)^2)/(x1*y2-x2*y1)*x1:

> b:=plot([xc,yc,t=0..2*Pi],scaling=constrained,axes=none,color=black):

> c:=animate([xc+r*cos(s),yc+r*sin(s),s=0..2*Pi],t=0..2*Pi,frames=50,axes=none,scaling=constrained,color=blue):

> d:=animate([(1-s)*xc+s*x,(1-s)*yc+s*y,s=0..1],t=0..2*Pi,frames=50,axes=none,scaling=constained,color=red):

> with(plots):

Warning, the name changecoords has been redefined

> display(a,b,c,d);

[Maple Plot]

(6)The egg:(5cos t-cos2t,3sin t-sin 2t)

> restart:

> x:=5*cos(t)-cos(2*t):

> y:=3*sin(t)-sin(2*t):

> a:=plot([x,y,t=0..2*Pi],scaling=constrained,axes=none,color=brown):

> x1:=diff(x,t):

> y1:=diff(y,t):

> x2:=diff(x1,t):

> y2:=diff(y1,t):

> r:=((x1)^2+(y1)^2)^(3/2)/abs(x1*y2-x2*y1):

> xc:=x-((x1)^2+(y1)^2)/(x1*y2-x2*y1)*y1:

> yc:=y+((x1)^2+(y1)^2)/(x1*y2-x2*y1)*x1:

> b:=plot([xc,yc,t=0..2*Pi],scaling=constrained,axes=none,color=black):

> c:=animate([xc+r*cos(s),yc+r*sin(s),s=0..2*Pi],t=0..2*Pi,frames=50,axes=none,scaling=constrained,color=blue):

> d:=animate([(1-s)*xc+s*x,(1-s)*yc+s*y,s=0..1],t=0..2*Pi,frames=50,axes=none,scaling=constained,color=red):

> with(plots):

Warning, the name changecoords has been redefined

> display(a,b,c,d);

[Maple Plot]

(7)The lemniscate of bernoulli:

> restart:

> x:=cos(t)/(2-(cos(t))^2):

> y:=sin(t)*cos(t)/(2-(cos(t)^2)):

> a:=plot([x,y,t=0..2*Pi],scaling=constrained,axes=none,color=brown):

> x1:=diff(x,t):

> y1:=diff(y,t):

> x2:=diff(x1,t):

> y2:=diff(y1,t):

> r:=((x1)^2+(y1)^2)^(3/2)/abs(x1*y2-x2*y1):

> xc:=x-((x1)^2+(y1)^2)/(x1*y2-x2*y1)*y1:

> yc:=y+((x1)^2+(y1)^2)/(x1*y2-x2*y1)*x1:

> b:=plot([xc,yc,t=0..2*Pi],scaling=constrained,axes=none,color=black):

> c:=animate([xc+r*cos(s),yc+r*sin(s),s=0..2*Pi],t=0..2*Pi,frames=50,axes=none,scaling=constrained,color=blue):

> d:=animate([(1-s)*xc+s*x,(1-s)*yc+s*y,s=0..1],t=0..2*Pi,frames=50,axes=none,scaling=constained,color=red):

> with(plots):

Warning, the name changecoords has been redefined

> display(a,c,d,view=[-1..1,-1..1]);

[Maple Plot]

(8)The curve (5cos t+sin 2t,3cos 3t-sin 4t)

> restart:

> x:=5*cos(t)+sin(2*t):

> y:=3*cos(3*t)-sin(4*t):

> a:=plot([x,y,t=0..2*Pi],scaling=constrained,axes=none,color=brown):

> x1:=diff(x,t):

> y1:=diff(y,t):

> x2:=diff(x1,t):

> y2:=diff(y1,t):

> r:=((x1)^2+(y1)^2)^(3/2)/abs(x1*y2-x2*y1):

> xc:=x-((x1)^2+(y1)^2)/(x1*y2-x2*y1)*y1:

> yc:=y+((x1)^2+(y1)^2)/(x1*y2-x2*y1)*x1:

> b:=plot([xc,yc,t=0..2*Pi],scaling=constrained,axes=none,color=black):

> c:=animate([xc+r*cos(s),yc+r*sin(s),s=0..2*Pi],t=0..2*Pi,frames=50,axes=none,scaling=constrained,color=blue):

> d:=animate([(1-s)*xc+s*x,(1-s)*yc+s*y,s=0..1],t=0..2*Pi,frames=50,axes=none,scaling=constained,color=red):

> with(plots):

Warning, the name changecoords has been redefined

> display(a,c,d,view=[-6..6,-4..4]);

[Maple Plot]

(9)The spiral:

> restart:

> x:=t*cos(t):

> y:=t*sin(t):

> a:=plot([x,y,t=0..12*Pi],scaling=constrained,axes=none,color=brown):

> x1:=diff(x,t):

> y1:=diff(y,t):

> x2:=diff(x1,t):

> y2:=diff(y1,t):

> r:=((x1)^2+(y1)^2)^(3/2)/abs(x1*y2-x2*y1):

> xc:=x-((x1)^2+(y1)^2)/(x1*y2-x2*y1)*y1:

> yc:=y+((x1)^2+(y1)^2)/(x1*y2-x2*y1)*x1:

> b:=plot([xc,yc,t=0..2*Pi],scaling=constrained,axes=none,color=black):

> c:=animate([xc+r*cos(s),yc+r*sin(s),s=0..2*Pi],t=0..12*Pi,frames=50,axes=none,scaling=constrained,color=blue):

> d:=animate([(1-s)*xc+s*x,(1-s)*yc+s*y,s=0..1],t=0..12*Pi,frames=50,axes=none,scaling=constained,color=red):

> with(plots):

Warning, the name changecoords has been redefined

> display(a,c,d);

[Maple Plot]