/usr/share/doc/python-ffc/demo/QuadratureElement.ufl is in python-ffc 2017.2.0.post0-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | # Copyright (C) 2008-2016 Kristian B. Oelgaard
#
# This file is part of FFC.
#
# FFC is free software: you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# FFC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with FFC. If not, see <http://www.gnu.org/licenses/>.
#
# The linearised bilinear form a(u, v) and linear form L(v) for
# the nonlinear equation -div (1 + u) grad u = f (nonlinear Poisson)
#
# Compile this form with FFC: ffc QuadratureElement.ufl
# Configure measure with specific quadrature rule
scheme = "default"
degree = 3
dx = Measure("dx")
dx = dx(degree=degree, scheme=scheme)
# Configure quadrature elements with compatible rule
element = FiniteElement("Lagrange", triangle, 2)
QE = FiniteElement("Quadrature", triangle, degree, quad_scheme=scheme)
sig = VectorElement("Quadrature", triangle, degree, quad_scheme=scheme)
u = TrialFunction(element)
v = TestFunction(element)
u0 = Coefficient(element)
C = Coefficient(QE)
sig0 = Coefficient(sig)
f = Coefficient(element)
a = C*u.dx(i)*v.dx(i)*dx + 2*u0*u0.dx(i)*u*v.dx(i)*dx
L = f*v*dx - inner(sig0, grad(v))*dx
|