On 17 May 2013 22:43, Johan Hake <[email protected]> wrote:
> Isn't the problem here that the MeshFunction cell_domains that is  built
> from the markers info get cached the first time you create it? If you update
> markers I think you can explicitly destroy it and recreate the Mesh
> Function.
>

Looks messy. It means the marker cannot be reliably changed or added
to. A user has to clear the MeshDomains before making changes.

Garth


> Johan
>
> On May 17, 2013 5:23 PM, "Garth N. Wells" <[email protected]> wrote:
>>
>> Is anyone making much use of MeshDomains? I'm looking at the code, and
>> it's really ropy. The essence of the problem is that it permits two
>> ways of doing the same thing, and if one does both it's ambiguous what
>> really happens. For example, the code in
>> MeshDomains::cell_domains(...) has
>>
>>   // Create markers if mesh collection present
>>   if (!_markers[D].empty() and !_cell_domains)
>>   {
>>      ....
>>   }
>>
>>   return _cell_domains;
>>
>> Here are two scenarios for which I would expect the same outcome, but
>> which would in fact differ because of the above code:
>>
>> 1. I have a Mesh that has no 'cells domains', and I go and add
>> markers. Then I get 'A' back from MeshDomains::cell_domains.
>>
>> 2.  I have a Mesh that has 'cells domains' (which I don't know because
>> it happened to be embedded in a mesh file that I've read in), and I go
>> and add markers. Then I get 'B' back from MeshDomains::cell_domains (A
>> \ne B).
>>
>> Garth
>> _______________________________________________
>> fenics mailing list
>> [email protected]
>> http://fenicsproject.org/mailman/listinfo/fenics
_______________________________________________
fenics mailing list
[email protected]
http://fenicsproject.org/mailman/listinfo/fenics

Reply via email to