The coming revolution in physics education

AI Thread Summary
Classical physics presents significant challenges due to its reliance on unsolvable differential equations, which limits students' ability to analyze complex systems. High school and university physics often simplify these equations to allow for basic calculations, leaving more interesting phenomena, like orbits, unexplored. A proposed solution is to teach scientific programming using Euler's method, enabling students to compute approximate solutions to differential equations without needing advanced math skills. This approach can be introduced in a single lecture and applied to various physics problems, enhancing understanding and engagement. Implementing this method could transform physics education by making complex concepts more accessible and practical for students.
Will Flannery
Messages
121
Reaction score
36
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%20Coming%20Revolution%20in%20Physics%20Ed.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.
getPart

Course synopsis:
getPart

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.
getPart


* what Newton did: see http://farside.ph.utexas.edu/teaching/336k/lectures/node32.html
 
  • Like
  • Love
Likes Jarvis323, physicsponderer, Marco Noguez and 2 others
Science news on Phys.org
Euler’s method is a pretty poor method. Why not teach them to use standard ODE solvers instead.
 
Dale said:
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.

Will Flannery said:
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.
 
  • Like
Likes Astronuc, atyy and Will Flannery
George Jones said:
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.
 
  • Like
  • Informative
Likes physicsponderer, Filip Larsen, Demystifier and 2 others
Dale said:
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:
  • Like
Likes Jarvis323, physicsponderer, grandbeauch and 4 others
George Jones said:
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:
Will Flannery said:
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:
  • Like
Likes fluidistic
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.
 
  • Like
Likes physicsponderer, grandbeauch, atyy and 2 others
Dale said:
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.
 
  • Like
  • Love
Likes physicsponderer, krater, grandbeauch and 4 others
  • #10
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 isn't 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.
 
  • Like
Likes Fisherman199 and Dale
  • #11
Dale said:
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.

Dale said:
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,
getPart

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:
  • Like
Likes grandbeauch
  • #12
Dr. Courtney said:
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.
 
  • #13
Will Flannery said:
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.
 
  • Like
Likes Will Flannery and russ_watters
  • #14
Dale said:
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.

Dale said:
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.
 
  • Like
Likes PeterDonis, atyy and brainpushups
  • #15
You wrote "One well-known textbook integrates computational methods,
but not differential equations, into introductory college level physics."

Maybe I missed the point about your comment about
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:
upload_2018-9-5_16-42-33.png


and

at 18m23s
upload_2018-9-5_16-46-37.png


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

  • upload_2018-9-5_16-42-33.png
    upload_2018-9-5_16-42-33.png
    26.3 KB · Views: 1,205
  • upload_2018-9-5_16-46-37.png
    upload_2018-9-5_16-46-37.png
    35.2 KB · Views: 1,298
  • Like
Likes Jarvis323, atyy and Will Flannery
  • #16
robphy said:
You wrote "One well-known textbook integrates computational methods,
but not differential equations, into introductory college level physics."

Maybe I missed the point about your comment about
Chabay and Sherwood's Matter & Interactions text (already in its 4th edition)

Thanks for reading !

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:
  • #17
Dr. Courtney said:
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.

Dr. Courtney said:
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.

Dr. Courtney said:
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.
 
  • #18
Will Flannery said:
The idea is to do as little programming as possible, as simply as possible,
Black box, for the win! (Again)
 
  • Like
Likes Fisherman199
  • #19
Dale said:
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).

Dale said:
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.

Dale said:
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.

Dale said:
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.

Dale said:
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.
 
  • Like
Likes Auto-Didact and Will Flannery
  • #20
Will Flannery said:
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...)
 
  • Like
Likes atyy, Fisherman199, Will Flannery and 1 other person
  • #21
Dr. Courtney said:
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.

Dr. Courtney said:
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.

Dr. Courtney said:
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.

Dr. Courtney said:
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:
  • #22
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:
  • #23
Will Flannery said:
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.

Will Flannery said:
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
 
  • #24
Will Flannery said:
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.
 
  • Like
Likes Vanadium 50 and symbolipoint
  • #25
Lots of good points in this thread but also seemingly some overgeneralization about what is "better" for teaching and understanding.

Numbers help build intuition sometimes, I think that's very much a given. When I want to figure out how something is going to behave, I sometimes try a few numbers and see what happens. So, the OP's idea is not inherently a bad one if it helps convey some intuition and allows students to vary the inputs and see the changes.

