コード例 #1
0
ファイル: flux_qubit.py プロジェクト: seeqc/scqubits
 def _esys_calc(self, evals_count):
     hamiltonian_mat = self.hamiltonian()
     evals, evecs = sp.linalg.eigh(hamiltonian_mat,
                                   eigvals=(0, evals_count - 1),
                                   eigvals_only=False)
     evals, evecs = order_eigensystem(evals, evecs)
     return evals, evecs
コード例 #2
0
 def _esys_calc(self, evals_count):
     hamiltonian_mat = self.hamiltonian()
     evals, evecs = sparse.linalg.eigsh(hamiltonian_mat, k=evals_count, return_eigenvectors=True, which='SA')
     # TODO consider normalization of zeropi wavefunctions
     # evecs /= np.sqrt(self.grid.grid_spacing())
     evals, evecs = spec_utils.order_eigensystem(evals, evecs)
     return evals, evecs
コード例 #3
0
 def _esys_calc(self, evals_count: int) -> Tuple[ndarray, ndarray]:
     hamiltonian_mat = self.hamiltonian()
     evals, evecs = sp.linalg.eigh(hamiltonian_mat,
                                   eigvals_only=False,
                                   eigvals=(0, evals_count - 1))
     evals, evecs = order_eigensystem(evals, evecs)
     return evals, evecs
コード例 #4
0
ファイル: zeropi_full.py プロジェクト: loganbvh/scqubits
 def _esys_calc(self, evals_count: int, hamiltonian_mat: csc_matrix = None) -> Tuple[ndarray, ndarray]:
     if hamiltonian_mat is None:
         hamiltonian_mat = self.hamiltonian()
     evals, evecs = sparse.linalg.eigsh(hamiltonian_mat, k=evals_count, sigma=0.0, which='LM',
                                        return_eigenvectors=True)
     evals, evecs = spec_utils.order_eigensystem(evals, evecs)
     return evals, evecs
コード例 #5
0
ファイル: zeropi_full.py プロジェクト: seeqc/scqubits
 def _esys_calc(self, evals_count, hamiltonian_mat=None):
     if hamiltonian_mat is None:
         hamiltonian_mat = self.hamiltonian()
     evals, evecs = sparse.linalg.eigsh(hamiltonian_mat,
                                        k=evals_count,
                                        return_eigenvectors=True,
                                        which='SA')
     evals, evecs = order_eigensystem(evals, evecs)
     return evals, evecs
コード例 #6
0
 def _esys_calc(self, evals_count) -> Tuple[ndarray, ndarray]:
     hamiltonian_mat = self.hamiltonian()
     evals, evecs = sparse.linalg.eigsh(
         hamiltonian_mat,
         k=evals_count,
         return_eigenvectors=True,
         sigma=0.0,
         which="LM",
         v0=settings.RANDOM_ARRAY[:self.hilbertdim()],
     )
     evals, evecs = spec_utils.order_eigensystem(evals, evecs)
     return evals, evecs
コード例 #7
0
ファイル: zeropi.py プロジェクト: gharib85/scqubits
 def _esys_calc(self, evals_count: int) -> Tuple[ndarray, ndarray]:
     hamiltonian_mat = self.hamiltonian()
     evals, evecs = sparse.linalg.eigsh(
         hamiltonian_mat,
         k=evals_count,
         sigma=0.0,
         which="LM",
         return_eigenvectors=True,
     )
     # TODO consider normalization of zeropi wavefunctions
     # evecs /= np.sqrt(self.grid.grid_spacing())
     evals, evecs = spec_utils.order_eigensystem(evals, evecs)
     return evals, evecs
コード例 #8
0
ファイル: generic_qubit.py プロジェクト: weiyangliu/scqubits
 def eigensys(self, evals_count: int = 2) -> Tuple[ndarray, ndarray]:
     hamiltonian_mat = self.hamiltonian()
     evals, evecs = sp.linalg.eigh(hamiltonian_mat, eigvals_only=False)
     evals, evecs = order_eigensystem(evals, evecs)
     return evals, evecs