Dear Kwant developers,
I am currently simulating a carbon nanotube system by defining a 1D scattering
region as:
def kwant_shape(site):
(z,) = pos
return (-total_length / 2 <= z < total_length/ 2)
I then build the system by discretizing a continuous Hamiltonian onto the grid
region, as shown in the function below:
def make_system():
lattice_size = total_length / number_of_lattices
template = kwant.continuum.discretize(hamiltonian, grid=lattice_size)
syst = kwant.Builder()
# add the nanotube to the system
syst.fill(template, kwant_shape, (0,))
syst = syst.finalized()
return syst
The lowest eigenvector of the Hamiltonian system is calculated and evolved over
time using Tkwant.
However, by changing the parameter 'number_of_lattices', hence using a
different size grid spacing, the response of the system is very different.
Sometimes the resulting graph shows a changing density of the wavefunction
(which is expected), however for certain lattice points there is no change in
the graph, suggesting that the system does not evolve. For example, for 40
lattice points I get the expected response however for 60 lattice points I do
not.
I was wondering why changing the grid spacing might affect the response of the
state being evolved by Tkwant? Could it be due to the symmetry of the system or
how the system is defined?
Thank you for any help with this!