The README FileSYMPRJS.m/SYMPWS.m are Matlab-scripts that will produce symmetry adapted crystal orbitals and plane waves, adapted to the chosen k-vector (double- valued group of the k-vector) in the reciprocal lattice. Initially, prodats.m has to be run once to produce files that are used by SYMPRJS.m/SYMPWS.m. prodats.m (using input data file prodats.dat) calls bztest.m, primen.m and dmatr.m (calling fac.m) when executing and produces ldrmm.dat, MD6H.dat, MOH.dat, nge.dat, NP.dat, npgo.dat and rgr3.dat. SYMPRJS.m/SYMPWS.m calls the script Irrep.m which in its turn calls the functions inverse.m, genera.m, classes.m, charac.m (modulus.m), permu.m, degen.m, intsec.m, subsp.m, eigvec.m and mgt.m. The result is the irreducible matrix representatives of the group of the k-vector. The result when running SYMPRJ.m are block-diagonal matrices, where each block gives the coefficients for the linear combination of symmetry adapted spherical harmonics, block 1 l=0 (m=0, s=-1/2,+1/2), block 2 l=1 (m=-1 s=-1/2,+1/2,m=0 s=-1/2,+1/2,m=1 s=-1/2,+1/2), block 3 l= 2 (m=-2 s= -1/2,+1/2,m=-1 s=-1/2,+1/2,m=0 s=-1/2,+1/2,m=1 s=-1/2,+1/2,m=2 s= -1/2,+1/2) etc. One set of blocks for each chemical element. The result when running SYMPWS.m are block-diagonal matrices, where each block gives the coefficients for the linear combination of symmetry adapted plane waves of different reciprocal lattice vectors. A number of input example files are supplied. Each file starts with steering data controlling the amount of output data. The number of the space group follows. Further on the number of chemical elements and the number of atoms of each chemical element in the primitive unit cell of the crystal, are added (SYMPRJS.m). The coordinates of each atom in the unit cell are given (SYMPRJS.m). In case there are non-primitive lattice translations of the current space group, those shall be supplied. At the end of the input file, the coordinates of the k-vectors for which the symmetry adaptation shall be calculated, are added. Input example files to be run by SYMPRJS.m are diamond.dat, InSb.dat, sc.dat, wurtzite.dat and Zr.dat. Input example files to be run by SYMPWS.m are D4_6h.dat, Oh3.dat, Oh7.dat, Oh10.dat and Td2.dat. The results of executing the scripts will be presented as ASCII-coded files and as binary coded files. The latter as block-diagonal data for further use of symmetry adapted orbitals, plane waves (proj_symprjs.m, proj_sympws.m) in e.g. relativistic energy band calculations. test_proj_symprjs.m and test_proj_sympws.m will produce ASCII-code out of the binary coded files. For further information, please see Program-SYMPRJS-SYMPWS.doc
( Program-SYMPRJS-SYMPWS.pdf ).
To see individual files in the
SYMPRJS_SYMPWS.zip archive above, please