• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

德才兼备

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

如何在Abaqus的python中调用Matlab程序

在Abaqus的Python库中,添加matlab工具,使得在Python中可以调用Matlab

目录
  • 1. 确定版本信息
  • 2. 备份python
  • 3. 设置环境变量
  • 4. 安装程序
  • 5. 调试运行
  • 参考资料

1. 确定版本信息

  • Abaqus2018
  • 操作系统Win10 64位
  • Python版本2.7(路径C:\SIMULIA\CAE\2018\win_b64\tools\SMApy\python2.7)

2. 备份python

  • 将上述的“python2.7”文件夹复制出来,避免因操作错误而导致的重新安装Abaqus
  • 然后打开python2.7文件夹,把里面的python.exe和pythonw.exe复制出来,分别命名为python27.exe和pythonw27.exe;该操作便于后续确定环境配置是否正确。

3. 设置环境变量

确保使用的是abaqus中的python版本,更改环境变量

  • C:\SIMULIA\CAE\2018\win_b64\tools\SMApy\python2.7
  • C:\SIMULIA\CAE\2018\win_b64\tools\SMApy\python2.7\Scripts
  • 按win+R 出现 运行 窗口,输入cmd,打开cmd窗口
  • 然后输入python27回车,将弹出如下界面,则设置没有问题。
    65fefa2db42168d2efcd7d7039328c1e.png

4. 安装程序

为了在python中可以调用matlab的程序,配置过程如下:

  1. matlab中python的路径C:\Program Files\MATLAB\R2016b\extern\engines\python
  2. 以管理员程序运行命令行工具,在cmd窗口下,进入到上述路径。
cd "C:\Program Files\MATLAB\R2016b\extern\engines\python"
  1. 然后输入python setup.py install

5. 调试运行

调试运行在Abaqus的python命令行工具中进行。

  1. 在Abaqus中配置工作路径
import sys
sys.path.append(r'H:\Abaqus\GUI\abaqus_plugins\Lib')
  1. 定义Matlab函数
function [ out ] = countNumbers( a,b )
    out = a+b;
end

  1. 在Python中调用该函数
import sys
sys.path.append(r'H:\Abaqus\GUI\abaqus_plugins\Lib')
import matlab.engine
eng = matlab.engine.start_matlab()
sum = eng.countNumbers(matlab.double([5]),matlab.double([4]))
print(sum)

注意:matlab对数类型要求较为严格,在输入参数时,应当采用上述方式:matlab.double([5]),期中括号内的变量为列表

参考资料

【1】abaqus安装python第三方程序包/模块示意
【2】Install Matlab Engine API for Python
【3】在python中调用matlab函数
【4】从 Python 中调用用户脚本和函数
【5】Python调用Matlab

posted on 2020-03-10 15:56  德才兼备  阅读(1820)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3