计算化学公社

 找回密码 Forget password
 注册 Register
Views: 13287|回复 Reply: 32
打印 Print 上一主题 Last thread 下一主题 Next thread

[科研杂谈] 关于编程语言的选择

[复制链接 Copy URL]

134

帖子

0

威望

279

eV
积分
413

Level 3 能力者

跳转到指定楼层 Go to specific reply
楼主
本帖最后由 笙歌落 于 2020-10-5 15:39 编辑

1.计算化学需要用到的编程语言和脚本有哪些?win系统和Linux系统都可以,当然了,其他的操作系统也行,好像还有个Unix系统吧。其实,我自己并不反感编程,还有一点喜欢。通过编程让电脑和服务器为我工作,而我去做其他事也不错,提高效率,节省时间。换句话说,就算不为了毕业转行,我也想学习编程。
2.如果量化硕士毕业以后转行CS,应该在硕士的休息时间学习哪些语言?
3.现在的人工神经网络,机器学习,大数据算法,人工智能用的是什么编程语言?
4.我自己是比较喜欢Python和Java,这两个语言是自己的兴趣,但是不知道能不能达到我的目的或者目标呢?

以上四个问题的答案是java,python,C,C+,C++,Shell Script,Fortran,PHP,matlab,per,Perl还是其他编程语言?
我看这些语言出现的频率比较高,当然了,我是小白,还请大家说说看,谢谢大家。


用微笑演绎悲伤,用努力诠释未来。

339

帖子

0

威望

5049

eV
积分
5388

Level 6 (一方通行)

2#
发表于 Post on 2020-10-5 17:45:06 来自手机 | 只看该作者 Only view this author
据我有限的经验,QC/CP领域的绝大多数程序主流都是Fortran/c/c++/,大部分还辅以Python做胶水前端。主流QC就剩下著名的GAUSSIAN, MOLPRO, Q-CHEM等没有相应的Python前端,但是有一个简易的universal的ASE,计算物理材料科学还有一个universal的AiiDA,所以按学习难度曲线和收益来看,建议你学习Python -> c -> c++,如果学有余力,可以着重学习下Fortran,非常强大,但是机器学习人工智能领域几乎没有人用过。其他的很有用的脚本语言例如shell非常简单,不用特意去学习。Perl基本上算是半死不活了,没必要去学了,JAVA在机器学习上用得还算是比较多,但是QC/CP领域完全没人用,速度硬伤,做UI前段倒是有.

评分 Rate

参与人数
Participants 2
eV +6 收起 理由
Reason
tkaray + 2 谢谢
笙歌落 + 4 谢谢

查看全部评分 View all ratings

134

帖子

0

威望

279

eV
积分
413

Level 3 能力者

3#
 楼主 Author| 发表于 Post on 2020-10-5 18:32:10 | 只看该作者 Only view this author
chrinide 发表于 2020-10-5 17:45
据我有限的经验,QC/CP领域的绝大多数程序主流都是Fortran/c/c++/,大部分还辅以Python做胶水前端。主流QC ...

好的,十分感谢
用微笑演绎悲伤,用努力诠释未来。

134

帖子

0

威望

279

eV
积分
413

Level 3 能力者

4#
 楼主 Author| 发表于 Post on 2020-10-5 18:34:43 | 只看该作者 Only view this author
chrinide 发表于 2020-10-5 17:45
据我有限的经验,QC/CP领域的绝大多数程序主流都是Fortran/c/c++/,大部分还辅以Python做胶水前端。主流QC ...

还有个问题,学了C以后,可以去直接学C++吗?
用微笑演绎悲伤,用努力诠释未来。

30

帖子

0

威望

444

eV
积分
474

Level 3 能力者

5#
发表于 Post on 2020-10-5 18:50:33 | 只看该作者 Only view this author
笙歌落 发表于 2020-10-5 18:34
还有个问题,学了C以后,可以去直接学C++吗?

两者是完全不同的语言,难度根本就不是一个级别

134

帖子

0

威望

279

eV
积分
413

Level 3 能力者

6#
 楼主 Author| 发表于 Post on 2020-10-5 20:10:40 | 只看该作者 Only view this author
xiamiaoren 发表于 2020-10-5 18:50
两者是完全不同的语言,难度根本就不是一个级别

好的,好的,就是两个语言
用微笑演绎悲伤,用努力诠释未来。

1万

帖子

0

威望

8998

eV
积分
20752

Level 6 (一方通行)

7#
发表于 Post on 2020-10-5 22:30:39 | 只看该作者 Only view this author
笙歌落 发表于 2020-10-5 18:34
还有个问题,学了C以后,可以去直接学C++吗?

