Comment 7 for bug 862383

Revision history for this message
Anders Logg (logg) wrote : Re: [Bug 862383] Re: FacetArea evaluation fails if the form includes both a cell integral and an interior facet integral

Yes, that would be a better solution. Many other SpecialFunctions have
gone that way.

--
Anders

On Thu, Nov 17, 2011 at 08:01:53AM -0000, Kristian B. Ølgaard wrote:
> Would it be an idea to also add 'FacetArea' as a GeometricQuantity to
> Cell in UFL?
> Then h_F in the bug report can be defined as:
>
> h_F = cell.facet_area
>
> i.e., the area of the facet currently being integrated.
>
> One could perhaps also consider defining SurfaceArea, the sum of all
> FacetAreas of a Cell.
>
> Note that:
>
> M = h_F*dx
>
> should be illegal, but this can be checked in UFL at compile time.
>
> Kristian
>
>
> On 17 November 2011 01:24, Anders Logg <email address hidden> wrote:
> > ** Changed in: dolfin
> >       Status: In Progress => Fix Committed
> >
> >
> > Title:
> >  FacetArea evaluation fails if the form includes both a cell integral
> >  and an interior facet integral
> >
> > Status in DOLFIN:
> >  Fix Committed
> >
> > Bug description:
> >  Reproduce with this script:
> >
> >  from dolfin import *
> >
> >  mesh = UnitSquare(3,3)
> >  V = VectorFunctionSpace(mesh, "DG", 1)
> >  v = TestFunction(V)
> >  u = TrialFunction(V)
> >
> >  h_F = FacetArea(mesh)('+')
> >
> >  # Ok:
> >  a1 = h_F*dot(jump(u),jump(v))*dS
> >  A1 = assemble(a1)
> >
> >  # Fails:
> >  a2 = a1 + inner(grad(u), grad(v))*dx
> >  A2 = assemble(a2)
> >
> > To manage notifications about this bug go to:
> > https://bugs.launchpad.net/dolfin/+bug/862383/+subscriptions
> >
>