版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第七章APDL综合实例7-1问题说明本章在阐明APDL技术时本想也采取实例的方式,把APDL的各个细节 都用一个个详细的实例说清楚, 无奈APDL细节内容比较繁复, 而且不和UIDL那样各成体系,APDL的应用很多情况下都是和UIDL. UPF结合在 一起应用的,它甚至渗透到基础分析中的各个环节中, 可以说也是ANSYS的脚本基础。 考虑到大家都不会有兴趣来聆听枯燥的数组构建法,宏函数的 参元特性等罗嗦的APDL语法,这里我们打算用一个比较大的综合实例来想 大家描述一部分APDL的功能,从这里你将能看到我们能用APDL干些什 么。还记得UIDL实例解析二中的一个例子巴,这里我们有必要重温一下:
2、如图1(a)所示,一带孔薄板,长4000mm,宽2000mm,顶部中心 部分1800mm处承受42MP的压力,左右两个长圆孔中心分别踞四周1000mm,长圆孔的具体形式如图1(b)所示,上下分别为半圆,中部用 直线衔接。这里假设长圆长轴与水平方向夹角为a。为了使得孔边缘应力集中最小,这里拟调整a的大小(aW -兀/2,H/2),以便在固定的H情况下达到长圆孔周围应力集中最小。在UIDL实例二的部分我们只是在GUI界面下实现了它的参数化建 模,这部分工作在本章的综合实例中仍然有效,下面我们将一步步完全 实现这一问题。7-2解题思想本问题是在用户给定H的情况下求得a角的最优解, 使得孔边最大拉应
3、力最小(这是因为材料抗拉性能比较弱)。这里我们的想法是把a取每一个 角度时候得到的孔边最大拉应力都求出,比较一下,得到孔边拉应力最小情 况下对应的a取值。现在的问题是,我们只能够对每一离散的a值求取其孔(b)边最大拉应力,让a在0 360。之间连续取值不仅是无法做到的,而且 在工程中也没有必要,这里我们拟每隔一定角度计算一下孔边最大拉应力,最终在这些有限的角度中求取出最佳的a值。 因此我们还需要用户自定义求 解的精度参数,即我们每隔多少角度来计算一次(决定了结果精确到什么程 度)。比方说我们定义每隔5。计算一次的话,整个优化过程需要进行180/5=36次求解运算。下面说明一下在构建过程中的一些
4、全局参数:My_H:用户输入的H参数值My.slta:每次计算对应的a参数值My.dsita:每两次计算之间间隔的角度值(用户输入的参数)。My_N:总共需要分析计算的次数。My_N=180/My_dsita My.sitaO:初始a值,这里统一定义为0。MyMinSl:最优化位置处的最大拉应力值。(计算完以后才是)My.Msita:最优化位置处对应的a值。Mysmin:每次分析计算得到对应特定a角时的孔边最大拉应力。(一般 都是孔边产生应力集中,所以也是整个板料内部的最大拉应力处)_sl数组:对应特定a时求解得到各个节点上的最大拉应力值。1.首先我们重新构建一比较完善的参数话建模脚本,取名为
5、modaling. mac,该脚本针对固定的My_H和Mysita将构建整个几何模 型,加好载荷和约束,具体细节请参看附录。2 构建脚本mysolve. mac:My_sita0=0My_N=180/My_dsitaparsavall,myparflni/clear,start parres,new,mypar My_sita=My_sitaO+My_dsita*I modaling/solusolve/postlarll=nclinqr(0J4)_sl=*dim_slnarll*vget,_sl(l),nodej,sjvscfun,mysmin,max,_s 1(1)*ifJ,eq,O,th
6、enMy_MinS l=mysmin My_Msita=My_sita ELSEIE;mysinin4t,My_MinS l,thenMy_MinS l=mysmin My_Mslta=My_sita *ENDIF7.3构建步*ENDIF parsavall,inypar *enddo下面是几点说明:程序整个框架是先根据用户输入的参数定制好一些解题环境,比方 说求出需要重复计算的次数My_N,然后用APDL的*do循环结构 繁复执行My_N次,每次求得对应角度的孔边最大拉应力值,不断 积累出这些对应角度孔边最大拉应力值的最小结果。完成了My_N次结果后,最优结果My.MinSl和对应的角度My
7、_Msita也就求出 来了。不同示分析计算过程前必须对ANSYS环境中的现有模型清零, 用 到/clear命令,但该命令会使用户参数同时清零,这里用到parsav和parres技术,在每次清零过程前先把当前工作区的参数保存起来, 清模型结束后再调入工作区,这样就实现了只清模型、不清参数的 效果。解题结束后,我们先用ndinqr(0,14)这一UPF命令求取模型中的节 点总数。然后用桝get命令把所有节点上的最大拉应力都保存到_sl数组中,最后用hscfim函数得到数组中的最大值。注意每次求解完提取数据时都要重新定义数组的大小(因为每次 划分单元后总节点数不同),这时候每次ANSYS都回出现让你
8、确认 是否把己经存在的_sl数组结构改变的对话框,这将导致自动化求解 中断,这里我们采用的一个技巧是每次重新定义_sl数组前先清掉_sl数组(用_sl二命令行)。这样救避免了Ansys的询问。同样解决/clear命令的Ansys询问方法就是写全/clear命令:/cleartarto注意 这里我们是必须或用start参数的,它表面我们在新建模型时读入start55.ans文件,我们必须在工作目录中构建一个我们自己的start55.ans文件,里面添加上PI参数的说明(因为modaling.mac宏文件中将利用这一参数,如果系统环境中没有这一参数的说明, 将产生建模错误)o解决完一次运算, 保存
9、完数据后记得用parsav函数保存环境参数。3 完善GU:参数化界面这里我们要比上次UIDL实例二中多增加一个参数My_dsita,为此我们 修改UIFUNC2. GRN函数中DoProject函数::N Fnc_DoProJect:s 0,0,0:T Command:A Optimize my Project:D Please Input Custom Information:C )*Set,My_H,150:C )*Set,My_dslta,90:H Hlp_0_ContentsInp_NoApplyCmdJ *Cset,l,2Fld_0Tp_LabPrm_Custom the Geogr
10、aphic InformationFld_2Prm_ Please Input the Dsita for Analysis( 1-90)Tp_INTDef_*PAR(My_dsita)Fld_3Prm_ Please Input the H for Analysls( 100-200)Tp_INTDef_*PAR(My_H)Cmd_)/GoCmd*GET,My_H,CPAR,2Cmd*GET,My_dsita,CPAR,lCmdm ysolve:E END这里可以看到和UIDL篇中的实例相比,多加了参数My_dsita的用户化 输入。最后的命令修改成直接用文件名调用(这是因为我们把文件名后
11、缀改为了.mac,它标志着标准的宏文件)。最后的对话框显示如下:用户定制好分析精度和H值后,点击OK就开始了完整的分析过程。4.求解结果最后求解完毕后得到了一些最优化结果: 用*status命令可以看到所有 参数结果(这里我用每隔5度进行一次分析求解):Pfease Input Custom informationII殖Custom the Geographic infomotionInput ths Dsit. forPlea.se Input the K forsis 150My.Msita=40o,用该最优化建模图形为:这里由于实常数对应力集中的效应没有影响,我们就不再给出具体计算结果来
12、了。有效的仅是在同样的载荷条件下不同角度的孔上最大拉应力的情况。7.4几点说明APDL中的参数化建模、优化涉及是十分复杂有效的,这里我们只是给出了 一个小小的例子, 用来举一反三。 套用同样的方法和机制, 我们可以完成更加 复杂的问题。这里我们仅仅用到了APDL功能中的一小部分,我们完全可以想象一下UIDL+APDL+UPF能够完成什么样复杂程度的功能一几乎是任何功能!7.5结束语这里结合APDL, UIDL和UPF讲述了一个比较综合的例子,在以后描述了UPF功能后,大家将更加为UPF功能的强大而神往不已。附录:modaling.mac:JThis is a script which can
13、create the modal with a parameter sita. !Parameter.: 一一22一一:、: 一一2:一一-,上2-一ZEHS .5.1 jvn3 2(101 2$注9;2彳JL-E-l-K-H J* w2H=My_H/1000 ! Customize the Environment keyw,pr_struc,l/prep7etj,shell63rJ,0 12,0.12,0 12,0.12uimpj,ex,denniixy,2 1 e9,1 2,0.375JModeling!Create platek,l,0,0k,2,2,0k,3,2,2k,4,0,2k,5
14、,0 9,2k, 6,l,ll,1,2h2,31351,5,41,4,1al,2,3,4,5!Create hole!Create inv coordinatek,7,l+H*cos(sita),l+H*sln(sita)k,10J+H*cos ta),l+H*sin(sita),100 k,& l+r*cos(sita+PI/2),l+r*sin(sita+PI/2)cskp,H,0,6,7,8csys JI!Create Holek, 9,H,rl,7,91,7,6adrag,6ww7a rota10, 90arsys,y,2,3,larsym,x,25Jaa(ld,2,3,4,5
15、,6,7,8,9asbaJJOcsys,0 arsymxd, ,0,0 niimmerall, Jow aa(ldj,2/an to Jgplot!Meshing the plane smrt,6 ameshall!Add DOFDK,2,UX,0, UY DK,14,UX,0,”UY!Add PressureSFL,4,PRES,42 SFL,11,PRES,42木人要分析一个小模型.需要不断改变其中某一个结构参数.然后重新建模,加栽分析。因不想一个个手 动修改,固准备采用apdl循环语句分析.大致思路如下*0034,10fini/clear/start.!建模.分析等(略*enddo伏I为
16、其实每次分析都是一个新的模型(只是其中某一个结构参数变化),所以在循环内部使用了一个clear语句,希望用它來淸除上一个模型,以便重新建瓯 但clear语句在执行的时候把系统里面的变址也同时 删除了.这样因为循环变址i的值被淸除.系统就没法顺利完成循环操作了。有没有什么办法只清楚所建 立的模型和所加的力,而不淸楚所定义的变虽(例如i),或者仅仅保住i也行,只要能顺利完成循环即可。 不知道我有没有说明白我的问題建议第一次操作不在循环语句之内即所有的变量这次定义c然后结束时添加语句PARSAVzALL;pars7 71目的是保存参数到一个文件里。后续的循环开始和结束分别増加语句PARRENEW/P
17、arsY丁 和PARSAVzALL;pars7 71即分别为读入和保存参数。+讨论1做重复性计算是不是有简单的方法最近做了一个计算,模型建好了,就是需要不断改变模型参数,重新讣算。比如不断改变材料的材料属性、实常数、温度、荷载以及模型尺寸。对于前而的几项可以用APDL循环计算,对于模型尺寸由左义的常数确立,只是无法循环计算。试过用resume命 令想还原到最前而,但是没有成功。由于计算次数实在太多了, 后来是用编程语言反复凋用ansys实现的。 请教大家不知道只 用APDL语言能否实现改变模型的反复讣算。谢谢楼上两位!quotebgaowenwei wrote:/b还可将模型的APDL语言写为macro file(用CREATE)反 复凋用./quote这个方法我看最好,后处理可以一起输出。8Dsdwpj的方法也不错我当时做的方法是,把所有变化参数全部写成常量形式,让模型文件自动从文件中读取。dim,f_read,1,11*vread,f_read(1,1),inputdata,txt jik,11(11f9.6)然后反复用编程语言生成常量文件inputdata.txt-调用ANSYS执行一编程语言取读结果 (避免结果被覆盖),然后再回到开始。我是用JAVA语言实现的,对语言还
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度安全生产月宣传品采购与分发合同
- 2024年度建设施工合同工程质量与工程款支付规定
- 2024年企业环保设施建设和运营合同
- 04版离婚合同:三个孩子的监护权、财产分配及赡养费
- 2024聘用驾驶员合同书
- 2024年建筑基础土石方作业合同
- 安利心态课件教学课件
- 催收员试用期转正工作总结(6篇)
- 2024年度ABC电子科技有限公司手机代理销售合同
- 2024年大型物流中心建设与运营合同
- 安装空调竣工验收单
- 小学生态文明教育教案学校生态文明教育方案.doc
- 如何学好英语口语ppt课件
- 用电信息采集运维方案及服务承诺
- 花木绿化养护考核评分表
- (完整版)拌合站、水泥罐、搅拌站地基计算
- 锡柴6110发动机图册
- 中小企业办公无线网络设计与实现毕业设计论文
- 可研勘察设计费计费标准
- 运动处方知识点
- 某企业员工违规处理登记表(doc 2页)
评论
0/150
提交评论