# The coming revolution in physics education

Classical physics is difficult because it is based on differential equations, and the differential equations of interest are usually unsolvable. The student must invest a lot of time in learning difficult math, and still can only analyze very simple systems.

This difficulty arises in the first high school physics class, and reappears in practically every university physics class. In high school physics the formula for the acceleration of a falling object is derived, A(t) = G∙M/(r(t)∙r(t)), and this differential equation is unsolvable*. So, the substitution is made A(t) = -9.8 and the student can calculate simple trajectories. The interesting systems, orbits and rocket trajectories, are off the table.

The same thing happens in university classes in classical mechanics, electric circuit analysis, rigid body motion, heat transfer, stress and strain in materials, fluid dynamics, and electrodynamics. Process models are derived that are solvable only for the the simplest or trivial systems.

The fix is to teach a high school class in scientific programming that uses Euler's method to compute approximate solutions to differential equations, and to apply it to problems in several areas of physics. The course is independent of the math curriculum beyond high school algebra and geometry.

Euler's method is very simple and can be taught to high school science students with no prior exposure to calculus in a one hour lecture, and used to calculate by hand the trajectory of a falling object.

It works like this: given the starting position r(0) and velocity v(0), the approximate trajectory is advanced in time, from time t to time t + ∆t as follows:
r(t+∆t) = r(t) + v(t)∙∆t
v(t+∆t) = v(t) + A(t)∙∆t
If ∆t is small, say 20 milliseconds (as in Honeywell inertial navigation units), the estimate is accurate. This is Euler's method.

The two computational statements can be translated 1 to 1 to MATLAB (or the language of your choice, preferably one with great graphing capabilities).

You can do the same thing for orbits and rocket trajectories, and problems in electric circuit analysis, and 2-d rigid body motion.
I've written a paper
http://www.berkeleyscience.com/The Coming Revolution in Physics Ed.pdf
that describes a high school course in scientific programming and includes complete solutions for representative problems in central force motion, electric circuit analysis, and 2-D rigid body motion. Each problem/solution consists of:
#1 physical laws - simple DEs
#2 process model - the process models have 1 or 2 line derivations
#3 computational equations - by rote using Euler's method
#4 actual code - 1 loop containing 1 statement for each computational equation
#5 graphs of results - MATLAB and Python have great built-in graphing functions

An example: the Apollo trajectory.

Course synopsis:

Euler's method extended to partial differential equations is the finite difference method (FDM), and it too is trivially easy. The FDM can be used to compute solutions for problems in heat transfer, the wave equation, stress and strain in materials, fluid dynamics and electrodynamics. Deriving the process models becomes more difficult as more geometrical reasoning is involved and tensors appear in the analyses of stress and strain in materials and fluid dynamics. Selected topics from this material could be covered in a 2nd semester university course.

* what Newton did: see http://farside.ph.utexas.edu/teaching/336k/lectures/node32.html

Jarvis323, physicsponderer, Marco Noguez and 2 others

Dale
Mentor
2020 Award
Euler’s method is a pretty poor method. Why not teach them to use standard ODE solvers instead.

George Jones
Staff Emeritus
Gold Member
Euler’s method is a pretty poor method. Why not teach them to use standard ODE solvers instead.
For high school, I think that the reasons given in the OP are valid.

The fix is to teach a high school class in scientific programming that uses Euler's method to compute approximate solutions to differential equations, and to apply it to problems in several areas of physics. The course is independent of the math curriculum beyond high school algebra and geometry.

Euler's method is very simple and can be taught to high school science students with no prior exposure to calculus in a one hour lecture, and used to calculate by hand the trajectory of a falling object.
Twenty-one years ago, I taught high school for one year. During one of the semesters, I was assigned a high school computer programming course to teach (as well as math and physics courses). For one of the coding projects, I taught the students Euler's method, and had them use this to analyse orbital motion. Their programs produced "real-time" animations in two spatial dimensions of the the motion.

Astronuc, atyy and Will Flannery
Dale
Mentor
2020 Award
For high school, I think that the reasons given in the OP are valid.
I don’t. We teach sin and cos and tan to high schoolers without teaching them how to calculate them numerically. They use standard pre packaged trig methods on their calculators, why not standard ODE solvers too.

