ansys参数化编程与命令手册_APDL命令流在ANSYS Workbench平台的应用 - Go语言中文社区

ansys参数化编程与命令手册_APDL命令流在ANSYS Workbench平台的应用


8510ba466d28bb55111abff367144f4a.png

 推送仿真资讯,工程案例,资料分享!

1、APDL语言与ANSYS WB平台结构计算模块关系

APDL语言是ANSYS公司自己开发的语言,应用在该公司所有的独立模块,即除了后来收购的软件外。 ANSYS WB平台是实现ANSYS所有产品集中协调工作的平台,APDL语言可以应用于WB平台中的Mechanical模块,来实现ANSYS经典环境的所有功能。

c0f102eeb7e8631254c0d9a171d67788.png

Mechanical模块在求解时,也是将用户的GUI操作转换为APDL命令流提交给ANSYS求解器进行求解,然后把求解的结果返回给Mechanical模块。

8e3445f9f4aa3a8b20fb859569f05f64.png

2、APDL命令简介

• ANYS提供两种工作方式,GUI图形用户界面(GraphicalUser Interface又称图形用户接口)操作和命令流。

• 在ANSYS 中,命令流是由一条条ANSYS 的命令组成的一个命令组合,这些命令按照一定顺序排布,能够完成同GUI方式一样甚至GUI不能完成的的 操作。

• 命令流方式融GUI方式、APDL、UPFs、UIDL、MAC,甚至TCL/TK于一个文本文件中,可通过/input命令(或UtilityMenu>File>Read Input From)读入并执行,也可通过拷贝该文件的内容粘贴到命令行中执行。

APDL 是什么 > 命令流通常由ANSYS命令和APDL功能语句组成。APDL(ANSYS Parametric Design Language)为ANSYS参数化设计语言。APDL是用来自动完成某些功能或建模的类似于FORTRAN的解释性语言,提供一般程序语言的功能。它包含三个方面的 内容:工具条、参量和宏命令。灵活运用这三种工具,可以实现快速操作,数据快速传递、更新等功能。

解释性语言

解释性语言的程序不需要编译,在运行程序的时候才翻译,每个语句都是执行的时候才翻译。这样解释性语言每执行一次就需要逐行翻译一次,效率比较低。现代解释性语言通常把源程序编译成中间代码,然后用解释器把中间代码一条条翻译成目标机器代码,一条条执行。

ANSYS命令流与GUI方式联系及其优点

ANSYS命令流可以和GUI方式配合使用,各自分别都能独立完成分析,部分操作只能通过命令方式实现。对于复杂的有限元模型,使用GUI方式的缺点就会暴露,因为一个分析的完成需要进行多次反复。这样,在GUI方式中,就会出现大量重复的操作,会严重影响设计人员的心情。

a7fad2bb364b0c96de097358afc3134d.png

命令流方式的优点

命令流有以下几个优点:

• 可减少大量的重复工作,少许修改的话,只需变动几行代码或者参数就行,可为设计人员节省大量的时间。

• 便于保存和携带,一个复杂的有限元分析的APDL代码也就几百行,也就几十KB。

• 便于交流,设计人员进行交流时,查看APDL代码明显方便得多。

• 高级需求时,可以二次开发。

• 熟练后分析速度要快于使用GUI;减少重复劳动;方便和别人交流。

但这并不是说只需学习命令流就可以了,对于初学者来说,GUI方式是最易懂和入门的方式,熟练的操作GUI可以便于命令的理解。因此,我们在学习ANSYS过程中,菜单操作是对ANSYS使用环境熟悉的一个重要过程。

二次开发涉及到的工具

可以通过ANSYS为用户提供了良好的二次开发环境,开发适用于用户自己的模块,提高分析效率和质量。ANSYS提供了四种次开发工具:APDL;UPFs(User Programmable Features)——用户可编程特性,操作途径是对ANSYS核心FORTRAN代码进行修改,对开发者有限元知识水平要求较高;UIDL(User InterfaceDesign Language)——用户界面设计语言;Tcl(Tool commandlanguage)——工具命令语言,Tk是基于Tcl的图形开发工具箱,二者用于ANSYS界面开发,比UIDL更加接近底层。 如何学习ANSYS命令和APDL

命令流通常由ANSYS命令和APDL功能语句组成。

大致可以通过命令有无前缀区分:

带/的命令:一般是系统命令(总体命令)或各模块标示符,比如功能菜单(Utility Menu)中的多数操作、主菜单(Main Menu)进入各模块。如删除所有的参数以及模型和结果/clear,前处理命令对应的处理器/PREP7,求解模块/SOLUTION,后处理命令/post1、/post26等。

带*的命令:一般是APDL的标识符,也就是ANSYS的参数化语言,

如*do ,,,*enddo等

无/和*命令:是各个模块下的ANSYS命令,使用时需要进入相应的处理器。如/PREP7下才可以使用ET(定义单元)命令。

ANSYS命令按照功能可分为三个大类: 前处理命令、后处理命令、和结果查看命令,每个大类有自己对应的处理器,/PREP7处理器,后处理/POST1、/POST26等。 ANSYS有超过1000条命令,很难有人把这些完完全全记住,我建议先学习APDL语法及规则,记住常用的关键词,配合这些关键词套用需要的命令。然后了解常用的ANSYS命令。对于ANSYS常用命令的学习,网上资料很多,更详细的用法可、以在ANSYS主菜单-help-help topic中查找。 LOG文件的秘密 通过ANSYS GUI操作时,几乎所有的操作都会记录到工作目录jobname.log文件中,并且以ANSYS命令的方式记录。所以,查看log文件就能弄明白操作所对应的命令,这也是初学者学习和编写命令流的一种途径。

