The links below represent a collection of web-apps that I have written in Javascript to assist students in learning calculus. Feel free to share these links. Send me feedback at waltondb (at) jmu.edu or through Twitter @dbrianwalton.
The apps are organized here into three categories. Drill apps are designed for posing common calculation problems that have a specific answer. Motivation apps are designed to help motivate calculus concepts and are more exploratory in nature. Scaffolding apps are designed to help lead students through higher-level thinking skills, constraining the possible steps so that the student receives feedback on whether individual steps in the overall problem are valid.
You are asked to find the limit of an expression. Equivalent expressions can also be found along the way. (In development: infinite limits and piecewise formulas not yet implemented)
You are asked to find the derivative of an expression. Start with simple powers, add in other transcendental functions, and apply the rules of calculus.
See also this variation of the app that deals with the rules of calculus involving only powers and polynomials.
Find an expression that has a given derivative. Does not use integral notation in case you want to do this before introducing indefinite integrals more generally. May require recognizing that the chain rule would have applied.
Load an image and choose colors. Compare relative proportions of the image matching those colors.
The definition of a limit formally is a statement involving thresholds for the input (δ) and for the output (ε) of a function. This app explores the relationship between these thresholds for a user-defined function and limit.
The derivative at a point is defined as the limit of the slope joining two points as the difference between the inputs goes to zero. This app explores this limit visually, showing the graph of the user-defined function and the secant line along with a graph of the slope as a function of the difference between the points.
The definite integral of a function over an interval is a limit of Riemann Sums as the width of subintervals goes to zero. This app explores allows the user to explore the value of Riemann sums using a variety of rules for a variable number of subintervals. The rectangles are shown as well as a table of values.
Practice using limit rules one step at a time to compute and justify the calculation of a limit using only elementary limits and the limit rules for combinations of expressions.
Enter an algebraic expression or an equation, and this app will allow you to find equivalent representations applying specific identities one step at a time. At present, you select a sub-expression to modify by traversing a tree representation of the expression. Only rules applicable to the currently selected subtree appear. Dragging terms allow re-ordering or simplifying in many cases. (Early development stage)
I am so thankful to the authors of the following technologies that help make these apps possible.
I have some additional apps that are not particularly specific to calculus, but might be useful or of interest.
I have been experimenting with defining problems in XML and having a single script manage generation, display and checking of all such problems. This provides a collection illustrating some of the capabilities of this scripting system.
Drill app for algebra focused on basic factoring skills.
Drill app for algebra applying basic transformations of functions to find the equation of a curve passing through two or more points. Equations of lines, exponential, parabolas, and sinusoidal curves.
Motivation app exploring logarithmic scales and how they relate addition and multiplication.
Motivation app helping understand the need for a restricted domain before defining the arcsine. See the related apps for Inverse Tangent and Inverse Secant.
Motivation app exploring cobweb diagrams for fixed point iteration involving a user-defined function. Explore a recursively defined sequence through a table and through graphs.
A discussion and graphical exploration of different measures of quality of fit for finding a trend-line. Given a set of data points (user-changeable), a plot showing the measure of quality of fit is shown and the user can adjust the slope and intercept of the line to minimize the error.
A drill app that gives a proposed matrix multiplication. Some are not valid and the user is expected to identify these cases. Otherwise, the user needs to identify the dimension of the answer and enter the values in the matrix.
A linear algebra scaffolding app. The user enters a matrix (allows arbitrary augmentation). User then applies the elementary row operations to find a desired form. Arithmetic is handled automatically, keeping terms as rational numbers if possible.
A drill app that gives a matrix, presents the reduced row echelon form of the matrix and its transpose, and then asks the user to identify basis vectors for indicated subspaces associated with the matrix (row space, column space, null space and left null space). See also the constrained version of this app that allows the user to specify the dimensions of the spaces in order to generate specific examples.
A linear algebra motivation app. A linear transformation is defined by the user by determining the target vectors associated with the standard basis vectors. An arbitrary vector can then be manipulated to see if its target is collinear in order to define an eigenvector.