这个看怎么说,如果你的目标就是学C++,但是想先学个简单一点的语言铺个底子,那么C是最好的选择。
但如果你的目标是学C,想顺便学C++,那么这个“顺便”并不容易。
Zikuan Wang
山东大学光学高等研究中心 研究员
BDF(https://bdf-manual.readthedocs.io/zh_CN/latest/Introduction.html)、ORCA(https://orcaforum.kofo.mpg.de/index.php)开发团队成员
Google Scholar: https://scholar.google.com/citations?hl=zh-CN&user=XW6C6eQAAAAJ&view_op=list_works&sortby=pubdate
ORCID: https://orcid.org/0000-0002-4540-8734
主页:http://www.qitcs.qd.sdu.edu.cn/info/1034/1702.htm
本团队长期招收研究生,有意者可私信联系

134

帖子

0

威望

279

eV
积分
413

Level 3 能力者

8#
 楼主 Author| 发表于 Post on 2020-10-6 10:32:43 | 只看该作者 Only view this author
wzkchem5 发表于 2020-10-5 22:30
这个看怎么说,如果你的目标就是学C++,但是想先学个简单一点的语言铺个底子,那么C是最好的选择。
但如 ...

明白了,VB这个语言有必要学吗?
用微笑演绎悲伤,用努力诠释未来。

1万

帖子

0

威望

8998

eV
积分
20752

Level 6 (一方通行)

9#
发表于 Post on 2020-10-6 10:35:41 | 只看该作者 Only view this author
笙歌落 发表于 2020-10-6 10:32
明白了,VB这个语言有必要学吗?

没必要,过时了。
你要是打算转行或者偏机器学习方向的话,学python最好。

评分 Rate

参与人数
Participants 1
eV +3 收起 理由
Reason
笙歌落 + 3 赞!

查看全部评分 View all ratings

Zikuan Wang
山东大学光学高等研究中心 研究员
BDF(https://bdf-manual.readthedocs.io/zh_CN/latest/Introduction.html)、ORCA(https://orcaforum.kofo.mpg.de/index.php)开发团队成员
Google Scholar: https://scholar.google.com/citations?hl=zh-CN&user=XW6C6eQAAAAJ&view_op=list_works&sortby=pubdate
ORCID: https://orcid.org/0000-0002-4540-8734
主页:http://www.qitcs.qd.sdu.edu.cn/info/1034/1702.htm
本团队长期招收研究生,有意者可私信联系

134

帖子

0

威望

279

eV
积分
413

Level 3 能力者

10#
 楼主 Author| 发表于 Post on 2020-10-6 10:58:35 | 只看该作者 Only view this author
wzkchem5 发表于 2020-10-6 10:35
没必要,过时了。
你要是打算转行或者偏机器学习方向的话,学python最好。

嗯嗯,那老师是理论与计算有机化学反应机理,酶催化反应机理,人工智能化学等等,似乎没人知道人工智能化学研究什么,那就学Python吧,据说和人工智能也有关系
用微笑演绎悲伤,用努力诠释未来。

30

帖子

0

威望

444

eV
积分
474

Level 3 能力者

11#
发表于 Post on 2020-10-9 17:28:30 | 只看该作者 Only view this author
关键是看学了编程以后拿来干嘛,不同方向的要求差距非常大

134

帖子

0

威望

279

eV
积分
413

Level 3 能力者

12#
 楼主 Author| 发表于 Post on 2020-10-9 19:24:37 | 只看该作者 Only view this author
xiamiaoren 发表于 2020-10-9 17:28
关键是看学了编程以后拿来干嘛,不同方向的要求差距非常大

转行CS,去互联网公司
用微笑演绎悲伤,用努力诠释未来。

262

帖子

4

威望

5469

eV
积分
5811

Level 6 (一方通行)

13#
发表于 Post on 2020-10-9 19:40:58 | 只看该作者 Only view this author
本帖最后由 wxhwbh 于 2020-10-9 19:41 编辑

你要是真的想学编程,又是做量化计算的,我非常推荐这个教程:
https://github.com/CrawfordGroup/ProgrammingProjects
教你手把手编写一些简单的量子化学方法的计算程序,从最基础的读取分析分子信息,到Hartree-Fock,MP2, CIS等等。写一遍不仅能加深你对理论的理解,也能让你学习到把理论转化成代码的思想。教程也给了参考的C++代码,你也可以用别的写。我最早学Fortran的时候就是用Fortran写了一遍这个,写了几个之后编程水平有很大的提高(主要是中间会出现很多问题,解决了你就进步了)。以前看论坛上也有人用python写。
机器学习什么的目前还是python为主(因为可调的包比较完善),不过我觉得学编程切忌眼高手低,动手写才是王道。你学会了一个语言,再想换另一个语言其实是很轻松的,基本就是照葫芦画瓢。你如果一直担心学这个不会学那个不会,一直不去写,最后也不可能会的。

评分 Rate

参与人数
Participants 3
eV +15 收起 理由
Reason
Yjc + 5 非常优质的编程学习资源!
北大-陶豫 + 5 谢谢
笙歌落 + 5 好物!

查看全部评分 View all ratings

贫困U 退学与疯子工程学院

134

帖子

0

威望

279

eV
积分
413

Level 3 能力者

14#
 楼主 Author| 发表于 Post on 2020-10-9 21:29:43 | 只看该作者 Only view this author
wxhwbh 发表于 2020-10-9 19:40
你要是真的想学编程,又是做量化计算的,我非常推荐这个教程:
https://github.com/CrawfordGroup/Program ...

好的,好的,谢谢您。
用微笑演绎悲伤,用努力诠释未来。

1657

帖子

5

威望

4560

eV
积分
6317

Level 6 (一方通行)

喵星人

15#
发表于 Post on 2020-10-10 13:43:19 | 只看该作者 Only view this author
目测楼主正处于什么都想学但学不过来也不知道学啥和怎么学的阶段

本版积分规则 Credits rule

手机版 Mobile version|北京科音自然科学研究中心 Beijing Kein Research Center for Natural Sciences|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949号-1 )|网站地图

GMT+8, 2025-8-15 15:33 , Processed in 0.758336 second(s), 21 queries , Gzip On.

快速回复 返回顶部 返回列表 Return to list