The docker image dolfinx/dolfinx:latest seems to have changed recently, this tag no longer exists now. It might come back later but it will certainly point to another release.
I've tried to find the tag that corresponded to latest at the time you implemented your docker files,
I believe that dolfinx/dolfinx:v0.6.0 is too old, because it fails with the same error as stable was raising before
$ python3 demo/weq_2D-SH_FullSpace.py
Traceback (most recent call last):
File "/home/penguinx/shared/elastodynamicsx/demo/weq_2D-SH_FullSpace.py", line 147, in <module>
pde = PDE(V, materials=materials, bodyforces=bodyforces, bcs=bcs)
File "/home/penguinx/shared/elastodynamicsx/elastodynamicsx/pde/pde.py", line 116, in __init__
self._omega_ufl = fem.Constant(function_space, PETSc.ScalarType(0))
File "/usr/local/dolfinx-complex/lib/python3.10/dist-packages/dolfinx/fem/function.py", line 42, in __init__
super().__init__(domain, c.shape)
File "/usr/local/lib/python3.10/dist-packages/ufl/constant.py", line 26, in __init__
self._ufl_domain = as_domain(domain)
File "/usr/local/lib/python3.10/dist-packages/ufl/domain.py", line 272, in as_domain
return extract_unique_domain(domain)
File "/usr/local/lib/python3.10/dist-packages/ufl/domain.py", line 345, in extract_unique_domain
domains = extract_domains(expr)
File "/usr/local/lib/python3.10/dist-packages/ufl/domain.py", line 338, in extract_domains
for t in traverse_unique_terminals(expr):
File "/usr/local/lib/python3.10/dist-packages/ufl/corealg/traversal.py", line 134, in traverse_unique_terminals
for op in unique_pre_traversal(expr, visited=visited):
File "/usr/local/lib/python3.10/dist-packages/ufl/corealg/traversal.py", line 70, in unique_pre_traversal
visited.add(expr)
TypeError: unhashable type: 'FunctionSpace'
dolfinx/dlofinx:v0.7.0 fails because basix.ufl_wrapper was renammed into ufl in release 0.7.0
$ python3 demo/weq_2D-SH_FullSpace.py
Traceback (most recent call last):
File "/home/penguinx/shared/elastodynamicsx/demo/weq_2D-SH_FullSpace.py", line 22, in <module>
from elastodynamicsx.pde import material, BodyForce, BoundaryCondition, PDE
File "/home/penguinx/shared/elastodynamicsx/elastodynamicsx/pde/__init__.py", line 33, in <module>
from .boundarycondition import *
File "/home/penguinx/shared/elastodynamicsx/elastodynamicsx/pde/boundarycondition.py", line 12, in <module>
from elastodynamicsx.utils import get_functionspace_tags_marker
File "/home/penguinx/shared/elastodynamicsx/elastodynamicsx/utils/__init__.py", line 11, in <module>
from .spectralelements import *
File "/home/penguinx/shared/elastodynamicsx/elastodynamicsx/utils/spectralelements.py", line 42, in <module>
def GLL_element(cell_type, degree: int) -> basix.ufl_wrapper.BasixElement:
AttributeError: module 'basix' has no attribute 'ufl_wrapper'
no more luck with dolfinx/dlofinx:v0.6.0-rc1dolfinx/dlofinx:v0.7.1dolfinx/dlofinx:v0.7.2
I'll make a fix to be compatible with v0.7.2; I'll try to dedicate time for it next week. Good news that v0.7 is released, Spectral Elements will be defined more easily.
Hello Pierric,
The docker image dolfinx/dolfinx:latest seems to have changed recently, this tag no longer exists now. It might come back later but it will certainly point to another release.
I've tried to find the tag that corresponded to latest at the time you implemented your docker files,
I believe that
dolfinx/dolfinx:v0.6.0
is too old, because it fails with the same error as stable was raising beforedolfinx/dlofinx:v0.7.0
fails because basix.ufl_wrapper was renammed into ufl in release 0.7.0no more luck with
dolfinx/dlofinx:v0.6.0-rc1
dolfinx/dlofinx:v0.7.1
dolfinx/dlofinx:v0.7.2
Any idea ?
Maximilien