[Gmsh] Specify boundary points or lines within a surface

Christophe Geuzaine cgeuzaine at ulg.ac.be
Wed Jan 30 09:25:32 CET 2008


Jose Paulo Moitinho de Almeida wrote:
> Hello, this has been answered before, but ....
> 
> "How is it possible to specify boundary points or lines within a surface (in 
> the same way of a hole)?". The answer is "the point must be connected to a 
> line, itself connected to your surface"
> 
> The solution is simple, but places an artificial constraint on the resulting 
> mesh - the extra lines connecting the isolated point or line to the rest of 
> the boundary.
> 
> Would it be to complicated to use one isolated line as an inner loop? Or 
> two which are in fact the the same? In fact this corresponds to two different 
> usages:
> 
> - Define an edge along which we want to enforce the existence of nodes 
> (implicitly line elements), so that values can be measured or boundary 
> conditions  imposed (1). In this case the nodes/line elements on both sides 
> of the edge would be the same.
> 
> - Define an edge that divides the domain (the simple example is a crack). In 
> this case the nodes/line elements on both sides of the edge would be 
> different, except at the extremes. 
> 
> I know that this has implications on the topological definition of the domain, 
> so, before starting anything, I would like to know i you think that, using 
> the current structures within gmsh, this is feasible.


With recent nightly builds you can embed lines in surfaces like this:

c = .1;
lc2 = .01;
Point(1) = {0.0,0.0,0,lc};
Point(2) = {1,0.0,0,lc};
Point(3) = {1,1,0,lc};
Point(4) = {0,1,0,lc};
Point(11) = {0.2,0.2,0,lc2};
Point(22) = {0.3,0.8,0,lc2};
Point(33) = {0.8,0.8,0,lc2};
Point(44) = {0.9,0.2,0,lc2};
Line(1) = {3,2};
Line(2) = {2,1};
Line(3) = {1,4};
Line(4) = {4,3};
Spline(5) = {11,22,33,44};
Line Loop(5) = {1,2,3,4};
Plane Surface(6) = {5};
Line {5} In  Surface {6}; // embedded line

Embedded points are not implemented yet.




> 
> Thanks
> 
> ZP
> 
> Notes:
> 
> (1) This is the case I am personally interested in: to have lines along which 
> we can impose bc's that will indirectly provide integrals of some variables 
> (and afterwards of their errors).
> 
> (2) What is written for lines in 2D could be written for lines or planes in 
> 3D. In fact the general idea is to allow the definition within a nD domain to 
> be meshed of mD domains (m<n) which will become part of the mesh. In my text 
> n=2 and m=1.
> 
> _______________________________________________
> gmsh mailing list
> gmsh at geuz.org
> http://www.geuz.org/mailman/listinfo/gmsh
> 
> 


-- 
Prof. Christophe Geuzaine
University of Liege, Electrical Engineering and Computer Science
http://www.montefiore.ulg.ac.be/~geuzaine