Skip to content
Snippets Groups Projects
Commit e417fa5d authored by Dominic Kempf's avatar Dominic Kempf
Browse files

fix sumfact_poisson_dg_numdiff_nonquadvec_gradvec

parent 77c5954c
No related branches found
No related tags found
No related merge requests found
......@@ -59,22 +59,24 @@ class AMatrix(ImmutableRecord):
class LargeAMatrix(ImmutableRecord):
def __init__(self, rows, cols, transpose, derivative):
def __init__(self, rows, cols, transpose, derivative, face):
assert isinstance(derivative, tuple)
ImmutableRecord.__init__(self,
rows=rows,
cols=cols,
transpose=transpose,
derivative=derivative,
face=face,
)
@property
def name(self):
name = "ThetaLarge{}_{}".format("T" if self.transpose else "",
"_".join(tuple("d" if d else "" for d in self.derivative))
)
name = "ThetaLarge{}{}_{}".format("face{}_".format(self.face) if self.face is not None else "",
"T" if self.transpose else "",
"_".join(tuple("d" if d else "" for d in self.derivative))
)
for i, d in enumerate(self.derivative):
define_theta(name, (self.rows, self.cols), self.transpose, d, additional_indices=(i,))
define_theta(name, (self.rows, self.cols), self.transpose, d, face=self.face, additional_indices=(i,))
return loopy_class_member(name,
classtag="operator",
......
......@@ -172,7 +172,7 @@ def pymbolic_trialfunction(element, restriction, component, visitor):
index = ()
return prim.Subscript(var,
tuple(prim.Variable(i) for i in quadrature_inames() + index)
tuple(prim.Variable(i) for i in quadrature_inames()) + index
)
......
......@@ -79,6 +79,7 @@ def decide_stage_vectorization_strategy(sumfacts, stage):
cols=next(iter(stage_sumfacts)).a_matrices[i].cols,
transpose=next(iter(stage_sumfacts)).a_matrices[i].transpose,
derivative=tuple(derivative),
face=next(iter(stage_sumfacts)).a_matrices[i].face,
)
large_a_matrices.append(large)
......
__name = sumfact_poisson_dg_{__exec_suffix}
__exec_suffix = {diff_suffix}_{quadvec_suffix}
__exec_suffix = {diff_suffix}_{quadvec_suffix}_{gradvec_suffix}
diff_suffix = numdiff, symdiff | expand num
quadvec_suffix = quadvec, nonquadvec | expand quad
gradvec_suffix = gradvec, nongradvec | expand grad
cells = 16 16
extension = 1. 1.
......@@ -17,3 +18,4 @@ sumfact = 1
exact_solution_expression = g
compare_l2errorsquared = 1e-4
vectorize_quad = 1, 0 | expand quad
vectorize_grads = 1, 0 | expand grad
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