购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.1 Python开发工具

要使用Python做Abaqus二次开发,开发工具必不可少,选择合适的编辑器可以很大程度上提高编程开发效率。目前优秀的代码编辑器很多,读者可根据自身情况做选择。本节介绍两款编辑器以供参考,它们各有优点。

2.1.1 Abaqus PDE

Abaqus PDE是一款由达索公司专为Abaqus开发的编辑器,它是一个单独的应用程序,可以创建、编辑、测试和调试Python脚本,主要用于Abaqus/CAE图形用户界面命令、内核脚本和普通脚本的编写及调试。Abaqus PDE最大的优点是内置了Abaqus自带的模块,脚本中导入模块即可直接使用,这种先天的优势是第三方编辑器无法比拟的。除此之外,Abaqus PDE还具有良好的集成性,可以方便地与Abaqus/CAE进行交互,更加直观地执行代码。

Abaqus PDE有三种打开方式。

1)在Abaqus/CAE中,点击主菜单选项File→Abaqus PDE。

2)打开Abaqus Command,输入abaqus cae -pde后按〈Enter〉键。

3)打开Abaqus Command,输入abaqus pde后按〈Enter〉键。

使用第二种方式打开Abaqus PDE的同时,还能一并打开Abaqus/CAE主窗口。第三种为单独打开Abaqus PDE,并不会启动Abaqus/CAE。

Abaqus PDE界面及使用说明如图2-1所示。

选择执行空间的GUI单选按钮 时,用户可以通过点击 按钮录制Abaqus/CAE中每一步的执行动作,并会自动生成guiLog文件。反过来,在Abaqus PDE中运行该guiLog文件,便可在Abaqus/CAE中完全复现每一步操作。

对于二次开发来说,Abaqus PDE最大的作用是调试脚本。代码调试过程中,经常需要实时掌握某变量在某个时刻的传入值。在Abaqus/CAE环境中调试时,采用的办法往往是用print方法将该变量打印出来。而Abaqus PDE调试功能的强大之处就在于,可以一次性自动获取许多变量的传入值,在很大程度上提高调试效率。此外,Abaqus PDE还可以设置断点,断点前的语句可以连续运行,直到断点处自动停止,再根据需求选择继续运行或手动逐行执行,同时,Abaqus/CAE中会实时显示对应代码的执行结果,给予用户直观的及时反馈。

图2-1 Abaqus PDE界面及使用说明

例如,图2-2所示为调试生成角钢模型的内核脚本。

图2-2 Abaqus PDE调试脚本

调试过程中,如果需要监控一些变量的传入值,以第8行的变量vp为例,用户只需在该行用鼠标选中变量名vp,点击右键,选择Add Watch:vp,如图2-3所示,即可在下方的Watch List表格中添加该变量以便监控。图2-2中关注了length、vp、modelName、m和p共5个变量。

图2-3 监控变量

有时脚本语句较多,需要做分段调试,例如图2-2中,要想明确第17行之前的执行结果是否符合预期,可将光标放在该行,点击图标 ,或在该行点击鼠标右键,选择Add Breakpoint,即可添加断点,接着点击 按钮或按〈F5〉键便可执行脚本。程序运行到第17行时会自动停止,用户可在Watch List中观察当前变量的赋值是否正确。与此同时,Abaqus/CAE中的草图也会与脚本同步,草图停留在执行第16行后的状态,如图2-4所示。通过这种调试方式,可以非常方便地判断代码是否正确执行。如果语句无误,可以再次点击 (调试模式下)按钮继续自动执行接下来的语句,也可以手动点击 (调试模式下)按钮逐行往下执行。

图2-4 同步的草图模块

被监控的变量默认以str()显示,但对于诸如模型、部件或视图等对象来说,这些值的字符串非常长,不太利于理解,如图2-2所示的Watch List表格中的vp值。更好的方式是将它们以repr()格式展现,以变量m为例,右击后,选择Display str(not repr)value of m,该变量就会以对象的形式体现,一目了然。

由于图2-2中的脚本只执行到第17行,变量p还没有赋值,所以表格中的值为<not evaluated>。

该脚本最终生成的模型如图2-5所示。

图2-5 最终生成的模型

Abaqus PDE在调试功能上很有优势,不过它并不具备自动补全功能,编写环境也不算十分突出,用户可以在其他编辑器中编写代码,在Abaqus PDE中进行调试。

2.1.2 Sublime Text 3

目前优秀的代码编辑器不在少数,用户可以根据自己的使用习惯选择一款得心应手的编辑器。笔者经常使用的是Sublime Text 3,下面对它做一个简单介绍。

Sublime Text 3是一款跨平台的编辑器,可以支持Windows、Linux和macOS等操作系统。它比较轻量,占用内存很少,界面非常简洁,功能却非常强大。

