使用python批量导出abaqus的历史变量输出
from abaqus import *
from abaqusConstants import *
from caeModules import *
from driverUtils import executeOnCaeStartup
executeOnCaeStartup()
def report_aba_data(i):
odb_name = r'C:/ABAQUS2020/TEMP/ABA_benchmark/gk' + str(i) + '.odb'
o1 = session.openOdb(odb_name)
odb = session.odbs[odb_name]
session.XYDataFromHistory(name='6X', odb=odb,
outputVariableName='Spatial acceleration: A1 at Node 4 in NSET F6', steps=(
'EARTHQUAKE', ), __linkedVpName__='Viewport: 1')
session.XYDataFromHistory(name='5X', odb=odb,
outputVariableName='Spatial acceleration: A1 at Node 12 in NSET F5',
steps=('EARTHQUAKE', ), __linkedVpName__='Viewport: 1')
session.XYDataFromHistory(name='4X', odb=odb,
outputVariableName='Spatial acceleration: A1 at Node 20 in NSET F4',
steps=('EARTHQUAKE', ), __linkedVpName__='Viewport: 1')
session.XYDataFromHistory(name='3X', odb=odb,
outputVariableName='Spatial acceleration: A1 at Node 28 in NSET F3',
steps=('EARTHQUAKE', ), __linkedVpName__='Viewport: 1')
session.XYDataFromHistory(name='2X', odb=odb,
outputVariableName='Spatial acceleration: A1 at Node 36 in NSET F2',
steps=('EARTHQUAKE', ), __linkedVpName__='Viewport: 1')
session.XYDataFromHistory(name='1X', odb=odb,
outputVariableName='Spatial acceleration: A1 at Node 44 in NSET F1',
steps=('EARTHQUAKE', ), __linkedVpName__='Viewport: 1')
session.XYDataFromHistory(name='6Y', odb=odb,
outputVariableName='Spatial acceleration: A2 at Node 4 in NSET F6', steps=(
'EARTHQUAKE', ), __linkedVpName__='Viewport: 1')
session.XYDataFromHistory(name='5Y', odb=odb,
outputVariableName='Spatial acceleration: A2 at Node 12 in NSET F5',
steps=('EARTHQUAKE', ), __linkedVpName__='Viewport: 1')
session.XYDataFromHistory(name='4Y', odb=odb,
outputVariableName='Spatial acceleration: A2 at Node 20 in NSET F4',
steps=('EARTHQUAKE', ), __linkedVpName__='Viewport: 1')
session.XYDataFromHistory(name='3Y', odb=odb,
outputVariableName='Spatial acceleration: A2 at Node 28 in NSET F3',
steps=('EARTHQUAKE', ), __linkedVpName__='Viewport: 1')
session.XYDataFromHistory(name='2Y', odb=odb,
outputVariableName='Spatial acceleration: A2 at Node 36 in NSET F2',
steps=('EARTHQUAKE', ), __linkedVpName__='Viewport: 1')
session.XYDataFromHistory(name='1Y', odb=odb,
outputVariableName='Spatial acceleration: A2 at Node 44 in NSET F1',
steps=('EARTHQUAKE', ), __linkedVpName__='Viewport: 1')
session.XYDataFromHistory(name='6Z', odb=odb,
outputVariableName='Spatial acceleration: A3 at Node 4 in NSET F6', steps=(
'EARTHQUAKE', ), __linkedVpName__='Viewport: 1')
session.XYDataFromHistory(name='5Z', odb=odb,
outputVariableName='Spatial acceleration: A3 at Node 12 in NSET F5',
steps=('EARTHQUAKE', ), __linkedVpName__='Viewport: 1')
session.XYDataFromHistory(name='4Z', odb=odb,
outputVariableName='Spatial acceleration: A3 at Node 20 in NSET F4',
steps=('EARTHQUAKE', ), __linkedVpName__='Viewport: 1')
session.XYDataFromHistory(name='3Z', odb=odb,
outputVariableName='Spatial acceleration: A3 at Node 28 in NSET F3',
steps=('EARTHQUAKE', ), __linkedVpName__='Viewport: 1')
session.XYDataFromHistory(name='2Z', odb=odb,
outputVariableName='Spatial acceleration: A3 at Node 36 in NSET F2',
steps=('EARTHQUAKE', ), __linkedVpName__='Viewport: 1')
session.XYDataFromHistory(name='1Z', odb=odb,
outputVariableName='Spatial acceleration: A3 at Node 44 in NSET F1',
steps=('EARTHQUAKE', ), __linkedVpName__='Viewport: 1')
x0 = session.xyDataObjects['6X']
x1 = session.xyDataObjects['5X']
x2 = session.xyDataObjects['4X']
x3 = session.xyDataObjects['3X']
x4 = session.xyDataObjects['2X']
x5 = session.xyDataObjects['1X']
x6 = session.xyDataObjects['6Y']
x7 = session.xyDataObjects['5Y']
x8 = session.xyDataObjects['4Y']
x9 = session.xyDataObjects['3Y']
x10 = session.xyDataObjects['2Y']
x11 = session.xyDataObjects['1Y']
x12 = session.xyDataObjects['6Z']
x13 = session.xyDataObjects['5Z']
x14 = session.xyDataObjects['4Z']
x15 = session.xyDataObjects['3Z']
x16 = session.xyDataObjects['2Z']
x17 = session.xyDataObjects['1Z']
session.writeXYReport(fileName='gk' + str(i) + '.txt', appendMode=OFF, xyData=(x0, x1, x2,
x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17))
session.odbs[odb_name].close()
for i in range(18,49,1):
report_aba_data(i)