Skip to content

Commit af6b82d

Browse files
committed
fix complex
1 parent 73cdcc2 commit af6b82d

File tree

1 file changed

+6
-6
lines changed
  • firedrake/preconditioners

1 file changed

+6
-6
lines changed

firedrake/preconditioners/fdm.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -473,7 +473,7 @@ def assemble_coefficients(self, J, fcp, block_diagonal=False):
473473
dku = ufl.div(u) if sobolev == ufl.HDiv else ufl.curl(u)
474474
eps = expand_derivatives(ufl.diff(ufl.replace(expand_derivatives(dku), {ufl.grad(u): du}), du))
475475
if sobolev == ufl.HDiv:
476-
map_grad = lambda p: ufl.outer(p, eps/tdim)
476+
map_grad = lambda p: ufl.conj(ufl.outer(p, eps/tdim))
477477
elif len(eps.ufl_shape) == 3:
478478
map_grad = lambda p: ufl.dot(p, eps/2)
479479
else:
@@ -2227,7 +2227,7 @@ def assemble_coefficients(self, J, fcp):
22272227
if not isinstance(alpha, ufl.constantvalue.Zero):
22282228
Q = FunctionSpace(mesh, finat.ufl.TensorElement(DG, shape=alpha.ufl_shape))
22292229
tensor = coefficients.setdefault("alpha", Function(Q.dual()))
2230-
assembly_callables.append(partial(get_assembler(ufl.inner(TestFunction(Q), alpha)*dx, form_compiler_parameters=fcp).assemble, tensor=tensor))
2230+
assembly_callables.append(partial(get_assembler(ufl.inner(alpha, TestFunction(Q))*dx, form_compiler_parameters=fcp).assemble, tensor=tensor))
22312231

22322232
# get zero-th order coefficent
22332233
ref_val = [ufl.variable(t) for t in args_J]
@@ -2248,7 +2248,7 @@ def assemble_coefficients(self, J, fcp):
22482248
beta = ufl.diag_vector(beta)
22492249
Q = FunctionSpace(mesh, finat.ufl.TensorElement(DG, shape=beta.ufl_shape) if beta.ufl_shape else DG)
22502250
tensor = coefficients.setdefault("beta", Function(Q.dual()))
2251-
assembly_callables.append(partial(get_assembler(ufl.inner(TestFunction(Q), beta)*dx, form_compiler_parameters=fcp).assemble, tensor=tensor))
2251+
assembly_callables.append(partial(get_assembler(ufl.inner(beta, TestFunction(Q))*dx, form_compiler_parameters=fcp).assemble, tensor=tensor))
22522252

22532253
family = "CG" if tdim == 1 else "DGT"
22542254
degree = 1 if tdim == 1 else 0
@@ -2270,11 +2270,11 @@ def assemble_coefficients(self, J, fcp):
22702270

22712271
Q = FunctionSpace(mesh, finat.ufl.TensorElement(DGT, shape=G.ufl_shape))
22722272
tensor = coefficients.setdefault("Gq_facet", Function(Q.dual()))
2273-
assembly_callables.append(partial(get_assembler(ifacet_inner(TestFunction(Q), G), form_compiler_parameters=fcp).assemble, tensor=tensor))
2273+
assembly_callables.append(partial(get_assembler(ifacet_inner(G, TestFunction(Q)), form_compiler_parameters=fcp).assemble, tensor=tensor))
22742274
PT = Piola.T
22752275
Q = FunctionSpace(mesh, finat.ufl.TensorElement(DGT, shape=PT.ufl_shape))
22762276
tensor = coefficients.setdefault("PT_facet", Function(Q.dual()))
2277-
assembly_callables.append(partial(get_assembler(ifacet_inner(TestFunction(Q), PT), form_compiler_parameters=fcp).assemble, tensor=tensor))
2277+
assembly_callables.append(partial(get_assembler(ifacet_inner(PT, TestFunction(Q)), form_compiler_parameters=fcp).assemble, tensor=tensor))
22782278

22792279
# make DGT functions with BC flags
22802280
shape = V.ufl_element().reference_value_shape
@@ -2294,7 +2294,7 @@ def assemble_coefficients(self, J, fcp):
22942294
if beta.ufl_shape:
22952295
beta = ufl.diag_vector(beta)
22962296
ds_ext = ufl.Measure(itype, domain=mesh, subdomain_id=it.subdomain_id(), metadata=md)
2297-
forms.append(ufl.inner(test, beta)*ds_ext)
2297+
forms.append(ufl.inner(betam, test)*ds_ext)
22982298

22992299
tensor = coefficients.setdefault("bcflags", Function(Q.dual()))
23002300
if len(forms):

0 commit comments

Comments
 (0)