MGlocken | 4 Jun 09:45 2008
Picon

IGES import and mesh refinement

Hi all,
 
I have successfully imported an IGES-file to Gmsh 2.2 (Windows XP). Meshing works fine with different characteristic length factors set in Options-Mesh-General.
 
Now I would like to refine the mesh on some certain points. How can I do this?
 
 
A picture of the geometry can be seen here: http://www.femcfd.com/gmsh-2-2-iges-datei-laden.html
 
And a picture of the mesh is presented here: http://www.femcfd.com/gmsh-2-2-iges-modell-vernetzt.html
 
 
Greetings,

Michael Glockenmeier

----------------------------------------------
Fa. Michael Glockenmeier
Dipl.-Ing. Michael Glockenmeier
Hauptstr. 55 c
D-86926 Greifenberg
Germany

Tel ++49 (0) 8192/933 185
Fax ++49 (0) 8192/933 186
Email mglocken-YDxpq3io04c@public.gmane.org
---------------------------------------------
_______________________________________________
gmsh mailing list
gmsh@...
http://www.geuz.org/mailman/listinfo/gmsh
Jean-Fran?çois Remacle | 4 Jun 10:12 2008
Picon

Re: IGES import and mesh refinement

MGlocken@... a écrit :
> Hi all,
>  
Hi Michael,

> I have successfully imported an IGES-file to Gmsh 2.2 (Windows XP). 
> Meshing works fine with different characteristic length factors set in 
> Options-Mesh-General.
>  
> Now I would like to refine the mesh on some certain points. How can I 
> do this?
>  
Yes.

The first thing you should do is to enable gmsh to sew the faces of your 
iges. This is not absolutely necessary.

In Gmsh, you can define various mesh size fields. One common way to do 
so is to define characteristic lengths
at  model vertices.  You shouls therefore start by creating a file, e.g. 
model1.geo.

In this file, you add the 2 lines

Geometry.Tolerance = 0.01; // Geometrical tolerance
Geometry.OCCSewFaces = 1; // Sew faces in STEP, IGES and BRep models
Merge "model1.igs";

Loading the file "model1.geo" is equivalent to load "model1.igs" and sew 
the faces with
a geometric tolerance of 0.01 mm.

Now, you can use the GUI to change characteristic lengths at vertices

Characteristic Length

{3,8,2,1,33,32,4,5,6,7,10,9,12,11,25,34,24,26,40,35,39,37,19,27,14,20,28,13,16,15,17,18,29,30,31,42,41,38,36,23,22,21} 
= 100;
Characteristic Length {41,38,36} = 10;

jfr

