热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Python脚本编写创建输出数据库并添加模型和场数据的方法

本文介绍了使用Python脚本编写创建输出数据库并添加模型数据和场数据的方法。首先导入相应模块,然后创建输出数据库并添加材料属性、截面、部件实例、分析步和帧、节点和单元等对象。接着向输出数据库中添加场数据和历程数据,本例中只添加了节点位移。最后保存数据库文件并关闭文件。文章还提供了部分代码和Abaqus操作步骤。另外,作者还建立了关于Abaqus的学习交流群,欢迎加入并提问。

点击上方蓝色字体关注木木吧!

Python二次开发更新啦~
最近由于木木学业压力比较大,故更文速度有点小慢,请大家谅解谅解。废话不多说,进入今天的正题:

本期内容将编写脚本创建输出数据库,并向其中添加模型数据、场数据和历史数据,在后处理模块中显示位移场变量计算结果,最后保存ODB文件。源脚本来自于曹老师的《Python语言在Abaqus中的应用》,好书值得推荐!


编程思路:

  • 导入相应模块。本例中将创建输出数据库,并向其中添加数据,于是应添加:odbAccess、odbMaterial、odbSection、和abaqusConstants等模块;

  • 创建输出数据库时,数据库不包含任何模型需要调用相应函数构造对象。一般情况下需要创建以下对象:材料属性(Material模块)、截面(Section模块)、部件实例(Assembly模块)、分析步和帧(Step模块)、节点和单元(Mesh模块);

  • 向输出数据库中添加场数据和历程数据,本例中只向输出数据库中添加了节点位移,场输出为默认输出;

  • 创建完数据库后,应调用save( )方法保存数据库文件,然后调用close( )方法关闭文件。

部分代码如下:(源代码可在公众号内回复:创建数据库,即可自动获取)

#!/user/bin/python
# -* - coding:UTF-8 -*-
# 本脚本的功能是创建输出数据库,添加模型数据和场数据
# 并将场数据作为默认的变形输出变量


from odbAccess import *
from odbMaterial import *
from odbSection import *
from abaqusConstants import *


# 创建输出数据库ODB,同时将创建根装配rootAssembly
odb = Odb(name='simpleModel',analysisTitle='ODB created with API',
description='example illustrating API ',path='odb_Create_ODB.odb')

# 创建材料
materialName = "Elastic Material"
material_1 = odb.Material(name=materialName)
material_1.Elastic(type=ISOTROPIC,temperatureDependency=OFF,
dependencies=0,noCompression=OFF, noTension=OFF,
moduli=LONG_TERM, table=((12000,0.3),))

# 创建截面
sectiOnName= 'Homogeneous Shell Section'
section_1 = odb.HomogeneousShellSection(name=sectionName,
material=materialName, thickness=2.0)
# 下面将定义模型数据
# 设置截面分类(section categories)
sCat = odb.SectionCategory(name='S5',description='Five-Layered Shell')
spBot = sCat.SectionPoint(number=1,description='Bottom')
spMid = sCat.SectionPoint(number=3,description='Middle')
spTop = sCat.SectionPoint(number=5,description='Top')


# 创建只包含2个单元的壳模型,包含4个积分点和5个截面点
part1 = odb.Part(name='part-1', embeddedSpace=THREE_D,type=DEFORMABLE_BODY)


nodeData = ((1, 1,0,0),(2, 2,0,0),(3, 2,1,0.1),(4, 1,1,0.1),(5, 2,-1,-0.1),(6, 1,-1,-0.1),)
part1.addNodes(nodeData=nodeData,nodeSetName='nset-1')
......

在Abaqus操作如下:点击File,Run Script,



若CAE界面下方出现:

New output database has been created successfully!

You can view the odb_Create_ODB.odb file in the visualization module!

则odb文件已经成功创建,在Visualization模块中不要直接点击变形图,而应该先在此模块中打开odb文件,在点击变形云图,如图所示:


软件操作步骤如下:

本期代码就分享在这里了,大家有兴趣可在留言板进行留言,和木木互动起来~

留言板

另外向大家宣布一件事情,应粉丝要求,木木建立了关于Abaqus的学习交流群,本群旨在汇集Abaqus相关问题以及二次开发技术,相关资料整理后会发布在百度云,大家可以在木木的公众号内回复关键词自动获取,欢迎大家加入,可以在群内抛出问题,大神们看到会尽量解答~可在公众号内点击菜单栏:



喜欢本期内容的话可以点击在看哦,分享给身边的同学们~我们下期再见啦

往期推荐



Python脚本——输出场输出数据

ABAQUS自定义插件制作

