MPRelaxSet POTCAR error


When I try to use MPRelaxSet to set up my vasp calculation, I get the error:

No POTCAR for Na_pv with functional PBE found. Please set the PMG_VASP_PSP_DIR environment in .pmgrc.yaml, or you may need to set PMG_DEFAULT_FUNCTIONAL to PBE_52 or PBE_54 if you are using newer psps from VASP.

However, I do have the POTCAR for Na_pv. I am thus trying to set my PMG_VASP_PSP_DIR using these directions. I am a bit confused with the directions, though. It says to use pmg config -p <EXTRACTED_VASP_POTCAR> <MY_PSP> but I’m not sure what I am supposed to type for <MY_PSP>. Thank you for any help!

Extracted VASP POTCAR is the directory of the actual VASP potcars and MY_PSP is what the pmg compatible resource directory should be named.

1 Like

Thank you for this clarification. However, after following those directions I still get an error. After running
pmg config -p /home1/08168/mdresser/bin/recommend_POT /home1/08168/mdresser/bin/recommend_POT/pmg/recommend_POT/POT_GGA_PAW_PBE

I get the message:

Generating pymatgen resources directory...
An error has occurred. Message is [Errno 2] No such file or directory: '/home1/08168/mdresser/bin/recommend_POT/pmg/recommend_POT/POT_GGA_PAW_PBE/pmg/POTCAR'. Trying to continue...
An error has occurred. Message is [Errno 2] No such file or directory: '/home1/08168/mdresser/bin/recommend_POT/pmg/recommend_POT/POT_GGA_PAW_PBE/POT_GGA_PAW_PBE/POTCAR'. Trying to continue...
An error has occurred. Message is [Errno 13] Permission denied: '/home1/08168/mdresser/bin/recommend_POT/pmg/recommend_POT/POT_GGA_PAW_PBE/POT_GGA_PAW_PBE/POTCAR.Pm_3'. Trying to continue...

PSP resources directory generated. It is recommended that you run 'pmg config --add PMG_VASP_PSP_DIR /home1/08168/mdresser/bin/recommend_POT/pmg/recommend_POT/POT_GGA_PAW_PBE'
Start a new terminal to ensure that your environment variables are properly set.

Since it does in the end say the PSP resources directory is generated, I then run
pmg config --add PMG_VASP_PSP_DIR /home1/08168/mdresser/bin/recommend_POT/pmg/recommend_POT/POT_GGA_PAW_PBE

And I get the message:

Existing /home1/08168/mdresser/.pmgrc.yaml backed up to /home1/08168/mdresser/.pmgrc.yaml.bak
New /home1/08168/mdresser/.pmgrc.yaml written!

Then I restart my terminal as it recommends, and when I try to run MPRelaxSet again it says:
OSError: You do not have the right POTCAR with functional PBE and label Na_pv in your VASP_PSP_DIR

I think the issue may have to do with the way the resources directory is being generated. When I go to /home1/08168/mdresser/bin/recommend_POT/pmg/recommend_POT/POT_GGA_PAW_PBE there are 3 different directories inside, called pmg, recommend_POT, and POT_GGA_PAW_PBE . I did not make any of these directories, they seem to have been generated when I called pmg config -p ... or pmg config --add ... Only the subdirectory called recommend_POT actually contains all of the POTCAR files.

Thank you for your help!

Looks a little like you are pointing to the same directory twice? A little confused.

Assuming your directory scaffolding is something like

            Ac Ag Ag_GW ...
cd $top_dir
pmg config -p vasp_psp_dir my_psp_resources

Should create the new directory my_psp_resources so long as the sub dirs potpaw_PBE (and others like LDA) are the original ones from vasp.

I see. So I think maybe the issue is that my download from vasp does not have the potpaw_PBE subdir. I just redownloaded everything and set up a new directory so that now my directory scaffolding looks like:
top_dirAc Ag Ag_GW ...
Do I need to make a directory named potpaw_PBE that holds the Ac Ag Ag_GW ... for this to work?

You should check the message after you run ‘pmg config -p vasp_psp_dir my_psp_resources’.
It might say “you are recommended to run ‘pmg config ~~~’”