欢迎来到天天文库
浏览记录
ID:7273328
大小:31.50 KB
页数:3页
时间:2018-02-10
《abaqus 批处理技巧》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、Abaqus批处理技巧如何实现input文件处理,一直是广大ABAQUS使用者关心的问题。在ABAQUS软件中好像并没有提供一个界面来实现这个功能,(好像在帮助里有一个实现的方法,但看了半天没看明白),因而不得不自己想办法来实现。在其他的一些有限元商业软件中,据笔者所知Dynaform就单独有一个程序来实现多个job的计算,非常方便用户计算多个文件。自力更生,丰衣足食!现在我们来看看自己如何实现ABAQUS计算文件批处理吧。1.DOS批处理文件实现方法由于可以在命令行窗口启动计算,于是采用dos批处理文件实现是网上盛传的一种方法,这里主要有两个版本。版本1:call
2、abaqusjob=jobname1callabaqusjob=jobname2callabaqusjob=jobname3callabaqusjob=jobname4试运行后发现,这些job是同时进行计算的,并不是一个接一个进行计算,这显然有违我们的初衷。那问题出在哪里呢?问题就在于abaqusjob=jobname1完成后,计算工作也许并没有完成,但这条命令已经完成,批处理文件直接转到下一个job的运行。这样运行的结果可能是(大部分情况都是如此),你要运行的job在同时计算。有没有其他办法了呢?网上别一个版本告诉我们答案。版本2:callabaqusjob=jo
3、bname1intcallabaqusjob=jobname2intcallabaqusjob=jobname3intcallabaqusjob=jobname4int这里的int其实就是计算执行中的命令参数interactive。在加上int后,只有在当前计算完成后,才会转入下一个模型的计算。2.计算机自动关闭在学习使用python实现批处理之前,我们先简要介绍一下,dos中如何实现计算机的自动关闭。在dos命令行关闭计算机的命令是:shutdown–s–f–t60-s关闭本地计算机。-f强制关闭计算机。-txx将用于系统关闭的定时器设置为xx秒。上面的设置是60
4、秒。需要说明的两点是,-f参数是用在计算机锁定的时候关闭计算机,如果只使用-s在锁定的时候就不能自动关闭计算机了。另外一点是,如果你看到关机的提示,但又不想马上关闭计算机的话,那只有进入命令行窗口,输入shutdown–a解除关闭命令。几个常用dos下批处理版本好,那现在dos下批处理加关机的程序应该是:callabaqusjob=jobname1intcallabaqusjob=jobname2intcallabaqusjob=jobname3intcallabaqusjob=jobname4intshutdown–s–f–t603.如果要加运行参数,和平常一样在
5、第一行加上即可,如下面使用多cpu:callabaqusjob=jobname1cpus=2intcallabaqusjob=jobname2cpus=2intcallabaqusjob=jobname3cpus=2intcallabaqusjob=jobname4cpus=2int4.如果要删除计算中生成的文件:callabaqusj=nonJt23-2-aintcalldelnonJt23-2-a.comcalldelnonJt23-2-a.datcalldelnonJt23-2-a.filcalldelnonJt23-2-a.mdlcalldelnonJt23
6、-2-a.msgcalldelnonJt23-2-a.prtcalldelnonJt23-2-a.rescalldelnonJt23-2-a.stt5.如果下一个文件需要restart上一个文件:callabaqusjob=jobname1intcallabaqusjob=jobname2ldjob=jobname1intcallabaqusjob=jobname3ldjob=jobname2intcallabaqusjob=jobname4ldjob=jobname3int6.使用python实现批处理Python是一种简单易学,功能强大的编程语言,它有高效率的高
7、层数据结构,简单而有效地实现面向对象编程。Python简洁的语法和对动态输入的支持,再加上解释性语言的本质,使得它在大多数平台上的许多领域都是一个理想的脚本语言,特别适用于快速的应用程序开发。在ABAQUS中,python不仅可以实现软件界面的开发,还能够从命令行实现ABAQUS所有功能。这里用以实现批处理的python语言也就是实现job模块的相关命令。先看实现job批处理的python基本代码:fromabaqusConstantsimport*importjobmdb.JobFromInputFile(name='job-1-1',inputFileNam
此文档下载收益归作者所有