ANSYS程序的二次开发(3)

2019-03-16 21:42

Prm_ Please Input the H for Analysis(100~200) Typ_INT

Def_*PAR(MY_H) Cmd_)/Go Cmd_)fini Cmd_)/clear

Cmd_)*GET,My_H,CPAR,1 Cmd_)/Input,create,inp :E END :!

------------------------------------------------------------------

图3

这里我们可以清晰的看到,在命令结构块中,: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参数值,然后进行基于该参数的模型构建。

3. 输出结果:

这是α=π/4,H=150情况下自动生成的几何模型。虽然例子比较简单,但我们从中可以掌握一种GUI定制参数并运用到脚本建模中的技巧,掌握了这种技

11

巧,我们就不难轻松的构建各种更加复杂的模型。

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命令把第一个数值域的内容指定存储到*CSET命令对应的一矢量数值中,其次在数值域中指定用Cmd_)*GET,My_H,CPAR,1命令让参数My_H再把用户输入的数值域内容从该矢量数组中读回来,这样我们就有了一个用户输入的参数值My_H,最后就可以直接调用脚本文件,生成需要得到的参数化建模结果。

在UIFUNC2.GRN中我们还可以看到其他一些参数化提取方式,比如说利用系统参数_z1~_z9…,用命令*GET,PAR,CMD,0,FIELD,2来拾取命令中域2中的内容到自己设定的参数中。以后我们可以对各种方法都练练手,这里就不再赘述了。

4结束语

上面我们用UIDL对话框的技术轻松实现了有用户化界面的参数化建模,在以后的例子中我们将对这个实例进行完善,并融入APDL和UPF的内容。

附录

create.inp清单:

----------------------------------------------------------------------------------------- !This is a script which can create the modal with a parameter sita.

!Clear the workspace !fini

!/clear,nostart

!Setup the Parameters PI=4*atan(1) sita=PI/4 r=200

12

!H=150 H=My_H

!Customize the Material Property keyw,pr_struc,1 /prep7

et,1,shell63

r,1,120,120,120,120

uimp,1,ex,dens,nuxy,2400,1.2,0.375

!Modeling !Create plate k,1,0,0 k,2,2000,0 k,3,2000,2000 k,4,0,2000 k,5,1800,0 k,6,1000,1000 l,1,5 l,5,2 l,2,3 l,3,4 l,4,1

al,1,2,3,4,5

!Create hole

!Create my coordinate

k,7,1000+H*cos(sita),1000+H*sin(sita)

k,10,1000+H*cos(sita),1000+H*sin(sita),100 k,8,1000+r*cos(sita+PI/2),1000+r*sin(sita+PI/2) cskp,11,0,6,7,8 csys,11

!Create Hole k,9,H,r l,7,9 l,7,6

adrag,6,,,,,,7

arotat,6,,,,,,7,10,-90 arsys,y,2,3,1 arsym,x,2,5,1

aadd,2,3,4,5,6,7,8,9

13

asba,1,10

UIDL实例解析三

1问题描述

本章我们我们将描述UIDL的最后一个功能—构建我们自己的联机帮助文档。 诚然联机帮助在一般的开发过程中有点无足轻重,但如果你想让你的工作更加完善、更加专业的话,建立起自己强大的帮助系统是必不可少的,这一个实例中我们将对UIDL实例二构建我们自己的联机帮助文档。构建完联机帮助文档后,在菜单中点击DoProject菜单项将显示如下对话框: 看到了把,现在这个对话框中增加了一个Help按钮,点击这个Help按钮看看效果把,显示结果如下:

这里的文字可以任意,轻松写入任何泥想写入的帮助信息巴。下面我们就详细的说明如何建立这样的一个联机帮助。

2环境准备及构建联机帮助:

Ansys中的联机帮助一般有三种形式:ASCII形式,ZBitmap形式,PostScript形式。PostScript形式的联机帮助多是在Unix下和打印功能有关的,我们这里就不加详述了。ZBitmap形式的联机文档应该是功能最强大的,应该类似于Windows下的PDF格式帮助文

14

档把,可以在帮助文档中有图形或者文字的超级链接,构建这样的帮助文件我们得需要构建744pixels×925pixels的XWD格式图像,xwd格式是UNIX中用xwd工具抓图所得的一种图像格式,可惜的是这里我们崭时缺少这样能够生成固定尺寸格式的XWD图像文件的工具,所以这里我们也不准备仔细对它的构建方法进行描述(你可以试验用任意尺寸的XWD格式构建ZBitmap格式的帮助文档,正常情况下Ansys系统应该不加显示任何图片)。 这里我们在上一个实例的基础上描述一下如何建立ASCII形式的帮助文档。

1. 在Unix下,构建你的帮助文档文字信息,把它存成文件hlp_other2:

――――――――――――――――――― ZengP Work Group

This Project is designed by Heling. Enjoy it!

――――――――――――――――――― 2. 检查hlp_other2文件字节数:

Unix下可以用命令ls hlp_other2或者wc –c hlp_other2命令查看该文件的字节数,这里得出的字节数为63

3. 构建帮助文件的数据控制部分,把它存成hlp_other1

――――――――――――――――――― Customized Help Hlp_ Hlp_ ASCII 63

END_OF_HYPERLINKS

―――――――――――――――――――

这里的数据控制部分是有固定格式的,第一行表示帮助对话框的标题。 第二行和第三行是描述该帮助文件的前端链接和后端链接。这里由于是我们自己定义的帮助文档,没有前端链接和后端链接,因此我们都把它写成Hlp_就可以了,第四行是描述帮助文件格式、字节信息的,这里我们是ASCII格式,字节数是上一步中得到的字节数63(对ZBitmap格式后面需要提供压缩后字节数和压缩前字节数两个信息,具体做法请自己参看UIDL帮助手册)。以下到最后一行的END_OF_HYPERLINKS之间是定义帮助文档之间超级链接的,由于我们这里是做ASCII的帮助信息,不是ZBitmap格式的,因此没有任何超级链接需要定义。 4. 把hlp_other1和hlp_other2合成一个文件hlp_other

êt hlp_other1 hlp_other2 >hlp_other 5. 检查一下文件hlp_other的字节数

%wc –c hlp_other

这个例子中得到的字节数是116

6. 构建帮助文件的头信息,把它存储为head_other:

――――――――――――――――― :N Hlp_0_Contents

:S 0, 0, 0 :T HELP 116

――――――――――――――――― 7. 构建帮助文件尾信息,把它存储为end:

―――――――――――――――――

15


ANSYS程序的二次开发(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:农产品电子商务交易平台建设可行性实施方案 - 图文

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: