from abaqus import *
from abaqusConstants import *
import odbAccess
Odb='S-02_CASO2-600s_MAX_TMA.odb'
odb = odbAccess.openOdb(path=Odb)
StepName='CASO2-600s'
newStepName='newStepName'
nFrames=odb.steps[StepName].frames[-1].frameId+1 #frames number
StepTime=odb.steps[StepName].frames[-1].frameValue #total time
newStep = odb.Step(name=newStepName, description='Step for new fields', domain=TIME, timePeriod=StepTime)
for N in range(nFrames):
tempTime = session.odbs[Odb].steps[StepName].frames[N].frameValue
newFrame = newStep.Frame(frameId=N, frameValue=tempTime, description='Increment: '+str(N) + ' Step Time: ' + str(round(tempTime,2)) )
#field 1 to copy
tmpField = session.odbs[Odb].steps[StepName].frames[N].fieldOutputs['S']
sessionField = newFrame.FieldOutput(name='S_new', description='blabla', field=tmpField)
#field 2 to copy
tmpField = session.odbs[Odb].steps[StepName].frames[N].fieldOutputs['U']
sessionField = newFrame.FieldOutput(name='U_new', description='blabla', field=tmpField)
#add as fields as you need to copy
odb.save()
odb.close()