[Dune] parallel DUNE grid for implementing a spherical shell (UGGrid)

Eike Mueller e.mueller at bath.ac.uk
Mon Nov 5 20:24:23 CET 2012


Hi Oliver,

no, it either crashed or did nothing. I attach the updated code.

Thanks, Eike


On 5 Nov 2012, at 19:22, Oliver Sander wrote:

> Hi Eike,
> as mentioned, this is a hardly tested feature.  Can you send me an updated test
> program?  Did you find any rule (besides RED) that does anything?
> best,
> Oliver
> 
> Am 05.11.2012 20:14, schrieb Eike Mueller:
>> 
>> Hi Oliver,
>> 
>> thanks a lot, I think that's what I was looking for. I've now tried the following RefinementRules, but with little success:
>> 
>> RED: I get the previous refinement in all three directions
>> BLUE, COARSE: Nothing happens, i.e. elements do not get refined
>> 
>> For
>> 
>> HEX_BISECT_0_1,
>> HEX_BISECT_0_2,
>> HEX_BISECT_0_3,
>> HEX_TRISECT_0,
>> HEX_TRISECT_5,
>> HEX_QUADSECT_0,
>> HEX_QUADSECT_1,
>> HEX_QUADSECT_2
>> 
>> I always get the following runtime error:
>> 
>> ERROR in Patterns2Rules: no mapping for HEXAHEDRON and this pattern!
>> uggrid: rm.c:2838: UG::INT UG::D3::Patterns2Rules(UG::D3::ELEMENT*, UG::INT): Assertion `0' failed.
>> 
>> so I must still be missing something. I loop over the grid like this:
>> 
>> for (ElementLeafIterator it = ibegin;it!=iend;++it) {
>>       grid.mark(*it,UG::D3::PRISM_QUADSECT,0);
>> }
>> 
>> Eike
>> 
>> On 5 Nov 2012, at 17:01, Oliver Sander wrote:
>> 
>>> 
>>> 
>>> Hi Eike,
>>> 
>>> Am 05.11.2012 17:45, schrieb Eike Mueller:
>>>> 
>>>> Dear dune-list,
>>>> 
>>>> (1) How can I ensure that the grid is not refined in the radial direction, i.e. I always only end up with one layer of cells in the radial direction? I guess I have to run over the grid and mark cells for refinement, but is this documented anywhere in more detail?
>>> UGGrid has a special non-interface method for anisotropic refinement.  Have a look
>>> at the doxygen documentation of the UGGrid class.  There is a method
>>> 
>>> bool mark (const typename Traits::template Codim< 0 >::Entity &e, typename UG_NS< dim >::RefinementRule rule, int side=0)
>>> 
>>> which marks the entity 'e' for refinement, but with a special refinement rule.
>>> The list of rules is UG-specific and has not been properly documented (Freiwillige vor!).
>>> You find all possible enum values in the UG header ug/gm.h at line 317ff
>>> They are reasonably self-explanatory, but you need to do some experimenting.
>>> 
>>>> (2) The parallel load balancing does not seem to work. If I run on 24 processes and I call globalRefine(), followed by loadBalance(), some processes end up with no part of the grid. I have checked that I use the parallel version of UG grid.
>>>> 
>>>> I attach the code I used to generate the grid, as well as the .vtu files mentioned above.
>>> No clue, I'd have to try this out myself.
>>> cheers,
>>> Oliver
>>> 
>>>> Thanks a lot for any help,
>>>> 
>>>> Eike
>>>> 
>>>> PS: Alternatively, I would also be equaully happy if I can create a PARALLEL 2d surface grid for the surface of the sphere (again, either cubed sphere or a icosahedral grid). However, as far as I can see it, there is no parallel implementation for this, we've tried 2d ALUGRID, parallelised with the metagrid approach, but this does not scale beyond a few hundred processors as the entire grid is stored on each processor and my code runs out of memory.
>>>> 
>>>> 
>>>> 
>>>> _______________________________________________
>>>> Dune mailing list
>>>> Dune at dune-project.org
>>>> http://lists.dune-project.org/mailman/listinfo/dune
>>> 
>>> 
>>> _______________________________________________
>>> Dune mailing list
>>> Dune at dune-project.org
>>> http://lists.dune-project.org/mailman/listinfo/dune
>> 
> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.dune-project.org/pipermail/dune/attachments/20121105/865697a4/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: uggrid.cc
Type: application/octet-stream
Size: 11358 bytes
Desc: not available
URL: <https://lists.dune-project.org/pipermail/dune/attachments/20121105/865697a4/attachment.obj>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.dune-project.org/pipermail/dune/attachments/20121105/865697a4/attachment-0001.htm>


More information about the Dune mailing list