Mac上Fortran环境搭建

简介

这里介绍一下如何在Mac 10.14 Mejave上搭建Fortran环境。其它版本应该一样。

使用Fortran可以说是迫不得已,因为很多古老的(几十年前)的程序,尤其是一些模式分析领域很多程序都是Fortran写的,如今需要使用这些模式,不得不学一下曾经辉煌过,现在没落的Fortran。关于它的更多介绍网络上很多。
下面是来自百科中的一段解释。
ORTRAN语言是Formula Translation的缩写,意为“公式翻译”。它是为科学、工程问题或企事业管理中的那些能够用数学公式表达的问题而设计的,其数值计算的功能较强。
FORTRAN语言是世界上第一个被正式推广使用的高级语言。它是1954年被提出来的,1956年开始正式使用,直到2014年已有六十年的历史,但仍历久不衰,它始终是数值计算领域所使用的主要语言。

编译器GFortran的安装

有多个Fortran的编译器可以选择,这里还处于摸索之中,先使用相对流行的G Fortran。
Wiki上可以找到GFortran的下载。因为要在MacOS上安装,所以选择相应版本。
在这里插入图片描述

安装方式有好几种,相比网上搜索的时候都可以看到不完整的介绍。这里我选择下载dmg安装包,手工安装,并没有使用brew或者macport。
在这里插入图片描述
在github上下载对应系统的版本进行安装。
在这里插入图片描述

常规软件安装方式。
在这里插入图片描述

测试

安装成功:
在这里插入图片描述

MacVIM安装

这个文本编辑器软件不是必须安装,不安装也行。
什么是VIM:Vim是一个类似于Vi的著名的功能强大、高度可定制的文本编辑器,在Vi的基础上改进和增加了很多特性。
什么是Mac VIM:MacVim是在Vim基础上实现的完整的Cocoa用户界面。MacVim 支持很多 Mac OS X 原生的界面特性,比如工具栏、滚动条、全屏显示、Mac 菜单快捷键的绑定等。

下载MacVim手动安装。
在这里插入图片描述
在这里插入图片描述

第一个Fortran程序

写下我们的第一个Fortran程序,并将后缀名命名为f。

program hello
print *, "Hello World"
end program hello

在这里插入图片描述
在终端中准备运行。
指定执行目录,否则会生成到其它路径。
打开终端输入,语法:

cd 输入路径回车(可以把自己想设置的路径文件直接拖拽到cd 后面,注意有空格)

继续在终端输入命令,生成可执行文件nihao:

fortran hello.f90 -o nihao

继续输入,或者直接在文件夹中打开nihao就可以看到如下效果:

./nihao

效果:
在这里插入图片描述

Fortran基础语法笔记

Fortran 编程中相关文件后缀
在这里插入图片描述

生成可执行程序

传统的 Fortran 程序(也就是以 Fortran 77 为代表的)只能用大写字符书写,而且每行前六个字符为特定用途所保留。第一列为字符 C 或 * 所保留,用来表征整行都是注释。第二列到第六列是为标号预留的。代码从第七列开始,到72列结束(73列及以后将被直接忽略,可作注释)。更多信息可参考:https://www.cnblogs.com/djcsch2001/archive/2012/01/12/2321062.html
下面是示例程序 采用的是传统的 Fortran 格式:

PROGRAM HELLOWORLD
WRITE(*,10)
FORMAT('hello, world')
END PROGRAM HELLOWORLD
      

编译器 gortran 并不要求所有代码都大写──程序中任何关键词都可以用小写字母。下面的命令将该程序编译成可执行文件:

$ gfortran helloworld.f -o helloworld

注意到:gfortran 默认会将 .f, .for, .fpp, .ftn, .F, .FOR, .FPP 和 .FTN 结尾的文件作为固定格式处理,而将.f90, .f95, .f03, .F90, .F95 和 .F03 结尾的文件作为自由格式来处理。
如果我们将上面程序文件重命名为 helloworld.f90,那么我们必须手动指定其为固定格式:

$ mv helloworld.f helloworld.f90
$ gfortran helloworld.f90 -o helloworld

Fortran 90及以后的标准允许并鼓励用自由的格式书写 Fortran 代码。注释以感叹号(!)开始直到行尾。先前的程序采用自由格式重写如下,其中语句、标号都可从任一列开始。

至此GFortran的安装和测试完毕,接下来如果有新的内容会继续和大家分享。

猜你喜欢

转载自blog.csdn.net/wokaowokaowokao12345/article/details/107943771