物理专业的学生应该掌握哪些编程语言?

关注者
30
被浏览
2273

4 个回答

Mathmatica/MATLAB+Python可覆盖绝大部分情况。

此外,推荐学点COMSOL……真仿真神器。
年轻一代用fortran的已经越来越少了,除非是专门做“计算物理”,需要使用一些实验室累积下来的程序的。通常来说,MATLAB/Mathematica/Maple任选一个,对大部分非专门从事计算物理的物理系师生来说,已经够了,至于这三个怎么选,给你个建议:编程能力不行的选Matlab,推导能力不行的选Maple,编程和推导能力都不行的选Mathematica。Matlab最突出地方是它的工具箱,这些工具箱的存在,不仅Mathematica和Maple完全无法与之相比,更是Python等主流编程语言在一些专门领域无法取代Matlab的原因。

但是对比较纯的物理系来说,涉及到的主要还是数值计算、数据处理和推导解析,很少会用到Matlab的工具箱。(一些学校的物理系有光学工程、光电等方向或研究领域,它们可能会用到图像处理、小波分析等等,这时候还是用Matlab好)

Maple在做解析和推导的时候,比较好用。我所知道的,一些做非线性物理的、广义相对论的、黑洞的、理论力学的,都在用Maple帮助做解析和推导。

Mathematica的优势是如果你只是做一般的数值计算和解析推导,会很适合,门槛很低,学习成本很低,几乎就像一个计算器一样,你拿一本Mathematica的书(或者直接看help),需要算什么,直接翻到那一页,看看用的什么命令,敲上去就可以了,像微分方程数值解,根本无需自己选择算法。wolframalpha让你在手机上都可以随时解微分方程、做微积分...