Subject: [FFC-dev] [HG] Add support for boundary integrals.

From: FFC <[email-masked]>
Date: Sun, 07 May 2006 15:57:18 +0200

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

changeset:   387:7e888efabfdc4987f08c5602f570a92a2dfb3747
tag:         tip
user:        "Anders Logg <[email-masked]>"
date:        Sun May  7 15:55:37 2006 +0200
files:       ChangeLog src/demo/Poisson.form src/ffc/compiler/compiler.py src/ffc/compiler/elementtensor.py src/ffc/compiler/finiteelement.py src/ffc/compiler/form.py src/ffc/compiler/mixedelement.py src/ffc/compiler/monomialintegration.py src/ffc/compiler/projection.py src/ffc/compiler/referencetensor.py src/ffc/format/dolfin.py src/reference/Elasticity.h src/reference/EnergyNorm.h src/reference/Heat.h src/reference/Mass.h src/reference/NavierStokes.h src/reference/NeumannProblem.h src/reference/Optimization.h src/reference/Poisson.h src/reference/PoissonSystem.h src/reference/Projection.h src/reference/Stokes.h src/reference/TensorWeightedPoisson.h
description:
Add support for boundary integrals.

Changes pulled from Garth's tree with some additional updates,
mainly fixes for mixed elements and projections to make all
tests in src/reference compile correctly.

changeset:   386:45a447e390950e45145bf0e3fb4092104505ee40
user:        "Garth N. Wells <[email-masked]>"
date:        Thu May  4 02:41:50 2006 +0200
files:       src/demo/Poisson.form src/ffc/format/dolfin.py
description:
Add missing "break;" in DOLFIN output.

changeset:   385:8301d56d241aacf9e7ab15921710ff6ca83d5ba4
user:        "Garth N. Wells <[email-masked]>"
date:        Tue May  2 19:44:01 2006 +0200
files:       src/ffc/compiler/compiler.py src/ffc/compiler/elementtensor.py src/ffc/format/dolfin.py
description:
Deal with terms in geometry tensor for boundaries.

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

---

From: "Garth N. Wells" <[email-masked]>
Date: Sun, 07 May 2006 18:58:48 +0200

Great! Does it work with the "-f blas" option?

Garth

On Sun, 2006-05-07 at 15:57 +0200, FFC wrote:
> _______________________________________________
> FFC-dev mailing list
> [email-masked]
> http://www.fenics.org/cgi-bin/mailman/listinfo/ffc-dev

---

From: Anders Logg <[email-masked]>
Date: Sun, 7 May 2006 23:03:57 +0200

I haven't tried, and I also haven't updated the additional formats,
including PyDOLFIN.

I plan to extend the Poisson solver module with general Robin
boundary conditions and try to gain some confidence that everything
works. I looked over your additions and everything seems to be in
order.

/Anders

---

From: "Garth N. Wells" <[email-masked]>
Date: Mon, 08 May 2006 07:56:45 +0200

> works. I looked over your additions and everything seems to be in

Do you plan to introduce the normal vector to the domain in FFC, or will
you treat it as a function?

At the moment, functions on boundaries are defined suing the trace of
the basis functions for a cell. It would be useful and more general to
define functions using a basis defined on the facet.  Would this be
difficult? Functions could, for example, be discontinuous from one facet
to the next (in which case the normal vector could be treated as a
function).

Garth

---

From: Anders Logg <[email-masked]>
Date: Mon, 8 May 2006 10:20:45 +0200

> you treat it as a function?

I would like to treat it as a Function (like we do with MeshSize), but
since it's discontinuous across the facets, a special solution might be
needed.

> to the next (in which case the normal vector could be treated as a

I haven't thought about this in too much detail. Are there other
possibly discontinuous functions than the normal that one would like
to specify on the boundary? If so, we should add general support for
that and have the normal as a special predefined function. We could
probably do something like overloading eval() in Function with
something that takes facet as an extra argument.

/Anders

---

From: "Garth N. Wells" <[email-masked]>
Date: Mon, 08 May 2006 11:01:30 +0200

> something that takes facet as an extra argument.

There are definitely other functions that are discontinuous. A simple
example is applying a boundary condition on the face of a polygonal
domain. When assuming that the boundary condition function comes from a
continuous space, it "creeps" around the corner of the face. You can see
this is src/demo/pde/poisson.

Garth

---

From: Anders Logg <[email-masked]>
Date: Mon, 8 May 2006 13:14:12 +0200

> this is src/demo/pde/poisson.

ok, I'll think about how to implement this.

/Anders