Skip to content

Commit 2125dce

Browse files
authored
Fix pullback of double derivatives on Piola type elements (#312)
* Add handling of case where a split returns a form with no arguments (they have all been reduced to zeros). * Add test case * Add test and some error handling * Apply restriction in formsplitter * Fix docstring * Fix apply pullback on piola mapped elements for double derivatives
1 parent 8384202 commit 2125dce

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

ufl/algorithms/apply_derivatives.py

+3-1
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,8 @@
3030
Imag,
3131
Indexed,
3232
IndexSum,
33+
Jacobian,
34+
JacobianDeterminant,
3335
JacobianInverse,
3436
ListTensor,
3537
Product,
@@ -672,7 +674,7 @@ def reference_grad(self, o):
672674
f = o.ufl_operands[0]
673675

674676
valid_operand = f._ufl_is_in_reference_frame_ or isinstance(
675-
f, (JacobianInverse, SpatialCoordinate)
677+
f, (JacobianInverse, SpatialCoordinate, Jacobian, JacobianDeterminant)
676678
)
677679
if not valid_operand:
678680
raise ValueError("ReferenceGrad can only wrap a reference frame type!")

0 commit comments

Comments
 (0)