physicsponderer, Filip Larsen, Demystifier and 2 others
Euler’s method is a pretty poor method. Why not teach them to use standard ODE solvers instead.
And ODE solver to a student is a 'black box', and that is to be completely avoided. The point of the course is to show how truly simple it is to calculate solutions to ODEs, that's reason #1. With Euler's method everything is on the table and transparently clear, with no mathematics whatever beyond distance = velocity * time. Using an ODE mystifies the process of going from DE to solution, Euler's method explains it.

The course could be subtitled - How I Stopped Worrying and Learned to Love Differential Equations.

The ability to analyze complex phenomena, e.g. the Apollo trajectory, and to intuitively understand every step from Newton's laws to the trajectory itself, will transform physics education.

I like Euler's method a lot. If I were teaching the course at a University I would still use Euler's method and nothing else. The focus is on making the student comfortable with differential equations and analyzing physical systems, and all unnecessary complications are to be avoided. At most, I might devote a lecture to the Runge-Kutta methods for information purposes only, but it wouldn't be part of the course.

There is another decisive reason that's a little harder to explain. Suppose you're modeling a rocket trajectory and you want to give it a little guidance boost along the way, this is necessary to get the Apollo trajectory, btw. No problem at all using Euler's method, as the linked paper details, but I think it might be awkward using an ODE solver (but then, I've never used one).

Not only that, but when you go to partial differential equations and the finite difference method, you're back to Euler's method extended.

Last edited:
Jarvis323, physicsponderer, grandbeauch and 4 others
For high school, I think that the reasons given in the OP are valid.

Twenty-one years ago, I taught high school for one year. During one of the semesters, I was assigned a high school computer programming course to teach (as well as math and physics courses). For one of the coding projects, I taught the students Euler's method, and had them use this to analyse orbital motion. Their programs produced "real-time" animations in two spatial dimensions of the the motion.
Here is the thing, you can go the Univ. of South Florida (nearby to me and representative I think, big physics dept) and get a degree in physics, taking classical mechanics along the way, and while the text derives Kepler's Laws from Newton's Laws, the student still can't simulate an orbit because the last step, which can only be done numerically, is missing. What Newton did to kick off modern math and technology is not taught in most (any?) texts. I doubt that there is one text that mentions that Newton's model is analytically unsolvable for r as a function of t. The steps Newton followed are given in the link at the bottom of the OP.

Last edited:
Dale
Mentor
2020 Award
And ODE solver to a student is a 'black box', and that is to be completely avoided.
Why? They already use lots of black boxes. I simply disagree with avoiding black boxes as a desideratum. Will you also teach them how compilers work, or how computer chips calculate floating point arithmetic, or how transistors work, or how CPUs are manufactured, or ...? Why is one black box “to be completely avoided” and not others?

You cannot avoid black boxes, so their avoidance is not a good desideratum. Euler’s method is a poor method, so it seems like a total waste of time to me. Doing something badly simply to avoid one out of a thousand black boxes seems detrimental to me.

Do you want to teach numerical methods or do you want to teach physics? If you want to teach numerical methods that is fine, but don’t bill it as a revolution in teaching physics.

Last edited:
fluidistic
Dr. Courtney
Gold Member
2020 Award
I kind of like Euler's method as a teaching tool and have used it to teach high school students to compute rocket trajectories as well as to compute forces from videos of experiments. For systems where the forces are changing slowly, it is not bad, and it can be implemented in a spreadsheet. Students can learn it even before they have a clue about calculus with the idea that for sufficiently short times, the assumption of constant acceleration is "good enough" for sufficiently short time steps. Then students can shorten the time step and see if their calculations change much. Sure, the spreadsheets might have 1000-10000 rows, but they are all cut and pasted from the first few, and this allows students to easily see how the motion is progressing.

I see use of Euler's method in a spreadsheet as a stepping stone for students to using numerical methods in black boxes. It gives some insight into what is going on inside those black boxes and allows solving a bunch more systems than the assumption of constant acceleration. There will always be a more efficient numerical method just around the corner. But computers today are pretty powerful - it may be a fine approach to sacrifice numerical efficiency for conceptual simplicity for certain parts of introductory training.

