Я пытаюсь смоделировать футбольный заголовок, используя шар, созданный в Abaqus, и форму головы EN960, импортированную из внешнего источника. Во время этого моделирования я наблюдаю результирующее ускорение после удара в различных местах удара.
Поэтому я изучал использование сценариев abaqus и функции l oop для автоматизации этого процесса. Тем не менее, мои знания сценариев abaqus очень ограничены, поэтому мне интересно, какие шаги / советы мне могут понадобиться для достижения моей цели.
Ниже AbaqusMacro из того, что можно было бы назвать контрольным местом воздействия.
# -*- coding: mbcs -*-
# Do not delete the following import lines
from abaqus import *
from abaqusConstants import *
import __main__
import section
import regionToolset
import displayGroupMdbToolset as dgm
import part
import material
import assembly
import step
import interaction
import load
import mesh
import optimization
import job
import sketch
import visualization
import xyPlot
import displayGroupOdbToolset as dgo
import connectorBehavior
s = mdb.models['Model-1'].ConstrainedSketch(name='__profile__', sheetSize=1.0)
g, v, d, c = s.geometry, s.vertices, s.dimensions, s.constraints
s.setPrimaryObject(option=STANDALONE)
s.ConstructionLine(point1=(0.0, -0.5), point2=(0.0, 0.5))
s.FixedConstraint(entity=g[2])
s.CircleByCenterPerimeter(center=(0.0, 0.0), point1=(0.11, 0.0))
s.CoincidentConstraint(entity1=v[0], entity2=g[2], addUndoState=False)
s.autoTrimCurve(curve1=g[3], point1=(-0.0695642977952957, 0.0805632919073105))
p = mdb.models['Model-1'].Part(name='Ball', dimensionality=THREE_D,
type=DEFORMABLE_BODY)
p = mdb.models['Model-1'].parts['Ball']
p.BaseShellRevolve(sketch=s, angle=360.0, flipRevolveDirection=OFF)
s.unsetPrimaryObject()
p = mdb.models['Model-1'].parts['Ball']
session.viewports['Viewport: 1'].setValues(displayedObject=p)
del mdb.models['Model-1'].sketches['__profile__']
p = mdb.models['Model-1'].parts['Ball']
e, d1 = p.edges, p.datums
p.DatumPlaneByLinePoint(line=d1[1], point=p.InterestingPoint(edge=e[0],
rule=MIDDLE))
p = mdb.models['Model-1'].parts['Ball']
f, e1, d2 = p.faces, p.edges, p.datums
t = p.MakeSketchTransform(sketchPlane=d2[2], sketchUpEdge=d2[1],
sketchPlaneSide=SIDE1, origin=(0.0, 0.0, 0.0))
s1 = mdb.models['Model-1'].ConstrainedSketch(name='__profile__',
sheetSize=0.84, gridSpacing=0.02, transform=t)
g, v, d, c = s1.geometry, s1.vertices, s1.dimensions, s1.constraints
s1.setPrimaryObject(option=SUPERIMPOSE)
p = mdb.models['Model-1'].parts['Ball']
p.projectReferencesOntoSketch(sketch=s1, filter=COPLANAR_EDGES)
s1.CircleByCenterPerimeter(center=(0.0, 0.0), point1=(0.11, 0.0))
s1.autoTrimCurve(curve1=g[5], point1=(-0.0974756479263306, 0.0514689832925797))
p = mdb.models['Model-1'].parts['Ball']
f = p.faces
pickedFaces = f.getSequenceFromMask(mask=('[#1 ]', ), )
f1, e, d1 = p.faces, p.edges, p.datums
p.PartitionFaceBySketchThruAll(sketchPlane=d1[2], sketchUpEdge=d1[1],
faces=pickedFaces, sketchPlaneSide=SIDE1, sketch=s1)
s1.unsetPrimaryObject()
del mdb.models['Model-1'].sketches['__profile__']
session.viewports['Viewport: 1'].view.setValues(session.views['Front'])
session.viewports['Viewport: 1'].view.setValues(nearPlane=0.690673,
farPlane=0.990565, width=0.346809, height=0.234955,
viewOffsetX=0.0205154, viewOffsetY=6.29399e-06)
p = mdb.models['Model-1'].parts['Ball']
v1, e1 = p.vertices, p.edges
p.DatumPointByMidPoint(point2=v1[1], point1=p.InterestingPoint(edge=e1[2],
rule=MIDDLE))
p = mdb.models['Model-1'].parts['Ball']
v2, e, d2, n = p.vertices, p.edges, p.datums, p.nodes
p.ReferencePoint(point=d2[4])
session.viewports['Viewport: 1'].view.setValues(nearPlane=0.685717,
farPlane=0.995521, width=0.389679, height=0.263998,
viewOffsetX=0.0365582, viewOffsetY=-1.64424e-05)
step = mdb.openStep('C:/Temp/Python_script/Head.stp', scaleFromFile=OFF)
mdb.models['Model-1'].PartFromGeometryFile(name='Head', geometryFile=step,
combine=False, mergeSolidRegions=True, dimensionality=THREE_D,
type=DEFORMABLE_BODY, scale=0.001)
p = mdb.models['Model-1'].parts['Head']
session.viewports['Viewport: 1'].setValues(displayedObject=p)
mdb.models['Model-1'].parts['Head'].AutoRepair()
session.viewports['Viewport: 1'].partDisplay.setValues(sectionAssignments=ON,
engineeringFeatures=ON)
session.viewports['Viewport: 1'].partDisplay.geometryOptions.setValues(
referenceRepresentation=OFF)
mdb.models['Model-1'].Material(name='Ball')
mdb.models['Model-1'].materials['Ball'].Density(table=((1100.0, ), ))
mdb.models['Model-1'].materials['Ball'].Hyperelastic(materialType=ISOTROPIC,
testData=OFF, type=POLYNOMIAL, n=2, volumetricResponse=VOLUMETRIC_DATA,
table=((5317171.47, 2649830.47, -81085.5961, 406587.722, -9070.56494,
7.5e-08, 0.0), ))
mdb.models['Model-1'].Material(name='Material-2')
mdb.models['Model-1'].materials['Material-2'].Density(table=((1740.0, ), ))
mdb.models['Model-1'].materials['Material-2'].Elastic(table=((44800000000.0,
0.28), ))
mdb.models['Model-1'].materials.changeKey(fromName='Material-2',
toName='Head_mg_k1')
mdb.models['Model-1'].HomogeneousShellSection(name='Ball_section',
preIntegrate=OFF, material='Ball', thicknessType=UNIFORM,
thickness=0.0146, thicknessField='', nodalThicknessField='',
idealization=NO_IDEALIZATION, poissonDefinition=DEFAULT,
thicknessModulus=None, temperature=GRADIENT, useDensity=OFF,
integrationRule=SIMPSON, numIntPts=5)
mdb.models['Model-1'].HomogeneousSolidSection(name='Head_section',
material='Head_mg_k1', thickness=None)
p = mdb.models['Model-1'].parts['Head']
c = p.cells
cells = c.getSequenceFromMask(mask=('[#1 ]', ), )
region = p.Set(cells=cells, name='Head_set')
p = mdb.models['Model-1'].parts['Head']
p.SectionAssignment(region=region, sectionName='Head_section', offset=0.0,
offsetType=MIDDLE_SURFACE, offsetField='',
thicknessAssignment=FROM_SECTION)
p = mdb.models['Model-1'].parts['Ball']
session.viewports['Viewport: 1'].setValues(displayedObject=p)
p = mdb.models['Model-1'].parts['Ball']
f = p.faces
faces = f.getSequenceFromMask(mask=('[#3 ]', ), )
region = p.Set(faces=faces, name='Ball_set')
p = mdb.models['Model-1'].parts['Ball']
p.SectionAssignment(region=region, sectionName='Ball_section', offset=0.0,
offsetType=MIDDLE_SURFACE, offsetField='',
thicknessAssignment=FROM_SECTION)
a = mdb.models['Model-1'].rootAssembly
session.viewports['Viewport: 1'].setValues(displayedObject=a)
session.viewports['Viewport: 1'].assemblyDisplay.setValues(
optimizationTasks=OFF, geometricRestrictions=OFF, stopConditions=OFF)
a = mdb.models['Model-1'].rootAssembly
a.DatumCsysByDefault(CARTESIAN)
p = mdb.models['Model-1'].parts['Head']
a.Instance(name='Head-1', part=p, dependent=ON)
session.viewports['Viewport: 1'].view.setValues(nearPlane=0.551495,
farPlane=0.963975, width=0.275925, height=0.186932,
viewOffsetX=0.015468, viewOffsetY=0.00799466)
a = mdb.models['Model-1'].rootAssembly
a.rotate(instanceList=('Head-1', ), axisPoint=(0.0, 0.0, 0.0), axisDirection=(
10.0, 0.0, 0.0), angle=270.0)
session.viewports['Viewport: 1'].view.setValues(nearPlane=0.51226,
farPlane=1.00315, width=0.61196, height=0.414588, viewOffsetX=-0.02952,
viewOffsetY=-0.0592923)
p = mdb.models['Model-1'].parts['Ball']
session.viewports['Viewport: 1'].setValues(displayedObject=p)
p = mdb.models['Model-1'].parts['Head']
session.viewports['Viewport: 1'].setValues(displayedObject=p)
p = mdb.models['Model-1'].parts['Head']
p.DatumPointByCoordinate(coords=(0.00346, 4.05e-05, 0.127))
session.viewports['Viewport: 1'].view.setValues(nearPlane=0.556444,
farPlane=0.959026, width=0.231236, height=0.156656,
viewOffsetX=-0.0348714, viewOffsetY=0.00958098)
p = mdb.models['Model-1'].parts['Head']
v1, e1, d1, n1 = p.vertices, p.edges, p.datums, p.nodes
p.ReferencePoint(point=d1[5])
a = mdb.models['Model-1'].rootAssembly
a.regenerate()
a = mdb.models['Model-1'].rootAssembly
session.viewports['Viewport: 1'].setValues(displayedObject=a)
session.viewports['Viewport: 1'].view.setValues(nearPlane=0.549445,
farPlane=0.965964, width=0.259463, height=0.175779,
viewOffsetX=0.0315453, viewOffsetY=0.0493602)
a = mdb.models['Model-1'].rootAssembly
a.translate(instanceList=('Head-1', ), vector=(-0.00346, -0.127, 4.1e-05))
a = mdb.models['Model-1'].rootAssembly
p = mdb.models['Model-1'].parts['Ball']
a.Instance(name='Ball-1', part=p, dependent=ON)
p1 = a.instances['Ball-1']
p1.translate(vector=(0.242692413710857, 0.0, 0.0))
session.viewports['Viewport: 1'].view.fitView()
session.viewports['Viewport: 1'].view.setValues(nearPlane=1.01727,
farPlane=1.6629, width=0.232876, height=0.157768,
viewOffsetX=-0.0402756, viewOffsetY=0.0266032)
a = mdb.models['Model-1'].rootAssembly
a.rotate(instanceList=('Ball-1', ), axisPoint=(0.242692, 0.0, 0.0),
axisDirection=(0.0, -10.0, 0.0), angle=90.0)
a = mdb.models['Model-1'].rootAssembly
a.translate(instanceList=('Ball-1', ), vector=(0.007308, 0.0, 0.0))
a.translate(instanceList=('Ball-1', ), vector=(0, 0.110, 0.0))
session.viewports['Viewport: 1'].assemblyDisplay.setValues(
adaptiveMeshConstraints=ON)
mdb.models['Model-1'].ExplicitDynamicsStep(name='Contact', previous='Initial',
timePeriod=0.05, improvedDtMethod=ON)
session.viewports['Viewport: 1'].assemblyDisplay.setValues(step='Contact')
mdb.models['Model-1'].fieldOutputRequests['F-Output-1'].setValues(
numIntervals=300)
p = mdb.models['Model-1'].parts['Head']
session.viewports['Viewport: 1'].setValues(displayedObject=p)
p = mdb.models['Model-1'].parts['Head']
r = p.referencePoints
refPoints=(r[6], )
p.Set(referencePoints=refPoints, name='Head_COM')
session.viewports['Viewport: 1'].view.setValues(width=0.245279, height=0.16617,
viewOffsetX=-0.0372087, viewOffsetY=0.00965707)
p = mdb.models['Model-1'].parts['Ball']
session.viewports['Viewport: 1'].setValues(displayedObject=p)
a = mdb.models['Model-1'].rootAssembly
a.regenerate()
a = mdb.models['Model-1'].rootAssembly
session.viewports['Viewport: 1'].setValues(displayedObject=a)
regionDef=mdb.models['Model-1'].rootAssembly.allInstances['Head-1'].sets['Head_COM']
mdb.models['Model-1'].historyOutputRequests['H-Output-1'].setValues(variables=(
'AR', ), numIntervals=300, region=regionDef, sectionPoints=DEFAULT,
rebar=EXCLUDE)
regionDef=mdb.models['Model-1'].rootAssembly.allInstances['Head-1'].sets['Head_set']
mdb.models['Model-1'].HistoryOutputRequest(name='H-Output-2',
createStepName='Contact', variables=('ACOM1', 'ACOM2', 'ACOM3'),
numIntervals=300, region=regionDef, sectionPoints=DEFAULT,
rebar=EXCLUDE)
p = mdb.models['Model-1'].parts['Ball']
session.viewports['Viewport: 1'].setValues(displayedObject=p)
p = mdb.models['Model-1'].parts['Ball']
r = p.referencePoints
refPoints=(r[5], )
p.Set(referencePoints=refPoints, name='Ball_COM')
a = mdb.models['Model-1'].rootAssembly
a.regenerate()
a = mdb.models['Model-1'].rootAssembly
session.viewports['Viewport: 1'].setValues(displayedObject=a)
regionDef=mdb.models['Model-1'].rootAssembly.allInstances['Ball-1'].sets['Ball_COM']
mdb.models['Model-1'].HistoryOutputRequest(name='H-Output-3',
createStepName='Contact', variables=('VT', ), region=regionDef,
sectionPoints=DEFAULT, rebar=EXCLUDE)
session.viewports['Viewport: 1'].assemblyDisplay.setValues(interactions=ON,
constraints=ON, connectors=ON, engineeringFeatures=ON,
adaptiveMeshConstraints=OFF)
session.viewports['Viewport: 1'].view.setValues(session.views['Front'])
mdb.models['Model-1'].ContactProperty('IntProp-1')
mdb.models['Model-1'].interactionProperties['IntProp-1'].TangentialBehavior(
formulation=FRICTIONLESS)
mdb.models['Model-1'].interactionProperties['IntProp-1'].NormalBehavior(
pressureOverclosure=HARD, allowSeparation=ON,
constraintEnforcementMethod=DEFAULT)
a = mdb.models['Model-1'].rootAssembly
s1 = a.instances['Head-1'].faces
side1Faces1 = s1.getSequenceFromMask(mask=('[#ffffffff:60 #3f ]', ), )
region1=a.Surface(side1Faces=side1Faces1, name='Head_Surf')
a = mdb.models['Model-1'].rootAssembly
s1 = a.instances['Ball-1'].faces
side1Faces1 = s1.getSequenceFromMask(mask=('[#2 ]', ), )
region2=a.Surface(side1Faces=side1Faces1, name='Ball_Surf')
mdb.models['Model-1'].SurfaceToSurfaceContactExp(name ='Contact_Int',
createStepName='Contact', master = region1, slave = region2,
mechanicalConstraint=PENALTY, sliding=FINITE,
interactionProperty='IntProp-1', initialClearance=OMIT, datumAxis=None,
clearanceRegion=None)
session.viewports['Viewport: 1'].view.setValues(nearPlane=1.05324,
farPlane=1.34427, width=0.213851, height=0.144879,
viewOffsetX=-0.0643578, viewOffsetY=0.000939541)
a = mdb.models['Model-1'].rootAssembly
c1 = a.instances['Head-1'].cells
cells1 = c1.getSequenceFromMask(mask=('[#1 ]', ), )
region2=a.Set(cells=cells1, name='b_Set-1')
a = mdb.models['Model-1'].rootAssembly
r1 = a.instances['Head-1'].referencePoints
refPoints1=(r1[6], )
region1=regionToolset.Region(referencePoints=refPoints1)
mdb.models['Model-1'].RigidBody(name='Constraint-1', refPointRegion=region1,
bodyRegion=region2)
session.viewports['Viewport: 1'].view.setValues(nearPlane=0.973954,
farPlane=1.42355, width=0.794277, height=0.538103,
viewOffsetX=0.140652, viewOffsetY=-0.0428251)
a = mdb.models['Model-1'].rootAssembly
region1=a.instances['Head-1'].sets['Head_COM']
a = mdb.models['Model-1'].rootAssembly
region2=a.surfaces['Head_Surf']
mdb.models['Model-1'].Coupling(name='Constraint-2', controlPoint=region1,
surface=region2, influenceRadius=WHOLE_SURFACE, couplingType=KINEMATIC,
localCsys=None, u1=ON, u2=ON, u3=ON, ur1=ON, ur2=ON, ur3=ON)
session.viewports['Viewport: 1'].assemblyDisplay.setValues(loads=ON, bcs=ON,
predefinedFields=ON, interactions=OFF, constraints=OFF,
engineeringFeatures=OFF)
session.viewports['Viewport: 1'].assemblyDisplay.setValues(step='Initial')
a = mdb.models['Model-1'].rootAssembly
f1 = a.instances['Ball-1'].faces
faces1 = f1.getSequenceFromMask(mask=('[#2 ]', ), )
region = regionToolset.Region(faces=faces1)
mdb.models['Model-1'].Velocity(name='Predefined Field-1', region=region,
field='', distributionType=MAGNITUDE, velocity1=-6.0, omega=0.0)
session.viewports['Viewport: 1'].assemblyDisplay.setValues(mesh=ON, loads=OFF,
bcs=OFF, predefinedFields=OFF, connectors=OFF)
session.viewports['Viewport: 1'].assemblyDisplay.meshOptions.setValues(
meshTechnique=ON)
p = mdb.models['Model-1'].parts['Ball']
session.viewports['Viewport: 1'].setValues(displayedObject=p)
session.viewports['Viewport: 1'].partDisplay.setValues(sectionAssignments=OFF,
engineeringFeatures=OFF, mesh=ON)
session.viewports['Viewport: 1'].partDisplay.meshOptions.setValues(
meshTechnique=ON)
p = mdb.models['Model-1'].parts['Ball']
p.seedPart(size=0.0075, deviationFactor=0.1, minSizeFactor=0.1)
p = mdb.models['Model-1'].parts['Ball']
p.generateMesh()
p = mdb.models['Model-1'].parts['Head']
session.viewports['Viewport: 1'].setValues(displayedObject=p)
p = mdb.models['Model-1'].parts['Head']
c = p.cells
pickedRegions = c.getSequenceFromMask(mask=('[#1 ]', ), )
p.setMeshControls(regions=pickedRegions, elemShape=TET, technique=FREE)
elemType1 = mesh.ElemType(elemCode=UNKNOWN_HEX, elemLibrary=EXPLICIT)
elemType2 = mesh.ElemType(elemCode=UNKNOWN_WEDGE, elemLibrary=EXPLICIT)
elemType3 = mesh.ElemType(elemCode=C3D10M, elemLibrary=EXPLICIT)
p = mdb.models['Model-1'].parts['Head']
c = p.cells
cells = c.getSequenceFromMask(mask=('[#1 ]', ), )
pickedRegions =(cells, )
p.setElementType(regions=pickedRegions, elemTypes=(elemType1, elemType2,
elemType3))
p = mdb.models['Model-1'].parts['Head']
p.seedPart(size=1.0, deviationFactor=0.1, minSizeFactor=0.1)
p = mdb.models['Model-1'].parts['Head']
p.generateMesh()
a1 = mdb.models['Model-1'].rootAssembly
a1.regenerate()
a = mdb.models['Model-1'].rootAssembly
session.viewports['Viewport: 1'].setValues(displayedObject=a)
session.viewports['Viewport: 1'].assemblyDisplay.setValues(mesh=OFF)
session.viewports['Viewport: 1'].assemblyDisplay.meshOptions.setValues(
meshTechnique=OFF)
mdb.Job(name='Job-1', model='Model-1', description='', type=ANALYSIS,
atTime=None, waitMinutes=0, waitHours=0, queue=None, memory=90,
memoryUnits=PERCENTAGE, explicitPrecision=SINGLE,
nodalOutputPrecision=SINGLE, echoPrint=OFF, modelPrint=OFF,
contactPrint=OFF, historyPrint=OFF, userSubroutine='', scratch='',
resultsFormat=ODB, parallelizationMethodExplicit=DOMAIN, numDomains=4,
activateLoadBalancing=False, multiprocessingMode=DEFAULT, numCpus=4)
mdb.jobs['Job-1'].submit(consistencyChecking=OFF)
session.viewports['Viewport: 1'].partDisplay.setValues(sectionAssignments=ON,
engineeringFeatures=ON, mesh=OFF)
session.viewports['Viewport: 1'].partDisplay.meshOptions.setValues(
meshTechnique=OFF)
p = mdb.models['Model-1'].parts['Head']
session.viewports['Viewport: 1'].setValues(displayedObject=p)
p = mdb.models['Model-1'].parts['Ball']
session.viewports['Viewport: 1'].setValues(displayedObject=p)
a = mdb.models['Model-1'].rootAssembly
session.viewports['Viewport: 1'].setValues(displayedObject=a)
session.viewports['Viewport: 1'].assemblyDisplay.setValues(
adaptiveMeshConstraints=ON)
regionDef=mdb.models['Model-1'].rootAssembly.allInstances['Ball-1'].sets['Ball_set']
mdb.models['Model-1'].historyOutputRequests['H-Output-3'].setValues(variables=(
'VCOM1', 'VCOM2', 'VCOM3'), region=regionDef)
session.viewports['Viewport: 1'].assemblyDisplay.setValues(
adaptiveMeshConstraints=OFF)
mdb.Job(name='contact', model='Model-1', description='', type=ANALYSIS,
atTime=None, waitMinutes=0, waitHours=0, queue=None, memory=90,
memoryUnits=PERCENTAGE, explicitPrecision=SINGLE,
nodalOutputPrecision=SINGLE, echoPrint=OFF, modelPrint=OFF,
contactPrint=OFF, historyPrint=OFF, userSubroutine='', scratch='',
resultsFormat=ODB, parallelizationMethodExplicit=DOMAIN, numDomains=4,
activateLoadBalancing=False, multiprocessingMode=DEFAULT, numCpus=4)
mdb.jobs['contact'].submit(consistencyChecking=OFF)
session.mdbData.summary()
o3 = session.openOdb(name='C:/Temp/Python_script/contact.odb')
session.viewports['Viewport: 1'].setValues(displayedObject=o3)
session.viewports['Viewport: 1'].makeCurrent()
a = mdb.models['Model-1'].rootAssembly
session.viewports['Viewport: 1'].setValues(displayedObject=a)
session.mdbData.summary()
session.viewports['Viewport: 1'].setValues(
displayedObject=session.odbs['C:/Temp/Python_script/contact.odb'])
o3 = session.openOdb(name='C:/Temp/Python_script/contact.odb')
session.viewports['Viewport: 1'].setValues(displayedObject=o3)
session.viewports['Viewport: 1'].makeCurrent()
session.viewports['Viewport: 1'].odbDisplay.display.setValues(plotState=(
CONTOURS_ON_DEF, ))
odb = session.odbs['C:/Temp/Python_script/contact.odb']
xy1 = xyPlot.XYDataFromHistory(odb=odb,
outputVariableName='Average acceleration: ACOM1 of element set ASSEMBLY_HEAD-1_HEAD_SET',
steps=('Contact', ), suppressQuery=True,
__linkedVpName__='Viewport: 1')
c1 = session.Curve(xyData=xy1)
xy2 = xyPlot.XYDataFromHistory(odb=odb,
outputVariableName='Average acceleration: ACOM2 of element set ASSEMBLY_HEAD-1_HEAD_SET',
steps=('Contact', ), suppressQuery=True,
__linkedVpName__='Viewport: 1')
c2 = session.Curve(xyData=xy2)
xy3 = xyPlot.XYDataFromHistory(odb=odb,
outputVariableName='Average acceleration: ACOM3 of element set ASSEMBLY_HEAD-1_HEAD_SET',
steps=('Contact', ), suppressQuery=True,
__linkedVpName__='Viewport: 1')
c3 = session.Curve(xyData=xy3)
xy4 = xyPlot.XYDataFromHistory(odb=odb,
outputVariableName='Rotational acceleration: AR1 PI: HEAD-1 Node 64607 in NSET HEAD_COM',
steps=('Contact', ), suppressQuery=True,
__linkedVpName__='Viewport: 1')
c4 = session.Curve(xyData=xy4)
xy5 = xyPlot.XYDataFromHistory(odb=odb,
outputVariableName='Rotational acceleration: AR2 PI: HEAD-1 Node 64607 in NSET HEAD_COM',
steps=('Contact', ), suppressQuery=True,
__linkedVpName__='Viewport: 1')
c5 = session.Curve(xyData=xy5)
xy6 = xyPlot.XYDataFromHistory(odb=odb,
outputVariableName='Rotational acceleration: AR3 PI: HEAD-1 Node 64607 in NSET HEAD_COM',
steps=('Contact', ), suppressQuery=True,
__linkedVpName__='Viewport: 1')
c6 = session.Curve(xyData=xy6)
xyp = session.XYPlot('plot_b')
chartName = xyp.charts.keys()[0]
chart = xyp.charts[chartName]
chart.setValues(curvesToPlot=(c1, c2, c3, c4, c5, c6, ), )
session.viewports['Viewport: 1'].setValues(displayedObject=xyp)
import sys
sys.path.insert(46,
r'c:/SIMULIA/CAE/2019/win_b64/code/python2.7/lib/abaqus_plugins/excelUtilities')
import abq_ExcelUtilities.excelUtilities
abq_ExcelUtilities.excelUtilities.XYtoExcel(xyDataNames='From Current XY Plot',
trueName='From Current XY Plot')