[Wien] k-point sampling

Jorissen Kevin Kevin.Jorissen at ua.ac.be
Tue Jun 29 20:08:36 CEST 2004


Hi Mark,
 
just a quick reply in the middle of preparing dinner ;-)
 
never mind the *** matrices.  That's something I checked out some time ago, and it's completely harmless (but - as I pointed out before - messy).
For CXZ-lattices, the treatment is a little more complicated than for other lattices.
Eg., there's the routine sdef.f, which does sth special for CXZ (can't remember what).
 
Ask for 'long output' when running kgen, that should give you a little more information - it prints eg for all k-points in the full BZ to which k-point in the IBZ it has been reduced by symmetry.  If you need any further help understanding the code, I've gone through most of its source code (except some of its most 'ancient' entrails), so feel free to ask questions.  And, of course, there's always Peter.
Another thing which may help you understand things, is reduce symmetry.  Run your case with the CXZ, just change the number of sym ops in case.struct to 0 (I don't think it's necessary to delete them - just change the number), and do kgen.  Maybe that makes it easier to separate lattice and symmetry.
 
Kevin.
 

	-----Oorspronkelijk bericht----- 
	Van: L. D. Marks [mailto:L-marks at northwestern.edu] 
	Verzonden: di 6/29/2004 5:11 
	Aan: wien at zeus.theochem.tuwien.ac.at 
	CC: 
	Onderwerp: RE: [Wien] k-point sampling
	
	

	The reason I originally asked is because the k-points in CXZ (the
	infamous, buggy one) look odd. Following a hint from Peter it looks like
	it's the primitive cell being used. In this case the sampling being used
	is (for a surface with a shift, 35 total):
	         1    2    5    0   10  2.0
	         2    4    5    2   10  4.0
	         3    6    5    4   10  4.0
	         4    8    5    6   10  4.0
	         5   10    5    8   10  2.0
	         6    6    5    0   10  2.0
	         7    8    5    2   10  4.0
	         8   10    5    4   10  2.0
	         9   10    5    0   10  1.0
	From what I can see in case.outputkgen this is a reduction of the quadrant
	(for the primitives, ignoring ky for simplicity)
	0 < g1 < 1 ; 0 < g3 < 1, with g1, g3 the primitive vectors. However, this
	is not the irreproducible part of the BZ, which should be:
	0 < g1 < 1 ; -g1 < g3 < g1
	unless I'm being stupid (possible).
	
	N.B., after the line "NUMBER OF POINT GROUP OPERATION" something looks
	fishy, since I'm getting:
	    SYMMETRY MATRIX NR.  1   SYMMETRY MATRIX NR.  2
	    ***************          ***************
	    ***************          ***************
	    ***************          ***************
	
	On Tue, 29 Jun 2004, Jorissen Kevin wrote:
	
	> To come back to this question :
	>
	> kgen is a bit of a mess, made up of Peter Blöchl's programs and parts added to implement his code into some old version of the wien code.  I definitely agree that eg. the symmetry operations are taken from case.struct, and not from the symmetry dedicated routines in kgen.  However, I thought that the reciprocal unit cell (which is to be sampled by a uniform mesh and then reduced by symmetry) is calculated by some of the old routines, and these indeed reduce some systems to primitive cells, don't they?
	>
	> Let's go into main.f, and take the example of an F lattice with basis a * (1 0 0), (0 1 0), (0 0 1).  The lattice is read from case.struct.  It is fed into bravai.f, which redefines the basis as a * (1/2, 1/2, 0) etc.  THis is in the variable rbas, which is later used (in main and in arbmsh) by the routine gbas to calculate the reciprocal basis.  This basis defines the reciprocal cell which will be sampled by basdiv, zuord ...
	>
	>
	> This is the reason why I referred to the routine bravai.f.
	>
	> Please correct me if I am mistaken.
	>
	> Kevin.
	>
	>
	>       -----Oorspronkelijk bericht-----
	>       Van: Peter Blaha [mailto:pblaha at zeus.theochem.tuwien.ac.at]
	>       Verzonden: ma 6/28/2004 4:14
	>       Aan: wien at zeus.theochem.tuwien.ac.at
	>       CC:
	>       Onderwerp: RE: [Wien] k-point sampling
	>
	>
	>
	>       > Kgen may indeed change your lattice.  Check out SRC_kgen/bravai.f to get an idea of what it's doing in your case.
	>
	>       I havn't checked this now, but what I remember is that bravai.f is still
	>       present (and also called), but actually more or less NOT used !!!
	>       (most variables (eg. symmetry operations,..) are reset to values from
	>       case.struct,....)
	>
	>                                             P.Blaha
	>       --------------------------------------------------------------------------
	>       Peter BLAHA, Inst.f. Materials Chemistry, TU Vienna, A-1060 Vienna
	>       Phone: +43-1-58801-15671             FAX: +43-1-58801-15698
	>       Email: blaha at theochem.tuwien.ac.at    WWW: http://info.tuwien.ac.at/theochem/
	>       --------------------------------------------------------------------------
	>
	>       _______________________________________________
	>       Wien mailing list
	>       Wien at zeus.theochem.tuwien.ac.at
	>       http://zeus.theochem.tuwien.ac.at/mailman/listinfo/wien
	>
	>
	>
	>
	
	-----------------------------------------------
	Laurence Marks
	Department of Materials Science and Engineering
	MSE Rm 2036 Cook Hall
	2225 N Campus Drive
	Northwestern University
	Evanston, IL 60201, USA
	Tel: (847) 491-3996 Fax: (847) 491-7820
	mailto:L-marks at northwestern.edu
	http://www.numis.northwestern.edu
	-----------------------------------------------
	
	
	_______________________________________________
	Wien mailing list
	Wien at zeus.theochem.tuwien.ac.at
	http://zeus.theochem.tuwien.ac.at/mailman/listinfo/wien
	
	

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/ms-tnef
Size: 10878 bytes
Desc: not available
Url : http://zeus.theochem.tuwien.ac.at/pipermail/wien/attachments/20040629/c6e2c06d/attachment.bin


More information about the Wien mailing list