Skip to content

Integration with Fuse #6477

Integration with Fuse

Integration with Fuse #6477

GitHub Actions / Firedrake complex failed Dec 9, 2024 in 0s

8132 tests run, 3331 passed, 1461 skipped, 3340 failed.

Annotations

Check failure on line 68 in tests/firedrake/submesh/test_submesh_interpolate.py

See this annotation in the file changed.

@github-actions github-actions / Firedrake complex

test_submesh_interpolate.test_submesh_interpolate_cell_cell_hex_1_processes[None-LT-LT-LT-fe_fesub1-None]

TypeError: Cell complex construction undefined for hexahedron
Raw output
fe_fesub = [('Q', 4), ('DQ', 5)], nelem = None
condx = <class 'ufl.conditional.LT'>, condy = <class 'ufl.conditional.LT'>
condz = <class 'ufl.conditional.LT'>, distribution_parameters = None

    @pytest.mark.parametrize('nelem', [2, 4, 8, None])
    @pytest.mark.parametrize('fe_fesub', [[("DQ", 0), ("DQ", 0)],
                                          [("Q", 4), ("DQ", 5)]])
    @pytest.mark.parametrize('condx', [LT])
    @pytest.mark.parametrize('condy', [LT])
    @pytest.mark.parametrize('condz', [LT])
    @pytest.mark.parametrize('distribution_parameters', [None, {"overlap_type": (DistributedMeshOverlapType.NONE, 0)}])
    def test_submesh_interpolate_cell_cell_hex_1_processes(fe_fesub, nelem, condx, condy, condz, distribution_parameters):
        if nelem is None:
>           mesh = Mesh(join(cwd, "..", "meshes", "cube_hex.msh"), distribution_parameters=distribution_parameters)

tests/firedrake/submesh/test_submesh_interpolate.py:68: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/mesh.py:3093: in Mesh
    mesh = make_mesh_from_mesh_topology(topology, name)
firedrake/mesh.py:2884: in make_mesh_from_mesh_topology
    cell = topology.ufl_cell()
firedrake/mesh.py:731: in ufl_cell
    return self._ufl_cell
/usr/lib/python3.12/functools.py:995: in __get__
    val = self.func(instance)
firedrake/mesh.py:1227: in _ufl_cell
    return constructCellComplex(_cells[tdim][nfacets])
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

name = 'hexahedron'

    def constructCellComplex(name):
        if name == "vertex":
            return Point(0).to_ufl(name)
        elif name == "interval":
            return Point(1, [Point(0), Point(0)], vertex_num=2).to_ufl(name)
        elif name == "triangle":
            return n_sided_polygon(3).to_ufl(name)
        elif name == "quadrilateral":
            # return Cell(name)
            return n_sided_polygon(4).to_ufl(name)
        elif name == "tetrahedron":
            return make_tetrahedron().to_ufl(name)
        else:
>           raise TypeError("Cell complex construction undefined for {}".format(str(name)))
E           TypeError: Cell complex construction undefined for hexahedron

../firedrake_venv/src/redefining_fe/redefining_fe/cells.py:831: TypeError

Check failure on line 70 in tests/firedrake/regression/test_zero_forms.py

See this annotation in the file changed.

@github-actions github-actions / Firedrake complex

test_zero_forms.test_math_functions[True-tanh(f) + cos(f) + sin(f)-1-function-vector]

NotImplementedError: Non-Simplex elements are not yet supported
Raw output
mesh = Mesh(VectorElement(FiniteElement('Q', quadrilateral Complex, 1), dim=2), 38)
expr = 'tanh(f) + cos(f) + sin(f)', value = 1, typ = 'function'
fs_type = 'vector'

    @pytest.mark.parametrize(['expr', 'value', 'typ', 'fs_type'],
                             itertools.product(['f',
                                                '2*f',
                                                'tanh(f)',
                                                '2 * tanh(f)',
                                                'f + tanh(f)',
                                                'cos(f) + sin(f)',
                                                'cos(f)*cos(f) + sin(f)*sin(f)',
                                                'tanh(f) + cos(f) + sin(f)',
                                                '1.0/tanh(f) + 1.0/f',
                                                'sqrt(f*f)',
                                                '1.0/tanh(sqrt(f*f)) + 1.0/f + sqrt(f*f)'],
                                               [1, 10, 20, -1, -10, -20],
                                               ['function', 'constant'],
                                               ['scalar', 'vector', 'tensor']))
    def test_math_functions(mesh, expr, value, typ, fs_type):
        if typ == 'function':
            family, degree = 'CG', 1
        elif typ == 'constant':
            family, degree = 'Real', 0
    
        if fs_type == "vector":
>           V = VectorFunctionSpace(mesh, family, degree)

tests/firedrake/regression/test_zero_forms.py:70: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspace.py:191: in VectorFunctionSpace
    return FunctionSpace(mesh, element, name=name)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspace.py:105: in FunctionSpace
    return impl.WithGeometry.make_function_space(mesh, element, name=name)
firedrake/functionspaceimpl.py:359: in make_function_space
    mesh.init()
firedrake/mesh.py:2282: in init
    self._callback(self)
firedrake/mesh.py:2304: in callback
    coordinates_fs = functionspace.FunctionSpace(self.topology, self.ufl_coordinate_element())
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspace.py:105: in FunctionSpace
    return impl.WithGeometry.make_function_space(mesh, element, name=name)
firedrake/functionspaceimpl.py:371: in make_function_space
    new = FunctionSpace(topology, element, name=name)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspaceimpl.py:520: in __init__
    self.set_shared_data()
firedrake/functionspaceimpl.py:529: in set_shared_data
    sdata = get_shared_data(self._mesh, element)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspacedata.py:541: in get_shared_data
    return FunctionSpaceData(mesh, ufl_element, boundary_set)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspacedata.py:420: in __init__
    finat_element = create_element(ufl_element)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspacedata.py:42: in create_element
    finat_element = _create_element(ufl_element)
