Hermes2D  2.0
linear_data.cpp
1 static int num_vert_quad[2] = { 29, 77 };
2 
3 static double3 vert_quad0[] =
4 {
5  { 0.0, 0.0, 0.0 },
6  { -1.0, -1.0, 0.0 },
7  { 1.0, -1.0, 0.0 },
8  { 0.85, -0.85, 0.0 },
9  { -0.85, -0.85, 0.0 },
10  { 1.0, -1.0, 1.0 },
11  { 1.0, 1.0, 1.0 },
12  { 0.85, 0.85, 1.0 },
13  { 0.85, -0.85, 1.0 },
14  { 1.0, 1.0, 2.0 },
15  { -1.0, 1.0, 2.0 },
16  { -0.85, 0.85, 2.0 },
17  { 0.85, 0.85, 2.0 },
18  { -1.0, 1.0, 3.0 },
19  { -1.0, -1.0, 3.0 },
20  { -0.85, -0.85, 3.0 },
21  { -0.85, 0.85, 3.0 },
22  { -0.85, -0.85, 4.0 },
23  { 0.85, -0.85, 4.0 },
24  { 0.0, 0.0, 4.0 },
25  { 0.85, -0.85, 5.0 },
26  { 0.85, 0.85, 5.0 },
27  { 0.0, 0.0, 5.0 },
28  { 0.85, 0.85, 4.0 },
29  { -0.85, 0.85, 4.0 },
30  { 0.0, 0.0, 4.0 },
31  { -0.85, 0.85, 5.0 },
32  { -0.85, -0.85, 5.0 },
33  { 0.0, 0.0, 5.0 },
34 };
35 
36 static double3 vert_quad1[] =
37 {
38  { 0.0, 0.0, 0.0 },
39 
40  { -1.0, -1.0, 0.0},
41  { -0.5, -1.0, 0.0},
42  { 0.0, -1.0, 0.0},
43  { 0.5, -1.0, 0.0},
44  { 1.0, -1.0, 0.0},
45 
46  { -0.85, -0.85, 0.0},
47  { -0.25, -0.85, 0.0},
48  { 0.25, -0.85, 0.0},
49  { 0.85, -0.85, 0.0},
50 
51  { -0.85, -0.85, 4.0},
52  { -0.25, -0.85, 4.0},
53  { 0.25, -0.85, 4.0},
54  { 0.85, -0.85, 4.0},
55 
56  { -0.5, -0.5, 4.0},
57  { 0.0, -0.5, 4.0},
58  { 0.5, -0.5, 4.0},
59  { -0.25, -0.25, 4.0},
60  { 0.25, -0.25, 4.0},
61  { 0.0, 0.0, 4.0},
62 
63  { 1, -1, 1.0},
64  { 1, -0.5, 1.0},
65  { 1, 0, 1.0},
66  { 1, 0.5, 1.0},
67  { 1, 1, 1.0},
68  { 0.85, -0.85, 1.0},
69  { 0.85, -0.25, 1.0},
70  { 0.85, 0.25, 1.0},
71  { 0.85, 0.85, 1.0},
72 
73  { 0.85, -0.85, 5.0},
74  { 0.85, -0.25, 5.0},
75  { 0.85, 0.25, 5.0},
76  { 0.85, 0.85, 5.0},
77 
78  { 0.5, -0.5, 5.0},
79  { 0.5, 0, 5.0},
80  { 0.5, 0.5, 5.0},
81  { 0.25, -0.25, 5.0},
82  { 0.25, 0.25, 5.0},
83  { 0, 0, 5.0},
84 
85  { 1, 1, 2},
86  { 0.5, 1, 2},
87  { 0, 1, 2},
88  { -0.5, 1, 2},
89  { -1, 1, 2},
90  { 0.85, 0.85, 2},
91  { 0.25, 0.85, 2},
92  { -0.25, 0.85, 2},
93  { -0.85, 0.85, 2},
94 
95  { 0.85, 0.85, 4},
96  { 0.25, 0.85, 4},
97  { -0.25, 0.85, 4},
98  { -0.85, 0.85, 4},
99 
100  { 0.5, 0.5, 4},
101  { 0, 0.5, 4},
102  { -0.5, 0.5, 4},
103  { 0.25, 0.25, 4},
104  { -0.25, 0.25, 4},
105  { 0, 0, 4}
106  ,
107  { -1, 1, 3},
108  { -1, 0.5, 3},
109  { -1, 0, 3},
110  { -1, -0.5, 3},
111  { -1, -1, 3},
112  { -0.85, 0.85, 3},
113  { -0.85, 0.25, 3},
114  { -0.85, -0.25, 3},
115  { -0.85, -0.85, 3},
116 
117  { -0.85, 0.85, 5},
118  { -0.85, 0.25, 5},
119  { -0.85, -0.25, 5},
120  { -0.85, -0.85, 5},
121 
122  { -0.5, 0.5, 5},
123  { -0.5, 0, 5},
124  { -0.5, -0.5, 5},
125  { -0.25, 0.25, 5},
126  { -0.25, -0.25, 5},
127  { 0, 0, 5},
128 
129 
130 };
131 
132 
133 static int num_elem_quad[2] = { 12 , 64};
134 
135 static int3 elem_quad0[] =
136 {
137  {0,1,2},
138  {0,2,3},
139  {4,5,6},
140  {4,6,7},
141  {8,9,10},
142  {8,10,11},
143  {12,13,14},
144  {12,14,15},
145  {16,17,18},
146  {19,20,21},
147  {22,23,24},
148  {25,26,27}
149 };
150 
151 
152 static int3 elem_quad1[] =
153 {
154 
155  { 0, 1, 5},
156  { 1, 2, 6},
157  { 2, 3, 7},
158  { 3, 4, 8},
159  { 1, 6, 5},
160  { 2, 7, 6},
161  { 3, 8, 7},
162  { 9, 10, 13},
163  { 10, 11, 14},
164  { 11, 12, 15},
165  { 13, 14, 16},
166  { 10, 14, 13},
167  { 14, 15, 17},
168  { 11, 15, 14},
169  { 16, 17, 18},
170  { 14, 17, 16},
171 
172  { 19, 20, 24},
173  { 20, 21, 25},
174  { 21, 22, 26},
175  { 22, 23, 27},
176  { 20, 25, 24},
177  { 21, 26, 25},
178  { 22, 27, 26},
179  { 28, 29, 32},
180  { 29, 30, 33},
181  { 30, 31, 34},
182  { 32, 33, 35},
183  { 29, 33, 32},
184  { 33, 34, 36},
185  { 30, 34, 33},
186  { 35, 36, 37},
187  { 33, 36, 35},
188 
189  { 38, 39, 43},
190  { 39, 40, 44},
191  { 40, 41, 45},
192  { 41, 42, 46},
193  { 39, 44, 43},
194  { 40, 45, 44},
195  { 41, 46, 45},
196  { 47, 48, 51},
197  { 48, 49, 52},
198  { 49, 50, 53},
199  { 51, 52, 54},
200  { 48, 52, 51},
201  { 52, 53, 55},
202  { 49, 53, 52},
203  { 54, 55, 56},
204  { 52, 55, 54},
205 
206  { 57, 58, 62},
207  { 58, 59, 63},
208  { 59, 60, 64},
209  { 60, 61, 65},
210  { 58, 63, 62},
211  { 59, 64, 63},
212  { 60, 65, 64},
213  { 66, 67, 70},
214  { 67, 68, 71},
215  { 68, 69, 72},
216  { 70, 71, 73},
217  { 67, 71, 70},
218  { 71, 72, 74},
219  { 68, 72, 71},
220  { 73, 74, 75},
221  { 71, 74, 73}
222 
223 };
224 
225 static int num_edge_quad[2] = {4, 16};
226 
227 static int3 edge_quad0[] =
228 {
229  { 0, 1, 0},
230  { 4, 5, 1},
231  { 8, 9, 2},
232  {12, 13, 3}
233 };
234 
235 static int3 edge_quad1[] =
236 {
237  { 0, 1, 0 },
238  { 1, 2, 0 },
239  { 2, 3, 0 },
240  { 3, 4, 0 },
241  { 19, 20, 1 },
242  { 20, 21, 1 },
243  { 21, 22, 1 },
244  { 22, 23, 1 },
245  { 38, 39, 2 },
246  { 39, 40, 2 },
247  { 40, 41, 2 },
248  { 41, 42, 2 },
249  { 57, 58, 3 },
250  { 58, 59, 3 },
251  { 59, 60, 3 },
252  { 60, 61, 3 }
253 };
254 
255 // triangles
256 static int num_vert_tri[2] = { 16, 38 };
257 
258 static double3 vert_tri0[] =
259 {
260  { -1.0/3.0, -1.0/3.0, 0.0 },
261 
262  { -1.0, -1.0, 0.0 },
263  { 1.0, -1.0, 0.0 },
264  { 0.64, -0.85, 0.0 },
265  { -0.85, -0.85, 0.0 },
266 
267  { 1.0, -1.0, 1.0 },
268  { -1.0, 1.0, 1.0 },
269  { -0.85, 0.64, 1.0 },
270  { 0.64, -0.85, 1.0 },
271 
272  { -1.0, 1.0, 2.0 },
273  { -1.0, -1.0, 2.0 },
274  { -0.85, -0.85, 2.0 },
275  { -0.85, 0.64, 2.0 },
276 
277  { -0.85, 0.64, 4.0 },
278  { -0.85, -0.85, 4.0 },
279  { 0.64, -0.85, 4.0 },
280 };
281 
282 static double3 vert_tri1[] =
283 {
284  { -1.0/3.0, -1.0/3.0, 0.0 },
285 
286  { -1.0, -1.0, 0.0 },
287  { -0.5, -1.0, 0.0 },
288  { 0.0, -1.0, 0.0 },
289  { 0.5, -1.0, 0.0 },
290  { 1.0, -1.0, 0.0 },
291  { 0.64, -0.85, 0.0 },
292  { 0.15, -0.85, 0.0 },
293  { -0.35, -0.85, 0.0 },
294  { -0.85, -0.85, 0.0 },
295 
296  { 1.0, -1.0, 1.0 },
297  { 0.5, -0.5, 1.0 },
298  { 0.0, 0.0, 1.0 },
299  { -0.5, 0.5, 1.0 },
300  { -1.0, 1.0, 1.0 },
301  { -0.85, 0.64, 1.0 },
302  { -0.35, 0.15, 1.0 },
303  { 0.15, -0.35, 1.0 },
304  { 0.64, -0.85, 1.0 },
305 
306  { -1.0, 1.0, 2.0 },
307  { -1.0, 0.5, 2.0 },
308  { -1.0, 0.0, 2.0 },
309  { -1.0, -0.5, 2.0 },
310  { -1.0, -1.0, 2.0 },
311  { -0.85, -0.85, 2.0 },
312  { -0.85, -0.35, 2.0 },
313  { -0.85, 0.15, 2.0 },
314  { -0.85, 0.64, 2.0 },
315 
316  { -0.85, 0.64, 4.0 },
317  { -0.85, 0.15, 4.0 },
318  { -0.85, -0.35, 4.0 },
319  { -0.85, -0.85, 4.0 },
320  { -0.35, -0.85, 4.0 },
321  { 0.15, -0.85, 4.0 },
322  { 0.64, -0.85, 4.0 },
323  { 0.15, -0.35, 4.0 },
324  { -0.35, 0.15, 4.0 },
325  { -0.35, -0.35, 4.0 },
326 };
327 
328 
329 static int num_elem_tri[2] = { 7 , 30};
330 
331 static int3 elem_tri0[] =
332 {
333  {0,1,2},
334  {0,2,3},
335  {4,5,6},
336  {4,6,7},
337  {8,9,10},
338  {8,10,11},
339  {12,13,14},
340 };
341 
342 
343 static int3 elem_tri1[] =
344 {
345  {0,1,8},
346  {1,7,8},
347  {1,2,7},
348  {2,6,7},
349  {2,3,6},
350  {3,5,6},
351  {3,4,5},
352 
353  {9,10,17},
354  {10,16,17},
355  {10,11,16},
356  {11,15,16},
357  {11,12,15},
358  {12,14,15},
359  {12,13,14},
360 
361  {18,19,26},
362  {19,25,26},
363  {19,20,25},
364  {20,24,25},
365  {20,21,24},
366  {21,23,24},
367  {21,22,23},
368 
369  {27,28,36},
370  {28,29,31},
371  {29,30,31},
372  {28,31,36},
373  {27,36,35},
374  {36,31,32},
375  {35,36,32},
376  {35,32,34},
377  {34,32,33},
378 };
379 
380 static int num_edge_tri[2] = {3, 12};
381 
382 static int3 edge_tri0[] =
383 {
384  { 0, 1, 0 },
385  { 4, 5, 1 },
386  { 8, 9, 2 },
387 };
388 
389 static int3 edge_tri1[] =
390 {
391  { 0, 1, 0 },
392  { 1, 2, 0 },
393  { 2, 3, 0 },
394  { 3, 4, 0 },
395 
396  { 9, 10, 1 },
397  { 10, 11, 1 },
398  { 11, 12, 1 },
399  { 12, 13, 1 },
400 
401  { 18, 19, 2 },
402  { 19, 20, 2 },
403  { 20, 21, 2 },
404  { 21, 22, 2 },
405 };