MATLAB与ansys联合仿真(含代码)
来源:网络收集 点击: 时间:2024-04-21一、建立数学模型
1、设计变量:选择轴的直径和长度作为变量,
2、目标函数:轴的质量最小
3、约束条件
(1)扭转强度条件:
(2)扭转刚度条件:
(3)几何条件:
2/3二、MATLAB优化
1、首先在磁盘中建立shaft文件夹(如E盘),在该文件夹中放入fun.m和confun.m文件,见图1
fun.m内容:
function f=fun(x)
f=6.126*10^-6*x(1)^2*x(2);
confun.m内容:
function=execonfun(x)
c(1)=865803/x(1)^3-60;
c(2)=21.38/x(1)^4-1;
c(3)=23-x(1);
c(4)=x(1)-26;
c(5)=128-x(2);
c(6)=x(2)-163;
ceq=0
2、在MATLAB窗口中输入如下程序:
x=;
lb=;
ub=;
=fmincon(fun,x(),,,,,lb,ub,confun)
3、得到结果如图2


三、MATLAB与ANSYS联合优化仿真
1、将MATLAB结果文件取整后导出TXT文件,保存在shaft文件夹中,见图3。在shaft文件夹中建立shaft.mac命令流文件,内容如下:
/FILNAME,shaft
*DIM,XX,ARRAY,2,1
*VREAD,XX,E:haft\data,txt,,jik,2,1
(15f16.6)
/PREP7
ET,1,BEAM188
MP,EX,1,2e11
MP,PRXY,1,0.27
SECTYPE,1,BEAM,CSOLID
SECOFFSET,CENT
SECDATA,XX(1,1)/2000,40
N,1,0,0,0
N,15,XX(2,1)/1000,0,0
FILL,1,15,13
E,1,2
EGEN,14,1,1
FINISH
/SOL
D,1,ALL
F,15,MX,170
/STATUS,SOLU
SOLVE
FINISH
/ESHAPE,on
/POST1
PLNSOL,U,SUM
PLNSOL,S,XY
SAVE
2、在MATLAB命令窗口中输入如下命令
x=;
lb=;
ub=;
=fmincon(fun,x(),,,,,lb,ub,confun)
x=ceil(x);
save(E:haft\data.txt,x,-ascii)
!’’D:\ProgramFiles\ANSYS Inc\v140\ansys\bin\winx64\ANSYS140.exe’’-b-np7-dir E:haft\-i E:hafthaft.mac-o‘’E:haft\output.txt’’
3、得到应力云图,最大剪应力为49.3MPa,小于许用值,优化结果可靠

注:MATLAB与ansys对应的版本须一致,如2013版MATLAB需对应13版的ansys,否则联合仿真时可能会报错
版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.1haoku.cn/art_559969.html