Sublime Text 3的优点之一是拥有强大的插件库,使用前需要进行一些配置。安装Sublime Text 3后,将附件文件夹chapter 2中的Package Control. sublime-package复制到Sublime Text 3安装目录下的Data\Installed Packages\中。重新打开Sublime Text 3,按下组合键〈Ctrl+Shift+P〉,输入install Package,选中第一项按〈Enter〉键,即可安装插件库,如图2-6所示。此时下方的状态栏中会显示 ,稍等一会儿即可完成安装。再次按下组合键〈Ctrl+Shift+P〉,输入install Package后按〈Enter〉键,即可搜索和安装想要的插件。如果出现There are no packages available for installation的提示,还需要进一步设置。

图2-6 安装插件库

Sublime Text 3的插件库内容非常丰富,用户可以在网络上搜索并安装适合自身需求的插件,这里仅介绍两个比较实用的插件。

•ConvertToUTF8:Sublime Text 3默认不支持中文编码,该插件可以解决中文乱码问题。

•SublimeREPL:可以交互式地调试程序。

以Python 2.7为例,计算机安装Python 2.7后,可以在Sublime Text 3中配置Python开发环境。依次点击Sublime Text 3主菜单中的“工具”→“编译系统”→“新编译系统”,如图2-7所示。

图2-7 配置Python开发环境

在弹出的编辑窗口中输入图2-8所示的代码。

图2-8 输入Python开发环境代码

其中第二行的地址要更改为用户计算机中的Python实际安装路径,注意路径中的斜杠应为正斜杠“/”。输入完成后,在默认地址中保存为python2.7.11.sublime-build,此时图2-7所示的子菜单中便会添加 。打开任意py文件,选择python2.7.11,使用快捷键〈Ctrl+B〉或〈F5〉即可执行py脚本,运行结果在窗口下方显示,如图2-9所示。

图2-9 窗口下方显示运行结果

Sublime Text 3具备十分实用和强大的功能,下面介绍几个主要功能。

1. 实时更新

用户做Abaqus内核二次开发时,为了快速提取代码,很多时候需要在Abaqus/CAE中手动操作,然后从工作目录的abaqus.rpy中获取相应语句。Sublime Text 3具有实时更新代码的功能,用户可以先在Sublime Text 3中打开abaqus.rpy,随着Abaqus/CAE操作的进行,当返回Sublime Text 3时,其中的代码会自动更新,这就实现了操作和代码的无缝衔接,提升了用户工作效率和体验感。

2. 分屏

分屏功能可将窗口分为几列或几行,以便同时查看两个或更多的脚本,布局的方式为选择主菜单的“查看”→“布局”,如图2-10所示,也可以用快捷键设置。窗口分成两列后的效果如图2-11所示。

图2-10 设置分屏

图2-11 两列窗口的效果

3. 迷你地图

如果代码较长,位于右侧的迷你地图可以很方便地帮助用户定位,用鼠标点击迷你地图也可快速切换位置。当选中某个变量或数值后,脚本中所有的相同词会以高亮的形式在迷你地图中直观展示,如图2-12所示。

4. 选择相同词

选中某个词后按〈Ctrl+D〉组合键,可快速选中下一个相同的词,按住〈Ctrl〉键不放多次按〈D〉键,会同时选中多个相同的词,以方便用户批量编辑。例如图2-13中,通过该方式已经选中第32~35行中的4个import。要跳过不想选的词,可以按〈Ctrl+K〉组合键取消选择。如果想要替换,则按住〈Ctrl+H〉组合键在下方打开替换栏,如图2-14所示,选中的词会自动出现在Find一栏中,以便快速替换。

图2-12 迷你地图

图2-13 快速选中相同的词

图2-14 快速替换

5. 多行光标

通过〈Shift〉键+右键拖动鼠标的方式,可以把光标同时放置在多行中,在需要对多行同时进行输入或删除等操作时很有用。

6. 文件夹内搜索

使用〈Shift+F〉组合键可以对脚本中的关键词进行搜索,使用〈Shift+Ctrl+F〉组合键可以对某文件夹中的所有文档进行关键词搜索,如图2-15所示,在众多脚本中查找某个词时该功能可以极大地节省操作时间。

图2-15 搜索文件夹

以上是Sublime Text 3的部分功能,它的强大之处不止于此。用户可以继续探索其他功能,以满足不同的编程需求。其中文官网https://www.sublimetextcn.com/提供了中文版的说明文档,可以帮助用户快速掌握编辑器的使用技巧。Sublime Text 3可以从官方网站https://www.sublimetext.com/下载,目前的版本为Sublime Text 4,较Sublime Text 3有了进一步提升,用户可以根据实际需求选择相应版本。 8uUEKs7JpfJNifsvDAM43EHu6FgNR5zQ+lRIYAZ6I9qryAo+YLeRBbDh3Tgfxd0/

点击中间区域
呼出菜单
上一章
目录
下一章
×