But having taught introductory college physics for lots and lots of years, making scientific programming part of the course or a prerequisite for it is going to be a hard sell for most intro courses (except majors courses). It will be a great way to make students hate the teacher. Students in introductory classes are open to spreadsheets, not so much to learning to program.

physicsponderer, grandbeauch, atyy and 2 others
Dr. Courtney
Gold Member
2020 Award
Do you want to teach numerical methods or do you want to teach physics? If you want to teach numerical methods that is fine, but don’t bill it as a revolution in teaching physics.
Without math, one isn't really teaching physics. The question is how to approach the challenges to spend less time with the math and more time with the physics. Black boxes are one approach. Euler's method is another. It may well prove to be a revolution in teaching physics, at least for courses that adopt it. I doubt I'll ever teach another physics (or other quantitative science class) without using spreadsheets on a weekly basis. A spreadsheet takes repetitive calculations (and the calculator) out of the student's hands and also leaves a documented trail students can refer back to for what was done. Work on calculators disappears every time the student presses C.

When I was first exposed to numerical methods as an undergraduate, it was a real eye opening experience. The challenges of tough integrals, derivatives, and differential equations melted away, and I realized that the real challenge of physics was reducing the problem to an equation that could then be solved on the computer. Before then - I saw reducing the problem to an equation as about the first 30% of the problem and then beating that equation into submission with the traditional analytical (pencil and paper) techniques as the last 70% of the task at hand. Physics was mostly math, and I was not good at math, and I did not like math. About the same time, I also felt cheated by realizing that all the prior problems had been cherry picked to be solvable with traditional pencil and paper methods - most problems cannot be solved with pencil and paper. These revelations should really occur before a physics major is a junior in college.

So, I do think an approach to empower physics majors to solve more general problems in their first year would be a revolution in physics education, at least for majors. Some of the students I mentor are beginning to see similar things in their introductory undergraduate courses.

physicsponderer, krater, grandbeauch and 4 others
russ_watters
Mentor
To me the question follows from a faulty premise; I don't see the situation - or any situation indescribable without a differential equation - as something to be taught in high school.

The constant g assumption isnt just an unfortunate mathematical necessity, it is a useful - even required - first step for beings who spend their entire lives in a place where g is effectively unchanged with altitude.

After they master the physics relevant to them as Earth dwellers, then they can move on to rocketry.

Fisherman199 and Dale
Why is one black box “to be completely avoided” and not others?
One of the primary purposes of the course is to demystify differential equations, and Euler's method is the means for doing that. Euler's method replaces the abstract differential equations with arithmetic assignment statements which show the student the exact relationship between the differential equations and the computed solution, and hence demystifies differential equations, and makes the student the complete master of the material, the physical laws, the process model, and the computed solutions. It changes everything.

Do you want to teach numerical methods or do you want to teach physics? If you want to teach numerical methods that is fine, but don’t bill it as a revolution in teaching physics.
You left out computer programming. at my kid's high school I've tried to sell the course as a math course but the math teachers were completely disinterested, a physics course, but the physics teachers thought differential equations were funny, and so I settled on trying to sell it as a programming course. I did teach it one year (both ODEs and PDEs !) to two very bright students. But it was a very hard sell and impossible to repeat, i.e. get approved.

The best title for the course would be Analyzing Physical Phenomena, and for that you need physics, computational calculus (i.e.numerical methods), and programming. With all that on the table I try to teach as little of each as possible, commensurate with being able to produce fantastic results.

The bigger objective is to demonstrate how computational calculus can be used to demystify and analyze differential equations, and to put differential equations and computational calculus at the center of the physics and STEM curriculum from the very beginning.

