There is a mismatch in the parameter order and a missing parameter in the super().init() call within the OrbitalPW class in orb_pw.py.
In the OrbitalPW.init() method, the parameters are defined as:
def init(self, srcdir, nzmax, nzshift, diagnosis=True):
However, the call to the parent class's init method is:
coefs_default = super().init(srcdir, nzshift, diagnosis)
This call omits the required nzmax parameter and passes nzshift in the wrong position.
The parent class Orbital.init() in orb.py has the signature:
def init(self, srcdir, nzshift, diagnosis=True):
Please refer to the discussion for more details:
https://github.com/kirk0830/ABACUS-ORBGEN/pull/107#discussion_r1833754616
Reported by @coderabbitai.