转载
利用VB生成APDL文件
和Python文件的方法
作者:李涛
欢迎关注:CAE技术分享
专注于CAE技术的分享和讨论。
1、 概述
Visual Basic作为一种可视化程序设计语言,应用相对简单,是目前使用最多的程序设计语言之一。利用VB可以设计GUI程序界面实现某些特定功能,在CAE领域,VB可以结合ANSYS和Abaqus进行程序化的CAE计算模拟,此应用可以大大降低CAE模拟的重复工作量,提高资源利用率。
ANSYS的批处理功能可以实现自动读取批处理文件,实现整个有限元分析过程,包括前处理、求解和后处理,具体涵盖了材料属性定义、模型建立、载荷和边界条件的施加、求解设置和后处理等等,ANSYS的批处理操作界面如图1所示,图中第一个红框里面设置批处理环境(ANSYS Batch),第二个红框里设置工作目录(Working Directory)、项目名称(Job Name)、批处理文件(Input File)以及输出文件(Output File),其中Input File 是由ANSYS的APDL语言编写的文件,设置之后即可实现ANSYS批处理,批处理计算过程不能显示ANSYS操作界面。
图1 ANSYS的批处理操作
baqus的内置语言是Python,与ANSYS类似,每一步操作都会有对应的Python命令,一个完整的Python编写的脚本文件可以在Abaqus里面运行,而执行完整的有限元分析过程。Abaqus执行脚本文件的方法有几种,其中最适合于外界其他软件进行对接的执行方式是通过Abaqus Command窗口的命令提示符进行执行。
图2 Abaqus Command执行脚本文件的方式
无论如何,ANSYS的APDL文件和Abaqus的Python文件都需要事先编写好,才能借助这两款软件执行。本次主要介绍采用Visual Basic语言实现APDL文件和Python文件的自动生成。
2、方法
2.1 VB与APDL
事先编写好的文件为ansys.txt,其格式如图3所示,这些APDL命令不能直接嵌入VB进行使用,而是需要进行一定的转换,转换完成后可以嵌入VB程序里面,再由VB程序生成批处理文件,用于ANSYS执行有限元分析过程。
图3 APDL文件格式
在VB里面的语句格式如图4所示。
图4 VB里面的APDL语句
对比图3和图4,可知两者相差的语句部分为PrintLines(input,),因此只需在APDL语句补上该部分即可,为此编写一些语句实现这个添加功能。语句如图5所示,通过VB打开并读取ansys.txt文件,再通过固定的输出格式输出添加语句后的文件,最终得到如图6所示的VB_ansys.txt文件。
图5 语句添加代码
图6 添加后的输出文件
VB_ansys.txt文件中的语句即可直接嵌入到VB里面。
2.2 VB与Python
虽然Python脚本文件格式与APDL文件格式不一样,但是将Python脚本文件处理成VB可以直接用来嵌入的语言格式的方法完全一样。如图7和图8所示,分别是处理前和处理后的文件格式。
图7 Python文件
图8添加后的输出文件
技术·干货
合肥工业大学
越影FSAE车队
相关系列技术文定期更新中,请大家继续关注。