Let's look at the current situation at the Univ. of South Florida, nearby to me, and it has a big physics department. A physics major takes calculus courses MAC 2311, 2312, and 2313 in the first two years and math methods for physics PHZ 3113 as a junior (http://physics.usf.edu/data/PHScurriculum.pdf). All the calculus courses use the same text and the section on DE's (7.7) is omitted (http://math.usf.edu/ug/syllabi/mac2312/). The student finally encounters DEs in PHZ 3113 (http://ewald.cas.usf.edu/teaching/2015F/3113/syllabus.pdf).

How can this possibly be? Physical laws are written as differential equations, process models are written as differential equations, and a student doesn't take a course in differential equations till the 3rd year at the university ! The reason is that DEs are very difficult (usually impossible) to solve analytically, so a lot of calculus preparation is required before a course in solving differential equations analytically can be offered. Even after taking the course students cannot solve the differential equation models for any but the simplest processes. No orbits, no rocket trajectories, no impulse response for circuits, no rigid body motion at all, no heat transfer, stress and strain in materials, fluid dynamics, etc.

So, introducing DEs in high school and using computational calculus to analyze them, is, for the educational system, revolutionary. It will lead to a rewriting of the entire curriculum.

Why do it, what's the payoff? Look at the fantastic results obtained in the course, in the table in the OP, and the ODE table is for the high school course. E,g,

Check out the analysis of the VEX robot in the paper. As the paper says ......

"Differential equations have extraordinary analytic and explanatory power, as we’ve seen in
this short paper. But, it takes computational calculus to unleash this power. Introducing
students early to modeling with differential equations and analyzing a wide range of physical
systems using computational calculus, from the Juno space probe now orbiting Jupiter to the
VEX robot on the classroom floor, will put computers, differential equations, and
computational calculus at the center of technical education from the beginning. In the future
each will play an increasingly important role in many of the courses in the physics curriculum."

Last edited:
grandbeauch
Dale
Mentor
2020 Award
The question is how to approach the challenges to spend less time with the math and more time with the physics. Black boxes are one approach. Euler's method is another.
The answer to that question seems obviously to be the black boxes. It will take slightly less time to teach the inputs and outputs of the black box than to teach Euler’s method, and it will take far less time to use it.

When they are done they will have the same understanding of physics in a shorter amount of time and they will know how to use a computational tool that they can use professionally for the rest of their life even to solve problems where Euler’s method flat out fails.

Dale
Mentor
2020 Award
One of the primary purposes of the course is to demystify differential equations
Then that isn’t a physics course. So sell it as what it is: a numerical methods course. It is not a revolution in teaching physics. One of the problems I think that you are having is that you are mislabeling the course and people rightly object.

Will Flannery and russ_watters
Dr. Courtney
Gold Member
2020 Award
The answer to that question seems obviously to be the black boxes. It will take slightly less time to teach the inputs and outputs of the black box than to teach Euler’s method, and it will take far less time to use it.
That's only true if the teacher narrowly limits his goals to the physics learning objectives of the current course and not the broader goal of adequate preparation for downstream needs (future courses, research, engineering, etc.)

Euler's method is pretty quick to use in spreadsheets, and it is a great warm-up for future understanding of calculus and later numerical approaches to diff eqs. The whole time evolution of of the system is before the student, and it is clear that the methods they've learned for constant forces (and accelerations) can be used for many more complex systems simply reckoning those quantities as "close enough" to constant for sufficiently short time steps.

Not all black boxes are equal, and a bit of time with Euler provides 1) some insight into what goes on inside of black boxes that may be used later 2) a way to double check many black boxes for many cases of time evolution of relatively simple systems 3) Greater experience and insight by doing Calculus before they even really know what Calculus is.

I've known too many scientists and engineers who were completely stuck when their black boxes puked.

When they are done they will have the same understanding of physics in a shorter amount of time and they will know how to use a computational tool that they can use professionally for the rest of their life even to solve problems where Euler’s method flat out fails.
In real life, most scientists and engineers will need to learn lots of different black boxes in their educational and professional lives. It is highly unlikely that the specific black box they use in an introductory physics course will get much use in their professional lives. Sure, there are some specific problems that cannot be beaten into submission with Euler's method with sufficiently small time steps, but these can be warned about with a careful 1 minute disclaimer. My view is that teaching something about how the black boxes work is more valuable than just using the black boxes. Every numerical technique and every black box has some problems that are poor fits. Pointing that out is no reason not to use Euler, and is easy enough to do with Euler. For example, Euler breaks down with 1/r potentials for highly eccentric orbits that get too close to the origin, and especially for the orbit with zero angular momentum. Of course, lots of the black box methods break down for that case also.

