On Tue, Feb 22, 2011 at 10:51:34AM +0100, Andre Massing wrote: > Den 22.02.11 09.52, skrev Garth N. Wells: > > > > > >On 22/02/11 07:51, Anders Logg wrote: > >>I'd like to implement this blueprint for 0.9.10: > >> > >>https://blueprints.launchpad.net/dolfin/+spec/attach-subdomains-to-form > >> > >>In addition, I'd like to remove the cell_domains, > >>exterior_facet_domains and interior_facet_domains arguments from the > >>assembler. It seems overkill to have three different ways to specify > >>the domains and the logic becomes complex for handling which data > >>overrides if many are specified. We could also remove these arguments > >>from VariationalProblem. > >> > >>We would then have two ways to specify the subdomains: > >> > >>1. As part of the Mesh (MeshData) > >> > >>2. As part of the form > >> > >>The SystemAssembler would then need to rely on (1). > >> > >>Comments and objections? > >> > > I use MeshFunction as domain markers quite a lot and it can be the > case that you need some marking based on other, more complex > decision procedures than just the virtual bool inside(...) function > in subdomain. > For instances (of course the example must come from my side :) I > used it heavily in overlapping mesh method. Forcing the use of > subdomains would force the user to implement the possibly complex > decision procedure for which cells, facets etc have to be marked > within the SubDomain class, probably requiring some inheritance, > with additional constructors which can take the needed extra > arguments. > > At least I would advocate for having the flexibility > to determine the actual subdomains (maybe could assign MeshFunctions > to them?) and the possibility to change them, even after they have > been assigned to a form (so not only const reference access).
That's not the issue here. MeshFunctions would still be used but it would change from A = assemble(a, cell_domains=cell_domains) to a.cell_domains = cell_domains A = assemble(a) -- Anders _______________________________________________ Mailing list: https://launchpad.net/~dolfin Post to : [email protected] Unsubscribe : https://launchpad.net/~dolfin More help : https://help.launchpad.net/ListHelp

