猜你喜欢
Python语言在Abaqus中的应用 第2版

Python语言在Abaqus中的应用 第2版

书籍作者:曹金凤 ISBN:9787111663690
书籍语言:简体中文 连载状态:全集
电子书格式:pdf,txt,epub,mobi,azw3 下载次数:7821
创建日期:2021-02-14 发布日期:2021-02-14
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板
内容简介

本书共有7章。其中第1~6章为本书的核心内容,可分为两部分:第壹部分包括第1章和第2章,介绍了Python语言编程的基础知识和Abaqus中的Python脚本接口基础知识,为后面的学习奠定基础;第二部分包括第3~6章,分别介绍编写脚本快速建立有限元模型、编写脚本访问输出数据库、编写脚本进行其他后处理、案例分享及常见问题等内容。通过大量的实例脚本和详细的注释讲解了编写、调试脚本和开发专有模块的方法,以提高Abaqus有限元分析的效率。

书中内容从实际应用出发,文字通俗易懂,深入浅出,读者不需要具备很深的编程功底,即可轻松掌握Python语言在Abaqus中的各种应用。

本书主要面向Abaqus软件的中级和高级用户,对于初级用户也有一定的参考价值。


编辑推荐

?本书内容从实际应用出发,通俗易懂,深入浅出,读者无须具备很深的理论知识,即可轻松掌握 Python 语言在 Abaqus 中应用的各种编程技巧。

?本书详细介绍了 Python 语言编程的基础知识,便于读者学习 Python 语言在 Abaqus 中的各种应用。

?本书将重点、难点、易出错点用彩色字体标示,醒目直观,便于读者提高学习效率。

?扫描书中二维码可下载资源包文件,运行其中的实例脚本后,可以实现特定功能。

?在本书所供实例脚本的基础上,可通过修改或添加代码来满足其他程序的开发需要。


