Math Graphing XL v1.3 for iPad
Graph and interact with your Math formulas!Math Graphing XL is a powerful & unique 1D graphing calculator to graph mathematical expressions of arbitrary complexity. Math Graphing XL can help students improve their math skills by developing some visual intuition of mathematical expressions or advanced users who need some scientific capabilities only available with desktop software like Matlab or Mathematica. For the iPhone & iPod touch version: check out "Math Graphing" here.
Math Graphing XL provides the following functionalities:
 Multiple expressions with quasiunlimited number of variables can be combined to produce simple or complex formulas,
 Interactive sliders can be created to visually investigate the role of important parameters on the graphical representation of the formulas,
 Trace mode to display coordinates and derivative of marker on selected curve,
 Solver tool to solve y = f(x) where x or y are unknown, or find local/global minima/maxima/extrema (NEW!),
 Formula graphs can be saved to the device's Photos Album, or the formulas be exported through email with embedded graphs,
 A list of favorite formulas can be created for editing or archival purposes,
 Several formulas can be plotted simultaneously in different colors and styles,
 Customizable graph and formula appearance: axes labels, title, curve color and style, ticks number, grid, wallpaper, font, font size, etc.
 Singleprecision calculator supporting variables, multiple expressions, and onthefly evaluation (NEW!).
# Gabor function
x = 0:1:100
sigma = 1:50; freq = 0:0.1; phase = 0:180
u = cos(2*pi*(x50)*freq+phase*pi/180)
v = e^(((x50)^2)/(2*sigma^2))
y = u*v
plot(u,'lr'); plot(v,'lg'); plot(y,'lw')
xlabel('time'); ylabel('amplitude')
title('Gabor')
GET STARTED
After launching this app in portrait mode, you are presented with the single panel that shows the formula in the top part and its graphical representation in the bottom part. When launching the app in landscape mode, an additional panel is presented on the left with the list of favorite formulas. When launching the app for the first time, the favorite list contains 3 examples that illustrate the app computing capabilities. The name of the currently graphed or edited formula always appears in the toolbar above it.
Using Math Graphing XL could not be simpler:
 To modify the formula, simply touch its mathematical expression to edit it: both standard and custom keyboards are available to provide maximum flexibility. If a syntax error occurs, the background turns red and back to normal once the syntax has been corrected.
 To visualize the modified formula, dismiss the keyboard by pressing the key. If an error occurred during the expression evaluation (for example Division by zero), an error message displayed above the graph explains the problem.
 Use standard touch gestures to manipulate the graph: pinch to zoom, drag to move the graph, pinch below the xaxis or on the left of the yaxis to zoom along a single axis. Rotate the device to switch between portrait and landscape modes.

Tap and hold to select the closest curve, and move your finger along the xaxis to shift the marker on the curve
which coordinates and derivative are displayed above the graph.
 The bottom toolbar provides access to additional tools, from top to bottom:
 interactive sliders,
 graph settings,
 export to the device Photo Album,
 export through email,
 scale reset along the yaxis.
Interactive Sliders
The interactive sliders allow the control of the values of some variables in the formulas (the ones in the format <varname> = <minvalue>:<maxvalue>, see the Formulas section). To specify a precise value for a given slider, press the variable name and enter a value in the dialog box.
Graph Settings
The graph appearance can be customized in various ways: presence or absence of the ticks grid, linear or log scale along the x and yaxes, number of ticks along the axes, size of the tick labels, size of the axis labels, title size and line thickness.
Exporting to the Photo Album
An image of the current graph can be saved to the device Photo Album with an optional inset containing the graph formula.
Emailing the Formula(s)
The current formula or all favorites can be sent by email along with a graph preview.
Top Toolbar
The Favorites and Help tools are available from the top toolbar. The Help section provides a description of all available mathematical operators and functions. The Favorites gives access to a list of formulas that you want to keep. To manage your formula favorites in portrait mode, press the Favorites button in the toplef corner.
Managing your Favorites
Press the left + button above the list of favorites to add a new formula (with some default definition) and provide its name using the dialog box. To remove, rename or reorder any favorite formula, press the Edit button.
SHORT TUTORIAL ON CREATING FORMULAS
With Math Graphing XL, formulas of any complexity can be plotted as function of any variable or parameter. A formula typically consists in expressing the value of a variable y as function of another variable x. For example:
y = f(x)A formula can also consist of several expressions separated by a semicolon delimiter on the same line or split across several lines. For example, to compute y as function of x through the use of intermediary variables u and v:
u = g(x); v = h(u)y = f(v)
The formula can be plotted using the plot command:
plot(x,y)x being the default continuous variable used to plot any other variable along the xaxis of the graph, the formula can be also plotted by simply entering:
plot(y)However, it is also possible to specify a variable as a discrete range with starting, step and ending values (variable = starting value : step : ending value). For example, to plot a cosine function as function of the discrete variable t between 0 and 100 by step of 5:
t = 0:5:100y = cos(2*pi*t/20)
plot(t,y)
By default, the x and yaxes labels are based on the variables used in the first plot command. However, they can be customized using the xlabel and ylabel commands. A title can be also specified using the title command. Make sure to put the labels between apostrophes. For example, add to the above commands:
xlabel('amplitude')ylabel('time')
title('Cosine Function')
To customize the appearance of a plot, add tags between apostrophes. For example, to plot y = f(x) as red empty circle symbols:
plot(t,y,'srec')The tag may consist of 4 letters: <type> <color> <filling> <symbol>
 the 1st letter for the curve type ('l' for line, 's' for symbols, 'b' for bars),
 the 2nd letter for the curve color ('w' for white, 'r' for red, 'g' for green, 'b' for blue),
 the 3rd letter for the symbols or bars appearance ('e' for empty, 'f' for filled),
 the 4th letter for the symbols shape ('c' for circle, 's' for square).
In addition of variables, it is also possible to specify parameters that affect how the formula depends on variables. For example:
wavelength = 20t = 0:1:100
y = cos(2*pi*t/wavelength)
plot(t,y,'l')
To visualize the effect of such parameters on the plotted formula, the parameter value can be controlled through an interactive slider by specifying a range with starting and ending values (parameter = starting value : ending value). For example, to create a slider that controls the parameter wavelength between 1 and 50, simply use:
wavelength = 1:50To visualize the effect of the parameter on the formula, double tap the graph or press the tool in the bottom toolbar to access the interactive slider and change its value. The graphical representation of the formula is then automatically updated with the new parameter value when releasing the slider. To specify a precise value for the slider, press the variable name and enter a value in the dialog box that appears.
RELEASE HISTORY
Version 1.3 (February 28, 2014):
 Compatibility with iOS 7
Version 1.2 (December 14, 2010):
 Compatibility with iOS 4.2
 Fix crash with iOS 4.2 when selecting a custom keyboard
 Video Out support for plotted graph
 Addition of xaxis and yaxis commands
 Support for Undo when editing expressions
 Better handling of partially undefined or infinite function evaluation
 Better handling of syntax errors
 Minor cosmetic improvements
 Various bug fixes
Version 1.1 (May 31, 2010):
 Addition of a singleprecision calculator and a solver tool in the bottom toolbar
 Addition of formula settings (font style, size, wallpaper, slider continuous update and keyboard clicks option)
 Addition of min(), max(), mean(), sum(), norm(), unoise(), length(), and randn() vector functions
 Addition of "Enter" and "Space" keys in each custom keyboard
 Various bug fixes
Version 1.0 (March 31, 2010):
 First released version on AppStore