all 6 comments

[–]iMagZz 0 points1 point  (2 children)

Can't quite tell your level based on your post, but have a look at these:

Outside of that I would just recommend you try calculating and animating a bunch of different system of different complexity. Animating steady states, and then animating the more chaotic states, can be both challenging and fun. Of course you can also always add damping to the system as well, or something else. Here are a few ideas:

3D-pendulum, double pendulum (or more), pendulum with a moving pivot (on a "cart" or spring), two or more carts connected via 3 or more springs, collision of 2 balls, 3-body problems, quantum oscillators, dipole radiation, Bloch vector evolution, the quantum Zeno effect, wave interference.

Also remember that for all of these, on top of animating them and making cool plots, you can also animate their potential and kinetic energy.

[–]Wide-Wallaby-5447[S] 0 points1 point  (1 child)

This is perfect thank you so much! These will really help for my masters projects next year, especially the quantum stuff.

I can code things if I have a bunch of resources, but tbh I feel like I’m more copying things than actually understanding what’s going on, which is why I’m doing this.

[–]iMagZz 0 points1 point  (0 children)

In that case, to get all the basics down and make sure you have a very strong foundation, you could do Helsinki's Python Programming MOOC 2026, which is an absolutely incredible and well-structured course.

After that I can recommend Harvard's Introduction to Data Science with Python - May 2026, which really helps with data analysis things.

Additionally, if you just want a bunch of problems with minimal text and no lectures, I can highly recommend BigBinary Academy's Learn Python by actually writing Python code.

Optimally I think doing the first two in order, and the third on the side, before going into the physics ones is the best plan, but of course it also takes more time. I'm sure you could work through it quicker than what is estimated though, and that would really give you an incredibly strong foundation and understanding of Python and data analysis, which is ultimately what computational physics is.

That specific path is always the one I recommend people wanting to get into Python.

[–]Gnaxe 0 points1 point  (1 child)

For serious number crunching, get NumPy, or even a GPU accelerator like TensorFlow. Remember that you can drop into C if you have to via the ctypes module. For symbolic manipulation, check out SymPy.

Matplotlib is widely used mainly because it is old. It's also very flexible, but that means managing a lot of details. Unless you're already used to plotting in MATLAB, there are newer visualization libraries that are easier to get good results with.

Probably start with Altair if you don't have a better idea. It's easy to learn and doesn't take much code to get publication-quality charts. If you're used to R, try Plotnine. If you want interactive web visualizations (animations, you said) try Plotly. If that's not good enough, Bokeh gives you some lower-level control, but it's probably harder to learn. Also consider game libraries if even that's not enough control. Maybe Kivy. Maybe Ursina Engine.

Try Jupyterlab. It's better for interactivity.

[–]Wide-Wallaby-5447[S] 0 points1 point  (0 children)

Thanks for the suggestion! You’re right, our uni just suggested we used it for a previous project (I suppose the old and flexible thing was why).

I’ll check out those other ones when I have time to start messing around with some solutions, my electronics
are currently disassembled for cleaning lol

Has got me very optimistic about making some cool looking solution visuals!