I have a python script in Abaqus gui. When I try to run this script I have error: VisError: No xy data was extracted using the provided options
.
The python script fragment is:
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[os.getcwd() + '/' + 'Hotforging1.odb'])
session.viewports['Viewport: 1'].assemblyDisplay.setValues(
adaptiveMeshConstraints=OFF)
session.linkedViewportCommands.setValues(_highlightLinkedViewports=False)
odb = session.odbs[os.getcwd() + '/' + 'Hotforging1.odb']
session.xyDataListFromField(odb=odb, outputPosition=INTEGRATION_POINT,
variable=(('HFL', INTEGRATION_POINT),
('LE', INTEGRATION_POINT),
('PE', INTEGRATION_POINT),
('S', INTEGRATION_POINT),),
elementPick=(('HBEAM-1', 4, ('[#0:15 #800 #0:3 #40000000 #900000 ]',)),), )
I know that the problem is with xyDataListFromField
function, but I don't know how can I solve it.
The element input for xyDataListFromField
method is wrong. I think, the input '[#0:15 #800 #0:3 #40000000 #900000 ]'
, you must have got from getSequenceFromMask
method. The input for this method is internal, hence you cannot use it in your code.
Anyways, first of all, I did not find elementPick
option for this method. However, some alternative option you can use are: elementSets
and elementLabels
.
This information I got from Abaqus Scripting reference Guide:
elementSets
A sequence of Strings specifying element sets or a String specifying a single element set.
elementLabels
A sequence of expressions specifying element labels per part instance in the model. Each part instance element expression is a sequence of a String specifying the part instance name and a sequence of element expressions; for example,(('partInstance1',(1,'7','3:15;3'),), ('partInstance2','8'),))
.
The element expressions can be any of the following:
• An Int specifying a single element label; for example,1
.
• A String specifying a single element label; for example,'7'
. • A String specifying a sequence of element labels; for example, '3:5' and '3:15:3'.
I think, elementSets
option is easy to use, where is just need to provide the element set names.