Abaqus_Python 基于abqpy的python3版本的二次开发【没写完,慢慢更新】

前言

介绍abaqus和python二次开发的教程较少,而比较常见的一种python二次开发方法是:使用PythonReader.exe去读取Abaqus运行后的内部生成代码(即对应temp目录下的abaqus.rpy,例如“Abaqus\temp\abaqus.rpy”)再粘贴到.py文件中,打开使用Abaqus->“运行脚本”执行.py文件复现之前的操作。通过添加一些for循环和判断语句实现复现的操作中的部分参数的修改和仿真结果的数据导出。
在VSCode上编写修改上述.py文件时,常出现大量红色波浪线且无法消除(对应的调用库均为Abaqus内置的API,无法被外部读取)。为了便捷化编写Abaqus二次开发的python代码,并提高效率,我在github上找到了一个叫abqpy的开源项目,以下是我学习后整理的笔记。(欢迎交流)

注:

以下内容均翻译、参考自abqpy的官方文档:https://docs.abqpy.com/en/stable/getting_started.html
abqpy的官方github地址:https://github.com/haiiliin/abqpy
abqpy的官方示例:https://github.com/haiiliin/abqpy/tree/2023/examples

目录

  • 前言
    • 注:
  • 入门
    • 介绍
    • 安装
    • 工作机理
    • 这个包如何工作
    • 编写Abaqus/Python脚本
    • 运行Abaqus/Python脚本

入门

介绍

abqpy是一个为 Abaqus 的 Python 脚本提供类型提示的 Python 包,您可以使用它流畅地编写 Abaqus 的 Python 脚本,甚至无需在 Abaqus 中执行任何操作。它还提供了一些简单的 API 来执行 Abaqus 命令,以便您可以运行 Python 脚本来构建模型、提交作业并在一个 Python 脚本中提取输出数据,甚至无需打开 Abaqus/CAE。
(也就是说,abqpy是用来编写abaqus的python脚本的模块,可以实现无gui运行,但不支持调试(因为abaqus不支持外调))

安装

安装环境:Python 3.7+Abaqus 2016+
安装命令:

pip install abqpy==2023.* # 推荐
pip install abqpy==2023.5.3 
pip install abqpy

(官方建议安装同版本的abaqus和abqpy避免兼容性问题,截止230705最新版是2023.5.3,能查到的最旧版本是2022年发布的v2016a0。个人建议,安装abaqus2022(网上已有资源),并pip install abqpy==2022.5.3,使版本匹配)
在这里插入图片描述

工作机理

当我们使用 Abaqus/CAE 图形用户界面 (GUI) 创建模型并可视化结果时,每次操作后 Abaqus/CAE 都会在内部发出命令。这些命令反映了您创建的几何图形以及您从每个对话框中选择的选项和设置。GUI 使用称为 Python 的面向对象编程语言生成命令。GUI 发出的命令被发送到 Abaqus/CAE 内核。内核解释命令并使用选项和设置来创建模型的内部表示。内核是 Abaqus/CAE 背后的大脑。GUI是用户和内核之间的接口。

总之,Abaqus 使用 Python 语言与 Abaqus 内核交互,在 Abaqus/CAE 中可以完成的所有操作,也可以使用 Python 脚本完成。Abaqus 已经安装了 Python 解释器,以便 Abaqus/CAE 可以使用它与 Abaqus 内核进行交互。

由于某些原因,我们无法直接使用 Abaqus 内部的 Python 解释器来构建 Abaqus 模型。但幸运的是,我们可以使用Abaqus提供的命令来访问它。

abaqus cae[database=database-file][replay=replay-file][recover=journal-file][startup=startup-file][script=script-file][noGUI=noGUI-file][noenvstartup][noSavedOptions][noSavedGuiPrefs][noStartupDialog][custom=script-file][guiTester=GUI-script][guiRecord][guiNoRecord]

通常,我们可以使用 noGUI 文件或脚本文件在 Abaqus 中执行 Python 脚本。
另外一个Python解释器,就是我们自己安装的Python解释器,abqpy 安装在哪里(这里翻译不对,原文的where是地点状语从句,这句话是指abqpy安装在我们自己的python解释器中)。abqpy提供了一个将我们的Python脚本连接到Abaqus Python解释器的桥梁,它为Abaqus的Python脚本提供了类型提示,使我们能够快速编写Abaqus Python脚本。


(概括地说)Abaqus内部有一个python解释器,我们本身也有一个python解释器(以VScode为例)。Abaqus的python只能用noGUI或脚本文件在Abaqus中执行,因此VScode中无法编译它。而abqpy模块提供了一个桥梁,让我们VScode中编写的abaqus脚本不会报错(未知类型有红色波浪线),基于此,我们可以在VScode中编写abaqus脚本并运行、获取仿真结果,但无法调试。abqpy安装在我们VScode的python环境中。

这个包如何工作

