initial commit for version 1.6.x patch release
[OpenFOAM-1.6.x.git] / tutorials / multiphase / interFoam / MRFInterFoam / mixerVessel2D / constant / polyMesh / blockMeshDict.m4
blob5175a4176531b0622e2fdc2862edce8f7fbf7115
1 /*--------------------------------*- C++ -*----------------------------------*\
2 | =========                 |                                                 |
3 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
4 |  \\    /   O peration     | Version:  1.6                                   |
5 |   \\  /    A nd           | Web:      http://www.OpenFOAM.org               |
6 |    \\/     M anipulation  |                                                 |
7 \*---------------------------------------------------------------------------*/
8 FoamFile
10     version     2.0;
11     `format'      ascii;
12     class       dictionary;
13     object      blockMeshDict;
15 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
16 // General macros to create 2D/extruded-2D meshes
18 changecom(//)changequote([,])
19 define(calc, [esyscmd(perl -e 'print ($1)')])
20 define(VCOUNT, 0)
21 define(vlabel, [[// ]Vertex $1 = VCOUNT define($1, VCOUNT)define([VCOUNT], incr(VCOUNT))])
22 define(pi, 3.14159265)
24 define(hex2D, hex ($1b $2b $3b $4b $1t $2t $3t $4t))
25 define(quad2D, ($1b $2b $2t $1t))
26 define(frontQuad, ($1t $2t $3t $4t))
27 define(backQuad, ($1b $4b $3b $2b))
29 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
31 convertToMeters 0.1;
33 // Hub radius
34 define(r, 0.2)
36 // Impeller-tip radius
37 define(rb, 0.5)
39 // Baffle-tip radius
40 define(Rb, 0.7)
42 // Tank radius
43 define(R, 1)
45 // MRF region radius
46 define(ri, calc(0.5*(rb + Rb)))
48 // Thickness of 2D slab
49 define(z, 0.1)
51 // Base z
52 define(Zb, 0)
54 // Top z
55 define(Zt, calc(Zb + z))
57 // Number of cells radially between hub and impeller tip
58 define(Nr, 12)
60 // Number of cells radially in each of the two regions between
61 // impeller and baffle tips
62 define(Ni, 4)
64 // Number of cells radially between baffle tip and tank
65 define(NR, 12)
67 // Number of cells azimuthally in each of the 8 blocks
68 define(Na, 12)
70 // Number of cells in the thickness of the slab
71 define(Nz, 1)
73 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
75 define(vert, (x$1$2 y$1$2 $3))
76 define(evert, (ex$1$2 ey$1$2 $3))
78 define(a0, 0)
79 define(a1, -45)
80 define(a2, -90)
81 define(a3, -135)
82 define(a4, 180)
83 define(a5, 135)
84 define(a6, 90)
85 define(a7, 45)
87 define(ea0, -22.5)
88 define(ea1, -67.5)
89 define(ea2, -112.5)
90 define(ea3, -157.5)
91 define(ea4, 157.5)
92 define(ea5, 112.5)
93 define(ea6, 67.5)
94 define(ea7, 22.5)
96 define(ca0, calc(cos((pi/180)*a0)))
97 define(ca1, calc(cos((pi/180)*a1)))
98 define(ca2, calc(cos((pi/180)*a2)))
99 define(ca3, calc(cos((pi/180)*a3)))
100 define(ca4, calc(cos((pi/180)*a4)))
101 define(ca5, calc(cos((pi/180)*a5)))
102 define(ca6, calc(cos((pi/180)*a6)))
103 define(ca7, calc(cos((pi/180)*a7)))
105 define(sa0, calc(sin((pi/180)*a0)))
106 define(sa1, calc(sin((pi/180)*a1)))
107 define(sa2, calc(sin((pi/180)*a2)))
108 define(sa3, calc(sin((pi/180)*a3)))
109 define(sa4, calc(sin((pi/180)*a4)))
110 define(sa5, calc(sin((pi/180)*a5)))
111 define(sa6, calc(sin((pi/180)*a6)))
112 define(sa7, calc(sin((pi/180)*a7)))
114 define(cea0, calc(cos((pi/180)*ea0)))
115 define(cea1, calc(cos((pi/180)*ea1)))
116 define(cea2, calc(cos((pi/180)*ea2)))
117 define(cea3, calc(cos((pi/180)*ea3)))
118 define(cea4, calc(cos((pi/180)*ea4)))
119 define(cea5, calc(cos((pi/180)*ea5)))
120 define(cea6, calc(cos((pi/180)*ea6)))
121 define(cea7, calc(cos((pi/180)*ea7)))
123 define(sea0, calc(sin((pi/180)*ea0)))
124 define(sea1, calc(sin((pi/180)*ea1)))
125 define(sea2, calc(sin((pi/180)*ea2)))
126 define(sea3, calc(sin((pi/180)*ea3)))
127 define(sea4, calc(sin((pi/180)*ea4)))
128 define(sea5, calc(sin((pi/180)*ea5)))
129 define(sea6, calc(sin((pi/180)*ea6)))
130 define(sea7, calc(sin((pi/180)*ea7)))
132 define(x00, calc(r*ca0))
133 define(x01, calc(r*ca1))
134 define(x02, calc(r*ca2))
135 define(x03, calc(r*ca3))
136 define(x04, calc(r*ca4))
137 define(x05, calc(r*ca5))
138 define(x06, calc(r*ca6))
139 define(x07, calc(r*ca7))
141 define(x10, calc(rb*ca0))
142 define(x11, calc(rb*ca1))
143 define(x12, calc(rb*ca2))
144 define(x13, calc(rb*ca3))
145 define(x14, calc(rb*ca4))
146 define(x15, calc(rb*ca5))
147 define(x16, calc(rb*ca6))
148 define(x17, calc(rb*ca7))
150 define(x20, calc(ri*ca0))
151 define(x21, calc(ri*ca1))
152 define(x22, calc(ri*ca2))
153 define(x23, calc(ri*ca3))
154 define(x24, calc(ri*ca4))
155 define(x25, calc(ri*ca5))
156 define(x26, calc(ri*ca6))
157 define(x27, calc(ri*ca7))
159 define(x30, calc(Rb*ca0))
160 define(x31, calc(Rb*ca1))
161 define(x32, calc(Rb*ca2))
162 define(x33, calc(Rb*ca3))
163 define(x34, calc(Rb*ca4))
164 define(x35, calc(Rb*ca5))
165 define(x36, calc(Rb*ca6))
166 define(x37, calc(Rb*ca7))
168 define(x40, calc(R*ca0))
169 define(x41, calc(R*ca1))
170 define(x42, calc(R*ca2))
171 define(x43, calc(R*ca3))
172 define(x44, calc(R*ca4))
173 define(x45, calc(R*ca5))
174 define(x46, calc(R*ca6))
175 define(x47, calc(R*ca7))
177 define(y00, calc(r*sa0))
178 define(y01, calc(r*sa1))
179 define(y02, calc(r*sa2))
180 define(y03, calc(r*sa3))
181 define(y04, calc(r*sa4))
182 define(y05, calc(r*sa5))
183 define(y06, calc(r*sa6))
184 define(y07, calc(r*sa7))
186 define(y10, calc(rb*sa0))
187 define(y11, calc(rb*sa1))
188 define(y12, calc(rb*sa2))
189 define(y13, calc(rb*sa3))
190 define(y14, calc(rb*sa4))
191 define(y15, calc(rb*sa5))
192 define(y16, calc(rb*sa6))
193 define(y17, calc(rb*sa7))
195 define(y20, calc(ri*sa0))
196 define(y21, calc(ri*sa1))
197 define(y22, calc(ri*sa2))
198 define(y23, calc(ri*sa3))
199 define(y24, calc(ri*sa4))
200 define(y25, calc(ri*sa5))
201 define(y26, calc(ri*sa6))
202 define(y27, calc(ri*sa7))
204 define(y30, calc(Rb*sa0))
205 define(y31, calc(Rb*sa1))
206 define(y32, calc(Rb*sa2))
207 define(y33, calc(Rb*sa3))
208 define(y34, calc(Rb*sa4))
209 define(y35, calc(Rb*sa5))
210 define(y36, calc(Rb*sa6))
211 define(y37, calc(Rb*sa7))
213 define(y40, calc(R*sa0))
214 define(y41, calc(R*sa1))
215 define(y42, calc(R*sa2))
216 define(y43, calc(R*sa3))
217 define(y44, calc(R*sa4))
218 define(y45, calc(R*sa5))
219 define(y46, calc(R*sa6))
220 define(y47, calc(R*sa7))
222 define(ex00, calc(r*cea0))
223 define(ex01, calc(r*cea1))
224 define(ex02, calc(r*cea2))
225 define(ex03, calc(r*cea3))
226 define(ex04, calc(r*cea4))
227 define(ex05, calc(r*cea5))
228 define(ex06, calc(r*cea6))
229 define(ex07, calc(r*cea7))
231 define(ex10, calc(rb*cea0))
232 define(ex11, calc(rb*cea1))
233 define(ex12, calc(rb*cea2))
234 define(ex13, calc(rb*cea3))
235 define(ex14, calc(rb*cea4))
236 define(ex15, calc(rb*cea5))
237 define(ex16, calc(rb*cea6))
238 define(ex17, calc(rb*cea7))
240 define(ex20, calc(ri*cea0))
241 define(ex21, calc(ri*cea1))
242 define(ex22, calc(ri*cea2))
243 define(ex23, calc(ri*cea3))
244 define(ex24, calc(ri*cea4))
245 define(ex25, calc(ri*cea5))
246 define(ex26, calc(ri*cea6))
247 define(ex27, calc(ri*cea7))
249 define(ex30, calc(Rb*cea0))
250 define(ex31, calc(Rb*cea1))
251 define(ex32, calc(Rb*cea2))
252 define(ex33, calc(Rb*cea3))
253 define(ex34, calc(Rb*cea4))
254 define(ex35, calc(Rb*cea5))
255 define(ex36, calc(Rb*cea6))
256 define(ex37, calc(Rb*cea7))
258 define(ex40, calc(R*cea0))
259 define(ex41, calc(R*cea1))
260 define(ex42, calc(R*cea2))
261 define(ex43, calc(R*cea3))
262 define(ex44, calc(R*cea4))
263 define(ex45, calc(R*cea5))
264 define(ex46, calc(R*cea6))
265 define(ex47, calc(R*cea7))
267 define(ey00, calc(r*sea0))
268 define(ey01, calc(r*sea1))
269 define(ey02, calc(r*sea2))
270 define(ey03, calc(r*sea3))
271 define(ey04, calc(r*sea4))
272 define(ey05, calc(r*sea5))
273 define(ey06, calc(r*sea6))
274 define(ey07, calc(r*sea7))
276 define(ey10, calc(rb*sea0))
277 define(ey11, calc(rb*sea1))
278 define(ey12, calc(rb*sea2))
279 define(ey13, calc(rb*sea3))
280 define(ey14, calc(rb*sea4))
281 define(ey15, calc(rb*sea5))
282 define(ey16, calc(rb*sea6))
283 define(ey17, calc(rb*sea7))
285 define(ey20, calc(ri*sea0))
286 define(ey21, calc(ri*sea1))
287 define(ey22, calc(ri*sea2))
288 define(ey23, calc(ri*sea3))
289 define(ey24, calc(ri*sea4))
290 define(ey25, calc(ri*sea5))
291 define(ey26, calc(ri*sea6))
292 define(ey27, calc(ri*sea7))
294 define(ey30, calc(Rb*sea0))
295 define(ey31, calc(Rb*sea1))
296 define(ey32, calc(Rb*sea2))
297 define(ey33, calc(Rb*sea3))
298 define(ey34, calc(Rb*sea4))
299 define(ey35, calc(Rb*sea5))
300 define(ey36, calc(Rb*sea6))
301 define(ey37, calc(Rb*sea7))
303 define(ey40, calc(R*sea0))
304 define(ey41, calc(R*sea1))
305 define(ey42, calc(R*sea2))
306 define(ey43, calc(R*sea3))
307 define(ey44, calc(R*sea4))
308 define(ey45, calc(R*sea5))
309 define(ey46, calc(R*sea6))
310 define(ey47, calc(R*sea7))
312 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
314 vertices
316     vert(0, 0, Zb) vlabel(r0b)
317     vert(0, 0, Zb) vlabel(r0sb)
318     vert(0, 1, Zb) vlabel(r1b)
319     vert(0, 2, Zb) vlabel(r2b)
320     vert(0, 2, Zb) vlabel(r2sb)
321     vert(0, 3, Zb) vlabel(r3b)
322     vert(0, 4, Zb) vlabel(r4b)
323     vert(0, 4, Zb) vlabel(r4sb)
324     vert(0, 5, Zb) vlabel(r5b)
325     vert(0, 6, Zb) vlabel(r6b)
326     vert(0, 6, Zb) vlabel(r6sb)
327     vert(0, 7, Zb) vlabel(r7b)
329     vert(1, 0, Zb) vlabel(rb0b)
330     vert(1, 1, Zb) vlabel(rb1b)
331     vert(1, 2, Zb) vlabel(rb2b)
332     vert(1, 3, Zb) vlabel(rb3b)
333     vert(1, 4, Zb) vlabel(rb4b)
334     vert(1, 5, Zb) vlabel(rb5b)
335     vert(1, 6, Zb) vlabel(rb6b)
336     vert(1, 7, Zb) vlabel(rb7b)
338     vert(2, 0, Zb) vlabel(ri0b)
339     vert(2, 1, Zb) vlabel(ri1b)
340     vert(2, 2, Zb) vlabel(ri2b)
341     vert(2, 3, Zb) vlabel(ri3b)
342     vert(2, 4, Zb) vlabel(ri4b)
343     vert(2, 5, Zb) vlabel(ri5b)
344     vert(2, 6, Zb) vlabel(ri6b)
345     vert(2, 7, Zb) vlabel(ri7b)
347     vert(3, 0, Zb) vlabel(Rb0b)
348     vert(3, 1, Zb) vlabel(Rb1b)
349     vert(3, 2, Zb) vlabel(Rb2b)
350     vert(3, 3, Zb) vlabel(Rb3b)
351     vert(3, 4, Zb) vlabel(Rb4b)
352     vert(3, 5, Zb) vlabel(Rb5b)
353     vert(3, 6, Zb) vlabel(Rb6b)
354     vert(3, 7, Zb) vlabel(Rb7b)
356     vert(4, 0, Zb) vlabel(R0b)
357     vert(4, 1, Zb) vlabel(R1b)
358     vert(4, 1, Zb) vlabel(R1sb)
359     vert(4, 2, Zb) vlabel(R2b)
360     vert(4, 3, Zb) vlabel(R3b)
361     vert(4, 3, Zb) vlabel(R3sb)
362     vert(4, 4, Zb) vlabel(R4b)
363     vert(4, 5, Zb) vlabel(R5b)
364     vert(4, 5, Zb) vlabel(R5sb)
365     vert(4, 6, Zb) vlabel(R6b)
366     vert(4, 7, Zb) vlabel(R7b)
367     vert(4, 7, Zb) vlabel(R7sb)
369     vert(0, 0, Zt) vlabel(r0t)
370     vert(0, 0, Zt) vlabel(r0st)
371     vert(0, 1, Zt) vlabel(r1t)
372     vert(0, 2, Zt) vlabel(r2t)
373     vert(0, 2, Zt) vlabel(r2st)
374     vert(0, 3, Zt) vlabel(r3t)
375     vert(0, 4, Zt) vlabel(r4t)
376     vert(0, 4, Zt) vlabel(r4st)
377     vert(0, 5, Zt) vlabel(r5t)
378     vert(0, 6, Zt) vlabel(r6t)
379     vert(0, 6, Zt) vlabel(r6st)
380     vert(0, 7, Zt) vlabel(r7t)
382     vert(1, 0, Zt) vlabel(rb0t)
383     vert(1, 1, Zt) vlabel(rb1t)
384     vert(1, 2, Zt) vlabel(rb2t)
385     vert(1, 3, Zt) vlabel(rb3t)
386     vert(1, 4, Zt) vlabel(rb4t)
387     vert(1, 5, Zt) vlabel(rb5t)
388     vert(1, 6, Zt) vlabel(rb6t)
389     vert(1, 7, Zt) vlabel(rb7t)
391     vert(2, 0, Zt) vlabel(ri0t)
392     vert(2, 1, Zt) vlabel(ri1t)
393     vert(2, 2, Zt) vlabel(ri2t)
394     vert(2, 3, Zt) vlabel(ri3t)
395     vert(2, 4, Zt) vlabel(ri4t)
396     vert(2, 5, Zt) vlabel(ri5t)
397     vert(2, 6, Zt) vlabel(ri6t)
398     vert(2, 7, Zt) vlabel(ri7t)
400     vert(3, 0, Zt) vlabel(Rb0t)
401     vert(3, 1, Zt) vlabel(Rb1t)
402     vert(3, 2, Zt) vlabel(Rb2t)
403     vert(3, 3, Zt) vlabel(Rb3t)
404     vert(3, 4, Zt) vlabel(Rb4t)
405     vert(3, 5, Zt) vlabel(Rb5t)
406     vert(3, 6, Zt) vlabel(Rb6t)
407     vert(3, 7, Zt) vlabel(Rb7t)
409     vert(4, 0, Zt) vlabel(R0t)
410     vert(4, 1, Zt) vlabel(R1t)
411     vert(4, 1, Zt) vlabel(R1st)
412     vert(4, 2, Zt) vlabel(R2t)
413     vert(4, 3, Zt) vlabel(R3t)
414     vert(4, 3, Zt) vlabel(R3st)
415     vert(4, 4, Zt) vlabel(R4t)
416     vert(4, 5, Zt) vlabel(R5t)
417     vert(4, 5, Zt) vlabel(R5st)
418     vert(4, 6, Zt) vlabel(R6t)
419     vert(4, 7, Zt) vlabel(R7t)
420     vert(4, 7, Zt) vlabel(R7st)
423 blocks
425     // block0
426     hex2D(r0, r1, rb1, rb0)
427     rotor
428     (Na Nr Nz)
429     simpleGrading (1 1 1)
431     // block1
432     hex2D(r1, r2s, rb2, rb1)
433     rotor
434     (Na Nr Nz)
435     simpleGrading (1 1 1)
437     // block2
438     hex2D(r2, r3, rb3, rb2)
439     rotor
440     (Na Nr Nz)
441     simpleGrading (1 1 1)
443     // block3
444     hex2D(r3, r4s, rb4, rb3)
445     rotor
446     (Na Nr Nz)
447     simpleGrading (1 1 1)
449     // block4
450     hex2D(r4, r5, rb5, rb4)
451     rotor
452     (Na Nr Nz)
453     simpleGrading (1 1 1)
455     // block5
456     hex2D(r5, r6s, rb6, rb5)
457     rotor
458     (Na Nr Nz)
459     simpleGrading (1 1 1)
461     // block6
462     hex2D(r6, r7, rb7, rb6)
463     rotor
464     (Na Nr Nz)
465     simpleGrading (1 1 1)
467     // block7
468     hex2D(r7, r0s, rb0, rb7)
469     rotor
470     (Na Nr Nz)
471     simpleGrading (1 1 1)
473     // block0
474     hex2D(rb0, rb1, ri1, ri0)
475     rotor
476     (Na Ni Nz)
477     simpleGrading (1 1 1)
479     // block1
480     hex2D(rb1, rb2, ri2, ri1)
481     rotor
482     (Na Ni Nz)
483     simpleGrading (1 1 1)
485     // block2
486     hex2D(rb2, rb3, ri3, ri2)
487     rotor
488     (Na Ni Nz)
489     simpleGrading (1 1 1)
491     // block3
492     hex2D(rb3, rb4, ri4, ri3)
493     rotor
494     (Na Ni Nz)
495     simpleGrading (1 1 1)
497     // block4
498     hex2D(rb4, rb5, ri5, ri4)
499     rotor
500     (Na Ni Nz)
501     simpleGrading (1 1 1)
503     // block5
504     hex2D(rb5, rb6, ri6, ri5)
505     rotor
506     (Na Ni Nz)
507     simpleGrading (1 1 1)
509     // block6
510     hex2D(rb6, rb7, ri7, ri6)
511     rotor
512     (Na Ni Nz)
513     simpleGrading (1 1 1)
515     // block7
516     hex2D(rb7, rb0, ri0, ri7)
517     rotor
518     (Na Ni Nz)
519     simpleGrading (1 1 1)
521     // block0
522     hex2D(ri0, ri1, Rb1, Rb0)
523     (Na Ni Nz)
524     simpleGrading (1 1 1)
526     // block1
527     hex2D(ri1, ri2, Rb2, Rb1)
528     (Na Ni Nz)
529     simpleGrading (1 1 1)
531     // block2
532     hex2D(ri2, ri3, Rb3, Rb2)
533     (Na Ni Nz)
534     simpleGrading (1 1 1)
536     // block3
537     hex2D(ri3, ri4, Rb4, Rb3)
538     (Na Ni Nz)
539     simpleGrading (1 1 1)
541     // block4
542     hex2D(ri4, ri5, Rb5, Rb4)
543     (Na Ni Nz)
544     simpleGrading (1 1 1)
546     // block5
547     hex2D(ri5, ri6, Rb6, Rb5)
548     (Na Ni Nz)
549     simpleGrading (1 1 1)
551     // block6
552     hex2D(ri6, ri7, Rb7, Rb6)
553     (Na Ni Nz)
554     simpleGrading (1 1 1)
556     // block7
557     hex2D(ri7, ri0, Rb0, Rb7)
558     (Na Ni Nz)
559     simpleGrading (1 1 1)
561     // block0
562     hex2D(Rb0, Rb1, R1s, R0)
563     (Na NR Nz)
564     simpleGrading (1 1 1)
566     // block1
567     hex2D(Rb1, Rb2, R2, R1)
568     (Na NR Nz)
569     simpleGrading (1 1 1)
571     // block2
572     hex2D(Rb2, Rb3, R3s, R2)
573     (Na NR Nz)
574     simpleGrading (1 1 1)
576     // block3
577     hex2D(Rb3, Rb4, R4, R3)
578     (Na NR Nz)
579     simpleGrading (1 1 1)
581     // block4
582     hex2D(Rb4, Rb5, R5s, R4)
583     (Na NR Nz)
584     simpleGrading (1 1 1)
586     // block5
587     hex2D(Rb5, Rb6, R6, R5)
588     (Na NR Nz)
589     simpleGrading (1 1 1)
591     // block6
592     hex2D(Rb6, Rb7, R7s, R6)
593     (Na NR Nz)
594     simpleGrading (1 1 1)
596     // block7
597     hex2D(Rb7, Rb0, R0, R7)
598     (Na NR Nz)
599     simpleGrading (1 1 1)
602 edges
604     arc r0b r1b evert(0, 0, Zb)
605     arc r1b r2sb evert(0, 1, Zb)
606     arc r2b r3b evert(0, 2, Zb)
607     arc r3b r4sb evert(0, 3, Zb)
608     arc r4b r5b evert(0, 4, Zb)
609     arc r5b r6sb evert(0, 5, Zb)
610     arc r6b r7b evert(0, 6, Zb)
611     arc r7b r0sb evert(0, 7, Zb)
613     arc rb0b rb1b evert(1, 0, Zb)
614     arc rb1b rb2b evert(1, 1, Zb)
615     arc rb2b rb3b evert(1, 2, Zb)
616     arc rb3b rb4b evert(1, 3, Zb)
617     arc rb4b rb5b evert(1, 4, Zb)
618     arc rb5b rb6b evert(1, 5, Zb)
619     arc rb6b rb7b evert(1, 6, Zb)
620     arc rb7b rb0b evert(1, 7, Zb)
622     arc ri0b ri1b evert(2, 0, Zb)
623     arc ri1b ri2b evert(2, 1, Zb)
624     arc ri2b ri3b evert(2, 2, Zb)
625     arc ri3b ri4b evert(2, 3, Zb)
626     arc ri4b ri5b evert(2, 4, Zb)
627     arc ri5b ri6b evert(2, 5, Zb)
628     arc ri6b ri7b evert(2, 6, Zb)
629     arc ri7b ri0b evert(2, 7, Zb)
631     arc Rb0b Rb1b evert(3, 0, Zb)
632     arc Rb1b Rb2b evert(3, 1, Zb)
633     arc Rb2b Rb3b evert(3, 2, Zb)
634     arc Rb3b Rb4b evert(3, 3, Zb)
635     arc Rb4b Rb5b evert(3, 4, Zb)
636     arc Rb5b Rb6b evert(3, 5, Zb)
637     arc Rb6b Rb7b evert(3, 6, Zb)
638     arc Rb7b Rb0b evert(3, 7, Zb)
640     arc R0b R1sb evert(4, 0, Zb)
641     arc R1b R2b evert(4, 1, Zb)
642     arc R2b R3sb evert(4, 2, Zb)
643     arc R3b R4b evert(4, 3, Zb)
644     arc R4b R5sb evert(4, 4, Zb)
645     arc R5b R6b evert(4, 5, Zb)
646     arc R6b R7sb evert(4, 6, Zb)
647     arc R7b R0b evert(4, 7, Zb)
649     arc r0t r1t evert(0, 0, Zt)
650     arc r1t r2st evert(0, 1, Zt)
651     arc r2t r3t evert(0, 2, Zt)
652     arc r3t r4st evert(0, 3, Zt)
653     arc r4t r5t evert(0, 4, Zt)
654     arc r5t r6st evert(0, 5, Zt)
655     arc r6t r7t evert(0, 6, Zt)
656     arc r7t r0st evert(0, 7, Zt)
658     arc rb0t rb1t evert(1, 0, Zt)
659     arc rb1t rb2t evert(1, 1, Zt)
660     arc rb2t rb3t evert(1, 2, Zt)
661     arc rb3t rb4t evert(1, 3, Zt)
662     arc rb4t rb5t evert(1, 4, Zt)
663     arc rb5t rb6t evert(1, 5, Zt)
664     arc rb6t rb7t evert(1, 6, Zt)
665     arc rb7t rb0t evert(1, 7, Zt)
667     arc ri0t ri1t evert(2, 0, Zt)
668     arc ri1t ri2t evert(2, 1, Zt)
669     arc ri2t ri3t evert(2, 2, Zt)
670     arc ri3t ri4t evert(2, 3, Zt)
671     arc ri4t ri5t evert(2, 4, Zt)
672     arc ri5t ri6t evert(2, 5, Zt)
673     arc ri6t ri7t evert(2, 6, Zt)
674     arc ri7t ri0t evert(2, 7, Zt)
676     arc Rb0t Rb1t evert(3, 0, Zt)
677     arc Rb1t Rb2t evert(3, 1, Zt)
678     arc Rb2t Rb3t evert(3, 2, Zt)
679     arc Rb3t Rb4t evert(3, 3, Zt)
680     arc Rb4t Rb5t evert(3, 4, Zt)
681     arc Rb5t Rb6t evert(3, 5, Zt)
682     arc Rb6t Rb7t evert(3, 6, Zt)
683     arc Rb7t Rb0t evert(3, 7, Zt)
685     arc R0t R1st evert(4, 0, Zt)
686     arc R1t R2t evert(4, 1, Zt)
687     arc R2t R3st evert(4, 2, Zt)
688     arc R3t R4t evert(4, 3, Zt)
689     arc R4t R5st evert(4, 4, Zt)
690     arc R5t R6t evert(4, 5, Zt)
691     arc R6t R7st evert(4, 6, Zt)
692     arc R7t R0t evert(4, 7, Zt)
695 patches
697     wall rotor
698     (
699         quad2D(r0, r1)
700         quad2D(r1, r2s)
701         quad2D(r2, r3)
702         quad2D(r3, r4s)
703         quad2D(r4, r5)
704         quad2D(r5, r6s)
705         quad2D(r6, r7)
706         quad2D(r7, r0s)
708         quad2D(r0, rb0)
709         quad2D(r0s, rb0)
711         quad2D(r2, rb2)
712         quad2D(r2s, rb2)
714         quad2D(r4, rb4)
715         quad2D(r4s, rb4)
717         quad2D(r6, rb6)
718         quad2D(r6s, rb6)
719     )
721     wall stator
722     (
723         quad2D(R0, R1s)
724         quad2D(R1, R2)
725         quad2D(R2, R3s)
726         quad2D(R3, R4)
727         quad2D(R4, R5s)
728         quad2D(R5, R6)
729         quad2D(R6, R7s)
730         quad2D(R7, R0)
732         quad2D(R1, Rb1)
733         quad2D(R1s, Rb1)
735         quad2D(R3, Rb3)
736         quad2D(R3s, Rb3)
738         quad2D(R5, Rb5)
739         quad2D(R5s, Rb5)
741         quad2D(R7, Rb7)
742         quad2D(R7s, Rb7)
743     )
745     empty front
746     (
747         frontQuad(r0, r1, rb1, rb0)
748         frontQuad(r1, r2s, rb2, rb1)
749         frontQuad(r2, r3, rb3, rb2)
750         frontQuad(r3, r4s, rb4, rb3)
751         frontQuad(r4, r5, rb5, rb4)
752         frontQuad(r5, r6s, rb6, rb5)
753         frontQuad(r6, r7, rb7, rb6)
754         frontQuad(r7, r0s, rb0, rb7)
755         frontQuad(rb0, rb1, ri1, ri0)
756         frontQuad(rb1, rb2, ri2, ri1)
757         frontQuad(rb2, rb3, ri3, ri2)
758         frontQuad(rb3, rb4, ri4, ri3)
759         frontQuad(rb4, rb5, ri5, ri4)
760         frontQuad(rb5, rb6, ri6, ri5)
761         frontQuad(rb6, rb7, ri7, ri6)
762         frontQuad(rb7, rb0, ri0, ri7)
763         frontQuad(ri0, ri1, Rb1, Rb0)
764         frontQuad(ri1, ri2, Rb2, Rb1)
765         frontQuad(ri2, ri3, Rb3, Rb2)
766         frontQuad(ri3, ri4, Rb4, Rb3)
767         frontQuad(ri4, ri5, Rb5, Rb4)
768         frontQuad(ri5, ri6, Rb6, Rb5)
769         frontQuad(ri6, ri7, Rb7, Rb6)
770         frontQuad(ri7, ri0, Rb0, Rb7)
771         frontQuad(Rb0, Rb1, R1s, R0)
772         frontQuad(Rb1, Rb2, R2, R1)
773         frontQuad(Rb2, Rb3, R3s, R2)
774         frontQuad(Rb3, Rb4, R4, R3)
775         frontQuad(Rb4, Rb5, R5s, R4)
776         frontQuad(Rb5, Rb6, R6, R5)
777         frontQuad(Rb6, Rb7, R7s, R6)
778         frontQuad(Rb7, Rb0, R0, R7)
779     )
781     empty back
782     (
783         backQuad(r0, r1, rb1, rb0)
784         backQuad(r1, r2s, rb2, rb1)
785         backQuad(r2, r3, rb3, rb2)
786         backQuad(r3, r4s, rb4, rb3)
787         backQuad(r4, r5, rb5, rb4)
788         backQuad(r5, r6s, rb6, rb5)
789         backQuad(r6, r7, rb7, rb6)
790         backQuad(r7, r0s, rb0, rb7)
791         backQuad(rb0, rb1, ri1, ri0)
792         backQuad(rb1, rb2, ri2, ri1)
793         backQuad(rb2, rb3, ri3, ri2)
794         backQuad(rb3, rb4, ri4, ri3)
795         backQuad(rb4, rb5, ri5, ri4)
796         backQuad(rb5, rb6, ri6, ri5)
797         backQuad(rb6, rb7, ri7, ri6)
798         backQuad(rb7, rb0, ri0, ri7)
799         backQuad(ri0, ri1, Rb1, Rb0)
800         backQuad(ri1, ri2, Rb2, Rb1)
801         backQuad(ri2, ri3, Rb3, Rb2)
802         backQuad(ri3, ri4, Rb4, Rb3)
803         backQuad(ri4, ri5, Rb5, Rb4)
804         backQuad(ri5, ri6, Rb6, Rb5)
805         backQuad(ri6, ri7, Rb7, Rb6)
806         backQuad(ri7, ri0, Rb0, Rb7)
807         backQuad(Rb0, Rb1, R1s, R0)
808         backQuad(Rb1, Rb2, R2, R1)
809         backQuad(Rb2, Rb3, R3s, R2)
810         backQuad(Rb3, Rb4, R4, R3)
811         backQuad(Rb4, Rb5, R5s, R4)
812         backQuad(Rb5, Rb6, R6, R5)
813         backQuad(Rb6, Rb7, R7s, R6)
814         backQuad(Rb7, Rb0, R0, R7)
815     )
818 // ************************************************************************* //