Chinaunix首页 | 论坛 | 博客
  • 博客访问: 92546528
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: C/C++

2008-04-15 21:31:55

    来源:Blog    作者:simonjp

Simulink与VC应用程序接口一个显著的特点就是Simulink仿真必须依赖于MATLAB系统,目前为止,MATLAB提供引擎方式将Simulink同VC应用程序的编程结合起来。要通过引擎方式将Simulink与VC结合起来首先要掌握VC与MATLAB通过引擎方式混合编程以及Simulink命令行仿真两方面的内容。

MATLAB引擎方式函数库

MATLAB引擎函数库是MATLAB提供引擎方式接口的一系列程序的集合,它允许用户用自己的C/C++语言或FORTRAN语言应用程序中对MATLAB进行调用,将MATLAB作为一个计算引擎使用,让其在后台运行,完成复杂的矩阵计算,简化前台用户程序设计的任务。

在用户启动MATLAB引擎时,相当了启动了另外一个MATLAB进程并在后台运行。应用程序通过MATLAB引擎函数库中提供的函数完成与MATLAB引擎之间进行数据交换和命令传送的任务。MATLAB引擎函数库总共提供了13个C语言的引擎函数,它们均在头文件engine.h中予以说明,所以在使用它们时,必须对该头文件进行包含。下面简要介绍引擎库中的六个基本库函数:

(1) engOpen

功能:启动MATLAB引擎。

语法:Engine* engOpen(const char* startcmd);

其中,startcmd为一字符串,用于启动MATLAB进程。在Windows中,startcmd必须为NULL。

(2) engClose

功能:退出MATLAB引擎。

语法:int engClose(Engine* ep);

其中,ep是Engine类型的指针。EngClose发出退出MATLAB命令,成功时返回0,否则返回l。

(3) engEvalString

功能:执行一个用字符串表示的MATLAB表达式。

语法:int engEvalString(Engine* ep, const char* string);

其中,string是命令字符串,该字符串必须是一个合法的MATLAB表达式。凡可在MATLAB命令窗口中执行的命令均可以字符串形式执行。

阅读(440) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~