Steve-o’s Desmos creations

Below is a running list of Desmos graphs I’ve made for use in my teaching. Most of them are basically simulations that I made directly within Desmos instead of a programming language. They are easily customizable for your teaching needs by adjusting sliders values, turning certain visuals on or off, etc..

All the graph links will open in new tabs.

Categories:

NOTE: Whenever a Desmos graph is updated and re-saved, it gets a new URL, so to make things simpler I’ve started using a link-redirection tool (self-hosted by me) to make permanent addresses for my graphs. Whenever I update or revise an individual graph, I’ll update the target of its permalink here so they will always point to the most recent version. So, it’ll initially look like a link within my website but you’ll get redirected to desmos.com afterward.

General/utility graphs

DescriptionPreview
Arrow/vector functions (2024-Aug-17)
Simple-to-use, single-line expressions for drawing arrows/vectors based on inputs in three different forms: polar (magnitude and direction), rectangular (x&y components), or two-points (coordinates of base point and end point). The graph is HEAVILY documented for the sake of users who might not be very experienced with Desmos, including some tips on how to write auxiliary functions to suit your purpose that don’t require as many arguments.

Also includes functions for getting the polar angle from components, angle between two vectors, etc..

You can easily copy the one or two expressions you want into your own graphs, but I also have an importable version with no instructions or folder structure if you want to just bring everything in at once. You can import a folderless graph into your graph by making a new, empty folder and pasting the graph URL into the folder name.
Dot product illustration (2022-Nov-23)
A simple dot product explainer where you can project either vector onto the other. There is also a “results” panel with several useful numbers for thinking about how the calculation works, and a button to instantly snap the vectors to a right angle.

What I think makes my dot product graph better than most I’ve seen is that the vectors’ directions and magnitudes are adjusted separately, using different handles, instead of a single endpoint handle with which it’s hard to adjust just one of those properties at a time. Also, just for fun, when the vectors do become perpendicular, the arc indicator switches to a right angle mark instead. 🙂
Cross product illustration
Part of my torque graph, under mechanics.

Mechanics graphs

DescriptionPreview
Projectile trajectory (2024-Sep-20)
A flexible, animated projectile simulation with various visualizations including markers along the trajectory at fixed time intervals (“motion diagram”) with optional vectors and labels on them. Allows for changing the initial height, can clearly state details about the apex and landing spot, and can display the “max range” angle’s trajectory for a given height and launch speed.

When you first open the graph, everything is “turned on” and it will be overwhelming. Definitely deactivate most of the visuals for any particular purpose or teaching point!

Compared to the very nice PhET simulation, mine is cleaner to look at with fewer distracting details (once you’ve turned things off) and offers quicker access to some important teaching points such as motion diagram dots and the behavior of the velocity’s x- and y- components.
U(x) potential functions (2024-Oct-12)
An animated graph exploring energy and motion for a particle in a 1-dimensional potential function. Several different U(x) functions are built in, and you can easily write an expression for a different one. The default setting shows a potential that includes each type of equilibrium point/area as well as a constant-force section and varying forces.

Lines mark the total energy level and the kinetic energy “gap” between E and U(x). Animation includes appropriate speed changes, accurate-enough reflections from barriers, and force and velocity arrows.
Collision solution sets (2024-Jan-21)
This one is NOT a simulation! It illustrates solution sets for the final velocities in a one-dimensional collision between two objects with the two axes representing v1 and v2. The purpose of the graph is to show what solutions students might get depending on the method they use. Specifically I wanted to show why using methods that assume the collision is elastic represent a subset of the full solution set and will often be incorrect.

The red line represents final states that maintain a constant momentum. (Required for any solution!) The green oval represents final states that maintain a constant KE (elastic solutions). Collisions with a loss of kinetic energy would lie within the oval. The orange line shows the set of possible answers when using the linear “shortcut” equations that some books derive for elastic collisions. (I discourage my students from ever using those equations.)
Newton’s shell theorem (2023-Jan-04)
This idea is more common in electrostatics, but it comes up when studying universal gravitation in mechanics as well. A circular shell composed of an adjustable number of particles attracts a test particle. Can display individual force vectors, a computed total of those vectors, and an idealized total force, allowing you to illustrate deviations from the ideal. These deviations are especially pronounced with smaller numbers of particles.

The simulation is written for a 2D universe in which gravity depends on 1/r instead of 1/r2. This allows me to use a ring/circle of particles instead of needing a complete sphere, but still illustrates the core idea. You can switch to a 1/r2 calculation and see that the ring no longer “works”.
Torque and cross products (2022-Dec-16)
A bar of length L has one end on the origin. You can choose a force’s position, direction, and magnitude, to see what effect this has on the torque felt by the bar (about its pivot at the origin). A standard force diagram showing the bar along with the F and 𝜏 vectors is shown at the center.

Two additional diagrams are available showing the cross product vectors situated at a common origin: one seen “from above” where 𝜏 will be directed into or out of the screen (shown in dot and x vector style) and the other shown in perspective to try to emphasize the 3D nature of the cross product. These cross product diagrams can be useful in contexts outside of torque for illustrating other right-hand-rule relationships.

Also features circular arrows and color-changing on the torque vector to help represent the direction.

Wave and sound graphs

