ansys实例_ANSYS APDL与二次开发(3) ——基于ANSYS、MATLAB和C++的联合仿真分析

d7042b73fc329405a5987eb2d13bc393.png

引言

前文我们主要讨论了联合仿真分析的几个关键基础问题,主子程序、接口和数据信息的传递。

https://zhuanlan.zhihu.com/p/266431989​zhuanlan.zhihu.com
https://zhuanlan.zhihu.com/p/268513036​zhuanlan.zhihu.com

本文我们基于实例的形式,讨论ANSYS、C++和MATLAB联合仿真分析的具体实现。

Matlab的exe程序封装

不同版本MATLAB封装的方法可能会有差异,本文以MATLAB2014a版本进行封装。首先调试好MATLAB程序,确保无问题;然后按如下流程进行封装:

8ec3a84ddacc1b240539f137d6d425d6.png

431d3a70be8b7aec1599ef1c8856f06a.png

以上流程完成后,在for_testing文件夹下就出现了.m文件所对应的exe程序,此程序可以脱机使用,即可在一台没有安装MATLAB软件的机器上运行。

主程序ANSYS——子程序MATLAB

考虑主程序ANSYS中有两个变量a和b,值分别为1和2;现调用MATLAB计算这两个变量的和并返回给ANSYS。

ANSYS中有如下代码:

c92877f94631126c0b86af8a58497c59.png

MATLAB中有如下代码

f2540d7373aa2ddfe7ebcc1c3f9d3e66.png

主程序MATLAB——子程序ANSYS

考虑主程序MATLAB中有两个变量a和b,值分别为1和2;现调用ANSYS计算这两个变量的和并返回给MATLAB。

MATLAB中有如下代码:

98184c99560dae5d05249aa5c8fbb469.png

ANSYS中有如下代码:

ad9750280552b00af75f0f7b6d3474d7.png

主程序ANSYS——子程序C++

考虑主程序ANSYS中有两个变量a和b,值分别为1和2;现调用C++计算这两个变量的和并返回给ANSYS。

ANSYS中的代码为:

59844c1e39386da666fa0a64bfb81d56.png

C++中的代码为:

1821fd714b90ae09f9247859a2164290.png

主程序C++——子程序ANSYS

C++中的代码为:

4df9feccb0ded557302a618831552edd.png

ANSYS中的代码为:

8aaf0f6702a9bf8c2bb3f2e8f2880a0f.png

最后

本篇利用一个简单的实例,讨论了ANSYS分别和MATLAB以及C++之间实现的联合仿真分析,核心在于构造思路和流程,掌握后可根据自己所遇到的实际问题而加以改进,以便实现具体问题的联合仿真分析。

-完-

公众号同步更新:数联科技工作室

公众号内有更多内容!

  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值