This commit is contained in:
guanjihuan 2023-10-10 11:24:12 +08:00
parent 4690515bd2
commit 0500442f42
10 changed files with 0 additions and 163 deletions

View File

@ -1,7 +0,0 @@
import guan
import numpy as np
k_array = np.linspace(-np.pi, np.pi, 100)
hamiltonian_function = guan.one_dimensional_fourier_transform_with_k(unit_cell=0, hopping=1) # one dimensional chain
eigenvalue_array = guan.calculate_eigenvalue_with_one_parameter(k_array, hamiltonian_function)
guan.plot(k_array, eigenvalue_array, xlabel='k', ylabel='E', style='-k')

View File

@ -1,5 +0,0 @@
import guan
print('\n', guan.hamiltonian_of_finite_size_system_along_one_direction(3), '\n')
print(guan.hamiltonian_of_finite_size_system_along_two_directions_for_square_lattice(2, 2), '\n')
print(guan.hamiltonian_of_finite_size_system_along_three_directions_for_cubic_lattice(2, 2, 2), '\n')

View File

@ -1,11 +0,0 @@
import guan
import numpy as np
from math import *
chern_number = guan.calculate_chern_number_for_square_lattice_with_efficient_method(guan.hamiltonian_of_one_QAH_model, precision=100)
print('\nChern number=', chern_number, '\n')
wilson_loop_array = guan.calculate_wilson_loop(guan.hamiltonian_of_ssh_model)
print('Wilson loop =', wilson_loop_array)
p = np.log(wilson_loop_array)/2/pi/1j
print('\np =', p, '\n')

View File

@ -1,11 +0,0 @@
import guan
import numpy as np
fermi_energy_array = np.linspace(-4, 4, 400)
h00 = guan.hamiltonian_of_finite_size_system_along_one_direction(4)
h01 = np.identity(4)
conductance_array = guan.calculate_conductance_with_fermi_energy_array(fermi_energy_array, h00, h01)
guan.plot(fermi_energy_array, conductance_array, xlabel='E', ylabel='Conductance', style='-')
fermi_energy = 0
guan.print_or_write_scattering_matrix(fermi_energy, h00, h01)

View File

@ -1,30 +0,0 @@
import guan
import numpy as np
hamiltonian = guan.hamiltonian_of_finite_size_system_along_two_directions_for_square_lattice(2,2)
fermi_energy_array = np.linspace(-4, 4, 400)
total_dos_array = guan.total_density_of_states_with_fermi_energy_array(fermi_energy_array, hamiltonian, broadening=0.1)
guan.plot(fermi_energy_array, total_dos_array, xlabel='E', ylabel='Total DOS', style='-')
fermi_energy = 0
N1 = 3
N2 = 4
hamiltonian = guan.hamiltonian_of_finite_size_system_along_two_directions_for_square_lattice(N1,N2)
LDOS = guan.local_density_of_states_for_square_lattice(fermi_energy, hamiltonian, N1=N1, N2=N2)
print('square lattice:\n', LDOS, '\n')
h00 = guan.hamiltonian_of_finite_size_system_along_one_direction(N2)
h01 = np.identity(N2)
LDOS = guan.local_density_of_states_for_square_lattice_using_dyson_equation(fermi_energy, h00=h00, h01=h01, N2=N2, N1=N1)
print(LDOS, '\n\n')
# guan.plot_contour(range(N1), range(N2), LDOS)
N1 = 3
N2 = 4
N3 = 5
hamiltonian = guan.hamiltonian_of_finite_size_system_along_three_directions_for_cubic_lattice(N1, N2, N3)
LDOS = guan.local_density_of_states_for_cubic_lattice(fermi_energy, hamiltonian, N1=N1, N2=N2, N3=N3)
print('cubic lattice:\n', LDOS, '\n')
h00 = guan.hamiltonian_of_finite_size_system_along_two_directions_for_square_lattice(N2, N3)
h01 = np.identity(N2*N3)
LDOS = guan.local_density_of_states_for_cubic_lattice_using_dyson_equation(fermi_energy, h00, h01, N3=N3, N2=N2, N1=N1)
print(LDOS)

View File

@ -1,9 +0,0 @@
import numpy as np
import guan
cpus = 4
parameter_array_all = np.arange(0, 17, 1)
for task_index in range(cpus):
parameter_array = guan.preprocess_for_parallel_calculations(parameter_array_all, cpus, task_index)
print(parameter_array)
print()

View File