Black boxes that allow the student to go beyond what they can reasonably compute (with whatever math/programming skills they have) can also be very helpful for exploring "parameter space."

Numbers aren't the only thing, either. We teach students to get sines and cosines from a "black box" calculator, but actually the geometric interpretation both allows a reasonable computation and offers quite a lot of intuition. Similarly, plotting (and explaining) a ray trace that come out of a "black box" arguably conveys more insight about Snell's Law than performing numerical integration of an ODE on a spreadsheet.
 
  • Like
Likes Dale
  • #26
Drakkith said:
What level are you even aiming for? Advanced high-school/first-year undergrads taking their first physics courses? .

The course as designed would be for high school students who had already taken their first physics course, so that they will have already seen Newton's laws, the formula for the acceleration of a falling apple, and computed some trajectories assuming constant gravity. That just provides a familiar starting point for the course.

I've taught the course to 2 very bright high school students and Euler's method and the programming for it were no problem. Plus we've seen in this thread two PF members who've taught Euler's method in high school, post #3, and in introductory college physics, #8. So, I think Euler's method and the programming necessary to get it to work is no problem, at least for good motivated students. The programming is very simple and the paper presents it in complete detail for your perusal.

On the other hand I do think the teach-ability of the course is a big issue, and the only way to find out is to try it.

The course teaches modeling with differential equations, and that sounds formidable and completely out of reach of high school students.

The textbook definition of a differential equation (I looked it up) is 'an equation involving derivatives of a function or functions', but we don't need that definition. When studying motion a differential equation is an equation for velocity or acceleration.

And, the equation for the acceleration of a falling apple is derived in high school physics without difficulty and with no mention of calculus. The derivation is one line, trivial, and only involves division. The paper demonstrates it's just as easy to derive models for electric circuits and 2-d rigid body motion.

Also re-read post #9 carefully - especially the paragraph 'When I was first exposed to numerical methods ... This is why the course changes everything, and is revolutionary. And it's not that computational methods are a temporary substitute for more advanced analytic methods, it's that computational methods are the ONLY way that complex systems, even just a falling apple, can be analyzed.
 
Last edited:
  • #27
Will Flannery said:
I've taught the course to 2 very bright high school students
That 2 very bright students succeeded in a class is not a rousing endorsement. It is expected that such students will do well.

Again, you are overselling this. I am a fan of the goal, but not the method nor the approach.

Maybe I am a little over sensitive at present since I am in the process of buying a used car. The used car salesmen also exaggerate how great the merchandise is and they also are unwilling to address things that I see as problems.
 
  • Like
Likes Vanadium 50 and Fisherman199
  • #28
Dale said:
That 2 very bright students succeeded in a class is not a rousing endorsement. It is expected that such students will do well.

One of the student's had a perfect SAT score ! Both were excellent, and occasionally I'd give them the notes and let them teach the class.
 
  • #29
I also think you're overselling it a bit. I'm not against such a course, I simply don't think it's 'revolutionary'.
 
  • Like
Likes vela
  • #30
Drakkith said:
I also think you're overselling it a bit. I'm not against such a course, I simply don't think it's 'revolutionary'.

Maybe I'm overselling (I don't really think so), but what I'm also trying to do is to elicit some reaction to what I keep saying are extraordinary and fantastic results, e.g.
getPart

In the paper one of the analyses generates the Juno space probe trajectory which features a two year orbit around the sun then a fly-by of Earth which slingshots the probe to Jupiter ...
Not to mention an electro-mechanical analysis of a VEX robot !
 
  • #31
@Will Flannery note that I can't see any of the images you've posted so far. Trying to right click and open them in a new tab directs me to AOL's login page. Try uploading them using the 'upload' button at the bottom right of the reply box.
 
  • #32
Apollo trajectory ... all the details are in the paper ...
getPart

Juno trajectory (MATLAB has a plot3 command) ... (essentially) same program ... launch ... 3 yr. trajectory ... 1 guidance boost about 1 year in .. rest freeflight ...
juno3.jpg

Another look at Juno
juno1.jpg
 

Attachments

  • apollo10s.jpg
    apollo10s.jpg
    5.6 KB · Views: 446
  • juno3.jpg
    juno3.jpg
    27.4 KB · Views: 620
  • juno1.jpg
    juno1.jpg
    17.8 KB · Views: 623
  • #33
