<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" style="display:none;"><!-- P {margin-top:0;margin-bottom:0;} --></style>
</head>
<body dir="ltr">
<div id="divtagdefaultwrapper" style="font-size:12pt;color:#000000;background-color:#FFFFFF;font-family:Calibri,Arial,Helvetica,sans-serif;">
<p>Hi Martin,</p>
<p>I prepared the smallest case I could do.</p>
<p>It is a bit slow because of the computation of the element parametrizations.</p>
<p>It will print at stdout the corners of the element (index 43) having the sick intersection from the geometry grid and from the host one and the corners of the sick intersection from both grids.</p>
<p>The intersection has index 3 in this element.</p>
<p>As you can see in the geometry grid case corners 0 and 1 of the intersection are not at the same position of corners 6 and 7 of the element.</p>
<p>In the case of the host grid everything works fine.</p>
<p>I would no say the bug is in dune, but I cannot understand why the intersection is not coherent with its element.</p>
<p>It is not evident from this code but the neighbour through this intersection is not coherent too. Its index is 1025.</p>
<div id="divtagdefaultwrapper" style="font-size:12pt;color:#000000;background-color:#FFFFFF;font-family:Calibri,Arial,Helvetica,sans-serif;">
<br>
</div>
<div id="divtagdefaultwrapper" style="font-size:12pt;color:#000000;background-color:#FFFFFF;font-family:Calibri,Arial,Helvetica,sans-serif;">
I remark that using the leaf mapper of the geometry grid crashes the run giving segmantation fault, see line 142 of intersectionBug.cc.</div>
<div id="divtagdefaultwrapper" style="font-size:12pt;color:#000000;background-color:#FFFFFF;font-family:Calibri,Arial,Helvetica,sans-serif;">
All the test I made are serial.</div>
<div id="divtagdefaultwrapper" style="font-size:12pt;color:#000000;background-color:#FFFFFF;font-family:Calibri,Arial,Helvetica,sans-serif;">
<br>
</div>
If you need more feel free to ask.<br>
Thanks for your help,
<div><br>
</div>
<div>Marco<br>
<div style="color: rgb(0, 0, 0);">
<hr tabindex="-1" style="display:inline-block; width:98%">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" color="#000000" style="font-size:11pt"><b>Da:</b> Marco Cisternino <marco.cisternino@optimad.it><br>
<b>Inviato:</b> giovedì 26 maggio 2016 14.12<br>
<b>A:</b> Martin Nolte; Dune<br>
<b>Oggetto:</b> Re: [Dune] Intersection area and corners</font>
<div> </div>
</div>
<div>
<div id="divtagdefaultwrapper" style="font-size:12pt; color:#000000; background-color:#FFFFFF; font-family:Calibri,Arial,Helvetica,sans-serif">
<p>Hi Martin,</p>
<p>I'll try to set up a small example.</p>
<p>The weird thing is that I have 2k elements in my coarse grid and this problem occurs for only 1 intersection. That's why I would like to see how the intersection is built, in order to understand if my code wrongly changes that intersection object.</p>
<p>Thanks.</p>
<p><br>
</p>
<p>Marco</p>
<br>
<br>
<div style="color:rgb(0,0,0)">
<div>
<hr tabindex="-1" style="display:inline-block; width:98%">
<div id="x_divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" color="#000000" style="font-size:11pt"><b>Da:</b> Martin Nolte <nolte@mathematik.uni-freiburg.de><br>
<b>Inviato:</b> mercoledì 25 maggio 2016 17.47<br>
<b>A:</b> Dune<br>
<b>Oggetto:</b> Re: [Dune] Intersection area and corners</font>
<div> </div>
</div>
</div>
<font size="2"><span style="font-size:10pt">
<div class="PlainText">Hi Marco,<br>
<br>
the intersection of GeometryGrid is based on the intersection of the host<br>
grid. Then, you use the geometryInInside and the element geometry (of the<br>
inside element) to build the global geometry of the intersection. So, in a<br>
conforming situation, the corners of the intersection should be a subset of<br>
the corners of the inside element.<br>
<br>
Therefore, I consider your question a bug. Can you provide a small example?<br>
<br>
Best,<br>
<br>
Martin<br>
<br>
On 05/25/2016 03:59 PM, Marco Cisternino wrote:<br>
> Thank you Martin for your quick reply.<br>
> <br>
> No, for the configuration I'm debugging I'm not dealing with non-conforming<br>
> elements. That's why I cannot really understand why intersection and element<br>
> are not coherent.<br>
> <br>
> How the intersection is built? I could look in the constructor to see why its<br>
> corners are not among the element corners.<br>
> <br>
> Thanks again<br>
> <br>
> <br>
> Marco<br>
> <br>
> <br>
> <br>
> <br>
> ------------------------------------------------------------------------------<br>
> *Da:* Martin Nolte <nolte@mathematik.uni-freiburg.de><br>
> *Inviato:* mercoledì 25 maggio 2016 11.00<br>
> *A:* Dune<br>
> *Oggetto:* Re: [Dune] Intersection area and corners<br>
>  <br>
> Hi Marco,<br>
> <br>
> I am not sure whether I get your question correctly. You seem to be comparing<br>
> the geometry of the inside element to the geometry of the intersection.<br>
> <br>
> This is only reasonable, if the intersection is conforming. Otherwise I expect<br>
> the corners to be different. Is it possible, that your intersection is<br>
> non-conforming?<br>
> <br>
> Please note the using GeometryGrid with non-conforming grid views is a bit<br>
> problematic. Basically you are creating a first order Lagrange function over a<br>
> non-conforming grid. If you don't constrain hanging nodes, the position of a<br>
> hanging node might not be on the edge of the bigger element but slightly moved.<br>
> <br>
> You might also want to have a look at the following merge request:<br>
> <br>
> <a href="https://gitlab.dune-project.org/core/dune-grid/merge_requests/60" id="LPlnk486277">
https://gitlab.dune-project.org/core/dune-grid/merge_requests/60</a>
<div id="LPBorder_GT_14642645768760.20894504770114586" style="margin-bottom:20px; overflow:auto; width:100%; text-indent:0px">
<table id="LPContainer_14642645768730.7664462709224151" cellspacing="0" style="width:90%; overflow:auto; padding-top:20px; padding-bottom:20px; margin-top:20px; border-top-width:1px; border-top-style:dotted; border-top-color:rgb(200,200,200); border-bottom-width:1px; border-bottom-style:dotted; border-bottom-color:rgb(200,200,200); background-color:rgb(255,255,255)">
<tbody>
<tr valign="top" style="border-spacing:0px">
<td id="ImageCell_14642645768740.23061529218670862" colspan="1" style="width:250px; display:table-cell; padding-right:20px">
<div id="LPImageContainer_14642645768740.6423216037044619" style="height:128px; margin:auto; display:table; width:128px; background-color:rgb(255,255,255)">
<a id="LPImageAnchor_14642645768750.6767267450097212" href="https://gitlab.dune-project.org/core/dune-grid/merge_requests/60" target="_blank" style="display:table-cell; text-align:center"><img width="128" height="128" style="display:inline-block; margin-left:auto; margin-right:auto; max-width:250px; max-height:250px; height:128px; width:128px; border-width:0px; vertical-align:bottom" src="https://gitlab.dune-project.org/assets/gitlab_logo-cdf021b35c4e6bb149e26460f26fae81e80552bc879179dd80e9e9266b14e894.png"></a></div>
</td>
<td id="TextCell_14642645768750.8548756287177475" colspan="2" style="vertical-align: top; padding: 0px; display: table-cell; position: relative;">
<div id="LPRemovePreviewContainer_14642645768750.01624809782141612"></div>
<div id="LPTitle_14642645768750.6955906402852481" style="top:0px; color:rgb(108,139,56); font-weight:normal; font-size:21px; font-family:wf_segoe-ui_light,'Segoe UI Light','Segoe WP Light','Segoe UI','Segoe WP',Tahoma,Arial,sans-serif; line-height:21px">
<a id="LPUrlAnchor_14642645768760.5100894618610565" href="https://gitlab.dune-project.org/core/dune-grid/merge_requests/60" target="_blank" style="text-decoration:none">Bugfix/geometrygrid various (!60) · Merge Requests · Core Modules / dune-grid</a></div>
<div id="LPMetadata_14642645768760.6098093120095909" style="margin:10px 0px 16px; color:rgb(102,102,102); font-weight:normal; font-family:wf_segoe-ui_normal,'Segoe UI','Segoe WP',Tahoma,Arial,sans-serif; font-size:14px; line-height:14px">
gitlab.dune-project.org</div>
<div id="LPDescription_14642645768760.7847943487877704" style="display:block; color:rgb(102,102,102); font-weight:normal; font-family:wf_segoe-ui_normal,'Segoe UI','Segoe WP',Tahoma,Arial,sans-serif; font-size:14px; line-height:20px; max-height:100px; overflow:hidden">
Grid Interface and Implementations</div>
</td>
</tr>
</tbody>
</table>
</div>
<br>
<br>
> <<a href="https://gitlab.dune-project.org/core/dune-grid/merge_requests/60">https://gitlab.dune-project.org/core/dune-grid/merge_requests/60</a>><br>
>        <br>
> Bugfix/geometrygrid various (!60) · Merge Requests · Core Modules / dune-grid<br>
> <<a href="https://gitlab.dune-project.org/core/dune-grid/merge_requests/60">https://gitlab.dune-project.org/core/dune-grid/merge_requests/60</a>><br>
> gitlab.dune-project.org<br>
> Grid Interface and Implementations<br>
> <br>
> <br>
> <br>
> <br>
> It deals with normals in non-conforming grids, which might also be buggy in<br>
> DUNE 2.3.<br>
> <br>
> Best,<br>
> <br>
> Martin<br>
> <br>
> On 05/25/2016 10:44 AM, Marco Cisternino wrote:<br>
>> Good morning,<br>
>> I have a problem with one intersection in my dune application.<br>
>> The area I get is not what I expect.<br>
>> So I tried to look inside the Intersection object using gdb<br>
>> It is important to say that my grid is a GeometryGrid with a DiscreteFunction to parametrize the elements.<br>
>> <br>
>> If I look at these two things:<br>
>> <br>
>> - *(in.real.insideGeo_.mapping_)<br>
>> - *(iGeo.realGeometry.mapping_)<br>
>> <br>
>> where the in variable type is <br>
>> GeometryGrid::LeafGridView::IntersectionIterator::Intersection<br>
>> and iGeo is <br>
>> GeometryGrid::LeafGridView::IntersectionIterator::Intersection::Geometry<br>
>> <br>
>> I see different corners stored in. I mean two of the 4 corners given by *(iGeo.realGeometry.mapping_) are different from the two correspondant corners given by *(in.real.insideGeo_.mapping_). All the other corners are the same.<br>
>> <br>
>> If I compute the intersection area using corners given by *(in.real.insideGeo_.mapping_), I get the right area. On the other hand, if I compute the intersection area using the corners given by *(iGeo.realGeometry.mapping_), the area is wrong.<br>
>> <br>
>> I want to specify that the corners given by *(in.real.insideGeo_.mapping_) are the same I get using e.geometry().corners(i) where e is of type<br>
>> GeometryGrid::LeafGridView::template Codim<0>::template Partition<Dune::InteriorBorder_Partition>::Iterator::Entity<br>
>> <br>
>> Could anyone help me please? Am I doing something wrong?<br>
>> Ask for more details if you need.<br>
>> <br>
>> I'm using DUNE 2.3 with ALUGrid 1.52. I know it is old, but at the moment I cannot migrate to the new Dune releases.<br>
>> <br>
>> Thanks a lot!<br>
>> <br>
>> Marco<br>
>> <br>
>> _______________________________________________<br>
>> Dune mailing list<br>
>> Dune@dune-project.org<br>
>> <a href="http://lists.dune-project.org/mailman/listinfo/dune">http://lists.dune-project.org/mailman/listinfo/dune</a><br>
>> <br>
> <br>
> -- <br>
> Dr. Martin Nolte <nolte@mathematik.uni-freiburg.de><br>
> <br>
> Universität Freiburg                                   phone: +49-761-203-5630<br>
> Abteilung für angewandte Mathematik                    fax:   +49-761-203-5632<br>
> Hermann-Herder-Straße 10<br>
> 79104 Freiburg, Germany<br>
> <br>
> <br>
<br>
-- <br>
Dr. Martin Nolte <nolte@mathematik.uni-freiburg.de><br>
<br>
Universität Freiburg                                   phone: +49-761-203-5630<br>
Abteilung für angewandte Mathematik                    fax:   +49-761-203-5632<br>
Hermann-Herder-Straße 10<br>
79104 Freiburg, Germany<br>
<br>
<br>
</div>
</span></font></div>
</div>
</div>
</div>
</div>
</div>
</body>
</html>