Discussion: interactive workflow for 3D math/physics visualization
Perhaps this isn't exactly related to the sub, but you guys must know something more than me about math visualization, so here goes. I hope the mods won't remove this post.
I'm currently taking a course in linear algebra and rational mechanics, and I want to visualize what I'm learning, because that makes me understand things much better. I tried a few different programs, but each of them has some kind of bottleneck, so I wanted to kow what you guys use.
Basically, I need a quick, script-based visualization tool for 3D geometry, with an interactive scene that I can modify real-time via code or commands. What I need is a powerful environment for experimenting with the concepts that I'm studying, rather than a program that helps me generate pretty visualizations with 2000 lines of code. Ease of experimentation comes first.
What I've tried so far:
- Mathematica: quick, powerful, intuitive symbolic calculator. Can generate nice static images and decent animations. Problems: very slow when calculations get heavy, notebook-based, so there is no real scene to interact with, just an interactive cell that you have to re-run each time you modify something. Not exactly designed for 3D animations.
- Matlab: somewhat quicker than mathematica, but less elegant. I like that it's not notebook-based, so I can just stick a figure in the sideview. And I like that there is a command line that communicates directly to the scene that I'm working on. However, it is very hard to do animations, and I'm not sure they even turn out so well in the end. Not intuitive at all.
- Manimgl: this one I haven't tried yet, but it could have potential, especially if combined with sympy.
- Pyvista + pyvistaqt + pyqt6 + ipython, or, alternatively, just ipython + matplotlib. I still have to check these out, but there is definitely a learning curve.
I would love some feedback on what you guys think is "the best" for sketching out ideas and exploring mathematical concepts in 3D. I don't mind having to learn a new library or software, but I want to make sure that I'm not missing something. I mean, someone must have made a tool for this, right!? Like a more advanced geogebra, sort of. Am I missing something?