@ -1,22 +0,0 @@
import numpy as np
import cmath
import guan
# Example 1
vector = np.array([np.sqrt(0.5), np.sqrt(0.5)])*cmath.exp(np.random.uniform(0, 1)*1j)
print('\nExample 1\n', vector)
print(np.dot(vector.transpose().conj(), vector), '\n')
vector = guan.find_vector_with_fixed_gauge_by_making_one_component_real(vector, precision=0.001)
print(vector)
print(np.dot(vector.transpose().conj(), vector), '\n')
# Example 2
vector = np.array([1, 0])*cmath.exp(np.random.uniform(0, 1)*1j)
print('\nExample 2\n', vector)
print(np.dot(vector.transpose().conj(), vector), '\n')
vector = guan.find_vector_with_fixed_gauge_by_making_one_component_real(vector, precision=0.001)
print(vector)
print(np.dot(vector.transpose().conj(), vector), '\n')

View File

@ -1,16 +0,0 @@
import guan
import numpy as np
x_array = np.array([1, 2, 3])
y_array = np.array([5, 6, 7])
guan.write_one_dimensional_data(x_array, y_array, filename='one_dimensional_data')
matrix = np.zeros((3, 3))
matrix[0, 1] = 11
guan.write_two_dimensional_data(x_array, y_array, matrix, filename='two_dimensional_data')
x_read, y_read = guan.read_one_dimensional_data('one_dimensional_data')
print(x_read, '\n')
print(y_read, '\n\n')
x_read, y_read, matrix_read = guan.read_two_dimensional_data('two_dimensional_data')
print(x_read, '\n')
print(y_read, '\n')
print(matrix_read)

View File

@ -1,8 +0,0 @@
import guan
import numpy as np
k_array = np.linspace(-np.pi, np.pi, 100)
eigenvalue_array = guan.calculate_eigenvalue_with_one_parameter(k_array, guan.hamiltonian_of_square_lattice_in_quasi_one_dimension)
guan.plot(k_array, eigenvalue_array, xlabel='k', ylabel='E', style='-k')
eigenvalue_array = guan.calculate_eigenvalue_with_one_parameter(k_array, guan.hamiltonian_of_graphene_with_zigzag_in_quasi_one_dimension)
guan.plot(k_array, eigenvalue_array, xlabel='k', ylabel='E', style='-k')

View File

@ -1,44 +0,0 @@
import guan
guan.test()
sigma_0 = guan.sigma_0()
sigma_x = guan.sigma_x()
sigma_y = guan.sigma_y()
sigma_z = guan.sigma_z()
sigma_00 = guan.sigma_00()
sigma_0x = guan.sigma_0x()
sigma_0y = guan.sigma_0y()
sigma_0z = guan.sigma_0z()
sigma_x0 = guan.sigma_x0()
sigma_xx = guan.sigma_xx()
sigma_xy = guan.sigma_xy()
sigma_xz = guan.sigma_xz()
sigma_y0 = guan.sigma_y0()
sigma_yx = guan.sigma_yx()
sigma_yy = guan.sigma_yy()
sigma_yz = guan.sigma_yz()
sigma_z0 = guan.sigma_z0()
sigma_zx = guan.sigma_zx()
sigma_zy = guan.sigma_zy()
sigma_zz = guan.sigma_zz()
print('Pauli matrix\n')
print('sigma_0\n', sigma_0, '\n')
print('sigma_x\n', sigma_x, '\n')
print('sigma_y\n', sigma_y, '\n')
print('sigma_z\n', sigma_z, '\n')
print('sigma_00\n', sigma_00, '\n')
print('sigma_0x\n', sigma_0x, '\n')
print('sigma_0y\n', sigma_0y, '\n')
print('sigma_0z\n', sigma_0z, '\n')
print('sigma_x0\n', sigma_x0, '\n')
print('sigma_xx\n', sigma_xx, '\n')
print('sigma_xy\n', sigma_xy, '\n')
print('sigma_xz\n', sigma_xz, '\n')
print('sigma_y0\n', sigma_y0, '\n')
print('sigma_yx\n', sigma_yx, '\n')
print('sigma_yy\n', sigma_yy, '\n')
print('sigma_yz\n', sigma_yz, '\n')
print('sigma_z0\n', sigma_z0, '\n')
print('sigma_zx\n', sigma_zx, '\n')
print('sigma_zy\n', sigma_zy, '\n')
print('sigma_zz\n', sigma_zz, '\n')