前言
Abaqus软件是国际上公认的功能强大的大型通用非线性有限元分析软件之一,被广泛应用于机械制造、石油化工、航空航天、汽车交通、土木工程、国防军工、水利水电、生物医学、电子工程、能源、地矿、造船以及日用家电等工业和科学研究领域。Abaqus软件在技术、品质和可靠性等方面具有卓越的声誉,可分析工程中各种复杂的线性和非线性问题。
  1997年,清华大学庄茁教授以其敏锐的眼光和超强的前瞻性将Abaqus软件引入国内,取他山之石,攻科研和工程分析之“玉”。近年来,随着用户使用Abaqus软件分析问题能力的逐步提高,软件中提供的功能已经不能够满足需要。由于Abaqus软件为用户提供了专门的二次开发接口,包括用户子程序(User Subroutine)和Abaqus脚本接口(Abaqus Scripting Interface,使用Python语言编写),因此,越来越多的用户开始转向二次开发,即站在较高起点的Abaqus软件平台之上,开发算法、研究用户单元和材料本构模型,避免研究工作的重复。
  2009年,笔者与石亦平博士合作出版了《ABAQUS有限元分析常见问题解答》一书,陆续收到国内外的大量读者来信,部分读者强烈建议出版关于Abaqus脚本接口方面的书籍。鉴于此,笔者斗胆决定出版《Python语言在Abaqus中的应用》一书,希望能够为广大用户解决实际问题提供帮助和借鉴,2011年7月该书与读者见面。至今,该书已重印7次,累计印量达12000册,广受Abaqus用户欢迎。鉴于内容升级的需要,决定进行再版,修正第1版中的错误及不当之处,并增加宏录制、GUI脚本介绍、参数化研究等读者关心的内容,以期给读者的仿真分析工作提供更大的帮助。
  目前,国内关于使用Python语言对Abaqus进行二次开发的书籍较少,笔者在写作过程中尽所能将内容介绍清楚,让读者真正学会编写Python脚本。但是,使用Python语言进行二次开发本身就是一项庞大的课题,将它与功能强大的Abaqus软件联合进行开发,就变得更加复杂。笔者深感无法在一本只有几百页的书中将所有的内容都介绍清楚。如果本书能够为读者在学习、科研或项目实施过程中提供一点思路和一些帮助,就感觉到非常欣慰了。
  本书的第1~第6章为核心内容,可以分为两部分:第一部分为第1章和第2章,介绍了Python语言编程的基础知识和Abaqus中的Python脚本接口基础知识,为后面的学习奠定基础;第二部分为第3~第6章,依次介绍了编写脚本快速建立有限元模型、编写脚本访问输出数据库、编写脚本进行其他后处理、案例分享及常见问题等内容。
  读者对象
  本书主要面向Abaqus软件的中级和高级用户,对于初级用户也有一定的参考价值。
  在开始学习本书时,读者应已经掌握Abaqus有限元分析的基础知识,熟悉Abaqus/CAE的操作界面,了解在Abaqus中建立有限元模型、提交分析作业和后处理的基本操作。如果在Abaqus/CAE中建模时遇到问题,可以参考笔者撰写的《ABAQUS有限元分析常见问题解答》一书,可从中得到详尽的解答。
  本书特色
  本书内容从实际应用出发,通俗易懂,深入浅出,读者不需要具备很深的理论知识,即可轻松地掌握Python语言在Abaqus中应用的各种编程技巧。
  本书介绍了大量实例脚本的编写思路和方法,并对每行代码做了详细的讲解。对于编写过程中可能出现的问题、应该避免的错误做法都通过“提示”的方式提醒读者。
  为了能更加高效地学习本书,笔者将重点、难点、易出错点加粗表示,以引起读者的注意。
  为了方便学习,书中所有实例的Python脚本文件、INP文件和ODB文件都放在资源包里,读者可扫描下方二维码下载,运行这些实例脚本后将实现特定功能。在实例脚本的基础上,读者可以自行修改或添加代码来满足编程的需要。
  为了便于讲解各行代码的含义,在每行代码行的开始位置,笔者使用阿拉伯数字进行了标识,而在实际脚本源代码中这些标识都是不存在的。
  注意:本书内容基于Windows操作系统下的Abaqus 618版本,其他版本的Abaqus操作界面可能有所不同,但是,书中的实例脚本对于各Abaqus版本都适用。
  注意:资源包中的CAE模型均在Abaqus 618版本下生成,只能使用Abaqus 618及以上版本的Abaqus/CAE才能打开。为了方便使用不同版本的读者学习本书,资源包中同时提供了INP文件供提交分析作业,命令为abaqus job=job_name interactive。
  本书约定
  如无特别说明,“单击”表示对鼠标左键进行操作。
  本书采用Abaqus软件操作界面的科学计数格式。例如,4e9表示4×109。
  本书的写作与出版得到了山东省重点研发计划(公益类专项)(2019GGX101020)、结构声与机械故障诊断实验室的资助,在此表示衷心的感谢。
  感谢达索系统中国区仿真技术总监白锐和中国石油大学(华东)石油工程学院沈新普教授在百忙之中为本书撰写了序言。在本书即将出版之际,向他们表示深深的谢意。
  致谢
  衷心感谢恩师中国矿业大学(北京)姜耀东教授在笔者读书期间以及在青岛理工大学工作期间给予的大力支持、鼓励、帮助和指导。恩师严谨的科研精神、谦逊宽容的品格值得我终身学习。
  在编写本书的过程中,笔者参考了一些专门介绍Python语言的书籍和Abaqus6.18帮助文档,感谢这些作者的辛勤劳动。
  感谢青岛理工大学机械与汽车工程学院、复杂网络与可视化研究所、理学院各位同仁对本人工作的指导与支持,让我可以心无旁骛地撰写本书。
  特别感谢先生梅叶和宝贝儿子多多,正是你们的理解和支持,才让我有更多的时间和精力撰写本书。
  由于笔者水平有限,书中错误和纰漏之处在所难免,敬请各位专家和广大读者批评指正,并欢迎通过电子邮件caojinfeng@quteducn与笔者交流。
  曹金凤
  于青岛理工大学
  Abaqus被广泛地认为是功能强大的有限元分析软件,可以分析复杂的固体力学、流体力学、结构力学系统,特别是能够驾驭非常庞大、复杂的问题和模拟高度非线性问题。
  1997年,我的老师清华大学航天航空学院庄茁教授独具慧眼,把Abaqus软件引入到我国,至今已23年。从Abaqus在2005年被我工作的法国达索系统公司收购并加速其在中国市场的推广后,也已经有15个年头。大多数用户已经对其基本功能、基础操作、建模和分析技巧有了相当了解,并逐渐成长为高级用户,同时对有限元分析提出了更高要求,例如,针对行业的高效建模、自动后处理、模块化、插件、优化、参数化研究等,需要对Abaqus软件进行二次开发。
  Abaqus/CAE软件架构工程师在这个软件开发之初,就十分明智地选择了功能强大的Python作为内核脚本语言,并内置了Python脚本接口,为用户二次开发奠定了基础。众所周知,Python是近年来最受用户欢迎的面向对象编程的语言,它最大的优点是简单易学。阅读好的Python程序就感觉像是在读英语一样,它使用户能够专注于解决问题而不是去搞明白语言本身。当功能强大的Abaqus软件与Python语言联合后,其功能更加强大。任何一位Abaqus用户都可以通过Python编程提高Abaqus仿真分析的效率,少则数十倍,多则上万倍。
  我和曹金凤老师相识于十多年前她读博士期间,当年她的刻苦、努力以及对Abaqus的热情就深深地感染了我。后来她在青岛理工大学当老师,2009年成立了“Abaqus青岛培训中心”,她一直组织并负责Abaqus相关课程的培训和与仿真相关的科研工作。
  2011年,曹金凤博士出版了《Python语言在Abaqus中的应用》一书,出版9年来已重印7次,很受Abaqus用户的欢迎。这充分说明了以Abaqus等软件为代表的工程仿真计算已经成为热点技术方向,市场推广和工业应用在不断加速中,对提高仿真效率、实现知识工程化的需求非常旺盛。本书在第1版的基础上,扩展了部分功能,增加了更多实用算例,相信广大读者阅读本书后,会让Abaqus仿真分析工作更加高效,在促进Abaqus使用水平和广度方面更上一个台阶。
  希望Abaqus可以从面向科研和解决复杂非线性问题的高级分析工具扩展成为广大工程师的好帮手,实现仿真知识模板化、工程化,并为下一步人工智能驱动的仿真大数据技术提供大数据积累,最终实现无处不在的仿真驱动智能设计和制造的愿景,真正充分发挥计算机辅助工程软件对企业和社会的价值!
  预祝本书再版更加畅销,读者越来越多,应用越来越火!
  白锐
  达索系统中国区仿真技术总监
