From 8b6fd44b0342e55d4501ac02363ed8024d210456 Mon Sep 17 00:00:00 2001 From: Andreas Kloeckner Date: Thu, 15 Jun 2017 16:37:07 -0500 Subject: [PATCH] Use Helmholtz-conforming by default in 3D --- sumpy/expansion/__init__.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/sumpy/expansion/__init__.py b/sumpy/expansion/__init__.py index b5415b1e..08754a10 100644 --- a/sumpy/expansion/__init__.py +++ b/sumpy/expansion/__init__.py @@ -495,6 +495,11 @@ class DefaultExpansionFactory(ExpansionFactoryBase): and base_kernel.dim == 2): from sumpy.expansion.local import Y2DLocalExpansion return Y2DLocalExpansion + elif (isinstance(base_kernel.get_base_kernel(), HelmholtzKernel) + and base_kernel.dim == 3): + from sumpy.expansion.local import \ + HelmholtzConformingVolumeTaylorLocalExpansion + return HelmholtzConformingVolumeTaylorLocalExpansion elif isinstance(base_kernel.get_base_kernel(), LaplaceKernel): from sumpy.expansion.local import \ LaplaceConformingVolumeTaylorLocalExpansion @@ -519,6 +524,11 @@ class DefaultExpansionFactory(ExpansionFactoryBase): from sumpy.expansion.multipole import ( LaplaceConformingVolumeTaylorMultipoleExpansion) return LaplaceConformingVolumeTaylorMultipoleExpansion + elif (isinstance(base_kernel.get_base_kernel(), HelmholtzKernel) + and base_kernel.dim == 3): + from sumpy.expansion.multipole import ( + HelmholtzConformingVolumeTaylorMultipoleExpansion) + return HelmholtzConformingVolumeTaylorMultipoleExpansion else: from sumpy.expansion.multipole import VolumeTaylorMultipoleExpansion return VolumeTaylorMultipoleExpansion -- GitLab