i write a python script to modeling and analysis a plate for buckling. i need the minimum eigenvalue for run the other script for RIKS analysis. how can i find "smallest eigenvalue" with python scripting in abaqus?
Asked
Active
Viewed 291 times
3 Answers
0
foo = [3,1,4,5]
print min(foo)
outputs => 1

patito
- 530
- 2
- 13
-
ok axel but how can i read the eigenvalue from odb of buckling analysis? – ham moa Aug 09 '16 at 14:58
0
datFullPath = PathDir+FileName+'.dat'
myOutdf = open(datFullPath,'r')
stline=' MODE NO EIGENVALUE\n'
lines = myOutdf.readlines()
ss=0
for i in range(len(lines)-1):
if lines[i] == stline :
print lines[i]
ss=i
f1=lines[ss+3]
MinEigen=float(f1[15:24])
myOutdf.close()
MinEigen

ham moa
- 27
- 3
0
# Import abaqus odb work related modules
from odbAccess import *
# Read the odb file, change name and path as per your requirement
### This is a typical procedure to read history-outputs, as
### frequency etc. information is not available as field output
odb = openOdb(path =JobName+'.odb')
a=odb.rootAssembly
step=odb.steps['Step-1']
frames=step.frames
numframes=len(frames)
i=0
MinEigen=[]
for frame in frames :
f1=frame.description
if len(f1[28:48])>1:
MinEg=float(f1[28:48])
if MinEg>0.0:
MinEigen.append (MinEg)
print MinEigen,min(MinEigen)
fwall=open("EIGENX.txt", 'a')
fwall.write(str(min(MinEigen))+'\n')
fwall.close()
odb.close()
##stop

ham moa
- 27
- 3