“Coding” in Desmos for Algebra Based Physics

I’ve been thinking more and more about using Desmos in algebra-based physics for getting students involved in writing simulations.

You can get students up and running pretty quickly. Here are three lines of code to simulate an accelerating object.


  • 1st line defines the equation of motion, y as a function of time
  • 2nd line plots the point.
  • 3rd line defines time as variable that you can “play”

Of course, you get quickly get more sophisticated:

Here is a simulation for dropping stones at 1 second intervals…


Or a simulation for a vertical toss that blends with other representations


And lots of other stuff you can add… like adding images, getting rid of graphing look


Or blend with motion diagrams



What I also like about it is that if my students just type in an equation exactly the way it is in the book… like this



It will prompt them to add sliders, which is what is needed to get the simulation up and running. You click “all”, and you are almost there.  You just need to plot a point…. and press play.


Lots of cool things, like here in our lab where were trying to predict how far up a ramp a cart would go, we had a range of data for acceleration and initial velocity. So we could run the simulation for multiple values by defining acceleration and velocity as a list

Screen Shot 2017-02-11 at 9.58.27 AM.png

You get something like this…


I’m call this “Cranking Five Times”…. (high/high, high/low, low/low, low/high, avg/avg)

Anyway, starting to think more seriously about best way to really do this with students (rather than doing it haphazardly, but I’m pretty excited, because it seems totally doable for the algebra-based physics population.)

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

Blog at WordPress.com.

Up ↑

%d bloggers like this: