点击上方“科研充电宝”,可以添加关注。 

 

Linux是一个非常简洁、高效的操作系统,其命令行工作方式更是十分强大。

 

相比WindowsMac这种“娱乐型”操作系统,Linux非常适合科学计算。

 

Fortran作为历史上最先出现的高级编程语言,最初就是为科学计算量身定做的。

 

它天生拥有高效的向量/矩阵操作,能够优化为非常高效的代码。

 

一般而言,其运行速度为1.2C语言的速度。

 

下面记述Linux下用Fortran进行科学计算的各个方面。

 

所选用的软件除Intel编译器外均为开源软件,闭源软件,特别是商业软件不予采用。大多数软件都支持Linux/Windows/Mac等平台。 

 

1. 编译器


(1) GNU Fortran

GNU项目的Fortran编译器,属于GNU编译器集合(GCC)之一。

 

目前支持大部分Fortran2008标准,并几乎完整支持Fortran2003. 包含在各大发行版的软件仓库中。

 

(2) Intel Fortran

Intel久负盛名的Fortran编译器ifort,内涵Intel数学核心库(MKL)。

 

其编译后的代码运行效率之高为业界之最。虽为闭源软件,但用于非商业目的则可免费使用。在下面地址http://software.intel.com/en-us/articles/non-commercial-software-download/下载IntelFortran Composer XE for Linux,授权文件将通过email获得。

 

安装只需root身份运行install文件,并在指定的步骤提供授权文件即可。 

 

2. 编辑器Vim / Emacs



Linux中超强大的两个文本编辑器,二者强大程度不相上下,一起被看作是高手的标志

 

操作起来与一般文本编辑器的直观方式不同,起初显得难以上手,但一旦熟悉就会极大地提高工作效率。包含在软件仓库中。 

 

3. 调试器


(1) GDB

GNU的调试器,命令行操作方式,功能强大又方便。包含在软件仓库中。

 

(2) IDB

Intel的调试器,包含在其编译器中一起下载安装。提供了图形界面的调试工具。 

 

4. 开发环境



(1) Code::Blocks

一个很好的C++/Fortran开发环境。包含在软件仓库中。

 

(2) Eclipse / Photran

Eclipse是一个基于Java的多语言集成开发环境,使用非常广泛,包含在软件仓库中。

 

Photran是它的Fortran插件,需单独下载,并在eclipse中通过安装插件的方式安装。 

 

5. 数据读写CDI

一个由德国马克思-普朗克气象研究所开发的科学数据读写库,为NetCDFGRIBHDFEXT等多种数据格式提供了统一的编程接口,有CFortran版。

 

还提供了一个名为libs4cdo的程序包,用于提供上面几种格式底层库及其他依赖环境的安装。

 

著名的气象数据运算子(CDO)软件就是基于它编写的。 

 

6. 数值计算/算法


(1) LAPACK

久负盛名、久经考验的线性代数运算库,已经成为许多数值计算软件的基础。包含在软件仓库中。

 

(2) GSL / FGSL

GSLGNU的科学计算函数库,用C语言编写,也兼容C++

 

提供了非常多的数学计算函数,涵盖了科学计算的各个方面,如随机数、微分方程、矩阵分析、特殊函数、统计等等。包含在软件仓库中。

 

FGSL是它的Fortran接口,需单独下载安装。在某些编译器上可能存在问题。

 

(3) Muesli

一个用Fortran95写成的矩阵运算库和绘图库。提供了一个矩阵类,以及类似于Matlab的矩阵操作。并同时有一个类似于Matlab的绘图库 

 

7. 科学绘图


(1) PLplot

非常强大的科学绘图库,提供了C/C++FortranPythonOctaveJava等多种语言接口,能够在X系统、Tcl/TKwxWidgets窗口上显示,并能输出为多种位图(如GIFJPEGPNG)和矢量图(如EPSSVGPDF格式。包含在软件仓库中。

 

(2) Muesli

如上

 

(3) MathGL

非常强大的多语言科学绘图库,其绘图能力甚至超过PLplot,绘制的图形非常精美。

 

(4) DISLIN

德国马克思-普朗克太阳系研究所开发的科学绘图库,提供了PerlJavaPythonC/C++Fortran接口。图形质量一般。 

 

8. 图形界面GTK-Fortran



Fortran下进行GUI开发一直是一个大问题。

 

因为Fortran专注于科学计算,更加看重程序的可靠性和计算效率,而不侧重于图形界面

 

只有Windows中的Compaq Visual Fortran在微软基础类库(MFC)的基础上提供了初级的图形界面能力。

 

Fortran2003标准发布以来,由于FortranC之间的绑定交互成为可能,Fortran也就具有了利用C/C++的图形界面类库进行GUI编程的潜力。

 

GTK-Fortran就是利用了C语言的GTK+图形界面类库。目前该项目已经基本完成并经过大量测试可用。 

 

9. 论文写作LaTeX

计算机排版的事实标准。采用类似宏编程的方式进行文档写作和排版,虽不如LibreOfficeMicrosoft Word等所见即所得的Office工具来的直观,却具有这类软件无法比拟的高水平的排版效果


本文转自网络,版权归原作者所有。如涉及版权等问题,请立即联系我们予以更改或删除,保证您的权利。

(END)

1论文写作

论文查重:防止被查重系统误伤的几个注意事项

研究生第一篇学术论文常犯问题总结

写论文和报告容易犯的低级错误
论文写作应该注意的八个细节
SCI投稿全过程信件模板
发表SCI论文有哪些实用工具?

2实用妙招

编辑公式效率太低?来看MathType的重要技巧
如何把图片格式的Pdf转化为可编辑的Word?

如何使用Matlab将其画出的图片,直接生成PPT?

21个最出名最好用的免费电子书下载网站

搜不到专业的资料、文献和数据?用这些网站试试

Google学术网址打不开如何愉快地科研?

3作图技巧

你一定要知道的十款主流画图软件

如何把别人论文中的曲线图,自动转化为数据点?

高级版:如何从别人论文的曲线图中获取数据点?

如何画出会动的曲线图?作图技术进阶之必备技能

如何在横纵坐标、标题上显示公式或特殊符号?
Matlab导出高清图片的正确方法

4编程技巧

最常用的10个Matlab快捷键
最值得学习的Matlab参考书有哪些?
如何只用一个小时实现Matlab的快速入门?
媲美Matlab的神器——Python语言的十本入门经典
Matlab数学建模算法全收录,数学建模比赛必备

Matlab中提高m文件执行效率的小技巧

5技术宅

买西瓜的高级玩法,用好你的智能手机
家里没人怎么防火防盗?装上这段自动看家程序
半夜看小说伤眼睛怎么办?
放学快走,你的电脑在实验室自己喊啪嗒!
如何利用普通计算器求解高次方程的解

手机还能干这事?以后再也不担心忘带激光笔了


回复“热门”查看更多信息

科研充电宝

3M君,清华博士一枚,不定时po一些科研干货、论文写作中的经验教训、作图技巧、技术宅和好玩的东西。喜欢这篇推送的话,欢迎点赞、评论和转发哦~


交流及合作,请添加个人微信:claudemmm,并注明联系事由。








相关问题推荐