From c7260dc6e120b3e72fb5380fbc1f2b2cbd7af431 Mon Sep 17 00:00:00 2001 From: guanjihuan Date: Tue, 22 Feb 2022 22:13:52 +0800 Subject: [PATCH] 0.0.72 --- API_Reference/API_Reference.py | 2 ++ PyPI/setup.cfg | 2 +- PyPI/src/guan/__init__.py | 15 +++++++++++++++ 3 files changed, 18 insertions(+), 1 deletion(-) diff --git a/API_Reference/API_Reference.py b/API_Reference/API_Reference.py index 9eb0e2f..dee71c5 100644 --- a/API_Reference/API_Reference.py +++ b/API_Reference/API_Reference.py @@ -112,6 +112,8 @@ hamiltonian = guan.hamiltonian_of_haldane_model_in_quasi_one_dimension(k, N=10, hamiltonian = guan.hamiltonian_of_one_QAH_model(k1, k2, t1=1, t2=1, t3=0.5, m=-1) +hamiltonian = guan.hamiltonian_of_BBH_model(kx, ky, gamma_x=0.5, gamma_y=0.5, lambda_x=1, lambda_y=1) + # band structures and wave functions diff --git a/PyPI/setup.cfg b/PyPI/setup.cfg index e8cc673..31ae5fa 100644 --- a/PyPI/setup.cfg +++ b/PyPI/setup.cfg @@ -1,7 +1,7 @@ [metadata] # replace with your username: name = guan -version = 0.0.71 +version = 0.0.72 author = guanjihuan author_email = guanjihuan@163.com description = An open source python package diff --git a/PyPI/src/guan/__init__.py b/PyPI/src/guan/__init__.py index 5e04219..98db62b 100644 --- a/PyPI/src/guan/__init__.py +++ b/PyPI/src/guan/__init__.py @@ -454,6 +454,21 @@ def hamiltonian_of_one_QAH_model(k1, k2, t1=1, t2=1, t3=0.5, m=-1): hamiltonian[1, 1] = -(m+2*t3*sin(k1)+2*t3*sin(k2)+2*t2*cos(k1+k2)) return hamiltonian +def hamiltonian_of_BBH_model(kx, ky, gamma_x=0.5, gamma_y=0.5, lambda_x=1, lambda_y=1): + # label of atoms in a unit cell + # (2) —— (0) + # | | + # (1) —— (3) + hamiltonian = np.zeros((4, 4), dtype=complex) + hamiltonian[0, 2] = gamma_x+lambda_x*cmath.exp(1j*kx) + hamiltonian[1, 3] = gamma_x+lambda_x*cmath.exp(-1j*kx) + hamiltonian[0, 3] = gamma_y+lambda_y*cmath.exp(1j*ky) + hamiltonian[1, 2] = -gamma_y-lambda_y*cmath.exp(-1j*ky) + hamiltonian[2, 0] = np.conj(hamiltonian[0, 2]) + hamiltonian[3, 1] = np.conj(hamiltonian[1, 3]) + hamiltonian[3, 0] = np.conj(hamiltonian[0, 3]) + hamiltonian[2, 1] = np.conj(hamiltonian[1, 2]) + return hamiltonian