Once day, I talked to my Prof. about Computational Physics and he showed me his work. I'm quite surprised that why Prof. use C++ for computation because C++ quite complicated. I heard he talked about memory talk about pointer. Why didn't he use Python or Java that more easier? no need to manage memory no need to busy with pointer.
closed as off-topic by Kostya, Dilaton, user10851, Emilio Pisanty, David Z♦ Aug 11 '13 at 16:07
This question appears to be off-topic. The users who voted to close gave this specific reason:
- "This question appears to be about engineering, which is the application of scientific knowledge to construct a solution to solve a specific problem. As such, it is off topic for this site, which deals with the science, whether theoretical or experimental, of how the natural world works. For more information, see this meta post." – Kostya, Dilaton
I can't really know why your professor used C++, but there are several reasons why you would:
- Performance: Scientific computations might require top-notch performance. C++ allows for very low level control over the hardware and has many possibilities for micro-optimization while still providing high-level abstraction. Of course, this is also the reason that C++ is quite complicated.
- Historical reasons: C++ has been the de facto general programming language for quite a while. Your prof's code might need to be compatible with other projects. Plus, I think there are more libraries for C/C++ than for any other language, your professor might have to make use of such a library. It is also possible that C++ is the standard language for this kind of thing in your professor's university or field, simply because it used to be the best choice.
- Maybe your professor only knows C++...