[Dune] Gmsh reader crashes when using the grid factory read for ALUSimpleGRid<3, 3> with boundary id

Andreas Dedner dedner at mathematik.uni-freiburg.de
Wed Oct 14 12:17:51 CEST 2009


There are two method for doing something at the boundaries:
1) the one in the interface with the default implementation;
    this method is used in UG and does not have the possibility to
    set boundary ids as far as I know
2) the method
     virtual void
     insertBoundary ( const GeometryType &geometry,
                      const std::vector< unsigned int > &faceVertices,
                      const int id );
    used in the ALU factory which supports boundary ids.

So the ALUGridFactory has the method you need - I did a search for this
in the gmeshreader and could not find anything. So prehaps Peter can
comment on how IDs can be handled through the gmsh reader?
Andreas

Oswald Benedikt wrote:
> Hi Again, thanks for the feeback!
> 
> Yes, we definitely need boundary id's, since boundary conditions in electromagnetics are very critical
> (as they certainly are in other fields of physics as well) and may vary over the boundary considerably.
> 
> For example, we will very soon have a postdoc here who will even need fictitious boundaries, i.e. internal boundaries
> that are used for evaluating electric and magnetic currents that are then used for evaluating Green's
> functions on the real boundary, the subject is discontinuous Galerkin methods combined with
> boundary integrals in order to achieve an accurate absorbing boundary conditions that can be
> placed very close to radiating structures, the application is in nano-optics.
> 
> I do not know how to do this in DUNE at the moment, but I think other fields may need this as well.
> 
> BUT, at the moment, boundary id's on the outside boundary would already be very useful.
> 
> As far as I can see from the gmshreader docu, it does support boundary id's.
> Peter Implented them in July or so.
> 
> Therefore, if you could reconsider implementing them, this would be appreciated very much!
> 
> Have a great day, Benedikt
> 
> 
> ------------------------------------------------------------------------------------------------------------------
> Benedikt Oswald, Dr. sc. techn., dipl. El. Ing. ETH, www.psi.ch, Computational Accelerator Scientist
> Paul Scherrer  Institute (PSI), CH-5232 Villigen, Suisse, benedikt.oswald at psi.ch, +41(0)56 310 32 12
> "Passion is required for any great work, and for the Revolution passion and audacity are required in big doses.", 
> Ernesto 'Che' Guevara, Letter to his parents.
> http://maxwell.psi.ch/amaswiki/index.php/User:BenediktOswald 
> ------------------------------------------------------------------------------------------------------------------
> 
> 
> 
> 
> -----Original Message-----
> From: Andreas Dedner [mailto:dedner at mathematik.uni-freiburg.de]
> Sent: Wed 14.10.2009 11:42
> To: Oswald Benedikt
> Cc: dune at dune-project.org
> Subject: Re: [Dune] Gmsh reader crashes when using the grid factory read for ALUSimpleGRid<3, 3> with boundary id
>  
> Hi,
> 
> I agree that gmsh support for ALU would be nice - but it is not so much 
> an ALU problem as a gmsh reader problem IMO.
> Thus I would say that the flyspray task was not critical bug in ALU but 
> more a feature request for the gmsh reader :-) But since the boundary
> insertion method are not standard this might be difficult to add
> to the gmsh reader at the moment.
> 
> The problem with the misleading documentation is in
> fact that the method is available on the interface class with a default
> implementation (a DUNE_THROW). The method is then not overloaded in
> the alugrid factory and thus not only inherits the method but also
> its documentation. As I already said, the interface methods for 
> inserting boundaries has not been fixed yet.
> 
> Do you actually need boundary ids? If so I think the gmsh reader does
> not support these (as far as I know).
> 
> Best Andreas
> 
> 
> Oswald Benedikt wrote:
>> Hi ALU Developers, I am mildly suprised about your comments.
>>
>> Wouldn't it be good to provide different methods for mesh input into ALUGrid quite soon,
>> particularly when there is a need from users ?
>>
>> This is not about deprecating DGF, by the way, be assured!
>>
>> I might add that, here, we use probably dozens of grids that we created in GMSH
>> and then, with some effort, convert into the DGF format, which we still plan rto use intensively.
>>
>> Anyway, the documentation of Dune::GridFactory< ALUSimplexGrid< 3, 3 > > Class Template Reference
>> (http://www.dune-project.org/doc/doxygen/dune-grid-html/classDune_1_1GridFactory_3_01ALUSimplexGrid_3_013_00_013_01_4_01_4.html#_details)
>> says that the method virtual void
>>
>> "insertBoundarySegment (const std::vector< unsigned int > vertices, const BoundarySegment< dimension, dimworld > *boundarySegment)
>>  	Method to insert an arbitrarily shaped boundary segment into a coarse grid. "
>>
>> is here. 
>>
>> That is the source of my quite convinced feeling that it should be available.
>>
>>
>> More, or even most, importantly, reading large meshes from the DGF format, may not be ultra-fast after all.
>>
>> When I say large, I mean 10^5 or more tetrahedral elements. This is the size of the meshes that we have to cope
>> with here when running electromagnetic simulations and I think for ALUGrid to be relevant in the future
>> it must address users's needs.
>>
>> After all, I have always believed that DUNE and its external libraries are
>> a great achievement, meant to be capable of solving today's and tomorrow's large problems.
>>
>>
>> Have a great day! Benedikt
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>> S#624 - [Dune] Gmsh reader crashes when using the grid factory read for ALUSimpleGRid<3, 3> with boundary id
>>> User who did this - Robert Klöfkorn (robertk)
>>> ----------
>>> This feature is not supported yet. I don't know you got the feeling that it is implemented. There will be an anouncement on the mailing list when the gmsh boundary ids are supported. Until then: DON'T USE IT !!! 
>>
>>
>>
>> ------------------------------------------------------------------------------------------------------------------
>> Benedikt Oswald, Dr. sc. techn., dipl. El. Ing. ETH, www.psi.ch, Computational Accelerator Scientist
>> Paul Scherrer  Institute (PSI), CH-5232 Villigen, Suisse, benedikt.oswald at psi.ch, +41(0)56 310 32 12
>> "Passion is required for any great work, and for the Revolution passion and audacity are required in big doses.", 
>> Ernesto 'Che' Guevara, Letter to his parents.
>> http://maxwell.psi.ch/amaswiki/index.php/User:BenediktOswald 
>> ------------------------------------------------------------------------------------------------------------------
>>
>>
>>
>> _______________________________________________
>> Dune mailing list
>> Dune at dune-project.org
>> http://lists.dune-project.org/mailman/listinfo/dune
> 




More information about the Dune mailing list