APDL综合实例2.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
APDL综合实例2

[分享]APDL综合实例 ???? 本章在阐明APDL技术时本想也采取实例的方式,把APDL的各个细节都用一个个详细的实例说清楚,无奈APDL细节内容比较繁复,而且不和UIDL那样各成体系,APDL的应用很多情况下都是和UIDL、UPF结合在一起应用的,它甚至渗透到基础分析中的各个环节中,可以说也是ANSYS的脚本基础。考虑到大家都不会有兴趣来聆听枯燥的数组构建法,宏函数的参元特性等罗嗦的APDL语法,这里我们打算用一个比较大的综合实例来想大家描述一部分APDL的功能,从这里你将能看到我们能用APDL干些什么。 UIDL实例解析二中的一个例子巴,这里我们有必要重温一下: 如图1(a)一所示,一带孔薄板,长4000mm,宽2000mm,顶部中心部分1800mm处承受42MP的压力,左右两个长圆孔中心分别踞四周1000mm,长圆孔的具体形式如图1(b)所示,上下分别为半圆,中部用直线衔接。这里假设长圆长轴与水平方向夹角为α。 [-π/2, π/2]),以便在固定的H情况下达到长圆孔周围应力集中最小。 UIDL实例二的部分我们只是在GUI界面下实现了它的参数化建模,这部分工作在本章的综合实例中仍然有效,下面我们将一步步完全实现这一问题。 本问题是在用户给定H的情况下求得α角的最优解,使得孔边最大拉应力最小(这是因为材料抗拉性能比较弱)。这里我们的想法是把α取每一个角度时候得到的孔边最大拉应力都求出,比较一下,得到孔边拉应力最小情况下对应的α取值。现在的问题是,我们只能够对每一离散的α值求取其孔边最大拉应力,让α在[0°~360°]之间连续取值不仅是无法做到的,而且在工程中也没有必要,这里我们拟每隔一定角度计算一下孔边最大拉应力,最终在这些有限的角度中求取出最佳的α值。因此我们还需要用户自定义求解的精度参数,即我们每隔多少角度来计算一次(决定了结果精确到什么程度)。比方说我们定义每隔5°计算一次的话,整个优化过程需要进行180/5=36次求解运算。 ??下面说明一下在构建过程中的一些全局参数: ??My_H:用户输入的H参数值 My_sita:每次计算对应的α参数值 My_dsita:每两次计算之间间隔的角度值(用户输入的参数)。 My_N:总共需要分析计算的次数。My_N=180/My_dsita My_sita0:初始α值,这里统一定义为0°。 My_MinS1:最优化位置处的最大拉应力值。(计算完以后才是) My_Msita:最优化位置处对应的α值。 Mysmin:每次分析计算得到对应特定α角时的孔边最大拉应力。(一般都是孔边产生应力集中,所以也是整个板料内部的最大拉应力处) _s1数组:对应特定α时求解得到各个节点上的最大拉应力值。 1.?首先我们重新构建一比较完善的参数话建模脚本,取名为modaling.mac,该脚本针对固定的My_H和My_sita将构建整个几何模型,加好载荷和约束,具体细节请参看附录。 2.?构建脚本mysolve.mac: My_sita0=0 My_N=180/My_dsita *do,I,0,My_N-1 parsav,all,mypar fini /clear,start parres,new,mypar My_sita=My_sita0+My_dsita*I modaling /solu solve /post1 ar11=ndinqr(0,14) _s1= *dim,_s1,,ar11 *vget,_s1(1),node,1,s,1 *vscfun,mysmin,max,_s1(1) *if,I,eq,0,then ?? My_MinS1=mysmin ?? My_Msita=My_sita *ELSE *IF,mysmin,lt,My_MinS1,then ?? My_MinS1=mysmin ?? My_Msita=My_sita *ENDIF *ENDIF parsav,all,mypar *enddo ――――――――――――――――――――――――― 下面是几点说明: u?程序整个框架是先根据用户输入的参数定制好一些解题环境,比方说求出需要重复计算的次数My_N,然后用APDL的*do循环结构繁复执行My_N次,每次求得对应角度的孔边最大拉应力值,不断积累出这些对应角度孔边最大拉应力值的最小结果。完成了My_N次结果后,最优结果My_MinS1和对应的角度My_Msita也就求出来了。 u?不同次分析计算过程前必须对ANSYS环境中的现有模型清零,用到/clear命令,但该命令会使用户参数同时清零,这里用到parsav和parres技术,在每次清零过程前先把当前工作区的参数保存起来,清模型结束后再调入工作区,这样就实现了只清模型、不清参数的效果。 u?

文档评论(0)

2017ll + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档