Mathematica+Matlab联合使用实现可视化、交互编程
2014-04-14 16:41
886 查看
Mathematica的笔记本功能可以保存计算结果,而Matlab是基于代码运算以取得计算结果,或者可以说属于批处理模式;结合二者的优点,则可以实现笔记本功能的交互式、可视化Matlab程序开发。此外,Matlab程序设计语言的相关知识,也可以移植到Mathematica中使用。
1 通讯组件
http://matlink.org/下载matlink,解压缩到在
( 上述命令在mathematica下运行).
将C:\Program Files\MATLAB\R2013a\bin\win64加入系统路径,以使得Matlink能够调用到Matlab的dll等.
2 在Mathematica中与matlab通信
在Mathematica中建立笔记本test.nb,内容为:
3 Matlab加法函数add2.m
function val = add2(a, b)
val = a + b;
end
以上程序在win8+mathematica9+mathlab2013a下测试通过。
1 通讯组件
http://matlink.org/下载matlink,解压缩到在
SystemOpen@FileNameJoin[{$UserBaseDirectory, "Applications"}]
( 上述命令在mathematica下运行).
将C:\Program Files\MATLAB\R2013a\bin\win64加入系统路径,以使得Matlink能够调用到Matlab的dll等.
2 在Mathematica中与matlab通信
在Mathematica中建立笔记本test.nb,内容为:
Needs["MATLink`"]; (*打开通信包*) OpenMATLAB[]; (*建立与Matlab通信*) cdd=NotebookDirectory[]; (*取得当前notebook的文件夹未知*) MSet["cdd", cdd]; (*将此变量传入Matlab*) MEvaluate["addpath(cdd)"]; (*将当前路径加入Matlab系统路径,以找到和调用当前文件夹下的Matlab程序*) MEvaluate["mat = magic(4)"] (*尝试调用Matlab函数*) mat=MGet["mat"] (*取得Matlab中的变量值*) MSet["a", 3]; (*放入a变量*) MSet["b", 5]; (*放入b变量*) MEvaluate["add2(a, b)"] (*调用当前目录下Matlab函数add2实现两个数的加法运算*) add=MFunction["add2"] (*取得当前目录下Matlab函数add2的地址*) add[3,5] (*以Mathematica方式调用add2函数*) CloseMATLAB[] (*关闭Matlab*)
3 Matlab加法函数add2.m
function val = add2(a, b)
val = a + b;
end
以上程序在win8+mathematica9+mathlab2013a下测试通过。
相关文章推荐
- 使用Matlab相机标定库(Camera Calibration Toolbox)问题小记
- matlab meanshift
- Matlab 统一赋值问题
- Ubuntu12.04下安装Matlab_UNIX R2013b
- windows下matlab, R 等语言的批处理
- 高斯判别分析(附Matlab实现)
- mex+matlab2013b+vs2012安装
- matlab 并行运算【转】
- 查看matlab中的小波基
- matlab中相关函数功能
- ubuntu 12.04下安装matlab2012a
- 使用matlab进行频谱分析时若干问题解释
- MATLAB 下的 Parzen函数 Parzen 窗法概率密度函数估计
- matlab 函数 bwdist
- Matlab Connector 与UDPSensor 连接到电脑的问题?
- matlab中调用C和cmd命令
- matlab 循环结构设计习题
- MATLAB 重命名文件并移动文件到目的目录
- 斯坦福大学-朴素贝叶斯_Exercise Code
- 斯坦福大学-回归规则化处理_Exercise Code