目录

第2版序言一

第2版序言二

第1版序言一

第1版序言二

前言

第0章导言:千里之行,始于足下

——写给读者的话

0.1简单实例

0.2Abaqus的Python二次开发优势

0.3学习方法

0.4如何看待本书

0.5心愿

第1章Python语言编程基础

1.1简介

1.1.1Python语言的特点

1.1.2运行Python脚本

1.2开发工具

1.2.1Abaqus中的Python开发环境

1.2.2EditPlus编辑器的Python开发环境

配置

1.3基础知识

1.3.1编码规则

1.3.2数据类型

1.3.3变量和常量

1.3.4运算符和表达式

1.3.5文件类型

1.4内置的数据结构

1.4.1元组

1.4.2列表

1.4.3字典

1.4.4序列

1.5结构化程序设计

1.5.1条件语句

1.5.2循环语句

1.6函数、模块和包

1.6.1函数

1.6.2模块

1.6.3包

1.7面向对象编程

1.7.1类和对象

1.7.2属性和方法

1.7.3继承

1.7.4多态性

1.8输入/输出

1.8.1文件

1.8.2存储器

1.9Python语言中的异常和异常处理

1.9.1使用try...except语句测试异常

1.9.2使用raise语句引发异常

1.9.3自定义异常

1.9.4使用try...finally语句关闭文件

1.10本章小结

第2章Abaqus中的Python脚本

接口

2.1Abaqus中的脚本接口简介

