网站位置: >> 论文 >> 本科论文 >> 免费论文范文阅读

参考文献有关毕业论文怎么写,关于VC++与Matlab混合编程实现光场光强的三维显示相关毕业论文开题报告

此文是一篇参考文献论文范文,参考文献有关论文范文素材,与VC++与Matlab混合编程实现光场光强的三维显示相关毕业论文开题报告。适合不知如何写参考文献及现代电子技术及引擎方面的本科论文专业大学硕士和本科毕业论文以及参考文献类开题报告范文和职称论文的作为写作参考文献资料下载。

摘 要:基于VC++开发环境和Matlab引擎函数,实现了激光衍射光场光强的三维动态显示.给出了实现过程和实验结果并进行了讨论.

关 键 词:VC++;Matlab;引擎函数库;三维显示;衍射

中图分类号:TP391文献标识码:B文章编号:1009-3044(2012)08-1906-03

VC++与Matlab混合编程实现光场光强的三维显示参考属性评定
有关论文范文主题研究: 关于参考文献的论文例文 大学生适用: 硕士论文、本科论文
相关参考文献下载数量: 90 写作解决问题: 写作资料
毕业论文开题报告: 论文任务书、论文结论 职称论文适用: 论文发表、职称评中级
所属大学生专业类别: 写作资料 论文题目推荐度: 最新题目

TheRealizationofThreeDimensionDisplayofOpticalFieldbyMixedProgrammingofVC++andMatlab

YANGRu-chao

(SchoolofElectricalEngineering,TonglingCollege,Tongling244000,China)

Abstract:ThreedimensiondynamicdisplayoflaserdiffractionlightintensityisrealizedbythemethodbasedonthedevelopmentenvironmentofVC++andenginefunctionsofMatlabinthepaper.Therealizationstepsandtheresultarepresentedandtheresultisdiscussed.

Keywords:VC++,Matlab,enginefunctionslibrary,threedimensiondisplay,diffraction

科研与工程实际中常常需要实时测量光场的光强分布规律,目前市场上尚无这方面的测量设备,本文结合实验室已有的设备进行了进一步开发,开发中采用了面阵CCD技术以及VC++与Matlab混合编程技术.

1MATLAB与VC++应用程序接口

1.1MATLAB与

关于VC++与Matlab混合编程实现光场光强的三维显示的硕士学位毕业论文范文
参考文献有关论文范文素材
VC++应用程序接口

MATLAB与VisualC++之间有4种常见的接口:

1)在VisualC++程序中利用MATLAB引擎来调用MATLAB函数;

2)将MATLAB程序编译成MEX文件,与VC程序进行链接;

3)VisualC++程序直接利用MATLAB数学库调用MAILAB函数;

4)将MATLAB下的.m文件转换成VC可调用动态链接库(DLL).

方法1)、2)生成的程序需要在安装了Matlab软件的系统中运行,而由方法3)、4)生成的程序可以脱离Matlab环境.

本文采用的是方法1),即VisualC++调用MATLABengine.MATLABengine是一组函数,通过调用这组函数,用户可以在程序中实现对MATLAB的控制,完成计算或者绘制图形的任务,此时MATLAB软件就相当于一个计算引擎.


该文来源:http://www.svfree.net/benkelunwen/060358928.html

1.2MATLAB引擎程序建立


如何写参考文献硕士学位论文
播放:30173次 评论:4206人

下面介绍如何在C/C++中调用MatlabEngine

1)在工程中加入MatlabEngine的头文件路径和库文件路径

在菜单中选择Tools->Options->Directories,添加engine.h所在的路径,在笔者的计算机上路径是D:\MATLAB6p5\extern\include.类似的,在这个对话框的“Showdirectoriesfor:”下拉菜单中选择LibraryFiles,然后添加库文件的路径,路径是D:\MATLAB6p5\extern\lib\win32\microsoft\msvc60.

2)接下来设定工程属性,在菜单中选择Project->Settings->Link,在Object/LibraryModules中加入库文件链接libmx.lib,libmex.

lib,libeng.lib.

程序执行时后台会启动一个Matlab进程,这是与Client通信的Server端,如果希望隐藏这个窗口,需要在代码中加入这样一句:

engSetVisible(ep,0),

1.3MATLAB引擎函数

在Matlab引擎函数库中,共提供了13个C语言引擎函数.这些引擎函数在头文件engine.h中进行了声明.下面是6个常用引擎函数:

1)engOpen:启动Matlab引擎;

2)engClose关闭Matlab引擎;

3)engGetVariable:从Matlab工作空间中获取一个变量;

