6.3 ABAQUS/CAE sequences

Some methods take arguments that are described as “a sequence of sequences of Floats” or “a sequence of sequences of Ints.” Data that are entered into the table editor in ABAQUS/CAE appear as a sequence of sequences in the equivalent ABAQUS Scripting Interface command. In effect the data are a two-dimensional array. The data across one row form one sequence, and multiple rows form a sequence of those sequences. For example, consider the case where the user is creating an elastic material and describing a temperature-dependent behavior.

The equivalent ABAQUS Scripting Interface command is
mdb.models['Model-1'].materials['steel'].Elastic(
    temperatureDependency=TRUE, table=(
    (200.0E9, 0.3, 0.0), 
    (210.0E9, 0.3, 100.0), 
    (220.0E9, 0.3, 250.0), 
    (225.0E9, 0.3, 500.0)))
The table argument is described in the ABAQUS Scripting Reference Manual as a sequence of sequences of Floats.

Lists, tuples, strings, and arrays are described in Sequences, Section 4.5.4. In addition, the ABAQUS Scripting Interface defines some of its own sequences that contain objects of the same type.

GeomSequence

A GeomSequence is a sequence of geometry objects, such as Vertices or Edges. The type of an Edge sequence is GeomSequence. Use the len() function to determine the number of objects in a GeomSequence. A GeomSequence has methods and members too.

For example, the following creates a three-dimensional part by extruding a 70 × 70 square through a distance of 20. The members of the resulting Part object are listed along with some information about the sequence of Edge objects.

mdb.Model('Body')
mySketch = mdb.models['Body'].Sketch(
    name='__profile__', sheetSize=200.0)
mySketch.rectangle(point1=(0.0, 0.0), 
    point2=(70.0, 70.0))
switch = mdb.models['Body'].Part(name='Switch', 
    dimensionality=THREE_D, type=DEFORMABLE_BODY)
switch.BaseSolidExtrude(sketch=mySketch, depth=20.0)
The following statement displays the members of the resulting three-dimensional part:
>>> print mdb.models['Body'].parts['Switch'].__members__
['cells', 'datums', 'edges', 'elemEdges', 'elemFaces', 
'elementSets', 'elements', 'faces', 'features', 
'featuresById', 'geometryPrecision', 
'geometryRefinement', 'geometrySets', 
'geometryValidity', 'ips', 'modelName', 'name', '
nodeSets', 'nodes', 'referencePoints', 'reinforcements', 
'sets', 'space', 'surfaces', 'vertices']
The edges, faces, vertices, cells, and ips members are all sequences of type GeomSequence.

The following statements display some information about the edges sequence:

>>> print 'Single edge type = ', type(switch.edges[0])
Single edge type = <type 'Edge'>

>>> print 'Edge sequence type = ', type(switch.edges)
Edge sequence type = <type 'GeomSequence'>

>>> print 'Members of edge sequence = ', 
        switch.edges.__members__
Members of edge sequence =  ['pointsOn']

>>> print 'Number of edges in sequence = ', 
        len(switch.edges)
Number of edges in sequence =  12

MeshSequence

A sequence of Nodes or Elements.

SurfSequence

A sequence of Surfaces.