Dear all, I want to use the code in the example to calculate the conductivity,but I found that the results are not accurate. I want to increase the accuracy or zoom in a small energy scale to increase the accuracy. The code is: lat, fsyst = make_syst_topo() where = lambda s: np.linalg.norm(s.pos) < 1 s_factory = kwant.kpm.LocalVectors(fsyst, where) cond_xy = kwant.kpm.conductivity(fsyst, alpha='x', beta='y', mean=True, num_vectors=None, vector_factory=s_factory) energies = cond_xx.energies cond_array_xy = np.array([cond_xy(e, temperature=0.01) for e in energies])
Now, what I know is adding energy_resolution to cond_xy, for example cond_xy = kwant.kpm.conductivity(fsyst, alpha='x', beta='y', mean=True, num_vectors=None,energy_resolution=0.01 vector_factory=s_factory) My question is: 1 Is there any other way to increase the accuracy? 2 Can we zoom in a smaller energy scale to increase the accuracy? 3 What is the units for temperature=0.01? Is it 0.01t (t is the nearest hopping)? Thanks in advance! Khani Hosein