0

我准备了一个 Python 脚本来从 CAE 文件中获取初始数据并对其进行修改以进行另一次分析。为此,我创建了一个 historyOutput 命令来获取压力强度因子,我需要在 python 代码内部的后处理中使用这些值,但是我对 historyRegion 的定义有疑问,请你给我一个关于为什么会发生这种情况的建议?

以下是相应的代码行:

裂纹尖端组

myAssembly.Set(nodes = crackTipNode, name = 'crackTip')

轮廓积分定义:

a.engineeringFeatures.ContourIntegral(name='Crack-1', symmetric=OFF, crackFront=crackFront, crackTip=crackTip, extensionDirectionMethod=Q_VECTORS, qVectors=((v11[7], a.instances['crackedPart'].InterestingPoint( edge=e11[8], rule=MIDDLE)), ), midNodePosition=0.5, collapsedElementAtTip=NONE)

请求破解历史输出

myModel.HistoryOutputRequest(名称 = 'SIF',createStepName = crackStep,contourIntegral = 'Crack-1',numberOfContours = 轮廓,contourType = K_FACTORS,kFactorDirection = KII0,rebar = EXCLUDE,sectionPoints = DEFAULT)

从历史输出中读取

crackODB = session.openOdb(name = jobName, path = jobName + '.odb', readOnly = True) histRegion = crackODB.steps[crackStep].historyRegions['Crack-1']

我为 historyRegions 输入了 contourIntegral 名称,但出现“KeyError:Crack-1”错误。我不知道还能做什么?任何建议将不胜感激。

谢谢,

4

1 回答 1

0

问题解决了!我不得不使用 'ElementSet 。ALL ELEMENTS' 而不是 'ElementSet ALL ELEMENTS',在这一行:

histRegion = crackODB.steps[crackStep].historyRegions['ElementSet . 所有元素']

于 2017-01-29T23:15:30.560 回答