issp-center-dev/DCore

self-consistent DMFT calculation of SrVO3 with error

Opened this issue · 2 comments

Hello DCore Community,
I try to do SrVO3 example of DMFT calculation (https://issp-center-dev.github.io/DCore/master/tutorial/srvo3/srvo3.html) using TRIQS/cthyb solver. But unfortunatly I can`t det right numbers on the second step of this tutorial dcore srvo3.ini --np 2; but I use a less nubers of processors. In the end I get this massage:

Unexpected error: Type of indices incorrect : should be None, Gfindices, list of str, or list of list of str
Unexpected error: Type of indices incorrect : should be None, Gfindices, list of str, or list of list of str
Traceback (most recent call last):
File "/.local/lib/python3.9/site-packages/dcore/sumkdft_workers/mpi_main.py", line 20, in
runner.run()
File "/.local/lib/python3.9/site-packages/dcore/sumkdft_workers/gloc_worker.py", line 38, in run
Gloc = sk.extract_G_loc(with_dc=with_dc)
File "/.local/lib/python3.9/site-packages/dcore/sumkdft_opt.py", line 268, in extract_G_loc
G_loc_inequiv = [BlockGf(name_block_generator=[(block, GfImFreq(indices=inner, mesh=G_loc[0].mesh)) for block, inner in self.gf_struct_solver[ish].items()],
File "/.local/lib/python3.9/site-packages/dcore/sumkdft_opt.py", line 268, in
G_loc_inequiv = [BlockGf(name_block_generator=[(block, GfImFreq(indices=inner, mesh=G_loc[0].mesh)) for block, inner in self.gf_struct_solver[ish].items()],
File "/.local/lib/python3.9/site-packages/dcore/sumkdft_opt.py", line 268, in
G_loc_inequiv = [BlockGf(name_block_generator=[(block, GfImFreq(indices=inner, mesh=G_loc[0].mesh)) for block, inner in self.gf_struct_solver[ish].items()],
File "/anaconda3/envs/dmft/lib/python3.9/site-packages/triqs/gf/backwd_compat/gf_imfreq.py", line 73, in init
delegate(self, **kw)
File "/anaconda3/envs/dmft/lib/python3.9/site-packages/triqs/gf/backwd_compat/gf_imfreq.py", line 66, in delegate
super(GfImFreq, self).init(
File "/anaconda3/envs/dmft/lib/python3.9/site-packages/triqs/gf/gf.py", line 192, in init
delegate(self, **kw)
File "/anaconda3/envs/dmft/lib/python3.9/site-packages/triqs/gf/gf.py", line 135, in delegate
assert isinstance(indices, (type(None), list, GfIndices)), "Type of indices incorrect : should be None, Gfindices, list of str, or list of list of str"
AssertionError: Type of indices incorrect : should be None, Gfindices, list of str, or list of list of str
Traceback (most recent call last):
File "/.local/lib/python3.9/site-packages/dcore/sumkdft_workers/mpi_main.py", line 20, in
runner.run()
File "/.local/lib/python3.9/site-packages/dcore/sumkdft_workers/gloc_worker.py", line 38, in run
Gloc = sk.extract_G_loc(with_dc=with_dc)
File "/.local/lib/python3.9/site-packages/dcore/sumkdft_opt.py", line 268, in extract_G_loc
G_loc_inequiv = [BlockGf(name_block_generator=[(block, GfImFreq(indices=inner, mesh=G_loc[0].mesh)) for block, inner in self.gf_struct_solver[ish].items()],
File "/.local/lib/python3.9/site-packages/dcore/sumkdft_opt.py", line 268, in
G_loc_inequiv = [BlockGf(name_block_generator=[(block, GfImFreq(indices=inner, mesh=G_loc[0].mesh)) for block, inner in self.gf_struct_solver[ish].items()],
File "/.local/lib/python3.9/site-packages/dcore/sumkdft_opt.py", line 268, in
G_loc_inequiv = [BlockGf(name_block_generator=[(block, GfImFreq(indices=inner, mesh=G_loc[0].mesh)) for block, inner in self.gf_struct_solver[ish].items()],
File "/anaconda3/envs/dmft/lib/python3.9/site-packages/triqs/gf/backwd_compat/gf_imfreq.py", line 73, in init
delegate(self, **kw)
File "/anaconda3/envs/dmft/lib/python3.9/site-packages/triqs/gf/backwd_compat/gf_imfreq.py", line 66, in delegate
super(GfImFreq, self).init(
File "/anaconda3/envs/dmft/lib/python3.9/site-packages/triqs/gf/gf.py", line 192, in init
delegate(self, **kw)
File "/anaconda3/envs/dmft/lib/python3.9/site-packages/triqs/gf/gf.py", line 135, in delegate
assert isinstance(indices, (type(None), list, GfIndices)), "Type of indices incorrect : should be None, Gfindices, list of str, or list of list of str"
AssertionError: Type of indices incorrect : should be None, Gfindices, list of str, or list of list of str

Primary job terminated normally, but 1 process returned
a non-zero exit code. Per user-direction, the job has been aborted.


mpirun detected that one or more processes exited with non-zero status, thus causing
the job to be terminated. The first process to do so was:

Process name: [[58502,1],0]
Exit code: 1

As I understood DCore package sumkdft_workers cant get G and without it triqs cant writes numbers. Can you help me with this issue?

Sorry for the problem. Could you use TRIQS 3.0.x?

Yes TRIQS 3.0.x works well. I guess main problem in the mpi parralization. Can I launch Dcore without mpi?