1d310b3d3SAdeleke O. BankoleDefineConstant[ 2d310b3d3SAdeleke O. Bankole zspan = {0.2, Min .1, Max 10, Step .1, 3d310b3d3SAdeleke O. Bankole Name "Parameters/Zspan"} 4d310b3d3SAdeleke O. Bankole]; 5d310b3d3SAdeleke O. Bankole 6d310b3d3SAdeleke O. BankoleDefineConstant[ 7d310b3d3SAdeleke O. Bankole H = {4.5, Min 1, Max 10, Step .1, 8d310b3d3SAdeleke O. Bankole Name "Parameters/Height"} 9d310b3d3SAdeleke O. Bankole]; 10d310b3d3SAdeleke O. Bankole 11d310b3d3SAdeleke O. BankoleDefineConstant[ 12d310b3d3SAdeleke O. Bankole xL = {4.5, Min 1, Max 10, Step .1, 13d310b3d3SAdeleke O. Bankole Name "Parameters/XL"} 14d310b3d3SAdeleke O. Bankole]; 15d310b3d3SAdeleke O. Bankole 16d310b3d3SAdeleke O. BankoleDefineConstant[ 1732a7ae75SJed Brown xR = {11, Min .2, Max 30, Step .1, 18d310b3d3SAdeleke O. Bankole Name "Parameters/XR"} 19d310b3d3SAdeleke O. Bankole]; 20d310b3d3SAdeleke O. Bankole 21d310b3d3SAdeleke O. BankoleDefineConstant[ 22d310b3d3SAdeleke O. Bankole cyldiameter = {1.0, Min .1, Max 1.0, Step .1, 23d310b3d3SAdeleke O. Bankole Name "Parameters/CylDiameter"} 24d310b3d3SAdeleke O. Bankole]; 25d310b3d3SAdeleke O. Bankole 26d310b3d3SAdeleke O. BankoleDefineConstant[ 27d310b3d3SAdeleke O. Bankole N = {20, Min 2, Max 80, Step 2, 28d310b3d3SAdeleke O. Bankole Name "Parameters/ElementsPerQuadrant"} 29d310b3d3SAdeleke O. Bankole]; 30d310b3d3SAdeleke O. Bankole 31d310b3d3SAdeleke O. BankoleDefineConstant[ 32d310b3d3SAdeleke O. Bankole RadialRatio = {1, Min .2, Max 5, Step .1, 33d310b3d3SAdeleke O. Bankole Name "Parameters/RadialRatio"} 34d310b3d3SAdeleke O. Bankole]; 35*d6734f85SAdeleke O. BankoleDefineConstant[ 36*d6734f85SAdeleke O. Bankole Rb = {.9, Min .5, Max 2, Step .05, 37*d6734f85SAdeleke O. Bankole Name "Parameters/RadialProgression"} 38*d6734f85SAdeleke O. Bankole]; 39d310b3d3SAdeleke O. Bankole 40d310b3d3SAdeleke O. BankoleNx1 = N + 1; Rx1 = 1.00; 4132a7ae75SJed BrownNx2 = Ceil(N * 9 / 11 * xR / (2*xL)) + 1; Rx2 = 1.00; 42d310b3d3SAdeleke O. BankoleNy = N + 1; Ry = 2.00; 43*d6734f85SAdeleke O. BankoleNb = Ceil(RadialRatio * N) + 1; 44d310b3d3SAdeleke O. BankoleNc = N + 1; Rc = 1.00; 45d310b3d3SAdeleke O. Bankole 46d310b3d3SAdeleke O. Bankole// Characteristic element length 47d310b3d3SAdeleke O. Bankoleh = 2 * H / N; 48d310b3d3SAdeleke O. Bankole 49d310b3d3SAdeleke O. Bankole// Exterior corners 50d310b3d3SAdeleke O. BankolePoint(1) = {-xL, -H, 0}; 51d310b3d3SAdeleke O. BankolePoint(2) = {xL, -H, 0}; 5232a7ae75SJed BrownPoint(3) = {xL + xR, -H, 0}; 53d310b3d3SAdeleke O. BankolePoint(4) = {-xL, H, 0}; 54d310b3d3SAdeleke O. BankolePoint(5) = {xL, H, 0}; 5532a7ae75SJed BrownPoint(6) = {xL + xR, H, 0}; 56d310b3d3SAdeleke O. Bankole 57d310b3d3SAdeleke O. Bankole// Coordinates for Cylinder points 58d310b3d3SAdeleke O. BankolePoint(7) = {-cyldiameter/Sqrt(8), -cyldiameter/Sqrt(8), 0}; 59d310b3d3SAdeleke O. BankolePoint(8) = {cyldiameter/Sqrt(8), -cyldiameter/Sqrt(8), 0}; 60d310b3d3SAdeleke O. BankolePoint(9) = {-cyldiameter/Sqrt(8), cyldiameter/Sqrt(8), 0}; 61d310b3d3SAdeleke O. BankolePoint(10) = {cyldiameter/Sqrt(8), cyldiameter/Sqrt(8), 0}; 62d310b3d3SAdeleke O. BankolePoint(11) = {0, 0, 0}; 63d310b3d3SAdeleke O. Bankole 64d310b3d3SAdeleke O. Bankole// Top and bottom edges 65d310b3d3SAdeleke O. BankoleLine(1) = {1, 2}; Transfinite Curve {1} = Nx1 Using Progression Rx1; 66d310b3d3SAdeleke O. BankoleLine(2) = {2, 3}; Transfinite Curve {2} = Nx2 Using Progression Rx2; 67d310b3d3SAdeleke O. BankoleLine(3) = {4, 5}; Transfinite Curve {3} = Nx1 Using Progression Rx1; 68d310b3d3SAdeleke O. BankoleLine(4) = {5, 6}; Transfinite Curve {4} = Nx2 Using Progression Rx2; 69d310b3d3SAdeleke O. Bankole// Vertical edges and internal interface 70d310b3d3SAdeleke O. BankoleLine(5) = {4, 1}; Transfinite Curve {5} = Ny Using Bump Ry; 71d310b3d3SAdeleke O. BankoleLine(6) = {5, 2}; Transfinite Curve {6} = Ny Using Bump Ry; 72d310b3d3SAdeleke O. BankoleLine(7) = {6, 3}; Transfinite Curve {7} = Ny Using Bump Ry; 73d310b3d3SAdeleke O. Bankole 74d310b3d3SAdeleke O. Bankole// Cylinder arcs 75d310b3d3SAdeleke O. BankoleCircle(8) = {7, 11, 8}; Transfinite Curve {8} = Nc Using Progression Rc; 76d310b3d3SAdeleke O. BankoleCircle(9) = {8, 11, 10}; Transfinite Curve {9} = Nc Using Progression Rc; 77d310b3d3SAdeleke O. BankoleCircle(10) = {10, 11, 9}; Transfinite Curve {10} = Nc Using Progression Rc; 78d310b3d3SAdeleke O. BankoleCircle(11) = {9, 11, 7}; Transfinite Curve {11} = Nc Using Progression Rc; 79d310b3d3SAdeleke O. Bankole 80d310b3d3SAdeleke O. Bankole// Radial lines 81d310b3d3SAdeleke O. BankoleLine(12) = {1, 7}; Transfinite Curve {12} = Nb Using Progression Rb; 82d310b3d3SAdeleke O. BankoleLine(13) = {2, 8}; Transfinite Curve {13} = Nb Using Progression Rb; 83d310b3d3SAdeleke O. BankoleLine(14) = {5, 10}; Transfinite Curve {14} = Nb Using Progression Rb; 84d310b3d3SAdeleke O. BankoleLine(15) = {4, 9}; Transfinite Curve {15} = Nb Using Progression Rb; 85d310b3d3SAdeleke O. Bankole 86d310b3d3SAdeleke O. Bankole// surfaces 87d310b3d3SAdeleke O. BankoleCurve Loop(1) = {12, 8, -13, -1}; 88d310b3d3SAdeleke O. BankolePlane Surface(1) = {1}; 89d310b3d3SAdeleke O. BankoleCurve Loop(2) = {13, 9, -14, 6}; 90d310b3d3SAdeleke O. BankolePlane Surface(2) = {2}; 91d310b3d3SAdeleke O. BankoleCurve Loop(3) = {14, 10, -15, 3}; 92d310b3d3SAdeleke O. BankolePlane Surface(3) = {3}; 93d310b3d3SAdeleke O. BankoleCurve Loop(4) = {15, 11, -12, -5}; 94d310b3d3SAdeleke O. BankolePlane Surface(4) = {4}; 95d310b3d3SAdeleke O. BankoleCurve Loop(5) = {2, -7, -4, 6}; 96d310b3d3SAdeleke O. BankolePlane Surface(5) = {5}; 97d310b3d3SAdeleke O. BankoleTransfinite Surface {1}; 98d310b3d3SAdeleke O. BankoleTransfinite Surface {2}; 99d310b3d3SAdeleke O. BankoleTransfinite Surface {3}; 100d310b3d3SAdeleke O. BankoleTransfinite Surface {4}; 101d310b3d3SAdeleke O. BankoleTransfinite Surface {5}; 102d310b3d3SAdeleke O. BankoleRecombine Surface {1}; 103d310b3d3SAdeleke O. BankoleRecombine Surface {2}; 104d310b3d3SAdeleke O. BankoleRecombine Surface {3}; 105d310b3d3SAdeleke O. BankoleRecombine Surface {4}; 106d310b3d3SAdeleke O. BankoleRecombine Surface {5}; 107d310b3d3SAdeleke O. BankoleExtrude {0, 0, zspan} { 108d310b3d3SAdeleke O. Bankole Surface{1, 2, 3, 4, 5}; 109d310b3d3SAdeleke O. Bankole Layers {Ceil(zspan / h)}; 110d310b3d3SAdeleke O. Bankole Recombine; 111d310b3d3SAdeleke O. Bankole} 112d310b3d3SAdeleke O. Bankole 113d310b3d3SAdeleke O. BankolePhysical Surface("inlet") = {102}; // inlet 114d310b3d3SAdeleke O. BankolePhysical Surface("outlet") = {116}; // outlet 115d310b3d3SAdeleke O. BankolePhysical Surface("top") = {80, 120}; // top 116d310b3d3SAdeleke O. BankolePhysical Surface("bottom") = {36, 112}; // bottom 117d310b3d3SAdeleke O. BankolePhysical Surface("cylinderwalls") = {94, 28, 50, 72}; // cylinderwalls 118d310b3d3SAdeleke O. BankolePhysical Surface("frontandback") = {37, 1, 4, 103, 3, 81, 2, 59, 5, 125}; // frontandback 119d310b3d3SAdeleke O. BankolePhysical Volume("mesh") = {1:5}; 120