[Gmsh] Close but no cigar
Jonas Forssell
jonasforssell at yahoo.se
Sun Jun 13 06:47:05 CEST 2004
Hello again,
Thank you for your previous help.
After modification according to your "cheat" trick,
the surface physicals are now correctly applied.
However, almost none of the nodes in the pendulum have
been capured by the physical. Even the corner node of
the bumper beam is included in the pendulum physical.
How can I change my geo file to capture ALL of the
nodes in the pendulum and none on the beam?
Thanks
/Jonas
--------------------------------
// Define codes to Impact
enode = 0000000000;
eshell = 0000000000;
econtacttria = 1000000000;
erod = 0000000000;
econtactline = 1000000000;
espring = 2000000000;
esolid = 0000000000;
// Max 9 different tracker types
track1 = 100000000;
track2 = 200000000;
track3 = 300000000;
track4 = 400000000;
// 99 different constraints allowed
cons1 = 0100000;
cons2 = 0200000;
cons3 = 0300000;
cons4 = 0400000;
// Max 9 different loads
load1 = 10000000;
load2 = 20000000;
load3 = 30000000;
load4 = 40000000;
// 99 different materials allowed
mat1 = 01000;
mat2 = 02000;
mat3 = 03000;
mat4 = 04000;
// Remaining three are reserved for thickness
// For example 010 means 1.0 in thickness
// 124 would mean 12.4 in thickness
// Set up parameters for the pendulum
size_pend = 30;
width = 203+102;
face = 203;
depth = 100;
arch = 100;
tx = -10;
ty = 300;
tz = 0;
// Set up parameters for the beam
size_beam = 20;
btx = 0;
bty = 0;
btz = 0;
fface = 60;
rface = 50;
bdepth = 60;
frac = 0.4;
cx = 4000;
angle = Pi/16;
barch = cx*angle;
// Define the pendulum
Point(3) = {tx+0,ty+0,tz+0,size_pend};
Point(4) = {tx-4.80346,ty+0,tz+54.9038,size_pend};
Point(5) = {tx-7.79204,ty+0,tz+54.6423,size_pend};
Point(6) = {tx-7.0156,ty+0,tz+57.5401,size_pend};
Point(7) = {tx-76,ty+0,tz+76.0244,size_pend};
Point(8) = {tx-76,ty+0,tz+400,2*size_pend};
Point(9) = {tx-4.80346,ty+0,tz-54.9038,size_pend};
Point(10) = {tx-7.79204,ty+0,tz-54.6423,size_pend};
Point(11) = {tx-7.0156,ty+0,tz-57.5401,size_pend};
Point(12) = {tx-76,ty+0,tz-76.0244,size_pend};
Point(13) = {tx-76,ty+0,tz-200,2*size_pend};
Line(2) = {3,4};
Circle(3) = {4,5,6};
Line(4) = {6,7};
Line(5) = {7,8};
Line(6) = {9,3};
Circle(7) = {11,10,9};
Line(8) = {12,11};
Line(9) = {13,12};
Point(103) = {tx-102,ty+width,tz+0,size_pend};
Point(104) =
{tx-102,ty+width-4.80346,tz+54.9038,size_pend};
Point(105) =
{tx-102,ty+width-7.79204,tz+54.6423,size_pend};
Point(106) =
{tx-102,ty+width-7.0156,tz+57.5401,size_pend};
Point(107) =
{tx-102,ty+width-76,tz+76.0244,size_pend};
Point(108) = {tx-102,ty+width-76,tz+400,2*size_pend};
Point(109) =
{tx-102,ty+width-4.80346,tz-54.9038,size_pend};
Point(110) =
{tx-102,ty+width-7.79204,tz-54.6423,size_pend};
Point(111) =
{tx-102,ty+width-7.0156,tz-57.5401,size_pend};
Point(112) =
{tx-102,ty+width-76,tz-76.0244,size_pend};
Point(113) = {tx-102,ty+width-76,tz-200,2*size_pend};
Line(102) = {103,104};
Circle(103) = {104,105,106};
Line(104) = {106,107};
Line(105) = {107,108};
Line(106) = {109,103};
Circle(107) = {111,110,109};
Line(108) = {112,111};
Line(109) = {113,112};
Point(203) = {tx-102,ty-width,tz+0,size_pend};
Point(204) =
{tx-102,ty-width+4.80346,tz+54.9038,size_pend};
Point(205) =
{tx-102,ty-width+7.79204,tz+54.6423,size_pend};
Point(206) =
{tx-102,ty-width+7.0156,tz+57.5401,size_pend};
Point(207) =
{tx-102,ty-width+76,tz+76.0244,size_pend};
Point(208) = {tx-102,ty-width+76,tz+400,2*size_pend};
Point(209) =
{tx-102,ty-width+4.80346,tz-54.9038,size_pend};
Point(210) =
{tx-102,ty-width+7.79204,tz-54.6423,size_pend};
Point(211) =
{tx-102,ty-width+7.0156,tz-57.5401,size_pend};
Point(212) =
{tx-102,ty-width+76,tz-76.0244,size_pend};
Point(213) = {tx-102,ty-width+76,tz-200,2*size_pend};
Line(202) = {203,204};
Circle(203) = {204,205,206};
Line(204) = {206,207};
Line(205) = {207,208};
Line(206) = {209,203};
Circle(207) = {211,210,209};
Line(208) = {212,211};
Line(209) = {213,212};
// Define the bumperbeam
Point(301) = {btx+0,bty+0,btz-fface,size_beam};
Point(302) = {btx+0,bty+0,btz+fface,size_beam};
Point(303) = {btx+bdepth,bty+0,btz+rface,size_beam};
Point(304) = {btx+bdepth,bty+0,btz-rface,size_beam};
Point(305) = {btx+0,bty+0,btz-frac*fface,size_beam};
Point(306) = {btx+0,bty+0,btz+frac*fface,size_beam};
Line(301) = {301,305};
Line(302) = {305,306};
Line(303) = {306,302};
Line(304) = {302,303};
Line(305) = {303,304};
Line(306) = {304,301};
Line(307) = {303,306};
Line(308) = {304,305};
// Now begin creating the model
s1 = news;
p1 = newp;
For i In {2:9}
Extrude Line {i, {0,face,0}} {
Layers {face/size_pend,i,1};
Recombine;
};
Extrude Line {i, {0,-face,0}} {
Layers {face/size_pend,9+i,1};
Recombine;
};
EndFor
For i In {102:109}
Extrude Line {i, {0,0,1}, {-102+tx,203+ty,0+tz},
-Pi/2} {
Layers {arch/size_pend,18+i-100,1};
Recombine;
};
Extrude Line {i, {-depth,0,0}} {
Layers {depth/size_pend,27+i-100,1};
Recombine;
};
EndFor
For i In {202:209}
Extrude Line {i, {0,0,1}, {-102+tx,-203+ty,0+tz},
Pi/2} {
Layers {arch/size_pend,36+i-200,1};
Recombine;
};
Extrude Line {i, {-depth,0,0}} {
Layers {depth/size_pend,45+i-200,1};
Recombine;
};
EndFor
s2 = news;
p2 = newp;
Physical Surface(eshell+mat1+010) = {s1:s2};
// This does not work as expected ........
Physical Point(enode+cons1) = {p1:p2};
// Build beam
s1 = news;
For i In {301:308}
Extrude Line {i, {0,0,1}, {cx+btx,bty,btz}, angle} {
Layers {barch/size_beam,54+i-300,1};
Recombine;
};
Extrude Line {i, {0,0,1}, {cx+btx,bty,btz}, -angle} {
Layers {barch/size_beam,63+i-300,1};
Recombine;
};
EndFor
s2 = news;
Physical Surface(eshell+mat2+021) = {s1:s2};
Höstrusk och grå moln - köp en resa till solen på Yahoo! Resor på adressen http://se.docs.yahoo.com/travel/index.html