Continue to Site

Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

  • Congratulations MintJulep on being selected by the Eng-Tips community for having the most helpful posts in the forums last week. Way to Go!

Abaqus python get maximum absolute principal logarithmic strain

Status
Not open for further replies.

Settler

Structural
May 22, 2010
88
Hello all,

I want to write the xyreport for the place with the maximum absolute logarithmic strain at the last increment. Until now I have done this:

reportnameandpath2= 'E:/AbaqusWorkDir/Layer study/Reports/LEP-' + Modelname + '.txt'

Python:
	session.viewports['Viewport: 1'].setValues(displayedObject=Modelname_odb_object)
	keyarray2=session.odbData[Modelname_odb_path].historyVariables.keys()

	LEP=[]
	for x in keyarray2:
		if (x.find('LEP')>-1):
			LEP.append(x)
	
	for i in range(1,len(LEP)+1):
		session.XYDataFromHistory(name='LEP', odb=Modelname_odb_object, outputVariableName=LEP[i-1])
		Modelname_xydata_object2 = session.xyDataObjects['LEP']
		session.xyReportOptions.setValues(totals=OFF, minMax=OFF)
		
		session.writeXYReport(fileName=reportnameandpath2, xyData=(Modelname_xydata_object2, ), appendMode=ON)

However, what it does is that it writes for EVERY integration point of my body under question a report and appends it. After that I have to go and find it out. Of course this can take a lot of time as the body in which I'm looking might have many nodes, and the writeXYReport process is long.

Would you recommend any faster way as the writing process takes much time?
 
Replies continue below

Recommended for you

Why don't you take the result out of the field output and write it yourself into a file?
 
Any idea/suggestion on how to do that?

I haven't been exposed to the field output requests in Abaqus scripts.
 
You could use /CAE with Report -> Field Output.

With Python you should check the example in the Scripting Users Guide.
 
Yes, I have checked the example.

The problem I'm running into is that I get the following error:

"An assembly level elset named RUBBER-1.SET-1 does not exist in the output database 22a.odb"

When I go to the .odb I can see the abovementioned element set.

Any idea?
 
The set is probably not at assembly level, but at instance level.

Use the /CAE CLI (Command Line Interface) with the tab key and the print command to navigate into the structure and look into container.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor