Skip to content

Error on interpolation using --petsc-int-type int64 #3673

Open
@argyriospetras

Description

@argyriospetras

Hello, I am trying to interpolate a function from one mesh to another. The interpolation works perfectly when using --petsc-int-type int32, however I get the following error when using --petsc-int-type int64:

Traceback (most recent call last):
File "/home/apetras/Documents/Projects/RFA/Codes/Firedrake/ablafem/applications/tests_3D/testInterpolation.py", line 15, in
v2.interpolate(v,allow_missing_dofs=True)
File "petsc4py/PETSc/Log.pyx", line 188, in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
File "petsc4py/PETSc/Log.pyx", line 189, in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
File "/home/apetras/Documents/Software/firedrake/src/firedrake/firedrake/function.py", line 413, in interpolate
return assemble(interp, tensor=self, ad_block_tag=ad_block_tag)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "petsc4py/PETSc/Log.pyx", line 188, in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
File "petsc4py/PETSc/Log.pyx", line 189, in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
File "/home/apetras/Documents/Software/firedrake/src/firedrake/firedrake/adjoint_utils/assembly.py", line 30, in wrapper
output = assemble(form, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/apetras/Documents/Software/firedrake/src/firedrake/firedrake/assemble.py", line 133, in assemble
return get_assembler(expr, *args, **kwargs).assemble(tensor=tensor)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/apetras/Documents/Software/firedrake/src/firedrake/firedrake/assemble.py", line 381, in assemble
result = BaseFormAssembler.base_form_postorder_traversal(self._form, visitor, visited)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/apetras/Documents/Software/firedrake/src/firedrake/firedrake/assemble.py", line 603, in base_form_postorder_traversal
visited[e] = visitor(e, *(visited[arg] for arg in operands))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/apetras/Documents/Software/firedrake/src/firedrake/firedrake/assemble.py", line 377, in visitor
return self.base_form_assembly_visitor(e, t, *operands)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/apetras/Documents/Software/firedrake/src/firedrake/firedrake/assemble.py", line 537, in base_form_assembly_visitor
interpolator = firedrake.Interpolator(expression, expr.function_space(), **interp_data)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/apetras/Documents/Software/firedrake/src/pyadjoint/pyadjoint/tape.py", line 110, in wrapper
return function(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/apetras/Documents/Software/firedrake/src/firedrake/firedrake/interpolation.py", line 604, in init
self.vom_dest_node_coords_in_src_mesh = firedrake.VertexOnlyMesh(
^^^^^^^^^^^^^^^^^^^^^^^^^
File "petsc4py/PETSc/Log.pyx", line 188, in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
File "petsc4py/PETSc/Log.pyx", line 189, in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
File "/home/apetras/Documents/Software/firedrake/src/firedrake/firedrake/mesh.py", line 2981, in VertexOnlyMesh
swarm, input_ordering_swarm, n_missing_points = _pic_swarm_in_mesh(
^^^^^^^^^^^^^^^^^^^
File "/home/apetras/Documents/Software/firedrake/src/firedrake/firedrake/mesh.py", line 3202, in _pic_swarm_in_mesh
) = _parent_mesh_embedding(
^^^^^^^^^^^^^^^^^^^^^^^
File "/home/apetras/Documents/Software/firedrake/src/firedrake/firedrake/mesh.py", line 3779, in _parent_mesh_embedding
ranks[locally_visible] = visible_ranks[parent_cell_nums[locally_visible]]
~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
IndexError: index -4294967255 is out of bounds for axis 0 with size 8687

Here is the link to my google drive that contains the code to reproduce the issue.
https://drive.google.com/drive/folders/1uKVMvoag5coyuEDK5lry3mcj-WW66vv3?usp=sharing

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions