← Back to team overview

dolfin team mailing list archive

[HG DOLFIN] Add support for attaching arbitrarily named data to meshes

 

One or more new changesets pushed to the primary dolfin repository.
A short summary of the last three changesets is included below.

changeset:   4217:e6ebfecf31e978938259506023611d44bc38a261
tag:         tip
user:        Anders Logg <logg@xxxxxxxxx>
date:        Tue May 20 01:01:56 2008 +0200
files:       ChangeLog data/meshes/meshbc.xml.gz dolfin/io/XMLMesh.cpp dolfin/io/XMLMesh.h dolfin/mesh/Mesh.cpp dolfin/mesh/Mesh.h dolfin/mesh/MeshData.cpp dolfin/mesh/MeshData.h dolfin/mesh/MeshGeometry.cpp dolfin/mesh/MeshTopology.cpp
description:
Add support for attaching arbitrarily named data to meshes
in preparation for integration with VMTK.

It is now possible to attach an arbitrary number of
MeshFunction<uint> to a mesh. Each data set is associated with a
user-specified string.

Example:

  MeshFunction<uint>* f = mesh.data().create("boundary indicators", 2);

  f[0] = 3
  f[1] = 3
  ...

  MeshFunction<uint>* g = mesh.data()["boundary indicators"];

File format:

<?xml version="1.0" encoding="UTF-8"?>

<dolfin xmlns:dolfin="http://www.fenics.org/dolfin/";>
  <mesh celltype="tetrahedron" dim="3">
    <vertices size="4">
      <vertex index="0" x="0.000000" y="0.000000" z="0.000000"/>
      <vertex index="1" x="1.000000" y="0.000000" z="0.000000"/>
      <vertex index="2" x="0.000000" y="1.000000" z="0.000000"/>
      <vertex index="3" x="0.000000" y="0.000000" z="1.000000"/>
    </vertices>
    <cells size="1">
      <tetrahedron index="0" v0="0" v1="1" v2="2" v3="3"/>
    </cells>
    <data>
      <meshfunction name="boundary facet cells" type="uint" dim="2" size="4">
        <entity index="0" value="0"/>
        <entity index="1" value="0"/>
        <entity index="2" value="0"/>
        <entity index="3" value="0"/>
      </meshfunction>
      <meshfunction name="boundary facet numbers" type="uint" dim="2" size="4">
        <entity index="0" value="0"/>
        <entity index="1" value="1"/>
        <entity index="2" value="2"/>
        <entity index="3" value="3"/>
      </meshfunction>
      <meshfunction name="boundary indicators" type="uint" dim="2" size="4">
        <entity index="0" value="0"/>
        <entity index="1" value="0"/>
        <entity index="2" value="1"/>
        <entity index="3" value="1"/>
      </meshfunction>
    </data>
  </mesh>
</dolfin>


changeset:   4216:fc2232e0ff776355c051ba35fa31710364512aa5
parent:      4215:a43251620ff29a7d4b7976ae022607bafb8e0349
parent:      4214:1db0594d959ce2207575ffd1e090fc98f91392aa
user:        Anders Logg <logg@xxxxxxxxx>
date:        Mon May 19 16:45:28 2008 +0200
files:       demo/pde/dg/cpp/demo
description:
merge


changeset:   4215:a43251620ff29a7d4b7976ae022607bafb8e0349
parent:      4210:0953a1256715bb609180145391dfebcba4c69990
user:        Anders Logg <logg@xxxxxxxxx>
date:        Mon May 19 16:43:06 2008 +0200
files:       dolfin/la/AssemblyMatrix.h dolfin/mesh/MPIMeshCommunicator.cpp dolfin/mesh/Mesh.cpp dolfin/mesh/Mesh.h dolfin/mesh/MeshData.h dolfin/mesh/MeshEditor.cpp
description:
Reorganization of data Mesh:
 - Move topology, geometry, cell_type from MeshData to Mesh
 - MeshData will be used for storing auxiliary mesh data

----------------------------------------------------------------------
For more details, visit http://www.fenics.org/hg/dolfin