def __init__(self, nsingle, indexing='Lin', symmetry='n', nleads=0):
"""
Initialization of the StateIndexingDM class
Parameters
----------
nsingle : int
Number of single-particle states.
indexing : str
String determining type of the indexing. Possible values are 'Lin', 'charge', 'sz', 'ssq'.
symmetry : str
String determining that the states will be augmented by the symmetry.
"""
StateIndexing.__init__(self, nsingle, indexing, symmetry, nleads)
self.ndm0_tot = int(factorial(2*self.nsingle)/factorial(self.nsingle)**2)
self.ndm1_tot = int(self.nsingle/(self.nsingle+1)*self.ndm0_tot)
#
self.shiftlst0 = np.zeros(self.ncharge+1, dtype=longnp)
self.shiftlst1 = np.zeros(self.ncharge, dtype=longnp)
self.lenlst = np.zeros(self.ncharge, dtype=longnp)
self.dictdm = np.zeros(self.nmany, dtype=longnp)
#
self.statesdm, self.mapdm0, self.mapdm1 = None, None, None
self.set_statesdm(self.chargelst)
评论列表
文章目录