abqpy只是一个为 Abaqus/Python 脚本提供类型提示的包,它安装在 Abaqus/Python 环境之外,您可以使用它abqpy来编写 Abaqus/Python 脚本,并自行在 Abaqus 内运行脚本。然而,借助 Abaqus 命令,可以实现更简单的方法:您实际上可以使用自己的 Python 解释器运行脚本,而无需打开 Abaqus,这是通过abaqus命令实现的,如下所示:

abaqus cae noGUI=script.py

编写Abaqus/Python脚本

运行Abaqus/Python脚本

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/9152.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Linux】Selinux基本了解

文章目录 SElinux1.简介2.基本概念3.规则4.策略5.工作模式 SElinux 1.简介 SELinux是一个内核级别的安全机制,从Linux2.6内核之后就将SELinux集成在了内核当中。因为SELinux是内核级别的,所以我们对于其配置文件的修改都是需要重新启动操作系统才能生效…

小狐狸ChatGPT付费创作系统V2.1.0独立版 +WEB端+ H5端 + 小程序端安装教程

播播资源针对ChatGPT付费创作系统V2.1.0提供最新的对应版本小程序端全套测试,上一版本增加了PC端绘画功能,绘画功能采用其他绘画接口-意间AI,本版新增了百度文心一言接口。后台一些小细节的优化及一些小BUG的处理,前端进行了些小细…

【运维知识进阶篇】zabbix5.0稳定版详解6(zabbix自动化监控:自动发现+自动注册+监控项目主动式)

本篇文章继续给大家介绍zabbix自动化监控,包括zabbix自动注册,zabbix自动发现,将主机添加进服务端之后需要做的监控项目更改为主动式,zabbix说多不多,说少不少,其实远没有监控那么简单,更深层次…

【实证分析】地区竞争、推广数字普惠金融与绿色经济效率

研究内容 基于考虑非期望产出的 Super-SBM 模型测算了 2011—2018 年中国 265 个地级市的绿色经济效率,综合运用面板模型、空间杜宾模型,系统分析了地区竞争下推广数字普惠金融对绿色经济效率的影响效应。研究发现:(1)绿色经济效率存在显著正向空间溢出效应,地理距离与经济差异…

部署LVS-DR群集博客

文章目录 部署LVS-DR群集一.LVS数据包流向分析1.数据包流向2.DR 模式的特点 二.LVS-DR中ARP的问题1.问题11.1 解决办法 2.问题22.1 解决办法 三.LVS-DR特性1.LVS-DR模式需要注意2.优点3.缺点 四.案例,构建LVS-DR集群部署1.LVS-DR集群构架图2.DR模式 LVS负载均衡群集…

测试Hyperledger Fabric环境

首先进入fabric-samples目录中的first-networked 子目录 cd fabric-samples/first-network 在first-network目录下有一个自动化脚本byfn.sh,可以使用-help参数查看相应的可 用命令,在命令提示符中输入如下命令: ./byfn.sh --help命令执行成功后&#…

短视频矩阵系统源码自研+开发技术文档

一、短视频矩阵系统源码自研(站在开发者交付分析) 目录 一、短视频矩阵系统源码自研(站在开发者交付分析) 二、 短视频矩阵系统需要开发的前提语言框架技巧:NGINX,PHP7.4,MySQL5.7&#xff0…

聚焦云原生安全攻防|构建纵深防御的运行时威胁检测体系

7月2日,诸子云北京分会研讨会活动—网络安全攻防对抗在北京成功举办。作为国内云原生安全领导厂商,安全狗也参与此次活动。 近年来,国际网络空间安全威胁事件发生频率越来越高、影响范围越来越大,对国内不断依赖5G、云计算等新兴…

JavaScript 进阶 - 第4天

JavaScript 进阶 - 第4天笔记 文章目录 JavaScript 进阶 - 第4天笔记1 深浅拷贝1.1 浅拷贝1.2 深拷贝(面试)1.2.1 递归实现深拷贝1.2.2 js库lodash里面cloneDeep内部实现了深拷贝1.2.3 JSON序列化 2 异常处理2.1 throw 抛异常2.2 try ... catch 捕获异常…

pip安装指定包,找不到如何解决?

背景:现如今,在跑神经网络的时候,需要配置一些开源项目从而需要指定一些特定环境是必不可少的一个步骤,但是很多时候使用pip安装包的时候,总是找不到需要的版本。比如,今天需要配置open3d 0.15.1版本的环境…

玩游戏感觉很不流畅,无法进入游戏的解决方法

别说3A大作了,有时候觉得玩个小单机游戏感觉很不流畅,甚至进不去游戏,出现这种情况大家就得多关注下自己电脑故障问题了,驱动人生帮大家解决玩游戏不流畅,无法进入游戏的故障问题。 出现玩游戏感觉很不流畅&#xff0…

短视频seo矩阵系统+抖音小程序源码开源部署(二)

一、短视频矩阵源码系统开发要则: 1. 需求分析:对短视频平台的需求进行全面分析,确立系统开发目标和方向。 2. 技术选型:选用最适合的技术开发短视频矩阵系统,如前端框架、数据库、服务器等。 3. 系统设计&#xff…