Skip to content
Snippets Groups Projects
Commit 1d77a54f authored by Isuru Fernando's avatar Isuru Fernando
Browse files

simplify laplacian

parent 45fa8d5f
No related branches found
No related tags found
1 merge request!68Specify the PDE symbolically
...@@ -541,17 +541,10 @@ class PDE(object): ...@@ -541,17 +541,10 @@ class PDE(object):
return self + (-1)*other_pde return self + (-1)*other_pde
def laplacian(self): def laplacian(self):
eqs = [] p = PDE(self.dim, eqs=[])
for eq in self.eqs: for j in range(len(self.eqs)):
new_eq = defaultdict(lambda: 0) p = p | self[j].grad().div()
for ident, v in eq.items(): return p
for d in range(self.dim):
mi = list(ident.mi)
mi[d] += 2
new_ident = CoeffIdentifier(tuple(mi), ident.iexpr)
new_eq[new_ident] += v
eqs.append(dict(new_eq))
return PDE(self.dim, eqs=eqs)
def __or__(self, other_pde): def __or__(self, other_pde):
assert self.dim == other_pde.dim assert self.dim == other_pde.dim
......
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