[firedrake] Question on mixed solves: RHS is not defined in product function space

Lawrence Mitchell lawrence.mitchell at imperial.ac.uk
Thu Jan 22 15:55:21 GMT 2015


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 22/01/15 15:41, Eike Mueller wrote:
> Arrgh, stupid me, the argument should be a dict: {v, v1} -> {v:
> v1}. But it still complains that it can?t add expressions of
> different shapes.

Hmm, odd, I do the following, which works afaict:

from firedrake import *

m = UnitIcosahedralSphereMesh(0)

m.init_cell_orientations(Expression(("x[0]", "x[1]", "x[2]")))
RT = FunctionSpace(m, 'RT', 1)

DG = FunctionSpace(m, 'DG', 0)

W = RT*DG

f = Function(RT)

g = Function(DG)

f.assign(1)
g.assign(2)

v, q = TestFunctions(W)

v1 = TestFunction(RT)

q1 = TestFunction(DG)

import ufl

print assemble(dot(f, v)*dx + g*q*dx).dat.data

L1 = ufl.replace(dot(f, v1)*dx, {v1: v})
L2 = ufl.replace(g*q1*dx, {q1: q})

print assemble(L1 + L2).dat.data


Cheers,

Lawrence
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with undefined - http://www.enigmail.net/

iQEcBAEBAgAGBQJUwR1pAAoJECOc1kQ8PEYvp7wIAIdQNrcPJ/Q8xoVO4BVuXjkU
nD1ft85Hb6prZ32NJQ549dqFTYhxKCkJWRrswkwaUewAL4PUmv2mywdV2igfGsxH
NWursvetXc7IBlcFLJWB7bxKlTPUM4hEy2lVofVVr8tFrQjDWjU5dFQ3P+bOfx8i
xPep8vlUbAzQbkzEPAsEZarFZZ6gYVGDRFJYxtm+bQR0zynxcF1RDq/XF3+lmEcZ
yeXoed//+7bb2pCpCCMUD3LkSD3vK3FXyacbQf44E3EcLi6HDCxZoH+sD7ad74eV
1ay2J6MwHwBvmOaDKU2T0P7YgRPbDfjcnHIDvQah3hJkJxnBL7agPeAYdSGAUQ0=
=vCrZ
-----END PGP SIGNATURE-----



More information about the firedrake mailing list