python进行abaqus后处理的二次开发,我想提取odb文件中的nodeSet,结果总提示Keyerror,请各位大神指教。

语句是从参考书上复制的,结果就是不对,是版本的问题吗?错误语句如下:nodeFace=odb.rootAssembly.instances['SHELL-1'].node... 语句是从参考书上复制的,结果就是不对,是版本的问题吗?错误语句如下:

nodeFace = odb.rootAssembly.instances['SHELL-1'].nodeSets['HOLE']
展开
 我来答
bdwisyou7d
2013-06-18 · TA获得超过1.3万个赞
知道大有可为答主
回答量:3774
采纳率:81%
帮助的人:1064万
展开全部
你可以尝试一下dir
print dir(odb.rootAssembly.instances)
print odb.rootAssembly.instances.keys()
print dir(odb.rootAssembly.instances['SHELL-1'])
print odb.rootAssembly.instances['SHELL-1'].nodeSets.keys()
这样就知道缺少什么了。
很可能是shell-1不存在或者是hole不存在啊。书上的例子需要一个例子对应的计算数据。你没有这个数据文件。
追问
谢谢!那为什么下面程序运行总是0,是不是abaqus语法改了?
center是已定义点集。displacement是定义位移输出
centerDisplacement = displacement.getSubset(region=center)
for v in centerDisplacement.values:
print 'X方向位移:', v.data[0]
追答
抱歉,我对abaqus不熟悉。不过我只是凭感觉给你出可能无用的提示。 如果输出结果为零不合理,那么应该是输入的数据有问题,或者是使用方法有问题。

你试着采用更大的数据量,也许是少了一些条件。我在他们网站上没有找到一个DEMO。如果你能够搜索到。找一个例子试试看。

这种专业软件通常都比较难学。资料少,教程少,文档不一致。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式