From f4e187836b64da2e1609a5fd2b8bfff12f155c88 Mon Sep 17 00:00:00 2001 From: Isuru Fernando <isuruf@gmail.com> Date: Wed, 3 Apr 2019 13:46:25 -0500 Subject: [PATCH] Fix Helmholtz --- sumpy/expansion/__init__.py | 7 +++++-- sumpy/tools.py | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/sumpy/expansion/__init__.py b/sumpy/expansion/__init__.py index e116d828..8eb16434 100644 --- a/sumpy/expansion/__init__.py +++ b/sumpy/expansion/__init__.py @@ -611,7 +611,9 @@ def process_pde(pde): new_eq[k] = v * multiplier**sum(k.mi) if i == 0: val = new_eq[k] - new_eq[k] /= val + new_eq[k] /= sym.sympify(val) + if isinstance(new_eq[k], sym.Integer): + new_eq[k] = int(new_eq[k]) eqs.append(new_eq) return PDE(pde.dim, eqs=eqs), multiplier @@ -663,7 +665,8 @@ class HelmholtzExpansionTermsWrangler(LinearRecurrenceBasedExpansionTermsWrangle def get_pdes(self, **kwargs): w = make_pde_syms(self.dim, 1) - return (w.laplacian() + w), 0, 1 + k = sym.Symbol(self.helmholtz_k_name) + return (w.laplacian() + k**2 * w), 0, 1 def _get_reduced_coeffs(self, nullspace): idx = [] diff --git a/sumpy/tools.py b/sumpy/tools.py index c5103c34..e734d7dc 100644 --- a/sumpy/tools.py +++ b/sumpy/tools.py @@ -746,7 +746,7 @@ def nth_root_assume_positive(expr, n): """ expr = sym.sympify(expr) if expr.is_Pow: - return expr.base ** (expr.exp / n) + return expr.base ** (expr.exp / sym.Integer(n)) else: return expr ** (sym.Integer(1)/n) -- GitLab