计算化学公社

标题: 关于编程语言的选择 [打印本页]

作者
Author:
笙歌落    时间: 2020-10-5 15:31
标题: 关于编程语言的选择
本帖最后由 笙歌落 于 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还是其他编程语言?
我看这些语言出现的频率比较高,当然了,我是小白,还请大家说说看,谢谢大家。



作者
Author:
chrinide    时间: 2020-10-5 17:45
据我有限的经验,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前段倒是有.
作者
Author:
笙歌落    时间: 2020-10-5 18:32
chrinide 发表于 2020-10-5 17:45
据我有限的经验,QC/CP领域的绝大多数程序主流都是Fortran/c/c++/,大部分还辅以Python做胶水前端。主流QC ...

好的,十分感谢
作者
Author:
笙歌落    时间: 2020-10-5 18:34
chrinide 发表于 2020-10-5 17:45
据我有限的经验,QC/CP领域的绝大多数程序主流都是Fortran/c/c++/,大部分还辅以Python做胶水前端。主流QC ...

还有个问题,学了C以后,可以去直接学C++吗?
作者
Author:
xiamiaoren    时间: 2020-10-5 18:50
笙歌落 发表于 2020-10-5 18:34
还有个问题,学了C以后,可以去直接学C++吗?

两者是完全不同的语言,难度根本就不是一个级别
作者
Author:
笙歌落    时间: 2020-10-5 20:10
xiamiaoren 发表于 2020-10-5 18:50
两者是完全不同的语言,难度根本就不是一个级别

好的,好的,就是两个语言
作者
Author:
wzkchem5    时间: 2020-10-5 22:30
笙歌落 发表于 2020-10-5 18:34
还有个问题,学了C以后,可以去直接学C++吗?

这个看怎么说,如果你的目标就是学C++,但是想先学个简单一点的语言铺个底子,那么C是最好的选择。
但如果你的目标是学C,想顺便学C++,那么这个“顺便”并不容易。
作者
Author:
笙歌落    时间: 2020-10-6 10:32
wzkchem5 发表于 2020-10-5 22:30
这个看怎么说,如果你的目标就是学C++,但是想先学个简单一点的语言铺个底子,那么C是最好的选择。
但如 ...

明白了,VB这个语言有必要学吗?

作者
Author:
wzkchem5    时间: 2020-10-6 10:35
笙歌落 发表于 2020-10-6 10:32
明白了,VB这个语言有必要学吗?

没必要,过时了。
你要是打算转行或者偏机器学习方向的话,学python最好。
作者
Author:
笙歌落    时间: 2020-10-6 10:58
wzkchem5 发表于 2020-10-6 10:35
没必要,过时了。
你要是打算转行或者偏机器学习方向的话,学python最好。

嗯嗯,那老师是理论与计算有机化学反应机理,酶催化反应机理,人工智能化学等等,似乎没人知道人工智能化学研究什么,那就学Python吧,据说和人工智能也有关系
作者
Author:
xiamiaoren    时间: 2020-10-9 17:28
关键是看学了编程以后拿来干嘛,不同方向的要求差距非常大
作者
Author:
笙歌落    时间: 2020-10-9 19:24
xiamiaoren 发表于 2020-10-9 17:28
关键是看学了编程以后拿来干嘛,不同方向的要求差距非常大

转行CS,去互联网公司
作者
Author:
wxhwbh    时间: 2020-10-9 19:40
本帖最后由 wxhwbh 于 2020-10-9 19:41 编辑

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

好的,好的,谢谢您。
作者
Author:
喵星大佬    时间: 2020-10-10 13:43
目测楼主正处于什么都想学但学不过来也不知道学啥和怎么学的阶段
作者
Author:
笙歌落    时间: 2020-10-11 20:47
喵星大佬 发表于 2020-10-10 13:43
目测楼主正处于什么都想学但学不过来也不知道学啥和怎么学的阶段

对的,兄弟,好在大家指路python
作者
Author:
笙歌落    时间: 2020-10-11 20:51
喵星大佬 发表于 2020-10-10 13:43
目测楼主正处于什么都想学但学不过来也不知道学啥和怎么学的阶段

对的,兄弟,好在大家指路python,或者以后学学R,兜底吧,后悔不能出坑了,高考选专业觉得就化学学得好,就选了
作者
Author:
xiamiaoren    时间: 2020-10-11 21:37
笙歌落 发表于 2020-10-11 20:51
对的,兄弟,好在大家指路python,或者以后学学R,兜底吧,后悔不能出坑了,高考选专业觉得就化学学得好 ...