2.1.1Abaqus中的脚本接口与

Abaqus/CAE的通信

2.1.2Abaqus脚本接口的命名空间

2.1.3Abaqus与Python脚本接口相关的

文件

2.1.4运行脚本的方法

2.1.5快速编写脚本的方法

2.2Abaqus中的脚本接口基础知识

2.2.1使用帮助文档

2.2.2Abaqus中的数据类型

2.2.3面向对象编程与Abaqus脚本

接口

2.2.4Abaqus中的异常和异常处理

2.3在Abaqus/CAE中使用Python脚本接口

2.3.1Abaqus中的对象模型

2.3.2复制和删除对象

2.3.3指定区域

2.3.4指定视窗中的显示对象

2.4Abaqus中的Python开发环境

2.4.1Abaqus中的Python开发环境简介

2.4.2运行Abaqus PDE的方法

2.4.3调试脚本

2.4.4生成guiLog脚本

2.5宏管理器

2.5.1简介

2.5.2录制宏

2.6插件

2.6.1插件简介

2.6.2使用RSG对话框构造器

2.6.3自定义插件实例

2.7查询对象

2.7.1一般查询

2.7.2高级查询

2.8调试脚本的方法

2.8.1跟踪法

2.8.2异常抛出法

2.8.3通过print语句或注释行发现

异常

2.8.4使用Python调试器

2.8.5集成开发环境

2.9本章小结

第3章编写脚本快速建立有限元模型

3.1创建几何模型并划分单元网格

3.2创建材料库

3.3创建分析步和输出请求

3.4创建和提交分析作业

3.5本章小结

第4章编写脚本访问输出数据库

4.1简介

4.1.13组易混淆的概念

4.1.2使用对象模型编写脚本

4.2输出数据库对象模型

4.2.1模型数据

4.2.2结果数据

4.3从(向)输出数据库读取(写入)

数据

4.3.1打开(创建)输出数据库

4.3.2读取(写入)模型数据

4.3.3读取(写入)结果数据

4.3.4读取(写入)场输出数据

4.3.5读取(写入)历史输出数据

4.3.6设置默认的显示变量

4.4计算Abaqus的分析结果

4.4.1数学运算规则

4.4.2有效的数学运算

4.4.3包络计算

4.4.4结果转换

4.5开发实例

4.5.1读取节点信息和单元信息

4.5.2读取场输出数据

4.5.3创建输出数据库并添加数据

4.5.4查找Mises应力的最大值

4.5.5计算位移增量和应力增量

4.5.6计算平均应力

4.6提高脚本执行效率的技巧

4.7本章小结

第5章编写脚本进行其他后处理

5.1自动后处理

5.1.1常用的自动后处理命令

5.1.2开发实例

5.2外部数据的后处理

5.2.1简介

5.2.2开发实例

5.3本章小结

第6章案例分享及常见问题

6.1优化分析

6.1.1简介

6.1.2案例分享

6.2监控分析作业

6.2.1简介

6.2.2案例分享

6.3快速生成guiLog脚本

6.3.1简介

6.3.2案例分享

6.4参数化研究

6.4.1简介

6.4.2案例分享

6.5常见问题及解答

6.5.1Python编程零基础,如何快速

开发Abaqus脚本?

6.5.2Abaqus脚本接口对象模型十分

复杂,如何快速开发脚本?

6.5.3如何实现大量INP文件的自动

提交?

6.5.4所建有限元模型,某些参数是

随机的,如何实现?

6.6本章小结

附录

附录APython语言的保留字

附录BPython语言的运算符

附录CPython语言的常用函数

附录D本书用到的方法(函数)

附录E本书用到的模块

附录F本书涉及的异常类型

参考文献


短评

非常棒,曹老师的心血。

2020-10-30 16:42:24

这是曹金凤老师的第二版书,刚刚上新就抓紧买下了,迫不及待的想看!曹老师可以说是我的启蒙老师了,书的内容和质量都非常非常优秀,支持曹老师,希望早日发行更多图书,我们能学到更多知识!

2020-10-29 19:51:02

产品特色