找回密码
 注册
Simdroid-非首页
查看: 92|回复: 7

[二次开发] abaqus同时执行多个JOB文件时如何判断所有JOB都计算完成?

[复制链接]
发表于 2014-12-12 14:32:23 | 显示全部楼层 |阅读模式 来自 重庆沙坪坝区
悬赏1仿真币未解决
假设有5个Job文件-,如果一个一个连续计算的话可以采用‘mdb.jobs[jobName].waitForCompletion()’语句来等到当前Jo计算完成再执行python程序进行下一个Job的计算,但是如果我想让这5个Job一起提交计算,那如何等到所有的Job都计算完成后再执行下面的python代码呢?,我尝试了一下的代码,发现虽然能计算,但是abaqus会无限报错;代码如下:

附件: 您需要 登录 才可以下载或查看,没有账号?注册
发表于 2014-12-12 14:54:40 | 显示全部楼层 来自 天津
Simdroid开发平台
mdb.jobs['JobName'].waitForCompletion()
回复

使用道具 举报

 楼主| 发表于 2014-12-12 14:56:54 | 显示全部楼层 来自 重庆沙坪坝区
wangzhe3224 发表于 2014-12-12 14:54
mdb.jobs['JobName'].waitForCompletion()

这句话我知道,你看我那个代码,算是能算,但abaqus 会无限报错
回复

使用道具 举报

 楼主| 发表于 2014-12-12 14:59:07 | 显示全部楼层 来自 重庆沙坪坝区
我主要的目的是想节约时间,job 一个一个算会很长时间,所以我想让多个job一起运算
回复

使用道具 举报

发表于 2014-12-12 17:10:17 | 显示全部楼层 来自 天津
尝试提交inp的方式,用python把inp全部一次性生成,然后参考:
http://wenku.baidu.com/link?url= ... cC2-a4aCfQMmjrFlsWG
这个帖子,写批处理提交就可
回复

使用道具 举报

发表于 2014-12-12 17:10:58 | 显示全部楼层 来自 天津
另外,你把mdb.jobs['JobName'].waitForCompletion() 单独写成了一个循环,肯定要报错的
回复

使用道具 举报

 楼主| 发表于 2014-12-12 17:50:03 | 显示全部楼层 来自 重庆沙坪坝区
wangzhe3224 发表于 2014-12-12 17:10
另外,你把mdb.jobs['JobName'].waitForCompletion() 单独写成了一个循环,肯定要报错的 ...

那应该怎么弄?我现在是用一个循环同时提交了几个Job进行计算,并且想对每个结果提取最大应力,所以在提取最大应力前必须确保Job已经计算完成,不知如何来判断所有Job都已经计算完成?
如果是一个一个Job批量计算并提取结果用
mdb.Job(name=jobName,....)
mdb.jobs['JobName'].waitForCompletion()
这句能够实现,就是对多个Job并行计算使得Python程序等到所有Job都计算完成后再执行下面的代码提取应力有疑惑
求指导下,谢谢
回复

使用道具 举报

发表于 2015-1-7 09:33:28 | 显示全部楼层 来自 大连理工大学
好东西学习了。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-5-20 22:27 , Processed in 0.042976 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表