Table of Contents
Getting Started
When Graphite starts up, it immediately displays the last graph that was entered. The first time you start Graphite, some example functions will appear. Tapping anywhere in the graph area will hide and show the toolbar at the bottom of the screen:
Panning and Zooming
Graphite provides multitouch gestures you can use to pan and zoom around your graphs intuitively. When in the standard graph mode (and not calculation mode), pressing and dragging a single finger over the graph area will pan the graph around.
If you press and drag a second finger, you can zoom in and out of the graph with a pinching gesture. You can choose to scale just the x axis, just the y axis, or both axes simultaneously. A gray crosshair or arrow will appear whenever two fingers are on the graph to indicate which zooming mode has been activated. The gestures are summarized in the table below:
Zoom Axis Gesture
X-axis only
Place second finger to form a horizontal line with the first finger. Move your fingers closer together along this line to contract the x-axis (zoom out), and move your fingers farther apart to expand (zoom in).
Y-axis only
Place second finger to form a vertical line with the first finger. Move your two fingers closer together along this line to contract the y-axis (zoom out), and move your fingers farther apart to zoom in.
Both axes
Place the second finger to form a diagonal line with the first finger. Decrease the horizontal and vertical distance between your fingers to contract the x- and y-axes respectively (zoom out). Increase the horizontal and vertical distance between your fingers to zoom in.
Equation Entry and Removal
From the graph screen, press "Edit" on the toolbar. This will bring up a list of equations:
If you would like to edit an existing equation, simply tap on it to bring up the equation editor.

If you would like to insert a new equation, first tap "Add, Remove, and Reorder," and then tap the green plus:
The equation "y = x" will be inserted, and the equation editor will appear.

The equation entry screen appears differently in landscape mode and portrait mode, but the exact same functionality is present in both. There is a text field that displays the entered equation, and an array of convenience buttons:
The convenience buttons place text at the current insertion point, making it much easier to type in commonly used functions and symbols. These buttons are inactive when you first bring up the entry screen, but they will activate when you tap on the equation text field and bring up the keyboard. Because of space constraints, not all functions can be inserted using the convenience buttons. These functions must instead be entered using the standard keyboard. See the function list for a complete list of the functions that can be graphed.

There are also sliders that you can use to change the width and color of the equation's line.

When you change either the equation or properties of the equation, you can save your changes by pressing the save button in the upper right corner of the screen. If you do not want to keep your changes, press the back button labeled "Parameters" in the upper left corner of the screen. If there is an error with the equation you input, the save button will not save your changes and will instead bring up an error describing the problem. You can still press the back button to cancel your changes if you'd like.

If you would like to remove an equation, either swipe your finger across it horizontally and press the delete button that appears, or tap "Add, Remove, and Reorder," and tap the red minus next to the equation.

If you want to change the equations' drawing order, press "Add, Remove, and Reorder" and then drag the handle that appears to the right of each equation to move it to the desired location. (An equation appearing above another equation in the list means that it will graph on top of that other equation.)
Calculations
Graphite can compute many useful quantities using precise numeric methods. From the graph screen, press the "Calculate" button on the toolbar. A new toolbar will appear, along with an instruction bar at the top of the screen:
A blue highlight indicates which one of the calculation modes is in effect. Trace is selected by default when entering the calculation interface. Here is a list of the buttons and their uses:
Description
Trace Mode
Find (x,y) pairs along a curve.
Root Finding Mode
Find a curve's zeros.
Area/Integration Mode
Find a definite integral numerically.
Extremum Finding Mode
Find a minimum or maximum.
Intersect Finding Mode
Find an intersection of two curves.
Exit Calculation Interface
When a mode is selected, instructions will appear in the instructions bar telling you how to use it. In general, you must first select equation(s) for computation, then choose computation bounds by dragging the vertical handles, and finally tap the instruction bar to compute the desired quantity. If the calculation cannot be made, an error message will appear to explain what went wrong.

If at any time you want to change to a different curve or pair of curves for computation, press the computation button again and then select the new curve(s) desired.

The trace mode and area mode are the only exceptions to this process. In trace mode, you can drag your fingers along multiple curves. Trace points always stay along the curves that were nearest to where the original touch was made. In area mode, the integral is computed roughly as the integration bounds are changed, and more exactly when you let go. If an integral cannot be computed, the result will read "invalid approximation," and you will get an error message when you let go of the bounds. If an integral is undefined, but the numeric method does converge, the result will read "nan" or "inf."
Function List
Here is a list of all the functions and operators that can be used to construct equations in Graphite.
OperatorDescription
+Addition
-Subtraction/Negation
*Multiplication
/Division
^Exponentiation
Function NameDescription
absAbsolute Value
sinSine
cosCosine
tanTangent
cscCosecant
secSecant
cotCotangent
sinhHyperbolic Sine
coshHyperbolic Cosine
tanhHyperbolic Tangent
asinArcsine
acosArccosine
atanArctangent
asinhHyperbolic Arcsine
acoshHyperbolic Arccosine
atanhHyperbolic Arctangent
logLogarithm Base 10
lnNatural Logarithm
sqrtSquare Root
ceilCeiling Function
floorFloor Function
Graph Settings
Below the list of equations in the parameters screen, there are two options that will bring up the graph settings screens:
Tapping "Window Frame" will slide in four text fields that allow you to set the x and y minimum and maximum values. You must press save for these new values to take effect; pressing the back button labeled "Parameters" will retain the old window bounds.

Tapping "Appearance Settings" will bring up switches to toggle the following options:
SettingPurpose
AxesShow/hide x and y axes.
Tickmarks Show/hide tickmarks. (Only allowed if axes are also shown.)
Grid Show/hide grid that appers on major tickmarks. (Only allowed if tickmarks are shown.)
Labels Show/hide number labels that appear on major tickmarks. (Only allowed if tickmarks are shown.)
Changing Bounds Show/hide numbers that appear at the screen edges while manipulating the graph viewing frame to indicate the current window bounds.
These options save immediately as they are changed, so there is no save button you need to press. Simply press the back button labeled "Parameters" when you have made the desired changes.
About Graphite
Graphite is an efficient and accurate graphing calculator for the iPhone/iPod touch. Graphite was written by Julian Panetta, a junior computer science major at Caltech.

Thanks go to Matt Czubakowski, Chris Dewan, Max Grazier G'sell, and Esther Wang for their bug testing and suggestions, and Robert Kaspar for his help with this documentation.

Please send any comments, suggestions, and bug reports to graphite@julianpanetta.com.
©2008 Julian Panetta