07、python调用matlab引擎

import matlab.engine

import numpy as np

import matplotlib.pyplot as plt

启动MATLAB引擎

eng = matlab.engine.start_matlab()

print("MATLAB引擎启动成功")

定义Python数据

t = np.linspace(0, 2*np.pi, 100)

y = np.sin(t)

将NumPy数组转换为MATLAB数组

t_mat = matlab.double(t.tolist())

y_mat = matlab.double(y.tolist())

在MATLAB中执行命令

eng.workspace['t'] = t_mat # 将变量传递到MATLAB工作区

eng.workspace['y'] = y_mat

eng.eval("plot(t, y)", nargout=0) # 绘制图形

eng.eval("title('正弦函数')", nargout=0)

eng.eval("xlabel('时间'); ylabel('幅度')", nargout=0)

执行MATLAB函数并获取结果

result = eng.sqrt(4.0) # 调用sqrt函数

print(f"sqrt(4.0) = {result}")

调用自定义MATLAB函数

假设当前目录下有个名为myfunc.m的文件

result = eng.myfunc(arg1, arg2)

关闭引擎

eng.quit()

print("MATLAB引擎已关闭")

相关推荐
rit84324996 小时前
MATLAB对组合巴克码抗干扰仿真的实现方案
开发语言·matlab
suoge2238 小时前
六面体传热单元Matlab有限元编程:三大类边界条件(上篇)| 固定温度边界条件 | 表面热通量边界条件 | 热对流边界条件)
matlab·有限元编程·传热有限元·热传导有限元·六面体热单元·边界条件·对流换热
Evand J11 小时前
【MATLAB例程,附代码下载链接】基于累积概率的三维轨迹,概率计算与定位,由轨迹匹配和滤波带来高精度位置,带测试结果演示
开发语言·算法·matlab·csdn·轨迹匹配·候选轨迹·完整代码
suoge22311 小时前
六面体传热单元(热通量边界条件)有限元MATLAB程序【理论文本+代码】|热传导有限元|纽曼边界条件|有限元传热分析
matlab·有限元·有限元编程·传热有限元·稳态传热·热传导有限元·热固耦合
suoge22311 小时前
六面体传热单元(固定温度边界条件)有限元MATLAB程序【理论文本+代码】|热传导有限元|狄利克雷边界|有限元传热分析
matlab·有限元·热传导·传热有限元·迪利克雷边界条件·有限元法·稳态传热
foundbug99911 小时前
基于MATLAB的TDMP-LDPC译码器模型构建、仿真验证及定点实现
开发语言·matlab
Evand J11 小时前
【MATLAB代码介绍】基于累积概率的三维轨迹匹配与定位,由轨迹匹配和卡尔曼滤波形成算法,带测试结果演示
算法·matlab·滤波·定位·导航·轨迹匹配
wuk99813 小时前
梁非线性动力学方程MATLAB编程实现
前端·javascript·matlab
一个与程序bug抗争的程序员13 小时前
Matlab App Designer设计人机交互界面并打包成exe——加法计算器
matlab·人机交互
kaikaile199514 小时前
matlab计算流场
人工智能·算法·matlab