Abaqus二次开发之Python(1)




推荐阅读
  • 开发笔记:加密&json&StringIO模块&BytesIO模块
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了加密&json&StringIO模块&BytesIO模块相关的知识,希望对你有一定的参考价值。一、加密加密 ... [详细]
  • vue使用
    关键词: ... [详细]
  • sklearn数据集库中的常用数据集类型介绍
    本文介绍了sklearn数据集库中常用的数据集类型,包括玩具数据集和样本生成器。其中详细介绍了波士顿房价数据集,包含了波士顿506处房屋的13种不同特征以及房屋价格,适用于回归任务。 ... [详细]
  • 本文介绍了如何使用PHP向系统日历中添加事件的方法,通过使用PHP技术可以实现自动添加事件的功能,从而实现全局通知系统和迅速记录工具的自动化。同时还提到了系统exchange自带的日历具有同步感的特点,以及使用web技术实现自动添加事件的优势。 ... [详细]
  • 微软头条实习生分享深度学习自学指南
    本文介绍了一位微软头条实习生自学深度学习的经验分享,包括学习资源推荐、重要基础知识的学习要点等。作者强调了学好Python和数学基础的重要性,并提供了一些建议。 ... [详细]
  • Iamtryingtomakeaclassthatwillreadatextfileofnamesintoanarray,thenreturnthatarra ... [详细]
  • 本文介绍了使用kotlin实现动画效果的方法,包括上下移动、放大缩小、旋转等功能。通过代码示例演示了如何使用ObjectAnimator和AnimatorSet来实现动画效果,并提供了实现抖动效果的代码。同时还介绍了如何使用translationY和translationX来实现上下和左右移动的效果。最后还提供了一个anim_small.xml文件的代码示例,可以用来实现放大缩小的效果。 ... [详细]
  • 本文介绍了设计师伊振华受邀参与沈阳市智慧城市运行管理中心项目的整体设计,并以数字赋能和创新驱动高质量发展的理念,建设了集成、智慧、高效的一体化城市综合管理平台,促进了城市的数字化转型。该中心被称为当代城市的智能心脏,为沈阳市的智慧城市建设做出了重要贡献。 ... [详细]
  • 本文介绍了数据库的存储结构及其重要性,强调了关系数据库范例中将逻辑存储与物理存储分开的必要性。通过逻辑结构和物理结构的分离,可以实现对物理存储的重新组织和数据库的迁移,而应用程序不会察觉到任何更改。文章还展示了Oracle数据库的逻辑结构和物理结构,并介绍了表空间的概念和作用。 ... [详细]
  • Linux重启网络命令实例及关机和重启示例教程
    本文介绍了Linux系统中重启网络命令的实例,以及使用不同方式关机和重启系统的示例教程。包括使用图形界面和控制台访问系统的方法,以及使用shutdown命令进行系统关机和重启的句法和用法。 ... [详细]
  • Android Studio Bumblebee | 2021.1.1(大黄蜂版本使用介绍)
    本文介绍了Android Studio Bumblebee | 2021.1.1(大黄蜂版本)的使用方法和相关知识,包括Gradle的介绍、设备管理器的配置、无线调试、新版本问题等内容。同时还提供了更新版本的下载地址和启动页面截图。 ... [详细]
  • 本文介绍了Hyperledger Fabric外部链码构建与运行的相关知识,包括在Hyperledger Fabric 2.0版本之前链码构建和运行的困难性,外部构建模式的实现原理以及外部构建和运行API的使用方法。通过本文的介绍,读者可以了解到如何利用外部构建和运行的方式来实现链码的构建和运行,并且不再受限于特定的语言和部署环境。 ... [详细]
  • XML介绍与使用的概述及标签规则
    本文介绍了XML的基本概念和用途,包括XML的可扩展性和标签的自定义特性。同时还详细解释了XML标签的规则,包括标签的尖括号和合法标识符的组成,标签必须成对出现的原则以及特殊标签的使用方法。通过本文的阅读,读者可以对XML的基本知识有一个全面的了解。 ... [详细]
  • 展开全部下面的代码是创建一个立方体Thisexamplescreatesanddisplaysasimplebox.#Thefirstlineloadstheinit_disp ... [详细]
  • 不同优化算法的比较分析及实验验证
    本文介绍了神经网络优化中常用的优化方法,包括学习率调整和梯度估计修正,并通过实验验证了不同优化算法的效果。实验结果表明,Adam算法在综合考虑学习率调整和梯度估计修正方面表现较好。该研究对于优化神经网络的训练过程具有指导意义。 ... [详细]
author-avatar
宝马z4笑嘻嘻
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有