Marie Rognes wrote: > Anders Logg wrote: >> I've thought some more on the problem of mesh refinement and updating >> of Functions. >> >> The main problem seems to be the following: >> >> mesh.refine() >> >> If we want to allow this, then we need to provide some kind of >> automated updating of functions and function spaces to the new mesh, >> since this call will otherwise destroy all function spaces and >> functions that refer to that mesh: >> >> V = FunctionSpace(mesh, "CG", 1) >> v = Function(V) >> mesh.refine() # V and v no longer make any sense >> >> This gives us two options. Either we disallow refinement of a mesh >> without making a copy. Or we provide automated updating. I think we >> should do the latter. >> >> > > I think that I would appreciate both: > > (a) Automated updating if mesh.refine() > > and > > (b) Functionality provided for updating functions to a new mesh if mesh > = refine(mesh) >
Agree. > >> What is needed compared to what we have now is to let a call to >> Mesh::refine trigger a call to FunctionSpace::update for all function >> spaces defined on the mesh, which in turn will trigger calls to >> Function::update for all functions defined on the function spaces. >> >> We can make the update functions private. >> >> Comments or objections? I think I can make this work. >> >> > > I can imagine that one would like to keep a copy of a function on the > old mesh if > one compares solutions from different meshes. Then automated updating could > be somewhat suboptimal. > It's essential that one can allow some functions to remain defined on one mesh while others are updated to the new mesh. Garth > -- > Marie > > > >> -- >> Anders >> >> ------------------------------------------------------------------------ >> >> _______________________________________________ >> DOLFIN-dev mailing list >> DOLFIN-dev@fenics.org >> http://www.fenics.org/mailman/listinfo/dolfin-dev >> > > _______________________________________________ > DOLFIN-dev mailing list > DOLFIN-dev@fenics.org > http://www.fenics.org/mailman/listinfo/dolfin-dev _______________________________________________ DOLFIN-dev mailing list DOLFIN-dev@fenics.org http://www.fenics.org/mailman/listinfo/dolfin-dev