DescriptionPreview
Interference from two sources (2024-Jun-26)
Two sources of spherical/circular waves lie on the y-axis. Provides a large variety of ways to visualize the spatial interference pattern. Applicable to both sound and light. Also has some simple wavefront animation and use of the tone() function to play a sound of varying intensities as you move the draggable exploration point.
Beats (2024-Feb-13)
Displays and plays (using the tone() function) two pure tones with adjustable frequencies. You can both hear and see beats form in the output of the two combined waves. When delta-f becomes large, the beat pattern is subsumed by a more chaotic total wave and becomes inaudible.
Fourier square wave (2024-Feb-21)
A square wave is constructed through the addition of many carefully-tuned pure sine waves. Makes used of the tone() function so the changing timbre can be heard as you add components / terms to the sum.

Due to limitations in controlling the phase of multiple simultaneous tone() outputs, you might have to mute and unmute the graph to hear a proper square wave.
Doppler effect and shocks (2024-Jun-27)
Animated circular waves emitted in the rest frame of a moving source. Adjusting the source object’s velocity changes the severity of the Doppler effect and can produce shocks when it exceeds the speed of sound.

There is also a scrolling “ground” below the plane with an optional observer you can place anywhere you like, on the ground or floating in the air. Desmos’ tone() function plays the observed sound audibly and a graph can show how that frequency changes as the plane moves past the observer.

This graph incorporates proper adjustments for the observer not being directly in-line with the velocity and includes the secondary, time-reversed sound heard while inside a supersonic object’s Mach cone.
Standing wave modes (2024-Feb-16)
Choose from a string, an open-open pipe, or an open-closed pipe. Drag a point to smoothly adjust the wavelength or the string/pipe, showing how certain sizes will fit together “nicely” and others will not. A “resonance” indicator pops up when you’re on-target.

I use this graph to help illustrate relationships like “λn=2L/n for all n” versus “λn=4L/n for odd n”. I find that the smooth adjustments make the point more clearly than a set of static diagrams.

Electricity / magnetism graphs

DescriptionPreview
Circuit Heights
An adjustable series circuit that draws on the “potential=height” metaphor, as in Trevor Register’s “KVL Diagrams” article. See how changing one resistor impacts the potential differences across all three.

I have a blog post about this graph: Modeling potential in a series circuit with Desmos.
Newton’s shell theorem
Listed under mechanics graphs.
Flux and enclosed charge, Gauss’s Law concept (2024-Oct-24)
This graph illustrates the concept behind Gauss’s Law: correspondence between total flux and enclosed charge. It provides two adjustable charged particles and a choice of three different Gaussian surfaces, as well as an adjustable number of segments for the surface. The graph calculates the flux through each segment and adds them all up. It also displays the electric field at each segment either as a full vector OR as only the normal component of the field, since that’s the component which determines the flux.

You can also optionally include a uniform external field which changes the flux through any given segment but does NOT change the total flux through the closed surface.

With small numbers of segments, the qenc calculation is approximate, but with more segments it gets better and better.

Like my shell theorem graph, this is a “Flatland” simulation in which the field depends on 1/r, not 1/r2. Doing this in 2D instead of 3D hugely simplifies the visuals without compromising the concept being shown.
Equipotentials and Field Vectors (2022-Feb-21)
This electrostatics simulation has four adjustable charged particles and can plot equipotentials and an array of electric field vectors. It also has a movable test probe to sample the potential or field at any specific location. The performance is sometimes a bit clunky because of the large number of behind-the-scenes calculations. Reducing the number of field gridpoints speeds it up a lot.

My dream is to someday produce a Desmos graph that can draw field lines for arbitrary arrangements of charges, but that is a MUCH trickier problem than equipotentials.
A screenshot of a Desmos graph showing electric equipotential lines and field vectors.

Light graphs

DescriptionPreview
Plane mirror images with observer (2024-Jul-29)
Because students have so much everyday experience with plane mirrors, it’s important to get them to understand how they form images before moving into more complex systems (like those below). Ideas like “there’s tons of rays but we usually only draw the useful ones” and “the image is where the rays seem to radiate from” are a lot easier to grasp in this more familiar context.

Options in this graph include bundles of rays coming from different points on the object, an “observer” eyeball you can turn on or off, field-of-view visuals for the observer, and rays which can “miss” the mirror to show that not all of them are even involved in image formation.
Image formation by mirrors and lenses (2024-Jul-23)
Shows the principal rays that are commonly drawn by hand. Focal length and object are adjustable, and it has easy switching between lenses and mirrors. Only deals with a single lens/mirror at a time. Optionally display lots of info or almost nothing depending on what you want students to be spending their brainpower on.

You switch between converging and diverging by simply dragging the focal point through the lens/mirror to the other side. You can watch the rays smoothly shift from one setup to the other as you do this, emphasizing the continuity through f=0.
Double slit interference
See “Interference from two sources“, above in the general “waves” section.

Desmos Classroom / Activity Builder

Finally, here is a collection of the activities I’ve made/edited in Desmos’s Activity Builder (AB). My activities are described in detail within the collection:

Stonebraker’s Activities

If you’re a math/physics teacher you REALLY need to check the Activity Builder out and see what you can make with it!

Other Desmos stuff

Here are some links to more Desmos things that were made by other teachers… I’m far from the only person making and sharing this stuff!