UIDL综实例.doc

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

第四章UIDL实例解析二 (a)α图1 (a) α 图1 (b) H r 如图1(a)一所示,一带孔薄板,长4000mm,宽2000mm,顶部中心部分1800mm处承受42MP的压力,左右两个长圆孔中心分别踞四周1000mm,长圆孔的具体形式如图1(b)所示,上下分别为半圆,中部用直线衔接。这里假设长圆长轴与水平方向夹角为α。 为了使得孔边缘应力集中最小,这里拟调整α的大小(α∈[-π/2, π/2]),以便在固定的H情况下达到长圆孔周围应力集中最小。 本章中,我们将仅仅限于UIDL部分完成这个问题,即实现如下功能:通过菜单和对话框,用户输入参数H的大小,我们让Ansys自动生产整个分析模型。 4.2环境准备及构建对话框: 基于上一个实验的环境,在~/UIDL目录下构建一个输入脚本,这里我们权且称其为create.inp,该脚本能针对固定的r、H、α来构建出分析模型。Create.inp脚本文件可以参看附录。 图2在文件UIFUNC2.GRN中任意两个结构块之间添加函数DoProject的定义: 图2 -------------------------------------------------------------- :N Fnc_DoProject :S 0, 0, 0 :T Command :A Optimize My Project :D Please Input the Custom Information :C )*SET,My_H,150 Inp_NoApply Cmd_)*Cset,1,1 Fld_0 Typ_Lab Prm_Custom the Geographic Information Fld_2 Prm_ Please Input the H for Analysis(100~200) 图3 Typ_INT 图3 Def_*PAR(MY_H) Cmd_)/Go Cmd_)fini Cmd_)/clear Cmd_)*GET,My_H,CPAR,1 Cmd_)/Input,create,inp :E END :! ------------------------------------------------------------------ 这里我们可以清晰的看到,在命令结构块中,:A命令后的说明将出现在调用该函数的菜单项中,如图2所示,:D命令后的说明将出现在我们定制的对话框标题上。 几点说明: 这里我们定制了一个对话框(无拾取点线等的功能),在任何一个自定义的对话框中,至少应该有一个Typ_命令,但不能有Inp_P命令。 本对话框由于比较简单,不需要Apply按钮(该按钮多用来处理复杂输入,动态刷新功能),因此我们设定为 Inp_NoApply命令。 下面的Fld_0,Fld_2什么的都是一个个对话框域。不同的数据输入域,比方说:输入框、多选框、列表框的都必须有独立的域号,象本例中一个数值输入框域代号为2。但所有静态文本都可以写在Fld_0域内,因为不会出现我们调用时的冲突。这里,我们的Fld_0域内是Typ_Lab的静态文本,内容书写在Prm_后。Fld_2域是一个整数输入对话框域(Typ_INT),前面Prm_后有一段文字说明,并设定默认值(Def_)。 下面的几行Cmd_)后跟的都是针对这一数值输入域处理的Ansys命令,主要功能是先清数据库,再取到域2内用户输入的H参数值,然后进行基于该参数的模型构建。 输出结果: 这是α=π/4,H=150情况下自动生成的几何模型。虽然例子比较简单,但我们从中可以掌握一种GUI定制参数并运用到脚本建模中的技巧,掌握了这种技巧,我们就不难轻松的构建各种更加复杂的模型。 4.3参数提取杂谈 上面我们看到了一种比较简单有效的对话框参数提取、传递的技巧,其实在Ansys中参数的提取有好些方法。 通常的用户命令中(比方说设定实常数等),Ansys中由于有固定的命令与其对应,在GUI函数命令中Ansys是这样定制的,在对话框起始处给出一个Cmd_R命令(这里以提取实常数命令R为例),其后对应的Fld_2、Fld_3等域Ansys将自动拾取之并对应R命令的第二个参数、第三个参数等。但我们初学二次开发时不可能拥有自己的命令,因此这里我们弃而不用。等以后我们学习了UPF二次开发工具,能够定制自己的命令后,我们再来回顾一下这种参数话方法。 这里我们使用的是CSET命令和CPAR命令,也是一种比较简洁有效的方式。命令结构块头部分我们用:C )*SET,My_H,150命令在环境中设定一变量My_H,初值为150,并用Def_*PAR(MY_H)命令指定为数值域的初值。然后用Cmd_)*CSET,1,1命令把

文档评论(0)

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

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

1亿VIP精品文档

相关文档