Open zhubonan opened 4 years ago
@zhubonan Yes, this is true. First of, we do not yet check for the value, only that the key exists in this file. So all the extra information is currently redundant. However, the plan is that we will do this at some point. This includes checking that the keys are valid (of course we need to have a developer mode, or override), but also that the current value is valid. We could also use defaults and maybe most important, but also the most complicated is to be able to cross check, such that if there is two or more variables that have incompatible values, user gets notified.
The file is currently generated by pulling the information in their wiki. And this is unfortunately not yet fully complete or consistent with respect to default and allowed values. We are working with the VASP developers to try to figure out a solution to this that is also convenient for them. It would for instance be nice if we could have some kind of master file that handles the definition of these for everyone. Could be pulled from the docstring in the VASP code or similar, but that is a rather extensive task.
I changed the title to reflect that this is more general than ICHARGE
. It will most likely take some time before we have a file that is more complete.
Thanks for the reply. Yes, indeed the value is not checked at the moment. I just found out that my problem is actually due to misspelling - it should be ICHARG
rather than ICHARGE
, rookie mistake! Sorry, I should have spotted this.
The tag validation did catch it correctly.
Okey, great. Then that works at least. In fact I believe getting this framework in place would be really useful. But we need to do some more work with the VASP group, which is likely to take some more time.
That would be great. They must have a list of all possible values. I checked the wiki page that ICHARG=11
is not in the first line stating all allowed values....
Yes, so I would prefer that we/they create some kind of master file that is also used to generate their docs. Then we just tap into that. Also, having that file versioned separately from the source code would make it easier for users to follow changes and updates.
Tag ICHARGE can have value 0,1,2,4 as well as 11 and 12.
But in
incar_tag.yml
, only 0, 1, 2, 4 are allowed. https://github.com/aiida-vasp/parsevasp/blob/5e8a3c6b487911cf513560c248366403791adf36/parsevasp/incar_tags.yml#L821-L830As a result,Correction - this is due to spelling mistake the tag should be ICHARG rather than ICHARGE.aiida-vasp
plugin refuses to run calculations withICHARGE=12
. Maybe to value checking should be off by default to give a bit more flexibility?I am also wondering how
incar_tag.yml
is generated.