PeterDonis, atyy and brainpushups
robphy
Homework Helper
Gold Member
You wrote "One well-known textbook integrates computational methods,
but not differential equations, into introductory college level physics."

Chabay and Sherwood's Matter & Interactions text (already in its 4th edition)
https://matterandinteractions.org/ ....

By the way... while MATLAB might be an industry standard,
there are cheaper (free) platforms that might be sufficient for your immediate goal (unless you need really need MATLAB libraries.. etc)
M&I uses VPython (a library for Python), now as a Jupyter notebook [which requires installation]
or as a GlowScript (VPython in a browser, see http://www.glowscript.org/#/user/GlowScriptDemos/folder/Examples/ ),
which could also be done in Trinket ( https://trinket.io/library/trinkets/create?lang=glowscript ).

By the way, early on, VPython used numpy, which had a syntax borrowed from MATLAB.
So, you could get MATLAB-like program in VPython/Python.
In addition, it handles vectors very well... so you don't have to use x,y,z-components explicitly.

Below are screen shots from Chabay and Sherwood's "Thinking Iteratively" talk
( )

at 15m05s:

and

at 18m23s

which could be easily modified to include an interaction from the moon (as you did) in your paper.
They do this 2 minutes later.

#### Attachments

• 35.5 KB Views: 811
• 35.1 KB Views: 893
Jarvis323, atyy and Will Flannery
You wrote "One well-known textbook integrates computational methods,
but not differential equations, into introductory college level physics."

Chabay and Sherwood's Matter & Interactions text (already in its 4th edition)

There wasn't much of a point - that section is a 'literature review' which is there because journals are VERY BIG on literature review sections. It discusses the PICUP group which is all about adding computational methods to the physics curriculum, which of course is way overdue. The Chabay and Sherwood book is the only book I'm aware of that introduces computation in an introductory physics text, and it follows the PICUP formula, so I had to mention it. The PICUP approach is to add computational methods to existing courses, my approach is to rewrite (in time) the curriculum so that DEs, computers, and computational calculus are there from the start.

As for MATLAB, it's perfect because it was written 100 years ago with very simple syntax that hasn't changed and it was written for engineers so it's very forgiving, e.g. you don't have to declare types, arrays, etc., and it defaults to high precision arithmetic. And the student version, which is identical to the real version, only costs $50.00, less than most texts. Also there are free versions available, FREEMAT and OCTAVE. I've used Python (following Lorena Barba's fluid dynamics vids) and it would work just as well as MATLAB. The idea is to do as little programming as possible, as simply as possible, so only the 100 year-old language features are used (except for the graphing functions), that is, variables, arrays, assignment statements, for loops, and an occasional if statement. Fancy data structures, automatic vector operations, VPython features, etc. are antithetical to the class, the only luxury allowed is the graphing functions. For a beginner high level features are something new to learn, and they obscure what is going on. We're old school. Last edited: Dale Mentor 2020 Award That's only true if the teacher narrowly limits his goals to the physics learning objectives of the current course and not the broader goal of adequate preparation for downstream needs (future courses, research, engineering, etc.) That is the correct thing for the teacher to do. Class time is precious and should not be squandered. Every minute wasted teaching other courses’ material is a minute that cannot be spent teaching your material. If you fail to teach Euler’s method in a physics course then they will learn it in their numerical methods course. If you fail to teach physics in your physics course then they will not learn it in the numerical methods course. A correct course design must be ruthlessly narrow in only teaching that which only that course will teach. You are part of a team and must rely on other classes to teach the other topics, with breadth being obtained through the variety of classes. It is highly unlikely that the specific black box they use in an introductory physics course will get much use in their professional lives. I still use Mathematica and C++ in my professional life. Many of my colleagues still use Matlab. All of us started using them in undergrad classes. I think your assumption is faulty. Every numerical technique and every black box has some problems that are poor fits. Pointing that out is no reason not to use Euler, and is easy enough to do with Euler. The nice thing about the black box approach is that a good black box will allow you to investigate several alternatives quickly and find a method which works for your specific problem without having to waste time reinventing the wheel. So the fact that each method has strengths and weaknesses is, IMO, another reason to recommend the black box approach. Dale Mentor 2020 Award The idea is to do as little programming as possible, as simply as possible, Black box, for the win! (Again) Fisherman199 Dr. Courtney Education Advisor Gold Member 2020 Award That is the correct thing for the teacher to do. Class time is precious and should not be squandered. Every minute wasted teaching other courses’ material is a minute that cannot be spent teaching your material. If you fail to teach Euler’s method in a physics course then they will learn it in their numerical methods course. If you fail to teach physics in your physics course then they will not learn it in the numerical methods course. Did you miss the point where I'm teaching Euler's method to students who have not gotten to Calculus yet and likely will not major in a discipline where they will ever get to a numerical analysis course? If one actually requires 2-3 hours of homework for each class hour, one can get all the Physics done as well as some of the math tools that are useful for problems that are often otherwise avoided: especially changing forces. One cannot handle realistic models of air drag or time dependent forces without some numerical technique. Most projectile problems are overly contrived assuming zero air drag. Euler may take a little extra time, but the benefit of solving real projectile problems makes it worthwhile if one uses time wisely (including homework time). A correct course design must be ruthlessly narrow in only teaching that which only that course will teach. You are part of a team and must rely on other classes to teach the other topics, with breadth being obtained through the variety of classes. Other "team" members have let me down so often I have zero trust in most teachers at most institutions. Surely, I'm not the only one teaching physics to see most students arrive without the necessary algebra skills. I spend more time teaching algebra in my office hours than I've ever spent teaching physics. I still use Mathematica and C++ in my professional life. Many of my colleagues still use Matlab. All of us started using them in undergrad classes. I think your assumption is faulty. Sure, I still use C, but I'm honest enough not to pretend it's a black box differential equation solver. I've used MMa a lot also, but it's not a black box diff eq solver either. They can both call various (more or less) black box diff eq solvers, and they can both be used to write your own diff eq solver. The nice thing about the black box approach is that a good black box will allow you to investigate several alternatives quickly and find a method which works for your specific problem without having to waste time reinventing the wheel. So the fact that each method has strengths and weaknesses is, IMO, another reason to recommend the black box approach. So, tell me Dale, which one works for a 1/r potential in the case of zero orbital angular momentum. Quick, try a few of your favorites and get back to me. Black box, for the win! (Again) Above, you suggested that C++ was a black box you learned as an undergraduate that is still useful in your professional life. Now, you are suggesting black boxes are useful because they allow one to avoid programming. Your definition of black box is pretty shifty. I have nothing against black boxes, but they are best used in the hands of those who understand pretty well their strengths and limitations based on how they work rather than the garbage in-garbage out approach. Auto-Didact and Will Flannery robphy Science Advisor Homework Helper Gold Member As for MATLAB, it's perfect because it was written 100 years ago with very simple syntax that hasn't changed and it was written for engineers so it's very forgiving, e.g. you don't have to declare types, arrays, etc., and it defaults to high precision arithmetic. And the student version, which is identical to the real version, only costs$50.00, less than most texts. Also there are free versions available, FREEMAT and OCTAVE. I've used Python (following Lorena Barba's fluid dynamics vids) and it would work just as well as MATLAB.
Likely closer to 50 years... https://en.wikipedia.org/wiki/MATLAB says it was started in the 1970s.
While \$50 is not that expensive compared to a full-blown license, it is still restrictive... and requires installation (probably with admin privileges).
Again, compare this to running Python in a browser using trinket.io.
No installation is needed... it'll run anywhere... even on my cell-phone.

