[Pw_forum] About band structure.
hande at newton.physics.metu.edu.tr
Thu Aug 7 11:31:46 CEST 2008
> > And what is /awk/java/whathever_you_are_familiar_with ?
I believe what Stefano meant is just take any known computer language
(which fortran, awk, bash, java each are) or any other one you are already
using and write a simple code that generates a given number of points
between two arbitrary points in space. I would suggest octave or matlab if
you are unfamiliar with coding. Maybe something like this :
kx = [linspace(point1(1),point2(1),nks)]';
ky = [linspace(point1(2),point2(2),nks)]';
kz = [linspace(point1(3),point2(3),nks)]';
ks=[ kx ky kz ones(nks,1)];
Just copy this into a file called get_points.m, start octave (you should
already have this, assuming you are using linux), type something like
get_points([0 0 0], [1 0 0], 25) and copy and paste the result in your
input. You have to repeat this for each pair of points. Make sure you don't
repeat the same point (say K) twice because plotband really hates
that. Also beware that I put in the weights in the above script assuming
that you are running an nscf or a bands calculation where it doesn't matter
what you have for weights. If you are running anything else it does.
Hope this helps.
Department of Physics
Middle East Technical University
Ankara 06531, Turkey
Tel : +90 312 210 3264
More information about the users