title: Accelerate a slow loop in Abaqus-python code for extracting strain data from .odb file
body: <p>I have a .odb file, named plate2.odb, that I want to extract the strain data from. To do this I built the simple code below that loops through the field output E (strain) for each element and saves it to a list. </p>
  
  <pre><code>from odbAccess import openOdb
  import pickle as pickle
  
  # import database
  odbname = 'plate2'
  path = './'
  myodbpath = path + odbname + '.odb'
  odb = openOdb(myodbpath)
  
  # load the strain values into a list
  E = []
  for i in range(1000):
      E.append(odb.steps['Step-1'].frames[0].fieldOutputs['E'].values[i].data)   
  
  # save the data
  with open("mises.pickle", "wb") as input_file:
      pickle.dump(E, input_file)
  
  odb.close()
  </code></pre>
  
  <p>The issue is the for loop that loads the strain values into a list is taking a long time (35 seconds for 1000 elements). At this rate (0.035 queries/second), it would take me 2 hours to extract the data for my model with 200,000 elements. Why is this taking so long? How can I accelerate this? </p>
  
  <p>If I do a single strain query outside any Python loop it takes  0.04 seconds, so I know this is not an issue with the Python loop.</p>