Skip to content

Tree build crashes if no sources present #45

Description

@inducer
  return DirectionalSourceDerivative(
/home/kirby/Code/firedrake-complex/src/sumpy/sumpy/kernel.py:1316: UserWarning: specified the name of the direction vector
  return type(kernel)(
/home/kirby/Code/firedrake-complex/src/pytential/pytential/qbx/refinement.py:476: RefinerNotConvergedWarning: QBX layer potential source refiner did not terminate after 0 iterations (the maximum). You may call 'refine_geometry_collection()' manually and pass 'visualize=True' to see what area of the geometry is causing trouble. If the issue is disturbance of expansion disks, you may pass a slightly increased value (currently: 0.025) for 'expansion_disturbance_tolerance'. As a last resort, you may use Python's warning filtering mechanism to not treat this warning as an error. The criteria triggering refinement in each iteration were: . 
  warn(
/home/kirby/Code/firedrake-complex/lib/python3.8/site-packages/numpy/core/fromnumeric.py:86: VisibleDeprecationWarning: Creating an ndarray from nested sequences exceeding the maximum number of dimensions of 32 is deprecated. If you mean to do this, you must specify 'dtype=object' when creating the ndarray.
  return ufunc.reduce(obj, axis, dtype, out, **passkwargs)
/home/kirby/Code/firedrake-complex/src/pytential/pytential/qbx/refinement.py:476: RefinerNotConvergedWarning: QBX layer potential source refiner did not terminate after 0 iterations (the maximum). You may call 'refine_geometry_collection()' manually and pass 'visualize=True' to see what area of the geometry is causing trouble. If the issue is disturbance of expansion disks, you may pass a slightly increased value (currently: 0.025) for 'expansion_disturbance_tolerance'. As a last resort, you may use Python's warning filtering mechanism to not treat this warning as an error. The criteria triggering refinement in each iteration were: . 
  warn(
/home/kirby/Code/firedrake-complex/src/loopy/loopy/target/execution.py:193: ParameterFinderWarning: Unable to generate code to automatically find 'nunit_dofs' from the shape of 'result':
division with remainder in linear solve for 'nunit_dofs'
  warn("Unable to generate code to automatically "
/home/kirby/Code/firedrake-complex/src/boxtree/boxtree/tree_build.py:380: RuntimeWarning: overflow encountered in subtract
  bbox["max_"+ax] - bbox["min_"+ax]
Traceback (most recent call last):
  File "/home/kirby/Code/firedrake-complex/src/pytential/pytential/symbolic/execution.py", line 822, in _get_qbx_discretization
    discr = self._get_discr_from_cache(geometry, discr_stage)
  File "/home/kirby/Code/firedrake-complex/src/pytential/pytential/symbolic/execution.py", line 782, in _get_discr_from_cache
    raise KeyError(
KeyError: "cached discretization does not exist on '{geometry}'for stage '{discr_stage}'"

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/kirby/Code/firedrake-complex/src/pytential/pytential/qbx/refinement.py", line 893, in _refine_for_global_qbx
    discr, conn = get_from_cache(*ds)
  File "/home/kirby/Code/firedrake-complex/src/pytential/pytential/qbx/refinement.py", line 863, in get_from_cache
    discr = places._get_discr_from_cache(geometry, to_ds)
  File "/home/kirby/Code/firedrake-complex/src/pytential/pytential/symbolic/execution.py", line 782, in _get_discr_from_cache
    raise KeyError(
KeyError: "cached discretization does not exist on '{geometry}'for stage '{discr_stage}'"

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "mi_decoupled_nl.py", line 241, in <module>
    Bctx.dlp.get_pot_and_grad(x, complex(kt))
  File "/home/kirby/Documents/mibc/code/laypot.py", line 97, in get_pot_and_grad
    op_grad_x = self.bound_op_and_grad(self.actx, u=density, k=kappa)
  File "/home/kirby/Code/firedrake-complex/src/pytential/pytential/symbolic/execution.py", line 1157, in __call__
    return self.eval(kwargs, array_context=array_context)
  File "/home/kirby/Code/firedrake-complex/src/pytential/pytential/symbolic/execution.py", line 1131, in eval
    return self.code.execute(exec_mapper)
  File "/home/kirby/Code/firedrake-complex/src/pytential/pytential/symbolic/compiler.py", line 404, in execute
    self.get_exec_function(insn, exec_mapper)(
  File "/home/kirby/Code/firedrake-complex/src/pytential/pytential/symbolic/execution.py", line 313, in exec_assign
    return [(name, evaluate(expr))
  File "/home/kirby/Code/firedrake-complex/src/pytential/pytential/symbolic/execution.py", line 313, in <listcomp>
    return [(name, evaluate(expr))
  File "/home/kirby/Code/firedrake-complex/lib/python3.8/site-packages/pymbolic/mapper/__init__.py", line 129, in __call__
    return method(expr, *args, **kwargs)
  File "/home/kirby/Code/firedrake-complex/src/pytential/pytential/symbolic/execution.py", line 279, in map_interpolation
    conn = self.places.get_connection(expr.from_dd, expr.to_dd)
  File "/home/kirby/Code/firedrake-complex/src/pytential/pytential/symbolic/execution.py", line 853, in get_connection
    return connection_from_dds(self, from_dd, to_dd)
  File "/home/kirby/Code/firedrake-complex/src/pytential/pytential/symbolic/dof_connection.py", line 234, in connection_from_dds
    to_discr = places.get_discretization(to_dd.geometry, to_dd.discr_stage)
  File "/home/kirby/Code/firedrake-complex/src/pytential/pytential/symbolic/execution.py", line 881, in get_discretization
    return self._get_qbx_discretization(geometry, discr_stage)
  File "/home/kirby/Code/firedrake-complex/src/pytential/pytential/symbolic/execution.py", line 829, in _get_qbx_discretization
    _refine_for_global_qbx(self, dofdesc,
  File "/home/kirby/Code/firedrake-complex/src/pytential/pytential/qbx/refinement.py", line 895, in _refine_for_global_qbx
    discr, conn = _refine_qbx_stage2(
  File "/home/kirby/Code/firedrake-complex/src/pytential/pytential/qbx/refinement.py", line 736, in _refine_qbx_stage2
    tree = wrangler.build_tree(places,
  File "/home/kirby/Code/firedrake-complex/src/pytential/pytential/qbx/utils.py", line 129, in build_tree
    return build_tree_with_qbx_metadata(
  File "/home/kirby/Code/firedrake-complex/lib/python3.8/site-packages/pytools/__init__.py", line 2511, in wrapper
    return wrapped(*args, **kwargs)
  File "/home/kirby/Code/firedrake-complex/src/pytential/pytential/qbx/utils.py", line 321, in build_tree_with_qbx_metadata
    tree, evt = tree_builder(queue, particles,
  File "/home/kirby/Code/firedrake-complex/src/boxtree/boxtree/tree_build.py", line 461, in __call__
    assert nboxes_guess > 0
AssertionError```

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions