On Tue, Jun 01, 2010 at 07:01:48PM +0100, Garth N. Wells wrote: > > > On 01/06/10 18:59, Anders Logg wrote: > >On Tue, Jun 01, 2010 at 06:57:33PM +0100, Garth N. Wells wrote: > >> > >> > >>On 01/06/10 18:51, Anders Logg wrote: > >>>On Tue, Jun 01, 2010 at 05:13:11PM +0100, Garth N. Wells wrote: > >>>> > >>>> > >>>>On 01/06/10 17:07, Anders Logg wrote: > >>>>>On Tue, Jun 01, 2010 at 03:19:50PM +0100, Garth N. Wells wrote: > >>>>>> > >>>>>> > >>>>>>On 01/06/10 15:10, Anders Logg wrote: > >>>>>>>What is the difference from before? Is it only that the dofs are > >>>>>>>always tabulated and stored (never computed on the fly)? > >>>>>>> > >>>>>> > >>>>>>More or less. There are some bug fixes and some missing features > >>>>>>have been added (collapsed dof maps for renumbered maps, work in > >>>>>>parallel now). > >>>>>> > >>>>>>It was too complicated (for me at least) to have both tabulated dofs > >>>>>>and on the fly computation via UFC in the same class. It's much > >>>>>>easier to follow now (which helped in finding some bugs). > >>>>>> > >>>>>>Garth > >>>>> > >>>>>Can you remind me of what collapse do? What is a contiguous dofmap? > >>>>> > >>>> > >>>>A sub-dofmap will be, by default, a view into the original dof map. > >>>>It will extract the the relevant indices, but it won't change them. > >>>>It's suitable for when the sub-function shares the vector with the > >>>>original equation, e.g. > >>>> > >>>> Function& u = U[0]; > >>>> Function& p = U[1]; // U, u and p shared the same vector > >>>> > >>>>A collapsed dof map is independent of the original dof map, with the > >>>>lowest index = 0 and the greatest = global_dimension -1. It's used > >>>>when a sub-function is extracted from a Function such that it has > >>>>it's own vector, e.g. > >>>> > >>>> Function u = U[0]; // u has its own vector > >>>> Function p = U[1]; // p has its own vector > >>>> > >>>>Garth > >>> > >>>ok. And is it the case that if the dof map has not been renumbered, > >>>then collapsing it is the same as subtracting the offset, > >> > >>Yes. > >> > >>>but when it > >>>has been renumbered, a new numbering will be computed? > >>> > >> > >>Yes, and a map from the ufc dof index (as given by the ufc_dofmap > >>object) to the actual dof index. > > > >Why is that map needed? If the dof map has been renumbered (in build), > >why do we need to ever think about the old UFC dof map? > > > > When we want to extract a sub-dof map. We first get the ufc > sub-dofmap which uses UFC numbering, which we then need to map to > the current numbering.
Is that because the separation between sub systems may be lost in the renumbered map while being clearly separated in the UFC dof map? -- Anders
signature.asc
Description: Digital signature
_______________________________________________ Mailing list: https://launchpad.net/~dolfin Post to : [email protected] Unsubscribe : https://launchpad.net/~dolfin More help : https://help.launchpad.net/ListHelp