The idea is to do as little programming as possible, as simply as possible, so only the 100 year-old language features are used (except for the graphing functions), that is, variables, arrays, assignment statements, for loops, and an occasional if statement. Fancy data structures, automatic vector operations, VPython features, etc. are antithetical to the class, the only luxury allowed is the graphing functions. For a beginner high level features are something new to learn, and they obscure what is going on. We're old school.
Yes... so, that's one of the strengths of VPython/Glowscript.
The student can focus on the physics, think in terms of objects, rather than manage a collection of scalar arrays.
(When I can, I love using index slicing rather than running an inefficient loop counter....)

atyy, Fisherman199, Will Flannery and 1 other person
Dale
Mentor
2020 Award
Did you miss the point where I'm teaching Euler's method to students who have not gotten to Calculus yet and likely will not major in a discipline where they will ever get to a numerical analysis course?
Then your objections about preparing them for professional life and probably not using this specific black box in their professional life seem pretty irrelevant to begin with.

Other "team" members have let me down so often I have zero trust in most teachers at most institutions.
I think this is your real problem. You don’t trust other people so you feel that you have to do it all yourself. That leads naturally to an overly broad course design.

Sure, I still use C, but I'm honest enough not to pretend it's a black box differential equation solver.
I was considering all of the available libraries under each of the suggestions. So C with available libraries certainly is a black box differential equation solver as well as being a general purpose tool that can be used for a variety of purposes throughout their career.

