For a plane curve

its curvature is given by

The quantity

is called the radius of curvature. The point

with coordinates given by

is called the center of curvature. The circle with center

radius

is called the osculating circle or the circle of
curvature. The center of curvature

lies on the normal of the curve at the point

the line segment joining

with

is perpendicular to the tangent at

The following procedure draws the line segment joining

with the corresponding center of curvature, where

,

are equally spaced points in the interval

in the domain of the ellipse

,
3

,

> restart;
> x:=5*cos(t);
> y:=3*sin(t);
> x1:=diff(x,t);
> y1:=diff(y,t);
> x2:=diff(x1,t);
> y2:=diff(y1,t);
> rr:=(x1^2+y1^2)/(x1*y2-y1*x2);
> xc:=x-rr*y1;
> yc:=y+rr*x1;
> m:=[[x,y],[xc,yc]];
> t:=n*2*Pi/100;
> w:=evalf(m);
> plot([w$n=1..100],color=black,axes=none);

The evolute of a curve is the locus of its center of curvature. All tangents to the evolute are normal to the given curve. The evolute is the envelope of normals to the given curve.
Draw the line segments joining

with the corresponding center of curvature

for each of the following curves:
(a) the cycloid:
![]()

(b) the epicycloid:
![]()
for the cases

![]()


(c) the hypocycloid:
![]()
for the cases

![]()


(d) the parabola:
![]()
(e)

(f)

(g)

(h)

An involute of a curve is the path of a point of a string tautly unwound from the curve. The curve itself is the evolute of its involute.
Show that the following parametric equation describes the involute of the
circle with center

radius

:
![]()
> restart;
> x:=cos(t);
> y:=sin(t);
> xx:=x+t*sin(t);
> yy:=y-t*cos(t);
> t:=n*2*Pi/100;
> m:=[[x,y],[xx,yy]];
> w:=evalf(m);
> plot([w$n=1..100],color=black,axes=none);
>

To construct an animation of the circle of curvature of the ellipse
![]()
the following steps are taken:
> restart;
> with(plots):
> x:=5*cos(t);
> y:=3*sin(t);
> x1:=diff(x,t);
> y1:=diff(y,t);
> x2:=diff(x1,t);
> y2:=diff(y1,t);
> rr:=(x1^2+y1^2)^(3/2)/abs(x1*y2-y1*x2);
> r:=(x1^2+y1^2)/abs(x1*y2-y1*x2);
> xx:=x-r*y1;
> yy:=y+r*x1;
>
animate({[5*cos(s),3*sin(s),s=0..2*Pi],[xx+rr*cos(s),yy+rr*sin(s),s=
0..2*Pi]},t=0..2*Pi,color=black,axes=none);