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