正在加载图片...
China-pub.com 下载 第15章 MATLAB与其他编程语言结合 MATLAB可以和其他编程语言一起使用,可以调用FORTRAN或C程序。反过来 FORTRAN或C也可以调用MATLAB程序。这样,快速的编译程序就可以利用MATLAB中强大 的矩阵或图形命令,通过编写部分的C或FORTRAN程序,并进行编译,就可以避免MALTAB 程序的瓶颈现象。 MATLAB还可以结合使用其他的应用程序,如Microsoft Word for Windows。这将在本章 的最后一节讨论,这主要取决于计算机的系统和安装的应用程序。 15.1介绍MATLAB和FORTRAN或C MATLAB可以被FORTRAN或C语言程序调用,它也可以调用FORTRAN或C语言程序。 如果MATLAB程序运行速度很慢,后者对此很有用。因为MATLAB是一个解释性语言,所以 当运行程序时就是解释它的命令。这样有时会导致程序的运行速度很慢,如fOr-loops循环。 在FORTRAN77和C中可以使用MATLAB库,也可以用FORTRAN90或C+对它们进行链接。 除非特别需要,一般不推荐编写FORTRAN或C程序。MATLAB的优点在于可以用高级的 形式描述出操作,而程序员不必担心循环的次数和一些其他细节问题。 被MATLAB调用的程序必须在编译后转换成MEX文件,这样才能被MATLAB调用。在编 译时它们和M文件一样使用。 在2.8节中讲到了由MATLAB创建的二进制文件。它们是以MAT文件形式被调用的,在C 或FORTRAN语言的库中有用来读和写二进制文件的程序。注意,这些文件可以在不同的平台 间传递,例如,用户可以读取在Windows环境下建立的MAT文件到UNIX环境中。在15.4节中 介绍了如何在MATLAB中读或写其他的二进制文件。这对有特殊格式要求的程序很有用。 MATLAB编译器、C数学库和C++数学库可以从MathWorks公司买到。首先可以作为自动 MEX文件生成器或C源代码生成器使用,结合C数学库一起生成应用程序。 在C中编写MATLAB程序,数据通过指针来访问。在其他编程语言中调用MALTAB程序, 就要求使用指针。 在MATLAB5中,所有变量类型,如标量、向量、矩阵、字符串、细胞矩阵和结构,都 以mxArrays形式来保存,所有的数据操作都通过这些mxArrays来完成。 MATLAB5中新的数据类型,也就是多维数组、细胞矩阵和结构只能在C中使用,而不能 在FORTRAN中使用。 在C或FORTRAN中使用的MATLAB程序主要分四类: mx 可操作的mxArrays。 mat MAT文件。 eng MATLAB工程文件。 mex MEX程序,在MALTAB环境中完成一些操作的程序。 在下面几节中将举一些例子。这些例子基本上说明了MATLAB和C或FORTRAN是如何相下载 第1 5章 M AT L A B与其他编程语言结合 M AT L A B可以和其他编程语言一起使用,可以调用 F O RT R A N或C程序。反过来 F O RT R A N或C也可以调用M AT L A B程序。这样,快速的编译程序就可以利用 M AT L A B中强大 的矩阵或图形命令,通过编写部分的 C或F O RT R A N程序,并进行编译,就可以避免 M A LTA B 程序的瓶颈现象。 M AT L A B还可以结合使用其他的应用程序,如 Microsoft Word for Wi n d o w s。这将在本章 的最后一节讨论,这主要取决于计算机的系统和安装的应用程序。 15.1 介绍M AT L A B和F O RT R A N或C M AT L A B可以被F O RT R A N或C语言程序调用,它也可以调用 F O RT R A N或C语言程序。 如果M AT L A B程序运行速度很慢,后者对此很有用。因为 M AT L A B是一个解释性语言,所以 当运行程序时就是解释它的命令。这样有时会导致程序的运行速度很慢,如 f o r- l o o p s循环。 在F O RTRAN 77和C中可以使用M AT L A B库,也可以用F O RTRAN 90或C + +对它们进行链接。 除非特别需要,一般不推荐编写 F O RT R A N或C程序。M AT L A B的优点在于可以用高级的 形式描述出操作,而程序员不必担心循环的次数和一些其他细节问题。 被M AT L A B调用的程序必须在编译后转换成 M E X文件,这样才能被M AT L A B调用。在编 译时它们和M文件一样使用。 在2 . 8节中讲到了由M AT L A B创建的二进制文件。它们是以 M AT文件形式被调用的,在 C 或F O RT R A N语言的库中有用来读和写二进制文件的程序。注意,这些文件可以在不同的平台 间传递,例如,用户可以读取在 Wi n d o w s环境下建立的M AT文件到U N I X环境中。在1 5 . 4节中 介绍了如何在M AT L A B中读或写其他的二进制文件。这对有特殊格式要求的程序很有用。 M AT L A B编译器、C数学库和C + +数学库可以从M a t h Wo r k s公司买到。首先可以作为自动 M E X文件生成器或C源代码生成器使用,结合C数学库一起生成应用程序。 在C中编写M AT L A B程序,数据通过指针来访问。在其他编程语言中调用 M A LTA B程序, 就要求使用指针。 在M ATLAB 5中,所有变量类型,如标量、向量、矩阵、字符串、细胞矩阵和结构,都 以m x A r r a y s形式来保存,所有的数据操作都通过这些 m x A r r a y s来完成。 M ATLAB 5中新的数据类型,也就是多维数组、细胞矩阵和结构只能在 C中使用,而不能 在F O RT R A N中使用。 在C或F O RT R A N中使用的M AT L A B程序主要分四类: m x 可操作的m x A r r a y s。 m a t M AT文件。 e n g M AT L A B工程文件。 m e x M E X程序,在M A LTA B环境中完成一些操作的程序。 在下面几节中将举一些例子。这些例子基本上说明了 M AT L A B和C或F O RT R A N是如何相
向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有