关于DBT阵列信号处理工具箱在新版Matlab中的移植

上传人:mingti****nghao 文档编号:40614014 上传时间:2018-05-26 格式:DOC 页数:2 大小:123.50KB
返回 下载 相关 举报
关于DBT阵列信号处理工具箱在新版Matlab中的移植_第1页
第1页 / 共2页
关于DBT阵列信号处理工具箱在新版Matlab中的移植_第2页
第2页 / 共2页
亲,该文档总共2页,全部预览完了,如果喜欢就下载吧!
资源描述

《关于DBT阵列信号处理工具箱在新版Matlab中的移植》由会员分享,可在线阅读,更多相关《关于DBT阵列信号处理工具箱在新版Matlab中的移植(2页珍藏版)》请在金锄头文库上搜索。

1、关于 DBT 阵列信号处理工具箱在新版 Matlab 中的移植Csdn/cyxDBT 是一个用于阵列信号处理的 Matlab 工具箱,有很多的函数和例子, 对于常见的 MUSIC、ESPRIT 等阵列信号处理的方法都有很好的实现,是雷达 工作者的极好帮手,不过由于开发年代久远(网上能找到的最新版是 2.20),所 以在新版 Matlab 上无法使用,突出的问题就是其代码大量使用了 C 语言编写 的函数库,实现于 matvar.c 文件中,里面很多函数都已经被新版的 Matlab 抛 弃或更换,造成无法编译出所需的 matvar.mexw32 文件。这几天试验了很久, 查了不少资料,终于成功地将

2、 matvar.c 在 Matlab R2013a 下进行了编译移植。 其步骤如下:首先打开 Matlab,切换到 D:MATLABR2013atoolboxradardbtR2- 20recvarR3-7 目录下(如果你的 Matlab 安装目录和 DBT 目录不是上述路径, 请自行修改,下同)。使用 mex -setup 命令设置好 C 编译器配置,我用的是 Visual Studio 2010。将 D:MATLABR2013atoolboxradardbtR2-20按子目录添加的方式添加 到 Matlab 路径中,但是请删除 D:MATLABR2013atoolboxradardbtR2

3、- 20recvarR3-7matlab4 目录,且确保 D:MATLABR2013atoolboxradardbtR2-20recvarR3-7matlab5 目录的次序 在其他所有工具箱之前,这主要是由于 DBT 内部使用的一些自有函数如 getm、setm 等,与 Matlab 的地图工具箱中的函数存在重名,需要提前声明。接下来是修改 matvar.c:1. 因为 Matlab 已经将 Matrix 结构更换为 mxArray,所以在 100 行左右的 地方,需要添加声明:typedef mxArray Matrix;2.mxIsString 函数已经废弃不用,将所有的 mxIsStri

4、ng 函数调用更换为 mxIsChar;3.mxCreateFull 函数已经废弃不用,将所有的 mxCreateFull 函数调用更换 为 mxCreateDoubleMatrix;4.所有的 REAL 常量更换为 mxREAL;5.所有的 COMPLEX 常量更换为 mxCOMPLEX;6.mxSetDispMode 已经被 Matlab 废弃且没有替代函数,所以让 setMatlabMatrixDisplayMode 函数为空,也就是清除其中对 mxSetDispMode 函数的调用,据测试并不影响使用 DBT;7.mxGetName 函数已经废弃不用,将所有的 mxGetName 函数更换为 mxGetClassName 函数;完成上述修改后,键入 mex matvar.c,可以生成 matvar.mexw32 文件, 用 tmatvar 命令测试成功即可,以下是 dbtex1 范例的运行结果:不过 DBT 工具箱似乎已经多年不曾更新,加上最新版的 Matlab 已经为雷 达、声呐等应用领域开发了功能强大的官方版的相控阵工具箱(Phased Array System Toolbox),所以 DBT 工具箱的作用可能已经不如十年前那么大了,不 过仍然是极具参考价值的。

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

当前位置:首页 > 行业资料 > 其它行业文档

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