> The IGES-file is listed here: 
> http://www.femcfd.com/assets/files/model1_igs.txt
> (or click on link in 
>  http://www.femcfd.com/gmsh-2-2-iges-datei-listing.html )
>  
> A picture of the geometry can be seen here: 
> http://www.femcfd.com/gmsh-2-2-iges-datei-laden.html
>  
> And a picture of the mesh is presented here: 
> http://www.femcfd.com/gmsh-2-2-iges-modell-vernetzt.html
>  
>  
> Greetings,
>
> Michael Glockenmeier
>
> ----------------------------------------------
> Fa. Michael Glockenmeier
> Dipl.-Ing. Michael Glockenmeier
> Hauptstr. 55 c
> D-86926 Greifenberg
> Germany
>
> Tel ++49 (0) 8192/933 185
> Fax ++49 (0) 8192/933 186
> Email mglocken@... <mailto:mglocken@...>
> ---------------------------------------------
> ------------------------------------------------------------------------
>
> _______________________________________________
> gmsh mailing list
> gmsh@...
> http://www.geuz.org/mailman/listinfo/gmsh
>   

--

-- 
Prof. Jean-Francois Remacle
Universite catholique de Louvain (UCL)
Ecole Polytechnique de Louvain (EPL) - Louvain School of Engineering
Institute of Mechanics, Materials and Civil Engineering (iMMC) 
Tel : +32-10-472082 -- Mobile : +32-473-909930 
MGlocken | 4 Jun 11:22 2008
Picon

Re: IGES import and mesh refinement

Hello Jean-Francois,
 
Thank you very much for your fast reply. It works fine!
 
I have written it in a new blog entry: http://www.femcfd.com/gmsh-netzverdichtung.html
 
 
Greetings,

   Michael Glockenmeier

----------------------------------------------
Fa. Michael Glockenmeier
Dipl.-Ing. Michael Glockenmeier
Hauptstr. 55 c
D-86926 Greifenberg
Germany

Tel ++49 (0) 8192/933 185
Fax ++49 (0) 8192/933 186
Email mglocken-YDxpq3io04c@public.gmane.org
---------------------------------------------
_______________________________________________
gmsh mailing list
gmsh@...
http://www.geuz.org/mailman/listinfo/gmsh
Vladimir Pavlov | 4 Jun 15:32 2008
Picon

isolines

hello to all


i wander is there any way to draw isolines on gradient color field using gmsh

?

_______________________________________________
gmsh mailing list
gmsh@...
http://www.geuz.org/mailman/listinfo/gmsh
Shi Jin | 5 Jun 00:20 2008
Picon

Enforced vertexes on plane for parallel domain decomposition

Hi there,

I have been developing a parallel code to simulate particles flowing in fluids. We are using the mesh
generated by gmsh for unstructured grids (Tetrahedra in 3D) and are quite impressed with it. Thank you.

Our code runs in MPI and the mesh is first read in by the master process and distributed into  pieces using
graph partitioners such as  ParMetis  or Chaco.  However,  although  the partition may be  optimal to reduce
parallel communication, it is not very good for tracking particles moving across domain interfaces.
Therefore, we want to enforce a simple division between processes, specifically using a straight line in
2D or a plane surface in 3D. This way, it is trivial to figure out which processes the particle belongs to.
For an example in 2D, please see the attached image, where a domain is divided into two parts by a straight line.

Then I have a problem generating the correct mesh for this purpose. The correct mesh should be one that has no
element belonging to more than one process at the same time. Let's talk about the 2D example shown in the
attachment.  I would like to enforce the vertexes to be on the dividing line in the middle of the domain while
the default behavior does not guarantee that. So I am wondering if there is any advanced technique I can use
to instruct gmsh to generate the correct mesh. 

My naive guess would be to first enforce vertexes on the dividing line and make sure they are the only ones
used near the interface. Another possibility is to first generate the incorrect mesh and then subdivide
the bridging elements into smaller ones that are on one side or the other. But I have no idea how to do any of those.

I would really appreciate your help. Thank you very much.

Regards,
Shi

 --
Shi Jin, PhD

      
_______________________________________________
gmsh mailing list
gmsh@...
http://www.geuz.org/mailman/listinfo/gmsh
David Colignon | 5 Jun 09:09 2008
Picon

Re: Enforced vertexes on plane for parallel domain decomposition


Shi Jin wrote:
> Hi there,
> 
> I have been developing a parallel code to simulate particles flowing in fluids. We are using the mesh
generated by gmsh for unstructured grids (Tetrahedra in 3D) and are quite impressed with it. Thank you.
> 
> Our code runs in MPI and the mesh is first read in by the master process and distributed into  pieces using
graph partitioners such as  ParMetis  or Chaco.  However,  although  the partition may be  optimal to reduce
parallel communication, it is not very good for tracking particles moving across domain interfaces.
Therefore, we want to enforce a simple division between processes, specifically using a straight line in
2D or a plane surface in 3D. This way, it is trivial to figure out which processes the particle belongs to.
> For an example in 2D, please see the attached image, where a domain is divided into two parts by a straight line.
> 
> Then I have a problem generating the correct mesh for this purpose. The correct mesh should be one that has
no element belonging to more than one process at the same time. Let's talk about the 2D example shown in the
attachment.  I would like to enforce the vertexes to be on the dividing line in the middle of the domain while
the default behavior does not guarantee that. So I am wondering if there is any advanced technique I can use
to instruct gmsh to generate the correct mesh. 
> 

Hi Shi,

the easiest way is to define TWO surfaces, each one having the dividing line in common

Cheers,

Dave

-- 
David Colignon, Ph.D.
Collaborateur Logistique F.R.S.-FNRS (Equipements de Calcul Intensif)
ACE - Applied & Computational Electromagnetics
Institut Montefiore B28
Université de Liège
4000 Liège - BELGIQUE
Tél: +32 (0)4 366 37 32
Fax: +32 (0)4 366 29 10
WWW:    http://www.montefiore.ulg.ac.be/personnel.php?op=detail&id=898
Agenda: http://www.google.com/calendar/embed?src=david.colignon%40gmail.com

> My naive guess would be to first enforce vertexes on the dividing line and make sure they are the only ones
used near the interface. Another possibility is to first generate the incorrect mesh and then subdivide
the bridging elements into smaller ones that are on one side or the other. But I have no idea how to do any of those.
> 
> I would really appreciate your help. Thank you very much.
> 
> Regards,
> Shi
> 
>  --
> Shi Jin, PhD
> 
> 
> 
>       
> 
> 
> ------------------------------------------------------------------------
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> gmsh mailing list
> gmsh@...
> http://www.geuz.org/mailman/listinfo/gmsh
Michael Grant | 5 Jun 11:57 2008
Picon

Extrude point numbers

Hello all,

I am trying to modify the Gmsh and Getdp example of "Torus3d", and while it is
explicitly listed as a Getdp example my query is with the geometry of the problem.

As I understand it, the torus is formed by specifying four points then linking
the points together with four lines which are then rotationally extruded
around a line-point combination.  The lines are combined to form a line loop
which is then defined as a "Plane surface" and finally defined as a "Physical
surface" and assigned the number 66.

My query is as follows: around line 100 in torus3d.geo is the statement
Physical Surface(79) = {70,74,78,66};

And in torus3d.pro the coil region is assigned number 79.

While I can see the origin of the number 66 in the assignment of Physical
Surface(79), where do the surfaces 70, 74 and 78 arise from?

How could one query the geometry to find this out.  I have tried the "inspect"
mode with no luck.

Your advice would be greatly appreciated.

Kind regards, Michael Grant.

<html><p><font face = "verdana" size = "0.8" color = "navy">This communication is intended for the
addressee only. It is confidential. If you have received this communication in error, please notify us
immediately and destroy the original message. You may not copy or disseminate this communication
without the permission of the University. Only authorized signatories are competent to enter into
agreements on behalf of the University and recipients are thus advised that the content of this message
may not be legally binding on the University and may contain the personal views and opinions of the author,
which are not necessarily the views and opinions of The University of the Witwatersrand, Johannesburg.
All agreements between the University and outsiders are subject to South African Law unl
 ess the University agrees in writing to the contrary.</font></p></html>
Vuk Milisic | 5 Jun 10:59 2008
Picon
Picon

freefemm++

Goodmorning,

I wonder if gmsh
1.61.0-nightly-20050929
is able to write freefem++
mesh files ? If not is there
already a parser ?

Thanks a lot,

Vuk Milisic

--

-- 

-----------------------------------
Vuk Milisic
Chargé de Recherche
LJK-IMAG UMR 5523
51, rue des Mathematiques -  B. P. 53 
38041 Grenoble Cedex 9  France 
Office   n° 66
Tel:  +33 4 76 63 57 38
Fax:  +33 4 76 63 12 63
http://ljk.imag.fr/membres/Vuk.Milisic/
-----------------------------------
Shi Jin | 5 Jun 22:24 2008
Picon

Re: Enforced vertexes on plane for parallel domain decomposition

Thank you very much David.
I tried to what you suggested and it is working.
Please see the attached image.
The .geo file looks like :
Point(1) = {-2, 0, 4, element_dim} ;
Point(2) = {2, 0, 0, element_dim} ;
Point(3) = {2, 0, 9, element_dim};
Point(4) = {-2, 0, 9, element_dim};

Point(5) = {-2, 0, 5, element_dim};
Point(6) = {2, 0, 5, element_dim};

Line(11) = {1,2};
Line(12) = {2,6};
Line(13) = {6,5};
Line(14) = {5,1};

Line(15)={6,3};
Line(16)={3,4};
Line(17)={4,5};

Line Loop (21)={11,12,13,14};
Line Loop (22)={-13,15,16,17};

Plane Surface(31) = {21};
Plane Surface(32) = {22};

However, this process requires a lot of manual input and can be very tedious for large domains divided into
many pieces. I am wondering if there is any tricks in Gmsh that can help me reduce the work, such as breaking a
large line loop into two overlapping smaller ones.

Thanks again.
--
Shi Jin, PhD

----- Original Message ----
> From: David Colignon <David.Colignon@...>
> To: Shi Jin <jinzishuai@...>
> Cc: gmsh@...
> Sent: Thursday, June 5, 2008 1:09:48 AM
> Subject: Re: [Gmsh] Enforced vertexes on plane for parallel domain decomposition
> 
> 
> 
> Shi Jin wrote:
> > Hi there,
> > 
> > I have been developing a parallel code to simulate particles flowing in 
> fluids. We are using the mesh generated by gmsh for unstructured grids 
> (Tetrahedra in 3D) and are quite impressed with it. Thank you.
> > 
> > Our code runs in MPI and the mesh is first read in by the master process and 
> distributed into  pieces using graph partitioners such as  ParMetis  or Chaco.  
> However,  although  the partition may be  optimal to reduce parallel 
> communication, it is not very good for tracking particles moving across domain 
> interfaces. Therefore, we want to enforce a simple division between processes, 
> specifically using a straight line in 2D or a plane surface in 3D. This way, it 
> is trivial to figure out which processes the particle belongs to.
> > For an example in 2D, please see the attached image, where a domain is divided 
> into two parts by a straight line.
> > 
> > Then I have a problem generating the correct mesh for this purpose. The 
> correct mesh should be one that has no element belonging to more than one 
> process at the same time. Let's talk about the 2D example shown in the 
> attachment.  I would like to enforce the vertexes to be on the dividing line in 
> the middle of the domain while the default behavior does not guarantee that. So 
> I am wondering if there is any advanced technique I can use to instruct gmsh to 
> generate the correct mesh. 
> > 
> 
> Hi Shi,
> 
> the easiest way is to define TWO surfaces, each one having the dividing line in 
> common
> 
> Cheers,
> 
> Dave
> 
> -- 
> David Colignon, Ph.D.
> Collaborateur Logistique F.R.S.-FNRS (Equipements de Calcul Intensif)
> ACE - Applied & Computational Electromagnetics
> Institut Montefiore B28
> Université de Liège
> 4000 Liège - BELGIQUE
> Tél: +32 (0)4 366 37 32
> Fax: +32 (0)4 366 29 10
> WWW:    http://www.montefiore.ulg.ac.be/personnel.php?op=detail&id=898
> Agenda: http://www.google.com/calendar/embed?src=david.colignon%40gmail.com
> 
> 
> 
> > My naive guess would be to first enforce vertexes on the dividing line and 
> make sure they are the only ones used near the interface. Another possibility is 
> to first generate the incorrect mesh and then subdivide the bridging elements 
> into smaller ones that are on one side or the other. But I have no idea how to 
> do any of those.
> > 
> > I would really appreciate your help. Thank you very much.
> > 
> > Regards,
> > Shi
> > 
> >  --
> > Shi Jin, PhD
> > 
> > 
> > 
> >      
> > 
> > 
> > ------------------------------------------------------------------------
> > 
> > 
> > ------------------------------------------------------------------------
> > 
> > _______________________________________________
> > gmsh mailing list
> > gmsh@...
> > http://www.geuz.org/mailman/listinfo/gmsh

      
_______________________________________________
gmsh mailing list
gmsh@...
http://www.geuz.org/mailman/listinfo/gmsh
Laurent Schwaederle | 6 Jun 00:16 2008
Picon

Re: Extrude point numbers

Michael Grant a écrit :
> Hello all,
>
> I am trying to modify the Gmsh and Getdp example of "Torus3d", and while it is
> explicitly listed as a Getdp example my query is with the geometry of the problem.
>
> As I understand it, the torus is formed by specifying four points then linking
> the points together with four lines which are then rotationally extruded
> around a line-point combination.  The lines are combined to form a line loop
> which is then defined as a "Plane surface" and finally defined as a "Physical
> surface" and assigned the number 66.
>
> My query is as follows: around line 100 in torus3d.geo is the statement
> Physical Surface(79) = {70,74,78,66};
>
> And in torus3d.pro the coil region is assigned number 79.
>
> While I can see the origin of the number 66 in the assignment of Physical
> Surface(79), where do the surfaces 70, 74 and 78 arise from?
>
> How could one query the geometry to find this out.  I have tried the "inspect"
> mode with no luck.
>
> Your advice would be greatly appreciated.
>
> Kind regards, Michael Grant.
>
>
>
> <html><p><font face = "verdana" size = "0.8" color = "navy">This communication is intended for the
addressee only. It is confidential. If you have received this communication in error, please notify us
immediately and destroy the original message. You may not copy or disseminate this communication
without the permission of the University. Only authorized signatories are competent to enter into
agreements on behalf of the University and recipients are thus advised that the content of this message
may not be legally binding on the University and may contain the personal views and opinions of the author,
which are not necessarily the views and opinions of The University of the Witwatersrand, Johannesburg.
All agreements between the University and outsiders are subject to South African Law unless the
University agrees in writing to the contrary.</font></p></html>
> _______________________________________________
> gmsh mailing list
> gmsh <at> geuz.org
> http://www.geuz.org/mailman/listinfo/gmsh
>
>
>   

_______________________________________________
gmsh mailing list
gmsh <at> geuz.org
http://www.geuz.org/mailman/listinfo/gmsh

Gmane