Malformed vasprun.xml


There are quite some fizzled workflows in our calcutions with the following errors.

Traceback (most recent call last):
(CustodianError(...), u'Validation failed: <custodian.vasp.validators.VasprunXMLValidator object at 0x2acfedb1ebd0>').

Going to one of these folders and perform Vasprun manually, we would get:

from import Vasprun

Traceback (most recent call last):
File “”, line 1, in
File “/opt/apps/util/easybuild/software/atomate/0.4.2-intel-2016.01-Python-2.7.12/lib/python2.7/site-packages/pymatgen-4.6.2-p y2.7-linux-x86_64.egg/pymatgen/io/vasp/”, line 379, in init
File “/opt/apps/util/easybuild/software/atomate/0.4.2-intel-2016.01-Python-2.7.12/lib/python2.7/site-packages/pymatgen-4.6.2-p y2.7-linux-x86_64.egg/pymatgen/io/vasp/”, line 465, in _parse
raise ex
cElementTree.ParseError: not well-formed (invalid token): line 694, column 0

Looking into the vasprun.xml, there is this strange “^@^” line.

"694  ^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@"

Further investigation shows that if the default tags in INCAR do not run a converged job and once cudtodian Errorhandlers change these tags (like change ALGO to Normal from the default Fast), malformed vasprun.xml will form, leading to fizzled workflows with errors mentioned in the beginning.

  1. Rerunning these fireworks lead to exactly some error.
  2. Manually setting the defalt tags in INCAR work in some cases, but there more cases which need modificating different tags in the INCAR. Thus this is not the ultimate solution for this issue.
  3. We are using: Python/2.7.12; pymatgen/4.6.2, atomate/0.4.2, VASP/5.4.1.

Thanks for your help.

Best regards,


Hi Jun,

I’m not sure how this issue arises, I’ve never encountered this behavior in custodian before. Would it be possible for you to e-mail me a description of how your workflow is constructed and I can try to reconstruct the issue?

You can reach me at montoyjh [at] lbl [dot] gov.

I have just ran into several of these issues in last month. Looking for the error lead me to this post. Exact same errors and observations described here. I have been using fireworks since last 2 years now. Only thing that has changed seems to be the last updates of pymatgen and atomate. How did you solve this error ?