c67ce12d6ca0d978cfaf25befbf8a978.png

LOG文件整理

但log里也记录了很多无用的东西,比如转动视角,放大缩小等;选择实体也会产生啰嗦大量代码。这就需要进行整理和简化。

下面7点是网友总结的log文件整理心得

1. 要注意时间,因为每次做的东西都会跟在log文件后面,所以要根据

时间取舍,不是所有的log文件中的内容就有用的,一开始我建议从新建一个文件开始

2. 最好每做一步看一下log文件,可以知道自己的操作对应哪些命令

3. 有些关于存盘、显示视角等命令可以删除

4. 选取实体时往往会产生很多命令,可以简化

5. 整理命令流时要新建立一个文本文件,以便从log文件中拷贝所需要的

6. File菜单中的Read input from可以读入自己所建立的命令流来执行

7. 可以增加注释语句以增强可读性

ANSYS命令解析器 其实有一个小工具可以帮助你快速整理log

AnsysCommandParser ANSYS命令解析器

fa8985d1bdc34b565a9d5cd663ebbd04.png

转换Ansys日志文件命令流的小工具

AnsysCommandParser

http://www.cnblogs.com/wdhust/archive/2011/05/06/2039515.html

用于清理和转换Ansys日志文件(.log文件),以生成等价的Ansys命令流的小工具。

主要功能:

1.删除"/auto“,"/dist“,"/replot"之类因图形界面操作所产生的“无用指令”(对建模和计算本身无影响的指令);

2.将图形界面选择操作所产生的选择操作指令转换为等价,但更加简洁、可读性更好、更适合手工输入的选择操作指令

3、APDL命令在WB中的使用位置

Workbench中APDL命令流的功能:

(1)命令流可以实现材料模型的定义和部分单元的控制;

(2)命令流可以实现对接触对的实常数和关键字的控制;

(3)命令流可以实现对求解的补充控制;

(4)命令流可以补充后处理的功能。

APDL命令在WB中的使用位置涉及WB分析的整个过程。用户可以在前处理、边界、分析设置、求解项、后处理等处插入命令流 用户可以右击几何选项下方的模型,插入命令,该位置主要设置材料模型,用于补充ANSYS WB平台中工程数据模块中没有的材料模型,也可以定义单元,但是要想成功将用户的单元应用到几何模型上,必须要和网格划分设置相协调!

77554619e342f1128e5c6a9a8ab1d317.png

对于装配体结果,用户可以在接触位置右击插入命令流,用来补充设置对接触的控制,主要包括单元关键字和实常数。

6c980c32784ce7409c670976277e9a95.png

用户也可以在求解中插入命令,例如函数加载、数组和表格等。

c5dd646bb61ed10c95b0b27c70790544.png

用户也可以在后处理中插入命令,来丰富观察结果选项,但是建议,如果在WB平台不支持查看结果,直接把结果转换到经典查看。

9ecb8b73a512e644d67fc11db255cfcd.png

4、实例分析

4.1 命令流实例解析——桁架结构受力分析

FINISH

/CLEAR

!进入PREP7并建模

/prep7

et,1,link180 !二维单元

r,1,1000 !以参数形式的实参

r,2,1000

r,3,1000

mp,ex,1,2.1E6 !杨氏模量

mp,prxy,1,0.3

n,1,-1000,0,0

n,2,0,0,0

n,3,1000,0,0

n,4,0,-1000,0

/pnum,node,1

/number,0

real,1

e,1,4

real,2

e,2,4

real,3

e,3,4

finish

!进入求解器,定义载荷和求解

/solu

d,1,all,0,,3

f,4,fx,200000

f,4,fy,-200000

solve

finish

!

!进入POST1并读出状态变量数值

/post1

set,last

etable,evol,volu !将每个单元的体积放入ETABLE

ssum !将单元表格内数据求和

*get,vtot,ssum,,item,evol !VTOT=总体积

rho=2.85e-4

wt=rho*vtot !计算总体积

etable,sig,ls,1!将轴向应力放入ETABLE

!

*get,sig1,elem,1,etab,sig !SIG1=第一个单元的轴向应力

*get,sig2,elem,2,etab,sig !SIG2=二单元的轴向应力

*get,sig3,elem,3,etab,sig !SIG3=三单元的轴向应力

sig1=abs(sig1) !计算轴向应力的绝值

sig2=abs(sig2)

sig3=abs(sig3)

94415cefbd5f203cbf85b816225d9736.png

模型  

a20dad44e6c655529a06faed651b02ee.png

4.2 矩形板受力分析

问题描述:上表面分别加载1、2、3Mpa。采用命令流方式加载,求应力和位移。

dd1a5d0f5c59db6ea56495163e2f78e6.png

cb61dcb74cf402052ae3dd6b9a91b36f.png

定义加载面

ac30fe02977e84cc4135d8bc1fd26113.png

89e9114bc2f2bf7bd838282c3a54b49c.png

72d709725bc02bb225ab60b56ef4e7b4.png

计算结果

4b0585e24955916a89e8d151b0bcca0b.png

来都来了,点个赞再走吧~~~

36f25457340b63f7b3031872fdfbc9ed.gif  
版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/weixin_39620278/article/details/111196659
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2022-12-30 21:16:07
  • 阅读 ( 45 )
  • 分类:Go应用

0 条评论

请先 登录 后评论

官方社群

GO教程

推荐文章

猜你喜欢