Closed gVallverdu closed 10 years ago
Hi Germain,
Thanks for reporting the issue. I have applied your fix and contributions.
As for the line-mode, I know that VASP uses Line-mode. But because of the way the Enum design pattern works, I can't use "-" in the class. In any case, VASP does not actually look for "Line-mode". They only look at the first letter of that line.
Regarding having pymatgen dev and stable versions on the same machine, one possibility is to use virtualenv. Another way is to simply fork the repo to your own Github repo and you can always work off your own fork of pymatgen. When you have some contributions that you would like to share with the community, you can submit a pull request and I can add them.
hi, i am new to vasp, and ran into this article http://gvallver.perso.univ-pau.fr/?p=587 it is very helpful for me, and i applied to a ge-bulk system as an example to learn band structure (L-G-X) there is an error when i get to the point of get_band_structure, and i narrowed down the error in pymatgen/electronic_structure/bandstructure.py class BandStructureSymmLine(BandStructure, MSONable): ...... self._branches.append({"start_index": b[0], "end_index": b[-1], "name": (self._kpoints[b[0]].label + "-" + self._kpoints[b[-1]].label)}) .....
and, here for my system, i have tried to None+"-" (a NoneType and a string) ----error msg-------------------------- pymatgen/electronic_structure/bandstructure.py", line 741, in init "name": (self._kpoints[b[0]].label + "-" +
so, i changed to self._branches.append({"start_index": b[0], "end_index": b[-1], "name": (str(self._kpoints[b[0]].label) + "-" + str(self._kpoints[b[-1]].label))}) and it worked. is this a bug?
Hi,
Thanks for your report. Could you send me your vasp files? Send them to me to geoffroy.hautier@uclouvain.be . We'll take it from there.
I have looked into the files you sent. Your KPOINTS file does not have label for each kpoint. this is mandatory for a band structure along symmetry lines.
It is: K-points L-G-X 25 Line-mode reciprocal 0.5 0.5 0.5 0 0 0
0 0 0 0.5 0.5 0
While it should be:
K-points L-G-X 25 Line-mode reciprocal 0.5 0.5 0.5 L 0 0 0 G
0 0 0 G 0.5 0.5 0 X
I have applied a patch so a clearer exception is now raised when this happens.
Geoffroy
Hi ! I am new in pymatgen and I try to use it to produce KPOINTS file for band structure calculations with VASP. I use HighSymmKpath and Kpoints classes to produces the kpoints file.
Here is the source code
And this is the KPOINTS file produced
After the line
Line_mode
in the KPOINTS file, thecoord_type
should be written.Looking at
http://pymatgen.org/_modules/pymatgen/io/vaspio/vasp_input.html#Kpoints
in the
__str__
method there is these linesbut line_mode is not written with an underscore as in the supported mode enum and I think this is the bug (or maybe the mistake for only one character ...)
The following is maybe a request more than a bug. Using VASP, in Line_mode the KPOINTS file should be
I have ever talk about the line with "Reciprocal". Then each line of the reciprocal space is defined by 2 k-points separated by a blank line. Is there a way to obtain this directly from pymatgen without postprocessing the KPOITNS file ? A solution migth be to give the kpath attribute of the HighSymmKpath to a Kpoints class constructor or directely the HighSymmKpath object. But the
__str__
method must be also slithly modified. I cloned the git repository and did the few changes. Here is a patch file created withgit diff > patch.txt
www.pastebin.com/5n6aniLv
I am sorry but I am a beginner with git. I do not know how to make the development version and the stable version of pymatgen to cohabit in the same PC. Thus I did not test my changes ... If you prefer and explain I can commit and push somewhere ?
Thanks