Hi Miklos,
thanks a lot for the detailled explanation, I’m much more confident that I’m doing the correct thing now.
Cheers,
Eike
> On 18 Oct 2015, at 15:16, Homolya, Miklós <m.homolya14@imperial.ac.uk> wrote:
>
> Hello Eike,
>
> I don't know how you use them, but here's what topological and geometric mean for boundary conditions:
>
> Topological boundary conditions set those degrees of freedom, which topologically lie on the facet (more precisely, on the closure of the facet). Geometric boundary conditions set those DoFs, which don't vanish on the boundary. In the DGn, n >= 1 case they are the DoFs which are geometrically on the boundary, hence the name.
>
> A few examples:
> - For CG, they mean the same thing.
> - For DG, all nodes are topologically associated with the cell interior, so topological does nothing. Geometric sets the nodes geometrically on the facet, except for DG0, which sets the only node (which happens to be in the cell centre).
> - For semi-continuous function spaces, they mean different things. For example, for RT, a topological BC sets the normal component on the facet (or the tagential component in case of an H(curl) conforming space, accordingly). Geometric BCs will set many of the nodes to make sure to fix all components of the value on the boundary. (I'm not sure if you want to do that.)
>
> I hope this helps. Topological is the only option that was supported on extruded until now, so that must have been the one you were using.
>
> Regards,
> Miklos
>
> ________________________________________
> From: firedrake-bounces@imperial.ac.uk [firedrake-bounces@imperial.ac.uk] on behalf of Eike Mueller [E.Mueller@bath.ac.uk]
> Sent: 18 October 2015 11:36
> To: firedrake
> Subject: [firedrake] functionspace.bt_masks: 'topological' vs 'geometric'
>
> Dear firedrake,
>
> While bringing my code up-to-date with the latest changes in firedrake/PyOP2, I’m trying to understand the changes to functionspace.bt_masks. In the past I just used
>
> fs.bt_masks[0] and fs.bt_masks[1] to get the top/bottom boundary nodes of a function space. With commits
>
> a2c1add18f00eca24789f209632411f30fffba4b
>
> ba340ceb92dc1a156a73eb2ef8e60427a67fa0e7
>
> the tuples seems to have been replaced by a dictionary, i.e. there are now ‘toplogical’ and ‘geometric’ boundary nodes. What’s the difference between the two?
>
> In my code, I replaced fs.bt_masks[i] -> fs.bt_masks[’topological'][i], but I want to make sure that I’m doing the right thing.
>
> Thanks,
>
> Eike
>
> _______________________________________________
> firedrake mailing list
> firedrake@imperial.ac.uk
> https://mailman.ic.ac.uk/mailman/listinfo/firedrake
> _______________________________________________
> firedrake mailing list
> firedrake@imperial.ac.uk
> https://mailman.ic.ac.uk/mailman/listinfo/firedrake
_______________________________________________
firedrake mailing list
firedrake@imperial.ac.uk
https://mailman.ic.ac.uk/mailman/listinfo/firedrake