I am losing track of what the "coming revolution in physics ed..." is. Did it start yet? Is it really no such revolution but instead a stepwise evolution? Maybe students just need more reliable equipment and be taught some practical skills. Give students some programming instruction earlier so that repetitious data results handling can be done more comfortably. Physics? Maybe include some vocational skills training in the Physics programs or recommend some that can be had outside of the direct physics program.
 
  • #34
Will Flannery said:
what I'm also trying to do is to elicit some reaction to what I keep saying are extraordinary and fantastic results,
The reaction from my side is:
1) You are overselling
2) Consider using standard ODE solvers (particularly since you are already using Matlab)
3) You used extraordinary students so extraordinary results are unsurprising and are more attributable to the students than to the course
 
  • Like
Likes PeterDonis
  • #35
Dale said:
The reaction from my side is:
1) You are overselling
2) Consider using standard ODE solvers (particularly since you are already using Matlab)
3) You used extraordinary students so extraordinary results are unsurprising and are more attributable to the students than to the course

Well, OK, I give up on selling you my scientific programming course. But, would you be interested in a really creampuff 2011 Buick LeSabre, I swear it drives like a dream.

Joke #2 - A student walks into Dale's Culinary Arts class, and asks, 'Where's the kitchen, you know, stove, pots, and pans?' And Dale answers - 'All you need is your cellphone, we'll be ordering in.'
 
Last edited:
  • Like
Likes Auto-Didact, atyy and Dale
  • #36
Will Flannery said:
I give up on selling you my scientific programming course.
I am very curious about why you are so stuck on your course as is with no willingness to consider improvements?

Personally, I like the idea of using available computational tools in physics (and statistics and math) curricula. So I am naturally predisposed to support the concept. If you can’t even make the effort to win over someone like me then you are going to have a really hard time winning over others that may not be predisposed in favor of the concept.

Will Flannery said:
Joke #2 - A student walks into Dale's Culinary Arts class, and asks, 'Where's the kitchen, you know, stove, pots, and pans?' And Dale answers - 'All you need is your cellphone, we'll be ordering in.'
Hahaha!
 
Last edited:
  • Like
Likes Will Flannery
  • #37
Dale said:
I am very curious about why you are so stuck on your course as is with no willingness to consider improvements?

Personally, I like the idea of using available computational tools in physics curricula. So I am naturally predisposed to support the concept. If you can’t even make the effort to win over someone like me then you are going to have a really hard time winning over others that may not be predisposed in favor of the concept.

I've been trying to 'win over' people now for quite some time, NSF reviewers, journal editors, etc. So, I've given this a lot of thought. Until this thread not one person, (1), has acknowledged the basic idea of the course, much less been won over .. but in this thread we read ...

George Jones said:
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.

Dr. Courtney said:
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.

and even ...
Dr. Courtney said:
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'm making progress.

I began trying to sell - 'Mathematical Modeling and Computational Calculus'
Then - 'Clearing the First Hurdle in Mathematical Physics, Unsolvable Differential Equations'
Finally - 'The Coming Revolution ... '

Having failed to win over anyone for some time I began trying to 'sell the sizzle, not the steak', and started including the graph of the Apollo trajectory in every communication, calling it fantastic, etc. Which it is. But to date not one person has acknowledged it. The results in the paper are not only extraordinary even undreamed of in high school, they would be extraordinary in college.

And ... we haven't even gotten to partial differential equations ... !

The difficulties of analytic calculus completely dominate the university classical physics curriculum, and once you take that away, or at least put it off to the side, the landscape is entirely different and you get to see where the difficulties (apart from analytic calculus) in mathematical physics lie.

Difficulty arises going from 2-d to 3-d rigid body modeling as you need Euler angles/quaternions and the moment of inertial tensor. Note that dynamics is not even in the USF physics program.

When you get to stress and strain in materials, again missing from the USF curriculum, you need tensors big time, and if you think stress and strain in materials is outdated, the stress and strain tensors are great preparation for the gravity tensor in general relativity.

Etc.

... I could go on forever ...

Well .. I'm going on for one more little thing - computational calculus makes the physics and STEM curriculums easy at least until difficulties like tensors are encountered. So, it's like I'm trying to sell space heaters to Eskimos and no one is buying ! Millions spent by NSF on improving STEM education and they're funding things like, no kidding, 'Culturally Authentic Practice to Advance Computational Thinking in Youth' and 'Integrating Computational Thinking into Mathematics Instruction in Rural and Urban Preschools', these are real programs funded with millions.
 
Last edited:
  • #38
