转载

利用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车队

相关系列技术文定期更新中,请大家继续关注。

python调用vb文件_【转载】利用VB生成APDL文件 和Python文件的方法相关推荐

  1. python调用手机麦克风_如何从麦克风的声音输入在python,并处理它的飞?

    如果使用LINUX,可以使用 pyALSAAUDIO. 对于windows,我们有 PyAudio,还有一个名为 SoundAnalyse的库. 我发现了一个例子为Linux here: #!/usr ...

  2. [IDEA] 利用IDEA生成可运行的JAR文件

    利用IDEA生成可运行的JAR文件 使用jar生成JAR比较繁琐且容易出错,IDEA已经为我们提供了相应的功能,让我们来学习一下吧 [右键点击项目]-> [Open Module Setting ...

  3. python调用摄像头转向_教你如何利用python调用摄像头

    这篇文章主要介绍了python调用摄像头的示例代码,帮助大家更好的理解和使用python,感兴趣的朋友可以了解下 一.打开摄像头 import cv2 import numpy as np def v ...

  4. python编写请求参数带文件_转载:如何编写一个带命令行参数的Python文件

    看到别人执行一个支持命令行参数的python文件,瞬间觉得高大上起来.牛逼起来,那么如何编写一个带命令行参数的python脚本呢?不用紧张,下面将简单易懂地让你学会如何让自己的python脚本,支持命 ...

  5. python操作sqlite3 导入csv文件_[转载]SQLite 3导入导出成txt或csv操作

    平时使用官方提供的sqlite3.exe工具来操作 sqlite的数据库,可以在网上下到. 进入管理: sqlite3.exe d:\\test.db //假设数据是 d:\\test.db > ...

  6. python调用vbs脚本_使用python创建的参数执行vbs文件

    我想一次将几十个excel表格转换成csv文件.我有一个正在工作的.vbs文件来进行转换,我想在python代码的帮助下在不同的工作表上执行这个.vbs文件.我有以下两个版本的python代码: 版本 ...

  7. python调用手机摄像头_教你如何利用python调用摄像头

    这篇文章主要介绍了python调用摄像头的示例代码,帮助大家更好的理解和使用python,感兴趣的朋友可以了解下 一.打开摄像头 import cv2 import numpy as np def v ...

  8. python如何并发运行2个软件_如何利用并发性加速你的python程序(二):I/O 绑定程序加速...

    原标题:如何利用并发性加速你的python程序(二):I/O 绑定程序加速 雷锋网 AI 科技评论按,本文是工程师 Jim Anderson 分享的关于「通过并发性加快 python 程序的速度」的文 ...

  9. Python批量下载电子邮件附件并汇总合并Excel文件_如何让繁琐工作自动化:聊聊Python与RPA...

    RPA,是Robotic Process Automation的英文缩写,中文是机器人流程自动化,利用软件将重复性的工作自动化.基本目标是让人从重复性强的繁琐工作中解放出来去做更有意义更具创造性的工作 ...

  10. 中国大学moocpython笔记_[转载]中国大学MOOC_高级语言程序设计(Python)笔记

    一.程序设计基础 1.Python历史 2.Python特点 Python的伪代码(形式语言)更接近于自然语言(自然语言) 胶水语言 3.Python的应用:Google.Youtube等 4.IDE ...

最新文章

  1. Jmeter 多台机器产生负载及问题解决方法
  2. echarts图表实例
  3. oracle-sql汇总
  4. 解决bash: mysql: command not found 的方法【linux mysql命令 】
  5. 阿里最后一面,高并发下如何设计一个秒杀系统?
  6. Python学习笔记,爬取笔趣阁小说
  7. day3—python——字符串常用方法
  8. Python自动化运维之15、网络编程之socket、socketserver、select、twisted
  9. 本地开发时同时启动多个tomcat服务器
  10. nginx+tomcat+memcached
  11. python爬取教务系统_python 爬取 强智科技教务系统(湖南)
  12. 四阶龙格库塔法c语言程序,四阶龙格库塔法C语言(西安交大)
  13. 家庭记账的最简单方法
  14. Codeforces Round #700 (Div. 2)-B. The Great Hero-题解-一行实现向上取整
  15. 千江有水千江月 万里无云万里天
  16. mysql进行创建序列化
  17. 2020年,微信的基地属性正在悄然转向
  18. 叉乘点乘混合运算公式_小学数学所有公式和顺口溜都在这里了,假期让孩子背熟!...
  19. php5.6 ecshop,PHP 5.6以上版本运行 ecshop不兼容问题解决方案
  20. 图片免费转pdf图片、图片免费转成word、图片免费转excel表格

热门文章

  1. 现货白银报价系统与软件
  2. 对话框程序禁用系统的关闭按钮X
  3. 香港理工大学打破数据中心光纤通讯速度世界纪录
  4. React-(1)React工程搭建(脚手架)
  5. html 定义悬浮块层级,采用CSS3的动态元素(动画)设计div块的层级式展现
  6. [课业] 19 | 软工 | 软件体系结构设计与构建
  7. TiDB删除大数据的处理
  8. php 属猪,属猪人手机号码数字吉凶
  9. 图片的放大和缩小(不失帧)
  10. 域名服务器中存放主机的什么位置,域名服务器中存放主机的域名