Application of Python language in Abaqus---4.2 output database object model

After submitting the analysis job, the output database generated by Abaqus includes model data (model data) and result data (result data) .

1. Model data (model data)
model data is used to describe the components and component instances in the root assembly (root assembly). For example: node coordinates, set definitions, element types, etc.

2. Results data (results data)
results data is used to describe various analysis results. For example: stress, strain and displacement etc. The reader can set the result data according to the output request. Results data can be either field data or historical data.

4.2.1 Model data
Model data is used to define the analysis model. For example: components, materials, boundary conditions, physical constants, etc. The Abaqus scripting interface did not write all model data to the output database. For example: Loads are rarely accessed when scripting, so loads are not written to the model database. The model data stored in the output database mainly includes: parts, root assembly, part instances, regions, materials, sections, section assignments ) and section categories, the above model data are stored in the Abaqus script interface object.

1. Components
In the assembly module, multiple component instances can be created for the same component. Parts cannot directly participate in finite element analysis, and parts in the output database contain information on nodes, elements, surfaces, and assemblies.

2. Root assembly
The root assembly contains the relevant information of the positioning component instance, and the finite element needs the boundary conditions, constraints, interactions and loading history of the root assembly. Each output database can contain only one root assembly.

3. Part instance The
assembly module locates and assembles the part instance, and all the part features defined in the Part module will be inherited by the part instance, that is, all the part features are the characteristics of the part instance. Each component instance in the root assembly is positioned independently of the others.

4. Material
The material model can be reused, and the component instances in the root assembly can use the same material model. Multiple material models may be defined in the model database, but only the material model used by the root assembly will be copied to the output database.

5. Section
The material properties defined in the Property module have nothing to do with the component instance, and Abaqus/CAE connects the two through the section. First, Abaqus assigns material properties to a certain type of section (such as selecting Solid Section for a 3D solid part), and then the section has this material property, and then assigns the section to the corresponding component instance, and the component instance now has Material properties corresponding to the section. Only the sections used by the root assembly are copied to the output database.

6. Section assignment
Section assignment refers to assigning the defined section to the corresponding component instance or the area corresponding to the component instance. Section assignments in the output database will remain associated with assigned areas.

7. Section Classification
Section classification groups areas defined by the same section together. Example: Group together the shell section areas for the 5 section points used. The same cross-section classification can judge the position of the analysis result through the cross-section point.

8. Interaction
Interaction is mainly used to define the contact relationship between surfaces in analysis. Only the interactions defined by contact pairs are written to the output database.

9. Interaction properties
Interaction properties define the physical properties of the interacting surfaces (eg tangential and normal properties). It is worth noting that only the tangential friction properties are written out to the output database.

The above model data object is the model data of the output database, which is similar to the objects stored in the model database of Abaqus/CAE. The difference is that the model database may contain multiple models, and the model name needs to be specified when writing the script . The output database only contains one Model, you don't need to specify the model name when writing scripts.

The following code example refers to the instance object housing in the model database:

mdb = openMdb(pathName = "///文件路径///")
myModel = mdb.models['Transmission']
myPart = myModel.rootAssembly.instances['housing']

The first line calls the openMdb method to open the model database through the path, and assigns the variable to mdb. The
second line opens the model named "Transmission" in the model database and assigns it to the variable myModel. The
third line opens the root assembly component instance "housing" in the model and assigns it to The variable myPart.

The following codes refer to the same instance object in the output database (odb):

odb = openOdb(path = "///文件路径///")
myPart = odb.rootAssembly.instances['housing']

The first line of code calls the openOdb method to open the output database under the path. The
second line calls the instance object "housing" of the output database

Call prettyPrint to view the state of the output database and the hierarchical relationship of the object model.

Example: The following code gives the output database display results for a cantilever beam model.

from odbAccess import *
from textRepr import *
odb = openOdb(path = '///文件路径///')
prettyPrint(odb, 2)

4.2.2 Result data The result
data refers to the finite element analysis results specified by the user. The Abaqus scripting interface divides the result data in the output database into the following parts:

1. Analysis steps (steps)
Abaqus finite element analysis often includes one or more analysis steps, and each analysis step includes a corresponding analysis type. For example: the Crush command to access the analysis step object in the output database is as follows:

crushStep = odb.steps['Crush']

2. Frames (frames)
The analysis results of each incremental step in the output database become frames, and each analysis step contains multiple frames. Frequency extraction analysis or buckling analysis stores each feature module individually as a frame. The command to access the last frame of the Crush analysis step is as follows:

crushFrame = crushStep.frames[-1]

3. Field output Field output
can output all components of a certain calculation result, and the amount of data information is very large, including: unit number, node number, position, integration point, section point, type, etc. In order to improve the execution efficiency of the script, you can only output a subset of the result data, that is: a custom output area (eg: unit set). The following commands represent the output stress field variable S:

stress = crushFrame.fieldOutputs('S')

4. History output (history output)
The history output is used to define the result output (for example: energy) for a certain point or a small area of ​​the model, and the output frequency is generally higher. Unlike field output, history output can output an individual variable of the analysis results (for example, a stress component). The following commands represent the second component U2 of the output displacement:

u2Deflection = endPoint.historyOutputs['U2']

Depending on the output type, a HistoryRegion object in the history output can be defined as: a node, an integration point, a region, a material point, or the entire model. The command to access the area where the historical output resides is as follows:

endPoint = crushStep.historyRegions['end point']

A HistoryRegion object can also contain historical output results for all time intervals of multiple analysis steps. For example: (t1, U21), (t2, U22) etc. After the history output object u2Deflection is given, the command to extract the result:

for time, value in u2Deflection.data:
	print("Time:", time, "U2 deflection:", value)

Guess you like

Origin blog.csdn.net/qq_35412059/article/details/107070336