Python从Abaqus输出数据库读取历史输出数据(Abaqus帮助文档学习笔记)
Posted Smith Eric
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python从Abaqus输出数据库读取历史输出数据(Abaqus帮助文档学习笔记)相关的知识,希望对你有一定的参考价值。
History output is output defined for a single point or for values calculated for a portion of the model as a whole, such as energy. Depending on the type of output expected, the historyRegions repository contains data from one of the following:
-
a node
-
an integration point
-
a region
-
a material point
Note: Note: History data from an analysis cannot contain multiple points.
The history data object model.
In contrast to field output, which is associated with a frame, history output is associated with a step. History output data are stored in the historyRegions repository under an OdbStep object. Abaqus creates keys to the historyRegions repository that describe the region; for example,
-
'Node PART-1-1.1000'
-
'Element PART-1-1.2 Int Point 1'
-
'Assembly ASSEMBLY'
The output from all history requests that relate to a specified point is collected in one HistoryRegion object. A HistoryRegion object contains multiple HistoryOutput objects. Each HistoryOutput object, in turn, contains a sequence of (frameValue, value) sequences. In a time domain analysis (domain=TIME) the sequence is a tuple of (stepTime, value). In a frequency domain analysis (domain=FREQUENCY) the sequence is a tuple of (frequency, value). In a modal domain analysis (domain=MODAL) the sequence is a tuple of (mode, value).
In the analysis that generated the Abaqus/CAE Visualization module tutorial output database, the user asked for the following history output:
At the rigid body reference point (Node 1000)
-
U
-
V
-
A
At the corner element
-
MISES
-
LE22
-
S22
The history output data can be retrieved from the HistoryRegion objects in the output database. The tutorial output database contains HistoryRegion objects that relate to the rigid body reference point and the integration points of the corner element as follows:
-
'Node PART-1-1.1000'
-
'Element PART-1-1.1 Int Point 1'
-
'Element PART-1-1.1 Int Point 2'
-
'Element PART-1-1.1 Int Point 3'
-
'Element PART-1-1.1 Int Point 4'
The following statements read the tutorial output database and write the U2 history data from the second step to an ASCII file that can be plotted by Abaqus/CAE:The output in this example is a sequence of tuples containing the frame time and the displacement value. The example uses nodal history data output. If the analysis requested history output from an element, the output database would contain one HistoryRegion object and one HistoryPoint object for each integration point.
from odbAccess import *
odb = openOdb(path='viewer_tutorial.odb')
step2 = odb.steps['Step-2']
region = step2.historyRegions['Node PART-1-1.1000']
u2Data = region.historyOutputs['U2'].data
dispFile = open('disp.dat','w')
for time, u2Disp in u2Data:
dispFile.write('%10.4E %10.4E\\n' % (time, u2Disp))
dispFile.close()
以上是关于Python从Abaqus输出数据库读取历史输出数据(Abaqus帮助文档学习笔记)的主要内容,如果未能解决你的问题,请参考以下文章