I have installed PyFR and I was able to run the euler vortex and couette flow cases as expected with openmp as the backend.
But when I tried to run the 2d inc cylinder test case with openmp as the backend, I am getting the following error:
$ pyfr import inc-cylinder.msh inc-cylinder.pyfrm
$ pyfr run -b openmp -p inc-cylinder.pyfrm inc-cylinder.ini
Traceback (most recent call last):
File "/usr/bin/pyfr", line 11, in <module>
load_entry_point('pyfr==1.5.0', 'console_scripts', 'pyfr')()
File "/usr/share/pyfr/pyfr/__main__.py", line 110, in main
args.process(args)
File "/usr/share/pyfr/pyfr/__main__.py", line 234, in process_run
_process_common(
File "/usr/share/pyfr/pyfr/__main__.py", line 216, in _process_common
solver = get_solver(backend, rallocs, mesh, soln, cfg)
File "/usr/share/pyfr/pyfr/solvers/__init__.py", line 14, in get_solver
return get_integrator(backend, systemcls, rallocs, mesh, initsoln, cfg)
File "/usr/share/pyfr/pyfr/integrators/__init__.py", line 40, in get_integrator
integrator = type(name, tuple(bc for bn, bc in bases), dict(name=name))
TypeError: metaclass conflict: the metaclass of a derived class must be a (non-strict) subclass of the metaclasses of all its bases
PyFR v1.5.0 is almost 7 years old at this point. It is unlikely to be compatible with current versions of Python and our current test cases (which are designed around v1.15.0).
i was able to run the euler vortex and couette flow test cases, i am getting this error in all other test cases. what should i do now? can you please give me some ways to resolve this?
I installed pyfr 1.13.0, still i am getting this error:
(myenv) @DESKTOP:~$ cd test5
(myenv) @DESKTOP:~/test5$ ls
viscous-shock-tube.ini viscous-shock-tube.msh
(myenv) @DESKTOP:~/test5$ pyfr import viscous-shock-tube.msh viscous-shock-tube.pyfrm
Traceback (most recent call last):
File "/home//.local/bin/pyfr", line 8, in <module>
sys.exit(main())
File "/home//.local/lib/python3.8/site-packages/pyfr/__main__.py", line 117, in main
args.process(args)
File "/home//.local/lib/python3.8/site-packages/pyfr/__main__.py", line 131, in process_import
mesh = reader.to_pyfrm(args.lintol)
File "/home//.local/lib/python3.8/site-packages/pyfr/readers/base.py", line 23, in to_pyfrm
mesh = self._to_raw_pyfrm(lintol)
File "/home//.local/lib/python3.8/site-packages/pyfr/readers/gmsh.py", line 413, in _to_raw_pyfrm
return mesh.get_connectivity() | mesh.get_shape_points(lintol)
TypeError: unsupported operand type(s) for |: 'dict' and 'dict'
I want to learn pyfr from scratch, can you please give me an idea, how and where to start from?