mirror of
https://github.com/JuliaFEM/JuliaFEM.jl.git
synced 2026-08-06 04:21:33 +00:00
added basic abaqus inp parser
This commit is contained in:
@@ -0,0 +1,566 @@
|
||||
**NSET COUNT = 298
|
||||
*NODE,NSET=NALL
|
||||
1, 20.00000, 5.00000, 5.00000
|
||||
2, 25.00000, 5.00000, 5.00000
|
||||
3, 40.00000, 5.00000, 5.00000
|
||||
4, 42.50000, 5.00000, 2.50000
|
||||
5, 47.50000, 7.50000, 5.00000
|
||||
6, 42.50000, 7.50000, 5.00000
|
||||
7, 85.00000, 5.00000, 5.00000
|
||||
8, 90.00000, 5.00000, 5.00000
|
||||
9, 80.00000, 5.00000, 5.00000
|
||||
10, 77.50000, 5.00000, 2.50000
|
||||
11, 92.50000, 2.50000, 5.00000
|
||||
12, 97.50000, 2.50000, 5.00000
|
||||
13, 95.00000, 7.50000, 7.50000
|
||||
14, 97.50000, 5.00000, 2.50000
|
||||
15, 92.50000, 5.00000, 2.50000
|
||||
16, 97.50000, 7.50000, 5.00000
|
||||
17, 2.50000, 2.50000, 5.00000
|
||||
18, 5.00000, 2.50000, 2.50000
|
||||
19, 35.00000, 5.00000, 5.00000
|
||||
20, 10.00000, 5.00000, 5.00000
|
||||
21, 15.00000, 5.00000, 5.00000
|
||||
22, 55.00000, 2.50000, 7.50000
|
||||
23, 77.50000, 5.00000, 7.50000
|
||||
24, 75.00000, 7.50000, 7.50000
|
||||
25, 75.00000, 2.50000, 7.50000
|
||||
26, 75.00000, 5.00000, 5.00000
|
||||
27, 75.00000, 2.50000, 2.50000
|
||||
28, 75.00000, 7.50000, 2.50000
|
||||
29, 2.50000, 7.50000, 5.00000
|
||||
30, 7.50000, 7.50000, 5.00000
|
||||
31, 5.00000, 5.00000, 5.00000
|
||||
32, 7.50000, 2.50000, 5.00000
|
||||
33, 5.00000, 2.50000, 7.50000
|
||||
34, 30.00000, 5.00000, 5.00000
|
||||
35, 50.36999, 4.74900, 5.47225
|
||||
36, 50.18499, 2.37450, 7.73613
|
||||
37, 47.68499, 4.87450, 7.73613
|
||||
38, 52.68499, 4.87450, 7.73613
|
||||
39, 45.00000, 2.50000, 7.50000
|
||||
40, 47.68499, 2.37450, 5.23613
|
||||
41, 52.68499, 2.37450, 5.23613
|
||||
42, 55.00000, 7.50000, 7.50000
|
||||
43, 55.00000, 5.00000, 5.00000
|
||||
44, 52.68499, 7.37450, 5.23613
|
||||
45, 50.18499, 7.37450, 7.73613
|
||||
46, 50.18499, 7.37450, 2.73613
|
||||
47, 47.50000, 5.00000, 2.50000
|
||||
48, 50.18499, 2.37450, 2.73613
|
||||
49, 52.68499, 4.87450, 2.73613
|
||||
50, 55.00000, 2.50000, 2.50000
|
||||
51, 55.00000, 7.50000, 2.50000
|
||||
52, 65.13577, 4.94114, 4.99547
|
||||
53, 62.56788, 2.47057, 7.49773
|
||||
54, 62.56788, 2.47057, 2.49773
|
||||
55, 60.06788, 2.47057, 4.99773
|
||||
56, 60.06788, 7.47057, 4.99773
|
||||
57, 57.50000, 5.00000, 2.50000
|
||||
58, 57.50000, 5.00000, 7.50000
|
||||
59, 62.56788, 7.47057, 7.49773
|
||||
60, 67.56788, 7.47057, 7.49773
|
||||
61, 67.56788, 2.47057, 7.49773
|
||||
62, 67.56788, 2.47057, 2.49773
|
||||
63, 70.06788, 2.47057, 4.99773
|
||||
64, 70.06788, 7.47057, 4.99773
|
||||
65, 72.50000, 5.00000, 7.50000
|
||||
66, 70.06788, 4.97057, 2.49773
|
||||
67, 67.56788, 7.47057, 2.49773
|
||||
68, 62.56788, 7.47057, 2.49773
|
||||
69, 50.00000, 10.00000, 0.00000
|
||||
70, 50.00000, 10.00000, 10.00000
|
||||
71, 55.00000, 10.00000, 5.00000
|
||||
72, 50.00000, 10.00000, 5.00000
|
||||
73, 52.50000, 10.00000, 7.50000
|
||||
74, 52.50000, 10.00000, 2.50000
|
||||
75, 60.00000, 10.00000, 10.00000
|
||||
76, 55.00000, 10.00000, 10.00000
|
||||
77, 57.50000, 10.00000, 7.50000
|
||||
78, 60.00000, 10.00000, 0.00000
|
||||
79, 55.00000, 10.00000, 0.00000
|
||||
80, 57.50000, 10.00000, 2.50000
|
||||
81, 60.00000, 10.00000, 5.00000
|
||||
82, 100.00000, 10.00000, 0.00000
|
||||
83, 95.00000, 10.00000, 5.00000
|
||||
84, 100.00000, 10.00000, 10.00000
|
||||
85, 97.50000, 10.00000, 2.50000
|
||||
86, 97.50000, 10.00000, 7.50000
|
||||
87, 100.00000, 10.00000, 5.00000
|
||||
88, 90.00000, 10.00000, 10.00000
|
||||
89, 92.50000, 10.00000, 7.50000
|
||||
90, 95.00000, 10.00000, 10.00000
|
||||
91, 90.00000, 10.00000, 0.00000
|
||||
92, 95.00000, 10.00000, 0.00000
|
||||
93, 92.50000, 10.00000, 2.50000
|
||||
94, 90.00000, 10.00000, 5.00000
|
||||
95, 70.00000, 10.00000, 10.00000
|
||||
96, 80.00000, 10.00000, 10.00000
|
||||
97, 75.00000, 10.00000, 5.00000
|
||||
98, 75.00000, 10.00000, 10.00000
|
||||
99, 77.50000, 10.00000, 7.50000
|
||||
100, 72.50000, 10.00000, 7.50000
|
||||
101, 80.00000, 10.00000, 0.00000
|
||||
102, 80.00000, 10.00000, 5.00000
|
||||
103, 77.50000, 10.00000, 2.50000
|
||||
104, 70.00000, 10.00000, 0.00000
|
||||
105, 72.50000, 10.00000, 2.50000
|
||||
106, 70.00000, 10.00000, 5.00000
|
||||
107, 75.00000, 10.00000, 0.00000
|
||||
108, 0.00000, 10.00000, 0.00000
|
||||
109, 0.00000, 10.00000, 10.00000
|
||||
110, 10.00000, 10.00000, 0.00000
|
||||
111, 0.00000, 10.00000, 5.00000
|
||||
112, 5.00000, 10.00000, 5.00000
|
||||
113, 5.00000, 10.00000, 0.00000
|
||||
114, 10.00000, 10.00000, 10.00000
|
||||
115, 10.00000, 10.00000, 5.00000
|
||||
116, 5.00000, 10.00000, 10.00000
|
||||
117, 20.00000, 10.00000, 0.00000
|
||||
118, 20.00000, 10.00000, 10.00000
|
||||
119, 30.00000, 10.00000, 0.00000
|
||||
120, 20.00000, 10.00000, 5.00000
|
||||
121, 25.00000, 10.00000, 5.00000
|
||||
122, 25.00000, 10.00000, 0.00000
|
||||
123, 30.00000, 10.00000, 10.00000
|
||||
124, 30.00000, 10.00000, 5.00000
|
||||
125, 25.00000, 10.00000, 10.00000
|
||||
126, 65.00000, 10.00000, 0.00000
|
||||
127, 65.00000, 10.00000, 5.00000
|
||||
128, 65.00000, 10.00000, 10.00000
|
||||
129, 40.00000, 10.00000, 10.00000
|
||||
130, 40.00000, 10.00000, 0.00000
|
||||
131, 45.00000, 10.00000, 10.00000
|
||||
132, 45.00000, 10.00000, 5.00000
|
||||
133, 40.00000, 10.00000, 5.00000
|
||||
134, 45.00000, 10.00000, 0.00000
|
||||
135, 15.00000, 10.00000, 5.00000
|
||||
136, 15.00000, 10.00000, 0.00000
|
||||
137, 35.00000, 10.00000, 0.00000
|
||||
138, 35.00000, 10.00000, 5.00000
|
||||
139, 85.00000, 10.00000, 5.00000
|
||||
140, 85.00000, 10.00000, 0.00000
|
||||
141, 85.00000, 10.00000, 10.00000
|
||||
142, 35.00000, 10.00000, 10.00000
|
||||
143, 15.00000, 10.00000, 10.00000
|
||||
144, 55.00000, 5.00000, 0.00000
|
||||
145, 50.00000, 0.00000, 0.00000
|
||||
146, 52.50000, 7.50000, 0.00000
|
||||
147, 52.50000, 2.50000, 0.00000
|
||||
148, 50.00000, 5.00000, 0.00000
|
||||
149, 60.00000, 0.00000, 0.00000
|
||||
150, 57.50000, 2.50000, 0.00000
|
||||
151, 55.00000, 0.00000, 0.00000
|
||||
152, 57.50000, 7.50000, 0.00000
|
||||
153, 60.00000, 5.00000, 0.00000
|
||||
154, 10.00000, 0.00000, 0.00000
|
||||
155, 0.00000, 0.00000, 0.00000
|
||||
156, 5.00000, 5.00000, 0.00000
|
||||
157, 5.00000, 0.00000, 0.00000
|
||||
158, 2.50000, 2.50000, 0.00000
|
||||
159, 7.50000, 2.50000, 0.00000
|
||||
160, 7.50000, 7.50000, 0.00000
|
||||
161, 10.00000, 5.00000, 0.00000
|
||||
162, 0.00000, 5.00000, 0.00000
|
||||
163, 2.50000, 7.50000, 0.00000
|
||||
164, 80.00000, 0.00000, 0.00000
|
||||
165, 70.00000, 0.00000, 0.00000
|
||||
166, 75.00000, 5.00000, 0.00000
|
||||
167, 75.00000, 0.00000, 0.00000
|
||||
168, 72.50000, 2.50000, 0.00000
|
||||
169, 77.50000, 2.50000, 0.00000
|
||||
170, 77.50000, 7.50000, 0.00000
|
||||
171, 80.00000, 5.00000, 0.00000
|
||||
172, 70.00000, 5.00000, 0.00000
|
||||
173, 72.50000, 7.50000, 0.00000
|
||||
174, 45.00000, 5.00000, 0.00000
|
||||
175, 40.00000, 0.00000, 0.00000
|
||||
176, 40.00000, 5.00000, 0.00000
|
||||
177, 45.00000, 0.00000, 0.00000
|
||||
178, 90.00000, 0.00000, 0.00000
|
||||
179, 100.00000, 0.00000, 0.00000
|
||||
180, 90.00000, 5.00000, 0.00000
|
||||
181, 95.00000, 5.00000, 0.00000
|
||||
182, 95.00000, 0.00000, 0.00000
|
||||
183, 85.00000, 0.00000, 0.00000
|
||||
184, 85.00000, 5.00000, 0.00000
|
||||
185, 65.00000, 5.00000, 0.00000
|
||||
186, 65.00000, 0.00000, 0.00000
|
||||
187, 30.00000, 0.00000, 0.00000
|
||||
188, 30.00000, 5.00000, 0.00000
|
||||
189, 35.00000, 5.00000, 0.00000
|
||||
190, 35.00000, 0.00000, 0.00000
|
||||
191, 20.00000, 0.00000, 0.00000
|
||||
192, 25.00000, 0.00000, 0.00000
|
||||
193, 25.00000, 5.00000, 0.00000
|
||||
194, 15.00000, 0.00000, 0.00000
|
||||
195, 15.00000, 5.00000, 0.00000
|
||||
196, 20.00000, 5.00000, 0.00000
|
||||
197, 100.00000, 5.00000, 0.00000
|
||||
198, 55.00000, 0.00000, 5.00000
|
||||
199, 45.00000, 0.00000, 5.00000
|
||||
200, 52.50000, 0.00000, 2.50000
|
||||
201, 50.00000, 0.00000, 5.00000
|
||||
202, 47.50000, 0.00000, 2.50000
|
||||
203, 50.00000, 0.00000, 10.00000
|
||||
204, 40.00000, 0.00000, 10.00000
|
||||
205, 47.50000, 0.00000, 7.50000
|
||||
206, 45.00000, 0.00000, 10.00000
|
||||
207, 42.50000, 0.00000, 7.50000
|
||||
208, 42.50000, 0.00000, 2.50000
|
||||
209, 40.00000, 0.00000, 5.00000
|
||||
210, 52.50000, 0.00000, 7.50000
|
||||
211, 60.00000, 0.00000, 10.00000
|
||||
212, 57.50000, 0.00000, 7.50000
|
||||
213, 55.00000, 0.00000, 10.00000
|
||||
214, 57.50000, 0.00000, 2.50000
|
||||
215, 60.00000, 0.00000, 5.00000
|
||||
216, 0.00000, 0.00000, 10.00000
|
||||
217, 5.00000, 0.00000, 5.00000
|
||||
218, 10.00000, 0.00000, 10.00000
|
||||
219, 2.50000, 0.00000, 7.50000
|
||||
220, 7.50000, 0.00000, 7.50000
|
||||
221, 5.00000, 0.00000, 10.00000
|
||||
222, 7.50000, 0.00000, 2.50000
|
||||
223, 10.00000, 0.00000, 5.00000
|
||||
224, 2.50000, 0.00000, 2.50000
|
||||
225, 0.00000, 0.00000, 5.00000
|
||||
226, 75.00000, 0.00000, 5.00000
|
||||
227, 77.50000, 0.00000, 2.50000
|
||||
228, 72.50000, 0.00000, 2.50000
|
||||
229, 70.00000, 0.00000, 10.00000
|
||||
230, 72.50000, 0.00000, 7.50000
|
||||
231, 70.00000, 0.00000, 5.00000
|
||||
232, 80.00000, 0.00000, 10.00000
|
||||
233, 80.00000, 0.00000, 5.00000
|
||||
234, 77.50000, 0.00000, 7.50000
|
||||
235, 75.00000, 0.00000, 10.00000
|
||||
236, 90.00000, 0.00000, 10.00000
|
||||
237, 90.00000, 0.00000, 5.00000
|
||||
238, 85.00000, 0.00000, 5.00000
|
||||
239, 85.00000, 0.00000, 10.00000
|
||||
240, 30.00000, 0.00000, 10.00000
|
||||
241, 30.00000, 0.00000, 5.00000
|
||||
242, 25.00000, 0.00000, 5.00000
|
||||
243, 20.00000, 0.00000, 10.00000
|
||||
244, 20.00000, 0.00000, 5.00000
|
||||
245, 25.00000, 0.00000, 10.00000
|
||||
246, 100.00000, 0.00000, 10.00000
|
||||
247, 95.00000, 0.00000, 5.00000
|
||||
248, 95.00000, 0.00000, 10.00000
|
||||
249, 100.00000, 0.00000, 5.00000
|
||||
250, 65.00000, 0.00000, 5.00000
|
||||
251, 35.00000, 0.00000, 5.00000
|
||||
252, 15.00000, 0.00000, 5.00000
|
||||
253, 15.00000, 0.00000, 10.00000
|
||||
254, 35.00000, 0.00000, 10.00000
|
||||
255, 65.00000, 0.00000, 10.00000
|
||||
256, 100.00000, 5.00000, 5.00000
|
||||
257, 100.00000, 5.00000, 10.00000
|
||||
258, 55.00000, 5.00000, 10.00000
|
||||
259, 45.00000, 5.00000, 10.00000
|
||||
260, 52.50000, 2.50000, 10.00000
|
||||
261, 50.00000, 5.00000, 10.00000
|
||||
262, 47.50000, 2.50000, 10.00000
|
||||
263, 42.50000, 2.50000, 10.00000
|
||||
264, 42.50000, 7.50000, 10.00000
|
||||
265, 47.50000, 7.50000, 10.00000
|
||||
266, 40.00000, 5.00000, 10.00000
|
||||
267, 75.00000, 5.00000, 10.00000
|
||||
268, 77.50000, 7.50000, 10.00000
|
||||
269, 77.50000, 2.50000, 10.00000
|
||||
270, 80.00000, 5.00000, 10.00000
|
||||
271, 72.50000, 2.50000, 10.00000
|
||||
272, 72.50000, 7.50000, 10.00000
|
||||
273, 70.00000, 5.00000, 10.00000
|
||||
274, 52.50000, 7.50000, 10.00000
|
||||
275, 57.50000, 7.50000, 10.00000
|
||||
276, 57.50000, 2.50000, 10.00000
|
||||
277, 60.00000, 5.00000, 10.00000
|
||||
278, 5.00000, 5.00000, 10.00000
|
||||
279, 2.50000, 7.50000, 10.00000
|
||||
280, 7.50000, 7.50000, 10.00000
|
||||
281, 0.00000, 5.00000, 10.00000
|
||||
282, 2.50000, 2.50000, 10.00000
|
||||
283, 7.50000, 2.50000, 10.00000
|
||||
284, 10.00000, 5.00000, 10.00000
|
||||
285, 95.00000, 5.00000, 10.00000
|
||||
286, 97.50000, 2.50000, 10.00000
|
||||
287, 92.50000, 2.50000, 10.00000
|
||||
288, 97.50000, 7.50000, 10.00000
|
||||
289, 92.50000, 7.50000, 10.00000
|
||||
290, 90.00000, 5.00000, 10.00000
|
||||
291, 85.00000, 5.00000, 10.00000
|
||||
292, 65.00000, 5.00000, 10.00000
|
||||
293, 15.00000, 5.00000, 10.00000
|
||||
294, 25.00000, 5.00000, 10.00000
|
||||
295, 20.00000, 5.00000, 10.00000
|
||||
296, 35.00000, 5.00000, 10.00000
|
||||
297, 30.00000, 5.00000, 10.00000
|
||||
298, 0.00000, 5.00000, 5.00000
|
||||
**
|
||||
**ELSET COUNT = 120
|
||||
**HWCOLOR COMP 36 1
|
||||
*ELEMENT, TYPE=C3D10, ELSET=Body1
|
||||
1, 243, 240, 191, 117, 245, 242, 244,
|
||||
1, 2, 196
|
||||
2, 204, 199, 175, 130, 207, 208, 209,
|
||||
3, 4, 176
|
||||
3, 259, 70, 69, 130, 265, 72, 5,
|
||||
6, 132, 134
|
||||
4, 145, 175, 199, 130, 177, 208, 202,
|
||||
174, 176, 4
|
||||
5, 96, 88, 236, 178, 141, 290, 291,
|
||||
7, 8, 237
|
||||
6, 96, 101, 164, 97, 102, 171, 9,
|
||||
99, 103, 10
|
||||
7, 236, 88, 285, 178, 290, 289, 287,
|
||||
237, 8, 11
|
||||
8, 285, 179, 178, 83, 12, 182, 11,
|
||||
13, 14, 15
|
||||
9, 84, 246, 285, 82, 257, 286, 288,
|
||||
87, 256, 16
|
||||
10, 155, 216, 278, 109, 225, 282, 17,
|
||||
298, 281, 279
|
||||
11, 155, 217, 154, 156, 224, 222, 157,
|
||||
158, 18, 159
|
||||
12, 204, 175, 240, 130, 209, 251, 254,
|
||||
3, 176, 19
|
||||
13, 114, 218, 154, 117, 284, 223, 20,
|
||||
135, 21, 195
|
||||
14, 203, 258, 211, 198, 260, 276, 213,
|
||||
210, 22, 212
|
||||
15, 96, 164, 101, 91, 9, 171, 102,
|
||||
139, 184, 140
|
||||
16, 232, 96, 164, 226, 270, 9, 233,
|
||||
234, 23, 227
|
||||
17, 97, 267, 226, 96, 24, 25, 26,
|
||||
99, 268, 23
|
||||
18, 164, 166, 226, 97, 169, 27, 227,
|
||||
10, 28, 26
|
||||
19, 179, 82, 91, 83, 197, 92, 181,
|
||||
14, 85, 93
|
||||
20, 236, 285, 246, 178, 287, 286, 248,
|
||||
237, 11, 247
|
||||
21, 88, 178, 91, 83, 8, 180, 94,
|
||||
89, 15, 93
|
||||
22, 267, 232, 229, 226, 269, 235, 271,
|
||||
25, 234, 230
|
||||
23, 108, 109, 156, 110, 111, 29, 163,
|
||||
113, 112, 160
|
||||
24, 114, 154, 110, 117, 20, 161, 115,
|
||||
135, 195, 136
|
||||
25, 156, 114, 278, 154, 30, 280, 31,
|
||||
159, 20, 32
|
||||
26, 278, 154, 217, 156, 32, 222, 33,
|
||||
31, 159, 18
|
||||
27, 108, 109, 155, 156, 111, 298, 162,
|
||||
163, 29, 158
|
||||
28, 114, 154, 156, 110, 20, 159, 30,
|
||||
115, 161, 160
|
||||
29, 109, 114, 278, 156, 116, 280, 279,
|
||||
29, 30, 31
|
||||
30, 278, 155, 156, 217, 17, 158, 31,
|
||||
33, 224, 18
|
||||
31, 109, 155, 156, 278, 298, 158, 29,
|
||||
279, 17, 31
|
||||
32, 164, 101, 166, 97, 171, 170, 169,
|
||||
10, 103, 28
|
||||
33, 109, 114, 156, 110, 116, 30, 29,
|
||||
112, 115, 160
|
||||
34, 165, 226, 164, 166, 228, 227, 167,
|
||||
168, 27, 169
|
||||
35, 285, 82, 83, 84, 16, 85, 13,
|
||||
288, 87, 86
|
||||
36, 204, 240, 129, 130, 254, 296, 266,
|
||||
3, 19, 133
|
||||
37, 259, 129, 70, 130, 264, 131, 265,
|
||||
6, 133, 132
|
||||
38, 240, 118, 123, 119, 294, 125, 297,
|
||||
34, 121, 124
|
||||
39, 240, 175, 187, 119, 251, 190, 241,
|
||||
34, 189, 188
|
||||
40, 240, 119, 191, 117, 34, 193, 242,
|
||||
2, 122, 196
|
||||
41, 240, 118, 119, 117, 294, 121, 34,
|
||||
2, 120, 122
|
||||
42, 243, 191, 154, 117, 244, 194, 252,
|
||||
1, 196, 195
|
||||
43, 114, 118, 243, 117, 143, 295, 293,
|
||||
135, 120, 1
|
||||
44, 218, 243, 154, 117, 253, 252, 223,
|
||||
21, 1, 195
|
||||
45, 129, 240, 123, 119, 296, 297, 142,
|
||||
138, 34, 124
|
||||
46, 240, 187, 191, 119, 241, 192, 242,
|
||||
34, 188, 193
|
||||
47, 114, 243, 218, 117, 293, 253, 284,
|
||||
135, 1, 21
|
||||
48, 203, 259, 258, 35, 262, 261, 260,
|
||||
36, 37, 38
|
||||
49, 203, 199, 259, 35, 205, 39, 262,
|
||||
36, 40, 37
|
||||
50, 203, 198, 199, 35, 210, 201, 205,
|
||||
36, 41, 40
|
||||
51, 203, 258, 198, 35, 260, 22, 210,
|
||||
36, 38, 41
|
||||
52, 258, 71, 198, 35, 42, 43, 22,
|
||||
38, 44, 41
|
||||
53, 258, 70, 71, 35, 274, 73, 42,
|
||||
38, 45, 44
|
||||
54, 70, 69, 71, 35, 72, 74, 73,
|
||||
45, 46, 44
|
||||
55, 259, 69, 70, 35, 5, 72, 265,
|
||||
37, 46, 45
|
||||
56, 258, 259, 70, 35, 261, 265, 274,
|
||||
38, 37, 45
|
||||
57, 259, 69, 199, 130, 5, 47, 39,
|
||||
6, 134, 4
|
||||
58, 35, 259, 69, 199, 37, 5, 46,
|
||||
40, 39, 47
|
||||
59, 179, 82, 83, 285, 197, 85, 14,
|
||||
12, 16, 13
|
||||
60, 145, 69, 199, 35, 148, 47, 202,
|
||||
48, 46, 40
|
||||
61, 145, 144, 69, 35, 147, 146, 148,
|
||||
48, 49, 46
|
||||
62, 145, 198, 144, 35, 200, 50, 147,
|
||||
48, 41, 49
|
||||
63, 145, 199, 198, 35, 202, 201, 200,
|
||||
48, 40, 41
|
||||
64, 198, 71, 144, 35, 43, 51, 50,
|
||||
41, 44, 49
|
||||
65, 69, 144, 71, 35, 146, 51, 74,
|
||||
46, 49, 44
|
||||
66, 211, 149, 198, 52, 215, 214, 212,
|
||||
53, 54, 55
|
||||
67, 198, 71, 52, 149, 43, 56, 55,
|
||||
214, 57, 54
|
||||
68, 71, 144, 149, 198, 51, 150, 57,
|
||||
43, 50, 214
|
||||
69, 198, 258, 75, 71, 22, 275, 58,
|
||||
43, 42, 77
|
||||
70, 211, 258, 75, 198, 276, 275, 277,
|
||||
212, 22, 58
|
||||
71, 75, 198, 52, 211, 58, 55, 59,
|
||||
277, 212, 53
|
||||
72, 95, 211, 75, 52, 292, 277, 128,
|
||||
60, 53, 59
|
||||
73, 229, 211, 95, 52, 255, 292, 273,
|
||||
61, 53, 60
|
||||
74, 229, 165, 211, 52, 231, 250, 255,
|
||||
61, 62, 53
|
||||
75, 229, 226, 165, 52, 230, 228, 231,
|
||||
61, 63, 62
|
||||
76, 226, 97, 52, 229, 26, 64, 63,
|
||||
230, 65, 61
|
||||
77, 97, 267, 229, 226, 24, 271, 65,
|
||||
26, 25, 230
|
||||
78, 226, 97, 166, 52, 26, 28, 27,
|
||||
63, 64, 66
|
||||
79, 165, 226, 166, 52, 228, 27, 168,
|
||||
62, 63, 66
|
||||
80, 165, 166, 104, 52, 168, 173, 172,
|
||||
62, 66, 67
|
||||
81, 165, 104, 78, 52, 172, 126, 185,
|
||||
62, 67, 68
|
||||
82, 149, 165, 78, 52, 186, 185, 153,
|
||||
54, 62, 68
|
||||
83, 211, 165, 149, 52, 250, 186, 215,
|
||||
53, 62, 54
|
||||
84, 149, 71, 52, 78, 57, 56, 54,
|
||||
153, 80, 68
|
||||
85, 78, 144, 149, 71, 152, 150, 153,
|
||||
80, 51, 57
|
||||
86, 75, 71, 78, 52, 77, 80, 81,
|
||||
59, 56, 68
|
||||
87, 71, 198, 52, 75, 43, 55, 56,
|
||||
77, 58, 59
|
||||
88, 95, 75, 78, 52, 128, 81, 127,
|
||||
60, 59, 68
|
||||
89, 95, 78, 104, 52, 127, 126, 106,
|
||||
60, 68, 67
|
||||
90, 95, 104, 97, 52, 106, 105, 100,
|
||||
60, 67, 64
|
||||
91, 166, 97, 104, 52, 28, 105, 173,
|
||||
66, 64, 67
|
||||
92, 95, 267, 229, 97, 272, 271, 273,
|
||||
100, 24, 65
|
||||
93, 229, 97, 52, 95, 65, 64, 61,
|
||||
273, 100, 60
|
||||
94, 259, 204, 129, 130, 263, 266, 264,
|
||||
6, 3, 133
|
||||
95, 240, 130, 175, 119, 19, 176, 251,
|
||||
34, 137, 189
|
||||
96, 129, 130, 240, 119, 133, 19, 296,
|
||||
138, 137, 34
|
||||
97, 285, 178, 88, 83, 11, 8, 289,
|
||||
13, 15, 89
|
||||
98, 218, 154, 217, 278, 223, 222, 220,
|
||||
283, 32, 33
|
||||
99, 226, 96, 164, 97, 23, 9, 227,
|
||||
26, 99, 10
|
||||
100, 96, 88, 178, 91, 141, 8, 7,
|
||||
139, 94, 180
|
||||
101, 145, 199, 69, 130, 202, 47, 148,
|
||||
174, 4, 134
|
||||
102, 96, 236, 164, 178, 291, 238, 9,
|
||||
7, 237, 183
|
||||
103, 96, 178, 164, 91, 7, 183, 9,
|
||||
139, 180, 184
|
||||
104, 246, 285, 179, 178, 286, 12, 249,
|
||||
247, 11, 182
|
||||
105, 166, 101, 104, 97, 170, 107, 173,
|
||||
28, 103, 105
|
||||
106, 285, 88, 84, 83, 289, 90, 288,
|
||||
13, 89, 86
|
||||
107, 145, 198, 149, 144, 200, 214, 151,
|
||||
147, 50, 150
|
||||
108, 82, 246, 285, 179, 256, 286, 16,
|
||||
197, 249, 12
|
||||
109, 258, 70, 75, 71, 274, 76, 275,
|
||||
42, 73, 77
|
||||
110, 96, 267, 226, 232, 268, 25, 23,
|
||||
270, 269, 234
|
||||
111, 243, 118, 240, 117, 295, 294, 245,
|
||||
1, 120, 2
|
||||
112, 96, 236, 232, 164, 291, 239, 270,
|
||||
9, 238, 233
|
||||
113, 216, 278, 218, 217, 282, 283, 221,
|
||||
219, 33, 220
|
||||
114, 217, 216, 278, 155, 219, 282, 33,
|
||||
224, 225, 17
|
||||
115, 69, 144, 78, 71, 146, 152, 79,
|
||||
74, 51, 80
|
||||
116, 154, 114, 278, 218, 20, 280, 32,
|
||||
223, 284, 283
|
||||
117, 179, 91, 178, 83, 181, 180, 182,
|
||||
14, 93, 15
|
||||
118, 203, 204, 259, 199, 206, 263, 262,
|
||||
205, 207, 39
|
||||
119, 96, 267, 95, 97, 268, 272, 98,
|
||||
99, 24, 100
|
||||
120, 259, 199, 204, 130, 39, 207, 263,
|
||||
6, 4, 3
|
||||
**
|
||||
**NSET COUNT = 9
|
||||
*NSET, NSET=SUPPORT
|
||||
108, 109, 111, 155, 162, 216, 225, 281,
|
||||
298,
|
||||
**NSET COUNT = 9
|
||||
*NSET, NSET=LOAD
|
||||
82, 84, 87, 179, 197, 246, 249, 256,
|
||||
257,
|
||||
**NSET COUNT = 83
|
||||
*NSET, NSET=TOP
|
||||
70, 75, 76, 84, 88, 90, 95, 96,
|
||||
98, 109, 114, 116, 118, 123, 125, 128,
|
||||
129, 131, 141, 142, 143, 203, 204, 206,
|
||||
211, 213, 216, 218, 221, 229, 232, 235,
|
||||
236, 239, 240, 243, 245, 246, 248, 253,
|
||||
254, 255, 257, 258, 259, 260, 261, 262,
|
||||
263, 264, 265, 266, 267, 268, 269, 270,
|
||||
271, 272, 273, 274, 275, 276, 277, 278,
|
||||
279, 280, 281, 282, 283, 284, 285, 286,
|
||||
287, 288, 289, 290, 291, 292, 293, 294,
|
||||
295, 296, 297,
|
||||
+2
-3
@@ -1,13 +1,12 @@
|
||||
# This file is a part of JuliaFEM.
|
||||
# This file is a part of JuliaFEM.
|
||||
# License is MIT: see https://github.com/JuliaFEM/JuliaFEM.jl/blob/master/LICENSE.md
|
||||
module JuliaFEM
|
||||
|
||||
VERSION < v"0.4-" && using Docile
|
||||
|
||||
# import solvers
|
||||
include("elasticity_solver.jl")
|
||||
include("xdmf.jl")
|
||||
#using elasticity_solver
|
||||
include("abaqus_reader.jl")
|
||||
|
||||
export Model, new_model, new_field, get_field, add_nodes, get_nodes, add_elements, get_elements
|
||||
|
||||
|
||||
@@ -0,0 +1,132 @@
|
||||
# This file is a part of JuliaFEM. License is MIT: https://github.com/ovainola/JuliaFEM/blob/master/README.md
|
||||
module abaqus_reader
|
||||
|
||||
using Logging
|
||||
@Logging.configure(level=DEBUG)
|
||||
|
||||
VERSION < v"0.4-" && using Docile
|
||||
|
||||
eldims = Dict("C3D10" => 10)
|
||||
global handlers = Dict()
|
||||
|
||||
"""
|
||||
Register new handler for parser
|
||||
"""
|
||||
function add_handler(section, function_name)
|
||||
handlers[section] = function_name
|
||||
end
|
||||
|
||||
function create_or_get(model, key)
|
||||
if !(key in keys(model))
|
||||
model[key] = Dict()
|
||||
end
|
||||
return model[key]
|
||||
end
|
||||
|
||||
function parse_header(header_line)
|
||||
args = map(s -> strip(s), split(header_line, ","))
|
||||
args[1] = strip(args[1], '*')
|
||||
d = Dict({"section" => args[1]})
|
||||
options = Dict()
|
||||
for k in args[2:end]
|
||||
args2 = split(k, "=")
|
||||
options[args2[1]] = args2[2]
|
||||
end
|
||||
d["options"] = options
|
||||
return d
|
||||
end
|
||||
|
||||
function parse_node_section(model, header, data)
|
||||
nodes = create_or_get(model, "nodes")
|
||||
for line in split(data, "\n")
|
||||
m = matchall(r"[-0-9.]+", line)
|
||||
id = parse(Int, m[1])
|
||||
coords = float(m[2:end])
|
||||
nodes[id] = coords
|
||||
end
|
||||
end
|
||||
|
||||
function parse_element_section(model, header, data)
|
||||
eltype = header["options"]["TYPE"]
|
||||
if !(eltype in keys(eldims))
|
||||
throw("Element $eltype dimension information missing")
|
||||
end
|
||||
eldim = eldims[eltype]
|
||||
m = matchall(r"[0-9]+", data)
|
||||
m = map(integer, m)
|
||||
elements = create_or_get(model, "elements")
|
||||
m = reshape(m, eldim+1, round(Int, length(m)/(eldim+1)))
|
||||
nel = size(m)[2]
|
||||
Logging.debug("$nel elements found")
|
||||
for i=1:nel
|
||||
elements[m[1,i]] = m[2:end,i]
|
||||
end
|
||||
if "ELSET" in keys(header["options"])
|
||||
elsets = create_or_get(model, "elsets")
|
||||
elset_name = header["options"]["ELSET"]
|
||||
Logging.info("Creating ELSET $elset_name")
|
||||
elsets[elset_name] = Int64[]
|
||||
for i=1:nel
|
||||
push!(elsets[elset_name], m[1,i])
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
function parse_nodeset_section(model, header, data)
|
||||
nset_name = header["options"]["NSET"]
|
||||
Logging.debug("Creating node set $nset_name")
|
||||
m = matchall(r"[0-9]+", data)
|
||||
node_ids = map(integer, m)
|
||||
nsets = create_or_get(model, "nsets")
|
||||
nsets[nset_name] = Int64[]
|
||||
for j in node_ids
|
||||
push!(nsets[nset_name], j)
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
function parse_abaqus(fid)
|
||||
model = Dict()
|
||||
section = None
|
||||
header = None
|
||||
data = ""
|
||||
Logging.info("Registered handlers: $(keys(handlers))")
|
||||
|
||||
function process_section(section)
|
||||
if section == None
|
||||
return
|
||||
end
|
||||
if !(section in keys(handlers))
|
||||
Logging.info("Don't know what to do with data in section $section")
|
||||
Logging.info("Skipping $(length(data)) bytes of unknown data")
|
||||
return
|
||||
end
|
||||
handlers[section](model, header, strip(data))
|
||||
data = ""
|
||||
end
|
||||
|
||||
for line in eachline(fid)
|
||||
if beginswith(line, "**")
|
||||
continue
|
||||
end
|
||||
if beginswith(line, "*")
|
||||
process_section(section)
|
||||
header = parse_header(line)
|
||||
Logging.debug("Found ", header["section"], " section")
|
||||
section = header["section"]
|
||||
continue
|
||||
end
|
||||
data *= line
|
||||
end
|
||||
process_section(section)
|
||||
return model
|
||||
end
|
||||
|
||||
# add handlers
|
||||
add_handler("NODE", parse_node_section)
|
||||
add_handler("ELEMENT", parse_element_section)
|
||||
add_handler("NSET", parse_nodeset_section)
|
||||
|
||||
|
||||
end
|
||||
+4
-1
@@ -102,5 +102,8 @@ function xdmf_new_field(grid, name, source, data)
|
||||
add_text(dataitem, join(data, " "))
|
||||
end
|
||||
|
||||
function xdmf_save_model(xdoc, filename)
|
||||
save_file(xdoc, filename)
|
||||
end
|
||||
|
||||
end
|
||||
end
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
using FactCheck
|
||||
using Logging
|
||||
@Logging.configure(level=INFO)
|
||||
|
||||
using JuliaFEM.abaqus_reader: parse_abaqus
|
||||
|
||||
facts("test import abaqus model") do
|
||||
fid = open("../geometry/3d_beam/palkki.inp")
|
||||
model = parse_abaqus(fid)
|
||||
close(fid)
|
||||
@fact length(model["nodes"]) => 298
|
||||
@fact length(model["elements"]) => 120
|
||||
@fact length(model["elsets"]["Body1"]) => 120
|
||||
@fact length(model["nsets"]["SUPPORT"]) => 9
|
||||
@fact length(model["nsets"]["LOAD"]) => 9
|
||||
@fact length(model["nsets"]["TOP"]) => 83
|
||||
end
|
||||
Reference in New Issue
Block a user