To use as a calculator:

Type the expression to be evaluated into any text box labeled "Enter function:" or click the appropriate buttons on the console (sometimes you have to double click - this is a bug I'm working on). An input box can be selected by clicking the arrow on the box labeled "Red Input", "Green Input", etc. (the color of the box will mimic the color of the input box), then clicking on "Red Input" or "Green Input". Hit "Enter" or click the "=" button and the answer will appear in the appropriate color below the inputs. Enter the expression exactly as it would be entered on a pocket calculator (I'm trying to mimic the style of the TI calculators). Making liberal use of parentheses helps ensure that operations are performed in their intended order, but I have taken what I hope are proper steps to ensure standard operator precedence (remember "Please Excuse My Dear Aunt Sally"?). Use "+" for addition, "-" for subtraction, "*" for multiplication, "/" for division, and "^" to indicate an exponent (again, just like a TI). Available mathematical functions are:

e and π, the mathematical constants e (2.718) and pi (3.14) may be entered by typing in "e" and "ALT-p" (hold down the "ALT" key and type "p") respectively.
sin(x), the sine of x
cos(x), the cosine of x
tan(x), the tangent of x
sec(x), the secant of x
csc(x), the cosecant of x
cot(x), the cotangent of x
atan(x), the arctangent of x
asin(x), the arcsine of x
acos(x), the arccosine of x
acot(x), the arccotangent of x
asec(x), the arcsecant of x
acsc(x), the arccosecant of x
sinh(x), the hyperbolic sine of x
cosh(x), the hyperbolic cosine of x
tanh(x), the hyperbolic tangent of x
sech(x), the hyperbolic secant of x
csch(x), the hyperbolic cosecant of x
coth(x), the hyperbolic cotangent of x
atanh(x), the hyperbolic arctangent of x
asinh(x), the hyperbolic arcsine of x
acosh(x), the hyperbolic arccosine of x
acoth(x), the hyperbolic arccotangent of x
asech(x), the hyperbolic arcsecant of x
acsch(x), the hyperbolic arccosecant of x
abs(x), the absolute value of x, |x|
ln(x), the natural logarithm (base e) of x
log(x), the base-10 logarithm of x, log10x
fac(x), the factorial function of x (commonly seen as x!). This program does support non-integral values for x using algorithms good to 5 decimal places.
sqrt(x), the square root of x

Arguments to any of the functions (such as "x") MUST be enclosed in parentheses, for example, sin(x), not sinx or sin x. Clicking the "Reciprocal" button changes "sin", "cos", etc. to "sec", "csc", etc. The "Reciprocal" button now reads "Regular" and clicking it returns "sin", "cos", etc. (the "regular" trig functions). Clicking the "Hyperbolic" button changes "sin", "cos", etc. to "sinh", "cosh", etc. Clicking the button a second time (it now reads "Trigonometric") returns the usual trig functions. The mode of angular measurement (degrees or radians) may be chosen by clicking on the arrow next to the text box showing either degrees or radians, then clicking on one of the selections. The default mode is radians. In the examples below, type in everything between the quotation marks in an "Enter function:" box:

To find 52 + 5*2 - 1, enter "5^2 + 5*2 - 1", then either hit "Enter" or click "=" (the answer is 34). For 600(sin 30o), enter "600*sin(30)", select "degrees" from the menu, then hit "Enter" or click "=" (the answer is 300). If no answer appears, this indicates an error in entering the expression. Click the "Graph" button for a list of possible errors.

The "Log" button:

When the "Enter" key is hit or the "=" button is clicked while doing calculations, the calculation and its result are stored in memory. Clicking the "Log" button displays a list of previous results up to a maximum of 50 calculations.

To graph a function:

This feature will graph functions of the form "y = f(x)" in either Cartesian (rectangular) or polar coordinates, which means the equation must be solved for y in terms of x (implicit functions of the form f(x, y) = 0 are discussed below). Always use "x" as the variable in the expression to be graphed. In polar coordinates the equation must be solved for "r" in terms of "theta" (the angle), then use "x" for the angle. Also, when graphing most expressions in polar coordinates or Cartesian expressions involving trig functions (sin, cos, etc.), the angle mode should be set to "radians".


y=x --- Type "x" into an "Enter Function" box, make sure "Cartesian" and "radians" are selected (they are the default modes), choose the range of "x" and "y" values to be displayed using the "xmin", "xmax", "ymin", and "ymax" boxes, then click the "Graph" button. A separate window will appear with the graph appearing in either red or green depending on which box the function was entered in.

r = 10(1 - cos2A) --- Type "10*(1 - (cos(x))^2), choose "radians" and "polar", then click "Graph".

4x + 2y = 8 --- Solve for "y" on some scrap paper to get y = 4 - 2x, then type "4 - 2*x", choose "Cartesian", change x and y ranges if necessary, then click "Graph". In Cartesian coordinates this graph is a straight line; however in polar coordinates where "x" is now an angle and "y" is a radius, the graph is a spiral. (Note- the program has been upgraded to use r and θ for polar coordinates instead of x and y. The Greek letter θ can be clicked in using the θ-button after changing to either polar or implicit polar coordinates- the x and y buttons become θ and r respectively when in either of the polar modes. θ can be typed in using "ALT-"o").

Graphing implicit functions:

This feature will graph functions of the form f(x,y)=0, eliminating the need to solve for y in terms of x, a task that sometimes isn't even possible, let alone practical. The only algebra required is simply to write your expression in the form f(x,y)=0, meaning if you have an expression of the form A=B, where A and B are funky expressions involving x and y, write the equation in the equivalent form A-B=0, then enter A-B in the appropriate "Enter Function:" box. To illustrate:
A curve called the folium of Decartes is given by
x3+y3 = 3axy,

where a is any non-zero constant. This equation cannot be solved for y in terms of x so to plot its graph write it as
x3+y3 - 3axy = 0,

then enter

(for a = 2) in a text box, choose "Implicit xy" from the coordinate menu (which also includes "Cartesian" and "polar"), then click "Graph". The graph will appear as a series of dots due to my desire to reduce the number of calculations to a managable level, but should produce enough dots to perceive the shape of the curve (this is much more computation-intensive than simple y=f(x) plots).
(Note- This program now FULLY supports implicit function graphing with no need of any algebra beforehand. Type an equation involving x and y (or r and θ) directly into an input, "=" sign and all, then click "Graph". The "," button changes to "=" in implicit xy or implicit polar mode if you prefer to click in your equations.)

Graphing infinite series:

Partial sums of infinite series may be graphed using the Σ button. The technique is best illustated by example:

Plot the sum of the first 40 terms of the Fourier series Σ((8/π)sin(2m-1)x)/(2m-1):
The series starts with m = 1 and ends with m = 40. Series may be entered in the form

Σ((lower bound, upper bound)expression)

so enter this problem as


then click "Graph" (make sure you are in "Cartesian" mode - it's the only mode that supports infinite series). The plot should be approximately a square wave. Notice how the parentheses are layed out and compare with the general form shown above. Remember also to always use m as the summation index, and if you prefer to type, Σ may be typed as "ALT-s".

Graphing differential equations - the "Diff Eq" button:

The differential equation plotter is fairly complicated so instructions are provided on a separate page. Click here and the page will appear in a separate window for convenience.

Note from the author:

This project is a work in progress. Future plans call for a simple differential equation solver and the addition of 3D graphing capabilities. To file a comment or report a bug, e-mail me at To return to the main page click here. Enjoy!

Guy Stallings, February, 2001

(Note: The differential equation plotter and 3D stuff are now working as of 2/23/2004)