python调用matlab函数
1、matlab中python外部接口(API)的安装
第一次使用Matlab需要先安装一下python的API。
路径为:…\Matlab2019a\extern\engines\python\setup.py
需注意matlab版本与其所支持的python版本,如 Matlab2018b支持python 3.4 3.5 3.6,2019a支持到3.7
安装如下三步:
1、激活需要安装matlab模块的环境
2、切换到matlab该文件路径下路径
3、调用python setup.py install,进行安装
2、matlab.egine模块
使用python调用matlab函数(function):
例子:想使用python调用matlab函数,且函数内嵌套了matlab的CVX包,用于解凸优化问题。
新建一个python脚本:test.py
import matlab.egine
def CVX_Matlab(h,t):
eng = matlab.engine.start_matlab() # 启动matlab,此时可以调用matlab内置函数
a = eng.CVX_Matlab(h,t)
print(a)
if __name__ == '__main__':
h = [2.1062e-7, 1.8093e-7,1.502e-7]
t = 6.5
CVX_Matlab(h,t)
在matlab中,编写好你需要使用的函数 CVX.m
function [optValue, Slist] = CVX_Matlab(g,t)
% g的类型为'cell' g=[{
2.1062e-7}, {
1.8093e-7},{
1.502e-7}] % g为python以列表形式传入的信道增益
Slist &