0

我正在尝试从 odb 文件编写字段输出报告。我不断收到 IOError,我不知道我的脚本问题出在哪里。希望大家可以帮忙解决这个问题!

这是我用于编写字段输出报告的脚本

o1 = session.openOdb(name='R:\ABAQUS\Job-5.odb')
session.viewports['Viewport: 1'].setValues(displayedObject=o1)

odb = session.odbs['R:\ABAQUS\Job-5.odb']
session.writeFieldReport(fileNmae = 'abaqus.rpt', append = OFF, sortItem = "Node Label", 
                         odb = odb, step = 2, frame = 50, outputPosition = NODAL, 
      variable = (('CNORMF ASSEMBLY_DROP-SURF/ASSEMBLY_PART2INSTANCE_SURF-1',NODAL, ((INVARIANT, 'Magnitude'),)),)) 
odb.close()

这是我得到的错误:

*Starting main file  [Kernel]: r:/ABAQUS/readOutput.py
Traceback (most recent call last):
  File "r:/ABAQUS/readOutput.py", line 27, in <module>
    NODAL, ((INVARIANT, 'Magnitude'),)),))
IOError: IOError: Empty filename
Exit from main file  [Kernel]: r:/ABAQUS/readOutput.py

我参考了另一个 odb 文件的 .rpy 文件,我执行了完全相同的过程,代码如下所示。我运行了这个脚本,它工作并成功写入了现场报告。它不会抛出这个空文件名错误。但是,当我对其他 odb 文件使用相同的代码时,它会引发该错误。

o1 = session.openOdb(name='C:/Temp/Job-14.odb')
session.viewports['Viewport: 1'].setValues(displayedObject=o1)
#: Model: C:/Temp/Job-14.odb
#: Number of Assemblies:         1
#: Number of Assembly instances: 0
#: Number of Part instances:     2
#: Number of Meshes:             2
#: Number of Element Sets:       5
#: Number of Node Sets:          6
#: Number of Steps:              2
#session.animationController.setValues(animationType=TIME_HISTORY, viewports=(
    #'Viewport: 1', ))
#session.animationController.play(duration=UNLIMITED)
#session.animationController.setValues(animationType=NONE)
#session.viewports['Viewport: 1'].odbDisplay.setFrame(step=1, frame=20)
odb = session.odbs['C:/Temp/Job-14.odb']
session.writeFieldReport(fileName='abaqus.rpt', append=OFF, 
    sortItem='Node Label', odb=odb, step=1, frame=20, outputPosition=NODAL, 
    variable=(('CNORMF   ASSEMBLY_M_SURF-8/ASSEMBLY_S_SURF-8', NODAL, ((
    INVARIANT, 'Magnitude'), )), ))
odb.close()

希望大家能给点线索!!谢谢!

4

0 回答 0