出化学坑难度真的不是凡人能够做到的
作者
Author:
笙歌落    时间: 2020-10-12 17:03
xiamiaoren 发表于 2020-10-11 21:37
出化学坑难度真的不是凡人能够做到的

是啊,当时太年轻了
作者
Author:
xiamiaoren    时间: 2020-10-12 18:54
本帖最后由 xiamiaoren 于 2020-10-12 18:56 编辑
笙歌落 发表于 2020-10-12 17:03
是啊,当时太年轻了

所以要出坑转CS类型工作的话,还是要好好学习C,计算机原理,数据结构,网络等课程。至于语言,那只是一个表达,不要觉得会写几个程序就会有竞争力。Python这种简单的语言随便看看就会了
作者
Author:
笙歌落    时间: 2020-10-12 19:42
xiamiaoren 发表于 2020-10-12 18:54
所以要出坑转CS类型工作的话,还是要好好学习C,计算机原理,数据结构,网络等课程。至于语言,那只是一 ...

好的,其实就是比较迷茫研究生这几年
作者
Author:
chen-xl13    时间: 2020-12-10 10:31
wxhwbh 发表于 2020-10-9 19:40
你要是真的想学编程,又是做量化计算的,我非常推荐这个教程:
https://github.com/CrawfordGroup/Program ...

这个教程很多都没有代码啊
作者
Author:
wxhwbh    时间: 2020-12-10 11:11
chen-xl13 发表于 2020-12-10 10:31
这个教程很多都没有代码啊

github搜一下,很多人都写过
作者
Author:
yun    时间: 2021-1-24 17:12
wxhwbh 发表于 2020-10-9 19:40
你要是真的想学编程,又是做量化计算的,我非常推荐这个教程:
https://github.com/CrawfordGroup/Program ...

老师您好,请问一下有Python写的类似的教程吗,在哪个论坛可以搜到呢
作者
Author:
wxhwbh    时间: 2021-1-24 18:44
yun 发表于 2021-1-24 17:12
老师您好,请问一下有Python写的类似的教程吗,在哪个论坛可以搜到呢

记得以前论坛的某位老哥写过,github可能能搜到
作者
Author:
yun    时间: 2021-1-26 11:16
wxhwbh 发表于 2021-1-24 18:44
记得以前论坛的某位老哥写过,github可能能搜到

好的谢谢~
作者
Author:
乙酰胞壁酸    时间: 2021-1-28 18:09
笙歌落 发表于 2020-10-6 10:58
嗯嗯,那老师是理论与计算有机化学反应机理,酶催化反应机理,人工智能化学等等,似乎没人知道人工智能化 ...

建议去github上看看我记得有个挺高星的开源deeplearning chem项目
作者
Author:
笙歌落    时间: 2021-1-28 19:57
乙酰胞壁酸 发表于 2021-1-28 18:09
建议去github上看看我记得有个挺高星的开源deeplearning chem项目

好的,谢谢您,我搜搜
作者
Author:
笙歌落    时间: 2021-1-30 12:24
chrinide 发表于 2020-10-5 17:45
据我有限的经验,QC/CP领域的绝大多数程序主流都是Fortran/c/c++/,大部分还辅以Python做胶水前端。主流QC ...

matlab有必要学习一下吗?
作者
Author:
sobereva    时间: 2021-2-4 03:45
笙歌落 发表于 2021-1-30 12:24
matlab有必要学习一下吗?

没太大必要
作者
Author:
sobereva    时间: 2021-2-4 03:45
笙歌落 发表于 2021-1-30 12:24
matlab有必要学习一下吗?

Python弄溜了就没太大必要
作者
Author:
笙歌落    时间: 2021-2-4 18:19
sobereva 发表于 2021-2-4 03:45
没太大必要

好的,sob老师
作者
Author:
笙歌落    时间: 2021-2-4 18:22
sobereva 发表于 2021-2-4 03:45
Python弄溜了就没太大必要

嗯嗯,好的,谢谢sob老师,目前在学Python,语言简洁,十分有用,我很喜欢




欢迎光临 计算化学公社 (http://bbs.keinsci.com/) Powered by Discuz! X3.3