登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
本帖最后由 普鲁斯特 于 2018-1-20 11:13 编辑
之所以想写这个帖子是因为看到很多人在系统升级win10之后还在使用Compaq Visual Fortran6.6——我之前win7也是一直用——不过都知道CVF这个开发团队早就解散了,最终版本也就是CVF6.6,过去十来年没有更新,未来也不会有更新。如此超龄服役的一款软件,真不指望还能适应新的计算机,很多人想尽办法安装,但不管怎样,CVF一定是会消失的。未来不是CVF的,它只属于过去。前段时间也下载了不同版本的Fortran编译器,像AbsoftFortran、SimplyFortran、Intel Visual Fortran等等,比较来比较去,决定弃用CVF,转投SimplyFortran。
不同的软件其实没有本质区别,它们都只是编译器而已,只要你会Fortran语言,那么使用任何一款软件都不会有问题。好比不同公司出的电脑,戴尔也好,联想也罢,只要是windows系统,只要你懂得windows操作,用哪个公司的电脑都没问题。
下面就简单谈谈我选择Simply Fortran的原因。
AbsoftFortran提供教育版本试用,目前版本是v2017.17.0.0,在win/OSX/Linux上都可以使用,大小370M。
Intel Visual Fortran需要安装VisualStudio,个人感觉VS占用系统资源比较多,又很难卸载。
Simply Fortran 是Approximatrix公司出的,基于Gfortran内核,2017年4月6日发布了版本v2.3.6,集成了Aplotplotting library,全平台通用。也就是不管你是在运行XP系统,还是win7 32位、64位,Simply Fortran全部支持,当然必然支持win10。安装包大小只有75M,但麻雀虽小,五脏俱全,完全够用。购买之后,还会提供大量函数库之类。有钱的话,不妨购买正版。 ======================最新版本信息(持续更新)======================== 2018年1月20日。终于又更新了。。。 10月26日,版本v2.40。大幅改善了windows 平台下fortran运行的性能。 7月10日,版本V2.3.8。主要是集成环境速度显著提升以及bug修复,改进各平台运行的稳定性。另外,之前编译程序是要再打开一个标签页,这个版本和其他开发环境,如CVF 、IVF等一样,都是在程序最下方显示编译结果了。
5月12日发布了版本V2.3.7,依然是全平台更新。带来了LAPACK和BLAS库,这个库就是线性运算相关库,Matlab底层就是LAPACK(具体怎么使用这两个库,我还没有琢磨清楚。。。也希望用过的进来交流下)。另外编译器内核升级到了GNU Fortran7.1.0。上个版本的Aplot也进行了一些改进。该版本windows安装包为86M。下载链接也附上了。 =================================分隔线=======================
Simply Fortran相对于CVF有显著的优点。
1、 界面美观。支持Fortran语法高亮,当然也可以自定义语法高亮显示。默认界面如下:
有没有感觉其实和CVF还是很像的?语法高亮如下:
2、支持实时语法检查。支持函数实时说明。在输入语句时,如果有错误,会以红色波浪线标示,鼠标放过去提示错误原因,如果语句中有未声明的变量,或未使用的变量,会以黄色波浪线标示。鼠标放到函数上时,会显示这个函数的用法。
3、支持语法补全。个人感觉这个功能很是实用。
4、运行速度快。我比较了下,同样EOF程序在SimplyFortran下运行和在CVF下运行,结果SimplyFortran运行速度快。
5、运行过程干净。不会像CVF那样产生.opt .dsp.dsw .plg等文件,直接就是生成.exe,除此之外就没有其他过程文件生成了。
6、在更新了v2.3.6之后,可以直接用SimplyFortran画图。画图工具千千万,不一定要用这个,不过有的话,偶尔用一下也挺不错。程序代码我也附上了。
program ranmean use aplot implicit none type(aplot_t)::plot real, dimension(1000)::x, rand_y, mean_y integer::i call RANDOM_NUMBER(rand_y) doi = 1, 1000 x(i) = real(i) mean_y(i) = sum(rand_y(1:i))/x(i) end do plot = initialize_plot() call set_title(plot, "Uniform Random Numbers") call set_xlabel(plot, "Sample") call set_ylabel(plot, "Value") call set_yscale(plot, 0.0, 1.2) call add_dataset(plot, x, rand_y) call set_seriestype(plot, 0, APLOT_STYLE_PIXEL) call set_serieslabel(plot, 0, "Random Number") call add_dataset(plot, x, mean_y) call set_seriestype(plot, 1, APLOT_STYLE_LINE) call set_serieslabel(plot, 1, "Running Mean") call display_plot(plot) call destroy_plot(plot) end program ranmean
Simply Fortran 体积这么小还能又这么优秀的表现,我觉得很不错了。所以win10 64位装不上CVF的、不想折腾IVF的童鞋,也不要纠结了,建议直接上SimplyFortran吧!
两个注意事项:
1、 SimplyFortran没有education版本,所以只能走和谐路线。在SimplyFortran官网下载好最新版本后,可以在Fortran Coder网站上找2.17版本,里面有和谐之法,一样可以破解最新版。但这样做还是不能直接使用官网的函数库,不过也没关系。
2、 在CVF中经常使用的‘form=‘binary‘’语句、‘pause’语句,在此并不适用,要尽量采用f90以上规范语法,也是养成良好的编程习惯吧。 读取二进制文件,使用form=’unformatted,access=’stream’,即流文件读取。
可能还有一些我没发现,希望有更多童鞋可以选择SimplyFortran,大家一起交流学习。 ==========================新版本特性写在下面了========================
|