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

Reply via email to