1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
|
--
-- File : ElementResults.cdl
-- Created : Mon 11 Jan 1993
-- Author : CKY / Contract Toubro-Larsen ( Anand NATRAJAN )
--
---Copyright : MATRA-DATAVISION 1993
--
class ElementResults from IGESAppli inherits IGESEntity
---Purpose: defines ElementResults, Type <148>
-- in package IGESAppli
-- Used to find the results of FEM analysis
uses
GeneralNote from IGESDimen,
FiniteElement from IGESAppli,
HAsciiString from TCollection,
HArray1OfFiniteElement from IGESAppli,
HArray1OfInteger from TColStd,
HArray1OfReal from TColStd,
HArray1OfHArray1OfInteger from IGESBasic,
HArray1OfHArray1OfReal from IGESBasic
raises DimensionMismatch, OutOfRange
is
Create returns mutable ElementResults;
-- Specific Methods pertaining to the class
Init (me : mutable;
aNote : GeneralNote;
aSubCase : Integer;
aTime : Real;
nbResults : Integer;
aResRepFlag : Integer;
allElementIdents : HArray1OfInteger;
allFiniteElems : HArray1OfFiniteElement;
allTopTypes : HArray1OfInteger;
nbLayers : HArray1OfInteger;
allDataLayerFlags : HArray1OfInteger;
allnbResDataLocs : HArray1OfInteger;
allResDataLocs : HArray1OfHArray1OfInteger;
allResults : HArray1OfHArray1OfReal)
---Purpose : This method is used to set the fields of the class
-- ElementResults
-- - aNote : GeneralNote Entity describing analysis
-- - aSubCase : Analysis Subcase number
-- - aTime : Analysis time value
-- - nbResults : Number of result values per FEM
-- - aResRepFlag : Results Reporting Flag
-- - allElementIdents : FEM element number for elements
-- - allFiniteElems : FEM element
-- - allTopTypes : Element Topology Types
-- - nbLayers : Number of layers per result data location
-- - allDataLayerFlags : Data Layer Flags
-- - allnbResDataLocs : Number of result data report locations
-- - allResDataLocs : Result Data Report Locations
-- - allResults : List of Result data values of FEM analysis
raises DimensionMismatch;
SetFormNumber (me : mutable; form : Integer) raises OutOfRange;
---Purpose : Changes the FormNumber (which indicates Type of Result)
-- Error if not in range [0-34]
Note (me) returns GeneralNote;
---Purpose : returns General Note Entity describing analysis case
SubCaseNumber (me) returns Integer;
---Purpose : returns analysis Subcase number
Time (me) returns Real;
---Purpose : returns analysis time value
NbResultValues (me) returns Integer;
---Purpose : returns number of result values per FEM
ResultReportFlag (me) returns Integer;
---Purpose : returns Results Reporting Flag
NbElements (me) returns Integer;
---Purpose : returns number of FEM elements
ElementIdentifier (me; Index : Integer) returns Integer
---Purpose : returns FEM element number for elements
raises OutOfRange;
-- if Index <= 0 or Index > NbElements()
Element (me; Index : Integer) returns FiniteElement
---Purpose : returns FEM element
raises OutOfRange;
-- if Index <= 0 or Index > NbElements()
ElementTopologyType (me; Index : Integer) returns Integer
---Purpose : returns element Topology Types
raises OutOfRange;
-- if Index <= 0 or Index > NbElements()
NbLayers (me; Index : Integer) returns Integer
---Purpose : returns number of layers per result data location
raises OutOfRange;
-- if Index <= 0 or Index > NbElements()
DataLayerFlag (me; Index : Integer) returns Integer
---Purpose : returns Data Layer Flags
raises OutOfRange;
-- if Index <= 0 or Index > NbElements()
NbResultDataLocs (me; Index : Integer) returns Integer
---Purpose : returns number of result data report locations
raises OutOfRange;
-- if Index <= 0 or Index > NbElements()
ResultDataLoc (me; NElem, NLoc : Integer) returns Integer
---Purpose : returns Result Data Report Locations
-- UNFINISHED
raises OutOfRange;
NbResults (me; Index : Integer) returns Integer
---Purpose : returns total number of results
raises OutOfRange;
ResultData (me; NElem, num : Integer) returns Real
---Purpose : returns Result data value for an Element, given its
-- order between 1 and <NbResults(NElem)> (direct access)
-- For a more comprehensive access, see below
raises OutOfRange;
ResultRank (me; NElem, NVal, NLay, NLoc : Integer) returns Integer
---Purpose : Computes, for a given Element <NElem>, the rank of a
-- individual Result Data, given <NVal>,<NLay>,<NLoc>
raises OutOfRange;
ResultData (me; NElem, NVal, NLay, NLoc : Integer) returns Real
---Purpose : returns Result data values of FEM analysis, according this
-- definition :
-- - <NElem> : n0 of the Element to be considered
-- - <NVal> : n0 of the Value between 1 and NbResultValues
-- - <NLay> : n0 of the Layer for this Element
-- - <NLoc> : n0 of the Data Location for this Element
-- This gives for each Element, the corresponding rank
-- computed by ResultRank, in which the leftmost subscript
-- changes most rapidly
raises OutOfRange;
ResultList (me; NElem : Integer) returns HArray1OfReal
---Purpose : Returns in once the entire list of data for an Element,
-- addressed as by ResultRank (See above)
raises OutOfRange;
fields
--
-- Class : IGESAppli_ElementResults
--
-- Purpose : Declaration of variables specific to the definition
-- of the Class ElementResults.
--
-- Reminder : A ElementResults instance is defined by :
-- - General Note Entity describing analysis case
-- - Analysis Subcase number
-- - Analysis time value
-- - Number of result values per FEM
-- - Results Reporting Flag
-- - Number of FEM elements, then for each one :
-- - FEM element number identifier
-- - FEM element
-- - Element Topology Type
-- - Number of layers per result data location
-- - Data Layer Flag
-- - Number of result data report locations
-- - Result Data Report Locations
-- - Total number of result data
-- - Result data values of FEM analysis
-- (accessed in "Array3" form for each element)
theNote : GeneralNote;
theSubcaseNumber : Integer;
theTime : Real;
theNbResultValues : Integer;
theResultReportFlag : Integer;
theElementIdentifiers : HArray1OfInteger;
theElements : HArray1OfFiniteElement;
theElementTopologyTypes : HArray1OfInteger;
theNbLayers : HArray1OfInteger;
theDataLayerFlags : HArray1OfInteger;
theNbResultDataLocs : HArray1OfInteger;
theResultDataLocs : HArray1OfHArray1OfInteger;
theResultData : HArray1OfHArray1OfReal;
end ElementResults;
|