[Pw_forum] Left and right going Bloch's states from PWCOND
Alexander Smogunov
smogunov at sissa.it
Thu Oct 22 11:08:26 CEST 2009
Dear Manoj.
The output of complex k vectors is performed in
summary_band.f90 routine. If you want to see all
the complex k vectors, not only propagating ones,
you can change at the end of this routine:
-------------------
do i = 1, nchanl
WRITE( stdout,'(3f12.7)') DBLE(kvall(i)), AIMAG(kvall(i)), eev
enddo
-------------------
to
-------------------
do i = 1, 2*nstl
WRITE( stdout,'(3f12.7)') DBLE(kvall(i)), AIMAG(kvall(i)), eev
enddo
-------------------
Altogether there are 2*nstl (or 2*nstr) Bloch states in the left
(or right) lead. First half, [1,nstl], are propagating or decaying to
the right states, another half, [nstl+1,2*nstl], - propagating or
decaying to the left. In each group, first nchanl states are propagating
states.
The propagating states are normalized by the current and are arranged in
the above order at the end of jbloch.f90 routine, after the following
lines:
!
! Right ordering (+, >, -, <)
!
Notice, that in the last versions the code gives in output
both propagating to the right and to the left states.
Hope this helps,
Alexander
On Wed, 2009-10-21 at 14:13 -0400, Manoj Srivastava wrote:
> Dear All,
> I am trying to figure out the left and right going Bloch's states in the
> lead from PWCOND. For a given (kx,ky)and energy we get kz. The code only
> prints out Bloch's state moving in one direction. eg. in one of the
> calculation-
> k//=(0.375,-0.375)
> Nchannels of the left tip = 1
> k1(2pi/a) k2(2pi/a) E-Ef (eV)
>
> 0.3157801 0.0000000 0.0000000
>
> Now if I want Bloch's state moving in right as well as left direction, I
> can go to kbloch.f90 subroutine, and print out all the eigen values of
> AX=exp(ikd)BX, and out of those the ones with real solution would be our
> Bloch's state, so I get for each channel two solutions-
> kval (-0.275409421993275,1.823688001395235E-010)
> kval (0.315780119742506,-3.611201785292708E-012)
>
> To figure out the direction, I can calculate current associated with these
> Bloch's sate and if the current is +ive it is right moving , and if '-'ive
> its left moving Bloch's state. I can print out current from jbloch.f90
> subroutine which are -
> current eigenvalue -1.86502143831863 1.59149029314457
>
> So, clearly the first state with kval=-0.2754094 is left moving and the
> other one right moving. Upto here its clear to me how to identify left and
> right moving states.
>
> I get confused when for a given (kx,ky,E), I have more than one Bloch'
> state. In another calculation where i get multiple Bloch's state-
> Nchannels of the left tip = 5
> k1(2pi/a) k2(2pi/a) E-Ef (eV)
>
> -0.0746301 0.0000000 0.0000000
> 0.1205527 0.0000000 0.0000000
> 0.3112908 0.0000000 0.0000000
> 0.4200218 0.0000000 0.0000000
> -0.4935150 0.0000000 0.0000000
>
> so i did the same trick i did above to first print out kz and then
> current, which gives me -
> kval (-0.420023481074359,1.979595081419732E-010) (call it a)
> kval (0.420023367986768,2.500979698670295E-011) (b)
> kval (-0.306507431678779,-1.236804629184431E-011) (c)
> kval (-0.125376071175573,-6.134512510438736E-011) (d)
> kval (-7.945001124706894E-002,6.683546930037856E-011)(e)
> kval (0.106554601758169,-6.427946951285107E-011) (f)
> kval (8.866867725358024E-002,8.342250371574646E-011) (g)
> kval (0.325333314672671,1.260810749228185E-011) (h)
> kval (-0.488725859521576,1.769197678346003E-010) (i)
> kval (0.479509832763231,1.765499400037283E-010) (j)
>
> current eigenvalue -9.31389492882581 -1.24296522993488
> -1.21324078359658 -1.11950286753963 -1.08166842367443
> 1.08187482164864 1.11973146584263 1.21295295042188
> 1.24280031534940 9.313897787790
>
> So, the first 5 are left moving and rest are right moving. But I dont know
> the pairs. for example for left moving state a, what is the corresponding
> right moving state whether its f or g ... j ?
>
> Any help would be appreciated.
>
> Regards,
> Manoj Srivastava
> University of Florida, Gainesville.
>
> _______________________________________________
> Pw_forum mailing list
> Pw_forum at pwscf.org
> http://www.democritos.it/mailman/listinfo/pw_forum
--
e-mail: smogunov at sissa.it
home-page: http://people.sissa.it/~smogunov
More information about the Pw_forum
mailing list