[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