首页 理论教育 Delphi和Matlab数据接口实现

Delphi和Matlab数据接口实现

时间:2023-06-01 理论教育 版权反馈
【摘要】:而Delphi正可以弥补这一方面的不足。因此,如何将Delphi和Matlab两者进行结合是系统实现的一项关键技术。下面举一个简单的例子来说明Delphi和Matlab如何通过.M文件进行交互。通过这个简单的实例可以看出,利用.M文件形式进行Delphi和Matlab混合编程的中转载体,方法比较直观,在运行调试的时候可以较方便地传递数据的内容,且思路简单通用,无论用何种语言和Matlab混合编程都可以套用此种形式。图7.10Delphi和Matlab交互的执行结果图

Delphi和Matlab数据接口实现

由于项目风险元传递理论大部分是借助Matlab软件进行计算的,Matlab拥有强大的科学计算能力,本身已经含有很多成熟的复杂算法,但其人机对话界面不够友好,难以普及使用。而Delphi正可以弥补这一方面的不足。因此,如何将Delphi和Matlab两者进行结合是系统实现的一项关键技术。

Matlab输入数据的方法很多,其中最常用的是利用.M文件将所需要执行的命令引入到Matlab中予以执行的方式,在Matlab运行时只要将该.M文件放入Matlab所识别的执行路径列表所在的目录后,在Matlab环境中输入该.M文件的文件名,Matlab则会自动按照.M文件中的语句顺序执行,.M文件同时也可以利用文本编辑器按照普通文本进行编辑,而Delphi中提供了对文本文件进行操作的一般方式。因此,利用.M文件作为载体和Delphi进行数据交互是较为简单和方便的一种方式。下面举一个简单的例子来说明Delphi和Matlab如何通过.M文件进行交互。

【例7.1】 在项目风险元传递的计算机实现中,有对正态分布情况下风险元概率密度分布的Matlab作图实现,其文件名为norm_pdf.m。其中的代码如下(按照Matlab的注释方法,用%表示注释语句):

图7.9 Delphi和Matlab交互简单实例的界面制作

以Delphi 7.0为例,启动Delphi程序,在出现的默认工程的初始窗体Form1中放置两个标签(Lable1和Lable2),依次设置其Caption属性为“均值”和“标准差”;两个文本框(Edit1和Edit2),其中Edit1作为均值的参数a输入框,Edit2作为标准差的参数b输入框。添加一个按钮(Button1),将其Caption属性设置成“正态风险元概率密度绘图”。适当调整窗体和每个控件尺寸,完成一个简单的界面布局,如图7.9所示。(www.xing528.com)

若想在界面上输入参数后,通过点击按钮利用上述norm_pdf.M文件进行绘图,需要填写按钮的执行代码如下(按照Delphi程序中的注释方法,用//表示注释内容):

程序编译执行后,在Edit1和Edit2中分别输入0和1,点击该按钮后的效果如图7.10所示。该效果与启动Matlab程序后,输入“a=0;b=1;norm_pdf”后执行的效果相同。

通过这个简单的实例可以看出,利用.M文件形式进行Delphi和Matlab混合编程的中转载体,方法比较直观,在运行调试的时候可以较方便地传递数据的内容,且思路简单通用,无论用何种语言和Matlab混合编程都可以套用此种形式。但由于.M文件只有在Matlab集成环境中才能被识别和自动执行,因此不能脱离Matlab的集成环境。

图7.10 Delphi和Matlab交互的执行结果图

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