爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
123
返回列表 发新帖
楼主: jiayoufu

[求助] 如果精通fortran,不学python能满足气象方面的研究编程需要吗?

[复制链接]

新浪微博达人勋

发表于 2023-8-16 19:16:57 来自手机 | 显示全部楼层
圈圈圆圆圈圈 发表于 2023-07-31 09:59
我个人感觉,Fortran属于不会没什么,但会一下更好。

如果你的研究需求就是处理简单txt、二进制数据,那完全OK
但如果你的研究目的是做很多专业性很高的计算,
除非你数理基础牛到了一个地步,不然Fortran是完全不够用的
举个简单的例子,你会用Fortran编程计算涡度和散度吗?
其实很多学生根本不会算,也不理解这两个概念的计算方法,那这时候,学个其他语言就很有必要了
比如GrADS、NCL、python都可以通过函数就得到这两个数据
再难一些的,计算锋生函数这类就更难了。
当然,什么东西学到精通都很牛,但Fortran想牛起来,还要结合很多其他的素质,例如高数和物理。

就我个人而言,我已经有七、八年的编程基础了,对常用的语言有一些了解。
在此给跟我一样的数理渣提供几个建议:
(1)对于简单的数据处理及简单绘图:可以只会Fortran+Excel。但能实现的目标有限,数据处理基本就是文本数据,能出的图就是折线、柱状、风玫瑰图这类的。但Fortran胜在计算功能强大,大量数据+大量do循环的debuff对Fortran来说都造不成影响,出结果速度一级快。

(2)对于有更高需求的气象研究er,我推荐如下组合:
①Fortran+GrADS,适合需要快速入门和上手的研究er,GrADS出图简单,有很多常用的统计和气象函数,但终究是后劲不足,想要学到精通有一定难度,处理十进制和grib数据也比较麻烦,想要把图调整更好,还需要参考本论坛大佬的帖子。
②NCL,本人目前主要的阵地,NCL是气象领域比较专精的语言,出图效果嘎嘎好,一些中等及以上的需求都可以实现,类似泰勒图、SVD、EP通量、路径轨迹这些常见但不一定多用的方法处理都很简单。最重要的是,它可以处理常见的格点气象数据格式,例如netCDF,grib和hdf,也可以处理txt、二进制这类的站点数据,但貌似不能处理excel。这类语言的缺点就是不适合用很多do循环,编程菜鸡在优化程序上面可能会有一些困难。
③Matlab,学到精通那真的是嘎嘎牛,毕竟Matlab的意思就是“矩阵实验室”,在数据处理方面真的没的说。但缺点就是绘图美观性有待提升,也可能是我还没有掌握这个语言的精髓,总之不是我常用的语言。
④Python,太多人提了,但是用不用还是要结合你的研究目的。如果楼主未来有挑战机器学习和深度算法的想法,那Python一定是绕不开了。如果只是数据处理+绘图,它在数据处理和绘图上,我认为不如NCL的性价比高。Python虽然很强大,但也不一定适合每一个人。

其他的还有R\MeteInfo\Origin\Suffer都有很多人应用,我对这些了解不多,不太好评价。
总之编程语言选择这个事儿,确实是仁者见仁,智者见者。
你可以把其中一样学到精通,也可以各个语言都了解一些。
我是NCL+Fortran+GrADS+Python+Matlab都能用一些,但最后还是根据目标去选择合适的语言处理任务。
其他人的建议可以参考,但终究要根据自己的研究方向、研究目的和学习能力去选择。

斗胆纠正一点点,NCL是可以处理Excel数据的
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2023-10-19 10:48:36 | 显示全部楼层
lqouc 发表于 2023-7-31 16:29
真的精通fortran的话科研肯定是没问题的。不过,至于学习其他语言,看需求吧,没有需求学了也会很快忘记。
...

深有体会,平时不咋用,学点就忘了。
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表