ANSYS提供的二次开发工具有三个:参数化设计语言(ANSYS Parametric Design Language,APDL),用户界面设计语言(User Interface Design Language,UIDL)以及用户可编程特性(User Programmable Features,UPFs)。其中,前两种可归类为标准使用特性,后一种为非标准使用特性。
APDL 扩展了传统有限元分析范围之外的能力,提供了建立标准化零件库、序列化分析、设计修改、设计优化以及更高级的数据分析处理能力,包括灵敏度研究等。
利用UPFs,用户可以开发下列方面的功能程序:(1) 开发用户子程序实现从ANSYS数据库中提取数据或将数据写入ANSYS数据库。该种子程序可以编译连接到ANSYS中,此时ANSYS提供了10个数据库操作命令;如果作为外部命令处理,可以在ANSYS的任何模块中运行;(2) 利用ANSYS提供的子程序定义各种类型的载荷,其中包括BF或BFE载荷、压力载荷、对流载荷、热通量和电荷密度等;(3) 利用ANSYS提供的子程序定义各种材料特性,包括塑性、蠕变、膨胀、粘塑性、超弹、层单元失效准则等;(4) 利用ANSYS提供的子程序定义新单元和调整节点方向矩阵,ANSYS最多可以有6个独立的新单元USER100-USER105;( 5) 利用ANSYS提供的子程序修改或控制ANSYS单元库中的单元;(6) 利用UEROP创建用户优化程序,可以用自己的算法和中断准则替换ANSYS优化过程。(7) ANSYS程序作为子程序在用户程序中调用,如用户自定义的优化算法。
ANSYS 软件本身是通过FORTRAN和C语言开发的。使用UPFs进行二次开发,在安装ANSYS的基础上,还需要Compaq Visual FORTRAN和MS Visual C++的支持。
ANSYS软件Windows 版本在安装目录下的/custom/User/intel/ 位置,提供了大量模块用户可编程子程序的源程序,大部分是基于FORTRAN77语言编写的。
修改以上基于FORTRAN的源代码后,使用ANSYS ANS_ADMIN工具的Relink方式或者在通过当前文件目录下的anscust.bat, makefile, ansysex.def 文件,在满足上述条件的情况下,链接编译可生成新的ANSYS.EXE文件,复制到安装目录的BIN文件夹下,运行则为用户自定义版本的ANSYS 程序。
二次开发的一般步骤:(1)安装时需要选择自定义安装并选中自定义工具;(2)需要相关开发工具的支持,不同的ANSYS版本需要的条件不一样;(3)寻找到相应的FORTRAN 或C语言源文件修改成符合自己要求的新程序代码;(4)通过正确的链接、编译生成新的用户版本的ANSYS程序。
标准ANSYS 交互图形界面可以驱动AN SYS命令, 提供命令的各类输入参数接口和控制开关, 用户在图形驱动的级别上进行有限元分析, 整个过程变得直观轻松。UIDL主要完成以下三种图形界面的设计: 主菜单系统及菜单项、对话框和拾取对话框以及在线帮助系统。
用UIDL 语言编写的程序文件称为控制文件,必须以“.GRN”为扩展名。在ANSYS中,所有的菜单和标准对话框都是由控制文件(用于建立功能操作的UIFUNC1.GRN、UIFUNC2.GRN和用于建立各级菜单的UIMENU.GRN)建立起来的。这些控制文件被保存在Ansys Inc/v80/ANSYS/gui/en-us/UIDL目录下。控制文件由一个控制文件头和至少一个结构块结构构成。而结构块结构按照其不同的类型可划分为菜单结构块,命令结构块和帮助结构块。控制文件头和结构块结构都有严格的格式。
原帖出处未知。