[Gmsh] Line loop and Open cascade
Christophe Geuzaine
cgeuzaine at uliege.be
Thu Feb 22 17:45:42 CET 2018
> On 22 Feb 2018, at 17:32, Sathyanarayan Rao <sathyanarayan.rao at uclouvain.be> wrote:
>
> Is it possible to extract associated line loop with each rectangle command so that I can define a plane surface with line loops that forms holes of first ones ?
>
The Boundary operator will give you the bounding curves ; I guess you could reconstruct the loop from that.
But why not just use BooleanFragment of the 2 surfaces? This will automatically define the exterior and the interior.
>
> Best Regards,
>
> Sathyanarayan Rao, PhD student
> Earth and Life Institute/Environmental Sciences (ELI-e)
> Université catholique de Louvain
> c.037, Croix du Sud 2, Louvain-la-Neuve, Belgium
> Phone: 010473827 ( intercom 73827)
> From: Christophe Geuzaine <cgeuzaine at uliege.be>
> Sent: 22 February 2018 17:25:27
> To: Sathyanarayan Rao
> Cc: gmsh at onelab.info
> Subject: Re: [Gmsh] Line loop and Open cascade
>
>
>
>> On 22 Feb 2018, at 16:47, Sathyanarayan Rao <sathyanarayan.rao at uclouvain.be <mailto:sathyanarayan.rao at uclouvain.be>> wrote:
>>
>> If I put
>> SetFactory("OpenCASCADE");
>>
>> in the first line, then it gives me different error saying "unknown line loop with tag1"
>
> Yes, there is no line loop 1 in your geometry... Only a surface 1 ("Rectangle" creates a surface...)
>
>>
>> // mesh size description
>> SetFactory("OpenCASCADE");
>>
>> cl_1 = 0.3;
>> cl_2 = 0.02;
>> cl3 = 0.02;
>> Mesh.CharacteristicLengthMax = 40;
>> extend = 15;
>>
>> // define inversion region
>>
>> Point(1) = {-0.05, 0.005, 0, cl_2};
>> Point(2) = {7.25, 0.005, 0, cl_2};
>> Point(3) = {7.25, -1.45, 0, cl_2};
>> Point(4) = {-0.05, -1.45, 0, cl_2};
>>
>> // define bounding box
>>
>> Point(5) = {-0.05-extend, 0.005, 0, cl_1};
>> Point(6) = {7.25+extend, 0.005, 0, cl_1};
>> Point(7) = {7.25+extend, -1.45-extend, 0, cl_1};
>> Point(8) = {-0.05-extend, -1.45-extend, 0, cl_1};
>>
>> Line(1) = {1, 2};
>> Line(2) = {2, 6};
>> Line(3) = {6, 7};
>> Line(4) = {7, 8};
>> Line(5) = {8, 5};
>> Line(6) = {5, 1};
>> Line(7) = {1, 4};
>> Line(8) = {4, 3};
>> Line(9) = {3, 2};
>>
>> // Definition of regions
>> Line Loop(101) = {2, 3, 4, 5, 6, 7, 8, 9};
>> Plane Surface(102) = {101}; // Outer box
>> Line Loop(105) = {1, -9, -8, -7};
>>
>>
>> // geological body
>>
>> Rectangle(1) = {0.1, -0.2, 0, 0.5, 0.1, 0};
>> Rectangle(2) = {0.1, -1.0, 0, 0.3, 0.7, 0};
>> Rectangle(3) = {3.1, -0.6, 0, 1, 0.5, 0};
>> Rectangle(4) = {4.2, -1.2, 0, 1, 0.5, 0};
>> Rectangle(5) = {5.6, -0.9, 0, 1, 0.5, 0};
>> Plane Surface(110) = {105,1,2,3,4,5}; // Inner box without geological body
>>
>>
>> // Definition of boundaries
>> Physical Line(1) = {6, 2, 1}; // Free surface
>> Physical Line(2) = {3,4, 5}; // Mixed boundary conditions
>>
>> // Definition of physical regions
>> Physical Surface(1) = {102}; // No-inversion region
>> Physical Surface(2) = {110}; // Inversion region
>> Physical Surface(3) = {1}; // Geological body 1
>> Physical Surface(4) = {2}; // Geological body 2
>> Physical Surface(5) = {3}; // Geological body 3
>> Physical Surface(6) = {4}; // Geological body 4
>> Physical Surface(7) = {5}; // Geological body 5
>>
>>
>> Best Regards,
>>
>> Sathyanarayan Rao, PhD student
>> Earth and Life Institute/Environmental Sciences (ELI-e)
>> Université catholique de Louvain
>> c.037, Croix du Sud 2, Louvain-la-Neuve, Belgium
>> Phone: 010473827 ( intercom 73827)
>> From: Christophe Geuzaine <cgeuzaine at uliege.be <mailto:cgeuzaine at uliege.be>>
>> Sent: 22 February 2018 16:36:35
>> To: Sathyanarayan Rao
>> Cc: gmsh at onelab.info <mailto:gmsh at onelab.info>
>> Subject: Re: [Gmsh] Line loop and Open cascade
>>
>>
>>
>>> On 22 Feb 2018, at 12:56, Sathyanarayan Rao <sathyanarayan.rao at uclouvain.be <mailto:sathyanarayan.rao at uclouvain.be>> wrote:
>>>
>>> Dear gmsh team,
>>>
>>> Is it not possible to use both line loop type surface definition and open cascade rectangle. I always have problem with using both.
>>
>> Sure you can: but you need to put SetFactory("OpenCASCADE") at the begining of your file: otherwise you create the first entities with the built-in CAD kernel ; and the rest (after SetFactory) with open cascade.
>>
>>
>>>
>>> For example in the below code, surface 105 is unrecognized !
>>>
>>> // mesh size description
>>>
>>> cl_1 = 0.3;
>>> cl_2 = 0.02;
>>> cl3 = 0.02;
>>> Mesh.CharacteristicLengthMax = 40;
>>> extend = 15;
>>>
>>> // define inversion region
>>>
>>> Point(1) = {-0.05, 0.005, 0, cl_2};
>>> Point(2) = {7.25, 0.005, 0, cl_2};
>>> Point(3) = {7.25, -1.45, 0, cl_2};
>>> Point(4) = {-0.05, -1.45, 0, cl_2};
>>>
>>> // define bounding box
>>>
>>> Point(5) = {-0.05-extend, 0.005, 0, cl_1};
>>> Point(6) = {7.25+extend, 0.005, 0, cl_1};
>>> Point(7) = {7.25+extend, -1.45-extend, 0, cl_1};
>>> Point(8) = {-0.05-extend, -1.45-extend, 0, cl_1};
>>>
>>> Line(1) = {1, 2};
>>> Line(2) = {2, 6};
>>> Line(3) = {6, 7};
>>> Line(4) = {7, 8};
>>> Line(5) = {8, 5};
>>> Line(6) = {5, 1};
>>> Line(7) = {1, 4};
>>> Line(8) = {4, 3};
>>> Line(9) = {3, 2};
>>>
>>> // Definition of regions
>>> Line Loop(101) = {2, 3, 4, 5, 6, 7, 8, 9};
>>> Plane Surface(102) = {101}; // Outer box
>>> Line Loop(105) = {1, -9, -8, -7};
>>>
>>>
>>> // geological body
>>>
>>> SetFactory("OpenCASCADE");
>>> Rectangle(1) = {0.1, -0.2, 0, 0.5, 0.1, 0};
>>> Rectangle(2) = {0.1, -1.0, 0, 0.3, 0.7, 0};
>>> Rectangle(3) = {3.1, -0.6, 0, 1, 0.5, 0};
>>> Rectangle(4) = {4.2, -1.2, 0, 1, 0.5, 0};
>>> Rectangle(5) = {5.6, -0.9, 0, 1, 0.5, 0};
>>> Plane Surface(110) = {105,1,2,3,4,5}; // Inner box without geological body
>>>
>>>
>>> // Definition of boundaries
>>> Physical Line(1) = {6, 2, 1}; // Free surface
>>> Physical Line(2) = {3,4, 5}; // Mixed boundary conditions
>>>
>>> // Definition of physical regions
>>> Physical Surface(1) = {102}; // No-inversion region
>>> Physical Surface(2) = {110}; // Inversion region
>>> Physical Surface(3) = {1}; // Geological body 1
>>> Physical Surface(4) = {2}; // Geological body 2
>>> Physical Surface(5) = {3}; // Geological body 3
>>> Physical Surface(6) = {4}; // Geological body 4
>>> Physical Surface(7) = {5}; // Geological body 5
>>>
>>>
>>>
>>> Best Regards,
>>>
>>> Sathyanarayan Rao, PhD student
>>> Earth and Life Institute/Environmental Sciences (ELI-e)
>>> Université catholique de Louvain
>>> c.037, Croix du Sud 2, Louvain-la-Neuve, Belgium
>>> Phone: 010473827 ( intercom 73827)
>>> _______________________________________________
>>> gmsh mailing list
>>> gmsh at onelab.info <mailto:gmsh at onelab.info>
>>> http://onelab.info/mailman/listinfo/gmsh <http://onelab.info/mailman/listinfo/gmsh>
>> —
>> Prof. Christophe Geuzaine
>> University of Liege, Electrical Engineering and Computer Science
>> http://www.montefiore.ulg.ac.be/~geuzaine <http://www.montefiore.ulg.ac.be/~geuzaine>
>>
>> Free software: http://gmsh.info <http://gmsh.info/> | http://getdp.info <http://getdp.info/> | http://onelab.info <http://onelab.info/>
> —
> Prof. Christophe Geuzaine
> University of Liege, Electrical Engineering and Computer Science
> http://www.montefiore.ulg.ac.be/~geuzaine <http://www.montefiore.ulg.ac.be/~geuzaine>
>
> Free software: http://gmsh.info | http://getdp.info | http://onelab.info
—
Prof. Christophe Geuzaine
University of Liege, Electrical Engineering and Computer Science
http://www.montefiore.ulg.ac.be/~geuzaine
Free software: http://gmsh.info | http://getdp.info | http://onelab.info
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://onelab.info/pipermail/gmsh/attachments/20180222/a7385ec6/attachment-0001.html>
More information about the gmsh
mailing list