4)engEvalString:执行一个用字符串表示的Matlab表达式;

5)engOutputBuffer:确定存放Matlab输出结果缓冲区域;

6)engPutVariable:将mxArray结构体类型变量输送到Matlab工作空间中,并命名mxArray结构体类型变量.

2三维显示程序的创建

该研究的应用背景立足于激光衍射光场光强的三维图像信息的抽取,需要进行三维图像的显示和数字滤波的实现.在Matlab的运行环境下,三维图象的显示只需要一个函数mesh()就可以实现.假设图象数据存放在iTemp二维数组中,VC与Matlab间的数据交换是通过Matlab引擎进行的.Matlab提供一种专门的对象类型数组mxArray完成数据传递的任务.这里注意的是Matlab的数据是按列存储的.部分程序如下:

inti,j,

doubleiTemp[300][740],

doublearray[740*300],

Engine*ep,

mxArray*T等于NULL,

//将二维数组iTemp的数据存储到一维数组array中f

or(i等于0,i<300,i++)

for(j等于0,j<740,j++)

array[j+i*740]等于iTemp[i][j],

//开始启动matlab引擎

if(!(ep等于engOpen(NULL)))

{

MessageBox((HWND)NULL,(LPSTR)"Can’tstartMATLABengine",

(LPSTR)"VC_MATLAB",MB_OK),

exit(-1),

}

//矩阵的构造与赋值

T等于mxCreateDoubleMatrix(740,300,mxREAL),

memcpy((char*)mxGetPr(T),(char*)array,740*300*sizeof(double)),

//将变量T输入到matlab工作空间

engPutVariable(ep,"T",T),

//通过matlab引擎库的库函数engEvalString()调用内建的绘图函数

engEvalString(ep,"mesh(T.’),"),

//关闭matlab引擎

engClose(ep),

//析构结构体变量T

mxDestroyArray(T),

3实验结果与讨论

实验装置见图1,选用交流电子稳压电源,可以提高激光器的稳定性.用偏振光减光器来调节激光光强,以便于CCD器件的采集.为了得到较好质量的三维光强分布曲线,可以在单缝与激光器之间放入一个小孔光阑限制激光束的大小.实验在暗环境中进行.光屏与单缝之间的距离尽可能的满足远场条件,缝宽在0.05~0.1mm时,Z>1m即可,这样就可以得到近似的夫琅和费衍射.

图1测量装置示意图

上述三维显示程序是整个系统软件的一个部分,我们采用CCD摄像头对单缝衍射光场进行采集,再通过调用三维显示程序,就可以很形象的显示出三维光强分布,如图2,Z轴表示衍射光场光强的灰度值大小,X轴和Y轴表示衍射光场的列数与行数.通过工具栏上的旋转按钮可以进行任何视点角度的观察.调用三维显示程序,能更准确,快速,方便的定量描述光的衍射.

从图2可以得知,当x等于0时,光强为 主极大值,光强最强,说明绝大部分的光能都落在 明纹上,暗条纹是以 明纹为对称轴的左右对称分布的, 明纹两侧的亮纹强度逐次减弱,除了一级亮纹和二级亮纹之外,其他级次的亮纹都不明显,近似为0.

图2激光衍射光强三维图

4小结

混合编程是综合使用多种开发工具技术优势的一种常用手段,本文通过对VC++和Matlab的集成开发,实现了对二维衍射光场光强的三维效果显示.Matlab具有强大的信号处理函数库能实现信号生成、信号重抽样、各种积分变换等,对衍射光场光强的数据的进一步处理提供了极大的方便.

参考文献:

[1]王素立.MATLAB混合编程与工程应用[M].北京:清华大学出版社,2008.

[2]苏金明.MATLAB与外部程序接口[M].北京:电子工业出版社,2004.

[3]李卓,李益民.Matlab与VC++混合编程技术在图像处理中的应用研究[J].电脑知识与技术,2011,7(8):5450-5452.

[4]车敏,张红梅.Matlab与VC联合编程在数字水印工程中的应用[J].现代电子技术,2010,33(24):55-58.

参考文献:

辽东学院本科毕业文

本科毕业文格式参考

双学位毕业答辩文模板

毕业文成绩评定表,中学生毕业文陕西

VB与MATLAB混合编程与实现

VisualC++与Matlab混合编程方法的对比

VC++与Matlab混合编程实现光场光强的三维显示word版本

本科论文如何发表

专本科自考

交大自考本科

帮写本科毕业论文

本科论文致谢

本科论文重复率

中文系本科毕业论文题目

自考本科可以考几年

自考本科报考

本科论文多少字

参考文献相关论文



相关频道推荐