遗传算法matlab_当结构设计遇到遗传算法应用ANSYS和MATLAB联合仿真优化设计探索(前传)...
1
前言
在前面的文章我们介绍了如何基于有限元分析的结果,实现ANSYS与MATLAB的联合优化设计过程。现在我们回过头来,再来谈一谈这其中最基本的一步——如何实现ANSYS APDL参数化建模分析的全过程。
这篇文章先简要介绍下如何实现案例模型的APDL参数化建模分析,由于APDL的各参数设置、原理、意义成千上万,我们主要是大致讲解一下建模思路与大体框架,具体细节碍于篇幅暂且不详谈。
此文通过选取一个高层混凝土结构案例,建筑层数15层,建筑高度为61m,考虑到整体模型的大小与复杂性,剪力墙和楼板采用SHELL181单元,梁柱采用BEAM188单元。如此庞大的模型如果通过用户菜单界面进行点点点不知道要点到什么时候,而采用命令流几小时就能完成全过程。下面就开始我们的参数化建模过程。
实例:高层混凝土结构模型
2
模型参数定义
第一步先进行参数的定义,针对于整个模型我们首先要确定哪些量是固定不变的,哪些是可变的。变量的定义有两种命令:
*SET,L1,0.2 或 L1=0.2
这两种命令效果是一样的,都是定义变量L1并赋予其0.2的初值。ANSYS APDL是没有单位的,实际建模分析只需保持各参数单位相统一即可,所以在ANSYS 命令流中不需要加单位,只有数值即可。
这之后需要进行单元的定义,在这里我们定义单元1为BEAM188,单元2为SHELL181,
各个单元的实常数等再这里不再赘述,详细可以去查看ANSYS Help文档。之后分别定义结构不同材料的弹性模量、泊松比、密度,由于结构采用混凝土材料,只需定义混凝土材料即可,弾性模型无需定义本构关系。注:每条命令后可加“!”进行命令标注,方便后期查找修改,“!”后的文本程序是不读取参与运行的。
ET,1,BEAM188 !1号单元
ET,2,SHELL181 !2号单元
......
MP,EX,1,3E11 !弹性模量
MP,PRXY,1,0.2 !泊松比
MP,DENS,1,2600 ! 密度
3
点线面建模
下面来重点介绍下建模思路,考虑到模型的复杂度与运算时间,此模型每层结构布置均一致,如此只需要采用for循环语句就能实现快速建模。遵循点线面的建模原则,首先进行模型关键点的定义,关键点的选取不仅要考虑建筑外轮廓,还要考虑结构构件的布置,此模型标准层如下图,共有160个关键点 ,结构的2至12层是完全一致的,我们可以采用下列命令,将160个点for循环12次。
*do,i,1,12
k,1+(i-1)*200,0,0,5.7+(i-1)*3.150
......
k,160+(i-1)*200,22,22,5.7+(i-1)*3.150
*enddo
这条命令可以翻译文字为:
(关键点,点编号,x坐标,y坐标,z坐标)
每循环一次,关键点编号增加200,层高增加3.15(底层层高5.7,其它层层高3.15)
平面关键点
之后,同样通过for循环语句,由点成线,由线成面,结构梁柱需定义线,墙板需定义面。大致思路如下:
*do,i,1,12
L,1,2 ! 连接1,2点为线
......
*enddo
*do,i,1,11
A,(i-1)*200+1,(i-1)*200+2,i*200+3,i*200+4 !由1,2,3,4点生成面
......
*enddo
至此模型初步建立完毕如下二图。
结构平面图
结构整体模型
4
网格划分
在划分网格的同时将单元属性赋予到不同的模型构件,由于结构十分规则,同样采用for循环进行属性赋予及网格划分。其中有个很好用的命令select进行特定目标的选取,通过ksel(点选),lsel(线选),asel(面选)命令能够实现不同位置、不同材料的点、线、面、节点、单元的选择、全选、反选操作,用熟了能节省大量的时间。采用这种方式能通过几个for循环语句在几秒钟内实现特定构件的网格划分工作。
LESIZE,ALL,0.2, , , ,1, , ,1, ! 线长度为0.2
*do,i,1,15
ASEL,S,LOC,Z,5.70+3.150*(i-1) !坐标选定
AATT, 1, , 2, 0, 5 !属性赋予
AMESH,ALL !划分网格
*enddo
分网完成后,需要通过节点合并命令合并重合节点。
ALLSEL,ALL
NUMMRG,ALL, , , ,LOW
在这里还需要再提一句,在建模的构思阶段就要着重注意下建模的原则和思路,因为在划分完网格后,相邻构件的重合部分是要求共节点的,这样才能将整个模型连成一个整体,而不是独立分开的各个构件。比如下图这三个面,前两种分网方式保证三个面的交界网格都是贯通的,每两个面的交线上都是共节点的,而第三种方式红色区域很明显网格过渡是断开的,这样会导致节点分离,三个面连不成一个整体。共节点在这种大模型中是十分重要的问题,稍不注意就会导致分析失败,需花费大量时间进行查错,重新建模。
三面模型
网格划分方式1
网格划分方式2
网格划分方式3
5
结尾
完成前面的重头戏后,接下来的后处理部分就比较简单了。关于下面的有限元分析的结果输出请参阅当《结构设计遇到遗传算法-应用ANSYS和MATLAB联合仿真优化设计探索(一)》。
相关阅读当结构设计遇到遗传算法-应用ANSYS和MATLAB联合优化设计探索(一)当结构设计遇到遗传算法-应用ANSYS和MATLAB联合优化设计探索(二)当结构设计遇到遗传算法(一)当结构设计遇到遗传算法(二)当结构设计遇到遗传算法(三)盈建科,二次开发Python爬虫实战——从太平洋地震工程研究中心数据库自动下载地震波时程用袋鼠让犀牛(Rhinoceros)跳起来!从拓扑优化看“树形柱”的生长拓扑优化技术寻找高层建筑支撑体系最优布置方案当桁架遇到拓扑优化
为了方便大家交流技术和互通行业资讯,请添加我们“大菲儿”微信,加入相关讨论交流群。
遗传算法matlab_当结构设计遇到遗传算法应用ANSYS和MATLAB联合仿真优化设计探索(前传)...相关推荐
- ansys参数化编程与命令手册_当结构设计遇到遗传算法应用ANSYS和MATLAB联合仿真优化设计探索(前传)...
1 前言 在前面的文章我们介绍了如何基于有限元分析的结果,实现ANSYS与MATLAB的联合优化设计过程.现在我们回过头来,再来谈一谈这其中最基本的一步--如何实现ANSYS APDL参数化建模分析的 ...
- Matlab(Simulink)+ANSYS Simplorer+Maxwell联合仿真(一)——软件选取问题
前段时间一直在弄联合仿真的事情,试错了很多,向在这里和大家分享一下: 因为我想用Matlab里面的Simulink做电机的控制,然后如果要和Maxwell联合仿真,就必须要用到Simplorer,所以 ...
- 结构优化设计及matlab实现,基于ANSYS和MATLAB的结构优化设计
0引言结构静力分析是任何机械产品结构设计分析的重要方面.静力分析的目的是确定结构在静力条件下受指定载荷.温度和约束时的应力和位移分布,从而及时发现应力.应变危险点,为产品的结构优化设计进行指导.结构优 ...
- 遗传算法matlab_史上最强的MATLAB自学网站,你收藏了吗???
各位小伙伴可点击此处,即可进入到优化算法交流地官方账号主页(推荐),谨防上当受骗. hello,大家好!这几天是全国大学生数学建模竞赛的比赛时间,首先预祝各位参赛的同学能够取得好成绩.今天,网上浏览到 ...
- 遗传算法matlab_科学与艺术的融合:遗传算法绘制蒙娜丽莎
读研究生的时候上了智能控制的课,课上讲了遗传算法.粒子群算法还有模糊控制等等.我对遗传算法非常感兴趣,2018年的时候用MATLAB复现了遗传算法进化蒙娜丽莎,这也是我知乎头像的来源. 本文就来详细的 ...
- 遗传算法 python 简书_遗传算法入门
遗传算法简介: 遗传算法(Genetic algorithm)属于演化计算( evolutionary computing),是随着人工智能领域发展而来的一种智能算法.正如它的名字所示,遗传算法是受达 ...
- 遗传算法(三)——基本遗传算法
目录 2.基本遗传算法 2.1基本遗传算法描述 2.1.1基本遗传算法的构成要素 2.1.2基本遗传算法描述 2.1.3基本遗传算法的形式化定义 2.2基本遗传算法的实现 2.2.1个体适应度评价 2 ...
- 一张图解释什么是遗传算法_通俗易懂地解释遗传算法
大三的时候上了一门人工智能,其中有一次作业就用到了遗传算法,问题是这样的: 求解函数 f(x) = x + 10*sin(5*x) + 7*cos(4*x) 在区间[0,9]的最大值. 这个函数大概长 ...
- 采用遗传算法求解最大值c语言,遗传算法求解y=x2.doc
遗传算法求解y=x2 初始遗传算法及一个简单的例子 遗传算法(Genetic Algorithms, GA)是一类借鉴生物界自然选择和自然遗传机制的随机化搜索算法.它模拟自然选择和自然遗传过程中发生的 ...
- 【优化调度】基于matlab非支配排序遗传算法求解车辆充电调度优化问题【含Matlab源码 2000期】
⛄一.遗传算法简介 由于国内外人民的生活方式和电动汽车主要购买人群的不同,国内外关于车辆充电调度问题研究的侧重点也不尽相同. 我国地大物博,人口众多,交通复杂.主要从以下方面研究: 1.通过经济手段或 ...
最新文章
- 由于这个现象,我们永远无法精确测量时间
- 5G 除了上网快,还有什么用?
- html2image api,图像标签_图像识别 Image_API参考_API_华为云
- 【java/C# 服务器】IOS 配置推送证书 p12文件流程 - 勿以己悲
- Two Strings Swaps(CF-1006D)
- SQL 年龄段 品牌分类 分组统计
- 【InnoDB】体系结构
- 互联网行业不需要中年人,那些35岁离开BAT的人都去哪了?
- jQuery的几种简单实用效果
- Elasticsearch增删改查 之 —— mget多文档查询
- numpy 下载安装
- 什么是控制台应用程序
- 027. 从从门槛和可复制性聊聊生意模式
- 电容或电感的电压_阻碍电流流通的“双子星”,电容与电感
- 逐点插入法-delaunay三角剖分
- 《机器学习基石》第12节课学习笔记
- 滚动(scroll)操作的应用
- MySQL语法添加多个外码约束
- Source Insight 最新版本
- 使用jquery判断是否为数字
热门文章
- c语言常用图形函数库,easyx安装过程及c语言常用图形库函数全解.ppt
- “玄姐”孙玄,特立独行的架构师
- mtk刷机报错4032专业维修教程(图文)
- qt在linux下编译资源文件,linux下Qt qrc文件的编写与应用
- 取整的计算机语言符号,word取整符号
- 日立电梯服务器显示地址偏移异常,日立电梯所显示的故障报警代码
- 单片机c语言全解 pdf,单片机c语言程序.pdf
- VC编程实现运行Excel宏 Run
- 搭建 LimeSurvey投票调查问卷系统
- FMEA软件功能失效矩阵-交叉表 vs 树形矩阵