Skip to content
Snippets Groups Projects
Commit 7d3a643f authored by Marcel Koch's avatar Marcel Koch
Browse files

restore old code path for matrices > 3x3

parent 1ab09851
No related branches found
No related tags found
No related merge requests found
......@@ -123,12 +123,6 @@ def name_matrix_inverse(name, shape, visitor):
return name_inv
def matrix_inverse(name, shape, visitor):
name_inv = name_matrix_inverse(name, shape, visitor)
return prim.Variable(name_inv)
def define_assembled_tensor(name, expr, visitor):
temporary_variable(name,
shape=expr.ufl_shape,
......@@ -157,6 +151,18 @@ def pymbolic_matrix_inverse(o, visitor):
indices = visitor.indices
visitor.indices = None
name = name_assembled_tensor(expr, visitor)
if expr.shape[0] <= 3:
name = name_matrix_inverse(name, expr.ufl_shape, visitor)
else:
instruction(code="{}.invert();".format(name),
within_inames=frozenset(visitor.quadrature_inames()),
depends_on=frozenset({lp.match.Writes(name),
lp.match.Tagged("sumfact_stage1"),
}),
tags=frozenset({"quad"}),
)
visitor.indices = indices
return matrix_inverse(name, expr.ufl_shape, visitor)
return prim.Variable(name)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment