Marie Rognes wrote: > DOLFIN wrote: >> One or more new changesets pushed to the primary dolfin repository. >> A short summary of the last three changesets is included below. >> >> changeset: 7408:f32a6ec49c47 >> tag: tip >> user: Anders Logg <l...@simula.no> >> date: Thu Oct 29 23:28:47 2009 +0100 >> files: dolfin/fem/DofMap.cpp dolfin/fem/DofMap.h >> dolfin/function/FunctionSpace.cpp dolfin/function/FunctionSpace.h >> dolfin/mesh/Mesh.h >> description: >> First iteration of refinement of function spaces. Refinement of a >> function >> space should take care of refining the mesh, rebuilding the dofmap and >> interpolating all its member functions to the new function space. >> >> All essential bits should be in place but needs some debugging to >> find memory errors/leaks. >> >> > > This seems to be not working quite optimally yet. > > 1) The attached script fails with the error: > > > python: dolfin/function/Function.cpp:392: virtual void > dolfin::Function::compute_vertex_values(double*, const > dolfin::Mesh&) const: Assertion `&mesh == &_function_space->mesh()' > failed. > Aborted > > > 2) The original mesh does not seem to be refined. Shouldn't it be? > > 3) Not much seems to happen if f is an Expression (since not much seems > to happen with the mesh) > > 4) What happens when there are multiple function spaces associated with > one mesh? >
I haven't looked at the code yet, but my first reaction to the commit log is related to the above two points. I wonder if it's wise to make a FunctionSpace aware of the Functions that depend on it. It makes FunctionSpace more complicated and things could get very tricky in parallel. Also, there is some freedom in how a Function is moved from one mesh to another. Would could define a new class, something like FunctionCollection (I haven't given any thought to an appropriate name) which could collect FunctionSpaces and GenericFunctions together for modification. It could provide a default method for transferring a Function from one mesh to another (say, interpolation), and a virtual interface for the user to provide the transfer. Garth > -- > Marie > > > ------------------------------------------------------------------------ > > _______________________________________________ > 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