tsfc/finatinterface.py:325: in create_element
    finat_element, deps = _create_element(ufl_element,
tsfc/finatinterface.py:355: in _create_element
    finat_element, deps = convert(ufl_element, **kwargs)
/usr/lib/python3.12/functools.py:909: in wrapper
    return dispatch(args[0].__class__)(*args, **kw)
tsfc/finatinterface.py:263: in convert_tensorelement
    inner_elem, deps = _create_element(element.sub_elements[0], **kwargs)
tsfc/finatinterface.py:355: in _create_element
    finat_element, deps = convert(ufl_element, **kwargs)
/usr/lib/python3.12/functools.py:909: in wrapper
    return dispatch(args[0].__class__)(*args, **kw)
tsfc/finatinterface.py:153: in convert_finiteelement
    cell = as_fiat_cell(element.cell)
tsfc/finatinterface.py:116: in as_fiat_cell
    return cell.to_fiat()
../firedrake_venv/src/redefining_fe/redefining_fe/cells.py:802: in to_fiat
    return self.cell_complex.to_fiat()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = f15

    def to_fiat(self):
        if len(self.get_topology()[self.dimension][0]) == self.dimension + 1:
            return CellComplexToFiatSimplex(self)
>       raise NotImplementedError("Non-Simplex elements are not yet supported")
E       NotImplementedError: Non-Simplex elements are not yet supported

../firedrake_venv/src/redefining_fe/redefining_fe/cells.py:617: NotImplementedError

Check failure on line 218 in tests/firedrake/vertexonly/test_interpolation_from_parent.py

See this annotation in the file changed.

@github-actions github-actions / Firedrake complex

test_interpolation_from_parent.test_vector_function_interpolation[squarequads-mesh-100-coords-VectorFunctionSpace(CG2)]

NotImplementedError: Non-Simplex elements are not yet supported
Raw output
parentmesh = Mesh(VectorElement(FiniteElement('Q', quadrilateral Complex, 1), dim=2), 38)
vertexcoords = array([[ 0.59762701,  0.93037873],
       [ 0.70552675,  0.58976637],
       [ 0.3473096 ,  0.79178823],
       [ 0.37... 1.38874478],
       [ 0.97910159,  0.48091762],
       [-0.04517074,  0.00871296],
       [-0.38394168,  0.36883325]])
vfs = ('CG', 2, <cyfunction VectorFunctionSpace at 0x7f28c8243d30>)

    def test_vector_function_interpolation(parentmesh, vertexcoords, vfs):
        if parentmesh.name == "immersedsphere":
            vertexcoords = immersed_sphere_vertexcoords(parentmesh, vertexcoords)
        vfs_fam, vfs_deg, vfs_typ = vfs
>       vm = VertexOnlyMesh(parentmesh, vertexcoords, missing_points_behaviour=None)

tests/firedrake/vertexonly/test_interpolation_from_parent.py:218: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/mesh.py:3340: in VertexOnlyMesh
    mesh.init()
firedrake/mesh.py:2282: in init
    self._callback(self)
firedrake/mesh.py:2304: in callback
    coordinates_fs = functionspace.FunctionSpace(self.topology, self.ufl_coordinate_element())
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspace.py:105: in FunctionSpace
    return impl.WithGeometry.make_function_space(mesh, element, name=name)
firedrake/functionspaceimpl.py:371: in make_function_space
    new = FunctionSpace(topology, element, name=name)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspaceimpl.py:520: in __init__
    self.set_shared_data()
firedrake/functionspaceimpl.py:529: in set_shared_data
    sdata = get_shared_data(self._mesh, element)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspacedata.py:541: in get_shared_data
    return FunctionSpaceData(mesh, ufl_element, boundary_set)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspacedata.py:420: in __init__
    finat_element = create_element(ufl_element)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspacedata.py:42: in create_element
    finat_element = _create_element(ufl_element)
tsfc/finatinterface.py:325: in create_element
    finat_element, deps = _create_element(ufl_element,
tsfc/finatinterface.py:355: in _create_element
    finat_element, deps = convert(ufl_element, **kwargs)
/usr/lib/python3.12/functools.py:909: in wrapper
    return dispatch(args[0].__class__)(*args, **kw)
tsfc/finatinterface.py:263: in convert_tensorelement
    inner_elem, deps = _create_element(element.sub_elements[0], **kwargs)
tsfc/finatinterface.py:355: in _create_element
    finat_element, deps = convert(ufl_element, **kwargs)
/usr/lib/python3.12/functools.py:909: in wrapper
    return dispatch(args[0].__class__)(*args, **kw)
tsfc/finatinterface.py:153: in convert_finiteelement
    cell = as_fiat_cell(element.cell)
tsfc/finatinterface.py:116: in as_fiat_cell
    return cell.to_fiat()
../firedrake_venv/src/redefining_fe/redefining_fe/cells.py:802: in to_fiat
    return self.cell_complex.to_fiat()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = f15

    def to_fiat(self):
        if len(self.get_topology()[self.dimension][0]) == self.dimension + 1:
            return CellComplexToFiatSimplex(self)
>       raise NotImplementedError("Non-Simplex elements are not yet supported")
E       NotImplementedError: Non-Simplex elements are not yet supported

../firedrake_venv/src/redefining_fe/redefining_fe/cells.py:617: NotImplementedError

Check failure on line 70 in tests/firedrake/submesh/test_submesh_interpolate.py

See this annotation in the file changed.

@github-actions github-actions / Firedrake complex

test_submesh_interpolate.test_submesh_interpolate_cell_cell_hex_1_processes[distribution_parameters1-LT-LT-LT-fe_fesub0-2]

TypeError: Cell complex construction undefined for hexahedron
Raw output
fe_fesub = [('DQ', 0), ('DQ', 0)], nelem = 2
condx = <class 'ufl.conditional.LT'>, condy = <class 'ufl.conditional.LT'>
condz = <class 'ufl.conditional.LT'>
distribution_parameters = {'overlap_type': (<DistributedMeshOverlapType.NONE: 1>, 0)}

    @pytest.mark.parametrize('nelem', [2, 4, 8, None])
    @pytest.mark.parametrize('fe_fesub', [[("DQ", 0), ("DQ", 0)],
                                          [("Q", 4), ("DQ", 5)]])
    @pytest.mark.parametrize('condx', [LT])
    @pytest.mark.parametrize('condy', [LT])
    @pytest.mark.parametrize('condz', [LT])
    @pytest.mark.parametrize('distribution_parameters', [None, {"overlap_type": (DistributedMeshOverlapType.NONE, 0)}])
    def test_submesh_interpolate_cell_cell_hex_1_processes(fe_fesub, nelem, condx, condy, condz, distribution_parameters):
        if nelem is None:
            mesh = Mesh(join(cwd, "..", "meshes", "cube_hex.msh"), distribution_parameters=distribution_parameters)
        else:
>           mesh = UnitCubeMesh(nelem, nelem, nelem, hexahedral=True, distribution_parameters=distribution_parameters)

tests/firedrake/submesh/test_submesh_interpolate.py:70: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/utility_meshes.py:1780: in UnitCubeMesh
    return CubeMesh(
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/utility_meshes.py:1723: in CubeMesh
    return BoxMesh(
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/utility_meshes.py:1653: in BoxMesh
    m = mesh.Mesh(
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/mesh.py:3093: in Mesh
    mesh = make_mesh_from_mesh_topology(topology, name)
firedrake/mesh.py:2884: in make_mesh_from_mesh_topology
    cell = topology.ufl_cell()
firedrake/mesh.py:731: in ufl_cell
    return self._ufl_cell
/usr/lib/python3.12/functools.py:995: in __get__
    val = self.func(instance)
firedrake/mesh.py:1227: in _ufl_cell
    return constructCellComplex(_cells[tdim][nfacets])
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

name = 'hexahedron'

    def constructCellComplex(name):
        if name == "vertex":
            return Point(0).to_ufl(name)
        elif name == "interval":
            return Point(1, [Point(0), Point(0)], vertex_num=2).to_ufl(name)
        elif name == "triangle":
            return n_sided_polygon(3).to_ufl(name)
        elif name == "quadrilateral":
            # return Cell(name)
            return n_sided_polygon(4).to_ufl(name)
        elif name == "tetrahedron":
            return make_tetrahedron().to_ufl(name)
        else:
>           raise TypeError("Cell complex construction undefined for {}".format(str(name)))
E           TypeError: Cell complex construction undefined for hexahedron

../firedrake_venv/src/redefining_fe/redefining_fe/cells.py:831: TypeError

Check failure on line 72 in tests/firedrake/regression/test_zero_forms.py

See this annotation in the file changed.

@github-actions github-actions / Firedrake complex

test_zero_forms.test_math_functions[True-tanh(f) + cos(f) + sin(f)-1-function-tensor]

NotImplementedError: Non-Simplex elements are not yet supported
Raw output
mesh = Mesh(VectorElement(FiniteElement('Q', quadrilateral Complex, 1), dim=2), 38)
expr = 'tanh(f) + cos(f) + sin(f)', value = 1, typ = 'function'
fs_type = 'tensor'

    @pytest.mark.parametrize(['expr', 'value', 'typ', 'fs_type'],
                             itertools.product(['f',
                                                '2*f',
                                                'tanh(f)',
                                                '2 * tanh(f)',
                                                'f + tanh(f)',
                                                'cos(f) + sin(f)',
                                                'cos(f)*cos(f) + sin(f)*sin(f)',
                                                'tanh(f) + cos(f) + sin(f)',
                                                '1.0/tanh(f) + 1.0/f',
                                                'sqrt(f*f)',
                                                '1.0/tanh(sqrt(f*f)) + 1.0/f + sqrt(f*f)'],
                                               [1, 10, 20, -1, -10, -20],
                                               ['function', 'constant'],
                                               ['scalar', 'vector', 'tensor']))
    def test_math_functions(mesh, expr, value, typ, fs_type):
        if typ == 'function':
            family, degree = 'CG', 1
        elif typ == 'constant':
            family, degree = 'Real', 0
    
        if fs_type == "vector":
            V = VectorFunctionSpace(mesh, family, degree)
        elif fs_type == "tensor":
>           V = TensorFunctionSpace(mesh, family, degree)

tests/firedrake/regression/test_zero_forms.py:72: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspace.py:242: in TensorFunctionSpace
    return FunctionSpace(mesh, element, name=name)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspace.py:105: in FunctionSpace
    return impl.WithGeometry.make_function_space(mesh, element, name=name)
firedrake/functionspaceimpl.py:371: in make_function_space
    new = FunctionSpace(topology, element, name=name)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspaceimpl.py:520: in __init__
    self.set_shared_data()
firedrake/functionspaceimpl.py:529: in set_shared_data
    sdata = get_shared_data(self._mesh, element)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspacedata.py:541: in get_shared_data
    return FunctionSpaceData(mesh, ufl_element, boundary_set)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspacedata.py:420: in __init__
    finat_element = create_element(ufl_element)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspacedata.py:42: in create_element
    finat_element = _create_element(ufl_element)
tsfc/finatinterface.py:325: in create_element
    finat_element, deps = _create_element(ufl_element,
tsfc/finatinterface.py:355: in _create_element
    finat_element, deps = convert(ufl_element, **kwargs)
/usr/lib/python3.12/functools.py:909: in wrapper
    return dispatch(args[0].__class__)(*args, **kw)
tsfc/finatinterface.py:263: in convert_tensorelement
    inner_elem, deps = _create_element(element.sub_elements[0], **kwargs)
tsfc/finatinterface.py:355: in _create_element
    finat_element, deps = convert(ufl_element, **kwargs)
/usr/lib/python3.12/functools.py:909: in wrapper
    return dispatch(args[0].__class__)(*args, **kw)
tsfc/finatinterface.py:153: in convert_finiteelement
    cell = as_fiat_cell(element.cell)
tsfc/finatinterface.py:116: in as_fiat_cell
    return cell.to_fiat()
../firedrake_venv/src/redefining_fe/redefining_fe/cells.py:802: in to_fiat
    return self.cell_complex.to_fiat()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = f15

    def to_fiat(self):
        if len(self.get_topology()[self.dimension][0]) == self.dimension + 1:
            return CellComplexToFiatSimplex(self)
>       raise NotImplementedError("Non-Simplex elements are not yet supported")
E       NotImplementedError: Non-Simplex elements are not yet supported

../firedrake_venv/src/redefining_fe/redefining_fe/cells.py:617: NotImplementedError

Check failure on line 82 in tests/firedrake/regression/test_zero_forms.py

See this annotation in the file changed.

@github-actions github-actions / Firedrake complex

test_zero_forms.test_math_functions[True-tanh(f) + cos(f) + sin(f)-1-constant-scalar]

AttributeError: 'MeshTopology' object has no attribute 'extruded'
Raw output
mesh = Mesh(VectorElement(FiniteElement('Q', quadrilateral Complex, 1), dim=2), 38)
expr = 'tanh(f) + cos(f) + sin(f)', value = 1, typ = 'constant'
fs_type = 'scalar'

    @pytest.mark.parametrize(['expr', 'value', 'typ', 'fs_type'],
                             itertools.product(['f',
                                                '2*f',
                                                'tanh(f)',
                                                '2 * tanh(f)',
                                                'f + tanh(f)',
                                                'cos(f) + sin(f)',
                                                'cos(f)*cos(f) + sin(f)*sin(f)',
                                                'tanh(f) + cos(f) + sin(f)',
                                                '1.0/tanh(f) + 1.0/f',
                                                'sqrt(f*f)',
                                                '1.0/tanh(sqrt(f*f)) + 1.0/f + sqrt(f*f)'],
                                               [1, 10, 20, -1, -10, -20],
                                               ['function', 'constant'],
                                               ['scalar', 'vector', 'tensor']))
    def test_math_functions(mesh, expr, value, typ, fs_type):
        if typ == 'function':
            family, degree = 'CG', 1
        elif typ == 'constant':
            family, degree = 'Real', 0
    
        if fs_type == "vector":
            V = VectorFunctionSpace(mesh, family, degree)
        elif fs_type == "tensor":
            V = TensorFunctionSpace(mesh, family, degree)
        else:
            V = FunctionSpace(mesh, family, degree)
        f = Function(V)
        f.assign(value)
        if fs_type == "vector":
            f = dot(f, f)
        elif fs_type == "tensor":
            f = inner(f, f)
    
>       actual = assemble(eval(expr)*dx)

tests/firedrake/regression/test_zero_forms.py:82: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/adjoint_utils/assembly.py:30: in wrapper
    output = assemble(form, *args, **kwargs)
firedrake/assemble.py:134: in assemble
    return get_assembler(expr, *args, **kwargs).assemble(tensor=tensor)
firedrake/assemble.py:983: in assemble
    self.execute_parloops(tensor)
firedrake/assemble.py:1004: in execute_parloops
    for parloop in self.parloops(tensor):
firedrake/assemble.py:1016: in parloops
    for local_kernel, subdomain_id in self.local_kernels:
/usr/lib/python3.12/functools.py:995: in __get__
    val = self.func(instance)
firedrake/assemble.py:1054: in local_kernels
    kernels = tsfc_interface.compile_form(
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
pyop2/caching.py:522: in wrapper
    k = hashkey(*args, **kwargs)
firedrake/tsfc_interface.py:140: in _compile_form_hashkey
    args[0].signature(),
../firedrake_venv/src/ufl/ufl/form.py:418: in signature
    self._compute_signature()
../firedrake_venv/src/ufl/ufl/form.py:671: in _compute_signature
    self._signature = compute_form_signature(self, self._compute_renumbering())
../firedrake_venv/src/ufl/ufl/algorithms/signature.py:137: in compute_form_signature
    terminal_hashdata = compute_terminal_hashdata(integrands, renumbering)
../firedrake_venv/src/ufl/ufl/algorithms/signature.py:65: in compute_terminal_hashdata
    data = expr._ufl_signature_data_(renumbering)
../firedrake_venv/src/ufl/ufl/coefficient.py:84: in _ufl_signature_data_
    fsdata = self._ufl_function_space._ufl_signature_data_(renumbering)
firedrake/functionspaceimpl.py:131: in _ufl_signature_data_
    super()._ufl_signature_data_(*args, **kwargs))
../firedrake_venv/src/ufl/ufl/functionspace.py:176: in _ufl_signature_data_
    return BaseFunctionSpace._ufl_signature_data_(self, renumbering, "FunctionSpace")
../firedrake_venv/src/ufl/ufl/functionspace.py:138: in _ufl_signature_data_
    ddata = domain._ufl_signature_data_(renumbering)
firedrake/mesh.py:2273: in _ufl_signature_data_
    return (type(self), self.extruded, self.variable_layers,
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = Mesh(VectorElement(FiniteElement('Q', quadrilateral Complex, 1), dim=2), 38)
name = 'extruded'

    def __getattr__(self, name):
>       val = getattr(self._topology, name)
E       AttributeError: 'MeshTopology' object has no attribute 'extruded'

firedrake/mesh.py:2796: AttributeError

Check failure on line 82 in tests/firedrake/regression/test_zero_forms.py

See this annotation in the file changed.

@github-actions github-actions / Firedrake complex

test_zero_forms.test_math_functions[True-tanh(f) + cos(f) + sin(f)-1-constant-vector]

AttributeError: 'MeshTopology' object has no attribute 'extruded'
Raw output
mesh = Mesh(VectorElement(FiniteElement('Q', quadrilateral Complex, 1), dim=2), 38)
expr = 'tanh(f) + cos(f) + sin(f)', value = 1, typ = 'constant'
fs_type = 'vector'

    @pytest.mark.parametrize(['expr', 'value', 'typ', 'fs_type'],
                             itertools.product(['f',
                                                '2*f',
                                                'tanh(f)',
                                                '2 * tanh(f)',
                                                'f + tanh(f)',
                                                'cos(f) + sin(f)',
                                                'cos(f)*cos(f) + sin(f)*sin(f)',
                                                'tanh(f) + cos(f) + sin(f)',
                                                '1.0/tanh(f) + 1.0/f',
                                                'sqrt(f*f)',
                                                '1.0/tanh(sqrt(f*f)) + 1.0/f + sqrt(f*f)'],
                                               [1, 10, 20, -1, -10, -20],
                                               ['function', 'constant'],
                                               ['scalar', 'vector', 'tensor']))
    def test_math_functions(mesh, expr, value, typ, fs_type):
        if typ == 'function':
            family, degree = 'CG', 1
        elif typ == 'constant':
            family, degree = 'Real', 0
    
        if fs_type == "vector":
            V = VectorFunctionSpace(mesh, family, degree)
        elif fs_type == "tensor":
            V = TensorFunctionSpace(mesh, family, degree)
        else:
            V = FunctionSpace(mesh, family, degree)
        f = Function(V)
        f.assign(value)
        if fs_type == "vector":
            f = dot(f, f)
        elif fs_type == "tensor":
            f = inner(f, f)
    
>       actual = assemble(eval(expr)*dx)

tests/firedrake/regression/test_zero_forms.py:82: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/adjoint_utils/assembly.py:30: in wrapper
    output = assemble(form, *args, **kwargs)
firedrake/assemble.py:134: in assemble
    return get_assembler(expr, *args, **kwargs).assemble(tensor=tensor)
firedrake/assemble.py:983: in assemble
    self.execute_parloops(tensor)
firedrake/assemble.py:1004: in execute_parloops
    for parloop in self.parloops(tensor):
firedrake/assemble.py:1016: in parloops
    for local_kernel, subdomain_id in self.local_kernels:
/usr/lib/python3.12/functools.py:995: in __get__
    val = self.func(instance)
firedrake/assemble.py:1054: in local_kernels
    kernels = tsfc_interface.compile_form(
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
pyop2/caching.py:522: in wrapper
    k = hashkey(*args, **kwargs)
firedrake/tsfc_interface.py:140: in _compile_form_hashkey
    args[0].signature(),
../firedrake_venv/src/ufl/ufl/form.py:418: in signature
    self._compute_signature()
../firedrake_venv/src/ufl/ufl/form.py:671: in _compute_signature
    self._signature = compute_form_signature(self, self._compute_renumbering())
../firedrake_venv/src/ufl/ufl/algorithms/signature.py:137: in compute_form_signature
    terminal_hashdata = compute_terminal_hashdata(integrands, renumbering)
../firedrake_venv/src/ufl/ufl/algorithms/signature.py:65: in compute_terminal_hashdata
    data = expr._ufl_signature_data_(renumbering)
../firedrake_venv/src/ufl/ufl/coefficient.py:84: in _ufl_signature_data_
    fsdata = self._ufl_function_space._ufl_signature_data_(renumbering)
firedrake/functionspaceimpl.py:131: in _ufl_signature_data_
    super()._ufl_signature_data_(*args, **kwargs))
../firedrake_venv/src/ufl/ufl/functionspace.py:176: in _ufl_signature_data_
    return BaseFunctionSpace._ufl_signature_data_(self, renumbering, "FunctionSpace")
../firedrake_venv/src/ufl/ufl/functionspace.py:138: in _ufl_signature_data_
    ddata = domain._ufl_signature_data_(renumbering)
firedrake/mesh.py:2273: in _ufl_signature_data_
    return (type(self), self.extruded, self.variable_layers,
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = Mesh(VectorElement(FiniteElement('Q', quadrilateral Complex, 1), dim=2), 38)
name = 'extruded'

    def __getattr__(self, name):
>       val = getattr(self._topology, name)
E       AttributeError: 'MeshTopology' object has no attribute 'extruded'

firedrake/mesh.py:2796: AttributeError

Check failure on line 70 in tests/firedrake/submesh/test_submesh_interpolate.py

See this annotation in the file changed.

@github-actions github-actions / Firedrake complex

test_submesh_interpolate.test_submesh_interpolate_cell_cell_hex_1_processes[distribution_parameters1-LT-LT-LT-fe_fesub0-4]

TypeError: Cell complex construction undefined for hexahedron
Raw output
fe_fesub = [('DQ', 0), ('DQ', 0)], nelem = 4
condx = <class 'ufl.conditional.LT'>, condy = <class 'ufl.conditional.LT'>
condz = <class 'ufl.conditional.LT'>
distribution_parameters = {'overlap_type': (<DistributedMeshOverlapType.NONE: 1>, 0)}

    @pytest.mark.parametrize('nelem', [2, 4, 8, None])
    @pytest.mark.parametrize('fe_fesub', [[("DQ", 0), ("DQ", 0)],
                                          [("Q", 4), ("DQ", 5)]])
    @pytest.mark.parametrize('condx', [LT])
    @pytest.mark.parametrize('condy', [LT])
    @pytest.mark.parametrize('condz', [LT])
    @pytest.mark.parametrize('distribution_parameters', [None, {"overlap_type": (DistributedMeshOverlapType.NONE, 0)}])
    def test_submesh_interpolate_cell_cell_hex_1_processes(fe_fesub, nelem, condx, condy, condz, distribution_parameters):
        if nelem is None:
            mesh = Mesh(join(cwd, "..", "meshes", "cube_hex.msh"), distribution_parameters=distribution_parameters)
        else:
>           mesh = UnitCubeMesh(nelem, nelem, nelem, hexahedral=True, distribution_parameters=distribution_parameters)

tests/firedrake/submesh/test_submesh_interpolate.py:70: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/utility_meshes.py:1780: in UnitCubeMesh
    return CubeMesh(
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/utility_meshes.py:1723: in CubeMesh
    return BoxMesh(
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/utility_meshes.py:1653: in BoxMesh
    m = mesh.Mesh(
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/mesh.py:3093: in Mesh
    mesh = make_mesh_from_mesh_topology(topology, name)
firedrake/mesh.py:2884: in make_mesh_from_mesh_topology
    cell = topology.ufl_cell()
firedrake/mesh.py:731: in ufl_cell
    return self._ufl_cell
/usr/lib/python3.12/functools.py:995: in __get__
    val = self.func(instance)
firedrake/mesh.py:1227: in _ufl_cell
    return constructCellComplex(_cells[tdim][nfacets])
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

name = 'hexahedron'

    def constructCellComplex(name):
        if name == "vertex":
            return Point(0).to_ufl(name)
        elif name == "interval":
            return Point(1, [Point(0), Point(0)], vertex_num=2).to_ufl(name)
        elif name == "triangle":
            return n_sided_polygon(3).to_ufl(name)
        elif name == "quadrilateral":
            # return Cell(name)
            return n_sided_polygon(4).to_ufl(name)
        elif name == "tetrahedron":
            return make_tetrahedron().to_ufl(name)
        else:
>           raise TypeError("Cell complex construction undefined for {}".format(str(name)))
E           TypeError: Cell complex construction undefined for hexahedron

../firedrake_venv/src/redefining_fe/redefining_fe/cells.py:831: TypeError

Check failure on line 21 in tests/firedrake/extrusion/test_zero_integrand_extrusion.py

See this annotation in the file changed.

@github-actions github-actions / Firedrake complex

test_zero_integrand_extrusion.test_empty_integrand

ValueError: Cannot find the maximal complex
Raw output
def test_empty_integrand():
        m = UnitSquareMesh(5, 5)
        mesh = ExtrudedMesh(m, layers=5)
    
        P1 = FunctionSpace(mesh, 'CG', 1)
    
        u = TrialFunction(P1)
        v = TestFunction(P1)
        sol = Function(P1)
        f = Function(P1)
        f.interpolate(Constant(4.5))
    
        A = inner(u, v)*dx
        L = inner(f, v)*dx + inner(f, v)*ds_v
    
        u = Function(P1)
>       solve(A == L, u)

tests/firedrake/extrusion/test_zero_integrand_extrusion.py:21: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/adjoint_utils/solving.py:57: in wrapper
    output = solve(*args, **kwargs)
firedrake/solving.py:141: in solve
    _solve_varproblem(*args, **kwargs)
firedrake/solving.py:172: in _solve_varproblem
    solver = vs.LinearVariationalSolver(problem, solver_parameters=solver_parameters,
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
/usr/lib/python3.12/contextlib.py:81: in inner
    return func(*args, **kwds)
firedrake/adjoint_utils/variational_solver.py:44: in wrapper
    init(self, problem, *args, **kwargs)
firedrake/variational_solver.py:243: in __init__
    ctx.set_jacobian(self.snes)
firedrake/solving_utils.py:288: in set_jacobian
    snes.setJacobian(self.form_jacobian, J=self._jac.petscmat,
/usr/lib/python3.12/functools.py:995: in __get__
    val = self.func(instance)
firedrake/solving_utils.py:493: in _jac
    return self._assembler_jac.allocate()
firedrake/assemble.py:1316: in allocate
    self._make_maps_and_regions())
firedrake/assemble.py:1345: in _make_maps_and_regions
    elif any(local_kernel.indices == (None, None) for assembler in self._all_assemblers for local_kernel, _ in assembler.local_kernels):
firedrake/assemble.py:1345: in <genexpr>
    elif any(local_kernel.indices == (None, None) for assembler in self._all_assemblers for local_kernel, _ in assembler.local_kernels):
/usr/lib/python3.12/functools.py:995: in __get__
    val = self.func(instance)
firedrake/assemble.py:1054: in local_kernels
    kernels = tsfc_interface.compile_form(
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
pyop2/caching.py:550: in wrapper
    value = func(*args, **kwargs)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
pyop2/caching.py:550: in wrapper
    value = func(*args, **kwargs)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/tsfc_interface.py:220: in compile_form
    tsfc_kernel = TSFCKernel(
firedrake/tsfc_interface.py:95: in __init__
    tree = tsfc_compile_form(form, prefix=name, parameters=parameters,
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
pyop2/caching.py:550: in wrapper
    value = func(*args, **kwargs)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
pyop2/caching.py:550: in wrapper
    value = func(*args, **kwargs)
tsfc/driver.py:74: in compile_form
    kernel = compile_integral(integral_data, fd, prefix, parameters, interface=interface, diagonal=diagonal, log=log)
tsfc/driver.py:137: in compile_integral
    integrand_exprs = builder.compile_integrand(integrand, params, ctx)
tsfc/kernel_interface/common.py:141: in compile_integrand
    set_quad_rule(params, info.domain.ufl_cell(), info.integral_type, functions)
tsfc/kernel_interface/common.py:320: in set_quad_rule
    fiat_cell = max_complex(fiat_cells)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

complexes = [<FIAT.reference_element.TensorProductCell object at 0x7feea7061790>, <FIAT.reference_element.TensorProductCell object at 0x7feea7060b00>, <FIAT.reference_element.TensorProductCell object at 0x7feea7060b00>]

    def max_complex(complexes):
        max_cell = max(complexes)
        if all(max_cell >= b for b in complexes):
            return max_cell
        else:
>           raise ValueError("Cannot find the maximal complex")
E           ValueError: Cannot find the maximal complex

../firedrake_venv/src/fiat/FIAT/reference_element.py:1801: ValueError

Check failure on line 82 in tests/firedrake/regression/test_zero_forms.py

See this annotation in the file changed.

@github-actions github-actions / Firedrake complex

test_zero_forms.test_math_functions[True-tanh(f) + cos(f) + sin(f)-1-constant-tensor]

AttributeError: 'MeshTopology' object has no attribute 'extruded'
Raw output
mesh = Mesh(VectorElement(FiniteElement('Q', quadrilateral Complex, 1), dim=2), 38)
expr = 'tanh(f) + cos(f) + sin(f)', value = 1, typ = 'constant'
fs_type = 'tensor'

    @pytest.mark.parametrize(['expr', 'value', 'typ', 'fs_type'],
                             itertools.product(['f',
                                                '2*f',
                                                'tanh(f)',
                                                '2 * tanh(f)',
                                                'f + tanh(f)',
                                                'cos(f) + sin(f)',
                                                'cos(f)*cos(f) + sin(f)*sin(f)',
                                                'tanh(f) + cos(f) + sin(f)',
                                                '1.0/tanh(f) + 1.0/f',
                                                'sqrt(f*f)',
                                                '1.0/tanh(sqrt(f*f)) + 1.0/f + sqrt(f*f)'],
                                               [1, 10, 20, -1, -10, -20],
                                               ['function', 'constant'],
                                               ['scalar', 'vector', 'tensor']))
    def test_math_functions(mesh, expr, value, typ, fs_type):
        if typ == 'function':
            family, degree = 'CG', 1
        elif typ == 'constant':
            family, degree = 'Real', 0
    
        if fs_type == "vector":
            V = VectorFunctionSpace(mesh, family, degree)
        elif fs_type == "tensor":
            V = TensorFunctionSpace(mesh, family, degree)
        else:
            V = FunctionSpace(mesh, family, degree)
        f = Function(V)
        f.assign(value)
        if fs_type == "vector":
            f = dot(f, f)
        elif fs_type == "tensor":
            f = inner(f, f)
    
>       actual = assemble(eval(expr)*dx)

tests/firedrake/regression/test_zero_forms.py:82: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/adjoint_utils/assembly.py:30: in wrapper
    output = assemble(form, *args, **kwargs)
firedrake/assemble.py:134: in assemble
    return get_assembler(expr, *args, **kwargs).assemble(tensor=tensor)
firedrake/assemble.py:983: in assemble
    self.execute_parloops(tensor)
firedrake/assemble.py:1004: in execute_parloops
    for parloop in self.parloops(tensor):
firedrake/assemble.py:1016: in parloops
    for local_kernel, subdomain_id in self.local_kernels:
/usr/lib/python3.12/functools.py:995: in __get__
    val = self.func(instance)
firedrake/assemble.py:1054: in local_kernels
    kernels = tsfc_interface.compile_form(
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
pyop2/caching.py:522: in wrapper
    k = hashkey(*args, **kwargs)
firedrake/tsfc_interface.py:140: in _compile_form_hashkey
    args[0].signature(),
../firedrake_venv/src/ufl/ufl/form.py:418: in signature
    self._compute_signature()
../firedrake_venv/src/ufl/ufl/form.py:671: in _compute_signature
    self._signature = compute_form_signature(self, self._compute_renumbering())
../firedrake_venv/src/ufl/ufl/algorithms/signature.py:137: in compute_form_signature
    terminal_hashdata = compute_terminal_hashdata(integrands, renumbering)
../firedrake_venv/src/ufl/ufl/algorithms/signature.py:65: in compute_terminal_hashdata
    data = expr._ufl_signature_data_(renumbering)
../firedrake_venv/src/ufl/ufl/coefficient.py:84: in _ufl_signature_data_
    fsdata = self._ufl_function_space._ufl_signature_data_(renumbering)
firedrake/functionspaceimpl.py:131: in _ufl_signature_data_
    super()._ufl_signature_data_(*args, **kwargs))
../firedrake_venv/src/ufl/ufl/functionspace.py:176: in _ufl_signature_data_
    return BaseFunctionSpace._ufl_signature_data_(self, renumbering, "FunctionSpace")
../firedrake_venv/src/ufl/ufl/functionspace.py:138: in _ufl_signature_data_
    ddata = domain._ufl_signature_data_(renumbering)
firedrake/mesh.py:2273: in _ufl_signature_data_
    return (type(self), self.extruded, self.variable_layers,
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = Mesh(VectorElement(FiniteElement('Q', quadrilateral Complex, 1), dim=2), 38)
name = 'extruded'

    def __getattr__(self, name):
>       val = getattr(self._topology, name)
E       AttributeError: 'MeshTopology' object has no attribute 'extruded'

firedrake/mesh.py:2796: AttributeError

Check failure on line 70 in tests/firedrake/submesh/test_submesh_interpolate.py

See this annotation in the file changed.

@github-actions github-actions / Firedrake complex

test_submesh_interpolate.test_submesh_interpolate_cell_cell_hex_1_processes[distribution_parameters1-LT-LT-LT-fe_fesub0-8]

TypeError: Cell complex construction undefined for hexahedron
Raw output
fe_fesub = [('DQ', 0), ('DQ', 0)], nelem = 8
condx = <class 'ufl.conditional.LT'>, condy = <class 'ufl.conditional.LT'>
condz = <class 'ufl.conditional.LT'>
distribution_parameters = {'overlap_type': (<DistributedMeshOverlapType.NONE: 1>, 0)}

    @pytest.mark.parametrize('nelem', [2, 4, 8, None])
    @pytest.mark.parametrize('fe_fesub', [[("DQ", 0), ("DQ", 0)],
                                          [("Q", 4), ("DQ", 5)]])
    @pytest.mark.parametrize('condx', [LT])
    @pytest.mark.parametrize('condy', [LT])
    @pytest.mark.parametrize('condz', [LT])
    @pytest.mark.parametrize('distribution_parameters', [None, {"overlap_type": (DistributedMeshOverlapType.NONE, 0)}])
    def test_submesh_interpolate_cell_cell_hex_1_processes(fe_fesub, nelem, condx, condy, condz, distribution_parameters):
        if nelem is None:
            mesh = Mesh(join(cwd, "..", "meshes", "cube_hex.msh"), distribution_parameters=distribution_parameters)
        else:
>           mesh = UnitCubeMesh(nelem, nelem, nelem, hexahedral=True, distribution_parameters=distribution_parameters)

tests/firedrake/submesh/test_submesh_interpolate.py:70: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/utility_meshes.py:1780: in UnitCubeMesh
    return CubeMesh(
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/utility_meshes.py:1723: in CubeMesh
    return BoxMesh(
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/utility_meshes.py:1653: in BoxMesh
    m = mesh.Mesh(
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/mesh.py:3093: in Mesh
    mesh = make_mesh_from_mesh_topology(topology, name)
firedrake/mesh.py:2884: in make_mesh_from_mesh_topology
    cell = topology.ufl_cell()
firedrake/mesh.py:731: in ufl_cell
    return self._ufl_cell
/usr/lib/python3.12/functools.py:995: in __get__
    val = self.func(instance)
firedrake/mesh.py:1227: in _ufl_cell
    return constructCellComplex(_cells[tdim][nfacets])
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

name = 'hexahedron'

    def constructCellComplex(name):
        if name == "vertex":
            return Point(0).to_ufl(name)
        elif name == "interval":
            return Point(1, [Point(0), Point(0)], vertex_num=2).to_ufl(name)
        elif name == "triangle":
            return n_sided_polygon(3).to_ufl(name)
        elif name == "quadrilateral":
            # return Cell(name)
            return n_sided_polygon(4).to_ufl(name)
        elif name == "tetrahedron":
            return make_tetrahedron().to_ufl(name)
        else:
>           raise TypeError("Cell complex construction undefined for {}".format(str(name)))
E           TypeError: Cell complex construction undefined for hexahedron

../firedrake_venv/src/redefining_fe/redefining_fe/cells.py:831: TypeError

Check failure on line 68 in tests/firedrake/submesh/test_submesh_interpolate.py

See this annotation in the file changed.

@github-actions github-actions / Firedrake complex

test_submesh_interpolate.test_submesh_interpolate_cell_cell_hex_1_processes[distribution_parameters1-LT-LT-LT-fe_fesub0-None]

TypeError: Cell complex construction undefined for hexahedron
Raw output
fe_fesub = [('DQ', 0), ('DQ', 0)], nelem = None
condx = <class 'ufl.conditional.LT'>, condy = <class 'ufl.conditional.LT'>
condz = <class 'ufl.conditional.LT'>
distribution_parameters = {'overlap_type': (<DistributedMeshOverlapType.NONE: 1>, 0)}

    @pytest.mark.parametrize('nelem', [2, 4, 8, None])
    @pytest.mark.parametrize('fe_fesub', [[("DQ", 0), ("DQ", 0)],
                                          [("Q", 4), ("DQ", 5)]])
    @pytest.mark.parametrize('condx', [LT])
    @pytest.mark.parametrize('condy', [LT])
    @pytest.mark.parametrize('condz', [LT])
    @pytest.mark.parametrize('distribution_parameters', [None, {"overlap_type": (DistributedMeshOverlapType.NONE, 0)}])
    def test_submesh_interpolate_cell_cell_hex_1_processes(fe_fesub, nelem, condx, condy, condz, distribution_parameters):
        if nelem is None:
>           mesh = Mesh(join(cwd, "..", "meshes", "cube_hex.msh"), distribution_parameters=distribution_parameters)

tests/firedrake/submesh/test_submesh_interpolate.py:68: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/mesh.py:3093: in Mesh
    mesh = make_mesh_from_mesh_topology(topology, name)
firedrake/mesh.py:2884: in make_mesh_from_mesh_topology
    cell = topology.ufl_cell()
firedrake/mesh.py:731: in ufl_cell
    return self._ufl_cell
/usr/lib/python3.12/functools.py:995: in __get__
    val = self.func(instance)
firedrake/mesh.py:1227: in _ufl_cell
    return constructCellComplex(_cells[tdim][nfacets])
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

name = 'hexahedron'

    def constructCellComplex(name):
        if name == "vertex":
            return Point(0).to_ufl(name)
        elif name == "interval":
            return Point(1, [Point(0), Point(0)], vertex_num=2).to_ufl(name)
        elif name == "triangle":
            return n_sided_polygon(3).to_ufl(name)
        elif name == "quadrilateral":
            # return Cell(name)
            return n_sided_polygon(4).to_ufl(name)
        elif name == "tetrahedron":
            return make_tetrahedron().to_ufl(name)
        else:
>           raise TypeError("Cell complex construction undefined for {}".format(str(name)))
E           TypeError: Cell complex construction undefined for hexahedron

../firedrake_venv/src/redefining_fe/redefining_fe/cells.py:831: TypeError

Check failure on line 74 in tests/firedrake/regression/test_zero_forms.py

See this annotation in the file changed.

@github-actions github-actions / Firedrake complex

test_zero_forms.test_math_functions[True-tanh(f) + cos(f) + sin(f)-10-function-scalar]

NotImplementedError: Non-Simplex elements are not yet supported
Raw output
mesh = Mesh(VectorElement(FiniteElement('Q', quadrilateral Complex, 1), dim=2), 38)
expr = 'tanh(f) + cos(f) + sin(f)', value = 10, typ = 'function'
fs_type = 'scalar'

    @pytest.mark.parametrize(['expr', 'value', 'typ', 'fs_type'],
                             itertools.product(['f',
                                                '2*f',
                                                'tanh(f)',
                                                '2 * tanh(f)',
                                                'f + tanh(f)',
                                                'cos(f) + sin(f)',
                                                'cos(f)*cos(f) + sin(f)*sin(f)',
                                                'tanh(f) + cos(f) + sin(f)',
                                                '1.0/tanh(f) + 1.0/f',
                                                'sqrt(f*f)',
                                                '1.0/tanh(sqrt(f*f)) + 1.0/f + sqrt(f*f)'],
                                               [1, 10, 20, -1, -10, -20],
                                               ['function', 'constant'],
                                               ['scalar', 'vector', 'tensor']))
    def test_math_functions(mesh, expr, value, typ, fs_type):
        if typ == 'function':
            family, degree = 'CG', 1
        elif typ == 'constant':
            family, degree = 'Real', 0
    
        if fs_type == "vector":
            V = VectorFunctionSpace(mesh, family, degree)
        elif fs_type == "tensor":
            V = TensorFunctionSpace(mesh, family, degree)
        else:
>           V = FunctionSpace(mesh, family, degree)

tests/firedrake/regression/test_zero_forms.py:74: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspace.py:105: in FunctionSpace
    return impl.WithGeometry.make_function_space(mesh, element, name=name)
firedrake/functionspaceimpl.py:371: in make_function_space
    new = FunctionSpace(topology, element, name=name)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspaceimpl.py:520: in __init__
    self.set_shared_data()
firedrake/functionspaceimpl.py:529: in set_shared_data
    sdata = get_shared_data(self._mesh, element)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspacedata.py:541: in get_shared_data
    return FunctionSpaceData(mesh, ufl_element, boundary_set)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspacedata.py:420: in __init__
    finat_element = create_element(ufl_element)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspacedata.py:42: in create_element
    finat_element = _create_element(ufl_element)
tsfc/finatinterface.py:325: in create_element
    finat_element, deps = _create_element(ufl_element,
tsfc/finatinterface.py:355: in _create_element
    finat_element, deps = convert(ufl_element, **kwargs)
/usr/lib/python3.12/functools.py:909: in wrapper
    return dispatch(args[0].__class__)(*args, **kw)
tsfc/finatinterface.py:153: in convert_finiteelement
    cell = as_fiat_cell(element.cell)
tsfc/finatinterface.py:116: in as_fiat_cell
    return cell.to_fiat()
../firedrake_venv/src/redefining_fe/redefining_fe/cells.py:802: in to_fiat
    return self.cell_complex.to_fiat()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = f15

    def to_fiat(self):
        if len(self.get_topology()[self.dimension][0]) == self.dimension + 1:
            return CellComplexToFiatSimplex(self)
>       raise NotImplementedError("Non-Simplex elements are not yet supported")
E       NotImplementedError: Non-Simplex elements are not yet supported

../firedrake_venv/src/redefining_fe/redefining_fe/cells.py:617: NotImplementedError

Check failure on line 70 in tests/firedrake/submesh/test_submesh_interpolate.py

See this annotation in the file changed.

@github-actions github-actions / Firedrake complex

test_submesh_interpolate.test_submesh_interpolate_cell_cell_hex_1_processes[distribution_parameters1-LT-LT-LT-fe_fesub1-2]

TypeError: Cell complex construction undefined for hexahedron
Raw output
fe_fesub = [('Q', 4), ('DQ', 5)], nelem = 2
condx = <class 'ufl.conditional.LT'>, condy = <class 'ufl.conditional.LT'>
condz = <class 'ufl.conditional.LT'>
distribution_parameters = {'overlap_type': (<DistributedMeshOverlapType.NONE: 1>, 0)}

    @pytest.mark.parametrize('nelem', [2, 4, 8, None])
    @pytest.mark.parametrize('fe_fesub', [[("DQ", 0), ("DQ", 0)],
                                          [("Q", 4), ("DQ", 5)]])
    @pytest.mark.parametrize('condx', [LT])
    @pytest.mark.parametrize('condy', [LT])
    @pytest.mark.parametrize('condz', [LT])
    @pytest.mark.parametrize('distribution_parameters', [None, {"overlap_type": (DistributedMeshOverlapType.NONE, 0)}])
    def test_submesh_interpolate_cell_cell_hex_1_processes(fe_fesub, nelem, condx, condy, condz, distribution_parameters):
        if nelem is None:
            mesh = Mesh(join(cwd, "..", "meshes", "cube_hex.msh"), distribution_parameters=distribution_parameters)
        else:
>           mesh = UnitCubeMesh(nelem, nelem, nelem, hexahedral=True, distribution_parameters=distribution_parameters)

tests/firedrake/submesh/test_submesh_interpolate.py:70: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/utility_meshes.py:1780: in UnitCubeMesh
    return CubeMesh(
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/utility_meshes.py:1723: in CubeMesh
    return BoxMesh(
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/utility_meshes.py:1653: in BoxMesh
    m = mesh.Mesh(
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/mesh.py:3093: in Mesh
    mesh = make_mesh_from_mesh_topology(topology, name)
firedrake/mesh.py:2884: in make_mesh_from_mesh_topology
    cell = topology.ufl_cell()
firedrake/mesh.py:731: in ufl_cell
    return self._ufl_cell
/usr/lib/python3.12/functools.py:995: in __get__
    val = self.func(instance)
firedrake/mesh.py:1227: in _ufl_cell
    return constructCellComplex(_cells[tdim][nfacets])
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

name = 'hexahedron'

    def constructCellComplex(name):
        if name == "vertex":
            return Point(0).to_ufl(name)
        elif name == "interval":
            return Point(1, [Point(0), Point(0)], vertex_num=2).to_ufl(name)
        elif name == "triangle":
            return n_sided_polygon(3).to_ufl(name)
        elif name == "quadrilateral":
            # return Cell(name)
            return n_sided_polygon(4).to_ufl(name)
        elif name == "tetrahedron":
            return make_tetrahedron().to_ufl(name)
        else:
>           raise TypeError("Cell complex construction undefined for {}".format(str(name)))
E           TypeError: Cell complex construction undefined for hexahedron

../firedrake_venv/src/redefining_fe/redefining_fe/cells.py:831: TypeError

Check failure on line 70 in tests/firedrake/regression/test_zero_forms.py

See this annotation in the file changed.

@github-actions github-actions / Firedrake complex

test_zero_forms.test_math_functions[True-tanh(f) + cos(f) + sin(f)-10-function-vector]

NotImplementedError: Non-Simplex elements are not yet supported
Raw output
mesh = Mesh(VectorElement(FiniteElement('Q', quadrilateral Complex, 1), dim=2), 38)
expr = 'tanh(f) + cos(f) + sin(f)', value = 10, typ = 'function'
fs_type = 'vector'

    @pytest.mark.parametrize(['expr', 'value', 'typ', 'fs_type'],
                             itertools.product(['f',
                                                '2*f',
                                                'tanh(f)',
                                                '2 * tanh(f)',
                                                'f + tanh(f)',
                                                'cos(f) + sin(f)',
                                                'cos(f)*cos(f) + sin(f)*sin(f)',
                                                'tanh(f) + cos(f) + sin(f)',
                                                '1.0/tanh(f) + 1.0/f',
                                                'sqrt(f*f)',
                                                '1.0/tanh(sqrt(f*f)) + 1.0/f + sqrt(f*f)'],
                                               [1, 10, 20, -1, -10, -20],
                                               ['function', 'constant'],
                                               ['scalar', 'vector', 'tensor']))
    def test_math_functions(mesh, expr, value, typ, fs_type):
        if typ == 'function':
            family, degree = 'CG', 1
        elif typ == 'constant':
            family, degree = 'Real', 0
    
        if fs_type == "vector":
>           V = VectorFunctionSpace(mesh, family, degree)

tests/firedrake/regression/test_zero_forms.py:70: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspace.py:191: in VectorFunctionSpace
    return FunctionSpace(mesh, element, name=name)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspace.py:105: in FunctionSpace
    return impl.WithGeometry.make_function_space(mesh, element, name=name)
firedrake/functionspaceimpl.py:371: in make_function_space
    new = FunctionSpace(topology, element, name=name)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspaceimpl.py:520: in __init__
    self.set_shared_data()
firedrake/functionspaceimpl.py:529: in set_shared_data
    sdata = get_shared_data(self._mesh, element)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspacedata.py:541: in get_shared_data
    return FunctionSpaceData(mesh, ufl_element, boundary_set)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspacedata.py:420: in __init__
    finat_element = create_element(ufl_element)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspacedata.py:42: in create_element
    finat_element = _create_element(ufl_element)
tsfc/finatinterface.py:325: in create_element
    finat_element, deps = _create_element(ufl_element,
tsfc/finatinterface.py:355: in _create_element
    finat_element, deps = convert(ufl_element, **kwargs)
/usr/lib/python3.12/functools.py:909: in wrapper
    return dispatch(args[0].__class__)(*args, **kw)
tsfc/finatinterface.py:263: in convert_tensorelement
    inner_elem, deps = _create_element(element.sub_elements[0], **kwargs)
tsfc/finatinterface.py:355: in _create_element
    finat_element, deps = convert(ufl_element, **kwargs)
/usr/lib/python3.12/functools.py:909: in wrapper
    return dispatch(args[0].__class__)(*args, **kw)
tsfc/finatinterface.py:153: in convert_finiteelement
    cell = as_fiat_cell(element.cell)
tsfc/finatinterface.py:116: in as_fiat_cell
    return cell.to_fiat()
../firedrake_venv/src/redefining_fe/redefining_fe/cells.py:802: in to_fiat
    return self.cell_complex.to_fiat()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = f15

    def to_fiat(self):
        if len(self.get_topology()[self.dimension][0]) == self.dimension + 1:
            return CellComplexToFiatSimplex(self)
>       raise NotImplementedError("Non-Simplex elements are not yet supported")
E       NotImplementedError: Non-Simplex elements are not yet supported

../firedrake_venv/src/redefining_fe/redefining_fe/cells.py:617: NotImplementedError

Check failure on line 72 in tests/firedrake/regression/test_zero_forms.py

See this annotation in the file changed.

@github-actions github-actions / Firedrake complex

test_zero_forms.test_math_functions[True-tanh(f) + cos(f) + sin(f)-10-function-tensor]

NotImplementedError: Non-Simplex elements are not yet supported
Raw output
mesh = Mesh(VectorElement(FiniteElement('Q', quadrilateral Complex, 1), dim=2), 38)
expr = 'tanh(f) + cos(f) + sin(f)', value = 10, typ = 'function'
fs_type = 'tensor'

    @pytest.mark.parametrize(['expr', 'value', 'typ', 'fs_type'],
                             itertools.product(['f',
                                                '2*f',
                                                'tanh(f)',
                                                '2 * tanh(f)',
                                                'f + tanh(f)',
                                                'cos(f) + sin(f)',
                                                'cos(f)*cos(f) + sin(f)*sin(f)',
                                                'tanh(f) + cos(f) + sin(f)',
                                                '1.0/tanh(f) + 1.0/f',
                                                'sqrt(f*f)',
                                                '1.0/tanh(sqrt(f*f)) + 1.0/f + sqrt(f*f)'],
                                               [1, 10, 20, -1, -10, -20],
                                               ['function', 'constant'],
                                               ['scalar', 'vector', 'tensor']))
    def test_math_functions(mesh, expr, value, typ, fs_type):
        if typ == 'function':
            family, degree = 'CG', 1
        elif typ == 'constant':
            family, degree = 'Real', 0
    
        if fs_type == "vector":
            V = VectorFunctionSpace(mesh, family, degree)
        elif fs_type == "tensor":
>           V = TensorFunctionSpace(mesh, family, degree)

tests/firedrake/regression/test_zero_forms.py:72: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspace.py:242: in TensorFunctionSpace
    return FunctionSpace(mesh, element, name=name)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspace.py:105: in FunctionSpace
    return impl.WithGeometry.make_function_space(mesh, element, name=name)
firedrake/functionspaceimpl.py:371: in make_function_space
    new = FunctionSpace(topology, element, name=name)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspaceimpl.py:520: in __init__
    self.set_shared_data()
firedrake/functionspaceimpl.py:529: in set_shared_data
    sdata = get_shared_data(self._mesh, element)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspacedata.py:541: in get_shared_data
    return FunctionSpaceData(mesh, ufl_element, boundary_set)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspacedata.py:420: in __init__
    finat_element = create_element(ufl_element)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspacedata.py:42: in create_element
    finat_element = _create_element(ufl_element)
tsfc/finatinterface.py:325: in create_element
    finat_element, deps = _create_element(ufl_element,
tsfc/finatinterface.py:355: in _create_element
    finat_element, deps = convert(ufl_element, **kwargs)
/usr/lib/python3.12/functools.py:909: in wrapper
    return dispatch(args[0].__class__)(*args, **kw)
tsfc/finatinterface.py:263: in convert_tensorelement
    inner_elem, deps = _create_element(element.sub_elements[0], **kwargs)
tsfc/finatinterface.py:355: in _create_element
    finat_element, deps = convert(ufl_element, **kwargs)
/usr/lib/python3.12/functools.py:909: in wrapper
    return dispatch(args[0].__class__)(*args, **kw)
tsfc/finatinterface.py:153: in convert_finiteelement
    cell = as_fiat_cell(element.cell)
tsfc/finatinterface.py:116: in as_fiat_cell
    return cell.to_fiat()
../firedrake_venv/src/redefining_fe/redefining_fe/cells.py:802: in to_fiat
    return self.cell_complex.to_fiat()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = f15

    def to_fiat(self):
        if len(self.get_topology()[self.dimension][0]) == self.dimension + 1:
            return CellComplexToFiatSimplex(self)
>       raise NotImplementedError("Non-Simplex elements are not yet supported")
E       NotImplementedError: Non-Simplex elements are not yet supported

../firedrake_venv/src/redefining_fe/redefining_fe/cells.py:617: NotImplementedError

Check failure on line 70 in tests/firedrake/submesh/test_submesh_interpolate.py

See this annotation in the file changed.

@github-actions github-actions / Firedrake complex

test_submesh_interpolate.test_submesh_interpolate_cell_cell_hex_1_processes[distribution_parameters1-LT-LT-LT-fe_fesub1-4]

TypeError: Cell complex construction undefined for hexahedron
Raw output
fe_fesub = [('Q', 4), ('DQ', 5)], nelem = 4
condx = <class 'ufl.conditional.LT'>, condy = <class 'ufl.conditional.LT'>
condz = <class 'ufl.conditional.LT'>
distribution_parameters = {'overlap_type': (<DistributedMeshOverlapType.NONE: 1>, 0)}

    @pytest.mark.parametrize('nelem', [2, 4, 8, None])
    @pytest.mark.parametrize('fe_fesub', [[("DQ", 0), ("DQ", 0)],
                                          [("Q", 4), ("DQ", 5)]])
    @pytest.mark.parametrize('condx', [LT])
    @pytest.mark.parametrize('condy', [LT])
    @pytest.mark.parametrize('condz', [LT])
    @pytest.mark.parametrize('distribution_parameters', [None, {"overlap_type": (DistributedMeshOverlapType.NONE, 0)}])
    def test_submesh_interpolate_cell_cell_hex_1_processes(fe_fesub, nelem, condx, condy, condz, distribution_parameters):
        if nelem is None:
            mesh = Mesh(join(cwd, "..", "meshes", "cube_hex.msh"), distribution_parameters=distribution_parameters)
        else:
>           mesh = UnitCubeMesh(nelem, nelem, nelem, hexahedral=True, distribution_parameters=distribution_parameters)

tests/firedrake/submesh/test_submesh_interpolate.py:70: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/utility_meshes.py:1780: in UnitCubeMesh
    return CubeMesh(
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/utility_meshes.py:1723: in CubeMesh
    return BoxMesh(
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/utility_meshes.py:1653: in BoxMesh
    m = mesh.Mesh(
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/mesh.py:3093: in Mesh
    mesh = make_mesh_from_mesh_topology(topology, name)
firedrake/mesh.py:2884: in make_mesh_from_mesh_topology
    cell = topology.ufl_cell()
firedrake/mesh.py:731: in ufl_cell
    return self._ufl_cell
/usr/lib/python3.12/functools.py:995: in __get__
    val = self.func(instance)
firedrake/mesh.py:1227: in _ufl_cell
    return constructCellComplex(_cells[tdim][nfacets])
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

name = 'hexahedron'

    def constructCellComplex(name):
        if name == "vertex":
            return Point(0).to_ufl(name)
        elif name == "interval":
            return Point(1, [Point(0), Point(0)], vertex_num=2).to_ufl(name)
        elif name == "triangle":
            return n_sided_polygon(3).to_ufl(name)
        elif name == "quadrilateral":
            # return Cell(name)
            return n_sided_polygon(4).to_ufl(name)
        elif name == "tetrahedron":
            return make_tetrahedron().to_ufl(name)
        else:
>           raise TypeError("Cell complex construction undefined for {}".format(str(name)))
E           TypeError: Cell complex construction undefined for hexahedron

../firedrake_venv/src/redefining_fe/redefining_fe/cells.py:831: TypeError

Check failure on line 82 in tests/firedrake/regression/test_zero_forms.py

See this annotation in the file changed.

@github-actions github-actions / Firedrake complex

test_zero_forms.test_math_functions[True-tanh(f) + cos(f) + sin(f)-10-constant-scalar]

AttributeError: 'MeshTopology' object has no attribute 'extruded'
Raw output
mesh = Mesh(VectorElement(FiniteElement('Q', quadrilateral Complex, 1), dim=2), 38)
expr = 'tanh(f) + cos(f) + sin(f)', value = 10, typ = 'constant'
fs_type = 'scalar'

    @pytest.mark.parametrize(['expr', 'value', 'typ', 'fs_type'],
                             itertools.product(['f',
                                                '2*f',
                                                'tanh(f)',
                                                '2 * tanh(f)',
                                                'f + tanh(f)',
                                                'cos(f) + sin(f)',
                                                'cos(f)*cos(f) + sin(f)*sin(f)',
                                                'tanh(f) + cos(f) + sin(f)',
                                                '1.0/tanh(f) + 1.0/f',
                                                'sqrt(f*f)',
                                                '1.0/tanh(sqrt(f*f)) + 1.0/f + sqrt(f*f)'],
                                               [1, 10, 20, -1, -10, -20],
                                               ['function', 'constant'],
                                               ['scalar', 'vector', 'tensor']))
    def test_math_functions(mesh, expr, value, typ, fs_type):
        if typ == 'function':
            family, degree = 'CG', 1
        elif typ == 'constant':
            family, degree = 'Real', 0
    
        if fs_type == "vector":
            V = VectorFunctionSpace(mesh, family, degree)
        elif fs_type == "tensor":
            V = TensorFunctionSpace(mesh, family, degree)
        else:
            V = FunctionSpace(mesh, family, degree)
        f = Function(V)
        f.assign(value)
        if fs_type == "vector":
            f = dot(f, f)
        elif fs_type == "tensor":
            f = inner(f, f)
    
>       actual = assemble(eval(expr)*dx)

tests/firedrake/regression/test_zero_forms.py:82: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/adjoint_utils/assembly.py:30: in wrapper
    output = assemble(form, *args, **kwargs)
firedrake/assemble.py:134: in assemble
    return get_assembler(expr, *args, **kwargs).assemble(tensor=tensor)
firedrake/assemble.py:983: in assemble
    self.execute_parloops(tensor)
firedrake/assemble.py:1004: in execute_parloops
    for parloop in self.parloops(tensor):
firedrake/assemble.py:1016: in parloops
    for local_kernel, subdomain_id in self.local_kernels:
/usr/lib/python3.12/functools.py:995: in __get__
    val = self.func(instance)
firedrake/assemble.py:1054: in local_kernels
    kernels = tsfc_interface.compile_form(
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
pyop2/caching.py:522: in wrapper
    k = hashkey(*args, **kwargs)
firedrake/tsfc_interface.py:140: in _compile_form_hashkey
    args[0].signature(),
../firedrake_venv/src/ufl/ufl/form.py:418: in signature
    self._compute_signature()
../firedrake_venv/src/ufl/ufl/form.py:671: in _compute_signature
    self._signature = compute_form_signature(self, self._compute_renumbering())
../firedrake_venv/src/ufl/ufl/algorithms/signature.py:137: in compute_form_signature
    terminal_hashdata = compute_terminal_hashdata(integrands, renumbering)
../firedrake_venv/src/ufl/ufl/algorithms/signature.py:65: in compute_terminal_hashdata
    data = expr._ufl_signature_data_(renumbering)
../firedrake_venv/src/ufl/ufl/coefficient.py:84: in _ufl_signature_data_
    fsdata = self._ufl_function_space._ufl_signature_data_(renumbering)
firedrake/functionspaceimpl.py:131: in _ufl_signature_data_
    super()._ufl_signature_data_(*args, **kwargs))
../firedrake_venv/src/ufl/ufl/functionspace.py:176: in _ufl_signature_data_
    return BaseFunctionSpace._ufl_signature_data_(self, renumbering, "FunctionSpace")
../firedrake_venv/src/ufl/ufl/functionspace.py:138: in _ufl_signature_data_
    ddata = domain._ufl_signature_data_(renumbering)
firedrake/mesh.py:2273: in _ufl_signature_data_
    return (type(self), self.extruded, self.variable_layers,
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = Mesh(VectorElement(FiniteElement('Q', quadrilateral Complex, 1), dim=2), 38)
name = 'extruded'

    def __getattr__(self, name):
>       val = getattr(self._topology, name)
E       AttributeError: 'MeshTopology' object has no attribute 'extruded'

firedrake/mesh.py:2796: AttributeError

Check failure on line 70 in tests/firedrake/submesh/test_submesh_interpolate.py

See this annotation in the file changed.

@github-actions github-actions / Firedrake complex

test_submesh_interpolate.test_submesh_interpolate_cell_cell_hex_1_processes[distribution_parameters1-LT-LT-LT-fe_fesub1-8]

TypeError: Cell complex construction undefined for hexahedron
Raw output
fe_fesub = [('Q', 4), ('DQ', 5)], nelem = 8
condx = <class 'ufl.conditional.LT'>, condy = <class 'ufl.conditional.LT'>
condz = <class 'ufl.conditional.LT'>
distribution_parameters = {'overlap_type': (<DistributedMeshOverlapType.NONE: 1>, 0)}

    @pytest.mark.parametrize('nelem', [2, 4, 8, None])
    @pytest.mark.parametrize('fe_fesub', [[("DQ", 0), ("DQ", 0)],
                                          [("Q", 4), ("DQ", 5)]])
    @pytest.mark.parametrize('condx', [LT])
    @pytest.mark.parametrize('condy', [LT])
    @pytest.mark.parametrize('condz', [LT])
    @pytest.mark.parametrize('distribution_parameters', [None, {"overlap_type": (DistributedMeshOverlapType.NONE, 0)}])
    def test_submesh_interpolate_cell_cell_hex_1_processes(fe_fesub, nelem, condx, condy, condz, distribution_parameters):
        if nelem is None:
            mesh = Mesh(join(cwd, "..", "meshes", "cube_hex.msh"), distribution_parameters=distribution_parameters)
        else:
>           mesh = UnitCubeMesh(nelem, nelem, nelem, hexahedral=True, distribution_parameters=distribution_parameters)

tests/firedrake/submesh/test_submesh_interpolate.py:70: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/utility_meshes.py:1780: in UnitCubeMesh
    return CubeMesh(
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/utility_meshes.py:1723: in CubeMesh
    return BoxMesh(
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/utility_meshes.py:1653: in BoxMesh
    m = mesh.Mesh(
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/mesh.py:3093: in Mesh
    mesh = make_mesh_from_mesh_topology(topology, name)
firedrake/mesh.py:2884: in make_mesh_from_mesh_topology
    cell = topology.ufl_cell()
firedrake/mesh.py:731: in ufl_cell
    return self._ufl_cell
/usr/lib/python3.12/functools.py:995: in __get__
    val = self.func(instance)
firedrake/mesh.py:1227: in _ufl_cell
    return constructCellComplex(_cells[tdim][nfacets])
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

name = 'hexahedron'

    def constructCellComplex(name):
        if name == "vertex":
            return Point(0).to_ufl(name)
        elif name == "interval":
            return Point(1, [Point(0), Point(0)], vertex_num=2).to_ufl(name)
        elif name == "triangle":
            return n_sided_polygon(3).to_ufl(name)
        elif name == "quadrilateral":
            # return Cell(name)
            return n_sided_polygon(4).to_ufl(name)
        elif name == "tetrahedron":
            return make_tetrahedron().to_ufl(name)
        else:
>           raise TypeError("Cell complex construction undefined for {}".format(str(name)))
E           TypeError: Cell complex construction undefined for hexahedron

../firedrake_venv/src/redefining_fe/redefining_fe/cells.py:831: TypeError

Check failure on line 203 in tests/firedrake/regression/test_function_spaces.py

See this annotation in the file changed.

@github-actions github-actions / Firedrake complex

test_function_spaces.test_reconstruct_mesh[quad-triangle-dual]

NotImplementedError: Non-Simplex elements are not yet supported
Raw output
meshes = (Mesh(VectorElement(FiniteElement('Q', quadrilateral Complex, 1), dim=2), 137), Mesh(VectorElement(FiniteElement('Lagrange', triangle Complex, 1), dim=2), 138))
dual = True

    def test_reconstruct_mesh(meshes, dual):
>       V1 = FunctionSpace(meshes[0], "Lagrange", 1)

tests/firedrake/regression/test_function_spaces.py:203: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspace.py:105: in FunctionSpace
    return impl.WithGeometry.make_function_space(mesh, element, name=name)
firedrake/functionspaceimpl.py:359: in make_function_space
    mesh.init()
firedrake/mesh.py:2282: in init
    self._callback(self)
firedrake/mesh.py:2304: in callback
    coordinates_fs = functionspace.FunctionSpace(self.topology, self.ufl_coordinate_element())
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspace.py:105: in FunctionSpace
    return impl.WithGeometry.make_function_space(mesh, element, name=name)
firedrake/functionspaceimpl.py:371: in make_function_space
    new = FunctionSpace(topology, element, name=name)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspaceimpl.py:520: in __init__
    self.set_shared_data()
firedrake/functionspaceimpl.py:529: in set_shared_data
    sdata = get_shared_data(self._mesh, element)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspacedata.py:541: in get_shared_data
    return FunctionSpaceData(mesh, ufl_element, boundary_set)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspacedata.py:420: in __init__
    finat_element = create_element(ufl_element)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspacedata.py:42: in create_element
    finat_element = _create_element(ufl_element)
tsfc/finatinterface.py:325: in create_element
    finat_element, deps = _create_element(ufl_element,
tsfc/finatinterface.py:355: in _create_element
    finat_element, deps = convert(ufl_element, **kwargs)
/usr/lib/python3.12/functools.py:909: in wrapper
    return dispatch(args[0].__class__)(*args, **kw)
tsfc/finatinterface.py:263: in convert_tensorelement
    inner_elem, deps = _create_element(element.sub_elements[0], **kwargs)
tsfc/finatinterface.py:355: in _create_element
    finat_element, deps = convert(ufl_element, **kwargs)
/usr/lib/python3.12/functools.py:909: in wrapper
    return dispatch(args[0].__class__)(*args, **kw)
tsfc/finatinterface.py:153: in convert_finiteelement
    cell = as_fiat_cell(element.cell)
tsfc/finatinterface.py:116: in as_fiat_cell
    return cell.to_fiat()
../firedrake_venv/src/redefining_fe/redefining_fe/cells.py:802: in to_fiat
    return self.cell_complex.to_fiat()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = f167

    def to_fiat(self):
        if len(self.get_topology()[self.dimension][0]) == self.dimension + 1:
            return CellComplexToFiatSimplex(self)
>       raise NotImplementedError("Non-Simplex elements are not yet supported")
E       NotImplementedError: Non-Simplex elements are not yet supported

../firedrake_venv/src/redefining_fe/redefining_fe/cells.py:617: NotImplementedError

Check failure on line 68 in tests/firedrake/submesh/test_submesh_interpolate.py

See this annotation in the file changed.

@github-actions github-actions / Firedrake complex

test_submesh_interpolate.test_submesh_interpolate_cell_cell_hex_1_processes[distribution_parameters1-LT-LT-LT-fe_fesub1-None]

TypeError: Cell complex construction undefined for hexahedron
Raw output
fe_fesub = [('Q', 4), ('DQ', 5)], nelem = None
condx = <class 'ufl.conditional.LT'>, condy = <class 'ufl.conditional.LT'>
condz = <class 'ufl.conditional.LT'>
distribution_parameters = {'overlap_type': (<DistributedMeshOverlapType.NONE: 1>, 0)}

    @pytest.mark.parametrize('nelem', [2, 4, 8, None])
    @pytest.mark.parametrize('fe_fesub', [[("DQ", 0), ("DQ", 0)],
                                          [("Q", 4), ("DQ", 5)]])
    @pytest.mark.parametrize('condx', [LT])
    @pytest.mark.parametrize('condy', [LT])
    @pytest.mark.parametrize('condz', [LT])
    @pytest.mark.parametrize('distribution_parameters', [None, {"overlap_type": (DistributedMeshOverlapType.NONE, 0)}])
    def test_submesh_interpolate_cell_cell_hex_1_processes(fe_fesub, nelem, condx, condy, condz, distribution_parameters):
        if nelem is None:
>           mesh = Mesh(join(cwd, "..", "meshes", "cube_hex.msh"), distribution_parameters=distribution_parameters)

tests/firedrake/submesh/test_submesh_interpolate.py:68: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/mesh.py:3093: in Mesh
    mesh = make_mesh_from_mesh_topology(topology, name)
firedrake/mesh.py:2884: in make_mesh_from_mesh_topology
    cell = topology.ufl_cell()
firedrake/mesh.py:731: in ufl_cell
    return self._ufl_cell
/usr/lib/python3.12/functools.py:995: in __get__
    val = self.func(instance)
firedrake/mesh.py:1227: in _ufl_cell
    return constructCellComplex(_cells[tdim][nfacets])
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

name = 'hexahedron'

    def constructCellComplex(name):
        if name == "vertex":
            return Point(0).to_ufl(name)
        elif name == "interval":
            return Point(1, [Point(0), Point(0)], vertex_num=2).to_ufl(name)
        elif name == "triangle":
            return n_sided_polygon(3).to_ufl(name)
        elif name == "quadrilateral":
            # return Cell(name)
            return n_sided_polygon(4).to_ufl(name)
        elif name == "tetrahedron":
            return make_tetrahedron().to_ufl(name)
        else:
>           raise TypeError("Cell complex construction undefined for {}".format(str(name)))
E           TypeError: Cell complex construction undefined for hexahedron

../firedrake_venv/src/redefining_fe/redefining_fe/cells.py:831: TypeError

Check failure on line 82 in tests/firedrake/regression/test_zero_forms.py

See this annotation in the file changed.

@github-actions github-actions / Firedrake complex

test_zero_forms.test_math_functions[True-tanh(f) + cos(f) + sin(f)-10-constant-vector]

AttributeError: 'MeshTopology' object has no attribute 'extruded'
Raw output
mesh = Mesh(VectorElement(FiniteElement('Q', quadrilateral Complex, 1), dim=2), 38)
expr = 'tanh(f) + cos(f) + sin(f)', value = 10, typ = 'constant'
fs_type = 'vector'

    @pytest.mark.parametrize(['expr', 'value', 'typ', 'fs_type'],
                             itertools.product(['f',
                                                '2*f',
                                                'tanh(f)',
                                                '2 * tanh(f)',
                                                'f + tanh(f)',
                                                'cos(f) + sin(f)',
                                                'cos(f)*cos(f) + sin(f)*sin(f)',
                                                'tanh(f) + cos(f) + sin(f)',
                                                '1.0/tanh(f) + 1.0/f',
                                                'sqrt(f*f)',
                                                '1.0/tanh(sqrt(f*f)) + 1.0/f + sqrt(f*f)'],
                                               [1, 10, 20, -1, -10, -20],
                                               ['function', 'constant'],
                                               ['scalar', 'vector', 'tensor']))
    def test_math_functions(mesh, expr, value, typ, fs_type):
        if typ == 'function':
            family, degree = 'CG', 1
        elif typ == 'constant':
            family, degree = 'Real', 0
    
        if fs_type == "vector":
            V = VectorFunctionSpace(mesh, family, degree)
        elif fs_type == "tensor":
            V = TensorFunctionSpace(mesh, family, degree)
        else:
            V = FunctionSpace(mesh, family, degree)
        f = Function(V)
        f.assign(value)
        if fs_type == "vector":
            f = dot(f, f)
        elif fs_type == "tensor":
            f = inner(f, f)
    
>       actual = assemble(eval(expr)*dx)

tests/firedrake/regression/test_zero_forms.py:82: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/adjoint_utils/assembly.py:30: in wrapper
    output = assemble(form, *args, **kwargs)
firedrake/assemble.py:134: in assemble
    return get_assembler(expr, *args, **kwargs).assemble(tensor=tensor)
firedrake/assemble.py:983: in assemble
    self.execute_parloops(tensor)
firedrake/assemble.py:1004: in execute_parloops
    for parloop in self.parloops(tensor):
firedrake/assemble.py:1016: in parloops
    for local_kernel, subdomain_id in self.local_kernels:
/usr/lib/python3.12/functools.py:995: in __get__
    val = self.func(instance)
firedrake/assemble.py:1054: in local_kernels
    kernels = tsfc_interface.compile_form(
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
pyop2/caching.py:522: in wrapper
    k = hashkey(*args, **kwargs)
firedrake/tsfc_interface.py:140: in _compile_form_hashkey
    args[0].signature(),
../firedrake_venv/src/ufl/ufl/form.py:418: in signature
    self._compute_signature()
../firedrake_venv/src/ufl/ufl/form.py:671: in _compute_signature
    self._signature = compute_form_signature(self, self._compute_renumbering())
../firedrake_venv/src/ufl/ufl/algorithms/signature.py:137: in compute_form_signature
    terminal_hashdata = compute_terminal_hashdata(integrands, renumbering)
../firedrake_venv/src/ufl/ufl/algorithms/signature.py:65: in compute_terminal_hashdata
    data = expr._ufl_signature_data_(renumbering)
../firedrake_venv/src/ufl/ufl/coefficient.py:84: in _ufl_signature_data_
    fsdata = self._ufl_function_space._ufl_signature_data_(renumbering)
firedrake/functionspaceimpl.py:131: in _ufl_signature_data_
    super()._ufl_signature_data_(*args, **kwargs))
../firedrake_venv/src/ufl/ufl/functionspace.py:176: in _ufl_signature_data_
    return BaseFunctionSpace._ufl_signature_data_(self, renumbering, "FunctionSpace")
../firedrake_venv/src/ufl/ufl/functionspace.py:138: in _ufl_signature_data_
    ddata = domain._ufl_signature_data_(renumbering)
firedrake/mesh.py:2273: in _ufl_signature_data_
    return (type(self), self.extruded, self.variable_layers,
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = Mesh(VectorElement(FiniteElement('Q', quadrilateral Complex, 1), dim=2), 38)
name = 'extruded'

    def __getattr__(self, name):
>       val = getattr(self._topology, name)
E       AttributeError: 'MeshTopology' object has no attribute 'extruded'

firedrake/mesh.py:2796: AttributeError

Check failure on line 203 in tests/firedrake/regression/test_function_spaces.py

See this annotation in the file changed.

@github-actions github-actions / Firedrake complex

test_function_spaces.test_reconstruct_mesh[quad-triangle-primal]

NotImplementedError: Non-Simplex elements are not yet supported
Raw output
meshes = (Mesh(VectorElement(FiniteElement('Q', quadrilateral Complex, 1), dim=2), 137), Mesh(VectorElement(FiniteElement('Lagrange', triangle Complex, 1), dim=2), 138))
dual = False

    def test_reconstruct_mesh(meshes, dual):
>       V1 = FunctionSpace(meshes[0], "Lagrange", 1)

tests/firedrake/regression/test_function_spaces.py:203: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspace.py:105: in FunctionSpace
    return impl.WithGeometry.make_function_space(mesh, element, name=name)
firedrake/functionspaceimpl.py:371: in make_function_space
    new = FunctionSpace(topology, element, name=name)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspaceimpl.py:520: in __init__
    self.set_shared_data()
firedrake/functionspaceimpl.py:529: in set_shared_data
    sdata = get_shared_data(self._mesh, element)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspacedata.py:541: in get_shared_data
    return FunctionSpaceData(mesh, ufl_element, boundary_set)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspacedata.py:420: in __init__
    finat_element = create_element(ufl_element)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspacedata.py:42: in create_element
    finat_element = _create_element(ufl_element)
tsfc/finatinterface.py:325: in create_element
    finat_element, deps = _create_element(ufl_element,
tsfc/finatinterface.py:355: in _create_element
    finat_element, deps = convert(ufl_element, **kwargs)
/usr/lib/python3.12/functools.py:909: in wrapper
    return dispatch(args[0].__class__)(*args, **kw)
tsfc/finatinterface.py:153: in convert_finiteelement
    cell = as_fiat_cell(element.cell)
tsfc/finatinterface.py:116: in as_fiat_cell
    return cell.to_fiat()
../firedrake_venv/src/redefining_fe/redefining_fe/cells.py:802: in to_fiat
    return self.cell_complex.to_fiat()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = f167

    def to_fiat(self):
        if len(self.get_topology()[self.dimension][0]) == self.dimension + 1:
            return CellComplexToFiatSimplex(self)
>       raise NotImplementedError("Non-Simplex elements are not yet supported")
E       NotImplementedError: Non-Simplex elements are not yet supported

../firedrake_venv/src/redefining_fe/redefining_fe/cells.py:617: NotImplementedError

Check failure on line 82 in tests/firedrake/regression/test_zero_forms.py

See this annotation in the file changed.

@github-actions github-actions / Firedrake complex

test_zero_forms.test_math_functions[True-tanh(f) + cos(f) + sin(f)-10-constant-tensor]

AttributeError: 'MeshTopology' object has no attribute 'extruded'
Raw output
mesh = Mesh(VectorElement(FiniteElement('Q', quadrilateral Complex, 1), dim=2), 38)
expr = 'tanh(f) + cos(f) + sin(f)', value = 10, typ = 'constant'
fs_type = 'tensor'

    @pytest.mark.parametrize(['expr', 'value', 'typ', 'fs_type'],
                             itertools.product(['f',
                                                '2*f',
                                                'tanh(f)',
                                                '2 * tanh(f)',
                                                'f + tanh(f)',
                                                'cos(f) + sin(f)',
                                                'cos(f)*cos(f) + sin(f)*sin(f)',
                                                'tanh(f) + cos(f) + sin(f)',
                                                '1.0/tanh(f) + 1.0/f',
                                                'sqrt(f*f)',
                                                '1.0/tanh(sqrt(f*f)) + 1.0/f + sqrt(f*f)'],
                                               [1, 10, 20, -1, -10, -20],
                                               ['function', 'constant'],
                                               ['scalar', 'vector', 'tensor']))
    def test_math_functions(mesh, expr, value, typ, fs_type):
        if typ == 'function':
            family, degree = 'CG', 1
        elif typ == 'constant':
            family, degree = 'Real', 0
    
        if fs_type == "vector":
            V = VectorFunctionSpace(mesh, family, degree)
        elif fs_type == "tensor":
            V = TensorFunctionSpace(mesh, family, degree)
        else:
            V = FunctionSpace(mesh, family, degree)
        f = Function(V)
        f.assign(value)
        if fs_type == "vector":
            f = dot(f, f)
        elif fs_type == "tensor":
            f = inner(f, f)
    
>       actual = assemble(eval(expr)*dx)

tests/firedrake/regression/test_zero_forms.py:82: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/adjoint_utils/assembly.py:30: in wrapper
    output = assemble(form, *args, **kwargs)
firedrake/assemble.py:134: in assemble
    return get_assembler(expr, *args, **kwargs).assemble(tensor=tensor)
firedrake/assemble.py:983: in assemble
    self.execute_parloops(tensor)
firedrake/assemble.py:1004: in execute_parloops
    for parloop in self.parloops(tensor):
firedrake/assemble.py:1016: in parloops
    for local_kernel, subdomain_id in self.local_kernels:
/usr/lib/python3.12/functools.py:995: in __get__
    val = self.func(instance)
firedrake/assemble.py:1054: in local_kernels
    kernels = tsfc_interface.compile_form(
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
pyop2/caching.py:522: in wrapper
    k = hashkey(*args, **kwargs)
firedrake/tsfc_interface.py:140: in _compile_form_hashkey
    args[0].signature(),
../firedrake_venv/src/ufl/ufl/form.py:418: in signature
    self._compute_signature()
../firedrake_venv/src/ufl/ufl/form.py:671: in _compute_signature
    self._signature = compute_form_signature(self, self._compute_renumbering())
../firedrake_venv/src/ufl/ufl/algorithms/signature.py:137: in compute_form_signature
    terminal_hashdata = compute_terminal_hashdata(integrands, renumbering)
../firedrake_venv/src/ufl/ufl/algorithms/signature.py:65: in compute_terminal_hashdata
    data = expr._ufl_signature_data_(renumbering)
../firedrake_venv/src/ufl/ufl/coefficient.py:84: in _ufl_signature_data_
    fsdata = self._ufl_function_space._ufl_signature_data_(renumbering)
firedrake/functionspaceimpl.py:131: in _ufl_signature_data_
    super()._ufl_signature_data_(*args, **kwargs))
../firedrake_venv/src/ufl/ufl/functionspace.py:176: in _ufl_signature_data_
    return BaseFunctionSpace._ufl_signature_data_(self, renumbering, "FunctionSpace")
../firedrake_venv/src/ufl/ufl/functionspace.py:138: in _ufl_signature_data_
    ddata = domain._ufl_signature_data_(renumbering)
firedrake/mesh.py:2273: in _ufl_signature_data_
    return (type(self), self.extruded, self.variable_layers,
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = Mesh(VectorElement(FiniteElement('Q', quadrilateral Complex, 1), dim=2), 38)
name = 'extruded'

    def __getattr__(self, name):
>       val = getattr(self._topology, name)
E       AttributeError: 'MeshTopology' object has no attribute 'extruded'

firedrake/mesh.py:2796: AttributeError

Check failure on line 204 in tests/firedrake/regression/test_function_spaces.py

See this annotation in the file changed.

@github-actions github-actions / Firedrake complex

test_function_spaces.test_reconstruct_mesh[triangle3D-quad3D-dual]

NotImplementedError: Non-Simplex elements are not yet supported
Raw output
meshes = (Mesh(VectorElement(FiniteElement('Lagrange', triangle Complex, 1), dim=3), 139), Mesh(VectorElement(FiniteElement('Q', quadrilateral Complex, 1), dim=3), 140))
dual = True

    def test_reconstruct_mesh(meshes, dual):
        V1 = FunctionSpace(meshes[0], "Lagrange", 1)
>       V2 = FunctionSpace(meshes[1], "Lagrange", 1)

tests/firedrake/regression/test_function_spaces.py:204: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspace.py:105: in FunctionSpace
    return impl.WithGeometry.make_function_space(mesh, element, name=name)
firedrake/functionspaceimpl.py:359: in make_function_space
    mesh.init()
firedrake/mesh.py:2282: in init
    self._callback(self)
firedrake/mesh.py:2304: in callback
    coordinates_fs = functionspace.FunctionSpace(self.topology, self.ufl_coordinate_element())
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspace.py:105: in FunctionSpace
    return impl.WithGeometry.make_function_space(mesh, element, name=name)
firedrake/functionspaceimpl.py:371: in make_function_space
    new = FunctionSpace(topology, element, name=name)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspaceimpl.py:520: in __init__
    self.set_shared_data()
firedrake/functionspaceimpl.py:529: in set_shared_data
    sdata = get_shared_data(self._mesh, element)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspacedata.py:541: in get_shared_data
    return FunctionSpaceData(mesh, ufl_element, boundary_set)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspacedata.py:420: in __init__
    finat_element = create_element(ufl_element)
petsc4py/PETSc/Log.pyx:188: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
petsc4py/PETSc/Log.pyx:189: in petsc4py.PETSc.Log.EventDecorator.decorator.wrapped_func
    ???
firedrake/functionspacedata.py:42: in create_element
    finat_element = _create_element(ufl_element)
tsfc/finatinterface.py:325: in create_element
    finat_element, deps = _create_element(ufl_element,
tsfc/finatinterface.py:355: in _create_element
    finat_element, deps = convert(ufl_element, **kwargs)
/usr/lib/python3.12/functools.py:909: in wrapper
    return dispatch(args[0].__class__)(*args, **kw)
tsfc/finatinterface.py:263: in convert_tensorelement
    inner_elem, deps = _create_element(element.sub_elements[0], **kwargs)
tsfc/finatinterface.py:355: in _create_element
    finat_element, deps = convert(ufl_element, **kwargs)
/usr/lib/python3.12/functools.py:909: in wrapper
    return dispatch(args[0].__class__)(*args, **kw)
tsfc/finatinterface.py:153: in convert_finiteelement
    cell = as_fiat_cell(element.cell)
tsfc/finatinterface.py:116: in as_fiat_cell
    return cell.to_fiat()
../firedrake_venv/src/redefining_fe/redefining_fe/cells.py:802: in to_fiat
    return self.cell_complex.to_fiat()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = f190

    def to_fiat(self):
        if len(self.get_topology()[self.dimension][0]) == self.dimension + 1:
            return CellComplexToFiatSimplex(self)
>       raise NotImplementedError("Non-Simplex elements are not yet supported")
E       NotImplementedError: Non-Simplex elements are not yet supported

../firedrake_venv/src/redefining_fe/redefining_fe/cells.py:617: NotImplementedError