Wednesday, January 13, 2010

calculus - volumes by revolution



Please Note: This file marks the first time I have posted a GSP5 file, which will not work in earlier versions of the program. GSP5 allows you to save a file to be GSP4-compatible (provided the sketch does not make use of new features) and I will try to do this when it is possible.

This sketch may be a handy tool for depicting the volume that is generated by revolving an area about a vertical or horizontal axis. The volume is shown as a wire-frame "family of curves", a locus of a locus, and one of several fantastic new capabilities in GSP 5. This sketch will not work in GSP 4.

The volume can be tilted at any angle, and the movement through a small range of angles will allow one to observe the shape of the volume. The vertical and horizontal axes can each be moved. The area can be 'swept' around the axis.

The default functions define an area that can be integrated with respect to x, but not (explicitly)with respect to y. Therefore, one axis forces us to use cylindrical shells while the other direction of revolution will allow only discs. Discs and cylindrical shells can be shown for each individual value of x, as determined by a point moving through the interval that defines the area.

Download GSP5 file: Calculus_Revolution.zip

Keywords: calculus, volumes, integration, revolution, GSP 5, family of functions

Saturday, December 5, 2009

dynamic geometry paper

Last year at this time I was putting the finishing touches on a paper: "Some Topics Which are Fundamentally Enhanced by the Use of Dynamic Geometry". Yesterday I had the opportunity to give a presentation on this paper at the Technology and Innovation in Mathematics Education conference at IIT Bombay, and it should appear in the proceedings for the conference. Enjoy.

Friday, October 30, 2009

gsp trick - booleans

A boolean variable (see Java class Boolean) in computer programming can be thought of as true/false or 1/0 or on/off, to be used as a switch. The boolean variable is an element of Boolean Algebra, named for George Boole, an English mathematician who died in 1864 after making significant contributions to the foundation of computer science.

The boolean variable is an indispensible concept in programming and it can be created and used within Sketchpad.

Most recently, I employed this trick in my Riemann Sum sketch to define a single function plot which shows one of three different functions, as selected by clicking one of a set of three action buttons. Here are directions for such a construction.

Construct a line segment BC with a point A on the segment, as shown in the screenshot. Now select (in this order) C, B, A and from the Measure menu, select Ratio. Move point A back and forth to make sure the ratio measurement goes between 0 and 1. If the points are selected in a different order, a different ratio will be measured, which could range from 0 to infinity. We want 0 to 1, and this ratio measurement will be the boolean variable.

Now create two action buttons to "Move A->B" and "Move A->C". On the "Move" tab for the button properties, set the speed to "instant".

Next, create two presentation buttons. Select the "Move A->B" and "Move A->C" buttons (order matters) and create a presention. Make sure it is sequential rather than simultaneous. Construct the second presentation button after selecting "Move A->C" and then "Move A->B". Test the presentation buttons to make sure you know which sets the variable to one and which sets it to zero. Label the presentation buttons accordingly. The variable is complete and its values will be 0 or 1, provided it is changed only using the buttons.

Here is a neat application of the idea. Select the objects of the construction and define a tool to do the work. Using that tool, Sketchpad will define three new boolean variables with just six clicks, since the only independent elements of the construction are the two segment endpoints.


Next, I have renamed the variables f_boolean, g_boolean, and h_boolean. For each variable, I renamed the two presentation buttons as, for example, "f=0" and "f=1" after carefully making sure that I knew which was which.


Define three functions, for example: f(x)=x, g(x)=x2, and h(x)=x3. Now plot the function k(x)=f(x)*f_boolean + g(x)*g_boolean + h(x)*h_boolean. The plot of k(x) can be changed by making three presentation buttons whose labels can be "show f", "show g", and "show h". The presentations should be constructed by selecting these buttons:

"show f" is the presentation of f=1, g=0, h=0
"show g" is the presentation of f=0, g=1, h=0
"show h" is the presentation of f=0, g=0, h=1

Here order is not important and a "simultaneous" presentation is acceptable. Also, it makes a smoother transition to change the six movement buttons {f=1, f=0, g=1, g=0, h=1, h=0} to have medium speed. This is mathematically different from a boolean and in some applications it may be confusing or incorrect to indicate a continuum of values from 0 to 1, but here it looks really cool. Also note that the function k(x) will have the greatest common domain of f, g, and h.



This is a nifty trick that lets you switch back and forth between a few functions for some variety without all of the typing.

Friday, October 23, 2009

the illusion of randomness

This post and its ideas are, like so many of my endeavors, probably pretty obscure and generally of little use. That said, I have occasionally wished that Sketchpad contained a random variable mechanism. A truly random variable is not systematically obtainable for the simple reason that if it was the product of a system, it would not be random. However, if random is not available we will settle for a simulation of random, meaning a quantity that sporadically changes with no discernible pattern. This "discernible" is a very subjective criterion and much scrutiny would make the purportedly random variable even more difficult to declare "random". For my purposes in Sketchpad, I needed the variable to lack visually discernible order.

The application was the sketch on the previous post which iteratively defines a non-uniform partition of an interval into a variable number of sub-intervals. The intent was to show that the Riemann sum is a simpler concept by definition than the LRAM, MRAM, and RRAM special cases where uniformity is imposed without necessarily providing an optimal estimate. I have felt that students treat the Riemann definition, with its Δxk's and ck's as being more complicated for its generality. That's a shame.

The fascinating cognitive riddle behind my musings is that generality is simpler in essence but impossible to portray. Any representation must necessarily assign values to the parameters that define the construction. Making a series of decisions to do this will consume time and inevitably result in a construction that is not after all random.

The dynamic geometry environment entitles a construction to a sort of generality in that the construction can be observed through an apparent continuum of its parameters. Sometimes we want those parameters to vary at the whim of the observer, and other times it may be more effective to allow the user to witness the randomness that may potentially arise within a family of constructions. With the Riemann sums, a student given the opportunity to partition and calculate an estimate will quickly opt for uniformity and automation, but the simpler idea to not restrict Δxk's and ck's is more elusive.

Anyway, the function I set upon that was my first moderate success was this:
I am not entirely certain that a similar construction would even provide a uniform random variable, but it is sporadic and it has the range [0,1) or [0,1], I am not sure which. The inclusion of 1 relies upon the architecture and data type. This works for my purposes and it can obviously be improved but I think with a greater cost in calculating energy. For example, a greater exponent would make the mantissa more frantic for small movements of x, but my own application would not be appreciably improved. Here I will end my musings with the observation that "The Frantic Mantissas" would be an excellent name for a band.

Thursday, October 22, 2009

calculus - riemann sum

Download: Calculus_Riemann_Sum_f.zip

This sketch is, I hope, an improvement on my previous integration sketch. The concept I tried to capture here is the generality of the Riemann sum construction. The use of Rectangular Approximation Methods LRAM (left), MRAM (midpoint), and RRAM (right) involves the uniform partition of [a,b]. The Riemann sum defines an estimate using an arbitrary partition, which is more eloquent as it does not assume equal sub-intervals. The equal sub-intervals of RAM are not logically optimal, just more easily computed.

For me, this sketch was more of an exercise in the use of dynamic geometry to show generality and randomization. While sketchpad does not contain a random variable calculation, this sketch does utilize a function that affects sufficiently sporadic behavior for the purposes.
There are buttons that move the settings to LRAM, RRAM, MRAM, all with variable numbers of sub-intervals. The function can be changed as well as the interval.

Update: I just updated the file to include three different buttons to quickly change the function. Any of the three functions can be altered individually and the buttons allow quick changes from one function to the next.

Update: (10/23/09) The new version includes a smoother transition between functions when using the action buttons to switch.

Friday, September 25, 2009

polynomials - bounded roots


Download: Polynomial_Zero_Bounds.zip

This sketch examines the test for an upper or lower bound of real zeros for a polynomial function. The test uses Descartes' Signs Rule that gives a maximum number of zeros according to the number of times the polynomial terms change signs. The user can alter the quartic polynomial, which is defined by five independent points. (There is also a tool in the sketch for constructing a quartic polynomial from five points).

This sketch shows the synthetic division of f(x) by (x-k). Particularly interesting is the chance to observe that some bounds will not be recognized as such by this test. Under what conditions will the test fail? How can we employ this idea for a polynomial with a negative leading coefficient? What must be true in order for the the least upper bound to equal the greatest root? How do complex roots affect the result? Why is there a restriction that k ? 0 in order to demonstrate that k is an upper bound? Could an adaptation be made to allow us to test a negative k as an upper bound? Does a horizontal translation of the function affect the difference between the least upper bound and the greatest root?

Monday, September 21, 2009

poynomials - multiplicity


Download: Polynomial_Multiplicity.gsp

This sketch is perhaps a handy tool for presenting the idea of multiplicity of polynomial zeros. The sketch shows a sixth degree polynomial defined by its roots, which are independent points on the x-axis. The dynamic environment allows us to see a continuum of functions as two roots are dragged closer to one another. In this way, one can develop an understanding of what a polynomial does near roots according to the multiplicity of that root. A root of multiplicity three, for example, can be recognized as the convergence of three roots. One can witness multiplicity as a special case in a coherent continuum.

The zeros on the sketch can be dragged with the arrow tool or directed to predetermined locations using buttons.