← Back to team overview

dolfin team mailing list archive

Subdomain marking

 

There are currently 4 ways to specify subdomains:

  /// 1. By explicitly passing _MeshFunction_ (as pointers) to the
  ///    assemble functions
  ///
  /// 2. By assigning subdomain indicators specified by _MeshFunction_
  ///    to the _Form_ being assembled:
  ///
  ///    .. code-block:: c++
  ///
  ///        form.dx = cell_domains
  ///        form.ds = exterior_facet_domains
  ///        form.dS = interior_facet_domains
  ///
  /// 3. By _MeshFunction_ stored in _MeshData_ as
  ///
  ///    * "cell_domains"
  ///    * "exterior_facet_domains"
  ///    * "interior_facet_domains"
  ///
  /// 4. By specifying a _SubDomain_ which specifies the domain
  /// numbered as 0 (with the rest treated as domain number 1)

I'm going to add a 5th (!) which seems a bit silly, so I suggest
removing at least option (3). A warning will be added to the MeshData
class for use of those previously "reserved" names.

Option (3) will then be replaced by storage of boundary markers in the
new MeshDomains class.

Objections?

--
Anders


Follow ups