The coming revolution in physics education

In summary, classical physics presents difficulties in solving differential equations, making it challenging for students to analyze complex systems. This difficulty arises in both high school and university physics courses, and is present in various topics such as mechanics, electricity, and fluid dynamics. The solution to this problem is to teach a high school course in scientific programming using Euler's method, which can be easily understood and applied by students with no prior knowledge of calculus. This method allows students to calculate approximate solutions to differential equations and apply them to various problems in physics. Overall, this approach aims to make the study of differential equations more transparent and accessible to students, ultimately transforming physics education.
  • #1
Will Flannery
114
34
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
  • #2
Euler’s method is a pretty poor method. Why not teach them to use standard ODE solvers instead.
 
  • #3
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
  • #4
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
  • #5
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
  • #6
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:
  • #7
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
  • #8
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
  • #9
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,139
  • upload_2018-9-5_16-46-37.png
    upload_2018-9-5_16-46-37.png
    35.2 KB · Views: 1,237
  • 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: 375
  • juno3.jpg
    juno3.jpg
    27.4 KB · Views: 534
  • juno1.jpg
    juno1.jpg
    17.8 KB · Views: 563
  • #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

Similar threads

  • STEM Educators and Teaching
Replies
2
Views
2K
Replies
4
Views
764
  • Differential Equations
Replies
1
Views
770
Replies
5
Views
878
  • STEM Educators and Teaching
Replies
18
Views
4K
  • Differential Equations
Replies
11
Views
20K
  • STEM Academic Advising
Replies
9
Views
1K
  • Classical Physics
Replies
0
Views
146
  • Differential Equations
Replies
5
Views
2K
Back
Top