← Back to team overview

dolfin team mailing list archive

Re: Mesh Refinement

 

Jehanzeb Hameed wrote:
Thanks. I had one more question regarding...

Go ahead ! :)

Subdomain identifiers can be stored in different ways, as a separate
MeshFunction, or in the MeshData structure.

If subdomain identifiers are stored in MeshData structure (as opposed
to having a  MeshFunction "material indicators"), will they be
transformed when the mesh is refined?  I looked at
LocalMeshRefinement::transformMeshData(), but couldnt figure this
thing out.

Mesh object contains MeshData, which is container for many MeshFunctions, std::vectors, and std::maps. All of them are identified by name, which is simple text string.

If you create MeshFunction and store it in MeshData using name "material indicators", then it will be automatically updated after refinement.


For storing the subdomain identifiers, should the array be named
"material indicators", in which case dolfin will automatically make a
mesh function out of it?

Yes, but it has to be MeshFunction object, which is something different than array.

Take a look on documentation for Mesh, MeshData, MeshFunction. it should help you to understand what are the relations between those classes.
You can easy browse code documentation using:
http://www.fenics.org/pub/documents/dolfin/dolfin-progr-reference/classes.html

regrds.


Thanks,
-Jehanzeb

On Thu, Jun 11, 2009 at 11:55 AM, Bartosz Sawicki<sawickib@xxxxxxxxxxxxx> wrote:
Jehanzeb Hameed wrote:
Hello,

I am new to Dolfin, and was wondering how subdomains are supported as
regards to mesh reading and refinement. In my case, I will have a
mesh, with 2 subdomains. Each cell has an identifier indicating which
domain it belongs to. Looking at the examples, it seems I will need to
store domain identifiers in a separate xml file. Is that correct?
Subdomain identifiers can be stored in different ways, as a separate
MeshFunction, or in the MeshData structure.
I prefer MeshData, because it is directly included in the Mesh object.
You can also store boundary indicators using MeshData structure, see
demo/pde/bcs.

With regard to mesh refinement, I assume I will be able to define
subdomains for each domain based on cell identifiers. Now, when I
refine the mesh, will the subdomains also be updated (i.e. will dolfin
know what domain the new cells belong to) ?
If you name your MeshFunction "material indicators" it will be transformed
to follow refined mesh. Arrays which store boundary indicators will be
updated too.
See LocalMeshRefinement::transformMeshData()

Also, is there a way to read archives of this list?
Yes, there is http://www.fenics.org/pipermail/dolfin-dev/

regrds.
BArtek


Thanks,
-Jehanzeb
_______________________________________________
DOLFIN-dev mailing list
DOLFIN-dev@xxxxxxxxxx
http://www.fenics.org/mailman/listinfo/dolfin-dev




References