コード例 #1
0
import numpy as np
import matplotlib.pyplot as plt
import scipy.sparse.linalg as spLA

import majoranaJJ.operators.sparse.qmsops as spop  #sparse operators
import majoranaJJ.lattice.nbrs as nb  #neighbor arrays
import majoranaJJ.lattice.shapes as shps  #lattice shapes
import majoranaJJ.modules.plots as plots  #plotting functions

R = 50
r = 15
ax = 10  #[A]
ay = 10  #[A]

coor = shps.donut(R, r)
NN = nb.NN_Arr(coor)
print("lattice size", coor.shape[0])

alpha = 0  #Spin-Orbit Coupling constant: [eV*A]
gammaz = 0  #Zeeman field energy contribution: [T]
delta = 0  #Superconducting Gap: [eV]
V0 = 0.0  #Amplitude of potential : [eV]
mu = 0  #Chemical Potential: [eV]

H = spop.H0(coor, ax, ay, NN)
print("H shape: ", H.shape)

num = 75  # This is the number of eigenvalues and eigenvectors you want
sigma = 0  # This is the eigenvalue we search around
which = 'LM'
eigs, vecs = spLA.eigsh(H, k=num, sigma=sigma, which=which)
コード例 #2
0
ファイル: donut.py プロジェクト: tbcole/majoranaJJ
import majoranaJJ.operators.sparse.qmsops as spop  #sparse operators
import majoranaJJ.lattice.nbrs as nb  #neighbor arrays
import majoranaJJ.lattice.shapes as shps  #lattice shapes
import majoranaJJ.modules.plots as plots  #plotting functions

R = 25
r = 10

coor = shps.donut(R, r)  #donut coordinate array
NN = nb.NN_Arr(coor)
NNb = nb.Bound_Arr(coor)

idx = 1
plots.lattice(idx, coor, NN=NN)
plots.lattice(idx, coor, NNb=NNb)