[Dune] Comment to task #120.

Oliver Sander sander at mi.fu-berlin.de
Wed Oct 18 16:12:35 CEST 2006


Hi Robert!

>
>> Secondly it's not that all normals of the reference quad
>> point outwards while they should point inwards.  The
>> problem is that _some_ point outwards and _some_ inwards.
>> Of course I know which do which, and I can write code
>> like
>> if (subface==1 || subface==3)
>>   // reorient face
>
> if that is the problem then I suggest to add a method to the reference
> elementes to return 1.0 or -1.0 depending on the normal pointing outward
> or inward. By multiplying with this factor, one always get a outward (or
> maybe inward) pointing normal for each face. The we have to change
> nothing of our exsiting code and we solve this problem too. Also this
> factor tell you the orientation of this face and you can take care of it
> in your code.

That would not really help much.  If I needed the actual outward
normals I would simply call the corresponding method of the
IntersectionIterator.  However, I need the grid boundary as a
consistently oriented subgrid, so an external library can do
whatever with it.  So I'd still need an 'if'-clause like the
one above, and since I already know, which faces are incorrectly
oriented (faces 0 and 3), supplying that same information
in form of a double doesn't really help.


> Besides orientation of faces is, what a TwistUtility is good for.
> Andreas will comment that piece of code.
>

Great!  I'm very curious!

Oliver




More information about the Dune mailing list