Subject: [FFC-dev] DG form not compiling with quadrature

From: Jake Ostien <[email-masked]>
Date: Tue, 15 Jan 2008 09:22:49 -0500

Hi,

I am trying to update my code to the latest version of FFC.  I have a 
form (attached) that previously compiled using either tensor or 
quadrature representation, but now only works using tensor.  This is a 
smaller form that shows the same behavior of a much heavier form where I 
need to use quadrature for it to compile.  I think the last version of 
FFC that worked was about changeset 990 or so.  Can someone take a look?

in short:
ffc -l dolfin lift_Hp.form  -- works
ffc -l dolfin -r quadrature lift_Hp.form  -- doesn't work, error: *** 
tabulate() takes exactly 3 arguments (4 given)

thanks,
Jake

elHp = VectorElement("DG", "tetrahedron", 0, 9)
DG0  = FiniteElement("DG", "tetrahedron", 0)

# Test and Trial Functions
V = TestFunction(elHp)
U = TrialFunction(elHp)

# Current Hp
Hp1 = Function(elHp)

# DG parameters
alpha = Function(DG0)
n = FacetNormal("tetrahedron")
h = MeshSize("tetrahedron")

k = Function(DG0)

pflag = Function(DG0)

def Mat(A):
    return [ [A[0], A[1], A[2]],    \
             [A[3], A[4], A[5]],    \
             [A[6], A[7], A[8]] ]

def skwMt(v):
    return [ [   0.0,  v[2], -v[1]],
             [ -v[2],   0.0,  v[0]],
             [  v[1], -v[0],   0.0] ]

def Vec(A):
    return [ A[0][0], A[0][1], A[0][2], A[1][0], A[1][1], A[1][2],
             A[2][0], A[2][1] ,A[2][2] ]

term1 = Mat(jump(Hp1))
term2 = numpy.array(skwMt(n('+')))

#print term1
#print len(term1.shape)
#print len(term2.shape)

#def matmat(A,B):
#    return 

arg1 = numpy.array(Vec(mult(term1,term2)))
arg2 = alpha('+')*k('+')/h('+')
#arg = mult(arg2,arg1)
arg = mult(k('+'),arg1)
#print arg

a = dot(V,U)*dx

#L =  pflag('+')*dot(avg(V),arg)*dS
L = - dot(avg(V),mult(pflag('+'),arg))*dS

---

From: Kristian Oelgaard <[email-masked]>
Date: Tue, 15 Jan 2008 16:38:39 +0100

Quoting Jake Ostien <[email-masked]>:

This should be fixed now

Kristian

---

From: Jake Ostien <[email-masked]>
Date: Tue, 15 Jan 2008 11:10:41 -0500

> Quoting Jake Ostien <[email-masked]>:
Cool.  Thanks.

Jake