Hi All,
I am running PyFr on Windows WSL Ubuntu with openMP. The 2D example cases work well.
However, when I prepare my own 3D case and tried with the following command: mpiexec -n 2 pyfr run -b openmp -p building_3d.pyfrm building_3d.ini, I am getting a key error.
Would anyone know what cause this error? Is it caused by unsupported environment / improper installation or divergence issue on the simulation? I would appreciate very much if anyone can shed some light on this issue.
Thanks,
Jack
Traceback (most recent call last):
File "/home/user/ENV3/bin/pyfr", line 8, in <module>
sys.exit(main())
File "/home/user/ENV3/lib/python3.8/site-packages/pyfr/__main__.py", line 117, in main
args.process(args)
File "/home/user/ENV3/lib/python3.8/site-packages/pyfr/__main__.py", line 245, in process_run
_process_common(
File "/home/user/ENV3/lib/python3.8/site-packages/pyfr/__main__.py", line 227, in _process_common
solver = get_solver(backend, rallocs, mesh, soln, cfg)
File "/home/user/ENV3/lib/python3.8/site-packages/pyfr/solvers/__init__.py", line 16, in get_solver
return get_integrator(backend, systemcls, rallocs, mesh, initsoln, cfg)
File "/home/user/ENV3/lib/python3.8/site-packages/pyfr/integrators/__init__.py", line 36, in get_integrator
return integrator(backend, systemcls, rallocs, mesh, initsoln, cfg)
File "/home/user/ENV3/lib/python3.8/site-packages/pyfr/integrators/dual/phys/controllers.py", line 8, in __init__
super().__init__(*args, **kwargs)
File "/home/user/ENV3/lib/python3.8/site-packages/pyfr/integrators/dual/phys/base.py", line 17, in __init__
self.pseudointegrator = get_pseudo_integrator(
File "/home/user/ENV3/lib/python3.8/site-packages/pyfr/integrators/dual/pseudo/__init__.py", line 58, in get_pseudo_integrator
return DualMultiPIntegrator(backend, systemcls, rallocs, mesh,
File "/home/user/ENV3/lib/python3.8/site-packages/pyfr/integrators/dual/pseudo/multip.py", line 123, in __init__
self.pintgs[l] = lpsint(backend, systemcls, rallocs, mesh,
File "/home/user/ENV3/lib/python3.8/site-packages/pyfr/integrators/dual/pseudo/pseudocontrollers.py", line 90, in __init__
super().__init__(*args, **kwargs)
File "/home/user/ENV3/lib/python3.8/site-packages/pyfr/integrators/dual/pseudo/pseudocontrollers.py", line 12, in __init__
super().__init__(*args, **kwargs)
File "/home/user/ENV3/lib/python3.8/site-packages/pyfr/integrators/dual/pseudo/pseudosteppers.py", line 191, in __init__
super().__init__(*args, **kwargs)
File "/home/user/ENV3/lib/python3.8/site-packages/pyfr/integrators/dual/pseudo/base.py", line 50, in __init__
self.system = systemcls(backend, rallocs, mesh, initsoln,
File "/home/user/ENV3/lib/python3.8/site-packages/pyfr/solvers/base/system.py", line 67, in __init__
self._gen_kernels(eles, int_inters, mpi_inters, bc_inters)
File "/home/user/ENV3/lib/python3.8/site-packages/pyfr/solvers/base/system.py", line 188, in _gen_kernels
kernels[pn, kn].append(kgetter())
File "/home/user/ENV3/lib/python3.8/site-packages/pyfr/solvers/baseadvec/elements.py", line 63, in <lambda>
kernels['tdivtpcorf'] = lambda: self._be.kernel(
File "/home/user/ENV3/lib/python3.8/site-packages/pyfr/backends/base/backend.py", line 168, in kernel
raise KeyError(f'Kernel "{name}" has no providers')
KeyError: 'Kernel "mul" has no providers'