Abstract
In this activity you will use the Geometer's Sketchpad and the Symbolic Toolbox to help sketch the osculating circle to the graph of the standard parabola y=x2 . Prerequisites include knowledge of the unit tangent and normal vectors to the curve, curvature, radius of curvature, and vector addition. The symbolic calculations can be intensive, even for the simplest of curves, so we will employ the Symbolic Toolbox to do most of the calculations for us. The osculating circle is best appreciated when animated in real time, so the Geometer's Sketchpad is ideal for the task.
Unit Tangent and Unit Normal
The first task is the parametrization of the parabola y=x2 . This is a simple matter. Let x=t, then y=t2 . Therefore, in vector form, the position of a particle on the plane curve y=x2 is given by r=< t, t2 >. To enter this symbolic form of the vector in Matlab, begin by declaring t as a symbolic object.>> syms t realWe declare t as real to avoid difficulty with Maple interpreting expressions as if there might be complex number involved. Next, enter the position vector with this command.>> r=[t,t^2] r = [ t, t^2]To capture the velocity vector, we take the derivative of the position vector with respect to time.>> v=diff(r,t) v = [ 1, 2*t]To get a unit tangent vector in the direction of the velocity, we divide the velocity vector by its length. The length of any vector is found by taking the dot product of the vector with itself, then taking the square root. Thus, the unit tangent vector is found with this calculation.>> T=v/sqrt(dot(v,v)) T = [ 1/(1+4*t^2)^(1/2), 2*t/(1+4*t^2)^(1/2)]We wish to rotate this vector 90 degrees counterclockwise to determine a unit vector normal to the curve. If we begin with a vector <a,b>, then the vector <-b,a> is the vector we seek. Note further that the dot product of these two vectors is zero, making them orthogonal.>> N=[-T(2),T(1)] N = [ -2*t/(1+4*t^2)^(1/2), 1/(1+4*t^2)^(1/2)]Curvature
If a curve is parametrized in terms of arclength s, which is not the case above (r is parametrized in terms of time t), then the derivative of the unit vector with respect to s is another vector that provides a rate at which the unit vector is changing with respect to s. The magnitude of this derivative gives us the curvature, which is a number which indicates the severity of the bend in a curve. A line should have zero curvature, a curve with very shallow concavity should have a small number to represent its curvature, and a rapid turn of the curve should have a larger number as its curvature. That is, the higher the curvature, the more servere the bending in the curve.Thus, the curvature is defined as:
k=||dT/ds||
That is, the curvature is the magnitude of the derivative of the unit tangent with respect to arc length. However, the chain rule tells us that
dT/ds = (dT/dt)(dt/ds).
If the curve is smooth, the position vector cannot reverse its orientation along the curve, so s is a strictly increasing function of time. Therefore, s has an inverse and we can write
dT/ds = (dT/dt)/(ds/dt),
and
k = || (dT/dt)/(ds/dt) || = (1/||v||) || dT/dt ||.
Matlab handles this calculation with ease. First, we take the derivative of the unit tangent vector T with respect to t and simplify the result.
>> Tp=diff(T,t) Tp = [ -4/(1+4*t^2)^(3/2)*t, 2/(1+4*t^2)^(1/2)-8*t^2/(1+4*t^2)^(3/2)] >> Tp=simple(Tp) Tp = [ -4/(1+4*t^2)^(3/2)*t, 2/(1+4*t^2)^(3/2)]Finally, to calculate the curvature, we take the magnitude of dT/dt and divide by the magnitude of v.>> k=sqrt(dot(Tp,Tp))/sqrt(dot(v,v)) k = 2*(4/(1+4*t^2)^3*t^2+1/(1+4*t^2)^3)^(1/2)/(1+4*t^2)^(1/2)Then we simplify the result.>> k=simple(k) k = 2/(1+4*t^2)^(3/2)The Osculating Circle
The radius of curvature is defined as the reciprocal of the curvature. That is,p = 1/k.
This radius p is the radius of the osculating circle.
Now that we know the radius of the osculating circle, we need to find its center. With center and radius, the osculating circle is completely determined. The center of the osculating circle is easily determined using vector addition. To find the center of the osculating circle, we draw a position vector from the origin to a point on the parabola, then we travel in a direction of the unit normal a distance equal to the radius of the osculating circle, p=1/k, where k is the curvature. This is shown in Figure 1.
![]()
Figure 1.
Note that the vector OC, the position vector for the center of the osculating circle, is the sum of the vectors OP and PC. The vector OP is the position vector r, while the vector PC points in the direction of the unit normal and has length equal to the reciprocal of the curvature. That is,
OC = r + (1/k) N.
It is extremely easy to calculate the vector OC using Matlab.
>> c=r+1./k*N c = [ t-(1+4*t^2)*t, 3*t^2+1/2]Of course, we want to simplify the result.>> c=simple(c) c = [ -4*t^3, 3*t^2+1/2]Sketchpad
The Geometer's Sketchpad is written for Windows and the Mac, but not for Linux. It is possible to run it in Linux using wine, a windows emulator that comes with Linux, but it's a whole lot simpler to restart a machine in PS116 in Windows. When Windows comes up, start the Geometer's sketchpad by clicking on the GSP 4.00 icon on your desktop.Before we begin, we want to inform you of a very important feature, the undo command. This can be selected at any time from the Edit menu or by typing Ctrl+z (hold the control key down and type the letter "z"). This will undo your last command. A second Ctrl+z will undo the command previous to that one, and so on.
Select Define Coordinate System from the Graph menu in Sketchpad. This will create a grid on your sketch as shown in Figure 2.
![]()
Figure 2.
Note the buttons in the left margin of the Sketchpad window. This column of buttons is called the "Toolbox." Click the second button, which is called the "Point Tool." The button changes state so as to look as if it has been depressed, as shown in Figure 3.
![]()
Figure 3.
Move your cursor to the horizontal axis and click the mouse once to place a point at B, as shown in Figure 4.
![]()
Figure 4.
Click the selection arrow in the Toolbox as shown in Figure 5.
![]()
Figure 5.
The selection arrow tool is used to select or deselect objects. Click the point B to deselect it, then click the point B to select it. Note that the point B in Figure 5 is "highlighted," indicating that it is selected. With point B selected, select Abscissa(x) from the Measure menu. This will pick off the x-coordinate of the point B as shown in Figure 6.
![]()
Figure 6.
Select Calculate from the Measure menu, then click the x-coordinate in your sketchpad window and use the calculator to raise this value to the second power, as shown in Figure 7.
![]()
Figure 7.
Clicking OK calculates the square of x, as shown in Figure 8.
![]()
Figure 8.
Important! Read carefully. First use the selection arrow to "deselect" everything. This is easily accomplished by clicking the selection arrow, then clicking in some area of whitespace in your sketch. Now, in this order, select xB and x2 B , as shown in Figure 9. Then select Plot as (x,y) from the Graph menu. This will plot the point C, as shown in Figure 9.
![]()
Figure 9.
Click the selection arrow tool, deselect everything, then select point C, then point B, in that order. Next, select Locus from the Construct menu, which will plot the locus of point C as point B is constrained to move along the horizontal axis. Of course, this is the parametrization of the parabola given by <x, x2 >, as shown in Figure 10.
![]()
Figure 10.
In a manner similar to the way we calculated xB 2 , use the calculator (select Calculate from the Measure menu) calculate the coordinates of the center of the osculating circle, as calculated above in Matlab, and shown in Figure 11.
![]()
Figure 11.
Select the x and y coordinate of the center of the osculating circle, in that order, then select Plot as (x,y) from the Graph menu. This will plot the center of the osculating circle (point D), as shown in Figure 12. You may need to drag the point B with your mouse to bring the point D into view.
![]()
Figure 12.
Select the circle tool from the Toolbox, select point D, then drag the cursor toward the point C. Release your mouse at point C when point C becomes highlighted under the mouse cursor. A circle with center at D and radius CD will be drawn, as shown in Figure 13. This is the osculating circle.
![]()
Figure 13.
Drag the point B with your mouse. This will cause the point C to move along the parabola and the osculating circle will adjust accordingly, as shown in Figure 14.
![]()
Figure 14.
The Evolute of the Parabola
In Figure 14, use the selection tool to "deselect" everything. Then, in this order, select the center D of the osculating circle, then the point B on the horizontal axis (letters may differ in your drawing). Select Locus from the Construct menu, which draws the locus of point D as point B is constrained to move along the horizontal axis. The resulting curve is called the evolute of the parabola.
![]()
Figure 15.
Use your mouse to drag the point B and watch the action of the osculating circle. Note that the center of the osculating circle travels along the evolute as you drag the point B.
Note that the osculating circle is a much better approximation of the parabola near the point of tangency than is the tangent line studied in your first calculus course.
Homework
Use Matlab and the Geometer's Sketchpad to draw the osculating circle to the ellipse defined parametrically by the vector valued functionr = < 2 cos(t), 3 sin(t) >.
Save the file in your home directory in a folder called /home/login/osculating. When you are ready for your project to receive a grade, find me and let me view your work.