Closed QuantumInformationGeneral closed 3 years ago
Hi,
Z2Pack uses reduced reciprocal coordinates everywhere, so the reciprocal lattice vectors should have integer values.
If you are looking for a code that can do arbitrary shapes, it is possible with the interface to Quantum ESPRESSO.
Thanks!
Hi,
I would like to project on the surface whose normal vector is [111] and calculate the HWC flow along either one direction of the plane as a function of k.
system = z2pack.tb.System(model) The tb model was obtained from wannier90_hr.dat(I defined pos, uc and occ properly based on my system)
E.g. uc=np.array([[a,0,0],[0,a,0],[0,0,c]])
I created the projection function, which defines the 2d k-surface, satisfying \vec{k} \dot \vec{D}=2\pi*n. (\vec{D}=1/2[a,a,c], n is the integer)
First-principles codes usually don’t allow for an arbitrary shape of the surface. For ABINIT for example, each line must be straight. VASP only allows for lines which are straight and parallel to one of the reciprocal lattice directions.
My projection function f(t_1, t_2), satisfies the f(t_1,0)=f(t_1,1)+G and I double-checked. However, I got this ValueError below, which is saying that the above equation, f(t1,0)=f(t1,1)+G is not satisfied.
ValueError: Start and end points of the line differ by [ 0. 1.86916016 -0.44664156], which is not an inverse lattice vector.
Here, [ 0. 1.86916016 -0.44664156] = [0, 2pi/a, -2pi/c], which is nothing but one of the reciprocal lattice vector, \vec{G}. Would you explain what is wrong with it?