Which Physics Simulation Programs Can I Use to Visualize Complex Phenomena?

Click For Summary
SUMMARY

This discussion focuses on various physics simulation programs suitable for visualizing complex phenomena such as spark discharge and electromagnetism. Key recommendations include MATLAB with Simulink, which is a leading but costly option, and Octave, a free open-source alternative that offers similar functionalities. Users also mention FEMLAB, which has evolved into COMSOL, a widely used but expensive tool in research and industry. Additional resources include VPython and Open Source Physics for creating simulations without extensive programming knowledge.

PREREQUISITES
  • Understanding of basic numerical methods (integration, differentiation, solving differential equations)
  • Familiarity with programming languages such as Python, C/C++, or Java
  • Knowledge of physics concepts related to electromagnetism and fluid dynamics
  • Awareness of simulation software capabilities and limitations
NEXT STEPS
  • Explore MATLAB and Simulink for advanced simulation capabilities
  • Learn Octave as a free alternative to MATLAB for physics simulations
  • Investigate COMSOL for professional-grade simulation tools in research
  • Research VPython and Open Source Physics for user-friendly simulation platforms
USEFUL FOR

Physics students, researchers, and educators looking to visualize complex physical phenomena through simulation software. This discussion is particularly beneficial for those seeking cost-effective tools and alternatives to traditional expensive software.

xx0numb0xx
Messages
6
Reaction score
0
What are some free or commercially available simulation programs? The simulations I'd like to run would be related to spark discharge, electromagnetism, general chemistry, metal alloys, diamagnetic levitation, and such. It's nice knowing the formulas and theories behind stuff, but it'd be much nicer being able to see it happen without needing the equipment to do it live. I'm not looking for simple programs like those available by PhET Interactive Simulations. For example, PhET has several electromagnetism simulation programs, but those don't allow you to change the amount of current going through the wire, change the core material, height, diameter, or shape, go beyond four windings, etc.. I'm not expecting programs like those used to accurately simulate the big bang on supercomputers, either. I'm also open to some kind of sandbox simulator where I put in the formulas for gravity, magnetic flux density, ionization energy, or whatever else is necessary. Lists of programs or ideas for searching for them are both welcome.
 
Physics news on Phys.org
FactChecker said:
Mathlab with Simulink is a leading software package. It is expensive and I think Simulink costs an additional amount. See http://http://en.wikipedia.org/wiki/Comparison_of_numerical_analysis_software for comparisons with Matlab. For a list of other simulation languages, see http://en.wikipedia.org/wiki/List_of_computer_simulation_software

Thank you. I'll definitely look into MatLab and some other programs on that list. The price for MatLab is pretty hefty even with a student license. If I find that it's worth it, I'll try to get a student license for it.
 
One could look into FEMLAB.
http://www.math.chalmers.se/Math/Research/Femlab/general.html

Physics simulation is afterall about solving a system of differential equations that describe a physical process or phenomenon. Obviously a time dependent system is more interesting than a static problem. Time scales, e.g., nanosecond, microsecond, millisecond vs years, decades, millenia, mega-anni. Mixed time scales are even more fun.
 
Last edited by a moderator:
Octave is a free open-source alternative to MATLAB that does virtually everything MATLAB does, except possibly for some packages such as Simulink and some optimization tools, but they are always implementing more functions. The programming language is the same, too.

However, if you are new to basic numerical methods (integration, differentiation, solving diff equations, solving non-linear equations, Newton's method, playing with matrices and linear systems), I would recommend implementing your problem in a basic programming language you are familiar with, such as Python, C/C++, Java, etc, so you build the intuition behind what's being done behind the scenes in those softwares (MATLAB, Octave, ANSYS, and so on) so that you can better understand how your problem is being solved and figure out what's going wrong easier if you do not get a satisfactory/non-physical result.
 
Last edited:
  • Like
Likes   Reactions: 1 person
Hobold said:
Octave is a free open-source alternative to MATLAB that does virtually everything MATLAB does,


I will have to look into Octave. The lack of a Simulink equivalent may be bad for some uses, but Matlab is still a good simulation tool. I think the problems mentioned in the original post can be done in a Matlab equivalent easier than in a Simulink diagram tool. So if Octave can do that, it would be excellent to have.

Hobold said:
However, if you are new to basic numerical methods (integration, differentiation, solving diff equations, solving non-linear equations, Newton's method, playing with matrices and linear systems), I would recommend implementing your problem in a basic programming language you are familiar with.

I'm afraid I have to disagree with you there. Every student should know basic programming concepts (functions, etc.), but it is not necessary to know details of numerical methods so well that you can implement working programs for all those algorithms.
 
Thank you all for the replies. I found a friend who has MatLab, and I've tried playing around with it. I'm not familiar with programming or writing scripts, so it was quite new to me. All I've been able to do so far is write simple scripts for unit conversions, calculating magnetic flux and magnetic flux density for an electromagnet with a uniform cross-sectional area, asking the question "why" a million times with different answers each time (that took quite a long time to finish), and calculating the pressure required to lift an object on Earth with a given mass and flat surface area. I'm not sure how I could go about doing 3D simulations with MatLab. The one thing I'm sure about is that it would take me a very long time to learn how to aptly use it.
 
  • #10
And it looks like VPython is just a simple 3D modeling program where you write a script instead of actively building the model. I use Autodesk Inventor, Blender, or SolidWorks for macro-scale physical modeling.
 
  • #11
xx0numb0xx said:
I'm not familiar with programming or writing scripts, so it was quite new to me. All I've been able to do so far is write simple scripts for unit conversions, calculating magnetic flux and magnetic flux density for an electromagnet with a uniform cross-sectional area,

That is impressive. I would say that is a lot to learn in a short time. Programming scripts in a 4'th generation language is a lot to learn and is very beneficial in the long run. And what you accomplished would have probably taken much longer before such languages were developed.
 
  • #12
Astronuc said:
One could look into FEMLAB.
http://www.math.chalmers.se/Math/Research/Femlab/general.html

I would avoid Femlab. I used it as an undergraduate, but that was nearly 20 years ago and the program has not been updated since.

I believe the Chalmers Femlab software eventually evolved into Comsol (www.comsol.com), the latter is very often used in research and industry ( I use it a lot), but it is also very expensive.
 
Last edited by a moderator:
  • #13
There's open source physics at:

www.compadre.org/osp

where you'll find many simulations that use the OSP framework which allows you to write your own.
 

Similar threads

Replies
4
Views
4K
  • · Replies 7 ·
Replies
7
Views
5K
  • · Replies 7 ·
Replies
7
Views
7K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 2 ·
Replies
2
Views
3K
  • · Replies 5 ·
Replies
5
Views
5K
  • · Replies 2 ·
Replies
2
Views
4K
  • · Replies 5 ·
Replies
5
Views
3K
  • · Replies 1 ·
Replies
1
Views
4K
  • · Replies 7 ·
Replies
7
Views
3K