第17章-fortran与其他语言

上传人:101****457 文档编号:95470314 上传时间:2019-08-19 格式:PPT 页数:10 大小:194.51KB
返回 下载 相关 举报
第17章-fortran与其他语言_第1页
第1页 / 共10页
第17章-fortran与其他语言_第2页
第2页 / 共10页
第17章-fortran与其他语言_第3页
第3页 / 共10页
第17章-fortran与其他语言_第4页
第4页 / 共10页
第17章-fortran与其他语言_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《第17章-fortran与其他语言》由会员分享,可在线阅读,更多相关《第17章-fortran与其他语言(10页珍藏版)》请在金锄头文库上搜索。

1、第17章 Fortran与其他语言,由于纯粹的Fortran语言在图形操作能力上的缺陷,为了使数值计算程序能够通过图形用户界面(GUI)与用户进行即时的交互,通常会采用多种语言混合编程的方式来处理。 不同的程序设计语言在处理不同的变量类型特别是子程序的参数传递处理方式上有很大的不同,只要在混合编程时注意变量类型和参数传递的处理方式,就能够充分利用不同程序设计语言的优势。Fortran语言在数值计算方面具有突出的优势,能够利用Fortran语言进行混合编程以提高数据处理方式的其他程序设计语言。包括:C/C+、Delphi、MASM、Visual Basic等。其中较为常见的是与MATLAB、Vi

2、sual Basic语言进行混合编程,提高这两种语言工具在进行大批量数据处理时的效率。 本节主要介绍Fortran语言同MATLAB、Visual Basic语言的混合编程方法以及编程过程中需要了解的一些注意事项。,17.1 Fortran与MATLAB,MATLAB的名称来源于Matrix Laboratory(即矩阵实验室),它是MathWorks公司开发的一款优秀科学计算软件。MATLAB将优秀的数值计算、符号运算和图形环境结合起来,广泛的应用于科学计算、控制系统、信息处理等领域的分析、仿真和设计工作之中。自1984年第一代MATLAB软件问世以来,MATLAB就一直在不断的发展和丰富,

3、功能和应用领域都有了很大的扩展。目前最新的MATLAB版本已经发展到了R2007b(7.5.0)版。 Fortran语言的一大弱点就是图形操作能力较差,通常需要借助别的程序设计语言或是利用编译器扩展来实现图形图像的操作。尽管MATLAB在工程和科研领域应用较多,而且图形处理能力相当突出,但是在一些规模较大的实际应用上面缺乏足够的效率。如果配合Fortran语言在数值计算方面的优势,加上MATLAB在图形显示方面的长处,则可以在Fortran程序中调用MATLAB的功能来实现计算结果的实时显示。,17.1.1 系统配置,在MATLAB中通过MEX文件来使用Fortran,需要对系统配置有一个必要

4、的了解:系统需要安装MATLAB应用程序的接口组件及相应的工具;使用的Fortran编译器必须能够支持32位的动态链接库(即能够编译生成Windows系统下的DLL文件或Linux系统下的O文件)。具备了上述基本软件条件后,还需要对MATLAB进行一些必要的配置。首先,在MATLAB命令行窗口中输入如下命令来对MEX文件的应用进行配置: mex -setup 接下来MATLAB会询问用户是否需要它自动定位已经安装的编译器: Please choose your compiler for building external interface (MEX) files: Would you lik

5、e mex to locate installed compilers y/n?,17.1.2 MEX文件的编写,配置成功MATLAB的外部文件接口之后,就可以使用Fortran语言编写MEX文件了。Fortran语言版本的MEX文件源程序主要由两大部分组成入口子程序和计算子程序。这两种子程序在外部文件接口程序中分别用于完成不同的任务,下面分别进行说明。 1入口程序和计算子程序 2MEX文件的实例一 3MEX文件的运行 4MEX文件的实例二 5MEX文件的实例三,17.1.3 MEX文件调用MATAB,Fortran语言的MEX文件除了可以调用Fortran源代码外,还可以通过MATLAB提供

6、的API函数mexCallMATLAB来完成对MATLAB内部函数、运算符、M文件的调用。,17.1.4 Fortran调用MATLAB,除了在MATLAB中通过MEX文件来调用Fortran源代码外,还可以通过对编译器进行设置来实现在Fortran中调用MATLAB引擎。这种应用通常用于Fortran语言作为计算前端进行数据的处理,而使用MATLAB作为图形处理或是其他处理功能后端的领域。这一类型的文件接口又被称为MAT文件。 1MATLAB引擎的配置 下面就来说明在系统中如何配置使用MATLAB引擎。首先也需要在MATLAB命令常口中使用如下命令来配置相应的环境: mex setup 2配

7、置Compaq Visula Fortran编译环境 3应用实例 4实例的运行 在Compaq Visual Fortran中编译通过上述程序代码或是在MATLAB命令行窗口中输入如下命令进行编译: mex f %MATLAB%binwin32mexoptscvf66engmatopts.bat %PATH%fengdemo.f,17.2 Fortran与VB,在视窗程序开发工具中,Microsoft公司推出的Visual Basic在易学性、易用性和开发速度方面的优势较为突出。配合使用Fortran编写计算内核,使用Visual Basic编写用户界面是工程开发中比较好的选择。而且使用Vis

8、ual Basic同样可以实现漂亮的图形显示结果,当然这需要对Visual Basic的图形编程较为熟悉。 微软公司开发的Visual Basic是相当流行的视窗应用程序开发工具。这是一个完全基于事件编程模式的可视化程序设计语言,在功能上已经远远超出了它的原型BASIC语言。目前该软件开发工具已经发展了好几版,最新的版本是Visual Basic 2008,该版本中的Express版是一个供个人用户免费使用版本,可以在Microsoft公司的主网上免费下载。,17.2.1 供VB调用的Fortran源代码,下面先给出将要在Visual Basic中应用的Fortran源代码,其中的各个子函数将

9、会分别用于处理变量、数组、字符串等常用数据类型。 (详细内容请参照本书) 上面的代码中总共编写了3类函数,涉及了程序设计中经常会遇到的变量、数组和字符串等基本数据类型的处理。Fortran语言在编译后会将过程名默认转化为大写的形式,如果不想采用这种形式,则可以在源代码中加入编译设置选项。 !DEC$ ATTRIBUTES ALIAS : “Calculate_Area” : CALCULATE_AREA 这段编译器设置语句的目的就是通过ALIAS选项将过程名CALCULATE_AREA改写成Calculate_Area。,17.2.2 VB中的管理代码,在Visual Basic中调用Fortran语言编写的过程时,只需要在声明过程时写清楚要调用的过程放在哪个DLL文件中,并且将参数的类型正确编写出来就可以了。 下面给出使用Visual Basic语言编写的主程序,该程序用于响应用户在图形界面上的输入,例如单击按钮、输入数据等,并负责调用正确的计算函数来进行相应的数值处理。,17.2.3 程序的运行说明,程序的初始运行界面如图所示:,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 其它中学文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号