I know there is Tbmodels package can deal with wannier90 output tight binding files. But I think TBmodels group all the orbitals into one site.
I was trying to do things that can assign hoppings and on-site energies in "Real" systems that have differnet sites but with different orbitals per site.
The errors are the following when I try to use kwant_model.hamiltonian_submatrix module
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
/Users/x0k/opt/anaconda3/envs/kwant/lib/python3.6/site-packages/kwant/builder.py in hamiltonian(self, i, j, params, *args)
1885 try:
-> 1886 value = value(site, *args)
1887 except Exception as exc:
/Users/x0k/opt/anaconda3/envs/kwant/lib/python3.6/site-packages/kwant/wraparound.py in f(*in_args)
154 if callable(val):
--> 155 acc = acc + val(*out_args)
156 else:
ValueError: operands could not be broadcast together with shapes (6,6) (10,10)
The above exception was the direct cause of the following exception:
UserCodeError Traceback (most recent call last)
<ipython-input-34-1b24fb1489bf> in <module>()
3 params={key: val for key, val in zip(['k_x', 'k_y', 'k_z'], 2 * np.pi * np.array(k_list[0]))}
4 )
----> 5 ) for k in k_list]
<ipython-input-34-1b24fb1489bf> in <listcomp>(.0)
3 params={key: val for key, val in zip(['k_x', 'k_y', 'k_z'], 2 * np.pi * np.array(k_list[0]))}
4 )
----> 5 ) for k in k_list]
/Users/x0k/opt/anaconda3/envs/kwant/lib/python3.6/site-packages/kwant/_common.py in inner(*args, **kwargs)
70 if sig.bind(*args, **kwargs).arguments.get(parameter_name):
71 warn()
---> 72 return f(*args, **kwargs)
73
74 return inner
kwant/_system.pyx in kwant._system.hamiltonian_submatrix()
/Users/x0k/opt/anaconda3/envs/kwant/lib/python3.6/site-packages/kwant/builder.py in hamiltonian(self, i, j, params, *args)
1892 ', '.join(map('"{}"'.format, missing)))
1893 raise TypeError(''.join(msg))
-> 1894 _raise_user_error(exc, value)
1895 else:
1896 edge_id = self.graph.first_edge_id(i, j)
/Users/x0k/opt/anaconda3/envs/kwant/lib/python3.6/site-packages/kwant/builder.py in _raise_user_error(exc, func)
1814 msg = ('Error occurred in user-supplied value function "{0}".\n'
1815 'See the upper part of the above backtrace for more information.')
-> 1816 raise UserCodeError(msg.format(func.__name__)) from exc
1817
1818
UserCodeError: Error occurred in user-supplied value function "f".
See the upper part of the above backtrace for more information.