Will Flannery said:
The results in the paper are not only extraordinary even undreamed of in high school, they would be extraordinary in college.
This is substantial exaggeration. My sophomore year in college (mid '90s) we did double pendulum numerical simulations with ordinary students in our standard differential equations course. So this is standard college sophomore level stuff from 20+ years ago. Two decades later for such exceptional high-school students to accomplish something similar with a 2/1 student/teacher ratio is good, but not a particularly strong demonstration of the curriculum. I would expect such extraordinary students, with that level of individual attention, to be able to produce results ~3 years ahead of their peers regardless of the curriculum. Claiming this as "extraordinary in college" really diminishes your credibility.

A much more convincing test of the curriculum would be a physics test taken after your class and after a traditional class, with standard students in both. Does being able to simulate physics give typical students a better grasp of the underlying physics?
 
  • Like
Likes vela and Fisherman199
  • #39
Dale said:
This is substantial exaggeration. My sophomore year in college (mid '90s) we did double pendulum numerical simulations with ordinary students in our standard differential equations course.

You're comparing apples and oranges. Every mechanics book covers pendulums because that is one of the few non-trivial systems where the DEs can be solved. So, I pick up 'Mechanics' (the only mechanics book I've got) by Symon, and it has 7 pages on the simple and compound pendulum. You won't be able to find any textbook on classical mechanics that computes orbits (radius as a function of time), much less rocket trajectories, as the DEs are unsolvable analytically.
 
  • #40
Will Flannery said:
You're comparing apples and oranges. Every mechanics book covers pendulums because that is one of the few non-trivial systems where the DEs can be solved.
Double pendulums cannot; there is no analytical solution. It is an apples to apples comparison.
 
  • #41
Last edited:
  • #42
Will Flannery said:
I'm surprised to see such a complex sim in a traditional DE class. In fact, I'm surprised to see any sim in a traditional DE class.
Well, it was our standard required course in the mid 90's for all engineering majors at a typical big engineering college.

Will Flannery said:
But still, no orbits, no rockets.
So what? Were some of the proposed names of your course "orbital mechanics" or "rocket science"? No, those were just examples of analytically unsolvable DE's. A double pendulum is also one, so it is clearly and obviously an apples to apples comparison.

The point stands that this is not "extraordinary in college" success, this is "sophomore level in college" success. That is still a good accomplishment, but not nearly living up to your overselling. A more moderate approach would be more credible.
 
Last edited:
  • Like
Likes Fisherman199
  • #43
Dale said:
No, those were just examples of analytically unsolvable DE's.

Not at all. These aren't 'random examples'. These are representative core problems in 3 branches of physics. The three branches that are characterized by ODEs as opposed to PDEs. Hey, I should have pointed that out in the beginning.

The orbits/rockets analyses represent the core of central force motion. And the only similar results at USF are obtained not in the classical dynamics (physics dept) class but in the elective senior year course in computational physics.

The electric circuit examples represent the core of electric circuit analysis, and the methods used in the industry standard SPICE (simulation program with integrated circuit emphasis) program which EEs use to analyze newly designed circuits.

The rigid body examples are representative of the analysis of rigid body dynamics, another huge branch of physics. One of the rigid body analyses described in the paper is a 2-d rigid body rocket launch to orbit. There is a rigid body rocket problem analyzed in Classical Dynamics PHY 3220, the text (Classical Dynamics, Thornton) reads pg. 374 ...

The actual motion of a rocket attempting to leave earth’s gravitational field is quite complicated. For analytical purposes, we begin by making several assumptions. The rocket will have only vertical motion, with no horizontal component. We neglect air resistance and assume that the acceleration of gravity is constant with height. We also assume that the burn rate of fuel is constant.

It takes a couple of pages of calculus to solve the equations of motion this problem which has been simplified to point of irrelevance.

The text continues:

All these factors that are neglected can reasonably be included with a numerical analysis by computer.

Which is what the example in the paper does. So, our trajectory approaches realism, whereas the PHY 3220 analysis is totally unrealistic.
 
Last edited:
  • #44
Will Flannery said:
Not at all. These aren't 'random examples'.
I never said the examples were random. But the accomplishment isn’t the specific problems solved, it is using a numerical method to solve an ODE with no analytical solution. So, again, the accomplishment isn’t super stupendous amazing wonderful fantastic even for college, it is solid sophomore level work.
 
Last edited:
  • #45
Dale said:
So, again, the accomplishment isn’t super stupendous amazing wonderful fantastic even for college,

Let's just say fantastic, even at the college level.

A (physics) student at USF will study central force motion in introductory physics and in classical mechanics, spending a few weeks on the subject. The goal of studying central force motion is to be able to determine trajectories of orbits and rockets, and yet USF students do not even plot orbits (unless they take the elective senior computational physics course) much less rocket trajectories . So, the graphs in the my course, e.g. the Juno trajectory, would be, let's say, spectacular at USF. Even more, when Newton solved the problem of plotting orbits from his laws of gravity and motion, this marked the beginning of modern math and science. This is THE problem in the history of science, unsolved for thousands of years. It's nice to see a solution.

The DEs for small electrical circuits, as in the course, are solvable analytically for sine wave inputs, and the physics dept. (I think, could be EE dept) electrical circuits class at USF, text Hambley, does, in one section in one chapter, use the MATLAB ODE solver to analyze circuits for steady state sinusoidal inputs. Whereas, in my course the circuits are analyzed for sine, step, and impulse inputs. Yep, fantastic once again.

Rigid-body motion is given short shrift in the US physics dept, the classical dynamics text, Thornton, has analyses of pendulums and spinning tops, which are somewhat spectacular themselves, but these objects are not of great interest to most of us. It's not in the paper but the first and simplest rigid-body analysis in my course is for a tumbling rod. Completely outside the scope of the physics program at USF, and really neat, hence, fantastic. Ditto the launch to orbit. Even more so the electro-mechanical analysis of the VEX robot described in the paper.

Here's how the paper puts it

"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."

This sense of mastery of the analysis of a wide range of real physical systems is completely missing from the typical university physics program today, because it requires analyzing mostly unsolvable DEs and that requires computational math which is given minimal coverage at USF.
 
Last edited:
  • #46
C:
for(;;)  {
   printf("Valid criticism.\n");
   printf("You're wrong.  This is the most stupendously stupendous idea ever!\n");
}
 
  • Like
  • Haha
Likes PeterDonis, Klystron, pbuk and 2 others
  • #47
Dale said:
I never said the examples were random. But the accomplishment isn’t the specific problems solved, it is using a numerical method to solve an ODE with no analytical solution. So, again, the accomplishment isn’t super stupendous amazing wonderful fantastic even for college, it is solid sophomore level work.

If we're talking about physics, my view is that there need to be enough problems of interest solved to demonstrate the generality of the approach to useful physics. The double pendulum problem is interesting, but in isolation, it is of little practical value. A small subset of more interesting problems would be: projectile motion with drag, rocket motion with thrust and drag, multi-body satellite, and relativistic rocket ship.

Is it extraordinary? Well, it is certainly not ordinary, as most sophomore physics courses do not have it. I was pleased that my son's physics professor included some of this in his sophomore level course. Of course, most of the students in the class couldn't handle the programming, and as soon as the prof saw my son could handle the programming, he was snatched up for his research group. The course had the opportunity, but there were so few points attached to the numerical integration projects that most students could botch the projects (learn nothing from them) and pass the course.
 
  • Like
Likes Will Flannery
  • #48
Dr. Courtney said:
Of course, most of the students in the class couldn't handle the programming, and as soon as the prof saw my son could handle the programming, he was snatched up for his research group.

Trying to attach programming to an existing physics course is probably not a good idea, a better idea is to have an introductory course in ... Scientific Programming :)
 
  • #49
Will Flannery said:
Let's just say fantastic, even at the college level.
Overselling again. It is “good at the sophomore level”, anything more than that is an exaggeration.

Will Flannery said:
A (physics) student at USF
Maybe you just need to look at better schools. I have no idea how USF is ranked. I was at TAMU which is a good engineering school, but not at the MIT or Stanford level.

So maybe “fantastic, even at the USF college level” or “good at the TAMU sophomore level”.
 
Last edited:
  • #50
Dr. Courtney said:
If we're talking about physics, my view is that there need to be enough problems of interest solved to demonstrate the generality of the approach to useful physics. The double pendulum problem is interesting, but in isolation, it is of little practical value.
In my case it was a differential equations class. So the entire class was considered generally useful techniques regardless of the practical value of specific problems.

Dr. Courtney said:
Well, it is certainly not ordinary, as most sophomore physics courses do not have it. I was pleased that my son's physics professor included some of this in his sophomore level course.
Well, your son’s physics course had it, and my DE class had it. And Will’s school doesn’t do it at all. Other schools may reserve it for a dedicated numerical methods course. So I am not sure that “most” is right.
 
Last edited:
Back
Top