Now, you are suggesting black boxes are useful because they allow one to avoid programming.
Sure. I avoid a lot of programming by using pre-packaged libraries in C++ and other languages.

Last edited:
At the top level, the OP describes a high school course in scientific programming that includes analyzing problems in central force motion, electric circuit analysis, and 2-d rigid body motion. The linked paper gives complete details on representative analyses so that the reader can see exactly what is involved. The first table shows the fantastic results that are obtained.

Let's say it doesn't make any difference if we use Euler's method or an automated ODE solver, MATLAB or Python, or what we call the course.

The course will still be incredible because the student will be analyzing complex real systems that most university physics grads would be incapable of analyzing.

So, as I see it, there is only one possible valid serious criticism of the course - and that is, it can't be done, it can't be taught to high school students, it is beyond the capabilities of high school students. All the other issues are minor.

That is why the paper goes into such detail. Newton's law of gravity and Newton's 2nd law of motion and the equation for the acceleration of a falling apple (Newton's apple) are already part of the high school program, so there's no problem there.

I don't think Euler's method is a problem.

So, for central force motion the only remaining possible problem is just the details of getting a simple program to run, and the plan is to give the students hands on assistance (When I taught the course the 2 very bright students, one who had never programmed, disdained my help)

The paper gives complete details for the electric circuit analysis and 2-d rigid body motion problems. I won't go thru it here but I believe if you look at the physics and the model derivations for both you'll see that they are, just as for central force motion, simple, short, and intuitively clear*, and Euler's method is the same for all, so you're left with the haggling with the programs.

So, if it is doable, the course is revolutionary and will in time lead to a complete revamping of the physics and STEM curriculums (Hyperbole? I don't think so)

* the inductor model is trivially simple but it's action might be difficult to intuit, and I have an alternative mechanical visualization as a turbine.

Last edited:
Dale
Mentor
2020 Award
Let's say it doesn't make any difference if we use Euler's method or an automated ODE solver, MATLAB or Python, or what we call the course.
But all of that does matter and does make a difference.

Look, I am all for using computational tools in education, but those details do matter. In your zeal to promote this idea you are coming off very heavy handed. You are overselling it and seem unwilling to even consider the possibility of improvements.

So, if it is doable, the course is revolutionary and will in time lead to a complete revamping of the physics and STEM curriculums (Hyperbole? I don't think so)
Overselling

Drakkith
Staff Emeritus
So, if it is doable, the course is revolutionary and will in time lead to a complete revamping of the physics and STEM curriculums (Hyperbole? I don't think so)
I don't see how it would 'revolutionize' physics teaching. What level are you even aiming for? Advanced high-school/first-year undergrads taking their first physics courses? I just went through those classes and most of the students struggle to learn even the basic concepts in extremely simple problems that use up perhaps a third of a notebook page in work. Expecting them to be able to do Euler's method and compute trajectories and such at the same time as learning basic physics concepts just seems like a pipe dream to me.