Programming languages used by physicists?

AI Thread Summary
For a physics internship, learning a computation-oriented programming language is essential, with MATLAB being highly recommended for beginners due to its extensive use in physics and ease of learning. While Fortran has a long history in the field, its complexity and outdated resources make it less suitable as a first language. New graduate students often use MATLAB, Mathematica, or Excel, while postdocs may transition to C++. The choice of programming language can depend on specific career goals, with industry roles favoring Python and C++. Overall, MATLAB is a strong starting point for those entering the physics community.
BigD
Messages
14
Reaction score
0
It is suggested that I learn a computation oriented programming language for an physics internship which I hope to apply for soon. I'm curious; what is the most commonly used programming language in the physics community?

I've heard that Fortran has been used extensively for a some time, but all of the material discussing Fortran that I've found online is quite old. Is there something else that has replaced it?
 
Physics news on Phys.org
Depends what area and where in your career.

New grad student = Mathematica, Matlab, Excel

New post doc = c++

Senior lecturer = Fortran

Professor = the highest level programming language "grad student". It only has one statement which is "hey you - write me a program to do X"
 
Thank you. I actually haven't finished 4-year yet, but I love reading things beyond my level.

P.S. Thanks for the quick laugh.
 
There was almost a serious point - It depends on your life goal!

If you want to get on in physics you probably want to do as little programming as possible, there are better things to do than be in the lab at 4:00am looking for that intermittent memory bug that only happens when your model has been running for 12hours.
Ideally if you can use something like Mathematics, matlab, IDL - or even Excel.

If you are going to end up on Wall St/industry like most of us then learning some python/C++/Linux is going to be useful.
 
The reason all of the material you found about Fortran being old is because Fortran is old. You will find that many languages in physics are used simply because they are used. IDL, for instance, is used for things like image processing - it's often said among the department I know that uses IDL extensively that the only reason they still use IDL is because no-one has bothered to write the processing routines in MATLAB.

Fortran is good at what it does, but I wouldn't recommend it as a first language. It's messy, takes a while to get used to and will feel utterly illogical for a while. Once you're comfortable with setting programming aside as being something a bit abstract in your mind, Fortran is OK - the reason it's still used is simply because the things it can do, it can do very fast.

I also, certainly, wouldn't say you're reading above your level by learning programming - you mean you haven't dealt with any of those mentioned above as part of your course material? I was introduced to MATLAB in year one and had projects in it every year, as well as a bunch of others.

I would recommend you start with MATLAB. It's used extensively in physics, applied mathematics and engineering and is a great language to begin with. It's fairly easy to pick up, and many of the skills you'll learn in MATLAB are transferrable to things like C++. The tutorial system and built-in help are also pretty reasonable.
 
mgb_phys said:
Depends what area and where in your career.

New grad student = Mathematica, Matlab, Excel

New post doc = c++

Senior lecturer = Fortran

Professor = the highest level programming language "grad student". It only has one statement which is "hey you - write me a program to do X"

Are you speaking from a condensed matter standpoint? For those of us in high energy, even we grad students have to know C++.
 
TL;DR Summary: What topics to cover to safely say I know arithmetic ? I am learning arithmetic from Indian NCERT textbook. Currently I have finished addition ,substraction of 2 digit numbers and divisions, multiplication of 1 digit numbers. I am moving pretty slowly. Can someone tell me what topics to cover first to build a framework and then go on in detail. I want to learn fast. It has taken me a year now learning arithmetic. I want to speed up. Thanks for the help in advance. (I also...
Hi community My aim is to get into research about atoms, specifically, I want to do experimental research that explores questions like: 1. Why do Gallium/Mercury have low melting points 2. Why are there so many exceptions and inconsistencies when it comes to explaining molecular structures / reaction mechanisms in inorganic and organic chemistry 3. Experimental research about fundamental Quantum Mechanics, such as the one being followed by Hiroshima university that proved that observing...
guys i am currently studying in computer science engineering [1st yr]. i was intrested in physics when i was in high school. due to some circumstances i chose computer science engineering degree. so i want to incoporate computer science engineering with physics and i came across computational physics. i am intrested studying it but i dont know where to start. can you guys reccomend me some yt channels or some free courses or some other way to learn the computational physics.
Back
Top