# Contents of /trunk-mpi-branch/pycad/examples/lava_dom.geo

Revision 968 - (show annotations)
Tue Feb 13 22:56:57 2007 UTC (15 years, 9 months ago) by ksteube
File size: 5689 byte(s)
```Branch for MPI solution of implicit problems
```
 1 lc_border = 0.4; 2 lc_surf = 0.4; 3 4 N=8; 5 DTheta = 2*Pi/N; 6 base_z = 0.0; 7 top_z = 4.0; 8 surf_top_z = 7.0; 9 Theta = 0; 10 rad_conduit = 1.5; 11 rad_surf = 3.0; 12 13 CenterPoint1 = newp; 14 Point(CenterPoint1) = { 0.0,0.0,base_z,lc_border}; 15 16 // Conduit bottom Circle 17 For I In {1:N} 18 PointList[I] = newp; 19 Theta+=DTheta; 20 Point( PointList[ I] ) = { rad_conduit*Cos(Theta) 21 ,rad_conduit*Sin(Theta), base_z, lc_border}; 22 EndFor 23 24 // Conduit Top Circle 25 CenterPoint2 = newp; 26 Point(CenterPoint2) = {0.0,0.0,top_z,lc_border}; 27 Theta = 0.0; 28 For I In {1:N} 29 PointList2[I] = newp; 30 Theta+=DTheta; 31 Point( PointList2[ I] ) = { rad_conduit*Cos(Theta) 32 ,rad_conduit*Sin(Theta), top_z, lc_border}; 33 EndFor 34 35 // Bottom Surface Lines 36 For I In {1:N} 37 LineList[I] = newl; 38 Line( LineList[I] ) = { PointList[I], CenterPoint1 }; 39 EndFor 40 For I In {1:N} 41 CircleList[I] = newc; 42 Circle( CircleList[I] ) = { PointList[I], CenterPoint1, 43 PointList[(I%N) + 1] }; 44 EndFor 45 46 47 // Top Surface Lines 48 //For I In {1:N} 49 // LineList2[I] = newl; 50 // Line( LineList2[I] ) = { PointList2[I], CenterPoint2 }; 51 //EndFor 52 For I In {1:N} 53 CircleList2[I] = newc; 54 Circle( CircleList2[I] ) = { PointList2[I], CenterPoint2, 55 PointList2[(I%N) + 1] }; 56 EndFor 57 58 59 60 // Lines Connecting Top and Bottom Surfaces 61 For I In {1:N} 62 Line(newl) = { PointList[I], PointList2[I] }; 63 EndFor 64 65 66 67 // ****** DOME **************** 68 // ****************************** 69 70 // Surf Bot 71 Theta = 0.0; 72 For I In {1:N} 73 SurfPoint1[I] = newp; 74 Theta += DTheta; 75 Point( SurfPoint1[I] ) = { rad_surf*Cos(Theta) 76 ,rad_surf*Sin(Theta), top_z, lc_surf }; 77 EndFor 78 79 80 81 // Surf Top 82 CenterPoint3 = newp; 83 Point(CenterPoint3) = {0.0,0.0,surf_top_z,lc_border}; 84 Theta = 0.0; 85 For I In {1:N} 86 SurfPoint2[I] = newp; 87 Theta+=DTheta; 88 Point( SurfPoint2[ I] ) = { rad_surf*Cos(Theta) 89 ,rad_surf*Sin(Theta), surf_top_z, lc_surf}; 90 EndFor 91 92 // Lines Connecting Top and bottom 93 For I In {1:N} 94 Line(newl) = { SurfPoint1[I], SurfPoint2[I] }; 95 EndFor 96 97 // Lines connecting outer to inner circle on surface 98 99 For I In {1:N} 100 Line(newl) = { PointList2[I], SurfPoint1[I]}; 101 EndFor 102 103 104 105 // Bottom Surface Lines 106 For I In {1:N} 107 CircleList4[I] = newc; 108 Circle(CircleList4[I] ) = { SurfPoint1[I], CenterPoint2, 109 SurfPoint1[(I%N) + 1] }; 110 EndFor 111 112 113 114 // Top Surface Lid 115 For I In {1:N} 116 LineList3[I] = newl; 117 Line( LineList3[I] ) = { SurfPoint2[I], CenterPoint3 }; 118 EndFor 119 For I In {1:N} 120 CircleList3[I] = newc; 121 Circle( CircleList3[I] ) = { SurfPoint2[I], CenterPoint3, 122 SurfPoint2[(I%N) + 1] }; 123 EndFor 124 125 // ** BEGIN ** 126 // conduit Bottom Surface 127 Line Loop(73) = {4,-5,-12}; 128 Plane Surface(74) = {73}; 129 Line Loop(75) = {3,-4,-11}; 130 Plane Surface(76) = {75}; 131 Line Loop(77) = {10,3,-2}; 132 Plane Surface(78) = {77}; 133 Line Loop(79) = {9,2,-1}; 134 Plane Surface(80) = {79}; 135 Line Loop(81) = {16,1,-8}; 136 Plane Surface(82) = {81}; 137 Line Loop(83) = {15,8,-7}; 138 Plane Surface(84) = {83}; 139 Line Loop(85) = {14,7,-6}; 140 Plane Surface(86) = {85}; 141 Line Loop(87) = {5,-6,-13}; 142 Plane Surface(88) = {87}; 143 144 145 Physical Surface(153) = {82,80,78,76,74,88,86,84}; 146 // ** END ** 147 148 // ** BEGIN ** 149 // Volcano Top Surface 150 Line Loop(89) = {54,-47,-22,46}; 151 Plane Surface(90) = {89}; 152 Line Loop(91) = {48,-55,-47,23}; 153 Plane Surface(92) = {91}; 154 Line Loop(93) = {24,41,-56,-48}; 155 Plane Surface(94) = {93}; 156 Line Loop(95) = {49,-42,-17,41}; 157 Plane Surface(96) = {95}; 158 Line Loop(97) = {50,-43,-18,42}; 159 Plane Surface(98) = {97}; 160 Line Loop(99) = {51,-44,-19,43}; 161 Plane Surface(100) = {99}; 162 Line Loop(101) = {45,-52,-44,20}; 163 Plane Surface(102) = {101}; 164 Line Loop(103) = {53,-46,-21,45}; 165 Plane Surface(104) = {103}; 166 167 168 Physical Surface(154) = {90,92,94,96,104,102,100,116,98}; 169 // ** END ** 170 171 // ** BEGIN ** 172 // Volcano Free Surface Top 173 Line Loop(105) = {70,63,-62}; 174 Plane Surface(106) = {105}; 175 Line Loop(107) = {62,-61,69}; 176 Plane Surface(108) = {107}; 177 Line Loop(109) = {61,-60,68}; 178 Plane Surface(110) = {109}; 179 Line Loop(111) = {60,-59,67}; 180 Plane Surface(112) = {111}; 181 Line Loop(113) = {58,-59,-66}; 182 Plane Surface(114) = {113}; 183 Line Loop(115) = {57,-58,-65}; 184 Plane Surface(116) = {115}; 185 Line Loop(117) = {72,57,-64}; 186 Plane Surface(118) = {117}; 187 Line Loop(119) = {63,-64,-71}; 188 Plane Surface(120) = {119}; 189 190 191 Physical Surface(155) = {106,110,112,114,116,118,120,108}; 192 // ** END ** 193 194 195 // ** BEGIN ** 196 // Conduit Outer Surface 197 Line Loop(121) = {13,30,-21,-29}; 198 Ruled Surface(122) = {121}; 199 Line Loop(123) = {29,-20,-28,12}; 200 Ruled Surface(124) = {123}; 201 Line Loop(125) = {28,-19,-27,11}; 202 Ruled Surface(126) = {125}; 203 Line Loop(127) = {27,-18,-26,10}; 204 Ruled Surface(128) = {127}; 205 Line Loop(129) = {26,-17,-25,9}; 206 Ruled Surface(130) = {129}; 207 Line Loop(131) = {25,-24,-32,16}; 208 Ruled Surface(132) = {131}; 209 Line Loop(133) = {32,-23,-31,15}; 210 Ruled Surface(134) = {133}; 211 Line Loop(135) = {30,22,-31,-14}; 212 Ruled Surface(136) = {135}; 213 214 215 Physical Surface(156) = {134,136,122,126,128,130,132,124}; 216 // ** END ** 217 218 219 // ** BEGIN ** 220 // Outer Free Surface Cylinder 221 Line Loop(137) = {53,38,-69,-37}; 222 Ruled Surface(138) = {137}; 223 Line Loop(139) = {52,37,-68,-36}; 224 Ruled Surface(140) = {139}; 225 Line Loop(141) = {51,36,-67,-35}; 226 Ruled Surface(142) = {141}; 227 Line Loop(143) = {50,35,-66,-34}; 228 Ruled Surface(144) = {143}; 229 Line Loop(145) = {49,34,-65,-33}; 230 Ruled Surface(146) = {145}; 231 Line Loop(147) = {56,33,-72,-40}; 232 Ruled Surface(148) = {147}; 233 Line Loop(149) = {55,40,-71,-39}; 234 Ruled Surface(150) = {149}; 235 Line Loop(151) = {39,-70,-38,54}; 236 Ruled Surface(152) = {151}; 237 238 Physical Surface(157) = {138,148,144,142,140,150,146,152}; 239 // ** End ** 240 241 242 Surface Loop(158) = 243 {134,132,130,128,126,124,122,88,74,76,-78,-80,-82,-84,-86,-136,-90,152,150,92,94,-96,146,144,-98,-100,142,140,102,-104,138,108,106,-120,118,148,-116,-114,112,110}; 244 245 Volume(159) = {158}; 246 Physical Volume(160) = { 159};